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

Subversion Repositories wb_async_mem_bridge

[/] [wb_async_mem_bridge/] [trunk/] [src/] [sync_edge_detect.v] - Blame information for rev 4

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

Line No. Rev Author Line
1 4 qaztronic
// --------------------------------------------------------------------
2
//
3
// --------------------------------------------------------------------
4
 
5
`include "timescale.v"
6
 
7
 
8
module sync_edge_detect (
9
                          input async_sig,
10
                          output sync_out,
11
 
12
                          input clk,
13
 
14
                          output reg rise,
15
                          output reg fall
16
                        );
17
 
18
  reg [1:3] resync;
19
 
20
  always @(posedge clk)
21
  begin
22
    // detect rising and falling edges.
23
    rise <= ~resync[3] & resync[2];
24
    fall <= ~resync[2] & resync[3];
25
    // update history shifter.
26
    resync <= {async_sig , resync[1:2]};
27
  end
28
 
29
  assign sync_out = resync[2];
30
 
31
endmodule
32
 

powered by: WebSVN 2.1.0

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