Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
21#
發表於 2007-6-10 21:50:08 | 只看該作者
... 這樣說吧
, Q" S& t% u- ^5 r, Y如果有 PIXEL CLK 就用它除頻
% v7 A; O" J' p: z- t  z7 `如果有 HSYNC 就用它倍個幾次# U! D% q0 s- T$ P; [0 O  a
: k: v* ^4 P0 J2 A4 |7 O
因為 PIXEL(DOT), HSYNC, VSYNC 之間有一定的倍數關係% l  K3 s; V  K' `' `+ P3 Z

/ t2 M) J- D5 e+ Z8 F2 J   640x480@60Hz => 25.175MHz (39.7ns)+ R( S6 }+ b' P) t' G
   DOTx800=HSYNC, 39.7ns x 800 = 31.469us* A) r0 s( _$ _
   HSYNCx525=VSYNC, 31.469us x 525 = 16.52ms (60Hz)' P$ |) {# d( |) ?
所以這樣的CLK一定會和VSYNC同步 (詳見VESA Monitor Timing SPEC)2 ?0 H4 B# P1 f+ D
- J. e6 }9 |  {" L( v
接下來如果要VSYNC時不出CLK.. 那就用個AND閘吧 (看你用哪個MODE, SYNC有High或Low)
- S* O! Y) \5 |' f/ F
  j: e: O- r2 o還是我想的清況和你不同呢?
22#
發表於 2007-6-11 15:02:01 | 只看該作者
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
23#
 樓主| 發表於 2007-6-17 11:12:57 | 只看該作者
原帖由 tommywgt 於 2007-6-11 03:02 PM 發表 ( V6 r8 s3 R4 y/ M
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
6 V8 f8 a" i# L9 W
( d  `/ r* Z1 N# a; K

+ y+ w' o3 t! j! Y! _) B
5 p1 B. J$ K0 a; T* `7 {) S' Z( M嘿嘿....沒錯..
' }, [" H8 ], w# {5 K所以我現在還是用60hz去產生600hz..' F" m  \- A8 ^" ^2 @
另外一個原因是因為客戶只會給我60hz的訊號啦...
24#
發表於 2007-6-20 13:39:55 | 只看該作者
不過我還是覺得也許會有更好的方法來設計這個東東的, 所以才會說介紹個人給之類的...哈
25#
發表於 2007-9-10 06:26:03 | 只看該作者
//可直接透過synthesis  tool用於PLD,FPGA不可 LUT delay則要採其他方式。$ F) O. R* F1 ?/ M: B3 G2 ~
//所有註解都要保留
2 I0 q9 y$ A! r" ^2 r) _: T2 _
! a7 c! }' Q4 n" {3 F' M2 n`timescale 1 ns / 1 ns& D8 @+ Y1 d. n9 W5 e' L
module xclk(sclk,ena,set,outp);
4 k6 Q3 [8 S3 h! V$ l5 w, q7 t9 J! P. E# ?; D; N. D8 U! |( J# L( T3 q% f

7 f0 e9 e! b6 v
( ?6 s0 ]+ V3 E7 k6 a, p0 `4 cinput sclk,ena;* m& i# J# {. B1 z* Q
input [1:0]set;% s. ?, G0 ]0 o0 b7 H1 X
output outp; - n! {, O& L) Z4 `8 a% M

7 y9 X1 W# `) H# U& Vwire outp;
$ Z: T% m* k2 A- K: G5 ~- [- h/ z7 o; y$ w$ `
- _$ Y) @0 E& p& V, ?, `$ h/ X
% j" Q+ V  R# F: g/ Y0 v
/**** Node preservation for nodeA **************/& \$ @# u8 a% b1 M" H6 u  c
9 @7 @5 {. E& }

, o; ~9 s! p/ H4 V//exemplar attribute nodeA_5 preserve_signal true8 t6 D8 E5 F. S' o7 P9 d+ j

6 D9 k  p8 I3 r* q$ K//exemplar attribute nodeA_4 opt keep  E$ h5 i5 h% M% ?' ^1 Z' V9 ^3 y; @
9 S: G: q' k  v4 C  V
/**** The following comment form also works ****/
: N) Q0 u' ]5 Z' A3 a4 g6 A! Q. J
5 H8 s2 M2 M  g3 @% i* i//exemplar attribute nodeA_3 preserve_signal true9 D+ p8 G: {  h8 ^0 @$ z; V2 e8 g
- e/ F! ?( q# y% {, V- A* C. b* x
//exemplar attribute nodeA_3 opt keep
/ z) l) s- O+ Z1 I7 l
8 Q$ E) O3 h0 W/ t. X! _) x/**** The following comment form also works ****/- s8 a5 T4 Y8 ~& q

