comparison modules/bluespec/Pygar/core/audioCorePipeline.bsv @ 15:a1833d9f6e3d pygar svn.16

[svn r16] Recent
author punk
date Tue, 27 Apr 2010 13:11:45 -0400
parents 6d461680c6d9
children 220c14f5963c
comparison
equal deleted inserted replaced
14:ec9205107560 15:a1833d9f6e3d
24 24
25 import Connectable::*; 25 import Connectable::*;
26 import GetPut::*; 26 import GetPut::*;
27 import ClientServer::*; 27 import ClientServer::*;
28 import FIFO::*; 28 import FIFO::*;
29 import SpecialFIFOs::*;
29 30
30 //AWB includes 31 //AWB includes
31 `include "asim/provides/low_level_platform_interface.bsh" 32 `include "asim/provides/low_level_platform_interface.bsh"
32 `include "asim/provides/soft_connections.bsh" 33 `include "asim/provides/soft_connections.bsh"
33 `include "asim/provides/common_services.bsh" 34 `include "asim/provides/common_services.bsh"
34 35
35 //Local includes 36 //Local includes
36 `include "asim/provides/audio_pipe_types.bsh" //provides Audio Pipeline interface 37 `include "asim/provides/audio_pipe_types.bsh" //provides Audio Pipeline interface
37 `include "asim/provides/core.bsh" 38 `include "asim/provides/core.bsh"
38 39 `include "asim/provides/processor_library.bsh"
40 `include "asim/provides/fpga_components.bsh"
39 `include "asim/rrr/remote_client_stub_AUDIOCORERRR.bsh" 41 `include "asim/rrr/remote_client_stub_AUDIOCORERRR.bsh"
40 `include "asim/rrr/remote_server_stub_AUDIOCORERRR.bsh" 42 //`include "asim/rrr/remote_server_stub_AUDIOCORERRR.bsh"
41 43
42 module [CONNECTED_MODULE] mkConnectedApplication (); 44 module [CONNECTED_MODULE] mkConnectedApplication ();
43 Core core <- mkCore; 45 Core core <- mkCore;
44 Reg#(int) cycle <- mkReg(0); 46 Reg#(int) cycle <- mkReg(0);
45 47
46 //External memory 48 //External memory
47 // I'm not comfortable assuming that the memory subsystem is in order 49 // I'm not comfortable assuming that the memory subsystem is in order
48 // So I'll insert a completion buffer here. 50 // So I'll insert a completion buffer here.
49 ClientStub_AUDICORERRR client_stub <- mkClientStub_AUDIOCORERRR(); 51 ClientStub_AUDIOCORERRR client_stub <- mkClientStub_AUDIOCORERRR();
50 // Make this big enough so that several outstanding requests may be supported 52 // Make this big enough so that several outstanding requests may be supported
51 FIFO#(Bit#(MainMemTagSz)) tags <- mkSizedFIFO(8); 53 FIFO#(Bit#(MainMemTagSz)) tags <- mkSizedFIFO(8);
52 54
53 // this is for the tracing 55 // this is for the tracing
54 rule printCycles; 56 rule printCycles;
82 rule feedOutput; 84 rule feedOutput;
83 let pipelineData <- core.sampleOutput.get(); 85 let pipelineData <- core.sampleOutput.get();
84 AudioProcessorControl endOfFileTag = EndOfFile; 86 AudioProcessorControl endOfFileTag = EndOfFile;
85 AudioProcessorControl sampleTag = Data; 87 AudioProcessorControl sampleTag = Data;
86 88
87 case (pipelineData) matches 89 // case (pipelineData) matches
88 tagged EndOfFile: client_stub.makeRequest_SendProcessedStream(zeroExtend(pack(endOfFileTag)),?); 90 // tagged EndOfFile:
89 tagged Sample .sample:client_stub.makeRequest_SendProcessedStream(zeroExtend(pack(sampleTag)), 91 client_stub.makeRequest_SendProcessedStream(zeroExtend(pack(endOfFileTag)),?);
90 zeroExtend(pack(sample))); 92 // tagged Sample .sample:client_stub.makeRequest_SendProcessedStream(zeroExtend(pack(sampleTag)), zeroExtend(pack(sample)));
91 endcase 93 // endcase
92 endrule 94 endrule
93 95
94 endmodule 96 endmodule