信息通信可扩展可维护的EDA平台搭建方法郭春鹏(上海寒武纪信息科技有限公司,上海201203)摘要:对于asic行业极其复杂的工作使用环境,文章提出了一个有效的平台搭建方法并在项目中具体实践。文章从实现原理出发,详细说明了搭建的思路和实现框架,并以区分核心层,配置层和用户层的方式对实现过程加以概述。最后,结合具体项实践,给出从模块层级到系统层级,从单一项目执行到多个项目并行的实现方法。对于如何适应新工具,如何快速实现可扩展可维护的平台建设,提供了非常好的解决思路关键词:ASIC;EDA平台;核心层(ASIMcore);配置层(ASIMcfg);用户接口层中图分类号:TP3111引言随着asic行业的规模化和复杂化,IC设计验证过程中使用的工具层出不穷,如何搭建一个适用性好、扩展性强并易维护的电子设计自动化EDA平台一直困扰着诸多用户。主要的问题包含:(1)复杂:用到的软件工具很多,增加了IC设计验证的复杂性。比如Synopsys公司的vcs、verdi;Mentor的questasim、calibre;Cadence的virtuoso等等。(2)易错:不同公司的工具在实现相似功能时参数不尽相同。而单个工具具体参数也极多,相互依赖项更数不胜数,增加了IC设计验证中的出错率。以vcs为例,常规参数也要近几百条。(3)多变:行业内EDA工具演化迭代,新领域,新工具仍不断加入已有平台的现象十分常见。突破目前IC设计验证环境复杂易错多变情况已经为目前各个用户共同面对需要解决的困难,从而搭建可扩展可维护的EDA平台成为重要的解决方案。为解决上面提到的诸多问题,本文提出一种搭建EDA平台的具体思路和方法。将分三部分展开讨论:其中实现思路着重讨论整体框架分层和实现原理;实现方法将从核心层实现方式、配置实现方法与用户层界面三个维度介绍具体情况;最后结合真正项目实践,从单项目到多项目以及拓展性方面介绍使用情况。本文以验证vcs工具为主要讨论对象,对于其他工具的推演将给类比性说明。2平台实现2.1实现思路鉴于不同工具的接口千差万别,以分层的方式实现EDA平台是合理的选择,在本文平台中,整体工具分为三层:核心层(ASIMcore)、配置层(ASIMcfg)和用户接口层(ASIMui)。用户层主要为用户接口,在面对相同功能的EDA工具希望保持不变,以保留用户多项目不同层级使用习惯,避免面对不同工具的易错问题。此层以下如图1实线所示,由专人专项维护,不再暴露给用户侧。配置层的目的是基于不同的EDA工具,可灵活配置工具使用,此层由管理员依据项目不同而统一...