Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
21#
發表於 2007-6-10 21:50:08 | 只看該作者
... 這樣說吧
3 |$ |" q( J$ K6 _( Q如果有 PIXEL CLK 就用它除頻
* B+ ?- f7 V9 Z9 }  @: L. q7 g% H* K如果有 HSYNC 就用它倍個幾次1 x8 ?' c4 C7 ]/ m, X* v0 V+ k: Z4 ^& x
8 S' g  R* c6 ]8 `1 l+ @
因為 PIXEL(DOT), HSYNC, VSYNC 之間有一定的倍數關係4 ?- y9 Q; B6 q/ c, A

9 T) v6 |8 ]: c5 J$ A+ a3 [8 Q# A; s# Z   640x480@60Hz => 25.175MHz (39.7ns)- b! t* V& V! F+ U3 c5 G
   DOTx800=HSYNC, 39.7ns x 800 = 31.469us
9 h- ]2 m! O  ?) M/ n  m$ S   HSYNCx525=VSYNC, 31.469us x 525 = 16.52ms (60Hz)
$ ^( X  n0 S& \8 V! J所以這樣的CLK一定會和VSYNC同步 (詳見VESA Monitor Timing SPEC)
+ I% q- R+ A( p! v& v* @" P' Y6 u$ j0 O, [
接下來如果要VSYNC時不出CLK.. 那就用個AND閘吧 (看你用哪個MODE, SYNC有High或Low). d) C: E  K3 }' W2 b: p1 [0 ^
4 |% M0 Q: S/ \5 j$ G
還是我想的清況和你不同呢?
22#
發表於 2007-6-11 15:02:01 | 只看該作者
這樣子做出來的phase error會很大也, 要先看規格的要求一下下
23#
 樓主| 發表於 2007-6-17 11:12:57 | 只看該作者
原帖由 tommywgt 於 2007-6-11 03:02 PM 發表
; t$ {$ M  M7 n* Z" Z, T! H這樣子做出來的phase error會很大也, 要先看規格的要求一下下

# {$ E5 v* y2 Z/ ?
: v. J# ]% N. U. t' n. g: [$ I0 w5 c8 Y$ z' n( B% _. W

4 {/ }( d. g7 A嘿嘿....沒錯..2 D; ^% t! g6 [# K
所以我現在還是用60hz去產生600hz..' a% T, i! V8 M7 R: [& W0 T% [
另外一個原因是因為客戶只會給我60hz的訊號啦...
24#
發表於 2007-6-20 13:39:55 | 只看該作者
不過我還是覺得也許會有更好的方法來設計這個東東的, 所以才會說介紹個人給之類的...哈
25#
發表於 2007-9-10 06:26:03 | 只看該作者
//可直接透過synthesis  tool用於PLD,FPGA不可 LUT delay則要採其他方式。
3 R% U5 ?# ^6 W% j5 F& u//所有註解都要保留- c3 G' j7 E9 M3 L. s1 l8 x

$ }: Z3 A) h3 x5 L`timescale 1 ns / 1 ns
( O* @. S' D2 E* Zmodule xclk(sclk,ena,set,outp);3 M" p6 w; ~4 a' }/ Z0 w

8 ]; c4 h& C. R+ [3 c" L! [ # O% b# e0 D' y+ z- P/ J2 ~9 b
7 |& {" C5 x9 q' _6 m; Y) S
input sclk,ena;
/ e7 f- |/ S  s- j, k/ Tinput [1:0]set;5 Z- q" K0 [4 N3 `
output outp;
9 @5 k$ Q" N% z0 c- S  a& p# u2 x% Y
# V5 N4 V% @/ }$ ]wire outp;
6 A. ~1 W, U- V2 R1 N
! S" \$ c% t. H2 A; N
/ ^8 E/ v7 U- ]0 f- a  y+ L3 |& D( ~  U4 B: T/ p: \
/**** Node preservation for nodeA **************/) ^" x. f0 J+ ^$ q/ z$ e3 m

