“几分欢喜几分愁”EDA供应商面对多核设计
对现有EDA供应商来说,多核处理器的出现为他们平添了“几分欢喜几分愁”。
欢喜之处在于,随着晶体管数量在65nm及更小工艺下飙增,多核平台能提供更多必需的计算能力。但是,传统的应用软件很难、甚至根本无法实现并行处理,所以这些公司必须投入大手笔对软件进行重写,而这样做直接导致了65和45nm节点工具的推迟上市。也正因为如此,当前的市场天平开始向新一代EDA初创公司倾斜。
在近日于美国圣地亚哥举行的设计自动化会议(DAC)上,对多处理和多核平台的支持是一个被反复讨论的话题。特别地,DAC上的多线程和多核支持重点针对静态时序分析、模拟/混合信号仿真和设计规则检查(DRC)。而事实上,本次会议上也出现了数家EDA新创公司的面孔。
新创公司CLK设计自动化公司推出的Amber,是一款多线程增量时序和信号完整性分析工具,据称在多核平台上几乎能获得呈线性的加速。统计时序分析方面的新兴公司Extreme DA,推出的则是多线程静态和统计时序分析器GoldTime。而Averant公司最新的Solidify 5.0,则为该公司的形式分析工具增添了多CPU处理能力。
Nascentric公司在DAC上预展了AuSim MT,即一款针对多核平台的多线程快速Spice仿真器;新创企业Xoomsys公司展出的是一款即将推出的、可运行在联网计算机或多核CPU上的快速 Spice仿真器——XoomCKT;而Tanner EDA公司则演示了其T-Spice电路仿真器的多线程功能。
大型EDA供应商自然也不能忽视。Magma设计自动化公司已经为其Quartz DRC工具套件推出一种“基于流式数据流的架构”,据称可优化Quartz DRC在多核CPU和多处理方面的性能。
对65nm和45nm设计工具来说,多核/多处理器运行是必需的,Gary Smith EDA公司首席分析师Gary Smith指出。“如果EDA工具本身就具有并行机制,”他说,“那么通常情况下增加多核功能只要直接升级就可以了;否则,就要进行大量的改写,这通常要花三年左右的时间。现在有许多工具都处在改写进程进行了一半的状态,这也就解释了为何我们在65/45nm工具方面落后了两年。事实上,这是EDA产业界的大问题。”
![“几分欢喜几分愁”EDA供应商面对多核设计](../img/eep/emb/emb-50649kszjs3fvrqg.jpg)
F1:AuSim MT在两个SRAM供应商的设计中进行测量比较,证明多线程速度取决于电路结构。
“对下一代物理实现工具来说,如果要跟上摩尔定律,多线程绝对是个关键。”CLK总裁兼首席执行官Isadore Katz表示,“与用户设计步伐保持一致的唯一途径,就是利用所有可用的内核。下一代实现工具必须‘从头开始’建立在真正的多线程架构上。”
Cadence、新思、Mentor Graphics和Magma等大型EDA供应商都承认,未来对多核的支持是基本要求。这四家公司都声称目前可提供多线程和多核功能。
一些近日发布的工具已经可以直接支持多线程处理。Sierra设计自动化公司去年所推出的网表到GDSII套件Opympus-SoC,就完全采用多线程架构,并且支持目前基于Linux的多核CPU。
联网CPU还是多内核?
在EDA领域,采用多个CPU并不是什么新鲜事。一些应用软件,特别是在进行功能验证和物理验证时,就会在联网的工作站集群上使用分布式处理,充分发挥数十甚至数百个CPU的威力。其中,有些工具还采用了多线程处理,从而充分利用拥有多个CPU工作站的优势。
一些多线程工具,例如得到广泛使用的Mentor Graphics公司的Calibre DRC物理验证工具,声称同样能在分布式网络、多CPU工作站和多核CPU上很好地工作。Calibre DRC产品经理Michael White指出,用户正在“计算集群”中部署双核和四核CPU工作站,并结合分布式网络和多核CPU。
如果负载很容易划分,那么分布式网络就可胜任,Cadence公司首席技术官Ted Vucurevich说道,但如果时间响应很重要,那就需要一个耦合更紧密的、多核的环境。
“分布式处理的难点在于:处理器之间的延迟很大。”Nascentric公司首席技术官John Croix说,“可以利用包含多个单CPU芯片的工作站来减小延迟,但这里总线是一项限制因素。虽然从软件实现角度来看,多CPU架构和多核架构之间只有很小的差异,但是相比较,位于同一颗裸片上的多核处理器具有最大的速度。”
由于其公司的产品既支持分布式网络CPU,也支持多核CPU,所以Xoomsys公司首席执行官Raul Camposano的观点比较中立。他认为,多核CPU通信速度很快,但用于存储器访问的带宽非常有限;而联网CPU通信速度虽然较慢,延迟也比较大,但它们有自己的存储器和缓存,因此有更大的带宽进行存储器访问。目前,多核CPU受限于只能包括少量处理器,而
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)