有趣的武功值得一生来修炼,看家的本领却需要修炼一生;
“双剑合璧”这种武功,愿意用一生修炼,也需要修炼一生;
左手全真剑法,右手玉女剑法,白衣似雪,来去如风,恩怨情仇,一剑成空,这是江湖侠客的豪情;
左手仿真验证,右手BUG调试;双剑合璧,编译运行,披星戴月,调试波形,这是IC打工人的宿命;
01
IC打工人绝大部分时间,不论是仿真验证,还是BUG调试,每天离不开都是VCS,Verdi等等这些EDA工具;
真正是,为IC奋斗一生,这些技能也修炼一生;
掌握这些EDA工具是每一个IC打工人绕不过去的基本功;
金庸大侠的《神雕侠侣》对双剑合璧如此描述,“两招名称相同,招式却是大异,一招是全真剑法的厉害剑招,一招是玉女剑法的险恶家数,双剑合璧,威力立时大得惊人。杨过与小龙女灵犀暗通,金轮法王更难抵御。”由此可见双剑合璧的威力;
VCS主要用于代码仿真,verdi主要用于代码调试,缺一不可,必须双剑合璧,才能发挥最大的功效。双剑合璧,天下无敌。
VCS如同全真剑法,verdi亦如同玉女剑法,二者同使,才打通IC前端工程师的任督二脉,达到人剑合一的境界。
除了VCS和verdi,这种数字芯片前端工程师常用工具的之外,还有几十种不同EDA工具贯通整个芯片开发的整个阶段。
离开了这些EDA工具,芯片设计就是“无源之水,无根之木”。
02
像芯片工程师这样优秀的人,本该灿烂过一生,但是对EDA工具修炼不精,还要在人海里浮沉;
就像手机对于现代人的影响一样,现代人离不开手机带来的通信便利和信息流的输入。芯片打工人也离不开EDA工具支撑的IC研发体系。芯片工程师花费在每天时间花费在和各种EDA工具的输入输出和交互上,这个是芯片打工人的日常;
曾经世上没有EDA工具,集成电路出现后,集成的规模越来越大,当人的脑和手再也不能手工通过图纸来安排那么多的晶体管,于是硬件描述语言和EDA工具就应运而生;硬件语言来描述的电路,然后通过EDA工具的来将语言转换成电路,同时验证电路的正确性,集成电路芯片就被设计的越来越复杂;
集成电路规模的不断增长是人类对更复杂芯片永无止境的需求驱动;
但是在技术层面:依靠三个方面的不断演进,人类才能第一次制造基于复杂度和艺术性于一身的成果 —芯片
首先是工艺进步:摩尔定律里面,18个月芯片集成度翻一倍,可以在更小的尺寸上集成更多的电路门;
其次是设计方法:IP 复用等SOC设计方法,不用从头开始设计每一个门,基于IP复用的设计可以让设计者方便的集成更多的IP,不用所有厂商的都重复轮子,浪费时间和精力;
最后是EDA工具:EDA工具支撑更复杂的设计的思想能够得到实现;各种EDA工具伴随芯片仿真,验证,调试,综合,布局,布线,检查,功耗评估等等;
芯片设计的每个环节都离不开EDA工具的参与;
03
芯片规模越来越大,EDA工具的各个流程需要的时间变得更长,目前的芯片设计出亿门或者十亿门级别规模的设计也不鲜见;如果设计十亿亿门级别的SOC,做时序的布局布线后时序仿真的时间就非常的长;同时如果做后端的仿真,同时让这10亿个门同时都运行起来,还有每个时间(根据timescale,可以是1ns也可以是1ps)计算一次所有10亿个门的状态,这个所需要的计算资源,无论是CPU还是内存等都是非常庞大的;这个仿真验证时间也是非常之长,肯定会让验证工程师等待到怀疑人生。
目前EDA工具主要部署在企业的的私有云上,毕竟放自己家里,心里安全。
将芯片项目移到公有云上来运行,肯定能够有效的加速这些应用,云计算的可扩展,弹性部署对于芯片设计流程中耗费计算资源的任务非常适合,但是EDA上云面临一个核心问题就是—安全性;
中国芯片设计公司,很难把所有家当都放到公有云上,原因显而易见,所有公司都对公有云能否有效保护芯片公司的核心数据有一些担心。
对于芯片设计流程中的非关键数据,但是对服务器性能要求较高的场景,可能是一个突破口。
例如前文所说:芯片的后仿,大型芯片的后仿,需要带SDF时序文件的反标,EDA工具要计算每个门在每个时刻的当时的状态,要把这几十亿个门都计算一遍,非常耗费处理器的资源。
后仿网表相比代码等数据,其敏感级别下降了,因为分析这些门级的电路反推电路设计本身难度是很大的。
通过一些中间数据版本,可以是网表,SIMV等编译程序放到服务器上,而不能倒推回设计源文件的中间形态,可能是芯片企业IC研发的部分流程上云的一个突破口。
所以这种企业云编译,公有云来仿真运行,是有云上EDA推广的基础;毕竟能够缩短迭代的时间,降低对企业私有云IT业务的负载,可能是另一种“混合云”的方式。
完全的芯片业务上公有云,这个理念的推广,难度还是很大的。
云上EDA,既有需求又有顾虑。
矛盾对立统一。
04
EDA工具,电子设计自动化。
有人肯定会问?电子设计都自动化了,还那么要工程师干什么么?
难道那么多芯片打工人的996的时间都白耗费在里面了。
实际真正的主宰是芯片打工人,而EDA只是辅助工具;
但是未来有了AI的加入,是不是还是这样,那就不太好说。
去年,google发布了一篇文章《Chip Placement with Deep Reinforcement Learning》,用AI人工智能的方式,来做芯片的布局、
总体来看,谷歌这项新研究提出了一种基于深度强化学习的芯片布局方法,并且能在6小时内完成人类专家需要几周才能完成的设计。
这项工作只是优化领域自适应策略的一个例子,可以扩展到芯片设计过程的其他阶段,如体系结构和逻辑设计、综合和设计验证等等。
google的这篇文章,毫无疑问,只是完成的芯片设计漫长流程的一小步,placement。
和自媒体口中的人工智能可以自动设计芯片不是一回事。
但是,谁也不能否认,这个研究打开了这个领域的一扇窗口。
他证明了AI在某个方面可能做的比人工专家做的更好。
05
想象一下,未来AI参与到芯片设计后的场景。
基于AI的工具输入网表后,是否可以网表直接交付到布局布线后的GDS?
直接提交代码设计和参考模型后,基于AI的工具输出代码设计(DUT)和参考模型(reference model)的验证结果及覆盖率报告?
这就是另外一些充满想象力故事。
从技术角度看,却不是仅仅是想象。
这些是有可能的技术实现途径的。
只是这个时间是5年,还是10年,还是更长的时间,就需要需要实践来证明了。
但是使用未来EDA工具的IC打工人,会不会被AI替代?
目前来看,还言之甚早,大概率可以从普通繁重的工作中释放出来,可以构建更复杂的芯片。
就像EDA工具诞生时的使命,替代工程师手工来画那些门级电路。
10年之后,这些EDA工具能否进化出新的形式,值得期待;但是无论是上云,还是AI,都是能极大缩短芯片的迭代时间,缩短芯片的开发周期,向软件开发靠齐。
但是对于芯片打工人来说,续写和EDA工具那些爱恨交织的故事。
致力于PPA(power,performance,area)的追求。
使命从未改变。
参考文献:
《Chip Placement with Deep Reinforcement Learning》
作者:歪睿老哥
来源:https://mp.weixin.qq.com/s/bqyxVCxOzIoJNeOqA7lETw
作者微信公众号
相关文章推荐
更多IC设计技术干货请关注IC设计技术专栏。