Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
21#
發表於 2007-6-10 21:50:08 | 只看該作者
... 這樣說吧
# g7 {2 w+ i$ F' d% G如果有 PIXEL CLK 就用它除頻$ i2 {5 q1 G3 x
如果有 HSYNC 就用它倍個幾次4 i8 ~8 }& R/ F6 I3 B; I  s

4 A. H$ P, p! F  Z1 z$ _/ l因為 PIXEL(DOT), HSYNC, VSYNC 之間有一定的倍數關係
, J1 G! k( [% p- |% `
+ T1 O# |0 |3 ], L, c   640x480@60Hz => 25.175MHz (39.7ns)
+ a) J) ]9 P8 D% d; d9 h1 l0 q   DOTx800=HSYNC, 39.7ns x 800 = 31.469us0 O* E! b  j6 |. g) ]$ E$ a; j+ g
   HSYNCx525=VSYNC, 31.469us x 525 = 16.52ms (60Hz)
- `6 P; R/ F7 P所以這樣的CLK一定會和VSYNC同步 (詳見VESA Monitor Timing SPEC)8 y* h* R* U: a4 l3 u* ~* s

! C( Y/ t) s" U) \  o9 L' F+ P接下來如果要VSYNC時不出CLK.. 那就用個AND閘吧 (看你用哪個MODE, SYNC有High或Low)7 L$ `4 l" ~) @/ \7 L, M
8 M! \- M$ Q1 k' U$ T
還是我想的清況和你不同呢?
22#
發表於 2007-6-11 15:02:01 | 只看該作者
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
23#
 樓主| 發表於 2007-6-17 11:12:57 | 只看該作者
原帖由 tommywgt 於 2007-6-11 03:02 PM 發表 ) E. U9 s" A8 W6 o% b6 O
這樣子做出來的phase error會很大也, 要先看規格的要求一下下

. V: R- x0 s5 _$ }  \. l, }: @; a  e" E( t! d

$ r7 v3 a* d% f9 j2 E/ m# @" n! Z* ~/ f
嘿嘿....沒錯..1 Q4 B4 o+ r  j- @9 [
所以我現在還是用60hz去產生600hz..
3 d$ r* D6 w9 G( R- n+ \  C另外一個原因是因為客戶只會給我60hz的訊號啦...
24#
發表於 2007-6-20 13:39:55 | 只看該作者
不過我還是覺得也許會有更好的方法來設計這個東東的, 所以才會說介紹個人給之類的...哈
25#
發表於 2007-9-10 06:26:03 | 只看該作者
//可直接透過synthesis  tool用於PLD,FPGA不可 LUT delay則要採其他方式。: o' n) l2 S8 W
//所有註解都要保留
9 S# C) T( k( H0 m# I# U/ J
/ b; ]1 L4 F( d; x* B`timescale 1 ns / 1 ns
4 M# _4 T1 x' t& `2 d3 L! w8 \8 ?* imodule xclk(sclk,ena,set,outp);9 [* p$ e2 Z8 I) X7 _
! L# ]8 T) T* W+ Z  ^0 Q# h. b, X8 l5 f
5 C5 N, s* W; Z3 T( j
4 x* ]2 l" m  ?: M
input sclk,ena;
; ?- U4 V3 D- G+ Ainput [1:0]set;, P: \7 y6 g8 ]) Q
output outp;
, ~6 p2 z! s; u, Z# i' a5 g- b0 H" t
wire outp;2 Q& q( V' ]9 Z2 e, `
: U# d9 p* O9 Y4 D2 L
6 B. n- r2 s3 V- k
& S# f8 g# J! l' D
/**** Node preservation for nodeA **************/
, T  V$ y) `1 N/ ?2 Z/ c5 b- H  z$ T& f4 Y3 o
" ~# {; |9 G/ I+ m) s) w, \. |* ~
//exemplar attribute nodeA_5 preserve_signal true) _# g/ M7 L1 n) d
; U5 d2 c* Z; R& s& ^+ i2 `: L
//exemplar attribute nodeA_4 opt keep0 c- U$ M7 m- h/ s

