最近EETOP网友VincentMa在EETOP论坛分享了其团队所编写的《Verilog/SystemVerilog 设计编码风格指南》,可以提供免费在线阅读。现在推荐给大家。
目录截屏
内容简介
前言
本文档规定了ZION团队及西安理工大学集成电路实验室在利用SystemVerilog语言进行电路描述时推荐遵守的代码规范。除了相关代码规范外,还介绍了目前SystemVerilog中,可以被最新工具识别的可综合语法。文档中介绍的语法及规范适用于进行电路设计描述,不适用于验证。示例代码中中除非特殊说明,所有均为语法演示代码,无任何有效的电路功能。项目中附有若干示例代码,均用于展示格式规范,亦无任何实际电路功效。整个文档分为五个部分:基础语法,高级语法,特殊语法,Bug与期望,附录。
第一部分:基础语法
该部分主要介绍了一些代码书写规定和基础的电路描述方法。该部分除常见的语法外,还提供了一些在新版SystemVerilogy语言中支持的新语法,文档中列出的语法均经过最新的仿真和综合工具测试。推荐大家在设计中尽量使用该部分介绍的语法。
第二部分:高级语法
该部分为进阶语法介绍,主要介绍SystemVerilog中引入用于封装和做通用设计的相关语法。该部分内容建议有一定基础的设计人员采用。由于EDA工具支持不够完善,虽然我们在最新工具下测试了文档中介绍的相关语法,但是不排除目前该部分语法可能存在隐藏的Bug。采用该部分推荐的语法可以极大简化电路设计,尤其是顶层互联的相关代码。同时合理的利用相关语法可以实现一定程度的基础电路抽象,极大提高电路可读性。相关示例在附录中展示。
第三部分:特殊用法
该部分介绍了ZION团队为了简化代码、进行快速设计采用的相关语法。使用方法比较激进,建议酌情采用。该部分主要介绍了两种特殊的设计方法:基于宏定义的模板例化方法 和 基于宏电路库的设计方法。详细介绍了这两种方法的设计动机、设计原理和设计规范。
第四部分:Bug与期望
该部分介绍了目前已知的高级语法在不同EDA工具中的Bug。也列出了希望EDA工具和SystemVerilog未来能够支持的特性。
第五部分:附录
附录中,我们在不同的小结介绍了一些更详细的代码示例和用法解释。(TBD:待补充)
推荐:创新大讲堂
领取专属 10元无门槛券
私享最新 技术干货