Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....
. K% @9 o4 W: Y4 [4 K倍頻是否只能用PLL的方法?
2 N* {' v# |5 E2 m0 H  [" \! q3 |最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...
  V' g# e3 {* _: i, \effort會有多大呀....有沒有一個概念的數字/ p$ f8 K, Z( g, Z. P9 F' ~5 N
另外...如果input的頻率很低(60Hz..)...
0 u6 H. ~/ M" ]6 M( a4 P- ?cpld還是有可能做到嗎..." y9 E" E3 b6 r3 z9 e
因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻7 G+ Z* U0 u; c) |0 ^" b9 ?/ @3 p
% `# K2 K/ `* e0 ]2 T
[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.. }% g2 L* O4 F( F8 r
% {# F1 l( w$ L% \9 a
輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...8 {; F, w3 A7 t- a. b
是要用panel裡面t-com的v-sync來同步led driver...
/ ?( V0 r! l( ?所以不是clock generater的function..
" H8 S! h) `, n/ S* o9 W8 J目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....
8 R$ Y# ^% M2 k7 s* i我的function如下..: s# N* X; v% N1 J6 D, P
用60hz的frequency去產生2.457Mhz 的frequency...8 {, z4 @  G; B. W! _2 J
2.457Mhz是要給LED driver當clock input用的...
9 h5 ~  ?0 a: N* c; Z6 \( V這樣LED driver所產生PWM才可以跟V-sync同步...
8 g. i& r1 e( H$ ]( C" @現在遇到的問題有下列幾點..( D( C+ n' d. ~$ `' l$ g6 Y
1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..; l- Y, m" j6 p. o! T
   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV...' t9 E' H* n/ J% |. `
   noise就比1mV還大的多了...
: V: q" y0 G* n+ o2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)
6 P" q* K, L) m5 C   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗)
% u$ s0 ~3 u* {   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..
# \5 Y, K% X% M7 A/ ]- E, z! l" ?0 S
不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:. s' v5 x1 Y* q" i& b
將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver  Z, x) v# D! h9 d# Y8 e
最後所產生的pwm還是跟v-sync不同步啦...
7 S1 N: A! E. J6 K所以現在改變做法...
. n1 Q0 z8 m- g4 q- q4 W0 {# v直接用60hz產生600hz的pwm...6 e2 o; b8 _3 O1 V
duty就一直去sample  led  driver的pwm就可以了..$ X# r4 }4 Z' Z" }
目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..
' e1 @# n. Z1 b* g. h* N% V2 O' a/ n+ u% O# ~+ l! a0 T7 \  [
感謝各位先進的幫忙呀
5 x2 `5 ]6 p2 Z* f2 V& }: O( g5 y- N, E; X% X% a# _3 ^* O* c6 {
另外...想做一個shift的function..9 T% j& N$ G2 o0 p& O( R- l/ ~% S: H
led  driver的pwm進來...送出去的pwm要shift 60度或120度..
8 {7 C3 M3 X$ g! R& e+ F是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,; I  N* d4 M6 O) C2 y
利用 74297 的電路來參考 60Hz 或許可以;
$ f$ i; U" j; t& W  XDCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表   d& I, u% C+ g" F$ q( s
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?

2 ^1 Y  w5 s# e8 [; x. i8 Q+ p# p" [' A7 T' l( V4 `
* V# p9 {% |# ?9 }( s1 N
想法是這樣沒錯啦..% u0 a- `0 j' E
以2.457MHz的clock來說...
2 u& _8 U7 P5 g: i* e你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)
- e8 h% [6 i5 ushift-->one counter4 c* N: Z9 y9 z
memory high-->one counter
( S/ @$ F) z6 Imemory low-->one counter
! p( d0 E1 C# B( g我目前是要用到四個counter...
: ]  q3 h- X  T7 \  _不過這樣做起來感覺很不好...* n0 W: ^1 Z, C$ v' O9 Q
4 B8 S* E+ V& D6 f8 w
而R G B各要一組shift..6 J* i5 q, _& _2 {
128microcell已經被我寫爆了...唉....
2 P; r& x  {+ q7 x% L/ C+ ~$ o) t. k
其實光是寫同步的的code...128microcell就已經被我寫爆了呀
6 }! f0 C( f6 p(目前是用lattice的 iM4A5 128/64)) }. Y: S* ]9 n7 E

" h. A3 |+ s  D1 a5 ^! E所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...
. w% [  b, z' ]8 e. S你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...( r# j' P- R7 r$ z7 P/ w! W
要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表 , N" f- R0 {% U% J9 T4 H
也...回到你回的問題...
# w2 N8 z0 ]9 n2 p( G  n要做phase shift可不用改到duty cycle啊...
* t* R% v: i$ `1 O; v  S

! s# j1 ?2 ]( v! @
1 X* a$ q! R0 m7 F其實我shift要做....duty 也要改..% J" K. v0 M' T0 f; k- r! a
所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?2 H: k9 ?+ k; P
也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3' k$ |; P+ z, |9 k
output也要三組RGB 12bitx3
% X) `) b* w7 G% a 同步需要一組12bit counter" F0 v6 y, T; h! P, J$ q

7 ?7 Y, w# r7 S0 g* g4 L" J+ A其實我用到的reg..大概就要180個了
5 w- L$ u( ?0 v0 d2 s; c6 r- R9 E7 j9 b所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...( w, M/ S# j( W+ y; C2 r6 ?8 y
0 j% b( y1 X4 k8 @' G3 ^$ P
你有HSYNC可用嗎? MODE 有固定嗎 ?
! t0 ?, A( Y! M5 ~有的話至少已經上 KHz6 P; A" v& o% `: M, O
而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表 ' f, b! ~& {; y) A
問一下下...
3 Q3 T3 _; }! Y% T; w, Z. g1 F/ O. l. Z1 b  w; M4 U
你有HSYNC可用嗎? MODE 有固定嗎 ?* G' V% Z, l9 d5 d2 _( c
有的話至少已經上 KHz
; M8 q7 K$ x# T$ n! V. I而且就倍數來說一定也會跟VSYNC同步吧

  P# W6 ^- b; z% u# J5 \/ M- l8 L6 q) f0 X' _8 P) X

) l% p) E+ a$ l1 @7 ^是有H-sync啦...
: ^1 b* G4 f) O7 F' l; n不過不能用h-sync來做...
% {6 T6 b) |8 [9 ~2 ~因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-4 07:35 PM , Processed in 0.138517 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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