OpenCores
URL https://opencores.org/ocsvn/can/can/trunk

Subversion Repositories can

[/] [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))

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.