找回密码
 注册
关于网站域名变更的通知
查看: 251|回复: 3
打印 上一主题 下一主题

为什么我的modelsim仿真计数器不计数呢?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-10-9 18:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
module LED1(clk,rst,led);
2 ~/ v9 O1 |; \/ ?7 p0 e8 Y5 v6 j
input clk,rst;  Q# R4 M. K( H' ?
output led;
3 j! i8 I0 T; [
1 T7 L8 |3 g) b- l$ I% B' Pparameter time_1 = 27'd5000_0000;7 ^" `' K0 A. ]$ L6 @0 ]" H  y7 t3 @

  j( z# n% k8 ^2 }2 m* i9 s! N! kreg[26:0] cnt;
! A0 H5 \6 A. ]+ ^% ^: Q, d. areg led;, g4 B4 p% W( Y  r4 e5 m

" @- |# s& N: C: zalways @(posedge clk or negedge rst)
  N( b! Q$ k, }: R+ I                        IF(!rst)6 D& L% x; l9 C; q& G* H
                                cnt <= 27'd0;
3 ?. j) p: s/ v. T2 _  g5 H% a- F/ C                        else if(cnt == time_1)
  i& W6 S: o9 D: q                                cnt <= 27'd0;% P3 _7 a. |% T  [  [& j+ u0 o
                        else
6 G" @0 p2 d( Y! C5 {; v7 `7 x0 x; z                                cnt <= cnt + 1'b1;
& M6 j" C% H/ f. T  p                                
! k+ n( [* o# I6 m. H* aalways @(posedge clk or negedge rst)* M. V2 H1 e6 W0 t$ W
                        if(!rst)
" J- b+ w; |& m) A                                led <= 1'b1;
1 O! h. O/ z8 ?8 S2 \" @& v                        else if(cnt == time_1)6 A6 E7 o/ K( \+ N+ Q0 P+ O
                                led <= ~led;
3 r. U& F+ B) {) [9 }3 ]! y! q' W; O, ^1 ^                        
+ c8 S! g. W. \" I1 A/ zendmodule
7 l* f  e7 T- ]2 n8 e0 b7 u- o8 ^. B1 H3 u9 Z$ q1 H0 r
`timescale 1 ns/ 1 ns
4 X. Q( H/ B# g  o' l8 H7 Z3 |module led1_vlg_tst();
5 X! l! }  x% @2 n. b1 y4 sreg eachvec;
( }4 y/ t" [2 y& S8 t  z9 O' Freg clk;
3 U  S+ j4 i8 C; w- _, `$ j8 J# ^2 hreg rst;4 y" Q% r7 n' F
reg cnt;                                               ; Q0 C( l( e0 G, j( a7 i9 s! Z
wire led;
' X6 O3 C) J" v3 v                        
5 _* @2 [* l: }1 Bled1 i1 (  
* [4 k2 @0 f3 m# z' e        .clk(clk),
. D* H6 L! i* U        .led(led),
- \5 [: W: O2 t+ @. Y" S7 c; I        .rst(rst)1 _3 x3 S( y2 a3 m7 f( E1 h- @
);' E8 T) n3 `% j3 M
initial                                                
, T1 U$ f! Z" }! Z6 ~" e- D- }begin                                                  
# ~, _: p$ S8 J3 Y                     
6 q' i$ I. a! G, gclk = 0;
8 F2 P6 `. A( }5 a6 g, }8 [% arst = 0;
2 i2 H) X5 ^% |6 s' w, C! B8 r3 n#100 8 L3 {3 o& Y6 Y7 x
rst = 1;                                          
% Q8 Y, l" Z1 p+ oend  
5 _* ?6 ~/ L7 m4 c" I& x3 palways #1 clk = ~clk;                                                  
- o7 O  a- q% |$ d2 c' n( s9 Jendmodule
( G6 S! w6 v7 V- G& Z. t0 k+ x! ^7 W5 F

* }- O' X" N7 V: v6 Jcnt 一直为 x 不计数

, s0 b6 B3 B8 Y: o1 r0 H9 x

3 X# y! k4 b( M% \, l3 I1 I4 B  P/ m& R" z1 o) i) E; ]( h1 [# C
5 J  t6 Y! v1 d* T

; F) B( X6 C5 g. E' e2 U& N- V! W' E0 S; }' [' a1 F0 f
* ~, z+ s$ J2 i6 S! T" E
& d' i& e% Y3 A7 q! C0 E

& t4 n* H3 X3 I

该用户从未签到

2#
发表于 2019-10-9 19:23 | 只看该作者
在initial begin 中是不是要给LED进行一个初值赋值

该用户从未签到

3#
发表于 2019-10-9 19:23 | 只看该作者
在tb里面的cnt必然不会计数了,你LED1模块的cnt都没有输出给tb

该用户从未签到

4#
发表于 2019-10-9 19:24 | 只看该作者
修改一下if,initial begin 中LED进行一个初值赋值,然后就是你的仿真的东西错了,你仿真的是tb,这应该不是你想看的。你应该在modelsim的sim中tb下找到LED1进行仿真
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-19 11:51 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表