|
Single end--->單端輸入(從P端輸入)
3 T% X& V" [& _% ?! ?( ~Differential--->差動輸入(LVDS,,等)
, f/ J- W; n% q如果CLOCK頻率不是很高,可採單端輸入GCLK pin,再從內部去除出所要的CLOCK頻率.% L! n: v8 `8 ]( C! B9 t. i
+ d. d3 i( Q7 {2 z若要用DCM,從Xilinx Architecture Wizard(在ISE Accessories--->Architecture Wizard)去自動產生所要的CLOCK頻率.Wizard 會產生 .vhd,.xaw,.ucf檔.把.xaw加入design.(利用ISE add source)以下是以單一個DCM instance作例子.
0 t4 q N! u9 \0 b V, H
% m& ?2 }; ^1 {+ X# N" L" n% pEX: (輸入75MHz--->>輸出50MHz)
2 r! N/ w+ ~8 b9 X# mentity ClockManageris/ r, J! Q: m* f5 D4 H- d( D
Port ( clk_50mhz : in std_logic;
2 C3 a) g" b# a* X% b+ r* }clk_75mhz : out std_logic;
; l* D9 v' {8 G y: F% v& p& `clk_75mhz_180 : out std_logic);4 E4 t9 o( ]) h# `* s6 e. Z
end ClockManager;/ X0 k7 k$ L, W% B" ~% S$ C
architecture Behavioral of ClockManageris. I9 K1 w* _2 ]% S3 O; X
component clkgen_75mhz0 ~; X @5 x+ H
port ( CLKIN_IN : in std_logic;, |% d% \! W1 N F
RST_IN : in std_logic;$ I0 [" K% ]) Y" M- ?2 c; v: ~
CLKFX_OUT : out std_logic;2 k& y# L/ G- a% M, b
CLKFX180_OUT : out std_logic;
2 }9 k1 l4 c9 K$ a7 }+ Z+ SCLKIN_IBUFG_OUT : out std_logic;
* U0 C, z" T+ H" s7 vLOCKED_OUT : out std_logic);
6 n e5 C7 y2 w$ o2 A0 |- mend component;
6 ^1 r: B$ y9 ]' Vbegin
/ Z1 ?* m) w' [, ~gen_75mhz: clkgen_75mhz
; }( f; K, a2 O7 Bport map( CLKIN_IN => clk_50mhz,8 W1 `1 E3 T8 T4 E
RST_IN => '0',
! R* R) T9 s) hCLKFX_OUT => clk_75mhz,
* U" S7 ]# E6 A7 Y6 YCLKFX180_OUT => clk_75mhz_180,% X1 e) W: c* ^) O4 v z
CLKIN_IBUFG_OUT => open,
, J1 y& z b5 Z XLOCKED_OUT => open );
6 [8 W+ `8 }& w) ?8 A' [9 C4 M9 c& qend Behavioral; |
|