Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

[問題求助] verilog clock generator question

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2013-10-29 16:14:19 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
Hi
" a4 N: Q$ p# }) `/ F6 l1 |# q* x' u/ P
My clock generator is as follow
) P! }' q* Z* D
9 o# G1 W4 ^9 n* a0 T8 e`timescale 1ns/10ps, `' Q+ X8 ^3 q% X
4 x8 \% ]0 R- z/ O/ [6 X
`define period 15/ Y- P3 f5 J2 p

4 o3 u  z6 O5 k3 K, Z3 Amodule test();
% F) {9 R8 q9 ?+ ^4 w/ Freg clk;
; _4 h8 U! |: G2 J: p' `! H; t
+ B$ m3 w* Y+ ^4 P5 vinitial begin
6 t$ ]  H3 g! w& [clk = 0;
- ?. D! x3 q7 m( X# d# {, Xforever #(`period/2) clk = ~clk;
* A7 P2 a6 t; p* S4 ]/ Mend2 Z3 G# d0 b$ c: s
# V( F' u( U" `3 P5 o( J2 A7 |3 r* b

: j$ M$ n3 j7 j+ H# kBut i check the waveform the clock period is always 14ns.4 x$ r( n$ y! d( m* h: l# `

1 |9 L$ G4 _0 J6 x- R: [; [Could anyone help me the question ?$ m  h' Z  w% X9 h8 {! \+ f
! Z# F( R. b0 v! u7 e8 Q
Thanks, ]* L+ E( [5 l- d
5 U* q1 M  O1 t7 f
endmodule
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂3 踩 分享分享
2#
發表於 2013-11-16 13:04:32 | 只看該作者
本帖最後由 card_4_girt 於 2013-11-16 01:21 PM 編輯 - }% i8 A5 {4 h/ v1 [' @

/ B/ P& s1 k+ Q$ wverilog好像不能這麼做
5 [( F" y6 u1 K9 @' ?  P) L" r因為你的period = 15
# m1 E  g( |0 d7 S& m當使用period/2時,他也只能取最接近整數
% B1 y1 @7 R3 W$ P所以就會造成你說的這個現象(period/2 = 7而不是7.5)
# S. B( y$ h& a  B
1 Y6 c% k8 P  i$ c網路上是有人做過週期2N+1的波形6 x( t/ t8 ]' Y7 B" q) r
建議你先去爬文看看( y6 Y4 a+ G7 d# o9 Y$ F% z
這種半週期N+1/2因為含有半整數1/2的部分,要事先做處理
& \  @* I0 L1 ?5 b8 }6 n8 H4 q( X  C3 w) m0 x1 v; _( a4 ~
或是就乾脆改程period=14也比較簡單: O" d0 T' b6 P; Q) s+ `' n" `
! u/ R2 S9 c4 L$ k
不知大大有何理由一定要讓period=15不可?
3#
發表於 2013-11-16 15:06:17 | 只看該作者
抱歉!
. T" _6 G2 U# k( p& I我好像誤解了你的問題
: B$ ]2 b: a/ F真正原因應該是x/2的分母是整數,所以結果也會是個整數
+ x- j8 J. E! z剛跑個例子試過: Z1 M: j* `; P% B
也許應該要改成+ i1 Q! B) n# W3 M4 _6 v
forever #(period/2.0) clk = ~clk;
7 ~) T/ |. ^6 N4 J0 o$ _1 ?- }$ Z. W8 _6 q9 `3 i/ N/ ?
forever #(0.5*period) clk = ~clk;, u: n0 D) s6 U4 j) P$ X

) s6 a9 G, D8 p  [1 F. m不過精準度應該調到100ps就可以了,不用10ps% Y: N" T& g# m0 X1 u
也就是 `timescale 1ns/100ps
1 y' f3 i5 f- @& b6 X1 I0 q
* B& A- W2 i: [8 q8 p+ H如果還是沒辦法解決,就去找看看怎麼定義半整數,或是就乾脆改成period/2是整數的格式
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-18 05:18 AM , Processed in 0.110514 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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