OpenCores
URL https://opencores.org/ocsvn/1g_ethernet_dpi/1g_ethernet_dpi/trunk

Subversion Repositories 1g_ethernet_dpi

[/] [1g_ethernet_dpi/] [tags/] [vmblite_base/] [hw/] [src/] [rtl/] [wb_uart/] [hdl/] [wb_uart_sdpram.v] - Blame information for rev 7

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 7 kuzmi4
//////////////////////////////////////////////////////////////////////////////////
2
// Company:         
3
// Engineer:        IK
4
// 
5
// Create Date:     11:35:01 03/21/2013 
6
// Design Name:     
7
// Module Name:     sdpram
8
// Project Name:    
9
// Target Devices:  
10
// Tool versions:   
11
// Description:     
12
//                  
13
//                  MEM for FIFO
14
//                  
15
//                  USE "ram_style" for XILINX
16
//                  USE "ramstyle" for ALTERA
17
//                  
18
//                  Because FIFO-VOLUME quite small (8 is enought)
19
//                      -> no reasons for wasting BRAM on this [use LUTs]
20
//                  
21
//                  [
22
//                      q2 synth anyway will implement this mem on LUTs,
23
//                      becasue of small volume, 
24
//                      but attr present for any case
25
//                  ]
26
//                  
27
// Revision: 
28
// Revision 0.01 - File Created, 
29
//
30
//////////////////////////////////////////////////////////////////////////////////
31
`timescale 1ns / 1ps
32
 
33
module sdpram #(parameter p_DW = 0, parameter p_AW = 0)
34
(
35
    // SYS_CON
36
    input   i_clk,
37
    // IN / port-a
38
    input                   i_we_a,
39
    input       [p_AW-1:0]  iv_addr_a,
40
    input       [p_DW-1:0]  iv_data_a,
41
    // OUT / port-b
42
    input                   i_rd_b,
43
    input       [p_AW-1:0]  iv_addr_b,
44
    output  reg [p_DW-1:0]  ov_data_b
45
);
46
//////////////////////////////////////////////////////////////////////////////////
47
 
48
    //synthesis attribute ram_style of sv_mem is distributed
49
    reg     [p_DW-1:0]  sv_mem [2**p_AW-1:0] /* synthesis ramstyle = "logic" */;
50
 
51
//////////////////////////////////////////////////////////////////////////////////
52
//
53
// Construct "Simple Dual Port RAM" logic
54
//
55
always @ (posedge i_clk)
56
begin   :   RAM_LOGIC
57
    // IN / port-a
58
    if (i_we_a)
59
        sv_mem[iv_addr_a] <= iv_data_a;
60
    // OUT / port-b
61
    if (i_rd_b)
62
        ov_data_b <= sv_mem[iv_addr_b];
63
end
64
//////////////////////////////////////////////////////////////////////////////////
65
endmodule

powered by: WebSVN 2.1.0

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