Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....
- K( H( `; s# P倍頻是否只能用PLL的方法?9 Q" q, T6 T5 Y4 ~8 B2 w
最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...- N1 t6 g3 D; w$ B1 u8 C- K
effort會有多大呀....有沒有一個概念的數字# \. B* H7 ~2 f, G  q
另外...如果input的頻率很低(60Hz..)...5 ^+ M% W3 ~; V6 X. D
cpld還是有可能做到嗎...
4 H5 F  `: U1 T: y2 k" l  F* D因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻* _% G# i* m/ m, {* E

9 c0 A% |9 q# U! |7 X1 O[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事., s- Z1 S: v6 U
8 C. d# t0 p% v6 d! j& B
輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...
/ B# A  `% a6 |, x( P1 b是要用panel裡面t-com的v-sync來同步led driver...
3 Y  }7 S3 E# P  b6 r6 s所以不是clock generater的function..
4 s; ~9 c% P0 M0 B3 K' i. @目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....1 h) E  M( A7 Q$ H) q1 E
我的function如下..2 K, ~/ U8 n; [- I8 y' C
用60hz的frequency去產生2.457Mhz 的frequency...
2 a) e8 C1 }6 H6 B- m) h- ~( f2.457Mhz是要給LED driver當clock input用的...
$ \/ P2 a0 {3 p' }7 ?& K$ m這樣LED driver所產生PWM才可以跟V-sync同步...
/ h) c5 M+ X0 t) W4 N% q( }4 O現在遇到的問題有下列幾點..# K: ^, E; u$ C. P
1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz.." W- M' n* Y& z3 V% D: X7 D% T
   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV...
1 L9 e9 i7 ~  _% z4 l) `5 r   noise就比1mV還大的多了... 9 u* l( e3 m2 c
2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)
; x# Q2 q; @3 F- v& v+ u   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗): F* m; D6 C3 `7 f+ L
   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..% F5 p  n& q* X& u- Z+ ]: k! G

. Z0 F+ C$ V1 ]不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:
' P0 a& @% z& |$ Y& R4 {8 ~將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver$ U/ e# i% t. B
最後所產生的pwm還是跟v-sync不同步啦...+ o+ m' n7 S9 R" e0 p
所以現在改變做法.../ L$ l* M! n* W. m% L0 V4 Z
直接用60hz產生600hz的pwm...
& Z) t  q8 K7 s) k0 H3 Sduty就一直去sample  led  driver的pwm就可以了..5 H$ H. Z  a8 l; _  b
目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..
. I. i4 O) o0 k
3 v# r, A$ S! b& [' d感謝各位先進的幫忙呀
4 D/ x) y  m$ j9 ^
3 W# k. ^  W2 m5 R7 _另外...想做一個shift的function..$ E2 s# p3 R! K; u7 D. e  L
led  driver的pwm進來...送出去的pwm要shift 60度或120度..
4 p0 [& Q0 ?8 u8 x  u3 E( [  }是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,% h3 G1 D5 T$ |+ D' N
利用 74297 的電路來參考 60Hz 或許可以;
. M8 I& T8 ^" k/ N/ T# y" CDCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表 " d/ x6 N. g* O
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?

( n6 _( x( v2 I$ q- O2 \+ _* R4 |, B/ R: E# s) ?1 e. L/ u
: y1 A6 q% L3 V" C3 D
想法是這樣沒錯啦..
' P9 B0 V+ R& w' B以2.457MHz的clock來說...; v7 n2 o7 I+ o' L
你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)  y/ q0 \5 e% z0 H$ V
shift-->one counter
1 U; i/ ?3 n" S+ Omemory high-->one counter9 G: u7 S  D0 Z5 \4 l/ H" @
memory low-->one counter3 z4 y/ ]& l2 l. m* o3 _
我目前是要用到四個counter...
4 y# D! |! }$ I  k8 p, ~不過這樣做起來感覺很不好...  t1 Q$ ?9 i% K6 B1 e/ e

# S# i; ]2 o! B; r+ `而R G B各要一組shift..
2 D0 l. k1 H& C1 i! j128microcell已經被我寫爆了...唉....
9 u! t9 J8 ]4 s& z, D- v# i4 S5 D6 K7 I# ?% U: M
其實光是寫同步的的code...128microcell就已經被我寫爆了呀
$ S3 M6 _7 [9 i; U# }(目前是用lattice的 iM4A5 128/64)
0 y% q" e0 E" I7 i# V6 t" a0 v3 l
所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...' ~6 t# Z5 q* g; `4 V$ e# Y
你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...
4 q" ^+ _" F. B# ]* t& B要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表 / m, W% @* Z7 |, q& g6 h6 ?0 Y
也...回到你回的問題...
0 r) x+ b) K0 @8 ~+ N要做phase shift可不用改到duty cycle啊...
; U6 b, ]$ s1 t2 W/ R/ D
5 t9 H+ @1 U% G) V/ C3 t  K0 B

9 ?/ q& O0 P3 i% x  ^. f其實我shift要做....duty 也要改..
8 o5 y8 l+ x- c# h6 Q& w3 f所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?2 Z' D9 g% x+ R5 f
也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3
9 K/ _- g4 `, F: \; noutput也要三組RGB 12bitx3
* ^6 H! {1 c: [) \7 Z9 h 同步需要一組12bit counter
5 o6 {; p) E  M: @2 `) p/ ^
+ k/ D" U+ B2 G. `* m8 V5 f" H0 A4 X. \& G其實我用到的reg..大概就要180個了6 i$ q, Y) N- [
所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...
1 t( R; e6 h5 G) I8 ]0 h  Y2 T/ @9 z6 ^+ U
你有HSYNC可用嗎? MODE 有固定嗎 ?' _3 K3 ]4 e! t- [1 p2 l( `
有的話至少已經上 KHz
" H  ]& g, |& O: c5 u而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表
+ @; W6 Z% {6 E: U" n問一下下..., L  B5 y# D2 [9 p! Z+ t

% P' g2 {( Q+ o! X0 W你有HSYNC可用嗎? MODE 有固定嗎 ?3 d1 Z9 |9 O9 q6 Z5 y
有的話至少已經上 KHz
% n/ V2 Y/ h) G7 m( V# ^2 D, y而且就倍數來說一定也會跟VSYNC同步吧

2 n/ b! F2 l6 W, x5 @% H9 C- [, [) n3 I- k
7 L5 q4 W7 V+ f2 }  `& h8 V
是有H-sync啦...5 J( c; y4 R$ ^/ b! w1 O/ `( L
不過不能用h-sync來做...1 \0 x! ~, ?3 v  p0 l( z! p
因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-4 06:34 PM , Processed in 0.150519 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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