Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....
) ~0 {+ w9 J! `6 X1 a3 z倍頻是否只能用PLL的方法?0 M4 `9 a3 }0 \, ~
最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...: H2 W; ~0 r& A6 b, Z& [
effort會有多大呀....有沒有一個概念的數字
0 q; B1 M& J  ?另外...如果input的頻率很低(60Hz..)...) A4 j+ A  z. {% o+ G. x8 X) B4 G
cpld還是有可能做到嗎...( B% ^% [* u# \3 X/ I
因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻
7 c- N. k- h1 A: |  r& S; q4 X9 N% }' [( `
[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.+ T+ _% Q  `* d( m
& j0 R. S- |# z" @: E& o
輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...
- J& C1 y' D) y1 `6 f. ?$ p4 d, Q是要用panel裡面t-com的v-sync來同步led driver...$ Z& ^+ L8 L! {1 P
所以不是clock generater的function..% P1 H6 Y# q) V) }+ U/ p
目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....  x# R/ u& f) N
我的function如下..4 c- s& {; h8 z- q" G& v9 B' A
用60hz的frequency去產生2.457Mhz 的frequency...5 J" ^! a9 V! v& u/ B# j& Z- H
2.457Mhz是要給LED driver當clock input用的..., S. W5 X2 y2 a- }* ?/ i
這樣LED driver所產生PWM才可以跟V-sync同步...
' }: O2 z7 c7 R( ?$ \/ v. q現在遇到的問題有下列幾點..( N8 A& w- y4 C9 x! d) Y) Q9 ]
1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..# {1 f1 [: g. E+ P3 y
   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV.... W9 a% y/ |( P7 S
   noise就比1mV還大的多了... 4 p7 m  Q! j4 p! t
2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)/ \6 @6 X; I1 d! ~
   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗)/ X9 G1 h7 {+ D7 e. l+ j
   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..
' ]6 Q4 {: P5 X  d' i+ X6 E& J7 A: M% L2 [9 h8 m7 X
不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:
# e3 v. z/ C) @  J將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver$ y( c) v& D' x$ Z* j
最後所產生的pwm還是跟v-sync不同步啦...
( |8 R- X" G# T- r! D; i! w所以現在改變做法...; D# [  y& \8 P7 F3 G# n* u8 J
直接用60hz產生600hz的pwm...
4 z1 L) Y" X( |duty就一直去sample  led  driver的pwm就可以了..: y; j- N) J  b2 o0 i
目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm... A6 }/ R& z+ r; c6 e3 t1 Y

( _) C3 g6 v3 {2 E; S" w感謝各位先進的幫忙呀. `, h: o. \9 ~) _& K; ~/ v

- k- V9 N7 i( k4 D另外...想做一個shift的function... w7 o; l3 l9 _
led  driver的pwm進來...送出去的pwm要shift 60度或120度..
2 m8 p. h. e& j# w; h) z是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,
) n% ?0 m! ^' y0 d5 W利用 74297 的電路來參考 60Hz 或許可以;
$ X: ?$ j* H! F" F0 jDCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表 % r- q. w. B6 G1 Z
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
$ \% l) {2 ^& W9 V1 K) ~* H

7 h1 E! i1 U# o/ d( F. r& p. s! |
想法是這樣沒錯啦..
# F* A1 F" m+ d% D) N8 Q以2.457MHz的clock來說...1 s! F, o( f2 X& `: c" P4 _
你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)
; Z3 z: ?+ @) t$ }4 vshift-->one counter
9 G8 T0 s1 B( [2 b+ C3 b/ S' o. ~memory high-->one counter
8 m! I2 L5 B1 H7 u, rmemory low-->one counter
% ?) ^6 I3 I& l/ }& H我目前是要用到四個counter...
) C! H. s- V$ S4 l9 R不過這樣做起來感覺很不好...
# M# L2 `; P9 I9 u7 ~- p) N' C* A9 h
而R G B各要一組shift..0 W! Z! O' T( ~2 @
128microcell已經被我寫爆了...唉....
. C& }" y3 z2 y/ T6 u$ h( g% P4 U* k+ W$ Z9 N
其實光是寫同步的的code...128microcell就已經被我寫爆了呀
/ C: w8 {0 y1 R3 B- C, u(目前是用lattice的 iM4A5 128/64)
) G! W% {! F3 W) X/ G
" ^% e; q  ?6 b0 Q5 [/ P所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...* W$ b6 h& X+ z
你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...
( N$ x( H' D0 \% `( u" i要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表 & J" ~' H) K# A/ f. k3 M5 _$ r" f
也...回到你回的問題...
4 b/ |+ l' b/ [. S3 P( W9 W% a要做phase shift可不用改到duty cycle啊...

8 e) l9 H  n8 c; c' Z7 c$ c. C' h+ G1 x
9 L( @1 d; D3 b" ~* x2 `
其實我shift要做....duty 也要改..+ ?# S) _* [' `3 q. c
所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?
! `2 u, k& D1 c7 m8 C也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3/ _, Y% q6 U- c3 T. B% r) R
output也要三組RGB 12bitx3
- p3 B, ?7 V0 J& y% d% D 同步需要一組12bit counter
! L) x/ C4 z, w& k: I- p  G
/ J/ I2 {# b; g/ |& n$ R其實我用到的reg..大概就要180個了
+ m8 J# z* J5 w0 ?- E" }所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...
& _* d6 {: p, q+ a  M- w$ m2 j1 k9 p" {, V. g9 U" b9 i+ e
你有HSYNC可用嗎? MODE 有固定嗎 ?
/ r, n# |) q8 g# [! _" |. ?6 w有的話至少已經上 KHz
# x# E; p: W+ D3 @# R& L而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表
! h7 }& n5 Y$ i) F1 B" `* b6 B6 m問一下下...% i/ a) l% Y: x2 K6 V
8 \/ c% H3 j, f' ?! F- f
你有HSYNC可用嗎? MODE 有固定嗎 ?
+ s$ M% p! j4 q5 T& L+ O* f) S4 ~有的話至少已經上 KHz. X. B, B% J3 z  I9 s6 B
而且就倍數來說一定也會跟VSYNC同步吧
6 B- B* _8 K8 G- |1 K' s+ W; g0 l

7 V8 j) |6 s$ M9 |0 G  X$ E" }* m' s( n& S
是有H-sync啦...2 T1 C( i: a& T* _0 b" J; V% |
不過不能用h-sync來做...  ]" V7 W+ v9 a+ ^# K8 |7 I
因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-9 04:18 PM , Processed in 0.154020 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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