|
Single end--->單端輸入(從P端輸入)) c5 O8 [+ J3 _% [
Differential--->差動輸入(LVDS,,等)7 I- y2 [5 i6 q
如果CLOCK頻率不是很高,可採單端輸入GCLK pin,再從內部去除出所要的CLOCK頻率.' X7 Y, [8 H, P" w
# o% `8 @& S1 k& [, ~ {若要用DCM,從Xilinx Architecture Wizard(在ISE Accessories--->Architecture Wizard)去自動產生所要的CLOCK頻率.Wizard 會產生 .vhd,.xaw,.ucf檔.把.xaw加入design.(利用ISE add source)以下是以單一個DCM instance作例子.
) [! [1 o& T. ^; F0 \/ S% V9 G# X" x6 a2 R1 t3 x9 s
EX: (輸入75MHz--->>輸出50MHz)3 c* ]; b8 J1 e4 c& a/ h' u
entity ClockManageris
2 u4 r' E6 \3 [7 fPort ( clk_50mhz : in std_logic;
( N8 @' V) o: ?5 B8 oclk_75mhz : out std_logic;
* j7 h' h4 `( q) f3 F V$ Z2 o% L; Xclk_75mhz_180 : out std_logic);* H/ i9 X. F0 c K, a
end ClockManager;) q) }* Z1 h! M6 E- g8 q8 T
architecture Behavioral of ClockManageris1 o! J; u1 [$ ~7 `2 V$ q
component clkgen_75mhz
0 m, _, W$ n& x0 w- lport ( CLKIN_IN : in std_logic;
) V' G5 O# i, N- sRST_IN : in std_logic;
& {% y c. ]$ C+ Y) W: [: yCLKFX_OUT : out std_logic;
9 |# l% ?7 C/ `4 u0 nCLKFX180_OUT : out std_logic;
' u0 C$ A# m+ ]9 v- h; HCLKIN_IBUFG_OUT : out std_logic;$ U* ~: B! f8 g& b4 A& _
LOCKED_OUT : out std_logic);
4 K! z+ c. V; Y' c% [end component;
% J6 C. H7 T3 F9 _" bbegin5 |; M9 X2 w) S$ A( Y/ I# T
gen_75mhz: clkgen_75mhz
/ r% m! t! X! s* xport map( CLKIN_IN => clk_50mhz,
1 E+ G! F: ~+ K4 y. I, T: ~' `RST_IN => '0',
4 B5 L( p) V+ JCLKFX_OUT => clk_75mhz,, j# @1 Y% _. E7 e1 Q S+ a
CLKFX180_OUT => clk_75mhz_180,
; r/ b; b% {* [9 V" wCLKIN_IBUFG_OUT => open,
* S2 T$ l- f9 V. L: x$ z1 ~8 tLOCKED_OUT => open );) M) t) ]" ^3 ] e/ [
end Behavioral; |
|