/ T( B, @. s8 x- q+ q2 N6 L' Q/**** The following comment form also works ****/
% m4 u% L6 L1 h. `- X' t: m0 ]5 ]/ l8 b! E) h! g& K5 C
//exemplar attribute nodeA_3 preserve_signal true: k7 k  ~  C1 h4 K7 m, d8 h! V: k

+ j) O4 {9 ~; d/ j, N4 `( M//exemplar attribute nodeA_3 opt keep
% z4 ]6 O0 f' f9 e/ f2 Y( l% A# k
8 L6 r  \' W8 M3 A' d/**** The following comment form also works ****/1 d; R& `- J" i7 k8 S' E+ L; r

$ [, U! k# S, B' x# D6 b% s9 w//exemplar attribute nodeA_2 preserve_signal true
7 ]4 m6 P, B0 K- d2 j8 j" f& @2 l0 s9 ]6 q' w6 u0 T" @" d; I
//exemplar attribute nodeA_2 opt keep* T; S+ I* S7 N

, h% U* I: K0 o' H" ]1 Z" c1 m  t0 A/ y/**** The following comment form also works ****/% U7 e' E  z* k. N

/ c5 u# w# ]/ ~) I, Y//exemplar attribute nodeA_1 preserve_signal true  g" d! A# |; t0 O# j( f5 G1 [) t
+ L$ t- Z2 g  y( ^
//exemplar attribute nodeA_1 opt keep
% Y: {; X" {( P- w) g5 D
/ |; M+ d/ c1 E- `
6 j  s2 [$ p. i8 c3 U4 S/**** The following comment form also works ****/+ J1 E* B4 O9 v8 w+ l
" u$ V- t8 f- r  P7 o, l) t: I
/*exemplar attribute nodeA_0 preserve_signal true$ O/ a$ _: d$ t+ T
: [1 [  M6 O+ i" O$ @9 I- F" g" c, V
exemplar attribute nodeA_0 opt keep*/
2 b9 \* p: [! Z& i% @! P
( }+ Y$ ?5 S8 z4 y0 O) \! K/ N1 k
0 s; H; n* I& E! y+ b. G4 [. x
$ H, j) H' J) w
1 c9 L/ ?0 {( s- T  g. ]
: k7 _: e7 [; a0 c: d/ o
- `5 n. D2 z% ?# N+ _2 d: P% v) c! z, C& Q; ^/ J: r) `: q

: R- e7 V9 h2 S4 A1 `3 A6 ~; g4 l0 W3 Z" Q: }* J+ |& a
- x. S5 h  ~3 J( N
wire nodeA/* synthesis syn_keep=1 opt="keep"*/;
# h) Q) P2 j" T8 s% `; mwire nodeA_0/* synthesis syn_keep=1 opt="keep"*/;1 r0 D. _7 b3 e4 U0 |
wire nodeA_1/* synthesis syn_keep=1 opt="keep"*/;4 w- J: x9 ^' }3 v: l
wire nodeA_2/* synthesis syn_keep=1 opt="keep"*/;9 q+ }* ?" d  F! ?
wire nodeA_3/* synthesis syn_keep=1 opt="keep"*/;
  \9 ?* X0 \: y; e" H" V' o/ d5 |wire nodeA_4/* synthesis syn_keep=1 opt="keep"*/;
! M2 Z9 W: K5 r' A
, `* H7 ^1 q, _assign#1 nodeA_0  = sclk & ena;
7 S4 _: K: b, @  @
  s8 d& C8 d% U$ i, ?assign#1 nodeA_1 = ~ nodeA_0;
. h6 e: ^, w: u" r5 E7 b0 Eassign#1 nodeA_2 = ~ nodeA_1;8 `5 j5 V# y" X8 W8 e% r
assign#1 nodeA_3 = ~ nodeA_2;: |: r! D2 f. n% z9 c
assign#1 nodeA_4 = ~ nodeA_3;
& S: v! [* k9 |6 d3 E- ~/ `$ |1 L" U5 {/ r& }6 p7 L3 m
reg xout;
8 [/ ?0 A6 S! H* z: Q
4 U8 j4 l2 }/ i( |. i- C& E9 salways@(nodeA_1,nodeA_2,nodeA_3,nodeA_4,set)' y  S# s+ r. d2 R
  casez(set): Q1 P+ \% V( X  ^4 a9 y7 `
    1: xout =#1 nodeA_2;9 ?3 T' E8 a& N7 r& x
    2: xout =#1 nodeA_3;& e7 c5 F, [2 S8 s
    3: xout =#1 nodeA_4;
* w: q6 b! Z* ^    default: xout =#1 nodeA_1;
+ c+ E, r% z/ v  endcase
" P, L4 s# n6 `( F2 `" a; M' z  
3 p0 B+ p" U; t9 ^3 lassign#1 nodeA = xout;
7 S! N* ?/ a5 u# Zassign#1 outp = ena ? nodeA^sclk : 1'bz;
  ]: Z1 y* e/ N1 K
' Z& \" `4 m* O7 Tendmodule
7 [( ?- J" |/ P1 g; `4 M3 v( L8 i4 g  g

) {. j, @0 \( `, X# M2 H' Q5 o( I6 n- l) _
`timescale 1 ns / 1 ns
3 \/ r. y) C9 Q; q+ bmodule xclk_tf();
$ V+ c: h' z  S# K- a
) W  a0 q6 z1 U' P2 N// Inputs
5 d" p4 k) W  W7 l  n- O$ R# M7 B' J    reg sclk;7 |& s; i# S: Z9 \; \
    reg ena;
2 H! x) v2 I) X% f    reg [1:0] set;2 r1 S9 }( V* t6 ^4 x" _* \0 ]" l
6 X2 n2 e2 q. D; t
! Q; }& \- b; p: Q
// Outputs1 l- ^4 e$ j4 J6 @9 g" J5 A2 S4 v4 A' z
    wire outp;9 z' r% b  q8 u" O& D2 G0 Z

. k( x6 j7 D, _) v. f, K8 _1 T1 ?" L! A% D
# S6 G: S, u3 K0 V1 W6 t+ ?' ~
    xclk UUT (* @1 r/ |+ f8 k3 U9 U
        .sclk(sclk),
, ]) S3 O8 F3 D6 D        .ena(ena), : `& ~! D1 {/ g% P+ }. _+ l' f
        .set(set),
2 j$ e) ]$ D7 B7 l! e        .outp(outp)
, v6 x; l0 m3 m) F( A% M        );
8 d0 e9 O8 x7 I, ]4 O. N! Z9 f  _
4 A6 m6 z, o& i" z1 F

/ _+ h+ A4 ?# n8 u" q    initial begin
' }% v# j; v4 w9 g8 i' J( m9 p            sclk = 0;
. h1 ~6 J0 u$ q5 v# J8 f* j            ena = 0;( s8 v4 }! Q& w
            set = 0;
) e" \! k, A4 z  O/ R    end) F" U) T3 |- B( G8 G& E0 w

+ \3 r% N, w7 a& [4 P- E4 E- g+ M; B, f- e
always# 5 sclk = !sclk;, S2 J5 e0 ~& z8 a3 _! ]

# W) z# _# g, m  d% A+ U2 w: [% z8 Vinitial begin
# c' B& t  t! q* m! r: H        #100
  }8 \$ t' k. d, S          ena = 1;
; g) b& w, w- }# \- P        #2000 ) ~8 ]1 k# Y) p$ I. J
          set = 2;
4 l  L) w/ J, W: R) R1 _        #2000 " \, }& o+ i* Z! p- a
          set = 3;
0 Z: w6 e- Y2 o# i$ w8 N  #2000+ s, O- w8 s$ f1 D( ~) z
  $finish;( B! S# W$ J6 \" ], A8 J* _! W- S
end+ e9 F9 f4 X, F+ a
endmodule // xclk_tf
26#
發表於 2007-9-10 14:49:50 | 只看該作者
這個有趣了
" O* F/ L; T* o) J+ h1 s, T; S, v有simulation的waveform嗎?
2 X" w" x; s. r6 T/ Z1 A% N( ^示波器量的更好~~~^^"
27#
發表於 2007-9-10 17:20:59 | 只看該作者
有附 test bench
5 n5 @& ?( L- D確實可用! 已實驗過,但我不會貼圖。3 `- b% p2 I' B: l. \- `
只要略加修改即可實現。
28#
發表於 2007-12-24 14:50:48 | 只看該作者
請問一下你是要控制LED在顯示方面的應用嗎??
8 t( F9 T+ T+ y4 S# Q& Y: n* g: y" Z6 A5 c
可以和你討論幾個問題嗎??
7 G6 `. n; _9 R: G, O# m% R0 i
# z  O# K: w* T$ p( x0 c- x方便留MSN嗎??2 Y5 ~- P! H- o2 B) z! w
. @* J% e- v8 x) B- Y( {
感謝
29#
 樓主| 發表於 2007-12-24 16:35:41 | 只看該作者
沒錯...
  P& W- m- |/ U2 B是要用在LED Backlight的....
2 u3 \6 @3 v) [其實有問題可以在這個帖子直接討論..
- T- @' i0 r8 H# b" L0 p" w這個沒什麼秘密啦...
, h) e9 K- ~* c因為我已經申請專利了.....
30#
發表於 2008-10-4 00:04:50 | 只看該作者
嗯~~大大解答蠻詳細低~~~多謝喔~~~小第在研究看看~~~~~~~��
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-4 05:38 AM , Processed in 0.109006 second(s), 15 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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