|
Single end--->單端輸入(從P端輸入)$ d7 `1 P ^, {4 m, D- T
Differential--->差動輸入(LVDS,,等)
; u; e5 ]& C2 s6 W r. g如果CLOCK頻率不是很高,可採單端輸入GCLK pin,再從內部去除出所要的CLOCK頻率.+ z' g0 B& p' F" {, q; C ]7 f1 ]
/ T: a+ g( o2 s# H若要用DCM,從Xilinx Architecture Wizard(在ISE Accessories--->Architecture Wizard)去自動產生所要的CLOCK頻率.Wizard 會產生 .vhd,.xaw,.ucf檔.把.xaw加入design.(利用ISE add source)以下是以單一個DCM instance作例子.+ R8 U: |1 d4 w) Y6 F, o7 n, A
) o6 }0 G0 ]0 a; p* N; ~0 ?) @EX: (輸入75MHz--->>輸出50MHz)- I' F8 Y0 p. B w: ]
entity ClockManageris% s1 b7 x* K: C$ }
Port ( clk_50mhz : in std_logic;! x; t. G' h6 a8 \/ V: ~
clk_75mhz : out std_logic;
: o4 c6 a8 T7 a+ {1 b( A* i! gclk_75mhz_180 : out std_logic);
( @ e: s8 Q2 I) G* m5 E6 `end ClockManager;
# W- ]. m* {/ Darchitecture Behavioral of ClockManageris
2 a3 y0 f% i. n3 `2 c1 |+ w5 Bcomponent clkgen_75mhz# k, V* D9 e8 ]; j
port ( CLKIN_IN : in std_logic;: T* _/ k7 ~6 X/ U' a' h5 d6 t
RST_IN : in std_logic;( n+ x V. s5 V( f6 P/ L3 }9 W M3 r
CLKFX_OUT : out std_logic;! x! R+ H8 c/ H, T( q
CLKFX180_OUT : out std_logic;3 G; ] q! f# h$ d' i. {
CLKIN_IBUFG_OUT : out std_logic;3 A2 t6 k/ V) Y' D+ d4 S/ \1 p
LOCKED_OUT : out std_logic);& q: h3 s$ U8 Y- d, ^! R
end component;
0 M4 |& e% @+ s9 Q4 I1 Zbegin
4 _" G& W* [% U/ \& K/ Agen_75mhz: clkgen_75mhz% B4 d4 m a6 R$ |4 J4 O
port map( CLKIN_IN => clk_50mhz,. a1 J; }5 O. U, T: t
RST_IN => '0',
* j" k. A* b* U# cCLKFX_OUT => clk_75mhz,
3 s7 g0 O+ I$ w4 pCLKFX180_OUT => clk_75mhz_180,4 C6 V! Y! V* ^4 r! e
CLKIN_IBUFG_OUT => open,
# m8 J. u3 w1 C/ Y4 _9 i9 `LOCKED_OUT => open );
0 W* q/ r# v1 D" v% gend Behavioral; |
|