芯片工程师每天在做的事情和AI进行符号运算本质上高度相似。AI处理问题的方式是这样的接收输入匹配规则输出结果。它不理解与非门是什么意思不理解建立时间为什么存在但它能按照训练出来的模式把语法正确的Verilog写出来把看起来合理的时序约束生成出来。符号是对的规则是对的但里面其实没有理解。普通工程师的日常呢打开工具跑综合看报告改violation再跑再看。Warning出来了觉得眼熟忽略掉。Slack不够加buffer再收敛。流程走完sign off送去流片。大多数时候这套流程运转得很好。问题是这和AI的工作方式有多大区别再举个具体的例子。时序分析里经常要处理multicycle path。工具默认单周期约束设计里有些路径是两个周期才完成一次数据传输需要手动声明。很多工程师知道这条命令怎么写set_multicycle_path 2 -setup加上去slack变好了过了。但有没有想过为什么是2不是3发送端和接收端时钟域是否一致这条约束加错了会不会在特定的工作模式下漏掉真实的时序问题不想这些操作上和AI没区别——都是在匹配已知模式输出符合规则的结果。说到这里重点来了。正因为人有时候和AI一样在照本宣科AI才能在芯片设计流程里真正发挥作用。那些重复性高、规则明确、经验可复用的环节交给AI来做是合理分工。自动生成时钟约束模板、批量检查DRC规则、根据历史数据推荐floorplan策略……这些事情AI做得又快又稳比人工翻文档、凭记忆操作准确性更有保障。工具之所以能替代这部分工作恰恰是因为这部分工作本来就不需要理解只需要正确执行规则。那工程师的价值在哪里在AI不擅长的地方判断规则是否适用于当前情况理解异常背后的物理原因在没有先例的问题里做出决策。新工艺节点下的老经验可能直接失效这类问题AI给不了答案因为训练数据里没有或者覆盖不全。这时候需要的是真正理解那些规则意味着什么的人。AI能做的是把照本宣科这件事做得更准、更快、更稳定。工程师要做的是搞清楚什么时候可以照本宣科什么时候不行。
一个让人不舒服的事实,你有时候和AI一样在“照本宣科“
芯片工程师每天在做的事情和AI进行符号运算本质上高度相似。AI处理问题的方式是这样的接收输入匹配规则输出结果。它不理解与非门是什么意思不理解建立时间为什么存在但它能按照训练出来的模式把语法正确的Verilog写出来把看起来合理的时序约束生成出来。符号是对的规则是对的但里面其实没有理解。普通工程师的日常呢打开工具跑综合看报告改violation再跑再看。Warning出来了觉得眼熟忽略掉。Slack不够加buffer再收敛。流程走完sign off送去流片。大多数时候这套流程运转得很好。问题是这和AI的工作方式有多大区别再举个具体的例子。时序分析里经常要处理multicycle path。工具默认单周期约束设计里有些路径是两个周期才完成一次数据传输需要手动声明。很多工程师知道这条命令怎么写set_multicycle_path 2 -setup加上去slack变好了过了。但有没有想过为什么是2不是3发送端和接收端时钟域是否一致这条约束加错了会不会在特定的工作模式下漏掉真实的时序问题不想这些操作上和AI没区别——都是在匹配已知模式输出符合规则的结果。说到这里重点来了。正因为人有时候和AI一样在照本宣科AI才能在芯片设计流程里真正发挥作用。那些重复性高、规则明确、经验可复用的环节交给AI来做是合理分工。自动生成时钟约束模板、批量检查DRC规则、根据历史数据推荐floorplan策略……这些事情AI做得又快又稳比人工翻文档、凭记忆操作准确性更有保障。工具之所以能替代这部分工作恰恰是因为这部分工作本来就不需要理解只需要正确执行规则。那工程师的价值在哪里在AI不擅长的地方判断规则是否适用于当前情况理解异常背后的物理原因在没有先例的问题里做出决策。新工艺节点下的老经验可能直接失效这类问题AI给不了答案因为训练数据里没有或者覆盖不全。这时候需要的是真正理解那些规则意味着什么的人。AI能做的是把照本宣科这件事做得更准、更快、更稳定。工程师要做的是搞清楚什么时候可以照本宣科什么时候不行。