verilog - 为什么我的反价值产生 StX?
解决方案
co
是 X(未知),因为它是对依赖于 的表达式的连续赋值current
,即 X。 current
是 X,因为您将其声明为 a reg
,并且reg
类型在时间 0 时默认为 X,然后您永远不会将其分配给已知值。
您的测试台总是驱动rst
为 0。这意味着第 8 行永远不会执行。第 10 行将在每个上升沿执行clk
,但current
将保持在 X。X+1 返回 X。
您需要正确重置您的设计。rst
在时间 0,您应该通过设置=1来断言复位。延迟一段时间后,您应该释放复位设置rst
=0。
initial begin
clk = 0;
rst = 1; // Assert reset
#20;
rst = 0; // Release reset
#10;
en = 1;
init = 1;
end
推荐阅读
- lua - 设置私有 luarocks 存储库
- sql-server - SQL Server 登录更改表名所需的权限是什么?
- wordpress - bbpress 代码显示主题总数
- node.js - 将值 [object%20Object] 添加到请求而不是请求参数
- twig - Patternlab / Twig 变量插值不适用于 json 中的字符串
- reactjs - 自定义导航器中的嵌套导航器?导致多个路由器
- spring-cloud-stream - Spring Cloud Stream 多个 kafka binder 配置恢复为默认 binder
- swift - 我可以使用相同的关联类型声明两个协议吗?
- android - 安装fcm插件后离子框架googleplay服务错误
- javascript - 无法从项目中的其他文件访问脚本标记中定义的变量