IP documentation » History » Version 14
Jean-Christophe Pellion, 27/02/2014 04:46 PM
1 | 10 | Jean-Christophe Pellion | {{>toc}} |
---|---|---|---|
2 | 1 | Jean-Christophe Pellion | |
3 | 11 | Jean-Christophe Pellion | h1. IP Documentation |
4 | 1 | Jean-Christophe Pellion | |
5 | 11 | Jean-Christophe Pellion | h2. General Purpose |
6 | |||
7 | 1 | Jean-Christophe Pellion | ---- |
8 | 10 | Jean-Christophe Pellion | |
9 | 12 | Jean-Christophe Pellion | h3. Synchronizer |
10 | 8 | Jean-Christophe Pellion | |
11 | 13 | Jean-Christophe Pellion | {{collapse(SYNC_FF) |
12 | 8 | Jean-Christophe Pellion | Sync_FF permit to synchronize a signal A in the clock domain clk. Normally, the A signal must be the output of a FF cloked in an other domain. You shouldtn't have "logic" between the 2 domain. |
13 | You can configure the FF number (default 2). This number is depending of the MTBF(Mean Time Between Failure). |
||
14 | 1 | Jean-Christophe Pellion | |
15 | 14 | Jean-Christophe Pellion | p=. !{width: 15%}SYNC_FF.png! |
16 | 13 | Jean-Christophe Pellion | |
17 | <pre><code class="vhdl"> |
||
18 | 8 | Jean-Christophe Pellion | COMPONENT SYNC_FF_LPP_JCP |
19 | GENERIC ( |
||
20 | NB_FF_OF_SYNC : INTEGER); |
||
21 | PORT ( |
||
22 | clk : IN STD_LOGIC; |
||
23 | rstn : IN STD_LOGIC; |
||
24 | A : IN STD_LOGIC; |
||
25 | A_sync : OUT STD_LOGIC); |
||
26 | END COMPONENT; |
||
27 | </code></pre> |
||
28 | |||
29 | |_.Parameter |_.Type |_.Size |_.Description |_.Default | |
||
30 | |NB_FF_OF_SYNC |Integer | |Number of FF |2 | |
||
31 | |\5.| |
||
32 | |_.Signal |_.Direction |_.Size |_.Function |_. Active | |
||
33 | 7 | Jean-Christophe Pellion | |clk |input |1 |clock |rising edge | |
34 | 1 | Jean-Christophe Pellion | |rstn |input |1 |reset |low | |
35 | |A |input |1 |data in | | |
||
36 | |A_sync |ouput |1 |data out synchronized | | |
||
37 | 13 | Jean-Christophe Pellion | |
38 | }} |
||
39 | |||
40 | {{collapse(SYNC_VALID_BIT) |
||
41 | 14 | Jean-Christophe Pellion | SYNC_VALID_BIT permit to synchronize a signal sin from clock domain clk_in in clock domain clk_out. The sin signal is clocked with one FF in clk_in domain and NB_FF_OF_SYNC in clk_out domain. |
42 | 13 | Jean-Christophe Pellion | You can configure the FF number (default 2). This number is depending of the MTBF(Mean Time Between Failure). |
43 | |||
44 | 14 | Jean-Christophe Pellion | p=. !{width: 20%}SYNC_VALID_BIT.png! |
45 | 13 | Jean-Christophe Pellion | |
46 | <pre><code class="vhdl"> |
||
47 | COMPONENT SYNC_VALID_BIT_LPP_JCP |
||
48 | GENERIC ( |
||
49 | NB_FF_OF_SYNC : INTEGER); |
||
50 | PORT ( |
||
51 | clk_in : IN STD_LOGIC; |
||
52 | clk_out : IN STD_LOGIC; |
||
53 | rstn : IN STD_LOGIC; |
||
54 | sin : IN STD_LOGIC; |
||
55 | sout : OUT STD_LOGIC); |
||
56 | END COMPONENT; |
||
57 | </code></pre> |
||
58 | |||
59 | |_.Parameter |_.Type |_.Size |_.Description |_.Default | |
||
60 | |NB_FF_OF_SYNC |Integer | |Number of FF |2 | |
||
61 | |\5.| |
||
62 | |_.Signal |_.Direction |_.Size |_.Function |_. Active | |
||
63 | |clk_in |input |1 |clock domain 1 |rising edge | |
||
64 | |clk_out |input |1 |clock domain 1 |rising edge | |
||
65 | |rstn |input |1 |reset |low | |
||
66 | |sin |input |1 |data clocked in domain 1| | |
||
67 | |A_sync |ouput |1 |data clocked in domain 2| | |
||
68 | 2 | Jean-Christophe Pellion | |
69 | }} |