Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....
) Z" H8 ^2 w% f' J: z倍頻是否只能用PLL的方法?: ]% O& i9 O! K: `' c
最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話..." L! C' r3 e( F6 [- F4 \3 d
effort會有多大呀....有沒有一個概念的數字
: B# c$ ^6 d. U7 H; J3 x) q. Q另外...如果input的頻率很低(60Hz..)...* Q; W. m4 g5 a! f( |. B% E
cpld還是有可能做到嗎...2 O( q; E% M- e/ z8 l
因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻: X- J0 c5 J( }' ^. r! o4 T

: c8 f8 n8 R/ j8 l. b[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.6 I/ V0 |+ e- c- E1 }: C* v8 \7 d

* m8 c9 k) M' \輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...
) m, D; W" x7 {- e4 U+ c1 y( b是要用panel裡面t-com的v-sync來同步led driver...
3 o: g' c& v3 B& _/ t; V: l所以不是clock generater的function..
1 V, B. q& J8 K$ I3 m9 F( n3 ^6 o目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....
4 E' O7 O3 |: v& d我的function如下..2 y3 f! e9 @* ~; R( k# W
用60hz的frequency去產生2.457Mhz 的frequency...
+ d/ Q7 k1 p+ y" n2.457Mhz是要給LED driver當clock input用的...
) p+ z) v7 m: A4 n9 e這樣LED driver所產生PWM才可以跟V-sync同步...
0 v; b& N/ a3 G! U! z! {現在遇到的問題有下列幾點..
8 j. g! |5 C$ j6 f/ D1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..8 F6 M0 z+ o) V' n/ }, O
   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV...( U" ]/ D7 ^, |, }9 h1 m
   noise就比1mV還大的多了...
& K/ k; H) ^9 ?2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)
8 h8 F+ W/ ^( C6 j" }   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗)
  D3 A+ I1 K! H7 C0 |  c2 S6 Y$ J3 n   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..2 P0 E8 W# X& u+ k& {

# |: x8 N4 C5 p2 L8 ]不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:
# l( d. b# Q, u2 B/ P3 a將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver
) q; H/ Q6 _, E8 K& l最後所產生的pwm還是跟v-sync不同步啦...
+ R! B* e# w! H所以現在改變做法...- l! V1 Z0 `& g4 J! ^. V! i
直接用60hz產生600hz的pwm...
7 K4 R9 ^* u: ^- f, b5 O2 _duty就一直去sample  led  driver的pwm就可以了..8 _2 p2 D' B/ u4 e6 B
目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..
. @4 j  x. I; t1 F( x2 b$ a( ~/ B# c" Q
感謝各位先進的幫忙呀; d: S& O9 o) ~( o$ @

! U& T# h  S% x% @3 O( m+ u+ A另外...想做一個shift的function..
' P  w1 N  {, r; _led  driver的pwm進來...送出去的pwm要shift 60度或120度..
( `7 ~* H0 a  }7 j. d% K6 g是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,2 y. H- L" V! y% T; q/ T8 U# D# E
利用 74297 的電路來參考 60Hz 或許可以;+ `& y7 O) M) d- _) T7 W
DCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表 7 C: \3 ?; W& m$ y* {- M
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?

4 Y0 a9 }0 d/ z
# I# ?- U9 c$ g  F& G3 H- e0 _; o- G! _* Q! Z
想法是這樣沒錯啦..# C/ w/ R" [) F6 H
以2.457MHz的clock來說...
% N, O/ o9 S7 w; }" R" h% K你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)7 `% O  U; B# Q1 D. K1 ]4 X% W
shift-->one counter% W& S9 |) K7 W/ Q& H
memory high-->one counter: h" P- E, a5 e8 h' E) |$ \
memory low-->one counter
+ m5 \) u  l! a* u& X我目前是要用到四個counter...
1 v4 B! C" O5 A不過這樣做起來感覺很不好...
! c, V- k" M  G7 c8 @
& H7 k9 o; g3 q1 L而R G B各要一組shift..
6 D2 u4 a# i7 r8 N3 @128microcell已經被我寫爆了...唉.... ! D: a! ^' Y1 x, \% }/ N
2 d" f2 v, z: @# P: q" ]
其實光是寫同步的的code...128microcell就已經被我寫爆了呀
5 ]  z) G! {' N9 J8 m(目前是用lattice的 iM4A5 128/64)% L- ]7 }2 Q1 P2 Z# ~
. o5 s8 |/ w) e3 @6 U3 y# {
所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...9 ~, ?) v2 m  g5 D$ a( ^/ f* M/ v
你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...
/ V" _  H/ k' e7 B要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表
% a) g; K( j" r4 m& l也...回到你回的問題...
6 }3 @" t3 A. j) k5 v- o4 \要做phase shift可不用改到duty cycle啊...
  U' J2 ~* A) b# w8 O

  u6 L6 b. I5 V; H) r$ l6 g& L1 u, P6 w5 f7 F* f4 q$ ]3 q
其實我shift要做....duty 也要改..
& v: w! H1 r1 H所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?* e0 b% y6 [3 s( h) j
也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3
) H8 }" n$ J1 m7 G% Q# n1 q( F  L+ |output也要三組RGB 12bitx36 Q$ _  u( _1 S  O$ X: O0 u3 Z# x
同步需要一組12bit counter
, u0 J+ u$ v5 y! w$ ]" ?# r( P
+ G- X) S7 Z' F4 x. B# m0 O+ w3 y其實我用到的reg..大概就要180個了8 @  O! P8 N0 o5 s
所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...9 h! \! m4 v7 e( w

* S" D) d7 e- z: ~你有HSYNC可用嗎? MODE 有固定嗎 ?! i2 `- e; G% d- J7 I" B7 I% h, i
有的話至少已經上 KHz9 a. [5 s. J+ D' u6 f% d
而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表
& e  M3 [8 m5 i問一下下...
. F) w1 Y. K. e" C8 C) c
1 d. w" m- C( Y7 C8 T5 b你有HSYNC可用嗎? MODE 有固定嗎 ?8 _  a, V) O- X: K
有的話至少已經上 KHz
, C) n9 R# p. F* s8 ^  [而且就倍數來說一定也會跟VSYNC同步吧
  v0 G! K* l* s, e4 K

- S. D' u# F: f1 l# @2 h# V! U+ i5 |5 y7 {, u
是有H-sync啦...
4 c  m9 N) C8 Z& E% S& ^不過不能用h-sync來做.../ M0 u" D$ _+ v9 @# {
因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-30 02:49 PM , Processed in 0.146018 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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