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

Subversion Repositories dvb_s2_ldpc_decoder

[/] [dvb_s2_ldpc_decoder/] [trunk/] [rtl/] [ldpc_ram_behav.v] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 jcorley
//-------------------------------------------------------------------------
2
//
3
// File name    :  ldpc_ram_behav.v
4
// Title        :
5
//              :
6
// Purpose      : RAM behavioral model
7
//
8
// ----------------------------------------------------------------------
9
// Revision History :
10
// ----------------------------------------------------------------------
11
//   Ver  :| Author   :| Mod. Date   :| Changes Made:
12
//   v1.0  | JTC      :| 2008/07/02  :|
13
// ----------------------------------------------------------------------
14
`timescale 1ns/10ps
15
 
16
module ldpc_ram_behav #(
17
  parameter WIDTH     = 4,
18
  parameter LOG2DEPTH = 4
19
)(
20
  input                clk,
21
  input                we,
22
  input[WIDTH-1:0]     din,
23
  input[LOG2DEPTH-1:0] wraddr,
24
  input[LOG2DEPTH-1:0] rdaddr,
25
  output[WIDTH-1:0]    dout
26
);
27
 
28
reg[WIDTH-1:0]     storage[0:2**LOG2DEPTH -1];
29
reg[LOG2DEPTH-1:0] addr_del;
30
reg[WIDTH-1:0]     dout_int;
31
 
32
assign dout = dout_int;
33
 
34
always @( posedge clk )
35
begin
36
  if( !we )
37
    storage[wraddr] <= din;
38
 
39
  addr_del <= rdaddr;
40
 
41
  dout_int <= storage[addr_del];
42
end
43
 
44
endmodule

powered by: WebSVN 2.1.0

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