FPGA编程注意事项
来源:互联网 发布:java中的类命名规范 编辑:程序博客网 时间:2024/06/04 01:07
信号的产生及always块使用注意事项
1.1 不要在不同的always块内为同一个变量赋值。即某个信号出现在<=或=左边时,只能在一个always块内。(详细解释见 Verilog HDL与数字电路设计 P38)
所以注意,在产生一个信号时,所有产生该信号的条件都应放在一个always块内考虑。
1.2 不要在同一个always块内同时使用阻塞赋值(=)和非阻塞赋值(<=)。
1.3 使用always块描述组合逻辑时使用阻塞赋值(=),在使用always块描述时序逻辑时使用非阻塞赋值(<=)。简单理解可以是,在电平敏感的always块内使用阻塞赋值,在边沿敏感的always块内使用非阻塞赋值。
1.4 任何在always块内被赋值的变量都必须是寄存器型(reg)。即<=或=左边的信号,必须是reg型,<=或=右边的信号可以是reg型也可以是wire型。
另,端口声明中被声明为input或inout型的端口,只能被定义为线网型(wire);被声明为output型的端口,则可以被定义为线网型(wire)或者寄存器型(reg)。如果不定义,则默认为线网型(wire)。
1.5 always的敏感列表中可以同时包括多个电平敏感事件,也可以同时包括多个边沿敏感事件,但不能同时有电平和边沿敏感事件。另外,敏感列表中,同时包括一个信号的上升沿敏感事件和下降沿敏感事件也是不允许的,因为这两个事件可以合并为一个电平事件。
阅读全文
0 0
- FPGA编程注意事项
- FPGA-开发注意事项
- FPGA 调试注意事项
- FPGA编程语言
- 自定义FPGA编程规范
- 编程注意事项
- 编程注意事项
- 编程注意事项
- 编程注意事项
- 编程注意事项
- 编程注意事项
- 编程注意事项
- 编程注意事项
- 编程注意事项
- 编程注意事项
- FPGA管教分配问题及注意事项
- FPGA开发基本流程及注意事项
- FPGA设计中的编程技巧
- ip(点分十进制 <==> 二进制整数)之间的转换
- Hibernate的二级缓存和查询缓存
- LeetCode动态规划
- MC9S12XEP100 SCI(UART)驱动程序
- Unity Learning for Day 20
- FPGA编程注意事项
- char与signed char, unsigned char的区别
- 415Add Strings
- 6.列表
- 学生、成绩、课程表,要求查询001课程比002课程成绩高的所有学生的学号解决办法
- 《剑指offer》-第2章(2)
- MySQL重建或修复表或索引
- 在windows上安装和启动Elasticseach
- 树的非递归遍历