eda软件发展的新趋势有三:一是智能化eda,本质上是在给定约束条件下寻求*优ic设计方案,*终目标是实现“全自动化”。“就像是自动驾驶一样,*终也要实现无人的自动设计。”二是开源eda,形成开放的工具集群和行业生态,由系统厂商、芯片厂商和eda厂商共同制定开放标准,大幅度降低专业人员门槛。三是高算力的eda,即eda与云计算相结合,在“云上”提供eda服务。
从智能化eda发展层面看,纵观如今的芯片设计,其需求量越来越高、种类越来越多、规模越来越大,相对应的设计成本也越来越高、设计周期越来越长。一款5纳米的芯片仅设计成本便达上亿美金,*精细的芯片设计费高达5亿美金。
要实现“全自动化”所面临的首个挑战便是解决全流程的高效问题,“实现人工智能全流程设计芯片(aida),而不是人工智能辅助eda设计”。这就需要用人工智能模型学专家知识,大幅度降低芯片设计门槛,提升芯片设计效率,实现端到端的无人化设计,把原来按年计算的芯片设计时间大幅压缩到按周计算。
*二个挑战是要跨越工艺代差。在芯片设计上,aida跨越打破原来芯片设计流程里的分层、分块的约束,在水平方向打破模块界限进行跨模块的水平优化,在垂直方向打破设计层次进行跨层次的垂直优化。
*三个挑战就是要跨工艺方法。设计规则的复杂度随着工艺增加,不同节点工艺引入的设计规则指数级增加,对芯片设计提出了新的挑战。这需要设计出跨工艺方法,既要提炼出与工艺无关的设计技术,使得aida基本技术可以泛化到不同的工艺节点上,而不是对每个工艺进行重新设计、训练aida的模型和算法,又要针对不同工艺提炼出与工艺相关的技术,实现优化设计以提高芯片设计效果。
过去在芯片设计上采用的技术主要是人工数学建模,将科学工程知识变成程序,将明知识写成形式的专家系统,或者在某些子问题上采用深度伸进网络等点技术,并没有充分发挥机器学的潜力。
什么是机器学?机器学是一种让计算机利用数据而不是执行指令来进行各种工作的方法,即利用已有的数据(经验)得出了某种模型(迟到的规律),并利用此模型预测未来的一种方法。
“芯片学技术可以取代芯片设计应对上述挑战,即采用机器学的方法来完成芯片从逻辑设计到物理设计的全流程。”芯片学的目标是通过学使得芯片设计完全不需要专业知识和设计经验,可以在短时间、无人参与的情况下高效完成。
如今,开源技术应用领域广泛,除了操作系统、编译器、人工智能、大数据系统等,还包括eda软件设计。种种成功经验表明,开源开放是构建繁荣的技术生态和产业生态的必要基础。开源eda为聚集优势力量,推动科学研究和人才培养提供了新的思路。
“开源不光是在软件研发上,也在硬件研发。要建立一个新的开源生态,*后能够利用开源的软件来做开源的硬件,整个设计周期会大大缩短,成本也会大大降低。”