为什么应届生都想去做芯片设计? 每年校招季数字设计岗位的竞争激烈到离谱而验证或者测试这些岗位投简历的人少得多。这背后其实藏着一个很朴素的人性规律——大多数人天生就想创造东西而不是去找别人的茬。设计工程师的工作直觉上很有成就感。写RTL代码跑仿真最后芯片流片回来能跑起来那种满足感是实实在在的。验证工程师呢天天想的是这段逻辑哪里会出错要主动去构造各种刁钻的边界场景把设计搞挂。听起来就很反人类。但问题是芯片出了bug代价是什么一次流片上千万流片回来发现功能不对再来一次。时间窗口一错过竞争对手的产品先上市了市场份额就没了。更严重的车规芯片出了问题涉及功能安全后果没法用钱简单衡量。所以破坏这个动作和创造同等重要甚至更难。举个具体的例子。假设你在做一个AXI总线接口的RTL设计写完之后功能仿真通过了时序也收敛了。但验证工程师构造了一个场景// 同时触发outstanding transaction打满 slave返回SLVERR master发出新请求 // 这种组合在正常流量下极低概率出现但现实中并非不可能设计在这个corner case下挂了执行了错误的状态机跳转。这个bug靠设计工程师自己审代码几乎不可能发现。技术的准确性恰恰就在这些被忽视的边界条件里。为什么大家还是更想做设计一方面是可见性。设计工程师的产出是我写了这个模块验证工程师的产出是我确保这个模块基本上没问题——后者的价值在流程里是隐形的出事了才会被想起来。另一方面是认知问题。刚毕业的时候很多人对芯片开发流程的理解还停在写代码→流片→完事这个层面不清楚验证在整个链路里占多少比重。实际上在成熟的芯片研发流程里验证的工作量通常占整个开发周期的70%以上。创造和破坏其实是同一件事的两面。设计是在构建一个系统验证是在检验这个系统是否真的成立。两者缺一芯片都做不好。只不过人的本能会推着自己去选看起来更有创造性的那条路这很正常。但在芯片这个行业这可能会错过一些真正有价值、也真正稀缺的方向。验证方向的高级工程师在市场上也一直很难找。