Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
12
返回列表 發新帖
樓主: kolong
打印 上一主題 下一主題

[問題求助] PLL 的實現方法?

[複製鏈接]
21#
發表於 2007-6-10 21:50:08 | 只看該作者
... 這樣說吧: k: P' J, O8 d2 s' H
如果有 PIXEL CLK 就用它除頻
, c6 ?; ~2 s) T6 a% J5 S( R$ K0 A1 A如果有 HSYNC 就用它倍個幾次
! r3 d! q' _( Y) o+ c0 r! h* |
" w2 O1 A0 v  J: K- q" P5 X因為 PIXEL(DOT), HSYNC, VSYNC 之間有一定的倍數關係
% H% Z( N( ]5 b" z, ^3 l5 o- l4 Z$ ^1 t! F$ H6 p3 N
   640x480@60Hz => 25.175MHz (39.7ns)0 F6 s( u4 n% U
   DOTx800=HSYNC, 39.7ns x 800 = 31.469us. C0 k8 |: c# l
   HSYNCx525=VSYNC, 31.469us x 525 = 16.52ms (60Hz)
* f2 D1 k$ L5 r所以這樣的CLK一定會和VSYNC同步 (詳見VESA Monitor Timing SPEC)
" L6 Q  s4 X1 l, ]+ t% M
+ m' p; \% G. A8 D+ a# j" x/ t接下來如果要VSYNC時不出CLK.. 那就用個AND閘吧 (看你用哪個MODE, SYNC有High或Low)
5 M7 u! O4 y3 t# d4 D: [( X) t0 B% }' T6 j9 [7 ^# B
還是我想的清況和你不同呢?
22#
發表於 2007-6-11 15:02:01 | 只看該作者
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
23#
 樓主| 發表於 2007-6-17 11:12:57 | 只看該作者
原帖由 tommywgt 於 2007-6-11 03:02 PM 發表
/ B( S& [  y/ H+ _4 k- G這樣子做出來的phase error會很大也, 要先看規格的要求一下下

7 N1 @* z  y( f3 f. y+ Y# A3 `. n5 C1 x5 C4 I# z

7 y$ |. A6 L% m) V2 M) y; u
2 ]6 E% j$ T' ^, \) g" L嘿嘿....沒錯..( l1 S# q" P  _* L8 c  ?8 Z
所以我現在還是用60hz去產生600hz..
2 u9 |) t1 t# o9 Y+ P0 p另外一個原因是因為客戶只會給我60hz的訊號啦...
24#
發表於 2007-6-20 13:39:55 | 只看該作者
不過我還是覺得也許會有更好的方法來設計這個東東的, 所以才會說介紹個人給之類的...哈
25#
發表於 2007-9-10 06:26:03 | 只看該作者
//可直接透過synthesis  tool用於PLD,FPGA不可 LUT delay則要採其他方式。
/ F. z2 [/ M6 t) ^( R6 E7 C//所有註解都要保留( Y2 k$ A6 h) r" ?0 ?, K0 S
6 G% I6 z2 \: E* j  c& Q
`timescale 1 ns / 1 ns* v& X  w& E. ?$ |: `1 {
module xclk(sclk,ena,set,outp);
3 |5 c+ P  U' ^2 w. Z. i4 ^: t6 G' B5 N5 K, N' U2 `; d
; v& t* M0 E2 }, r

6 X" l# E" r6 Oinput sclk,ena;, c8 [, a- e7 v0 U
input [1:0]set;9 Y$ B* D% H; [, l7 R$ }. ~
output outp;
: h2 @" |3 Z3 p/ z2 n/ j1 S2 ?0 i% }, A) C* L
wire outp;6 f9 H3 i) a- h& K5 ~

. o0 |+ [; u2 y# ~$ c/ C- d+ V0 J9 Y% \ ' u- c* ^# H: I

; b# B) V: s9 d% M, V/**** Node preservation for nodeA **************/
/ B6 m8 z3 I/ w
- \/ d5 @+ ~8 Y2 h
1 {, d. @& H% j) O3 T//exemplar attribute nodeA_5 preserve_signal true( K" H: t. _( Z# J0 j2 O4 w9 e

( E- R3 |& L1 J) p! ~6 A8 c//exemplar attribute nodeA_4 opt keep
( J) o) c7 ~& S2 r" B) a9 b/ d( D* u4 q1 e* m" x# ~
/**** The following comment form also works ****/
8 u7 ]  ~, J+ w" D  e! y# O; S. _9 R; K- B3 @  t! Y
//exemplar attribute nodeA_3 preserve_signal true
( S: R' \  x% j
/ h3 _% q0 c: k6 q//exemplar attribute nodeA_3 opt keep2 E( M: L; C8 l: y# w3 G2 G
" t  H# d4 W* I5 \6 x( ]8 M* L
/**** The following comment form also works ****/
+ h4 L7 q6 S/ v9 U/ N/ D
( u9 T4 n/ n1 ]# e//exemplar attribute nodeA_2 preserve_signal true; N; x5 j+ T' p, O6 Q. D

' t. i3 \& U2 E# k7 |' N: ]7 _' D//exemplar attribute nodeA_2 opt keep
* j  [0 ?3 _2 g( q3 J0 _5 p
6 ?$ @7 p% p# R" U4 ]/**** The following comment form also works ****/3 n$ o4 U: T; z# H8 D* m
- p5 a# s$ Z) A' E0 V
//exemplar attribute nodeA_1 preserve_signal true
  v4 v  |+ ~* T- I% d
. L* g, b2 c! `: ~6 t! r//exemplar attribute nodeA_1 opt keep
- `8 d4 |; M) D+ [( l& i
  `" d3 |. h# ~/ J& M* \' P- B  r7 J. s1 ?3 Q8 `# v! ^4 k
/**** The following comment form also works ****/
5 J% m- L; H; q: U! z! e1 D2 z# A# M( h2 b- a
/*exemplar attribute nodeA_0 preserve_signal true
: O% ]3 o  `' J0 Q( \: W: P
) Q, Z% R/ |0 z! {+ A9 Sexemplar attribute nodeA_0 opt keep*/ ) V# L9 h. {. X( e$ i) u
0 L) R, B8 ?6 w  |1 n0 u

( V4 h$ e( H' h0 p" M) @
- ^5 B0 N, ]/ g+ D; w: V' o2 K3 J/ C7 c
2 a9 n( N" e1 z) k

1 F+ D7 r3 z9 c( T! w! @- Q4 G* U" ?2 K

1 {1 n. w" q* a6 W: J" T, i! B! ^. I4 ~$ R0 k7 F7 D" z7 t0 R
5 J6 a$ L! [5 k* q" ~) r/ u
wire nodeA/* synthesis syn_keep=1 opt="keep"*/;
+ p3 o! b5 e- o$ y, X; X/ zwire nodeA_0/* synthesis syn_keep=1 opt="keep"*/;
  X( D3 J, J8 j8 a- `9 Dwire nodeA_1/* synthesis syn_keep=1 opt="keep"*/;
( [9 i& s+ l3 n5 B+ s- U4 Xwire nodeA_2/* synthesis syn_keep=1 opt="keep"*/;
  \8 ]# p' |  A1 Z  Vwire nodeA_3/* synthesis syn_keep=1 opt="keep"*/;
9 ]0 n6 D* |1 Zwire nodeA_4/* synthesis syn_keep=1 opt="keep"*/;
% F; _) q1 M2 B+ K  w" S& j  @$ W" U$ |, X7 X9 A
assign#1 nodeA_0  = sclk & ena;1 @$ l6 Y4 s* s6 d$ H% }- T. `5 M+ o
/ |# x- ]; T! ?. P& X6 r
assign#1 nodeA_1 = ~ nodeA_0;
- _. y$ s7 n( b8 o& d8 B5 G" D3 Xassign#1 nodeA_2 = ~ nodeA_1;. x9 @: B  W1 [* f% f
assign#1 nodeA_3 = ~ nodeA_2;
. D2 z5 r4 V. J: c: ~$ y. o/ f. zassign#1 nodeA_4 = ~ nodeA_3;! Z  M* i- u! D4 S& J  L
6 E- X, s# n  j1 q" `
reg xout;8 n) i& O# n; O5 E9 u$ z
2 s. `% X- F( K: S0 ^3 x
always@(nodeA_1,nodeA_2,nodeA_3,nodeA_4,set)
; q; F( e* H; L  casez(set)
. G0 S+ Q7 t0 x0 {& q; U7 v: ~    1: xout =#1 nodeA_2;
% w2 l- ^* J) e) w! Z    2: xout =#1 nodeA_3;" U1 q& B) ]% H8 z3 k3 b4 F! ]) B
    3: xout =#1 nodeA_4;9 R  V) g" \* [& F
    default: xout =#1 nodeA_1;# k; H$ K3 o' j3 T0 T
  endcase4 N9 u2 F: g9 b; R
  
4 {' \% R" Y& {' p& r- Vassign#1 nodeA = xout;
  Y0 E: q7 C* n8 _assign#1 outp = ena ? nodeA^sclk : 1'bz;1 C# J: N% e! j6 y1 w  v
( Q2 u+ k8 s: M% g9 |: ^- o
endmodule+ G+ @9 L/ a2 _$ V. j  o7 j3 I* ~
, ]) s5 W1 K6 j- Y+ I
1 u( Y+ U: J1 p- U9 k
& V0 O8 G$ @7 c0 R0 R& z* @
`timescale 1 ns / 1 ns
1 ~( B, y! ~, B! pmodule xclk_tf();: K5 ?2 c7 `- f0 h; e( }' h1 ~

& s8 s4 X1 I; m  A) w7 p8 u# S6 I( n! j  @// Inputs' I  N: S( n+ ]4 V7 l$ W. H
    reg sclk;
0 r  }, ^9 X* Z    reg ena;
( Z9 s/ k0 q, X0 W& s3 L+ l    reg [1:0] set;
. t# f$ U0 C) {- C! p: E1 G
! e" ^; k* e* N
% _- ^" A4 X' m# G. Y/ Z// Outputs3 u) Y0 ?1 O1 D7 Z, `3 r: ]
    wire outp;0 X0 l; z* h. T) V. o; v

9 F( K' y. x; @: q: H
# j, Z& b( f  h6 e1 S$ I9 E; e* |/ H" i. x
    xclk UUT (
# G4 B! W) S6 X& j8 d        .sclk(sclk),
9 H0 f/ C+ n% n! u% {/ F; t, E        .ena(ena),   O, y/ _( L- b! `: F. c
        .set(set), 4 S9 ~1 c) w- f# _( `$ y
        .outp(outp)
( m  s7 }) l* ~1 ]6 t+ I        );
4 m# P5 L5 S$ L6 @4 k+ S3 ]& d1 p) @
  I( l, ~4 D# g3 e% Z2 o
! l) N* h. L1 p5 h, O( r+ V4 U7 Y  ?! P
    initial begin7 K3 a2 z  Z  r
            sclk = 0;
0 J2 h4 U* k$ O" p9 @/ S            ena = 0;
: y5 P; `, E# N8 z2 q( l* B7 ]            set = 0;
( l' |4 o" r! O7 y7 M' I- b    end) t  }3 \5 E% R$ _

) D' c/ q) t8 b9 y9 H( }- M9 c& I# ~" n0 a. A. k" y9 J
always# 5 sclk = !sclk;
7 B, b$ [+ j) ?0 {
  M8 o4 Z2 n3 \' Hinitial begin+ n* e5 |0 K- ?' h
        #1004 z( H) }4 r1 z+ }
          ena = 1;) Z& ]# T! R: |* G/ E- E' d% {
        #2000
2 a) g: g( M) n3 ^% R1 R# C$ V4 X          set = 2;
: a# X; K& h) I3 I) ~; r7 i        #2000 5 V9 V9 y; P2 T" E# F7 d
          set = 3;
5 C& h) [, B4 O, ]% F' s/ K( N6 R2 O  #20001 }, x7 N- G3 a) F& H* ]( R, C
  $finish;! @; h$ k# Y- }# e9 {3 B. d  H
end* d  Q1 X/ ^% W/ F
endmodule // xclk_tf
26#
發表於 2007-9-10 14:49:50 | 只看該作者
這個有趣了& b7 S0 G6 s3 A$ W
有simulation的waveform嗎?
4 n1 k- f' W$ f! ~# Q示波器量的更好~~~^^"
27#
發表於 2007-9-10 17:20:59 | 只看該作者
有附 test bench
  s. a! X$ F# Y, f  [確實可用! 已實驗過,但我不會貼圖。2 a, Z4 c  v2 _4 t
只要略加修改即可實現。
28#
發表於 2007-12-24 14:50:48 | 只看該作者
請問一下你是要控制LED在顯示方面的應用嗎??
' Z' _  X, m# r2 [& ~8 s  e( T9 {
可以和你討論幾個問題嗎??# l" w$ i9 W  @6 G

7 w' M. D( l/ l方便留MSN嗎??
9 B! G/ S2 ^) }  a; ]; ~( `2 ]2 Q
感謝
29#
 樓主| 發表於 2007-12-24 16:35:41 | 只看該作者
沒錯...
' u( Z6 H! i5 R: ^5 L是要用在LED Backlight的..../ t( q# i: G, A+ A' K% N2 L
其實有問題可以在這個帖子直接討論..
0 s+ t. z" H  @+ M這個沒什麼秘密啦.... I' ]9 ?  N4 d$ K6 s  T
因為我已經申請專利了.....
30#
發表於 2008-10-4 00:04:50 | 只看該作者
嗯~~大大解答蠻詳細低~~~多謝喔~~~小第在研究看看~~~~~~~��
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-6-15 11:46 PM , Processed in 0.140518 second(s), 15 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表