Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
12
返回列表 發新帖
樓主: kolong
打印 上一主題 下一主題

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

[複製鏈接]
21#
發表於 2007-6-10 21:50:08 | 只看該作者
... 這樣說吧3 E- v& x8 E1 B; s3 d
如果有 PIXEL CLK 就用它除頻
/ |. H: m0 a( {; u  |+ M7 o4 b如果有 HSYNC 就用它倍個幾次6 s" c  w2 s8 ]$ K8 I7 H
5 t9 |7 [8 Q+ y* d/ m* G2 P: I
因為 PIXEL(DOT), HSYNC, VSYNC 之間有一定的倍數關係4 X3 u3 E" B$ P% T

# F3 H4 T7 a+ c3 u2 l; m  l! b   640x480@60Hz => 25.175MHz (39.7ns)
* l7 G" X) l5 k8 L7 |; i   DOTx800=HSYNC, 39.7ns x 800 = 31.469us
) k/ E/ T- l7 H$ u' L) A   HSYNCx525=VSYNC, 31.469us x 525 = 16.52ms (60Hz)
9 `( G* u) N! X% p, A所以這樣的CLK一定會和VSYNC同步 (詳見VESA Monitor Timing SPEC)  ^4 [6 C' e  H+ H/ m# f# s! y5 Y4 i6 M8 s
. K7 R- Z$ j. o% _
接下來如果要VSYNC時不出CLK.. 那就用個AND閘吧 (看你用哪個MODE, SYNC有High或Low)6 j4 w$ K# D, a# E+ j4 c
' B3 R7 \8 J6 e& f( @; P9 Y9 \
還是我想的清況和你不同呢?
22#
發表於 2007-6-11 15:02:01 | 只看該作者
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
23#
 樓主| 發表於 2007-6-17 11:12:57 | 只看該作者
原帖由 tommywgt 於 2007-6-11 03:02 PM 發表
" D9 n" f3 ~* ~5 f3 _4 \這樣子做出來的phase error會很大也, 要先看規格的要求一下下
6 R( M4 m* N/ w# z

$ k8 I' h3 k# I. _+ `5 c( C) ?( G# e$ J  g+ i. Q! f  S0 Q- x

. o$ C' o2 K, O, m' m' I! n嘿嘿....沒錯..' P; h2 k+ F) M1 C6 c
所以我現在還是用60hz去產生600hz..
; N. C  Q& C) x/ }4 A! ^另外一個原因是因為客戶只會給我60hz的訊號啦...
24#
發表於 2007-6-20 13:39:55 | 只看該作者
不過我還是覺得也許會有更好的方法來設計這個東東的, 所以才會說介紹個人給之類的...哈
25#
發表於 2007-9-10 06:26:03 | 只看該作者
//可直接透過synthesis  tool用於PLD,FPGA不可 LUT delay則要採其他方式。
% K: y% {) U9 j/ G" o% ]//所有註解都要保留2 U6 w- m3 X$ m. D1 h  s2 ~
- t5 E/ W  G/ J0 a. Y
`timescale 1 ns / 1 ns3 Q( U5 |( d& I# @
module xclk(sclk,ena,set,outp);) J" c: q5 s( X
- [8 y" j& N& f0 w7 r1 Q

8 s$ r2 F# U2 k- |0 t8 i; _! m
3 t  U7 y6 Q( Tinput sclk,ena;& D; m; D" V, {* ?3 l$ H; L
input [1:0]set;- f$ }( \0 x& h: L8 v! M
output outp;
+ ]1 D9 [8 c9 J% \
0 m' l2 G: e# W6 g9 ^. }" V. H+ U% xwire outp;
: G1 c' V& g3 `" x
; P7 a- a4 S+ T
. ~% a( k/ }! S' y  P; A4 j4 l- G* h* {' o0 ~+ a7 V
/**** Node preservation for nodeA **************/
' T) D( n( L9 p2 S. M6 n& C; Q: y" N* T; [/ y- d

# R; ^& Q& o: N//exemplar attribute nodeA_5 preserve_signal true: X1 D1 P% w9 s, b

