Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....# d/ L/ |# G; I* ~; \6 R; Z
倍頻是否只能用PLL的方法?3 K0 D) m3 t& z6 ~$ B( K. j
最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...$ Z, y$ N1 E9 x! r
effort會有多大呀....有沒有一個概念的數字
  M! a) G. G; y; X; b! ]- j) w; ]另外...如果input的頻率很低(60Hz..)...5 z( O* J% \+ a& Z/ L& u
cpld還是有可能做到嗎.../ c# H8 q1 r2 D5 T1 h+ {
因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻
/ s( \: j0 z$ f4 G3 \* N, j' Q" \' c
[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.2 l/ v6 @  n' U' L8 n; Z2 h
# x& x0 ?+ A' v0 K
輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...
" F3 ?0 d& f* V0 J( `$ L) A3 V是要用panel裡面t-com的v-sync來同步led driver.../ V% Z1 L9 w. H9 _
所以不是clock generater的function..1 q2 c  y4 s3 J8 E% q
目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....
4 {7 O6 y3 @! @3 v: W我的function如下..9 |) ]0 H7 B/ [, I" A
用60hz的frequency去產生2.457Mhz 的frequency...1 }9 O7 ?3 {: c( Z( O& k
2.457Mhz是要給LED driver當clock input用的...
0 K3 F9 D1 {) `- w這樣LED driver所產生PWM才可以跟V-sync同步...
" |5 v; R. a) ^  a7 r9 a現在遇到的問題有下列幾點..
' M- Z6 _' G% \7 x3 i& }. j1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..9 b" [' c/ i9 |2 c" o5 ?
   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV...0 l5 @- g  _* [! i2 W
   noise就比1mV還大的多了...
% H; ^# [) Y# v! V  I! x2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)0 e" E  E0 ?% _+ _8 Q8 \. d: B$ c
   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗)
+ f# m! V9 w; W" k, d. w5 z   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..
! p  m) q9 ]' J" M1 p3 p4 {0 p8 e# S! \8 @" z4 d
不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:; e! k7 H4 S8 S. I  F7 d- _" }
將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver
5 |- n: p% m7 l, v最後所產生的pwm還是跟v-sync不同步啦...# {7 d% @# p4 k
所以現在改變做法...
3 C/ b+ @) j" L# ^1 y8 n直接用60hz產生600hz的pwm...) |6 }% X& O( W& C' ~9 k- s
duty就一直去sample  led  driver的pwm就可以了..
1 Z* W3 o/ Y+ u* Y6 t目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..* z4 g" G  a5 x8 T! Y0 b

* H( p- A$ J* W感謝各位先進的幫忙呀
9 @. s' R/ L  P9 V# Q' {6 g5 Q4 \! i3 f( J
另外...想做一個shift的function..% G* K- x& Z' d& {: E4 U  b! }/ o
led  driver的pwm進來...送出去的pwm要shift 60度或120度..  {; u, w& g9 K& |8 |
是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,
/ F: r$ I0 K) F# k* h0 H利用 74297 的電路來參考 60Hz 或許可以;
$ W  g  ^! Z- DDCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表
+ @6 O0 ?. d1 `: T如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?

# U# C$ Q9 @8 F1 a+ G% u
+ ]3 v/ A6 n# F' w; t9 d' }  e/ }3 o0 F
想法是這樣沒錯啦.., J( e, [2 @% y9 g) W: o( k% ^, ~
以2.457MHz的clock來說...6 _" D, @1 q+ `9 n
你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)6 ]: F4 @, s' B2 c1 v
shift-->one counter; x  k1 b) u# |6 s- e! i
memory high-->one counter4 i" }2 K8 P) K6 E! w
memory low-->one counter1 B% z/ I! U1 B% L
我目前是要用到四個counter...- q, G: ?* o1 T* g: \+ o; z3 [, u
不過這樣做起來感覺很不好...
' M: v. o9 Q9 }! S- i- l& U+ \2 z
2 s+ y+ s: C  ]) y9 R5 {而R G B各要一組shift..
0 F* Y1 D& A  F; G128microcell已經被我寫爆了...唉.... 8 B( c4 Z/ K3 W

8 U9 ^- w, _& I; ^# b其實光是寫同步的的code...128microcell就已經被我寫爆了呀- P1 ]  C0 I' i4 u8 ], `) d, y% l
(目前是用lattice的 iM4A5 128/64)& I$ F/ _' P6 p- d: G
5 Q$ ^  [6 d1 W  I
所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...$ ^/ K, s. f, r3 G6 O" _
你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...
$ e" W5 Y8 x) s3 Q要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表
3 a: s- v" T  Y8 A/ [* }也...回到你回的問題...
2 }4 Y0 Y  p) W- E* e要做phase shift可不用改到duty cycle啊...

8 d! m/ b- _6 x& m9 g; l" H
6 W! x6 o  j8 ^4 C$ ]
% i' L1 X$ x; w8 B" p1 s& s2 Z其實我shift要做....duty 也要改..
( I% ]  o+ m& F% h0 [5 v* C+ }) [. {所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?
0 @% y$ \3 U5 h( u; \也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx35 n6 U+ }( r/ H7 }
output也要三組RGB 12bitx3
7 M5 w) L8 }) Z& _" Y" j2 o8 ~ 同步需要一組12bit counter
6 L  C: K6 S. ~( ^
" B4 }# ?% k% j3 L& ?$ ]其實我用到的reg..大概就要180個了. c2 m1 b2 }0 v9 f; C- T3 U" |7 g3 g
所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...
0 y5 m- C# l9 x* A
1 ]2 e5 b, _: y  K( I4 }, A你有HSYNC可用嗎? MODE 有固定嗎 ?& G/ P# B6 f0 u- M
有的話至少已經上 KHz& @8 H3 O3 o" _
而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表 % @, C" d5 j  T8 y- U9 G; o
問一下下...5 w. Y$ {5 r" j" Z& b$ [

: T  C3 K9 U- ?; [7 }你有HSYNC可用嗎? MODE 有固定嗎 ?
  T3 w! h' P7 d- m# t. p有的話至少已經上 KHz
9 R1 F. G7 `: H9 w而且就倍數來說一定也會跟VSYNC同步吧
3 e+ `2 F$ i2 ]* }

% Q( q6 I+ a+ ]6 D( k8 y  i& |
; |9 b" N4 q/ C$ U. P6 }是有H-sync啦..., j; ~/ Q0 P3 b7 F7 j
不過不能用h-sync來做...+ u- k: A3 |( I  I6 c1 S
因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-5 12:35 PM , Processed in 0.160520 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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