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

Subversion Repositories test_project

[/] [test_project/] [trunk/] [rtl/] [verilog/] [components/] [wb_sdram_ctrl/] [delay.v] - Blame information for rev 45

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

Line No. Rev Author Line
1 18 unneback
`timescale 1ns/1ns
2 22 julius
module delay #
3 18 unneback
  (
4
   parameter depth = 3,
5 22 julius
   width = 2
6 18 unneback
   )
7 22 julius
 
8 18 unneback
   (
9
    input [width-1:0]  d,
10
    output [width-1:0] q,
11
    input              clear,
12
    input              clk,
13
    input              rst
14
    );
15
 
16
   reg [width-1:0] dffs [1:depth];
17
 
18
   integer i;
19
   always @ (posedge clk or posedge rst)
20
     if (rst)
21
       for ( i=1; i < depth+1; i= i + 1)
22 22 julius
         dffs[i] <= 0; //{depth{1'b0}};
23 18 unneback
     else
24
       if (clear)
25
         for ( i=1; i < depth+1; i= i + 1)
26 22 julius
           dffs[i] <= 0; //{depth{1'b0}};
27 18 unneback
       else
28
         begin
29
            dffs[1] <= d;
30
            for ( i=2; i < depth+1; i= i + 1)
31
              dffs[i] <= dffs[i-1];
32
         end
33
 
34
   assign q = dffs[depth];
35
 
36
endmodule //
37
 
38 22 julius
 

powered by: WebSVN 2.1.0

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