Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
21#
發表於 2007-6-10 21:50:08 | 只看該作者
... 這樣說吧9 K+ Y9 e6 ?5 c, I7 x3 P
如果有 PIXEL CLK 就用它除頻
! p: J7 ^% R9 r" `如果有 HSYNC 就用它倍個幾次* n/ x, N& |2 S

! h* z7 w8 [3 o! V7 q因為 PIXEL(DOT), HSYNC, VSYNC 之間有一定的倍數關係
2 U6 N4 P5 \9 Q8 u( O: g- b* j* d+ x& P. n- a7 h5 O6 e7 Q, ^3 m
   640x480@60Hz => 25.175MHz (39.7ns)% T2 R: i. _/ z' F; k3 i" ]# \, G
   DOTx800=HSYNC, 39.7ns x 800 = 31.469us
) v; C2 t- l  M   HSYNCx525=VSYNC, 31.469us x 525 = 16.52ms (60Hz)
3 H3 i" P+ y+ u3 a- ~所以這樣的CLK一定會和VSYNC同步 (詳見VESA Monitor Timing SPEC)
3 [" Q7 o7 f# p; @8 c; S1 j4 K
* o6 M( ^" M/ y/ P4 z6 a接下來如果要VSYNC時不出CLK.. 那就用個AND閘吧 (看你用哪個MODE, SYNC有High或Low)/ r/ P+ O. l7 U

" ?% T) D! V& L2 v還是我想的清況和你不同呢?
22#
發表於 2007-6-11 15:02:01 | 只看該作者
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
23#
 樓主| 發表於 2007-6-17 11:12:57 | 只看該作者
原帖由 tommywgt 於 2007-6-11 03:02 PM 發表 . Z& l$ K% ~, s5 R$ Z
這樣子做出來的phase error會很大也, 要先看規格的要求一下下

  u8 E0 ]+ a* |8 j5 n/ C- @& D' R* {3 ^, V0 D+ K; q1 g

0 h* i& u5 H: `/ H: Y4 V) H
, W( _( [5 e" B, H, p" N嘿嘿....沒錯..
8 B' ^: B! b5 ^" O5 s所以我現在還是用60hz去產生600hz..
7 L& C2 S% m5 N, Y" d+ f另外一個原因是因為客戶只會給我60hz的訊號啦...
24#
發表於 2007-6-20 13:39:55 | 只看該作者
不過我還是覺得也許會有更好的方法來設計這個東東的, 所以才會說介紹個人給之類的...哈
25#
發表於 2007-9-10 06:26:03 | 只看該作者
//可直接透過synthesis  tool用於PLD,FPGA不可 LUT delay則要採其他方式。" c" ~$ W+ o# V: X+ L* s5 v6 x
//所有註解都要保留4 j. h) u/ E6 y& E( X3 ^; M: C! E
. Z& |( E3 F) E$ T, a$ C" C# A
`timescale 1 ns / 1 ns
* y9 {" Q; R. I2 c* g0 f% E2 k0 Lmodule xclk(sclk,ena,set,outp);
+ O, [; `" }2 i7 s! H: N  ~; H1 b5 J+ q9 A  j9 w

( F: v" Q; _; H+ ]7 K
, i0 F9 z  l  g3 ?2 |- Einput sclk,ena;
. w$ M8 P, \  m4 p6 ]input [1:0]set;3 |1 s1 q8 p; a, N) l
output outp;
( l: g% u4 B3 M5 K2 n/ W& z9 E  c9 y  \2 e4 c' y$ ^0 ?
wire outp;0 T7 f, f3 S+ Z* X3 ~* q6 A
5 h# r7 B- Z8 v  i0 |  B" ?% p

; }; g! A* P( p. _
& J) z: |" M  G7 d$ w) r2 j' u- ^/**** Node preservation for nodeA **************/
0 b0 D! L0 B/ p  \
1 ^- N/ p( V9 j7 `0 K3 E
1 R" X* W  |3 B* ]( u" S) ~+ |, O- |//exemplar attribute nodeA_5 preserve_signal true
- R! K; m. }# L- g- c& E( ~4 p5 Y, @# V4 t2 c- z0 ^
//exemplar attribute nodeA_4 opt keep' |/ o, \& m" E7 X
0 O% L' a% o2 D, f$ W& x
/**** The following comment form also works ****/
+ k5 O9 A# K8 W* E+ v9 a% L" L0 `% e0 [$ |% ^# G3 v
//exemplar attribute nodeA_3 preserve_signal true
' ^) ?. N; v' t/ s) P! ?# k. n$ e
//exemplar attribute nodeA_3 opt keep3 Z# M" L% ^% {% _

/ I+ N( f' `; `( t; e7 q% `5 ~/**** The following comment form also works ****/
" q/ `- v. o+ b9 `/ v
/ W  g) o; N, g  D- M& ?8 c( l& q//exemplar attribute nodeA_2 preserve_signal true! r5 _% u4 E0 K: ?

/ P5 r, q: [, k//exemplar attribute nodeA_2 opt keep3 E/ P+ P/ h2 ?% b: L
0 y  {' ]5 I+ C# x4 a. n+ b6 c8 }
/**** The following comment form also works ****/# z; C  H' ~0 e

" M0 w' t4 O: w' O7 a* o5 a2 V7 M//exemplar attribute nodeA_1 preserve_signal true
5 Y: V  ?9 g- v2 X: s, ?# t/ U2 P1 g$ A; L2 v; b
//exemplar attribute nodeA_1 opt keep
% n" `4 E0 c2 i) A
7 m" p: q- d. F" G3 K5 v* a
+ t! ]/ i2 D5 j  k. @$ [/ e/**** The following comment form also works ****/
0 W! K' K1 d! |
" q0 v5 s# K0 U% u- O3 z) F5 s+ K/*exemplar attribute nodeA_0 preserve_signal true
/ T9 E% Q2 g" t" W0 G4 a; P" [9 y0 r; y
exemplar attribute nodeA_0 opt keep*/
4 s( b" K9 R2 {. c
) u  U6 p+ L2 [: E+ ^6 ^3 r9 m/ T+ T' A# ?, f
, @0 d+ ?9 U6 ^! z7 D( ^
3 o7 y5 _  ~5 T  B
" u% o8 D7 f# I! p: S: X

0 s) y! r" v  d) z+ a( R9 V4 {; o% w% i# N* x9 _/ K

+ l3 @$ ^+ @. X- S( z! J4 O
9 l  Q2 X& p3 L0 W7 H" Y# Z
. p' ]) o$ p( twire nodeA/* synthesis syn_keep=1 opt="keep"*/;
2 l. L3 U; e  a" c8 A( Xwire nodeA_0/* synthesis syn_keep=1 opt="keep"*/;
$ ~% _4 l, |/ ~5 G5 B2 `. K( Rwire nodeA_1/* synthesis syn_keep=1 opt="keep"*/;
5 k: s, P3 D, f' v3 @9 t8 P$ O$ I- ~wire nodeA_2/* synthesis syn_keep=1 opt="keep"*/;
5 y8 C) V( I( Y7 \! Swire nodeA_3/* synthesis syn_keep=1 opt="keep"*/;
3 y' }$ s! Y) L# \. mwire nodeA_4/* synthesis syn_keep=1 opt="keep"*/;
7 }: `% `7 \3 J, D# Y
; V' C" \- [7 X/ j2 G3 e, ?: `( gassign#1 nodeA_0  = sclk & ena;. z, ?; q( z, r; D
- p) V7 U+ h9 l: D/ ]4 v
assign#1 nodeA_1 = ~ nodeA_0;
+ [2 z3 X' e" Z6 y+ Hassign#1 nodeA_2 = ~ nodeA_1;
+ s' B% V8 G- [$ _; h4 iassign#1 nodeA_3 = ~ nodeA_2;
' d" `1 h- |1 U, y7 zassign#1 nodeA_4 = ~ nodeA_3;
( v/ |+ v% e. p* G" ?$ x
2 t- K; \+ \, ^; U0 r) Mreg xout;+ O* \  m$ H3 Z! M5 }+ _: v
2 c  f- e6 o* e* @+ W1 X( h" t
always@(nodeA_1,nodeA_2,nodeA_3,nodeA_4,set)
/ R# t# B3 d* H( D5 j$ q  casez(set)
: ~) ]; t0 D% G; W& d% i    1: xout =#1 nodeA_2;  R# q0 w: R6 J) [0 J
    2: xout =#1 nodeA_3;
% a" X  o( m. F. D    3: xout =#1 nodeA_4;; D. A& X; o2 g8 o
    default: xout =#1 nodeA_1;
5 R# ?" \& O1 e  endcase! m# p$ l$ K0 z# ^$ \! Z
  
& y7 Q- F! g! l& l6 ~8 j. _assign#1 nodeA = xout;9 v: q( f/ h( ~4 P( n
assign#1 outp = ena ? nodeA^sclk : 1'bz;
/ j8 c; T# r' O( ~" x3 M+ f! X/ }# C9 b" n3 y* G! |
endmodule
* m. q" |0 B* n' D* O( y' U/ ?# k; y4 B
0 o; Z4 t5 {- d! d

0 b% X! M  @1 \  O- E7 @% s`timescale 1 ns / 1 ns6 k0 w3 a1 F$ P: J0 e6 I. i
module xclk_tf();+ r0 k0 b5 m% K
2 b4 j) L5 c6 I+ c
// Inputs
  N" o8 F- Z% a- J7 ?. n    reg sclk;3 z1 d  Q" y/ f# y6 n3 `
    reg ena;. R( J" ^( o8 Z; a
    reg [1:0] set;
! b1 _( `- N' q1 X  q( B
  q" T3 ]! _! h7 _6 i3 x" r( w
  O, \) U4 p9 m$ c. M6 g" M// Outputs
$ F9 }% l" J# w; Y) p, j    wire outp;
- B# V8 j1 D7 k8 Z) [
  e% n% f8 U/ m5 V  Y/ r/ `( z5 M; W, A3 p. n4 c

3 y/ L) a, k* ^2 y" y    xclk UUT (  M& e6 w# Q% q
        .sclk(sclk),
- L4 L- Y9 U" c  M$ x        .ena(ena), # v! ?) i3 {' o- ?
        .set(set), : J- Y, W  _% w  j9 w; [# f
        .outp(outp); x% B  j0 ]( M  I* q
        );
7 _9 j; P- F) w& q7 R& G5 G. W% e: E( }
* A- B( u- ]7 l. N8 ^

. W8 a& ]; m( L% \! b, s    initial begin* s  F: ~/ e  Y
            sclk = 0;
3 e* q9 K* O1 G            ena = 0;/ [1 B) U- S4 f5 D) @5 \- K
            set = 0;3 F/ [- v; A& \* r' P
    end
* \4 M, c9 P; v* `# m8 Y5 W1 W8 ^7 c9 d0 K

( w+ j* b7 {, A* Z5 N2 w) s: qalways# 5 sclk = !sclk;9 h( Q* {* k& k% H
0 T# [% O' C9 b8 C- ]- S8 w
initial begin
7 J' f/ x3 a  X% {! \3 e  H        #1008 M. o3 J' H* o* y
          ena = 1;8 |+ b! q* G, k3 p9 v
        #2000 0 c  w& w: u+ Z7 @$ [' V
          set = 2;% ~" _  P. @' V) I& k2 U! x: y
        #2000 : \" Y5 T! c' S+ F
          set = 3;( h* T3 L5 e$ i, \. h. Z6 Z9 f0 }
  #20007 @1 k2 @2 p# f0 d5 K7 d5 m
  $finish;/ e$ l4 V% s; j& O. w$ N
end
* d* o. B) X$ ~' s5 Bendmodule // xclk_tf
26#
發表於 2007-9-10 14:49:50 | 只看該作者
這個有趣了% _/ S3 N9 O& ~! z- N
有simulation的waveform嗎?
" ?2 y( q% F5 {2 M示波器量的更好~~~^^"
27#
發表於 2007-9-10 17:20:59 | 只看該作者
有附 test bench  f: b" z+ F' J) |. l, W
確實可用! 已實驗過,但我不會貼圖。
, a% ~4 F' k7 m1 I2 ]只要略加修改即可實現。
28#
發表於 2007-12-24 14:50:48 | 只看該作者
請問一下你是要控制LED在顯示方面的應用嗎??' m2 c, X0 y0 j1 q
9 ?( [, e6 h( t$ d3 ~, H
可以和你討論幾個問題嗎??
+ J0 L1 X4 ^; {! }, L" R2 M) v5 A4 O0 u1 w  Y& W
方便留MSN嗎??
3 h6 D3 F  ^0 j" z9 U5 I
6 e) C1 `3 l' v9 C; y+ H感謝
29#
 樓主| 發表於 2007-12-24 16:35:41 | 只看該作者
沒錯...4 H1 x& B! U* I8 p- V, I/ B
是要用在LED Backlight的....
' }+ ^! J% c% i( Q7 B2 _) ]其實有問題可以在這個帖子直接討論..
. Q  _; m; l9 P這個沒什麼秘密啦...
8 C, [! H1 J0 D1 l% R* }因為我已經申請專利了.....
30#
發表於 2008-10-4 00:04:50 | 只看該作者
嗯~~大大解答蠻詳細低~~~多謝喔~~~小第在研究看看~~~~~~~��
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-5 12:40 AM , Processed in 0.127517 second(s), 15 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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