Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
21#
發表於 2007-6-10 21:50:08 | 只看該作者
... 這樣說吧
) ^3 O# I+ ^5 [- r& I# y6 v如果有 PIXEL CLK 就用它除頻
) ?$ E, i. }( H5 c2 r3 u如果有 HSYNC 就用它倍個幾次
# v3 i  G2 _6 Z2 [4 t9 a7 c+ W  T# ~0 j4 T
因為 PIXEL(DOT), HSYNC, VSYNC 之間有一定的倍數關係0 N4 d- L$ u  Q' u. j
& W, p0 @( `# @8 i1 u
   640x480@60Hz => 25.175MHz (39.7ns)# W, T7 i) q8 l. B' U4 d) y
   DOTx800=HSYNC, 39.7ns x 800 = 31.469us$ ^# t  m! L! w1 l5 m& w* n
   HSYNCx525=VSYNC, 31.469us x 525 = 16.52ms (60Hz)
& v- G6 e' h+ P9 x2 u所以這樣的CLK一定會和VSYNC同步 (詳見VESA Monitor Timing SPEC)5 v8 l9 B. G6 d% T' T* \

, V8 Q3 C" {0 X9 r接下來如果要VSYNC時不出CLK.. 那就用個AND閘吧 (看你用哪個MODE, SYNC有High或Low)' H8 Y/ L2 H* r$ b2 G- ^+ h' |

# H) }7 m  N* Y還是我想的清況和你不同呢?
22#
發表於 2007-6-11 15:02:01 | 只看該作者
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
23#
 樓主| 發表於 2007-6-17 11:12:57 | 只看該作者
原帖由 tommywgt 於 2007-6-11 03:02 PM 發表 ; p  ~/ ~2 u0 D5 }  M
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
4 g4 N5 `2 J2 P! h0 ]

' j6 }4 A0 G+ w  v0 Y: F( q; o% {  F7 G8 A1 ?  C4 i" {$ E/ p# R
# H7 ~$ \2 B. b4 U
嘿嘿....沒錯..$ a0 z3 t# M5 A
所以我現在還是用60hz去產生600hz..& F. E0 t' l2 E/ d8 B0 E
另外一個原因是因為客戶只會給我60hz的訊號啦...
24#
發表於 2007-6-20 13:39:55 | 只看該作者
不過我還是覺得也許會有更好的方法來設計這個東東的, 所以才會說介紹個人給之類的...哈
25#
發表於 2007-9-10 06:26:03 | 只看該作者
//可直接透過synthesis  tool用於PLD,FPGA不可 LUT delay則要採其他方式。% k+ o& K! f7 W# i7 w  {
//所有註解都要保留
- U; M! P: I; p+ q% @9 ^; J  L" H; m" x& a9 `
`timescale 1 ns / 1 ns
. b2 X* |2 p$ @3 O" ]module xclk(sclk,ena,set,outp);
4 q3 ~. k) f5 [; _: s% b/ ~+ g6 Z

9 T% f( H; g; E( D" j9 J* U$ o. X
& y4 n; ~1 ~; \: r, Jinput sclk,ena;8 t1 a, \( @# e; k
input [1:0]set;
, D# _" I% v( Moutput outp;
% r* a5 M* E2 }3 @9 `4 f% o# e* g+ `! b
wire outp;  }/ ^3 i, I, T1 |$ B3 e$ J
$ A7 s6 }) c+ |/ L6 s! F
1 h0 G9 M9 ?$ f$ I3 V& b4 k

" ?# ~- G* r) a- g/ x/ @" r9 t/**** Node preservation for nodeA **************/+ \* n, y  J+ E+ H

