Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
21#
發表於 2007-6-10 21:50:08 | 只看該作者
... 這樣說吧0 w$ p) f1 R+ M4 J" b
如果有 PIXEL CLK 就用它除頻( \. D; _7 H& H& b' H+ ]
如果有 HSYNC 就用它倍個幾次) J( O! v5 W& Y( R

8 ]4 }: z* d8 T' y2 q3 Q因為 PIXEL(DOT), HSYNC, VSYNC 之間有一定的倍數關係2 a# d* }. i1 E5 N5 ]( [9 k) r

' G. K2 q/ ~; m2 h0 w: H0 F& U1 ^   640x480@60Hz => 25.175MHz (39.7ns), x' `. |* B9 G* g
   DOTx800=HSYNC, 39.7ns x 800 = 31.469us
: R1 ~- C% \/ s% ]9 Q" A   HSYNCx525=VSYNC, 31.469us x 525 = 16.52ms (60Hz)
8 T; `6 i( x' U! ~1 n所以這樣的CLK一定會和VSYNC同步 (詳見VESA Monitor Timing SPEC)3 K, S! l1 p& x

. y8 L: R0 I0 R9 N1 K' }接下來如果要VSYNC時不出CLK.. 那就用個AND閘吧 (看你用哪個MODE, SYNC有High或Low)9 M9 l$ w, \* S, s
" b+ H3 l) P+ X  [2 F1 B9 |
還是我想的清況和你不同呢?
22#
發表於 2007-6-11 15:02:01 | 只看該作者
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
23#
 樓主| 發表於 2007-6-17 11:12:57 | 只看該作者
原帖由 tommywgt 於 2007-6-11 03:02 PM 發表 $ O7 S2 N  [# a4 G& B
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
9 y! o6 u  j5 \7 t2 ]' {

! U  x/ p. |. j# X0 |  @. I
/ S! i% X1 n) B, n! ^, u' X1 p7 g- G4 Q
嘿嘿....沒錯..
8 s5 ]1 V( t# ~所以我現在還是用60hz去產生600hz..
9 d8 R2 H1 q" E. Q另外一個原因是因為客戶只會給我60hz的訊號啦...
24#
發表於 2007-6-20 13:39:55 | 只看該作者
不過我還是覺得也許會有更好的方法來設計這個東東的, 所以才會說介紹個人給之類的...哈
25#
發表於 2007-9-10 06:26:03 | 只看該作者
//可直接透過synthesis  tool用於PLD,FPGA不可 LUT delay則要採其他方式。$ V. d- u; W7 A! B* W4 D% V0 Q/ c
//所有註解都要保留
; N2 `8 n0 B7 K' X$ h
; R, d7 g, F) Q) Y' ``timescale 1 ns / 1 ns( o0 {: M, T% U: j0 {
module xclk(sclk,ena,set,outp);
  ]! R% V" z6 s9 Q$ [1 r& w0 a$ |3 K) Q8 m3 J0 Q. o
1 t, x% e0 _. ^
* l( T0 M/ F' r: Z8 {! f
input sclk,ena;8 b% G3 L8 h* a4 F  o8 y
input [1:0]set;
4 ]" A5 D2 {& P  A7 f7 m8 }output outp; , n/ D8 j# x/ Z1 P6 ~

9 Z- q2 v( z0 G! a/ awire outp;+ _5 u3 k/ N9 j7 Y7 @. F
8 k) R. W6 L, N, z& U$ v

/ N" \+ _3 [9 h8 X. h7 X7 K9 x" L0 L; J2 t- d* T
/**** Node preservation for nodeA **************/
* F  P* U- @; B# j/ l
" S( M2 d% h) @; `
1 z4 ~( _/ |, @! A//exemplar attribute nodeA_5 preserve_signal true/ j" Y/ w) d0 V) t+ k

' \; ?: z- `0 p6 ^- a5 G//exemplar attribute nodeA_4 opt keep
6 v8 O  G4 d7 @  t, _# {% L+ R' d) T
0 }) `; |; A6 j5 d# C/**** The following comment form also works ****/( F2 g, J% @# V) ~" d8 u
1 j0 U$ ~3 C" U) L+ ?9 V
//exemplar attribute nodeA_3 preserve_signal true4 n2 C) `# }: I$ ^" G

% z$ c  f7 d5 D6 I0 ]; y//exemplar attribute nodeA_3 opt keep/ D7 E$ W: P5 r: x- W# u6 X

