Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....$ i$ p1 n2 C4 s- [- X: X
倍頻是否只能用PLL的方法?
" F" a% T& F. ]) g最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話..., O5 t3 i( f9 ?) r4 X+ s( h/ J
effort會有多大呀....有沒有一個概念的數字- a* g5 j3 y) |6 b, M! \' c
另外...如果input的頻率很低(60Hz..)...
  L- ~4 Q* `6 N$ g' N; r. Ncpld還是有可能做到嗎...  e3 Y0 m4 c$ Z" T, _. f
因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻# ^/ n8 A0 g7 c) G; s/ f

7 }6 d0 V; E& J[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.* S8 l2 ?9 X4 P4 I/ V8 W
) M; M& V/ |/ |# t
輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號..." E9 ~1 T# E& _- A
是要用panel裡面t-com的v-sync來同步led driver...
- J. {  o' N8 O, p- g7 M5 T+ g7 A所以不是clock generater的function..2 r$ C. ?; q: e* E3 V! g# `' h6 B9 U( H
目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....0 e/ U% g) C, R" c' h0 j3 W" e/ y5 C
我的function如下..
$ Y) N' h# d" w3 A. G( K4 R* O& J* r; G用60hz的frequency去產生2.457Mhz 的frequency.... G0 r& `, I8 r
2.457Mhz是要給LED driver當clock input用的...3 Z& A4 K% b2 F& H( g& \+ B# v/ y9 M  R
這樣LED driver所產生PWM才可以跟V-sync同步...( s9 P1 `+ _9 N1 s6 r6 d5 j+ m
現在遇到的問題有下列幾點.., k7 |' E% O+ i7 D
1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..  I: |2 r" h$ G: P
   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV...- o6 b/ s+ ]5 S
   noise就比1mV還大的多了... / k0 s/ g6 I+ M& [' a& H
2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)
/ R3 J3 @2 T8 n7 L; ]/ u: y5 v   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗). q4 t# ~3 R' @# p$ ]
   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..: [( V' e& |4 R6 m
" ^7 r) @* Q& y6 ^! q6 x, w, P
不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:) s: P" m3 L8 q5 p
將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver
& ^3 Z0 `# r+ N" l6 `& T0 P% t最後所產生的pwm還是跟v-sync不同步啦...: X! N; B6 A- ]- G/ Q  F
所以現在改變做法...
; [8 f0 ~- Q% a直接用60hz產生600hz的pwm...
+ p: o# [2 y# q" Y% c5 Z* t1 x, X- uduty就一直去sample  led  driver的pwm就可以了..
& q# N1 n% @$ G% u0 x目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..1 M3 k3 I  S- X7 N4 C0 {- o
. F7 }8 ]  O0 M; G. q+ \7 a/ w
感謝各位先進的幫忙呀
+ A" ~, M2 m& X. O. f
8 p! [2 o" O* m# }另外...想做一個shift的function..
/ d# B9 i/ A0 l3 U1 A! [6 ?2 l3 O1 [% Q" kled  driver的pwm進來...送出去的pwm要shift 60度或120度... r: \. x  b! X) n3 O
是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,
8 D$ m4 v- e$ E7 G利用 74297 的電路來參考 60Hz 或許可以;
' i8 d0 \9 P" f  n  I& Y6 o& GDCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表 / q8 j- D3 _7 Y9 O9 F  Z! `
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?

8 N8 F$ S7 P0 s. a( y6 w, K, _- Y8 @9 u( B6 U3 \
. n" N( h4 O) g2 z( I
想法是這樣沒錯啦..% q7 M0 I1 @3 _8 V0 H* @+ B
以2.457MHz的clock來說..." E$ z- _% w- `# f7 g4 B% R7 H
你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)2 ~' d# L+ q7 v* D: y' C
shift-->one counter
& J, w( F: v" I4 S! Fmemory high-->one counter
- P/ U3 y+ w  y# _* bmemory low-->one counter! K6 N) @1 @0 K
我目前是要用到四個counter...7 T' m9 F4 O9 j
不過這樣做起來感覺很不好...+ V, D6 G, L" q' `; N3 n
* U) E9 ^  p* f# c5 o
而R G B各要一組shift..1 a, H. W6 j7 I
128microcell已經被我寫爆了...唉....
; w' o7 E2 |! r* X/ Z& A6 S: M' f/ X& F! L  s% c) u. X4 p8 x+ |
其實光是寫同步的的code...128microcell就已經被我寫爆了呀
$ C" c# T) d5 F$ ~(目前是用lattice的 iM4A5 128/64)0 O! U$ A/ g5 p' Y1 _7 b* @5 p* |
2 I( k- R- u* b( u* E! \1 A) e# O9 l
所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...
, \" |, r: r+ _2 k, A你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...
5 I- j7 V3 U5 u1 S& K要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表 6 j2 v2 g. z4 w: P$ m  F
也...回到你回的問題...; l4 Y% ]. L5 w1 L
要做phase shift可不用改到duty cycle啊...
/ P+ x$ Z5 I6 E9 I2 }. Y, a
3 Z* ~2 ~, t6 {7 w9 f7 V

7 ~4 S. |$ h- a, B其實我shift要做....duty 也要改..: U( {8 I! H5 U0 s/ [  p+ v
所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?# ^* K- T: C' u/ t) y( a, Z
也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3
$ s$ P) T: d& {output也要三組RGB 12bitx3- Z5 ?1 I- u9 R- l; O/ @' b
同步需要一組12bit counter, c% J! j& d$ n. u
, r& }/ }3 {/ W
其實我用到的reg..大概就要180個了" a) J, L7 w6 i1 k
所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...
6 W* [2 e- P! R4 H8 Y
  f. y5 ~+ J. t8 ~7 Y- t# [你有HSYNC可用嗎? MODE 有固定嗎 ?/ A, t" x9 O4 _' b& `" L$ n4 q
有的話至少已經上 KHz* ~& H; h2 d/ v# ?- c
而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表 & m; j4 {+ v2 E/ P1 V0 L( j! Z" A( d
問一下下...
0 D: a8 m1 T% M9 A
0 `2 ^! }% C# R1 x$ q你有HSYNC可用嗎? MODE 有固定嗎 ?
5 q8 I0 ~6 ~. B有的話至少已經上 KHz3 A' [" A' f8 |$ z; {; m
而且就倍數來說一定也會跟VSYNC同步吧

! p& b6 r2 f+ ^/ u
$ t' q' J# a9 L/ t, U. T, b* {
  U. s$ u8 q' w是有H-sync啦...
$ a' y; s+ q4 F0 i: u: z9 c& f不過不能用h-sync來做...
4 V( W2 R  i. c) T, d2 f因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-20 08:05 AM , Processed in 0.127016 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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