Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

[問題求助] clock 的duty ratio問題

[複製鏈接]
跳轉到指定樓層
1#
發表於 2008-3-24 20:30:52 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
如果想要在testbench裡面完成一個1/4的duty的clock: S2 F/ h9 `# ~8 s6 M, a2 h
code要如何寫?
: F' O, D* l9 i" e, C需要用迴圈寫嗎
( r+ i3 z+ b+ }1 g$ ]8 W
1 O. }- U4 N. Z# V8 H我知道 duty=50%是
- K$ x/ B6 g2 n% \! z  c1 x* Q/ j4 l! M3 b, X
always
, C+ w# ~& H$ b# S#20   clk=~clk;: c5 L1 T( R( {" z" z
initial   begin
+ z# K; r+ G  ]; v5 q- eclk = 0;1 H: d" K4 `: [) z0 y: ?
end
4 U0 W4 Z7 x/ Q, V) z1 f
$ s( F+ c! L2 i# o& {2 Z! e[ 本帖最後由 小人發 於 2008-3-24 08:45 PM 編輯 ]
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
7#
發表於 2008-4-1 00:12:23 | 只看該作者
#(500/(SYS_CYCLE*0.1)) sck = ~sck;
6#
發表於 2008-3-26 17:39:32 | 只看該作者

delay運算問題

`timescale 1ns/10ps% p7 ]$ a. x7 o
parameter        SYS_CYCLE = 12;$ e' ]  S0 q% h& }/ S3 [+ D
initial begin3 w1 a. N, t4 t( y* ]1 c
        sck = 0;/ l, W( }, w' M" g, V" h
        forever begin) \( b0 p: U6 k6 g
          #(500/SYS_CYCLE) sck = ~sck;
5 m% p2 O3 U# P: k        end& H8 G' p+ S0 A  M3 r
end       
9 a2 c# M# \# {5 O0 H結果sck為82ns的clock, 請問如何變成82.334ns的clock, 也就說怎麼做小數點的運算?
5#
發表於 2008-3-26 07:46:52 | 只看該作者
你的問題應該跟這位大大類似+ N+ I: ~7 u$ J5 a- ~" G$ M
http://www.chip123.com/phpBB/vie ... extra=page%3D5#zoom
) ~" i, i+ B" M; s" }: g7 e& g這是另一種實現方法
4#
發表於 2008-3-25 22:34:58 | 只看該作者
應該加一級counter , 以 clk 為 clock , clk_out 為輸出" C3 k1 ]/ Y# w( r; W
initial 時clk_out=1
4 K7 i' p# C! B- A) `$ v8 A數到1把 clk_out=~clk_out; ~6 Q- u# r0 b" r" `' S
數到4就 reset 並  clk_out=~clk_out
3#
 樓主| 發表於 2008-3-25 15:48:22 | 只看該作者

回復 2# 的帖子

#20   clk=~clk;+ y8 d0 ?6 u" S* q1 N1 o& g
#10  clk=~clk;
  z3 d5 E7 `3 R) K3 v+ g  I
4 f) z# x5 m; `5 w4 C. G1 V, v9 {版主寫的這兩個  應該都是duty=50%的頻率吧6 ?9 e) _' B9 v6 S* T5 s; C, t% }1 E
只是出來的頻率不一樣
% U' Z8 B1 y7 h# ]! {; Z0 [應該沒辦法達成duty=25%
9 ?  B) D, U- s/ ^還是說我沒看懂?
2#
發表於 2008-3-25 00:56:22 | 只看該作者
因為duty=50% => #20   clk=~clk;5 |- l* e! a4 g/ ]; k
所以duty=25% => #10  clk=~clk;
/ O2 Z6 o' S- u, d% Q6 k1/4的duty high , 3/4 的duty low ==> clk = 1;" U( [& m* i' ^8 o
所以這樣子改一下  j& f7 v+ i, l# E" O4 J
always
/ k/ s7 O6 V1 r' H; K#10   clk=~clk;
/ [( b' ?& j1 @8 x$ l( ?/ g; u8 ainitial   begin/ ]" w0 `( `0 S/ p1 p- I) V# F1 k0 k
clk = 1;
) i) _5 |( s, D; E( S. oend
5 _& X& n2 |2 \9 Y試試看
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-18 04:50 AM , Processed in 0.154520 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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