Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....
. X6 H9 |2 s. _倍頻是否只能用PLL的方法?+ _5 O+ ^6 j0 J# s# s5 ^$ I
最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...
- e' k% }1 `% |  {, Ceffort會有多大呀....有沒有一個概念的數字
- p7 q, n1 A" F; v0 W另外...如果input的頻率很低(60Hz..)...! P1 ^0 ]3 D& l$ m8 J; X# B
cpld還是有可能做到嗎...
. i# `; }* N$ f因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻: p7 M# }* ]) C% l+ q* v& q+ }

4 w  K$ ]" ^$ U2 z  P( i1 I[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.
9 ?, y  y# x; G; p5 c5 m/ [0 n; Q4 V* b4 M
輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...; P! V; U, V- n3 p
是要用panel裡面t-com的v-sync來同步led driver...
  W' W: l0 {; {5 \  H9 `所以不是clock generater的function..
2 m9 u$ D: J( R9 F8 `; b' }; |目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....1 H) D% A( g$ }0 v. Q
我的function如下..
+ A# ^6 a/ W! ]+ R6 @% ]0 Z' P用60hz的frequency去產生2.457Mhz 的frequency...
( l9 C8 y7 e6 b$ R, _2.457Mhz是要給LED driver當clock input用的...
9 h/ q: P7 g, h! p( [* @! X這樣LED driver所產生PWM才可以跟V-sync同步...
/ B  B$ d) \( i$ @# C5 }- K$ A: o現在遇到的問題有下列幾點..
: R! E3 o/ g( i+ R7 E* V# h9 V1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..
. ?7 |8 \5 H$ B9 _& @, Z2 j   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV..." a3 {% |* x% N" d* h: F5 ?$ ^+ g" J# \
   noise就比1mV還大的多了... ( F5 H  z, T" K! K
2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)( n6 o: P5 \: I. e+ q$ j' k
   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗)$ ~( ^" W! }* H- m. {% S- l
   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..
& j3 X$ d) k. @7 i8 _6 ~9 d
: n: M' |( f, P9 t0 ^8 M不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:
, n, w, K! o: ^! w0 H2 n5 ~將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver
# g0 H( r/ w' `4 n; \7 i0 Y9 U! b最後所產生的pwm還是跟v-sync不同步啦...+ G( c- S- Z2 w' ~
所以現在改變做法...
- c# U1 k, t4 e直接用60hz產生600hz的pwm...
9 B* f/ r  r* p- `" K! h/ _duty就一直去sample  led  driver的pwm就可以了../ c5 t2 g  }& d5 X# U& e1 p
目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..5 E4 e# Q: g2 g5 x

7 v. f# }8 V9 e2 h( k' j4 z感謝各位先進的幫忙呀
8 {- P1 e! o- P5 ~) C) q4 Y
9 Y' q: O: f- f3 U7 U另外...想做一個shift的function..
+ j0 h- W$ Y! }) s9 A6 l5 E1 Gled  driver的pwm進來...送出去的pwm要shift 60度或120度..3 z: u- ~1 C+ M* W6 x) J
是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話," q+ r* K0 _( f' c
利用 74297 的電路來參考 60Hz 或許可以;3 M1 Y: L! f0 }: Z1 Z* d
DCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表 . \7 P% K" a7 j8 Q
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?

; x, V9 k/ H/ ?- E) b
0 x9 g9 K% _( I1 \$ M' K0 h( a& @: v0 ]  Q8 t: C
想法是這樣沒錯啦..
  Z5 G- D! {* k  @0 ]以2.457MHz的clock來說...% W2 u: X! Y* {
你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)
6 P1 O+ K$ w. B& jshift-->one counter9 m. V5 @7 f" i
memory high-->one counter$ l/ a* |0 h  J1 G& C' s8 w- ~) m- D
memory low-->one counter$ B$ r2 d: {8 F0 i! ?& p" P. ]
我目前是要用到四個counter...
5 ]- a9 E2 L* K; A5 T6 E& }不過這樣做起來感覺很不好...) I* U; @, ?* }* A% U
$ w  a7 y9 b4 Y& s% S+ a4 _
而R G B各要一組shift..
$ c/ q  s# [! e. U) O; h6 U- o5 h128microcell已經被我寫爆了...唉....
0 r5 j$ J% v% ?
- E4 G+ z4 j8 i0 V' v其實光是寫同步的的code...128microcell就已經被我寫爆了呀; h& V2 n. i3 q* p2 w9 L
(目前是用lattice的 iM4A5 128/64)
* {/ ~& E7 {$ v  H
4 M) x9 V  c+ Y) ?所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...
! V/ Y7 p! G& G6 o你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...
! p# w  @' E; O( G. K0 }要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表 & r/ \" t& K5 x( _; Z0 B" _2 T
也...回到你回的問題...
, M4 v2 Z$ h- d要做phase shift可不用改到duty cycle啊...

: a' \' b$ i; q/ D9 g/ Q) M1 D* I: K

' l- C- ~8 {; q, z; s其實我shift要做....duty 也要改... j: q6 ~* c, S% i
所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?
( W+ ^7 {3 Q% |2 Z- a也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3+ t! c/ ~( }, ?. y& t+ \4 p) e; R
output也要三組RGB 12bitx36 m9 N" t) B9 F  l- q7 M
同步需要一組12bit counter/ B" D+ M0 T  N
  F+ G/ ?; M& j* n8 k: X
其實我用到的reg..大概就要180個了0 C7 o( Y& k  V2 j
所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...
; ~0 i8 @7 i0 {' y+ a6 n* `- n8 P. \4 S% Q; {
你有HSYNC可用嗎? MODE 有固定嗎 ?* B1 N' o' [" N. S- x
有的話至少已經上 KHz" S7 z! a  r" r8 Y
而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表
2 w' ]2 J+ ?2 T/ v- _9 i5 q問一下下...
8 ?% Q% C7 O) l  K6 w7 x" y$ c6 Z3 h/ {  |
你有HSYNC可用嗎? MODE 有固定嗎 ?, o* U* n) r$ _
有的話至少已經上 KHz' P  J' G& E3 l; d4 R
而且就倍數來說一定也會跟VSYNC同步吧

3 v/ y9 J5 o- ~/ ~
. o4 w; g# ~: b. Y# A
7 o, L  E) r0 r1 N# g' x是有H-sync啦...
* J9 A3 M; R3 \% b不過不能用h-sync來做...- h( E, G! H" E4 g" d8 ?  u
因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-4 05:15 AM , Processed in 0.122007 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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