Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....0 g6 _: c) z4 g! s6 m
倍頻是否只能用PLL的方法?+ h; e2 T2 H) R& C1 K( i
最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...$ C- F/ v2 |% Q) W- n) m" n
effort會有多大呀....有沒有一個概念的數字. m* x0 k/ O9 u+ g
另外...如果input的頻率很低(60Hz..)...- k5 H9 [% {# Y9 i: _6 W0 ?0 n8 k
cpld還是有可能做到嗎...
6 A& A% h$ @: p% E3 n* C因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻7 R% d: Y6 V" p6 {4 C# _

% R& B. k9 y, E$ N* o! T) ~[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.
: J1 R/ D9 b9 p. ]1 x: r2 A
' _. e9 t' x( D5 B9 w輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...
0 a2 d7 W6 _; z: U: q  G8 K是要用panel裡面t-com的v-sync來同步led driver...
' L& A. G2 P- ?' z- W7 `所以不是clock generater的function..- T4 z5 N! g( b: B, H
目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解..../ d  m  X' \3 @8 B2 X; K
我的function如下..
3 v% J! i+ o9 c& K5 Y" Q5 o5 \) K& I4 G用60hz的frequency去產生2.457Mhz 的frequency...
7 U  U( u2 f9 g0 f2.457Mhz是要給LED driver當clock input用的...! h) W% N( T' x& a5 L5 A' r2 j8 [; {
這樣LED driver所產生PWM才可以跟V-sync同步...
7 V  e3 ?3 B* \  u3 T現在遇到的問題有下列幾點..; k5 I/ O. c  i  p) e; B
1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..
1 X3 [7 p# z, y8 ]8 k1 K; x   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV.... d% c6 K$ I2 t
   noise就比1mV還大的多了...
# M! V6 Q* b! Z! W2 M: {1 I/ E9 e2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)( u- c, |5 j0 C6 O5 `
   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗)" z4 N5 m" S# w  s4 w" Y& y! E
   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..
% Z- c7 E* i5 m& R0 v; c& }2 `2 W1 C- t
不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:
* N& |. B$ v$ z# c4 D將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver" }) y/ V" n2 L- ~  P+ B" U3 f9 v* ^
最後所產生的pwm還是跟v-sync不同步啦...! \! l4 w" Z# z# p# S0 i
所以現在改變做法...
0 V% M# d4 S, ^7 K( B0 R直接用60hz產生600hz的pwm...: ^3 |  }. q+ r
duty就一直去sample  led  driver的pwm就可以了..
0 x& \6 ?3 z4 ~6 [! y$ r( u# n. T+ R目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..- F8 x& q5 z; N, x" A; U( ?4 b
# Q6 y$ {0 G0 u1 |' z) Y3 ]
感謝各位先進的幫忙呀
: B/ V  j' ~+ F' v( A* t: \, }: A! j! ~: r. S
另外...想做一個shift的function..
6 j2 S% U8 S% t0 ~) eled  driver的pwm進來...送出去的pwm要shift 60度或120度..! J- I5 e* s% t4 m
是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,
/ s3 ?, \8 b, Q* e利用 74297 的電路來參考 60Hz 或許可以;* t, e: C. W) B) w
DCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表 ' G2 f" x) V+ Y1 `
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
6 L( T: L% Q, }+ H7 N
# g" {- |* g! u; _% X! x3 u

8 C" d0 t; Z9 z想法是這樣沒錯啦..  J0 J+ ?5 B9 V; Z; t" ]
以2.457MHz的clock來說...: w' C7 k- Y5 c' K" y
你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)7 I' g& S3 d0 o" _0 K- b
shift-->one counter& G5 Y$ q: ^* ?8 X. q" v
memory high-->one counter
9 B+ K. [$ \% qmemory low-->one counter0 |- t" Z" w! @& {: p* o
我目前是要用到四個counter...
9 U( d7 e4 g2 |* v7 E不過這樣做起來感覺很不好...; E  m; u* k2 k
( r5 b/ ?/ N( M4 H# o" p9 {3 e
而R G B各要一組shift..! e: [/ D7 p. y
128microcell已經被我寫爆了...唉....
% l2 f; |6 p$ x) D
' v6 r7 r1 j2 t. F; f! C, I* @其實光是寫同步的的code...128microcell就已經被我寫爆了呀
0 d- K' R. a- e4 ]. u(目前是用lattice的 iM4A5 128/64): d2 C( L! l3 W8 |
7 O1 z4 T  |6 a* t" R; u
所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...2 t3 M' b9 @4 A) \+ h
你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...+ m; |! C7 @# ^+ G$ ^6 w* N: D6 o
要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表
* J8 V, \$ C! g: u- m9 r! P也...回到你回的問題...$ N& V" |# b& G! }2 o  B' u6 \$ V
要做phase shift可不用改到duty cycle啊...
" o. c  v" B- D9 K5 r8 `! n
# W  D- b" A* p8 q
9 Y; o' C% Z0 x4 b  ^/ y* a
其實我shift要做....duty 也要改..' Y0 f% k9 p! e
所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?
$ S6 E% Z' j$ N- Q, ?1 [! i7 i: b也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3) q2 s) C7 {2 |% I
output也要三組RGB 12bitx3
3 Y6 x1 ~( P' U- e7 d: \/ m, S 同步需要一組12bit counter
& _6 o, J& S$ G2 r! l
3 h3 _% [$ |6 Z1 P. ]) q其實我用到的reg..大概就要180個了. E8 r, n5 H  H  j
所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...5 o0 M( d8 M# ], O/ J, z* d3 b* t

& i/ T& N3 I) t* d/ H6 B你有HSYNC可用嗎? MODE 有固定嗎 ?
& T# v# D0 f: R( v7 z" y6 a有的話至少已經上 KHz
& N$ |5 w, A7 d5 E3 \/ ]1 u而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表
' S0 |: `7 j# R4 v問一下下...
5 D. H* a" ?. h$ C: b- j9 V1 F3 q  U6 Y  `/ f; {. \
你有HSYNC可用嗎? MODE 有固定嗎 ?$ x- e4 I( k7 h( I( f- V
有的話至少已經上 KHz
; d6 O( g0 M7 s; Y! D0 F而且就倍數來說一定也會跟VSYNC同步吧
' q8 T, M" S: G3 i

  S1 L' |( O' w
  y$ f! _' B2 f4 n& L是有H-sync啦...
  f$ `% n+ H* Z& @3 R! V2 }不過不能用h-sync來做...& C$ c+ z6 A3 _' B8 d+ d) @+ X
因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-14 04:06 PM , Processed in 0.179523 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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