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

程序问题分析解决方案分享

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-6-4 07:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
! {$ R  Q, [5 Q; }

程序问题分析解决方案分享

刚入门的朋友编写了一个简单的程序,出现如下问题:

  module blocking(
1 p) D( Z' P) R% X+ W                 din,      //数据输入信号
9 T$ \) ^9 r- `# ~& W; N% u                 dout      //数据输出信号
& a8 y; Y5 p1 p3 C                );
$ v- L% Y. l! V' O1 h. t  input          din;$ u* f, P. L* ]0 X) g! K0 O: u) E
  output         dout;9 R5 t0 N% V2 I0 r. B) `6 c+ d
  * T8 N1 g- C7 {7 n$ w2 s
  wire           din;! K8 Z# V: n4 p) S5 q" w
  reg            dout;     //数据缓冲1 O9 ^4 Z( ~& r! U
  reg    [1:0]   temp;     3 r4 @0 K: w" E! S
  - i* }5 l: S! N1 I
  always  @(din)- T' b: |5 T4 h0 M: V: [5 u
  begin
4 h5 G9 n( j# ^1 m     
* V& Q# W8 A3 ~   dout=temp[1];
$ }0 [. T7 ~$ f7 A5 t     temp[0]=din;' d( k. }- \; ]7 P2 S9 H, D+ O) x# M
     temp[1]=temp[0];  3 |, u  ?5 z6 m) b
  endmodule                 & X$ c3 o/ e: N. u
Warning (10235): Verilog HDL Always Construct warning at blocking.v(15): variable "temp" is read inside the Always Construct but isn't in the Always Construct's Event Control

& C( o& S! r3 @9 u# J# W2 Y

程序编译完全通过,出现警告。

警告的意思:变量temp 在always 语句中总是读,但是没有在always的敏感变量中。

1 S% w# X3 a6 c$ T

解决方案:always  @(din,temp)

+ P1 h. E7 c# s: F# j

always模块要求所有的敏感变量都要出现在@后面,避免锁存器出现!


: H5 Y; E3 s! o% d% x" u+ c: a; c, q

该用户从未签到

2#
发表于 2019-6-4 17:37 | 只看该作者
thanks for sharing
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-4 18:11 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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