/ \& n9 s( M! L3 a& v+ c/ }$ K( @- Q, b
//exemplar attribute nodeA_5 preserve_signal true( I4 I' |8 u- a5 L3 U- ~2 R
4 j7 H+ B, p* Z4 e5 ]# Q
//exemplar attribute nodeA_4 opt keep
, X7 C2 C3 e: Y* `1 Q+ W7 f3 }3 ^- i0 ^- X, @4 K. q! q
/**** The following comment form also works ****/
( w* k) T% p# y. t: v, Q5 J
$ j! ?& J8 a5 A6 t0 t* ^//exemplar attribute nodeA_3 preserve_signal true
/ ~$ C) [3 e+ p  @6 e" Z- K" T8 T2 D# P8 y5 n. h, f; J! q; O! M" D
//exemplar attribute nodeA_3 opt keep
. [0 O1 d* _( @. d5 _1 I
; n9 b  m/ y/ Z/**** The following comment form also works ****/
# j2 V! j4 \) a0 S; a: p( b" F' _3 x- F. W+ R  O5 S
//exemplar attribute nodeA_2 preserve_signal true
+ \5 T5 O) W! b+ ]7 O+ w  [# f; a/ [# Y$ t' B
//exemplar attribute nodeA_2 opt keep4 G4 @4 s2 w+ `1 _1 b3 {
+ K, H' ~% ~: U4 p; Q" Q, t7 ?
/**** The following comment form also works ****/: N3 U4 }% X5 o) n3 C% v
$ @' E8 r5 P6 z* H7 v2 O
//exemplar attribute nodeA_1 preserve_signal true
$ P, c* ]8 \; T# _! ?1 t0 y( R7 r2 L" W1 H
//exemplar attribute nodeA_1 opt keep0 S# C1 x1 d+ M& o) Q

% g  m7 ]$ f( w: r4 n* I
/ z$ \9 I: u( V5 b2 h4 W/**** The following comment form also works ****/
1 l, [+ s" I7 P' M$ B" k% U
+ @1 t$ N6 e( C8 O8 ?% w* b4 k/ |$ L/*exemplar attribute nodeA_0 preserve_signal true
$ _( k1 o8 B* U+ P. l
! N  \, a2 p5 jexemplar attribute nodeA_0 opt keep*/ 3 V4 Z% q) ?$ m) v4 N
) p) t! K: Q3 @
* I' @5 P1 ]$ L# q- P
7 o- v4 ~2 x3 D

5 w2 w4 r7 R9 @1 U( N' a' p
# \+ s$ T6 d/ G, e5 R, t- ~# q2 W% N! D! U  f" i6 o& E

' \" m: }& q/ I1 r
8 O8 P7 T+ ~. J/ @5 s  I; Y$ Q) }! j! y% ~( s

7 h  X$ ^! _3 ^0 swire nodeA/* synthesis syn_keep=1 opt="keep"*/;6 h% x( D. Y3 r) m( y: [3 o
wire nodeA_0/* synthesis syn_keep=1 opt="keep"*/;8 |" O3 D0 B+ @$ c: i; [" I+ A% b
wire nodeA_1/* synthesis syn_keep=1 opt="keep"*/;
- d. ~! U, {( |- Mwire nodeA_2/* synthesis syn_keep=1 opt="keep"*/;
* f+ H  N1 ~* T5 ?wire nodeA_3/* synthesis syn_keep=1 opt="keep"*/;
% `5 y8 t: i6 Vwire nodeA_4/* synthesis syn_keep=1 opt="keep"*/;( b9 S0 c, A! E8 b7 b9 h$ I

( E- U8 n9 y. {. F1 ?& o2 Oassign#1 nodeA_0  = sclk & ena;8 S2 ]; D3 E6 y& J( Z" {
4 C3 L" v8 Z' E0 a8 @; x
assign#1 nodeA_1 = ~ nodeA_0;( x0 ]6 Y% I- y" t
assign#1 nodeA_2 = ~ nodeA_1;
* n$ v9 u5 O; g- _% oassign#1 nodeA_3 = ~ nodeA_2;1 M1 A' E2 g, W3 @# ]) \( E2 [  U
assign#1 nodeA_4 = ~ nodeA_3;
7 I; u0 S3 {. W% {# N; e4 I. u  e( X9 G8 v; u" ?
reg xout;5 ?/ i# K& n( Q! E( Y$ z' X

' L: h: F6 v: n" Y8 Z! Ialways@(nodeA_1,nodeA_2,nodeA_3,nodeA_4,set)# a9 j5 b' M& p3 I
  casez(set)
$ D; A6 j, g, a2 b    1: xout =#1 nodeA_2;- b" r# o1 A- ^) ^" H
    2: xout =#1 nodeA_3;4 V% @- J! a0 Y+ P/ p1 Y* }
    3: xout =#1 nodeA_4;
; P7 Y2 \* v! b5 c; V' v2 v    default: xout =#1 nodeA_1;
0 M: p  n) ~  J; y/ m$ z  endcase  C5 c: K& l) ]0 H5 r3 |- ?
  7 w+ E, p& a9 v& M2 z# Q
assign#1 nodeA = xout;: {; L7 w( `5 `0 `
assign#1 outp = ena ? nodeA^sclk : 1'bz;
) b9 b3 `& N% Z7 T# H- `$ }) f9 C- z5 o% V* x  @6 ~7 p0 e) {+ g: F
endmodule) t5 L1 o* y1 w) V