0 z6 {( ~6 v# L/ Q: R. D0 r2 _//exemplar attribute nodeA_4 opt keep# [9 S/ W6 r4 ]& T: f" j# X
: {; k) d# h" |2 c: j& r7 f7 D. i
/**** The following comment form also works ****/
2 U& D, s! S+ L4 N# ~+ x' F: g7 s, M6 G& [
//exemplar attribute nodeA_3 preserve_signal true. [. l( A/ Z: z4 }
. @4 Y7 X4 c0 ^* D/ p' V4 N! [1 {
//exemplar attribute nodeA_3 opt keep
: B, N9 w. a" o: N5 ~& k( l7 p  x* ]/ F8 \
/**** The following comment form also works ****/# i( r, `1 o  t6 Y$ i7 D
  f: N: I, `$ o/ E' T
//exemplar attribute nodeA_2 preserve_signal true
- y1 B; q+ |$ E7 z$ A) O- Z/ i
4 E( s# T' G3 N  P, q( u5 `0 f//exemplar attribute nodeA_2 opt keep0 w  P; Z+ `: \: O* m( e# A* b
( r; u& n( B' p7 i
/**** The following comment form also works ****/$ {0 G3 q: B( u
/ z, c1 f5 M! F! u: y& J; z7 N
//exemplar attribute nodeA_1 preserve_signal true) H+ U0 M' w, W2 W" ~( i

0 [  M0 u' S3 N//exemplar attribute nodeA_1 opt keep# B% [  q5 R$ B

4 r4 m2 Q1 _* P: A% w% r: S
; }: B8 p$ v  M/ g, {  ~6 l/**** The following comment form also works ****/5 x+ w) L1 t/ m9 M  [  @
0 b7 A$ H: o+ L% j& u
/*exemplar attribute nodeA_0 preserve_signal true
( d' _: W5 j7 i2 c- P! v/ H' E6 J+ }* d3 N/ m
exemplar attribute nodeA_0 opt keep*/
% s. _( R0 ]5 z) r* h' T7 Y  E' [1 q* X

- l6 V$ z! L0 Q. Z  w
% e2 W. c2 W1 Y. d. i
4 Z, U1 S7 b' @1 A: j& A- W- a* j5 i% v8 a5 j0 F
- O# @! D8 Q: r. |8 V

7 e" Y' b7 S: T1 z+ ]& N8 E) U0 C* R9 I

/ m3 @. b1 k( b2 Y, V( `3 {" h" U+ x  n
wire nodeA/* synthesis syn_keep=1 opt="keep"*/;6 ^9 Q# \& E/ b/ P/ p2 t
wire nodeA_0/* synthesis syn_keep=1 opt="keep"*/;
% l6 K. z4 {) h8 N* }7 v! H& X4 E% {( Vwire nodeA_1/* synthesis syn_keep=1 opt="keep"*/;% x6 T& t* m6 u2 q; H
wire nodeA_2/* synthesis syn_keep=1 opt="keep"*/;
9 i/ m- n- O% x0 I3 hwire nodeA_3/* synthesis syn_keep=1 opt="keep"*/;, @' D# f& C9 v8 _, v( w
wire nodeA_4/* synthesis syn_keep=1 opt="keep"*/;
$ C- ?1 _6 H$ l# y* Z, K; j1 p
, s/ k3 S, G3 W0 C* z9 uassign#1 nodeA_0  = sclk & ena;5 R1 R) T+ v/ o( V5 c& r& w3 I

0 c( ]; D8 i: M  V9 w7 rassign#1 nodeA_1 = ~ nodeA_0;
5 K2 Q2 y% w8 ~8 x3 N' qassign#1 nodeA_2 = ~ nodeA_1;$ O; `+ Q% D" _  v. B" q
assign#1 nodeA_3 = ~ nodeA_2;
: g9 M1 S! ^5 c5 ]" ]5 Vassign#1 nodeA_4 = ~ nodeA_3;3 W$ i' `% l( D* l. i

* {+ v; W( ?* }& lreg xout;
2 B, u5 x# M4 \" J0 o# Z) N! g% t' U& M
always@(nodeA_1,nodeA_2,nodeA_3,nodeA_4,set)6 m4 H  C5 @7 d! \4 ^9 B, l
  casez(set)! `- D6 X' h* U3 D5 Z1 ^! t+ F
    1: xout =#1 nodeA_2;. L8 L+ A6 v0 \# |; ~' k# `
    2: xout =#1 nodeA_3;2 c. C* ]* }& E& O) F) y( ^
    3: xout =#1 nodeA_4;4 l. J$ x' U7 ?7 P9 k6 S% A
    default: xout =#1 nodeA_1;
! F7 h5 j$ A# O1 {+ P9 d6 }  endcase
  v5 R9 _# [7 x- W' g  
" i0 l" m! U% G5 n0 Jassign#1 nodeA = xout;
9 E3 f& v' |. V! jassign#1 outp = ena ? nodeA^sclk : 1'bz;
$ ~  {8 L8 M8 g9 c# b) r" v
5 M$ y' y9 \- z) x* Jendmodule' \# u0 n/ u) p0 e- `% O: b
* C( {9 P: _" _5 m6 h0 i% g

, f5 j8 g$ k' }' ]9 z  j  M4 n( \
, ?' z( a' ?3 W2 i1 _- r`timescale 1 ns / 1 ns% z6 v0 C$ F2 V7 t6 K4 X
module xclk_tf();3 h' Z  a& X- R" e. m/ W" L

0 m  H, F- A, M! y. P; Y9 ~# M! q// Inputs
  T- D: t  |8 S5 Y4 E( v! n7 v    reg sclk;  h, c) ]0 @. S& [! _/ p' u' v6 g
    reg ena;3 k8 e$ W8 |" O- v5 Z  S
    reg [1:0] set;: k- z/ X# t( d+ z& T0 O: J6 z

2 [, c- I! z6 r. h* C# E" K$ i9 `! d! E, ~4 ?
// Outputs* o/ B1 d( v; n# p7 q  K
    wire outp;
3 ]0 `% q: ~$ c' k9 x/ ]
+ H4 h* j4 Z9 I  D3 r
6 X/ p9 J8 C; E) C& }7 E8 `4 y8 @( j: M$ x' }5 s% o7 j/ L
    xclk UUT (
1 v$ U6 Q# |, Y8 f( N        .sclk(sclk),
2 a+ w/ x* o9 s        .ena(ena),
- o: E; j/ z+ d0 g( i        .set(set), ; ?, l$ g0 w3 g8 q/ ^5 D0 ~
        .outp(outp)0 F+ @, h2 V& v- g4 p! S" A$ Z( t
        );
$ D) [" }$ s1 x2 {! u7 q) t  L, |  V) R) \

$ i. F+ f- z2 z; O) J1 q; X+ F8 l) L* t( Q& D4 ]
    initial begin
0 b- @6 C" C2 i& v            sclk = 0;
+ {# ?; P9 Q  B7 l+ N            ena = 0;
! A! M7 ]" D* \8 V! J, N            set = 0;
, ?  I2 N0 n- b3 ?! \' K    end, K! W. G+ f5 G. v' m

( I, Y1 o( k$ s. `
, L3 ^2 {' z9 l2 s" falways# 5 sclk = !sclk;4 F8 A$ z4 a" e& n7 w
7 X, U; F7 D+ ~6 s# s# n
initial begin" M( D. c6 ~( M3 n, A7 z. g
        #100  r' j; ~7 ?: E3 l- T9 P
          ena = 1;
8 L" x* H' U5 P+ t% o8 U        #2000 + X  z* Z7 e( N- R$ r+ w
          set = 2;
$ T+ M+ ?; p( U        #2000 4 ]* \) i5 a) X# v  \6 A% v( h/ I* X
          set = 3;
! h/ c8 r7 v2 T6 s3 c; c3 D% w  #2000
1 z5 L* s( C5 x+ I  $finish;
! l8 z2 e9 b8 B9 u& J0 Zend
7 v, |2 |# A; G; V$ g" cendmodule // xclk_tf
26#
發表於 2007-9-10 14:49:50 | 只看該作者
這個有趣了
- R) j6 j/ s+ r有simulation的waveform嗎?
  y  [' \( @0 w% \4 _3 r! f) F) z示波器量的更好~~~^^"
27#
發表於 2007-9-10 17:20:59 | 只看該作者
有附 test bench
0 x) K/ c* P- E+ M! {4 F' a. j確實可用! 已實驗過,但我不會貼圖。
5 u* O3 b3 {/ `/ q8 D只要略加修改即可實現。
28#
發表於 2007-12-24 14:50:48 | 只看該作者
請問一下你是要控制LED在顯示方面的應用嗎??( J+ ~, a' x5 e5 Y2 q+ Z2 }

6 y7 C: O  Y9 [4 `可以和你討論幾個問題嗎??/ D' H0 c4 `* B3 }1 Y' e

0 r. y* U  M$ o# B$ s! r4 p方便留MSN嗎??
6 h+ u4 ?) p) {  k* X. W; K) V5 D' _3 d& p( W! H4 s. n
感謝
29#
 樓主| 發表於 2007-12-24 16:35:41 | 只看該作者
沒錯...  ~# S: A3 F" y$ f: I' b* {$ U% U3 m
是要用在LED Backlight的....
7 L" X) T! o9 L/ R) M# [8 Y! F其實有問題可以在這個帖子直接討論..
4 E4 c; |4 Z+ M" A' y5 k: S. \這個沒什麼秘密啦...: d8 N; u6 j, L- w; Y# q
因為我已經申請專利了.....
30#
發表於 2008-10-4 00:04:50 | 只看該作者
嗯~~大大解答蠻詳細低~~~多謝喔~~~小第在研究看看~~~~~~~��
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-4-29 08:51 AM , Processed in 0.117006 second(s), 15 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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