verilog - 在 Verilog 中进行闩锁时,我们是使用阻塞语句还是非阻塞语句?
问题描述
在verilog中制作闩锁的正确方法是什么?当我尝试在 vivado 上合成两种方式时,两种情况下都会生成锁存器。我试图了解我们使用阻塞语句还是非阻塞语句?
i) 总是@(enable,input) 开始 q <= input; 结尾
ii) 总是@(enable,input) 开始 q = 输入;结尾
解决方案
使用阻塞分配。
对于综合,仅对边缘敏感时序逻辑使用非阻塞分配。
推荐阅读
- css - CSS Responsive 对我的网站来说很奇怪,宽度自动
- docker - 具有 'exec' 权限的 Docker --mount type=tmpfs
- javascript - 更改猫头鹰转马时间
- python - 如何让 Python Infinite while / else 语句中断?
- ruby-on-rails - 无法在 Bigsur 上安装 mysql2 Gem
- selenium-chromedriver - 如何为具有相同名称的多个输入设置值?
- c# - 使用图像而不是文本的 Visual Studio 注释
- javascript - 在多个值的对象数组中搜索
- php - Symfony 表单类型从另一个实体添加查询构建器
- javascript - 两个 Angular 应用程序之间的通信