4 h' f) h- `8 S9 N  A5 T. Q; A1 u, @3 p0 k( [) f# F3 H  m7 p

% E4 e1 k9 _2 U3 v, C# _+ h`timescale 1 ns / 1 ns
# x% b& p+ A/ \module xclk_tf();
) S& A5 L2 x; i4 d$ M0 Q2 s- p1 Q
/ P% k3 b1 b) S( p// Inputs
" E. f, @6 N4 B- F0 ?    reg sclk;
' P8 q$ [+ x% b+ F3 w7 U8 q    reg ena;
5 _* P( Q4 A4 d+ m/ p. W; e" J    reg [1:0] set;
/ r* K. c8 j! `3 t# s
5 z' M( Y; N& K( s2 r
. y! K/ O, c" t// Outputs
7 |/ }0 y9 n* _. Z5 q    wire outp;  R  E4 O* z' {2 S# F; v3 W
* z" [% |% s+ X
) W% U8 D7 E3 s+ C4 D

  y% f& t8 o  o    xclk UUT (
* J: B, H1 m0 v; E" p/ }        .sclk(sclk),
6 ]/ |" v, [& v- s        .ena(ena), # s- _/ W% n. f
        .set(set), 1 `' }+ j" E0 F3 y( V
        .outp(outp)
' m# F6 D1 z; X8 R        );0 H, y5 r7 _% u. k/ W7 I# q- A

+ R7 K& V; w6 o" Q' U# |* w) }$ c
2 B$ H$ k) d0 \9 O
& {) H% H" `7 \" _    initial begin
' y9 g& x! w, Y            sclk = 0;
2 x& @" j' T; f: O            ena = 0;
4 \5 H/ a+ A& [7 N) f/ k0 H            set = 0;
! ]9 G' i% k# Y% }    end
' E! Y6 ~8 ], f+ @  g3 S
: M" i! o$ q3 T  i9 r6 Q6 H1 [8 D- h. e) {0 |! w" z
always# 5 sclk = !sclk;
( U2 F( A6 ]/ B* D: I* ]9 _( c2 p  j9 u( `
initial begin
' N  I% `) k5 i        #100
, z+ K; H* x7 s; B          ena = 1;
1 [$ ?! G# C# E1 y        #2000 * o& y: B, ~; i' T/ }0 ?0 y$ V
          set = 2;# U3 b  [; z' C, q6 n8 j5 l
        #2000
% O9 C. c% d! W; g( Y          set = 3;
4 J1 ^9 e# T/ z% i4 n  #2000* w3 s& I+ r1 P4 }
  $finish;% C3 k% M3 ^6 t  n7 Z% t
end
( j# v! L6 h( \1 @# Yendmodule // xclk_tf
26#
發表於 2007-9-10 14:49:50 | 只看該作者
這個有趣了
. H4 U8 [. ?' G# ?3 Q2 f, l# W有simulation的waveform嗎?" r' F9 {$ m' n
示波器量的更好~~~^^"
27#
發表於 2007-9-10 17:20:59 | 只看該作者
有附 test bench
5 u+ ^- k2 |* B# J確實可用! 已實驗過,但我不會貼圖。
* E; m- g- A( l3 L7 M只要略加修改即可實現。
28#
發表於 2007-12-24 14:50:48 | 只看該作者
請問一下你是要控制LED在顯示方面的應用嗎??/ x; U9 h. D# g# U  D

. C( n5 S0 [: w可以和你討論幾個問題嗎??
# P; m  `3 t9 S4 ?' M& }4 q9 n; M/ a8 ]. [4 B
方便留MSN嗎??$ j* P" @2 `7 r' _# ?

" ?; _; T* W: C1 f3 b感謝
29#
 樓主| 發表於 2007-12-24 16:35:41 | 只看該作者
沒錯...
) K: T, X. ~# j是要用在LED Backlight的....& e% b( s( [: G% b( X; z9 U
其實有問題可以在這個帖子直接討論..
0 q  Q* ?  z' Z, X& S2 E2 ]  T( A這個沒什麼秘密啦...
, C0 s+ t) Q( J. d1 i4 q  r因為我已經申請專利了.....
30#
發表於 2008-10-4 00:04:50 | 只看該作者
嗯~~大大解答蠻詳細低~~~多謝喔~~~小第在研究看看~~~~~~~��
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-5 06:48 PM , Processed in 0.136517 second(s), 15 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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