Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 31609|回復: 29
打印 上一主題 下一主題

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....1 i+ ^/ c% H, r) K) N3 L
倍頻是否只能用PLL的方法?* K7 p: ^% ~' B1 H7 |1 M
最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...  G, [# [1 e! ]: C% o% j
effort會有多大呀....有沒有一個概念的數字7 t, ?# c, w- Q, d) v( S+ t7 e- g% `
另外...如果input的頻率很低(60Hz..)...
* m4 }1 L' T5 n5 Ucpld還是有可能做到嗎...6 p2 O2 J  i9 L% S& M7 z. a3 U
因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻
9 }5 _6 Z" K- g. l. y% p# q* e
[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.$ j1 T0 U5 t" |0 M0 X  d- N
5 q; F2 A$ s0 |3 B# G2 ?( u. F
輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...7 P6 |2 Q- ^1 A) C% j1 O* |
是要用panel裡面t-com的v-sync來同步led driver...
6 _" a( z  f6 R, \: G% v+ a所以不是clock generater的function..( ~" p( `# R+ M, D9 |1 @- V  M
目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....* q/ `6 F% p& Q  W: r
我的function如下..
; e+ B! D$ u8 Q7 S% R用60hz的frequency去產生2.457Mhz 的frequency...
/ A0 A; E2 a9 t" `+ E2.457Mhz是要給LED driver當clock input用的...
' i& ?% n# O5 @& R: H4 C這樣LED driver所產生PWM才可以跟V-sync同步...5 A7 z4 e% j  e& G
現在遇到的問題有下列幾點..$ A/ O- A4 v9 x4 T1 p9 g$ i
1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..  a& z# _, ?6 S( Q) b+ ?
   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV...
' W2 V6 T/ l: V$ g/ |  W8 \   noise就比1mV還大的多了...
) X( W9 ]* r6 @4 j8 V# R9 y; w6 w3 S2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦); F2 O: ?/ C, ]) V
   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗); q& C$ E$ O; q" F" h. h0 p
   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..
' G: {! B/ `6 A, H0 d
3 ?9 ~3 C0 }" o, u不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:
2 x0 g& z! I3 X/ J將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver
+ _  d6 @! t1 P7 T/ \; v0 l  {/ O最後所產生的pwm還是跟v-sync不同步啦...6 S9 g  Y2 x" A& }! e5 g
所以現在改變做法...
1 H* Y1 f  O, [& J, o9 c1 B4 K直接用60hz產生600hz的pwm...0 e% A6 `, ^9 @* c( _3 i
duty就一直去sample  led  driver的pwm就可以了.., g* P( k0 ^5 U4 F. a
目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..2 x6 D" x7 F: h  y; d
: H- _  m! U* u% X4 D5 a
感謝各位先進的幫忙呀( `! N/ G# ?+ G0 a$ [; v

* n  f  F* Q  x# Q' a: g另外...想做一個shift的function..
% {+ ~: @1 \, Y9 l! F5 P6 Fled  driver的pwm進來...送出去的pwm要shift 60度或120度..
: }- E8 Y' Q3 l' ]% s! j0 z$ H是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,
* X8 C+ D7 W. p9 o5 H利用 74297 的電路來參考 60Hz 或許可以;
) H) w; }* G5 C7 ODCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表
3 c; f) C+ D& j$ b8 K# A9 F如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
5 S0 u& t  X* ]8 w6 l
( i0 W) k) _: y5 q. x8 P6 j5 U

! i$ |5 z5 ]. ~" H, S& r想法是這樣沒錯啦..
0 e0 o9 @. H$ e) q- \8 C$ y, J以2.457MHz的clock來說...5 X+ N- h1 `- u2 @* B9 e% X9 C
你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)
( f$ @' h# \5 e1 \, Z/ @shift-->one counter5 G& Q% z: A, J1 O4 [  t% e
memory high-->one counter
) d- F( i* A8 A* n& a1 G  G. R# omemory low-->one counter% i4 t  d1 m, C! D4 G
我目前是要用到四個counter...7 a/ z5 R8 Q) C, t, P! S! K& a
不過這樣做起來感覺很不好...
2 D) {- A9 {) E1 W3 X. R
: Q" N/ N4 Q" N而R G B各要一組shift..4 M0 k* X8 w; v& T: b- H7 g
128microcell已經被我寫爆了...唉.... . [( `  X6 H- i2 C2 `) g! y* s, S( x
$ ?- {2 P, w+ o6 m6 e
其實光是寫同步的的code...128microcell就已經被我寫爆了呀3 L# b% A' a! ?: p1 O
(目前是用lattice的 iM4A5 128/64)
  Y$ z: t$ w/ m3 C+ B* b4 i; D; Z0 \( @# W* m; p
所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...5 W3 T6 ?% g) C( G) ~0 H
你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...% M% R9 k+ ]6 C: r4 E! F
要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表 : H' A  a" Z( u$ R! a
也...回到你回的問題...
! R4 u7 [( u3 H' {要做phase shift可不用改到duty cycle啊...

: r# r' L) u" D. D! n' `& [. v$ e' S3 _9 q( E2 ]' T' H4 S
4 {( v$ F( j% C3 o
其實我shift要做....duty 也要改..5 g( l  v5 Q6 u3 ]. t% d$ j
所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?9 k* ]* Q& l7 m# |$ o
也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3
+ t' H! g( M4 T8 Moutput也要三組RGB 12bitx31 E0 w. k( t3 @6 b+ ~
同步需要一組12bit counter
1 L/ U6 q! q$ s8 e6 M. t% ~
% [0 H; ]( Q$ f+ v其實我用到的reg..大概就要180個了
2 x7 B: p. k! G7 ]' p, D所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...
! z0 b$ g+ @# ?, b4 E( x& y% N5 [9 I3 K8 M2 `$ u
你有HSYNC可用嗎? MODE 有固定嗎 ?; H6 P. k1 e! f- Y+ W% z
有的話至少已經上 KHz/ H5 C  C) F/ h
而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表
% b  \# j) w& i0 l! R2 `/ M問一下下...8 ]: |& M' r9 T: G3 y8 q* |0 q0 |( g

- F2 ^6 }' L7 `, p  X+ Z你有HSYNC可用嗎? MODE 有固定嗎 ?
' `  x* U* }) V+ v5 O6 C; L: e$ w有的話至少已經上 KHz8 h/ Y. W9 s6 S/ B9 W' u3 h! c/ l
而且就倍數來說一定也會跟VSYNC同步吧
; i( U" m: c& f" ~$ e4 {

/ X: P" w4 \" q7 h8 \
; Q4 J4 m* P  {+ X2 ^: l* K4 |9 |是有H-sync啦...+ ^" l9 t% \3 X0 c
不過不能用h-sync來做...0 y2 Y& B8 ?6 Z" _' V
因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-18 10:26 AM , Processed in 0.133517 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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