在EDA工具从自动化向智能化发展的过程中,电子设计逐渐“软化”,即”软件定义的芯片”,越来越有利于解决“可重构”和”异构并存”的架构定义。以过去我们在FPGA平台上做电路与系统为例,因为硬件是可编程的,所以设计主要是编程,实现不同设计规范的算法到FPGA架构的映射,为此去开发在FPGA架构上运行的各种IP包!同理,在多核的CPU,GPU的架构上开发电路与系统也是做编程,实现软件定义的硬件设计。
只不过现在我们从专用集成电路设计的角度,实现“算法到架构的映射”,需要一个更高层次的编译平台(姑且我们把它称着AI Compiler)。那么,这个平台的普惠性,时效性和安全性都是我们十分关注的!
“近几年人工智能、机器学习快速发展,加上量子运算等更为先进的技术,对于解决过去的问题带来了全新的视野。”新思科技AI研究室主任廖仁亿表示。“但随着大家对人工智能的期望越来越高,加上海量数据的持续增长和无处不在的场景应用,人工智能加上人类智能的赋能,帮助我们用更智能的工具,来设计日益复杂且更为强大的人工智能芯片,为芯片设计带来全新的挑战和机会。”
全球三大EDA软件巨头眼里的芯片设计挑战
Cadence认为:
软件对半导体公司来说是个新挑战,因为他们传统只设计硬件,现在还要设计软件。为此,Cadence希望帮助半导体公司解决三个层次的问题:
1.系统实现,包括早期的软件开发,系统级的验证和纠错;
2.SoC(片上系统)实现,帮助客户去解决SoC中底层软件的开发,以及与器件相关的软件开发;
3.芯片实现层次,主要解决传统的低功耗等。
尽管Cadence拥有从IC设计到PCB(印制电路板)系统设计一整套平台,但还需要整个产业的合作,诸如IP供应商、IP(知识产权)和设计服务公司、代工厂、与硬件相关的软件(其中还包括了Cadence的EDA同行们的软件)。
Mentor Graphics认为,
当芯片设计规模有望达到400亿晶体管时,要解决的重要技术如下:
1.硬件仿真技术(emulation):
用硬件来设计硬件,就像机器人自己在设计一个人一样。我们大幅度地使用硬件来提高整个验证的效能。
2.系统设计:
在SoC设计中大量使用CPU核,ARM核、MIPS核等等,通过软硬件协同仿真,可以大幅提高系统设计的效率(CPU在进行系统级仿真时避免比较耗时的RTL仿真,我们可对CPU的指令集建模)。其次,通过提早开发软件,直接在EDA平台上实现产品原型。而且EDA平台实现传统硬件原型无法达到的偵错能力。因为软硬件协同时可以让系统时钟停下(或者步進)来纠正软件的Bug,並具体指出哪个CPU的哪条指令导致硬件和软件的问题。