SystemVerilog 代码中常用的后缀和前缀有哪些?我指的是 SystemVerilog 元素的代码指南,例如变量、参数、类等。
以下是我知道的一些:
字首:
m_
- 成员(此类)cg_
- 封面组名称
后缀:
_if
- 界面_t
- 类型定义_s
- 结构_u
- 工会_e
- 枚举_h
- 变量名,它是类的引用(句柄)_pkg
- 包裹_c
- 类或约束(选择一个并使用它)_cb
- 计时_mp
- 模组端口_cg
- 封面组(这个可以是前缀或后缀)
SystemVerilog 代码中常用的后缀和前缀有哪些?我指的是 SystemVerilog 元素的代码指南,例如变量、参数、类等。
以下是我知道的一些:
字首:
m_
- 成员(此类)cg_
- 封面组名称后缀:
_if
- 界面_t
- 类型定义_s
- 结构_u
- 工会_e
- 枚举_h
- 变量名,它是类的引用(句柄)_pkg
- 包裹_c
- 类或约束(选择一个并使用它)_cb
- 计时_mp
- 模组端口_cg
- 封面组(这个可以是前缀或后缀)对于 RTL 后缀,我已经看到 _l 可以替代 _n。_i 和 _o 出现在输入和输出中,尽管这使得自动连接脚本更难完成它们的工作。
对于前缀,src_dst_signal_name(其中 src 和 dst 是模块的简称)是一种常用的方法。
最重要的是,请记住并非每个人都遵循这些(或任何)约定,我更尴尬的错误之一是接口无法正常工作的芯片,因为输入信号处于低电平有效但没有后缀。
其他语言中的常量等参数应保持大写。其他都是小写。使用 _ 作为分隔符,避免使用 CamelCase。
对于 RTL 后缀,
_n for active low signals.
_a for asynchronous signals.
rst_an implies active low asynchronous reset.
这些是我遇到的最常见的,为了创建最佳答案,如果您喜欢或编辑此答案以添加更多内容,请包括在其他人中。