9 `7 e" w" d* A; K, U* Z5 a) @$ M% b; E
//exemplar attribute nodeA_5 preserve_signal true
9 e' [; j2 \2 [- }& Q4 q! {
" R1 v# m: ^* S( D+ R//exemplar attribute nodeA_4 opt keep: m) s! d1 A  m5 ?" h1 |

' i7 f0 K, S+ c. q2 h' S: ~+ u6 z/**** The following comment form also works ****/- p- u' O7 x- c4 W# O- M
  @% N4 B8 C9 u- w
//exemplar attribute nodeA_3 preserve_signal true" g& q. L) k, G  a
- m! q6 {  o  _, T) I5 k
//exemplar attribute nodeA_3 opt keep
( ]- C; F1 ?, X5 q. t1 r* |% j2 M& w" ?0 j; W% U
/**** The following comment form also works ****/" _+ J3 n: i8 l2 z  k2 j" m3 w$ n9 q

  ?$ j, S+ I- k1 L, O. [//exemplar attribute nodeA_2 preserve_signal true, z% }  D0 b* i5 L4 |

; p! A, ^7 m, `, K# h//exemplar attribute nodeA_2 opt keep" V( j3 ]: a5 I. n5 J  @
4 C% p" ]' U9 M! u4 L
/**** The following comment form also works ****/+ P( q/ L3 w! y2 o& a1 E. B6 H/ L
' D: o4 c3 }- h# U
//exemplar attribute nodeA_1 preserve_signal true
, @# a: }) ]7 J/ {' D; c2 m, {  e7 Y# a! q/ ^9 ?+ R
//exemplar attribute nodeA_1 opt keep8 N7 ~4 x+ P3 g' Z( o/ G* p

  S2 B: m9 K1 E2 }3 _$ \! T) c2 L& n: {! [% x/ \/ ]& F9 b1 l2 n5 p
/**** The following comment form also works ****/
1 n9 K6 Y  L$ }% ~5 B: P
" C2 n8 x1 v* N6 J( v) ~0 M1 t0 r) ~/*exemplar attribute nodeA_0 preserve_signal true
8 P! R  u: _! e# M# c3 Z
& |5 k" \# d8 h- o/ M% d; b- zexemplar attribute nodeA_0 opt keep*/
2 _6 a& E  [& H' ^5 k  n1 X: X& Y+ b4 v7 i6 U4 R+ r& E, C

, L: s' t5 h4 G
% t! t0 P9 r9 H" U  N$ K
  l! _: R# G, M1 z7 Z4 s' v" |$ r2 W6 l
2 ~) K" U  R3 p- e
0 i2 }% g9 r- `, m9 z

9 g; |* {5 w- o% t6 P! {$ R# C( A, @( R, t" D
% u4 W: T6 R% U
wire nodeA/* synthesis syn_keep=1 opt="keep"*/;; a! R) n' \" u! s7 n4 x1 I5 R
wire nodeA_0/* synthesis syn_keep=1 opt="keep"*/;% D1 g$ J/ v- ?  ]. n; @+ g
wire nodeA_1/* synthesis syn_keep=1 opt="keep"*/;% s7 j' c2 ^3 U5 ?
wire nodeA_2/* synthesis syn_keep=1 opt="keep"*/;0 T' W6 _+ i6 R# P5 N+ e! M" T
wire nodeA_3/* synthesis syn_keep=1 opt="keep"*/;
7 t( x$ K( R( vwire nodeA_4/* synthesis syn_keep=1 opt="keep"*/;
( n  F, X8 u, K4 w
+ q" y& k& ~) rassign#1 nodeA_0  = sclk & ena;3 w5 M! W8 I& q( i: ]4 q* e
' {$ z8 R( x0 M: }. a. s
assign#1 nodeA_1 = ~ nodeA_0;
- j( a( n8 z) J" \& Xassign#1 nodeA_2 = ~ nodeA_1;, S+ L1 P1 E' n5 z- z
assign#1 nodeA_3 = ~ nodeA_2;7 U0 i2 \# }  m$ s& ?2 p$ j+ U
assign#1 nodeA_4 = ~ nodeA_3;  S9 n3 q0 ~% Z0 D/ w( _# c2 k; q# ^! J

! u4 S3 N% B1 i/ L# i2 mreg xout;
4 ~4 m$ Q. V% Y! B$ R' a8 x# Q
, A/ h2 A* M$ t' ^: S8 Nalways@(nodeA_1,nodeA_2,nodeA_3,nodeA_4,set)
/ [, v& ]3 O' x0 K* `! A  casez(set)
% O0 X. u( |8 B    1: xout =#1 nodeA_2;' T5 m( v, @5 F; [
    2: xout =#1 nodeA_3;
* X- Q3 y) e4 L) k' h' o    3: xout =#1 nodeA_4;$ i4 t. {" d' u2 f3 Q) Z/ r- E
    default: xout =#1 nodeA_1;
/ i4 O/ A4 M6 h" p% ?; V- Y  endcase' l( h  o; p" q
  
+ S! n. o6 A1 T# a- a9 \  sassign#1 nodeA = xout;
1 I6 \/ e# `3 H, V& K. Z/ n1 N& Bassign#1 outp = ena ? nodeA^sclk : 1'bz;
7 F* t, ~4 w$ P. ?' g4 Y' I3 |) i- z; A& w% E
endmodule
- z; i% E2 G6 A: p/ }" {- _* r
' D% o; `  {+ @9 w& l. ^5 _, z4 s0 z3 L% C" a4 T, r  `

