Mercurial > pygar
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 |