差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
硬禾实战营verilog代码规范 [2020/01/17 08:47] gongyu |
硬禾实战营verilog代码规范 [2020/01/17 08:50] (当前版本) gongyu [2.模板示例] |
||
---|---|---|---|
行 42: | 行 42: | ||
\\ 例化名 :U_XXX (大写) | \\ 例化名 :U_XXX (大写) | ||
\\ IP 内部所有的模块名都要加IP名或者IP名简称作前缀,如USB_CTRL、USB_TX_FIFO。 | \\ IP 内部所有的模块名都要加IP名或者IP名简称作前缀,如USB_CTRL、USB_TX_FIFO。 | ||
+ | |||
<code verilog> | <code verilog> | ||
// ***************************** | // ***************************** | ||
行 106: | 行 107: | ||
</code> | </code> | ||
- | ===1.3一致的排版=== | + | --- |
- | ------ | + | #### 1.3一致的排版 |
\\ A. 一致的缩排 | \\ A. 一致的缩排 | ||
+ | |||
<code verilog> | <code verilog> | ||
//统一的缩排取4个空格宽度 | //统一的缩排取4个空格宽度 | ||
行 122: | 行 125: | ||
\\ B.一致的 begin end 书写方式 | \\ B.一致的 begin end 书写方式 | ||
+ | |||
<code verilog> | <code verilog> | ||
//always 中,一定要用begin end 区分,格式和代码风格统一如下: | //always 中,一定要用begin end 区分,格式和代码风格统一如下: | ||
行 152: | 行 156: | ||
else | else | ||
</code> | </code> | ||
- | ===1.4 一致的信号命名风格=== | + | |
- | ------ | + | --- |
+ | #### 1.4 一致的信号命名风格 | ||
简洁,清晰,有效是基本的信号命名规则,详见命名规范。 | 简洁,清晰,有效是基本的信号命名规则,详见命名规范。 | ||
^全称 ^缩写 ^中文含义^ | ^全称 ^缩写 ^中文含义^ | ||
行 207: | 行 212: | ||
\\ f.不能用 ”reg”,作为最后的后缀名,因为综合工具会给寄存器自动加上_reg, 如果命名里就用_reg作为后缀名则扰乱了网表的可读性。 | \\ f.不能用 ”reg”,作为最后的后缀名,因为综合工具会给寄存器自动加上_reg, 如果命名里就用_reg作为后缀名则扰乱了网表的可读性。 | ||
+ | --- | ||
### 2.模板示例 | ### 2.模板示例 | ||
- | ------ | ||
<code verilog> | <code verilog> | ||
//******************************************************** | //******************************************************** |