Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-3-17 11:29:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問cpld可否能把一個input的frequency倍頻....) g1 D6 x) \* L& ^3 S5 a
倍頻是否只能用PLL的方法?
+ q7 D( D2 }  m& T8 v' n; `; X最近遇到這個問題...想看看各位的看法..
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-3-17 12:32:25 | 只看該作者
答案是可以的, 只是就以成本來看的話划不來而已
3#
 樓主| 發表於 2007-3-17 18:11:03 | 只看該作者
用cpld的話...6 x: o0 k7 e! O5 q% [# t& J9 S
effort會有多大呀....有沒有一個概念的數字
4 F% o' \; F1 u: c2 G% o( K另外...如果input的頻率很低(60Hz..)...& ~) Z9 x3 k7 F) u' I
cpld還是有可能做到嗎...
; {3 K6 s0 U5 V1 G/ Q5 R- L因為問過代理商...是沒辦法supprot那麼低的頻率...嘻嘻' X1 K# ~- ]; I6 o2 ]
, M$ B; g! @$ O$ y- ^% a  f
[ 本帖最後由 kolong 於 2007-3-17 06:20 PM 編輯 ]
4#
發表於 2007-3-18 12:42:19 | 只看該作者
你可以上中央圖書館查一下, 有一篇碩論論這一件事.
3 S) U4 o& {6 ?7 N& d1 l( y9 M0 F- t* h: y. x
輸入頻率是60的話, 很明顯的是想拿市電的信號來倍頻吧, 如果只是要一個也許不是那麼準的clock source的話, 該有更簡單的方法才對
5#
 樓主| 發表於 2007-3-22 21:18:20 | 只看該作者
不是要用市電的信號...2 n/ d* f2 Q6 p* _
是要用panel裡面t-com的v-sync來同步led driver..., L" s( g3 h  }7 c9 o
所以不是clock generater的function..
% i( }. n7 F2 \0 @$ [! m# ^) ?目前我是想用cd4046...不過filter方面就傷腦筋了...
6#
發表於 2007-3-23 08:38:34 | 只看該作者
如果你能講的更詳細點的話, 也許可以幫上忙也說不定
7#
 樓主| 發表於 2007-3-29 20:45:31 | 只看該作者
搞了二個禮拜的CD4046 (PLL)..還是覺得無解....% {3 ?7 g4 L" ^3 H( Q; T6 l$ u
我的function如下..1 a, ^# a. i" n& o: w+ H
用60hz的frequency去產生2.457Mhz 的frequency...
7 ^; g4 n/ h5 j+ ^/ f6 I5 |& W2.457Mhz是要給LED driver當clock input用的...
% i: O- ^: ^8 m. d) [6 `) S) H/ e: R這樣LED driver所產生PWM才可以跟V-sync同步...
! d4 V' X0 h) D1 E% e8 s% c現在遇到的問題有下列幾點.." C! i8 w/ A5 C9 s% I
1. 60Hz要產生2.457Mhz.....60*40950 = 2.457Mhz..
7 C3 F, ^9 O% i* c   因為40950實在是太多倍了...這樣VCO平均一個level大概只有不到1mV...
+ @: Q: R2 [! G9 z9 Q# s. D7 b   noise就比1mV還大的多了...
/ }( {% Z5 c  A1 y7 |' M( a2. 60Hz實在是太慢了...所以不可以用被動式的filter..只能用主動式的(就是用op啦)
5 j% B5 d7 X" X! w   按照datasheet的公式..所算出來filter的R跟C..只能當參考.. (果然..類比的東西都要靠經驗)
) G. B; m0 B6 y. [# F   實驗了一個禮拜.總算感覺filter有在動,不過目前還是有一些問題還搞不清楚..) Y* q1 u/ Q  [
0 Q, B2 [% p# K& B" X
不知各位大大是否還有其他的idea可以實現這個function....(用60hz去產生2.457mhz)
8#
發表於 2007-3-30 10:19:15 | 只看該作者
如果你還是想用CPLD的話, 不介意的話留下連絡方式我找人幫你如何?
9#
發表於 2007-4-11 13:04:31 | 只看該作者
個人看法:
7 V! f8 H" l9 S( z' G將 sync. signal 當成 enable信號, CPLD 內部電路用 OSC 產生工作 clock 信號源,藉由 sync. 來  enable 應較容易實現吧!?
10#
 樓主| 發表於 2007-4-15 11:53:38 | 只看該作者
其實用PLL產生2.457MHz的clock給led driver
$ r& U& H% p3 K% e% K2 X0 j- L& p& C最後所產生的pwm還是跟v-sync不同步啦.... O6 Q1 C0 u+ J) ~
所以現在改變做法...
& @) Q$ Z/ I! T直接用60hz產生600hz的pwm...+ ~6 K/ ^8 Z$ A6 \$ ?0 o
duty就一直去sample  led  driver的pwm就可以了..
) a' n* Z  R8 {8 c% V' M目前60hz-->600hz已經ok啦...剩下的就是去sample led driver 的pwm..7 @1 v' n5 ?& Z1 c" ]  Q

; M. J0 H/ \/ a6 ?, Z/ x6 d感謝各位先進的幫忙呀! {( S; t+ `: o/ C# N3 k8 i% K

' S3 `# u- D1 E9 d另外...想做一個shift的function..) n% @1 E% U5 h
led  driver的pwm進來...送出去的pwm要shift 60度或120度..
! c3 x/ ?  o2 [& P/ O2 j2 J) }是否有比較簡單的想法呀...
11#
發表於 2007-4-16 14:14:29 | 只看該作者
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?
12#
發表於 2007-4-17 13:09:06 | 只看該作者
如果 jitter 要求不是很嚴格的話,
2 [. j# n* A3 R0 \利用 74297 的電路來參考 60Hz 或許可以;
( L3 b! \/ i5 ?4 ~' C! U7 d- DDCO (ID counter) 跑在 2.457M * 32 對 CPLD 應該是很容易作到...
13#
 樓主| 發表於 2007-4-18 20:13:09 | 只看該作者
原帖由 tommywgt 於 2007-4-16 02:14 PM 發表 ; Q( \  @1 Q4 ^: r; ^3 c5 U- }
如果倍頻是成功的, 那phase shift就只是調整cycle中的1->0, 0->1的時間, 不是嗎?

1 `2 N( Y6 e% L
  K( P7 `2 g+ ^. o' k
1 {& o* J4 L4 ], O想法是這樣沒錯啦..0 q9 k* C  U& M0 f. k
以2.457MHz的clock來說...
2 I  @9 W0 i3 ~" C你會需要12bit的counter來數high是多少跟low是多少..(因為pwm的duty是會變的)( l* V8 i* L' O5 {  V- m
shift-->one counter
- R- g7 |$ U& @2 _0 n8 X6 q3 ?, nmemory high-->one counter5 v. r% ?2 M* o  h) W
memory low-->one counter9 g7 S- Z/ d: H1 Z+ n# N& [
我目前是要用到四個counter...: h. y$ m8 O; l7 S! M  G% O
不過這樣做起來感覺很不好...
; o" d4 E; p- \% Z: R4 Q" `; D
. w% c" `. |/ m3 `6 X而R G B各要一組shift..
. I4 O: c" O$ j* w+ q4 I# ?128microcell已經被我寫爆了...唉.... ( w. ^1 n" {6 x* R9 s( Q: d
) z& Q3 q7 q3 M. h
其實光是寫同步的的code...128microcell就已經被我寫爆了呀
& }. ^- {- i& b! w! ?* K+ w6 V(目前是用lattice的 iM4A5 128/64)
% ^% d1 W4 |' O2 M0 @' N8 e# w
0 C& r+ I, P; P所以才會問各位先進是否有其他的想法.....
14#
發表於 2007-4-23 16:18:35 | 只看該作者
128microcell在一般的應用可以放一大堆東東也...9 D: x9 @- ]- z1 X# ^, ~
你的design很大嗎?
15#
發表於 2007-4-23 16:30:00 | 只看該作者
也...回到你回的問題...* X- A# c- Y4 s* j1 f/ F$ L
要做phase shift可不用改到duty cycle啊...
16#
 樓主| 發表於 2007-4-23 19:49:01 | 只看該作者
原帖由 tommywgt 於 2007-4-23 04:30 PM 發表
" R) \, U1 {+ b4 K也...回到你回的問題.... L: M( o) c  s$ Y8 }
要做phase shift可不用改到duty cycle啊...
* X! Y+ i: c( a% ]
6 W* A" G6 F  V' B8 t. h$ m

5 `6 ^) i2 i1 P4 y" B1 q. Y9 ~' J其實我shift要做....duty 也要改..
$ z" a- ^/ W9 I  s0 M% `+ N所以才需要那麼多的counter...
17#
發表於 2007-4-24 10:25:35 | 只看該作者
願意把所有的規格列出嗎?
  |4 R4 T) `" X2 K也許可以放到64 micro cell也說不定...
18#
 樓主| 發表於 2007-5-9 21:02:13 | 只看該作者
RGB三組pwm要用到12bitx3
2 D$ r$ Y) W- A, a7 Youtput也要三組RGB 12bitx3
" [; Z7 K# s$ S6 ^& N. L0 {: _ 同步需要一組12bit counter
% g6 z6 v' a( O$ c/ M; k. `# A' G$ \! B! f5 [0 M- k
其實我用到的reg..大概就要180個了7 q# b* U  n5 n9 I1 q$ X5 c2 Z
所以64 microcell是不太可能啦...
19#
發表於 2007-6-8 19:19:44 | 只看該作者
問一下下...
* \$ B% E0 U' r9 D" B4 I; s* K/ a5 `- V5 D- h- ]$ h
你有HSYNC可用嗎? MODE 有固定嗎 ?
( R' y9 j, E2 h有的話至少已經上 KHz
& b3 o" l* O2 L& z而且就倍數來說一定也會跟VSYNC同步吧
20#
 樓主| 發表於 2007-6-10 18:39:08 | 只看該作者
原帖由 eject 於 2007-6-8 07:19 PM 發表 / @0 D3 P2 I' j/ _: \& z0 {. }
問一下下...6 `8 I( I: v% e" }, ~

9 }/ h: P2 ?7 m! f0 w- h你有HSYNC可用嗎? MODE 有固定嗎 ?
3 ~: i: G. V: B$ E0 f有的話至少已經上 KHz- B0 T9 f  \$ J! V0 T% b
而且就倍數來說一定也會跟VSYNC同步吧

3 ]( W, Z- O: x# o$ q
  w; L8 `6 [& J5 L7 w; @0 Z$ a/ ?0 [. T5 l* f/ S1 N4 \
是有H-sync啦...* |4 ]. n3 M  [, i3 V1 z) n1 `
不過不能用h-sync來做...) X* ^8 z* u  D/ Q4 y
因為用h-sync來當triger所造出來的訊號不一定會跟v-sync同步.
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-8 09:50 PM , Processed in 0.134517 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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