编码指南概述心目标:RTL代码简单,简单的时钟规划致的编码方式、命名习惯、过程和状态机一规则的模块划分方法、寄存器输出、模块大小尽量一致注释,用有意义的命名方式、参量化设计2025/12/312
2025/12/3 12 编码指南概述 ❖目标: ▪ RTL代码简单,简单的时钟规划 ▪ 一致的编码方式、命名习惯、过程和状态机 ▪ 规则的模块划分方法、寄存器输出、模块大小尽 量一致 ▪ 注释,用有意义的命名方式、参量化设计
基本编码方法心一般命名习惯源文件里包含信息头2025/12/313
2025/12/3 13 基本编码方法 ❖一般命名习惯 ❖源文件里包含信息头
一般命名习惯为设计开发定义的命名习惯,以文档的形式定义下来,并在整个设计中一直遵守命名习惯心信号名、变量名、端口名使用小写字母常数和用户定义类型使用大写字母&信号、端口、函数和参数命名采用有意义的名称2025/12/314
2025/12/3 14 一般命名习惯 ❖为设计开发定义的命名习惯,以文档的形式定义 下来,并在整个设计中一直遵守命名习惯 ❖信号名、变量名、端口名使用小写字母 ❖常数和用户定义类型使用大写字母 ❖信号、端口、函数和参数命名采用有意义的名称
一般命名习惯心对时钟信号的处理同一驱动源的时钟信号,使用相同的名称对于低有效信号b,nReset信号,一致命名方式rst总线描述[x:0],[0:X]2025/12/315
2025/12/3 15 一般命名习惯 ❖对时钟信号的处理 ❖同一驱动源的时钟信号,使用相同的名称 ❖对于低有效信号 _b,_n ❖Reset信号,一致命名方式 rst ❖总线描述 [x:0], [0:x]
例使用[x:0]端口声名module DW addinc(input [(WIDTH-1):0] a;a,input[(wiDTH-1):0]b;b,ci,input ci;sum,output[(WIDTH-1):0]sumCO;output co;wire [(WIDTH-1):0] a;wire[(WIDTH-1):0]b;wire ci;wire[(WIDTH-1):0]sum;wire co;endmodule162025/12/3
2025/12/3 16 例 使用[x:0]端口声名 module DW_addinc ( a, b, ci, sum, CO ); input [(`WIDTH-1):0] a; input [(`wiDTH-1):0] b; input ci; output [(`WIDTH-1):0] sum; output co; wire [(`WIDTH-1):0] a; wire [(`WIDTH-1):0] b; wire ci; wire [(`WIDTH-1):0] sum; wire co; endmodule