- 0
- 0
- 约3.47千字
- 约 3页
- 2026-02-13 发布于北京
- 举报
子
Verilog编程规范
1.编程规范重要性
当前数字电路设计越来越复杂,一个项目需要的人越来越多,当几十号设计同事完成同
一个项目时候,大家需要互相检视对方代码,如果没有一个统一的编程规范,那么是不可想
象的。大家的风格都不一样,如果不统一的话,后续、重用等会有很大的,即使是
自己写的代码,几个月后再看也会变的很陌生,也会看不懂,所以编程规范的重要性显而易
见。另外养成良好的编程规范,对于个人的工作习惯、思路等都有非常大的好处。可以让新
人尽快融入项目中,让大家更容易看懂您的代码。要做一个好的程序员,一定要注重细节!
2.工程组织形式
工程的组织形式一般包括如下几个部分,分别是Doc、Project、Source和Sim四个部分。
Doc:一般存放工程相关的文档,包括该项目用到的datasheet()、设计方案等。
Project:主要存放工程文件和使用到的一些IP文件;
Source:主要存放工程的rtl代码,这是工程的,文件名与module名称应当一致,建
议按照模块的层次分开存放;
Sim:主要存放工程的仿真代码,复杂的工程里面,仿真也是不可或缺的部分,可以极大
减少调试的工作量。
3.文件头
每一个Verilog文件的开头,都有一段的文字。包括文件的,作者,创
建日期以及内容介绍等,也可根据具体需要添加和减少相关内容。如下表所示:
我们建议一个.V只包括一个module,这样模块会比较清晰易懂。
4.输入输出定义
端口的输入输出有Verilog95和2001两种格式,推荐大家采用Verilog2001语法格
式。下面是Verilog2001语法的一个例子,包括module名字、输入输出、信号名字、输出
类型、注释。
建议如下几点:
a.一行只定义一个信号;
b.信号全部对齐;
子
5.parameter定义
建议如下几点:
a.module中的parameter,不建议随处乱放;
b.将parameter定义放在紧跟着module的输入输出定义;
c.parameter等常量命名全部使用大写。
6.wire/reg定义
一个module中的wire/reg变量需要集中放在一起,不要随处乱放。建议如下几点:
a.将reg与wire的定义放在紧跟着parameter;
b.建议具有相同功能的信号集中放在一起;
c.信号需要对齐,reg和位宽需要空2
原创力文档

文档评论(0)