diff options
author | Matt Ettus <matt@ettus.com> | 2010-06-14 13:23:18 -0700 |
---|---|---|
committer | Matt Ettus <matt@ettus.com> | 2010-06-14 13:23:18 -0700 |
commit | a97707caa8e9f19fdc81061ac11a73f41aab2704 (patch) | |
tree | c75983a4caff316fe1c64cdba047229ac4584cc7 /usrp2/control_lib/newfifo/fifo_short.v | |
parent | a4b11332ab4f6a24bf4645c0b2770f9578a36f45 (diff) | |
parent | 9445315e6a5cdfb29c4ead73b0fcd4d5fd75b900 (diff) | |
download | uhd-a97707caa8e9f19fdc81061ac11a73f41aab2704.tar.gz uhd-a97707caa8e9f19fdc81061ac11a73f41aab2704.tar.bz2 uhd-a97707caa8e9f19fdc81061ac11a73f41aab2704.zip |
Merge branch 'master' into u1e_newbuild
Made so Makefile changes as well to get it to build
* master:
new make works on ise12
produces good bin files
first attempt at cleaning up the build system
get rid of debug stuff to help timing
move u2_core into u2_rev3 directory to simplify directory structure and save headaches
Conflicts:
usrp2/fifo/fifo36_to_fifo18.v
usrp2/top/u2_rev3/Makefile
usrp2/top/u2_rev3/Makefile.udp
usrp2/top/u2_rev3/u2_core_udp.v
Diffstat (limited to 'usrp2/control_lib/newfifo/fifo_short.v')
-rw-r--r-- | usrp2/control_lib/newfifo/fifo_short.v | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/usrp2/control_lib/newfifo/fifo_short.v b/usrp2/control_lib/newfifo/fifo_short.v deleted file mode 100644 index 53a7603c7..000000000 --- a/usrp2/control_lib/newfifo/fifo_short.v +++ /dev/null @@ -1,95 +0,0 @@ - -module fifo_short - #(parameter WIDTH=32) - (input clk, input reset, input clear, - input [WIDTH-1:0] datain, - input src_rdy_i, - output dst_rdy_o, - output [WIDTH-1:0] dataout, - output src_rdy_o, - input dst_rdy_i, - - output reg [4:0] space, - output reg [4:0] occupied); - - reg full, empty; - wire write = src_rdy_i & dst_rdy_o; - wire read = dst_rdy_i & src_rdy_o; - - assign dst_rdy_o = ~full; - assign src_rdy_o = ~empty; - - reg [3:0] a; - genvar i; - - generate - for (i=0;i<WIDTH;i=i+1) - begin : gen_srl16 - SRL16E - srl16e(.Q(dataout[i]), - .A0(a[0]),.A1(a[1]),.A2(a[2]),.A3(a[3]), - .CE(write),.CLK(clk),.D(datain[i])); - end - endgenerate - - always @(posedge clk) - if(reset) - begin - a <= 0; - empty <= 1; - full <= 0; - end - else if(clear) - begin - a <= 0; - empty <= 1; - full<= 0; - end - else if(read & ~write) - begin - full <= 0; - if(a==0) - empty <= 1; - else - a <= a - 1; - end - else if(write & ~read) - begin - empty <= 0; - if(~empty) - a <= a + 1; - if(a == 14) - full <= 1; - end - - // NOTE will fail if you write into a full fifo or read from an empty one - - ////////////////////////////////////////////////////////////// - // space and occupied are used for diagnostics, not - // guaranteed correct - - //assign space = full ? 0 : empty ? 16 : 15-a; - //assign occupied = empty ? 0 : full ? 16 : a+1; - - always @(posedge clk) - if(reset) - space <= 16; - else if(clear) - space <= 16; - else if(read & ~write) - space <= space + 1; - else if(write & ~read) - space <= space - 1; - - always @(posedge clk) - if(reset) - occupied <= 0; - else if(clear) - occupied <= 0; - else if(read & ~write) - occupied <= occupied - 1; - else if(write & ~read) - occupied <= occupied + 1; - -endmodule // fifo_short - |