经典Verilog代码标准 经典Verilog代码标准是指在设计和编写Verilog代码时所遵守的规则和规范,以确保代码的可读性、可维护性和可重用性。本文将从工程建立规范、RTL CODE规范两个方面详细介绍经典Verilog代码标准。 一、工程建立规范 在设计和编写Verilog代码时,工程的建立规范非常重要。一个规范的工程结构应该包含以下四个子文件夹: 1. project文件夹:存放ISE工程文件,包括ise、bit、mac等文件。 2. source文件夹:存放Verilog源文件。 3. explain文件夹:存放注释说明文档。 4. test文件夹:存放测试程序代码,可进一步分为软件调试程序、硬件调试程序。 其中,顶层文件夹命令为top_xxx,xxx为工程的识别名称。顶层文件夹的子文件夹分别命名为project、source、explain、test。 二、RTL CODE规范 RTL CODE规范是指在编写Verilog代码时所遵守的规则和规范,以确保代码的可读性、可维护性和可重用性。 1. 标准的文件头 在每一个版块的开头一定要使用统一的文件头,其中包括作者名、模块名、创建日期、概要、更改记录、版权等必要信息。统一使用以下的文件头: // * // COPYRIGHT(c)2005, Hislicon Technologies Co, Ltd // All rights reserved. //// // IP LIB INDEX : IP lib index just sa UTOPIA_B // IP Name : the top module_name of this ip, usually, is same // as the small ip classified name just as UTOPIA // File name : file_name of the file just as “tx_fifo.v” // Module name : module_name of this file just as “TX_FIFO” // Full name : complete Emglish nme of this abbreviated //// // Author : Athor/ID // Email : Author’s email // Data : // Version : V 1.0 // //Abstract : // Called by : Father Module // // Modification history // ------------------------------------------------------------------------------------------------------ // //// $Log$ //// * 2. 标准的module格式 对于模块的书写采用统一的格式便于项目内部成员的理解和维护,我们用批处理建立了一个MODULE模块,其内容解释如下: * 端口定义按照输入、输出、双向的顺序。 * 模块名、模块例化名统一,例化名前加大写U_以区分(多次例化另加标识),三者关系: * 文件名:xxx.v(小写) * 模块名:Xxx(首字母大写) * 例化名:U1_xxx(首字母大写) IP内部所有的模块名都要加IP名或者IP名简称作前缀,如USB_CTRL、USB_TX_FIFO。 // *// DEFINE MODULE PORT //// // module MODULE_NAME ( // INPUT input_port_1, … input_port_m, // OUTPUT output_port_1, … output_port_m, ); // * 遵守这些规范可以确保代码的可读性、可维护性和可重用性,提高设计和开发的效率和质量。
剩余15页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助