逻辑设计新人甲
同学你好,我也是硕士毕业刚入职一年左右。说说我的实际感受:效率差距真的很大,尤其是项目规模上去之后。
我们组现在新项目都用 SV,最爽的就是代码写起来快多了。举个例子,状态机用 enum 定义状态名,比 Verilog 里写 parameter 直观太多,仿真调试时直接显示状态名而不是数字。还有 always_comb、always_ff 这类专用过程块,编译器能帮你检查出一些组合逻辑意外生成锁存器的问题,对新手很友好。
验证方面,我们设计工程师虽然不写复杂的 UVM 测试平台,但会用 SV 的断言(SVA)在 RTL 里加一些即时检查。比如检查 FIFO 的空满标志是否和读写信号冲突,以前要等验证工程师跑完测试才能反馈,现在仿真一跑违反断言立刻报错,定位问题快了很多。
至于学习建议,我认为非常必要。面试时问到 SV 和 Verilog 区别,你能说出 interface 简化连接、SVA 辅助设计检查这些实际好处,会很加分。现在时间紧的话,建议先重点学习 SV 中用于设计的那部分语法(就是可综合的子集),再了解下断言的基本写法。验证相关的随机约束和覆盖组可以稍后补。
别怕,你有 Verilog 基础,上手 SV 的设计部分很快的。找几个小练习,比如用 interface 重写一个 UART 模块,体验一下效率提升,印象更深刻。