+ ?  a. ~& s$ l+ L- I  N( m`timescale 1 ns / 1 ns
$ y0 [+ p& `3 u/ ?8 e' C, emodule xclk_tf();9 L( Q5 d" ?) Q( |2 p% `3 Y
, S1 I$ L7 ^& w5 M6 @; m
// Inputs+ {) e8 x  {6 r' W$ R5 o
    reg sclk;* R$ N5 ]9 B1 q2 w6 r! c* ~$ G
    reg ena;
4 @- _( K% m& v; @% q& m' e9 S    reg [1:0] set;
5 H# c& K/ b5 Y) X, Q# U3 j# X" `$ z! @: }8 x! g  E# z

. r- t8 k7 b  k8 z) v9 ~. O+ O// Outputs( J. ~2 y' z7 Z8 T) k7 `6 S
    wire outp;
6 M; u9 [5 s( `, z" p' t9 Q6 p. q5 G0 [! f
, X# v1 E7 c6 h- e, Q
7 [" m: J) B# [2 c4 t5 _/ B" }, C
    xclk UUT (
1 }1 C( E$ t1 i/ v  m        .sclk(sclk), + m. w0 Q7 J/ T! Z
        .ena(ena), 8 X1 i/ ]' |3 w8 i; }  d
        .set(set), ! _" `4 A: [/ \) s* Q& M' j
        .outp(outp)
# o: B$ |  l0 f" A        );. N! e" x% |1 n, U% r8 ~; Z

' ]+ O0 S) k# t0 w* o8 a* ?8 S0 v; W9 W1 ~- u( c

: V* U6 F8 O" ~; m/ |& X    initial begin( O: K- i# t2 ~; U
            sclk = 0;
! u( p5 ?* j/ ~4 C5 v' \. j, ^            ena = 0;
# W: n( T% B0 A1 c+ w% h            set = 0;
* g7 K, q, A5 o    end
! s& U8 Z) h/ t( s1 \# m- j- o: e2 J) Z' o

( s+ U5 l* y% walways# 5 sclk = !sclk;4 q0 @3 r5 P" T; k; S, S

1 h. M- D5 X  C- m1 y$ ?initial begin
/ `: m  O; l. P5 ]# k        #1008 c! M! b: I) n) _; d# s/ t
          ena = 1;7 O" D3 s* n# M3 t& @3 {& u4 h
        #2000
3 i* V0 n0 E! W          set = 2;
2 F: Q" ]6 F/ {        #2000
$ A1 ]- F( f# _3 }' W- V          set = 3;
% ~: g& C% ^; p# J/ c5 X4 T  #20005 S& s( i5 j3 V, M% {7 `
  $finish;# W# ?- O5 n( _- w6 I: w
end/ U0 G0 u) V/ k4 {: W& v
endmodule // xclk_tf
26#
發表於 2007-9-10 14:49:50 | 只看該作者
這個有趣了* V0 X. o7 X; i% H7 H
有simulation的waveform嗎?5 i1 Y5 v8 h5 x
示波器量的更好~~~^^"
27#
發表於 2007-9-10 17:20:59 | 只看該作者
有附 test bench
& g$ i4 P1 T4 w; f確實可用! 已實驗過,但我不會貼圖。
- G; T! A8 g/ ^% q只要略加修改即可實現。
28#
發表於 2007-12-24 14:50:48 | 只看該作者
請問一下你是要控制LED在顯示方面的應用嗎??
) U; V8 x1 A% p2 j% E) r2 d
8 x2 F# e+ w( o0 N2 n! L$ I# |可以和你討論幾個問題嗎??
2 M, B' E5 m& G8 X0 f/ i3 P5 b% q3 ~' O% q6 N
方便留MSN嗎??
& L6 ~/ }' q) t; o
- _* }8 D% m7 i' Y# R感謝
29#
 樓主| 發表於 2007-12-24 16:35:41 | 只看該作者
沒錯...( K5 d# F9 U! P
是要用在LED Backlight的....
( d  c. p( L0 a1 c' W其實有問題可以在這個帖子直接討論.., L' ]- h& v% w" e+ ~2 D
這個沒什麼秘密啦...  F& V3 P+ }% I% h( [+ X! o
因為我已經申請專利了.....
30#
發表於 2008-10-4 00:04:50 | 只看該作者
嗯~~大大解答蠻詳細低~~~多謝喔~~~小第在研究看看~~~~~~~��
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-15 08:18 PM , Processed in 0.123016 second(s), 15 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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