Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....
* f3 p0 T0 V9 b& _% D, W2 A/ V8 j; p倍頻是否只能用PLL的方法?4 I. p+ ~- V& \, |1 l' H4 l+ |$ w* W
最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...' R7 l. S' }& S5 G* A, s
effort會有多大呀....有沒有一個概念的數字2 M1 b( M0 t% X# x. N" T# z5 ?0 x
另外...如果input的頻率很低(60Hz..)...0 ^! p: m8 W" U* [/ i# e# ~
cpld還是有可能做到嗎...
! O- m2 Y1 K3 Y$ b- {0 P/ Q4 E+ f7 ?0 a因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻
3 a3 M  z/ X) x8 W6 {- m* L. M" g: Z  Q' q
[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.) @! S! ~6 t; d* t6 f

* g3 M! v8 \+ y) d1 t6 K輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...
, s5 j0 S2 I$ }是要用panel裡面t-com的v-sync來同步led driver...
2 Z2 C0 Q; |# @6 T+ p" }7 z; R所以不是clock generater的function..% O: s& A/ U# S: v2 }
目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....
* u: s% b  C. ~& N. k我的function如下..
( M$ `9 T8 r. k% l/ h6 w. q- R& p5 A3 j用60hz的frequency去產生2.457Mhz 的frequency...
6 u5 x* q5 ]# t$ T2.457Mhz是要給LED driver當clock input用的...) P3 s$ D% f8 J+ I* i
這樣LED driver所產生PWM才可以跟V-sync同步...
0 W& y. @1 y  K% U) o現在遇到的問題有下列幾點..% ?' E) V* G/ @" V" a. s
1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz../ p" B% `. d% Y: B: l2 R, |9 M" n+ m
   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV...
; r- _+ n% l5 @" ^2 a   noise就比1mV還大的多了...
* ~& L% m+ t3 r; z, s2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)
% g5 \, P) i: ~% G7 s   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗)
2 t! C' N! F+ A9 `" }& x   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..6 N& B# g8 F; |* E2 z$ {

2 ?: V3 _/ I9 W" x' d: ~/ p不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:4 J- y5 v5 J* C' t, {0 {
將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver2 M, y6 L5 R, C+ `$ p. w( y* o
最後所產生的pwm還是跟v-sync不同步啦...- `" K' k! t' ~" w8 o2 X2 ^: B
所以現在改變做法...
2 W2 ]6 A3 S4 z& @' s直接用60hz產生600hz的pwm...5 [: C! m% F! B
duty就一直去sample  led  driver的pwm就可以了..
; O! U) u7 ]* J) x目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..
. W/ _! V9 M1 `. @2 B2 E  ]
5 H" o0 [$ v6 y' C8 `; q感謝各位先進的幫忙呀
4 \% Z; z* @* y" I0 E! t
9 t3 T0 g& @; z1 G# Z另外...想做一個shift的function..
( H# w: s: e9 M4 |% F/ Mled  driver的pwm進來...送出去的pwm要shift 60度或120度..
$ E6 r* Y* ~! B: o7 K# R$ o1 D是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,) `( O% k$ j  g0 z4 c& W) b
利用 74297 的電路來參考 60Hz 或許可以;
, o: a+ R4 V" hDCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表 9 B. m0 [6 B" B/ |" {
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
( J$ O5 s) D/ {
( `- J* c* S6 g0 [8 X4 i

7 Q8 n  X$ a7 r& P/ H想法是這樣沒錯啦..
+ `* w  J, r5 W- G% |' d& s6 N以2.457MHz的clock來說...
: u/ n1 s9 n0 L1 I- n6 }你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)
% i0 b/ \# {2 l- [7 H; f4 Qshift-->one counter
2 R  y1 I# u7 s' {memory high-->one counter
9 |! c# ]9 V3 |3 S. zmemory low-->one counter
! U& t% x, s, c. ]我目前是要用到四個counter...
8 x; d  }0 @( [5 ^# P* W  d! G不過這樣做起來感覺很不好...
- D- g+ I7 q6 [" h9 O/ u' Y: ~7 |. U- e) c4 P# x& }7 U  Q
而R G B各要一組shift..  |' D3 h: K! z9 y4 d
128microcell已經被我寫爆了...唉....
4 `& d7 x$ z0 H% L: ?8 U' m) D0 C% a9 `8 Z/ ^( O. J
其實光是寫同步的的code...128microcell就已經被我寫爆了呀
, }4 e6 q- L! F, f(目前是用lattice的 iM4A5 128/64)% h6 J: \0 g+ y& ~7 S) ~7 \
; [3 M$ d+ J! T# l! i+ A! ]
所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...
2 W2 Q2 Y0 j& J9 n: g你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...% e8 S$ F; O! p
要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表 1 s% F' A5 r% i% t) h. K/ k
也...回到你回的問題...5 }, t6 Y4 B$ P: D
要做phase shift可不用改到duty cycle啊...

( r7 ]$ |/ A% Z5 D* c1 r8 G; e' N
0 z: O5 w; `$ J+ v5 D2 ^! c0 v( ]: M- d! u: t3 |) M* c( s3 W4 ~1 l
其實我shift要做....duty 也要改..$ U* e& N1 _- x$ O
所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?+ ^& r: Z: F& v2 g) j" g
也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3
+ J! c3 N8 X7 l& @# noutput也要三組RGB 12bitx3+ Q8 ^- Y! Y7 Y9 ]3 Z
同步需要一組12bit counter
! E3 F. H+ p( }8 P1 e6 F( m  i, q( v% j/ X0 L4 ?: L" l/ z
其實我用到的reg..大概就要180個了$ q1 \! b) M/ ?: A9 L2 z4 H! R& h
所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...5 g/ Q8 e9 e/ f  f. J6 o. v- _
2 _' c- q/ y5 b) \  g
你有HSYNC可用嗎? MODE 有固定嗎 ?( L8 Q6 E! K8 J) c' o1 t
有的話至少已經上 KHz
8 U- m8 [0 \% N$ i0 x! e2 x5 ~8 V而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表 / a# L# {2 V+ M! n/ z$ K0 v5 F1 n& W
問一下下...
- j/ T/ P0 P8 [0 S0 s' x" e& n4 H) z2 B
你有HSYNC可用嗎? MODE 有固定嗎 ?
) F' s( ~% U, b1 m6 A' p6 l$ A有的話至少已經上 KHz8 K% V8 i+ a/ Y
而且就倍數來說一定也會跟VSYNC同步吧

' \- q6 v- j5 K- A6 t+ q+ u
" [! T& o5 F. }- L
* K7 ^- {% T; w' A  A# i, B* _' {9 c是有H-sync啦...
, @' m" G9 N. ]. ?6 d0 Y0 j# |- a不過不能用h-sync來做...
& [6 b8 \: F7 L5 U+ s" v因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-18 07:08 AM , Processed in 0.139018 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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