IP documentation » History » Revision 14
Revision 13 (Jean-Christophe Pellion, 27/02/2014 04:10 PM) → Revision 14/38 (Jean-Christophe Pellion, 27/02/2014 04:46 PM)
{{>toc}} h1. IP Documentation h2. General Purpose ---- h3. Synchronizer {{collapse(SYNC_FF) 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. You can configure the FF number (default 2). This number is depending of the MTBF(Mean Time Between Failure). p=. !{width: 15%}SYNC_FF.png! 25%}SYNC_FF.png! <pre><code class="vhdl"> COMPONENT SYNC_FF_LPP_JCP GENERIC ( NB_FF_OF_SYNC : INTEGER); PORT ( clk : IN STD_LOGIC; rstn : IN STD_LOGIC; A : IN STD_LOGIC; A_sync : OUT STD_LOGIC); END COMPONENT; </code></pre> |_.Parameter |_.Type |_.Size |_.Description |_.Default | |NB_FF_OF_SYNC |Integer | |Number of FF |2 | |\5.| |_.Signal |_.Direction |_.Size |_.Function |_. Active | |clk |input |1 |clock |rising edge | |rstn |input |1 |reset |low | |A |input |1 |data in | | |A_sync |ouput |1 |data out synchronized | | }} {{collapse(SYNC_VALID_BIT) SYNC_VALID_BIT Sync_FF permit to synchronize a signal sin from clock domain clk_in A in the clock domain clk_out. The sin clk. Normally, the A signal is clocked with one must be the output of a FF cloked in clk_in domain and NB_FF_OF_SYNC in clk_out an other domain. You shouldtn't have "logic" between the 2 domain. You can configure the FF number (default 2). This number is depending of the MTBF(Mean Time Between Failure). p=. !{width: 20%}SYNC_VALID_BIT.png! 25%}SYNC_FF.png! <pre><code class="vhdl"> COMPONENT SYNC_VALID_BIT_LPP_JCP GENERIC ( NB_FF_OF_SYNC : INTEGER); PORT ( clk_in : IN STD_LOGIC; clk_out : IN STD_LOGIC; rstn : IN STD_LOGIC; sin : IN STD_LOGIC; sout : OUT STD_LOGIC); END COMPONENT; </code></pre> |_.Parameter |_.Type |_.Size |_.Description |_.Default | |NB_FF_OF_SYNC |Integer | |Number of FF |2 | |\5.| |_.Signal |_.Direction |_.Size |_.Function |_. Active | |clk_in |input |1 |clock domain 1 |rising edge | |clk_out |input |1 |clock domain 1 |rising edge | |rstn |input |1 |reset |low | |sin |input |1 |data clocked in domain 1| | |A_sync |ouput |1 |data clocked in domain 2| | }}