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

Subversion Repositories versatile_fifo

[/] [versatile_fifo/] [trunk/] [rtl/] [verilog/] [versatile_fifo_dual_port_ram_sc_dw.v] - Blame information for rev 4

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 4 unneback
module versatile_fifo_dual_port_ram_sc_dw
2
  (
3
   d_a,
4
   q_a,
5
   adr_a,
6
   we_a,
7
   q_b,
8
   adr_b,
9
   d_b,
10
   we_b,
11
   clk
12
   );
13
   parameter DATA_WIDTH = 8;
14
   parameter ADDR_WIDTH = 9;
15
   input [(DATA_WIDTH-1):0]      d_a;
16
   input [(ADDR_WIDTH-1):0]       adr_a;
17
   input [(ADDR_WIDTH-1):0]       adr_b;
18
   input                         we_a;
19
   output [(DATA_WIDTH-1):0]      q_b;
20
   input [(DATA_WIDTH-1):0]       d_b;
21
   output reg [(DATA_WIDTH-1):0] q_a;
22
   input                         we_b;
23
   input                         clk;
24
   reg [(DATA_WIDTH-1):0]         q_b;
25
   reg [DATA_WIDTH-1:0] ram [2**ADDR_WIDTH-1:0] ;
26
   always @ (posedge clk)
27
     begin
28
        if (we_a)
29
          begin
30
             ram[adr_a] <= d_a;
31
             q_a <= d_a;
32
          end
33
        else
34
          q_a <= ram[adr_a];
35
     end
36
   always @ (posedge clk)
37
     begin
38
        if (we_b)
39
          begin
40
             ram[adr_b] <= d_b;
41
             q_b <= d_b;
42
          end
43
        else
44
          q_b <= ram[adr_b];
45
     end
46
endmodule

powered by: WebSVN 2.1.0

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