URL
https://opencores.org/ocsvn/can/can/trunk
[/] [can/] [trunk/] [rtl/] [verilog/] [can_fifo.v] - Diff between revs 95 and 97
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 95 |
Rev 97 |
Line 48... |
Line 48... |
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
//
|
//
|
// CVS Revision History
|
// CVS Revision History
|
//
|
//
|
// $Log: not supported by cvs2svn $
|
// $Log: not supported by cvs2svn $
|
|
// Revision 1.17 2003/06/27 20:56:15 simons
|
|
// Virtual silicon ram instances added.
|
|
//
|
// Revision 1.16 2003/06/18 23:03:44 mohor
|
// Revision 1.16 2003/06/18 23:03:44 mohor
|
// Typo fixed.
|
// Typo fixed.
|
//
|
//
|
// Revision 1.15 2003/06/11 09:37:05 mohor
|
// Revision 1.15 2003/06/11 09:37:05 mohor
|
// overrun and length_info fifos are initialized at the end of reset.
|
// overrun and length_info fifos are initialized at the end of reset.
|
Line 163... |
Line 166... |
input scanb_clk;
|
input scanb_clk;
|
input scanb_si;
|
input scanb_si;
|
output scanb_so;
|
output scanb_so;
|
input scanb_en;
|
input scanb_en;
|
wire scanb_s_0;
|
wire scanb_s_0;
|
wire scanb_s_1;
|
|
`endif
|
`endif
|
|
|
`ifdef ACTEL_APA_RAM
|
`ifdef ACTEL_APA_RAM
|
`else
|
`else
|
`ifdef XILINX_RAM
|
`ifdef XILINX_RAM
|
`else
|
`else
|
`ifdef VIRTUALSILICON_RAM
|
`ifdef VIRTUALSILICON_RAM
|
|
reg overrun_info[0:63];
|
`else
|
`else
|
reg [7:0] fifo [0:63];
|
reg [7:0] fifo [0:63];
|
reg [3:0] length_fifo[0:63];
|
reg [3:0] length_fifo[0:63];
|
reg overrun_info[0:63];
|
reg overrun_info[0:63];
|
`endif
|
`endif
|
Line 532... |
Line 535... |
,
|
,
|
// debug chain signals
|
// debug chain signals
|
.scanb_rst (scanb_rst),
|
.scanb_rst (scanb_rst),
|
.scanb_clk (scanb_clk),
|
.scanb_clk (scanb_clk),
|
.scanb_si (scanb_s_0),
|
.scanb_si (scanb_s_0),
|
.scanb_so (scanb_s_1),
|
|
.scanb_en (scanb_en)
|
|
`endif
|
|
);
|
|
|
|
`ifdef PCI_BIST
|
|
vs_hdtp_64x1_bist overrun_fifo
|
|
`else
|
|
vs_hdtp_64x1 overrun_fifo
|
|
`endif
|
|
(
|
|
.RCK (clk),
|
|
.WCK (clk),
|
|
.RADR (rd_info_pointer),
|
|
.WADR (wr_info_pointer),
|
|
.DI ((latch_overrun | (wr & fifo_full)) & (~initialize_memories)),
|
|
.DOUT (overrun),
|
|
.REN (1'b0),
|
|
.WEN (~(write_length_info & (~info_full) | initialize_memories))
|
|
`ifdef PCI_BIST
|
|
,
|
|
// debug chain signals
|
|
.scanb_rst (scanb_rst),
|
|
.scanb_clk (scanb_clk),
|
|
.scanb_si (scanb_s_1),
|
|
.scanb_so (scanb_so),
|
.scanb_so (scanb_so),
|
.scanb_en (scanb_en)
|
.scanb_en (scanb_en)
|
`endif
|
`endif
|
);
|
);
|
|
|
|
// overrun_info
|
|
always @ (posedge clk)
|
|
begin
|
|
if (write_length_info & (~info_full) | initialize_memories)
|
|
overrun_info[wr_info_pointer] <=#Tp (latch_overrun | (wr & fifo_full)) & (~initialize_memories);
|
|
end
|
|
|
|
|
|
// reading overrun
|
|
assign overrun = overrun_info[rd_info_pointer];
|
|
|
`else
|
`else
|
// writing data to fifo
|
// writing data to fifo
|
always @ (posedge clk)
|
always @ (posedge clk)
|
begin
|
begin
|
if (wr & (~fifo_full))
|
if (wr & (~fifo_full))
|
© copyright 1999-2025
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.