; b" p+ S. _% _. t//exemplar attribute nodeA_2 preserve_signal true
: B$ C. I. d' P' p1 L& v; E8 P; C, D) d( O( T% O
//exemplar attribute nodeA_2 opt keep$ m. `* q0 L  N: ]) F

. X) Q. @) i) j3 J( x/**** The following comment form also works ****/' N; g5 i& \: E' c" t! z- n

8 E% a: H+ ^5 k7 w& l! Y' B% C//exemplar attribute nodeA_1 preserve_signal true
$ z% P* O! {0 e( x/ O  X$ h) l; C* N  J' f: D- y; Z. o
//exemplar attribute nodeA_1 opt keep
5 q9 P# k( Q$ U) g6 [/ y' }) c 7 p& j1 v4 ]5 H9 X
) A' D0 g8 V% d% p0 y0 K
/**** The following comment form also works ****/0 [( m  x, y; w  b' Y

* @9 [; h1 Z( A- M) e  \; w/*exemplar attribute nodeA_0 preserve_signal true+ O4 H8 q  H' Z" j4 p3 N9 s

3 \/ T0 \5 f$ N; hexemplar attribute nodeA_0 opt keep*/ * Z  M- W+ L3 E' @8 w+ ~
$ p/ V5 L& O9 D1 Y) N# h3 \
3 h! T5 t0 M: h1 B1 Q4 o

6 b& O3 w, H9 u+ o
! K$ l' k3 ~& [1 f0 n! |
* n- W8 K6 x. |& ~% b5 V* \8 S" k! v5 d
& Y1 S! h( B/ {4 h$ ?8 `9 S! l
9 n0 k( _; k: S8 {3 D  C; u

' C% M. p: X& S4 {) V4 i
- ?, p+ n4 P! F- z. Qwire nodeA/* synthesis syn_keep=1 opt="keep"*/;) i) ~! k! D/ r
wire nodeA_0/* synthesis syn_keep=1 opt="keep"*/;2 z# {' E) C- G2 N
wire nodeA_1/* synthesis syn_keep=1 opt="keep"*/;  P/ d& y- Q+ g2 t2 @/ H" j
wire nodeA_2/* synthesis syn_keep=1 opt="keep"*/;  D  x, y; g" ?, Z! E
wire nodeA_3/* synthesis syn_keep=1 opt="keep"*/;4 U6 _4 G% C, {' E$ M% S
wire nodeA_4/* synthesis syn_keep=1 opt="keep"*/;, z& ]+ G( t/ g+ B5 |

) z  p- y. h$ E6 z) N6 D7 sassign#1 nodeA_0  = sclk & ena;" F5 U8 t" x  {8 `

; s% @' H* n5 q/ G: h* Hassign#1 nodeA_1 = ~ nodeA_0;9 c) r( m6 z( d( k- s
assign#1 nodeA_2 = ~ nodeA_1;
4 }0 L. r4 ?3 t- C5 L0 ~+ z) fassign#1 nodeA_3 = ~ nodeA_2;
1 _: _2 k3 b7 M9 Z8 Eassign#1 nodeA_4 = ~ nodeA_3;
6 X# _+ N6 d+ f8 _. D& P) M9 m& H$ E! T/ o
reg xout;
8 \4 X0 n3 ^$ P/ x, U1 ^& l! C
# _& M$ Q4 Z# b& P# |* _always@(nodeA_1,nodeA_2,nodeA_3,nodeA_4,set)
' @+ t2 Q, M- I- h" s. L0 z  casez(set)
/ h0 F4 s+ S% R6 m3 R: j  M8 a    1: xout =#1 nodeA_2;4 T' J" s) w, x7 f4 {2 c9 W
    2: xout =#1 nodeA_3;
2 v+ K1 T9 |' B% E8 e4 P  N3 s* D    3: xout =#1 nodeA_4;2 B1 L- @$ _. q. D2 J
    default: xout =#1 nodeA_1;/ T: h9 D: P* ?# O1 N2 D
  endcase
! D0 v/ M+ \, B& M/ E4 E9 N' v  ( D3 E0 N9 F5 Z+ q; L; U
assign#1 nodeA = xout;
- P" ?+ f, V% p. }' massign#1 outp = ena ? nodeA^sclk : 1'bz;
5 u3 r9 M7 u, R) v+ C2 S/ G' X
( E* E2 Y2 J+ dendmodule
* A( A+ Q1 I( e; W" a0 j0 K2 H5 z3 ^! u) B. y' b+ E
% e8 N! y  n' R5 @( H0 L) e) _& A
/ b/ V% m4 J  U. A1 Y6 w
`timescale 1 ns / 1 ns9 T5 P  R0 C% B! K
module xclk_tf();
" [. _6 N" B" T2 w, M/ v* T" V* A
3 K, }7 R% m3 I0 s8 H1 q! |3 b7 l: i// Inputs' C; |; I6 {% X  h1 J  l
    reg sclk;
' L) H1 T2 W% Y/ K    reg ena;
8 v+ N) ]8 F& }2 ?0 u, T3 X, @$ s    reg [1:0] set;- v( Z) }) {6 N, A- d  h

$ g3 t0 V6 y8 U4 V2 Q+ k2 d# G% L/ K0 |7 m2 {8 Y2 u
// Outputs; B. C8 f0 V1 o' ~! L" x7 E
    wire outp;5 u" o; [( R% u' T' m0 {5 k

3 u7 z6 j  n& b. _! C3 C' ^! u% B/ D3 A% ^7 {$ Z% w- V8 L, N

' ?8 }: V1 s. e1 ~    xclk UUT (
6 M4 x; P0 O0 S1 z" w        .sclk(sclk), 9 F+ c" Y! R# W. E) g! `7 j" q! G1 U
        .ena(ena), 7 ~4 w) w4 U# |! ^
        .set(set),
' Z# Y0 {9 V( v) x        .outp(outp)  D, l1 R' z* X+ l/ i7 e. g
        );
# E$ r6 `0 g  ?5 O# T) z, u( z. n

# e" |$ l" `+ n  w8 H: r  ^! I' `' S0 k2 J# V2 n, k( x5 [
    initial begin# }! o$ W7 B: E0 s1 f( ?6 m( j
            sclk = 0;; d' I6 @/ `+ t! i+ \
            ena = 0;
0 F- c$ E# v0 R. p8 U            set = 0;8 ?' T3 y- W1 j  i# N
    end
  P# Y8 L5 e7 i& d6 d" N
- c7 x7 O/ k2 c: F. J6 Q# h9 n
% i$ ?( h2 O: oalways# 5 sclk = !sclk;
5 n9 p  P2 q- d6 T/ g( s
, l9 ?% }7 ?0 \& qinitial begin8 D( n1 o$ V6 _0 m* G
        #100" A$ R  ?9 [8 k4 V) [) d* @6 g
          ena = 1;
, k* V; x. _) V; ]( @        #2000
0 M; o" G* B, E/ n# p* c8 f          set = 2;
$ G3 ]  A% A" b% b        #2000 $ W/ {4 H+ t, c- h  i6 f
          set = 3;) |9 s( [. m+ S* K6 b5 T
  #2000
3 N: Y& T- r4 v. g+ i  $finish;. }# d, T' d+ T) N+ J* L
end' C3 A8 c2 r; k  O; d! i7 h
endmodule // xclk_tf
26#
發表於 2007-9-10 14:49:50 | 只看該作者
這個有趣了
/ B. j1 U, S9 t* M) Y有simulation的waveform嗎?; A  y  h" {' L% G1 g( \% t: f& H& u
示波器量的更好~~~^^"
27#
發表於 2007-9-10 17:20:59 | 只看該作者
有附 test bench0 ~! O- Y: C( }4 h8 q
確實可用! 已實驗過,但我不會貼圖。' O! t. s4 _" n% [+ M! C
只要略加修改即可實現。
28#
發表於 2007-12-24 14:50:48 | 只看該作者
請問一下你是要控制LED在顯示方面的應用嗎??
+ b: P3 `5 Y1 ~) I; _- |
* O  y  c6 C7 I# x  X# J可以和你討論幾個問題嗎??
" H4 M" d- b9 v/ ]7 x
/ ^( S0 |, i! K/ a% O方便留MSN嗎??' ]  ~+ E% l5 ]
/ {6 T- G9 s; ~
感謝
29#
 樓主| 發表於 2007-12-24 16:35:41 | 只看該作者
沒錯...6 T" O$ S' V1 R2 d" l( ~
是要用在LED Backlight的....
6 l5 v4 Y+ r, t8 Z其實有問題可以在這個帖子直接討論..  u; N# C4 b; a, o  V
這個沒什麼秘密啦...
+ ?. l" Q- r- c7 j因為我已經申請專利了.....
30#
發表於 2008-10-4 00:04:50 | 只看該作者
嗯~~大大解答蠻詳細低~~~多謝喔~~~小第在研究看看~~~~~~~��
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-18 07:07 AM , Processed in 0.113514 second(s), 15 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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