Project

General

Profile

IP documentation » History » Version 15

Jean-Christophe Pellion, 27/02/2014 05:36 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 15 Jean-Christophe Pellion
----
6
7 11 Jean-Christophe Pellion
h2. General Purpose
8 1 Jean-Christophe Pellion
9 15 Jean-Christophe Pellion
h3. Edge Detection
10 1 Jean-Christophe Pellion
11 15 Jean-Christophe Pellion
{{collapse(Edge_Detection)
12
EdgeDetection permit to detect the edge of the sin signal.
13
14
p=. !{width: 20%}edge_detection.png! 
15
16
<pre><code class="vhdl">
17
  COMPONENT lpp_edge_detection
18
    PORT (
19
      clk  : IN  STD_LOGIC;
20
      rstn : IN  STD_LOGIC;
21
      sin  : IN  STD_LOGIC;
22
      sout : OUT STD_LOGIC);
23
  END COMPONENT;
24
</code></pre>
25
26
|_.Signal      |_.Direction    |_.Size  |_.Function              |_. Active   |
27
|clk           |input          |1       |clock domain 1          |rising edge |
28
|rstn          |input          |1       |reset                   |low         |
29
|sin           |input          |1       |signal in               |            |
30
|sout          |ouput          |1       |signal out              |            |
31
32
}}
33
{{collapse(Edge_to_level)
34
EdgeToLevel ...
35
36
p=. !{width: 20%}edge_detection.png! 
37
38
<pre><code class="vhdl">
39
  COMPONENT lpp_edge_detection
40
    PORT (
41
      clk  : IN  STD_LOGIC;
42
      rstn : IN  STD_LOGIC;
43
      sin  : IN  STD_LOGIC;
44
      sout : OUT STD_LOGIC);
45
  END COMPONENT;
46
</code></pre>
47
48
|_.Signal      |_.Direction    |_.Size  |_.Function              |_. Active   |
49
|clk           |input          |1       |clock domain 1          |rising edge |
50
|rstn          |input          |1       |reset                   |low         |
51
|sin           |input          |1       |signal in               |            |
52
|sout          |ouput          |1       |signal out              |            |
53
54
}}
55
56 13 Jean-Christophe Pellion
h3. Synchronizer
57 8 Jean-Christophe Pellion
58
{{collapse(SYNC_FF)
59 1 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.
60 14 Jean-Christophe Pellion
You can configure the FF number (default 2). This number is depending of the MTBF(Mean Time Between Failure).
61 13 Jean-Christophe Pellion
62
p=. !{width: 15%}SYNC_FF.png!
63 8 Jean-Christophe Pellion
64
<pre><code class="vhdl">
65
  COMPONENT SYNC_FF_LPP_JCP
66
    GENERIC (
67
      NB_FF_OF_SYNC : INTEGER);
68
    PORT (
69
      clk    : IN  STD_LOGIC;
70
      rstn   : IN  STD_LOGIC;
71
      A      : IN  STD_LOGIC;
72
      A_sync : OUT STD_LOGIC);
73
  END COMPONENT;
74
</code></pre>
75
76
|_.Parameter   |_.Type         |_.Size  |_.Description         |_.Default   |
77 7 Jean-Christophe Pellion
|NB_FF_OF_SYNC |Integer        |        |Number of FF          |2            |
78 1 Jean-Christophe Pellion
|\5.|
79
|_.Signal      |_.Direction    |_.Size  |_.Function            |_. Active   |
80
|clk           |input          |1       |clock                 |rising edge |
81
|rstn          |input          |1       |reset                 |low         |
82 15 Jean-Christophe Pellion
|sin           |input          |1       |signal in             |            |
83
|sout          |ouput          |1       |signal synchronized   |            |
84 13 Jean-Christophe Pellion
85
}}
86
87 14 Jean-Christophe Pellion
{{collapse(SYNC_VALID_BIT)
88 13 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.
89
You can configure the FF number (default 2). This number is depending of the MTBF(Mean Time Between Failure).
90 14 Jean-Christophe Pellion
91 13 Jean-Christophe Pellion
p=. !{width: 20%}SYNC_VALID_BIT.png! 
92
93
<pre><code class="vhdl">
94
  COMPONENT SYNC_VALID_BIT_LPP_JCP
95
    GENERIC (
96
      NB_FF_OF_SYNC : INTEGER);
97
    PORT (
98
      clk_in  : IN  STD_LOGIC;
99
      clk_out : IN  STD_LOGIC;
100
      rstn    : IN  STD_LOGIC;
101
      sin     : IN  STD_LOGIC;
102
      sout    : OUT STD_LOGIC);
103
  END COMPONENT;
104
</code></pre>
105
106
|_.Parameter   |_.Type         |_.Size  |_.Description         |_.Default   |
107
|NB_FF_OF_SYNC |Integer        |        |Number of FF          |2            |
108
|\5.|
109
|_.Signal      |_.Direction    |_.Size  |_.Function              |_. Active   |
110 1 Jean-Christophe Pellion
|clk_in        |input          |1       |clock domain 1          |rising edge |
111 13 Jean-Christophe Pellion
|clk_out       |input          |1       |clock domain 1          |rising edge |
112
|rstn          |input          |1       |reset                   |low         |
113
|sin           |input          |1       |data clocked in domain 1|            |
114 15 Jean-Christophe Pellion
|sout          |output          |1       |data clocked in domain 2|            |
115 2 Jean-Christophe Pellion
116
}}