2 |' q. M, |+ d# y$ a7 c6 v/**** The following comment form also works ****/
7 e0 ]( v( C9 V* ^$ p
% I8 L6 L2 b) I% ^& T- n//exemplar attribute nodeA_2 preserve_signal true& j" J, l6 W# O- V8 Q8 {' A

+ s" {' Q5 [, C8 A9 o0 [& E1 n0 \//exemplar attribute nodeA_2 opt keep) S) b; A4 P) ~' W* @+ T5 W: s- _

5 D! P7 {. o, X" s/**** The following comment form also works ****/
3 H% M6 r/ o: a2 Z& x$ k; ]7 ~- q) S: l
" s3 `: ^. K: @//exemplar attribute nodeA_1 preserve_signal true
( w( K5 h6 H# Y7 ~/ L) `! u& P5 c* H
- n% f4 @8 a: z% Q2 v//exemplar attribute nodeA_1 opt keep8 t3 p( K" W3 g! \! p4 v+ c
$ _) Q+ G( z0 C' O5 r

* C: ?9 |# {: z5 W0 \' E5 \/**** The following comment form also works ****/
; y& ]3 n8 a. R* N8 S/ V. R$ [9 H2 Z7 v# j  K; o3 M. d
/*exemplar attribute nodeA_0 preserve_signal true
% h4 E5 ~6 a* ^. Q* C+ [& E: q3 q: a1 r; P
exemplar attribute nodeA_0 opt keep*/
% q) q9 W6 `0 {$ D& Z! v2 L
( i* N" H2 j6 m6 X1 g; }/ y8 C& Z" c3 L# R, P& ?* Y+ L  ~

# |; h9 c0 P* i8 L1 D0 h, E5 Y/ p1 U+ P

5 D2 ]6 s: {) z! I. L3 V
; J2 X4 S. j% a9 h8 ^
$ }1 {4 f9 Z$ O# m! \5 l' N2 X4 n
/ E, ^, ~- ]3 M7 t: W; d8 s2 v
9 s  X: k) W. @, u; W/ f5 v1 h6 t
% j/ y5 m5 h9 r0 Jwire nodeA/* synthesis syn_keep=1 opt="keep"*/;
  z6 M3 g1 q! \wire nodeA_0/* synthesis syn_keep=1 opt="keep"*/;2 |+ l5 e( E, [1 g+ N
wire nodeA_1/* synthesis syn_keep=1 opt="keep"*/;
7 @" j3 Z$ a, M, `( v% @5 owire nodeA_2/* synthesis syn_keep=1 opt="keep"*/;5 q! X+ m5 o6 p$ o* J& P+ Z) Z
wire nodeA_3/* synthesis syn_keep=1 opt="keep"*/;7 K9 ~9 H( N) q& ^2 l0 e
wire nodeA_4/* synthesis syn_keep=1 opt="keep"*/;
  K% k6 A" }0 O8 {
& L" B, M6 F) c3 `4 lassign#1 nodeA_0  = sclk & ena;
; j7 p  E+ Z+ l$ Y% i
, f7 F1 f. f/ \# o+ xassign#1 nodeA_1 = ~ nodeA_0;
0 J7 D5 c( ]( Passign#1 nodeA_2 = ~ nodeA_1;, K0 S- e( E% b* \8 R# L
assign#1 nodeA_3 = ~ nodeA_2;% R; D+ ]) v2 o8 o$ P; n* |
assign#1 nodeA_4 = ~ nodeA_3;* M/ s. @3 d2 |* V

" }5 f3 x% d7 e# Z" S. D0 B4 _" m( [reg xout;
+ U5 U2 V2 |* X  z% O2 p, J. k4 k2 l5 c# Y: b, l2 I. g6 B4 c
always@(nodeA_1,nodeA_2,nodeA_3,nodeA_4,set)& v, S2 t+ x- v: t' T. k$ @
  casez(set)- Y/ P$ p' j; O/ ^7 v. k. w
    1: xout =#1 nodeA_2;
+ ]2 b9 o. P2 R7 C; N7 G    2: xout =#1 nodeA_3;
& H% h1 }8 Y( t    3: xout =#1 nodeA_4;6 r7 A2 w8 m% R3 q# p
    default: xout =#1 nodeA_1;  u* h6 ^, `0 G' u' R9 G
  endcase1 `" ]8 ^# f4 F4 S* ^" R
  
! I6 S. x1 F/ H  u) fassign#1 nodeA = xout;; N5 n* e' k: X/ Z
assign#1 outp = ena ? nodeA^sclk : 1'bz;
( D8 E* y: t% k1 C" G! h* `! V
" ^: a) q: [2 S- S/ z' zendmodule
  t6 i4 Y+ s) l* a( z
' y! g- m, d5 {  w9 I& g! a1 Y' v( \5 u% h9 u

! ^& j- j4 |4 g0 r8 F! `' X`timescale 1 ns / 1 ns' A# G% j  J% ]5 A
module xclk_tf();4 q* G* T3 Z+ d
" D6 w- j: o$ }2 Q
// Inputs' R0 b1 f* Y' A
    reg sclk;- p0 |. ]9 A+ I8 c* b
    reg ena;
* k( i; E, `. o7 s1 @" B/ ~) a    reg [1:0] set;5 t7 `: P/ k6 S* C- ?# P# k
6 f; P0 q/ ]7 f+ Z
5 A# O. m' e& n, t9 n1 O
// Outputs2 C/ D, x0 J$ ^
    wire outp;
# ^5 @$ N6 N' f; y! ~# l2 F$ A; F
* p! D. p5 H0 E% y+ H+ b0 R$ B6 z
' q6 E5 D$ e" V9 E$ r* |, A' J  ~: D! n1 E0 Q
    xclk UUT (" v8 ~+ ?: w, f, H" ~$ w3 m' v
        .sclk(sclk),
$ B  [5 Z% c8 J( o2 E        .ena(ena), 5 u; O& ~3 W/ J
        .set(set), . C* H2 j& ~, i$ h, L9 ^! x. ]
        .outp(outp). Z! x7 _& {# H; [- G
        );
# D3 N# c" e* i! c# y. l: q' c9 Z) J7 b3 b# V7 k# ?

1 f+ x: B0 k% E& Q8 q. ]
& L& Z! y2 s; r% O$ q; m1 K' v$ ]; C    initial begin* \0 r4 G" f) @
            sclk = 0;$ z! r* u+ r1 Q0 V3 w
            ena = 0;: Z5 Q, I7 q& g+ U! M2 B0 N
            set = 0;
7 O% r" |! D9 Z, {+ [( J    end8 H5 V, P7 Q  c+ m

' E- L/ Z' `; ]! G0 k% y8 Z
4 z: _) K, E; H$ o2 Walways# 5 sclk = !sclk;& P0 |" a( C. m. F/ `

6 Z- [5 \0 m0 }- G$ ?initial begin
# c* B. y: ?$ X" a        #100
# l. a0 P( _& j9 x          ena = 1;9 w6 W% \  U2 [
        #2000 4 e$ ]% [+ A! d, U. y+ s  S1 H4 o
          set = 2;
$ ?( q, ^1 ]; E! `$ M5 @        #2000 0 o: K. C  o! \+ Z
          set = 3;
5 k5 P) K# T  P8 ?1 U  #20007 A. K0 S9 @$ W5 F# t; P! M
  $finish;
  @8 b) g+ J$ A8 Q, F8 Mend1 L1 Z7 L3 s' k$ G) ?! g
endmodule // xclk_tf
26#
發表於 2007-9-10 14:49:50 | 只看該作者
這個有趣了
9 n% v) K4 V2 M有simulation的waveform嗎?+ @4 {1 [% H1 K2 K8 S6 _9 q
示波器量的更好~~~^^"
27#
發表於 2007-9-10 17:20:59 | 只看該作者
有附 test bench& K5 d! O) J' p6 N8 l# e' h. {
確實可用! 已實驗過,但我不會貼圖。. {' W' V3 j# ]2 a# r5 m0 ?4 C
只要略加修改即可實現。
28#
發表於 2007-12-24 14:50:48 | 只看該作者
請問一下你是要控制LED在顯示方面的應用嗎??
7 V4 P. `! A$ K, z
* b& c; M% l0 K- b) {$ \7 J# T; N1 e3 h可以和你討論幾個問題嗎??* U. ]" E/ M1 c1 q1 [$ V, B& p
5 F* ?& l, d9 J6 g, t/ @: D- h/ x$ f' \
方便留MSN嗎??1 S8 k5 F2 d! _9 L9 \: y7 l* P
6 s4 v) c% k" b0 q+ A5 Y; i% N
感謝
29#
 樓主| 發表於 2007-12-24 16:35:41 | 只看該作者
沒錯...5 p4 L5 u7 ]/ z" q  k7 X6 N. a6 t" [  ?. T
是要用在LED Backlight的....2 r$ z, a' _/ D9 d
其實有問題可以在這個帖子直接討論..0 e- J7 r7 p+ O: p
這個沒什麼秘密啦...; s- w! b" z/ I* p7 A* l
因為我已經申請專利了.....
30#
發表於 2008-10-4 00:04:50 | 只看該作者
嗯~~大大解答蠻詳細低~~~多謝喔~~~小第在研究看看~~~~~~~��
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-29 10:49 AM , Processed in 0.125016 second(s), 16 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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