账号:
密码:
最新动态
产业快讯
CTIMES / 文章 /
推动SaC的ESL工具发展现况
 

【作者: 陳浩彰】2005年06月01日 星期三

浏览人次:【7755】

当晶片的设计不断地朝微缩尺寸发展,晶片的设计工作已经不可同日而语;最原始的使用电路闸设计、进展到利用电脑辅助语言如Verilog与VHDL来提高设计的效率、一直到最近几年最流行的软硬体协同设计,也就是ESL(Electronic System Level:电子系统层级)方式的EDA工具使用。ESL设计方式在现今与往后的IC设计将会日益重要,主要的原因在于内嵌式处理器的需求持续上升,而处理器的设计也逐渐向多核心迈进,另外日益昂贵的光罩成本,也是IC设计公司必须寻求更有效率的方式,来确保所设计的IC产品正确无误地被生产。 ESL的设计观念与设计工具仍在不断地发展之中,本文将介绍主要的EDA厂商于ESL的产品现况与发展趋势。



ESL的工作原理


ESL导入IC设计领域,希望成为未来的一项主要设计方式,主要的目的就是要解决日益复杂的软硬体协同设计问题。以往的设计方式必须等到晶片由晶圆厂生产并封装后,才能对晶片做进一步的验证工作,包括配合晶片的相关软体验证工作。传统的做法采用循序验证(Sequential Verification)的概念如(图一),不仅会因为重复投片而提高成本,由于软体与硬体的同步验证工作,必须在晶片制作出来以后才能执行,使得晶片的验证周期拉长;对于奈米等级的晶片设计而言,由于内嵌式微处理器的盛行(包括多核心处理器趋势同样造成软硬体协同验证的困难)、晶片内含电路闸数目增加,都会造成验证的成本与时间进一步恶化。



《图一 传统软硬体循序设计验证流程》


透过ESL工具的辅助,成本与时间的恶化将会有效地改善。透过软硬体协同设计与模拟,在晶片设计投片之前,就能预先执行大部份的设计与模拟工作,利用平行验证(Concurrent Verification)的概念,如(图二)所示,可以将晶片设计的时程缩短二至六个月,并且具有三项主要的优点:(一)在晶片产出前,预先修正硬体晶片与软体的设计错误。 (二)软体可先依照真实硬体架构设计,缩短设计时间。(三)软硬体协同设计提供软硬体间资源取舍的可能;由图二可以清楚看出,软硬体协同设计的观念,将晶片的设计工作与软体的撰写工作,拉到同一个时间范围内,如此一来就可以有效地缩减设计与验证时间,减少各个流程间的等待时间浪费,并且减少反覆投片所造成的庞大设计成本负担。



《图二 平行处理的软硬体协同设计验证流程图》


Synopsys的System Studio


Synopsys在EDA领域的地位,较为人所熟知的就是它的RTL设计与合成的相关工具,在ESL领域中,Synopsys以CoCentric System Studio为主要的ESL设计与模拟工具;在一个典型的SoC晶片设计中,最常要克服的三大设计方向就是:演算法设计、架构设计与软体整合设计。这三者间并不是很单纯地分开设计完成即可,最大的困难点是协调这三者间的软体与硬体资源,并且有效率低缩短设计与验证时间,另外也必须克服因为三者搭配不良而重新投片的成本花费,如(图三)所示。



《图三 软硬体整合设计的SOC设计流程》


  



演算法的设计在许多的应用都会是一个主要的设计议题,尤其是著重于信号处理的场合如多媒体应用、网路传输、通讯应用等等领域;架构设计必须要作的工作包括选定内部汇流排的形式、选定内部的记忆体规格与记忆体传输协定、客制化的电路逻辑设计与选择合适的内嵌式处理器(大部分的情形需使用内嵌式处理器);软体整合设计的部分,重点在于如何提供一个管道,来使得软体整合工作得以在投片前就可以实施。如此一来,不仅可以减少反覆投片的巨大成本,也可以使得软体与硬体的设计,能够在整体系统资源考量下,有最佳化的机会。



目前的ESL工具主要都是由C或C++语言来完成,透过SystemC语言的使用,许多C++函式库得以被引用,也降低了IC设计者在RTL设计时,经常遇到转换不同设计工具时,程式语言间不易统合的困境。依照Synopsys的资料指出,System Studio主要可以达到以下的功能包括有:(一)设计撷取与管理(Design Capture and Management)、(二)建立可验证的架构模型(主要用于验证汇流排效率与内嵌式IP的合用与否)、(三)迅速完成个别(或搭配使用时)的演算法或架构设计的正确性、(四)提供晶片投片前一个有效的验证方式。



Cadence的Incisive验证平台


Cadence在IC设计领域的电脑辅助设计工具上的地位举足轻重,该公司在2003年时将讯号处理分析软体SPW(Signal Processing Worksystem)的相关技术转交给Coware公司,Cadence仍旧专注于验证领域相关的EDA工具研发。Cadence于ESL的验证工具上,主推Incisive验证平台,根据Cadence的资料来看,Incisive将会有六大项主要的功能,如(图四)所示,包括:(一)加速与模拟(Acceleration and Emulation)、(二)形式分析(Formal Analysis)、(三)类比混合讯号模拟验证(AMS Verification)、(四)整合除错与分析(Integrated Debug and Analysis)、(五)单核心模拟(Single Kernal Simulation)、(六)IP验证(Verification IP)。



《图四 Cadence的Incisive验证平台》


  



对于大型、复杂的晶片设计,Cadence的Incisive提供的单一核心验证架构,宣称可以将验证时间缩短至50%,同时支援Verilog、VHDL、SystemC、SystemVerilog和PSL,是一个完善的System-to-Silicon设计解决方案,当然也支援一些3rd-Party的设计工具如ARM、Denali、O-In与Motorola等等。



就实际的应用而言,Cadence主要是透过指令集模拟(ISS;Instruction Set Simulator)、Incisive模拟器(Incisive Simulator)与Palladium加速/验证器(Paralladium Acceleration/Emulator)三项工具的交互组合,来完成各种不同需求时的软硬体协同设计与验证工作。各种组合的比较表如(表一)所示,可以清楚地看出,仅采用原本模拟器的方式来验证,效果将会非常地差,而透过软硬体协同设计的观念来做晶片的设计与验证,效果将会大幅提升,其中采用硬体模拟器(Emulator)的做法,在效能上又会略优于仅采用加速器(Accelerator)的设计验证方式。



Mentor Graphics的ESL工具发展


Mentor Graphics在ESL工具的发展上,主要可以由它的两套EDA软体来介绍:分别是Catapult C Synthesis与Seamless;前者是负责将C++语言的设计作行为合成,后者则是一套软硬体设计的协同验证工具。 Mentor Graphics在ESL工具的发展上相当积极,Mentor Graphics另外尚有其它的ESL工具如主要用于模拟的ModelSim已支援SystemC,Platform Express是将内嵌IP整合在设计之中,并产生相对应的测试环境、汇流排介面逻辑等等。本文将介绍Catapult C Synthesis与Seamless。



Catapult C Synthesis


根据Mentor Graphics的资料,Catapult C Synthesis提供一个已经经过验证的C++语言合成工具,能够正确无误地产生RTL的合成结果,对于ASIC或FPGA设计而言,提供一个较传统设计方式(手动方式由C++设计转换至RTL设计)快二十倍以上的设计流程。 Mentor Graphics所定义的一个基于C语言的设计流程如(图五)所示,利用C++语言与支援C++语言的函式库,设计工程师可以迅速地设计出需要使用复杂演算法的IC产品如视讯或通讯应用产品;Catapult C Synthesis将设计好的C++语言演算法,经过介面合成( Interface Synthesis)、排程控制(Schedule)、资料路径控制产生(Data Path Control Generator)后,作进一步的分析(Analysis),再经由限制条件(Constraints)的加入判断,做出一个基于设计时脉周期的模拟设计(Cycle Accurate Simulation),不过此时尚未考虑电路闸的特性。经由Catapult C Synthesis将C++的演算法设计转换成RTL语言设计,可再交由下一阶段作RTL模拟、RTL合成、电路闸模拟后实际做成ASIC或烧录至FPGA。



《图五 Catapult C Synthesis的设计流程》


采用不同于RTL设计语言的设计流程,一个最大的好处就是可以降低模拟时间,以Mentor Graphics的资料来看,如(图六)所示,若是使用C++或SystemC语言来产生测试程式,配合演算法设计亦采用C++语言来设计,整个模拟速度将是传统使用RTL语言设计的10000倍,若是和行为层级的设计方式比较(Behavioral Design),将会是行为层级设计方式的200倍(10000x/50x= 200);同样地,和采用TLM SystemC设计方式相比,亦会将模拟速度提高十倍之多(10000x/1000x=10)。



《图六 Catapult C Synthesis与其他设计方式的模拟时间比较》


  



Seamless


Seamless最主要的目的与功能就是要提供软硬体的协同验证功能,在半导体设计挺进至奈米等级的线宽之时,嵌入式的处理器亦逐渐地向多核心处理器靠拢,选择一个合适的嵌入式处理器,同时安排合适的嵌入式处理器与周边客制晶片设计资源的协调与整合,就变得相当地重要。一个最基本的问题就是:该如何选择一个合适的嵌入式处理器?



传统的方式多半是依赖设计师的经验来解决,处理器的选择过程是在有经验设计师的主观判断下决定,而缺乏客观的数据来反映出不同处理器间与客制晶片设计资源间的相互关系,亦无法反映出不同处理器间软体效率与撰写的问题,所有的问题与答案必须等到晶片设计完成后,经由实际的投片产出,设计人员才能清楚知道上述的问题。传统的作法造成许多时间与成本上的浪费,才能清楚了解某一型号的处理器与晶片设计之间的关系;Seamless将整合的工作从实体领域移转到虚拟领域,在虚拟领域的设计流程中,相对应的软体与硬体可以轻易地加以修改,将原本需耗时数月的反覆产品设计所需的收敛时间,缩短至数天之内即可以解决。



要达成上述的设计模拟概念,就必须拥有数量庞大与完整的处理器资料库,Seamless目前是以处理器支援集(Processor ​​Support Package;PSP)的方式来提供不同的处理器模型支援,包含一百种以上的处理器模型,可以提供虚拟处理器模型验证之用,如ARM系列处理器、Intel、MIPS、Tensilica、LSI Logic、Xilinx、Freescale、IBM、Renesas、TI、Mitsubishi、Freescale等等。每个Seamless处理器都包含有一个指令集模拟器,提供处理器暂存器集的控制能力,支援使用组合语言来进行程式的开发与除错;Seamless同时采用专利的记忆体最佳化技术,这是与其它软体硬体协同验证工具最大的不同点,记忆体最佳化技术不但能允许系统继续使用逻辑模拟器,加快嵌入式软体的执行速度,还在必要时执行详细的分析与除错。此外,Seamless也提供充份的支援,确定启动程式、驱动程式、诊断常式与作业系统都能正常执行,另外也检查特定硬体的软体程式,来进行硬体与软体界面的完整验证。



Seamless同时提供了独家的C-Bridge技术如(图七),C-Bridge技术可以提供一个C host code的除错介面,将C语言汇流排上的周边设计转换至不同的处理器介面,而这不同的处理器汇流排介面,就是由PSP来提供处理器模型;C-Bridge则是充当两者之间的桥梁角色,透过C-Bridge技术,设计师就不用特别针对特定处理器撰写程式,而是在一个更高阶的摘要形式完成模型撰写(High-Level Abstraction Modeling),这样的环境可以提供设计者更为有利的设计环境,在决定细节的设计之前,不需要投入大量的时间撰写特定的程式语言。



《图七 C-Bridge应用示意图》


结语与展望


使用ESL的设计方式,是近几年EDA工具开发者一个开发工具的重点方向,当半导体制程推进至奈米等级,嵌入式处理器的应用就相对增多,而嵌入式处理器的应用也会日趋复杂,包括如何取舍嵌入式处理器核心、核心数目的选择、嵌入式处理器的功能等级与周边晶片设计的难度等等,每一个不同的选择结果都会影响到晶片设计开发与软体介面程式的撰写。这样的工作在今日更不容易靠有经验的设计师依据经验来作主观判定,一个不合适的处理器选用将影响到的是:不切实际的搭配硬体晶片设计、反覆收敛软体与硬体设计的时间、反覆投片的晶片制作成本;这些因素都会随着高阶制程的选用而更形恶化。



以模拟时间来看,采用高阶语言如同C语言、C++语言、SystemC语言之类的撰写方式有助于节省系统的模拟时间,亦会减轻设计师反覆利用不同语言来撰写不同模拟任务的负担(包括不同语言撰写时间花费、不同语言需要更有经验的工程师完成等等);本文介绍了主要的EDA大厂Synopsys、Cadence、Mentor Graphics于此方面的产品发展,在此领域有相当多小型EDA开发公司积极推动包括有Forte、Coware等,SystemC语言将会是未来晶片设计工程师必须认识的基本语言,设计工程师届时可以涵盖的领域更广,却不见得需要如今日设计工程师一般使用RTL设计语言如Verilog或VHDL,当EDA工具可以作的事情愈多,设计工程师可以用更有效率的观点来作软硬体设计,而系统晶片SoC的观念也会因为IC设计方法学的向上提升,得以进一步的落实。



















延 伸 阅 读





















Novas软体公司近日针对搭配嵌入式处理器的SoC推出一款除错工具nESL,可望在新兴的电子系统级(ESL)验证市场上争得一席之地。相关介绍请见「系统及除错工具解决SoC设计难题」一文。
Mentor Graphics(明导国际)目前为全球第三大的EDA厂商,不同于竞争对手将产品整合为平台的产品行销策略,该公司的产品主要集中于系统单晶片验证、硬体描述语言与FPGA设计、实体设计与分析、电路板设计等四​​领域。你可在「新的方法学将产生—专访明导国际CEO Walden C. Rhines」一文中得到进一步的介绍。
在2003及2004年中,FPGA两大厂商 – Xilinx和Altera为了走出prototype的设计定位,一直把ASIC厂商当做假想敌,强调在高阶制程技术的支持下,FPGA也能成为ASIC的替代方案。在「半导体产业技术趋势:65奈米、多处理器SOC、系统设计语言」一文为你做了相关的评析。


















相关组织网站





















Synopsys公司网站


Cadence公司网站


Mentor Graphics公司网站




相关文章
矢志成为IC设计界的建筑师
数位延迟锁相回路介绍
系统晶片ESL开发工具之发展现况
comments powered by Disqus
相关讨论
  相关新闻
» 爱德万测试与东丽签订Micro LED显示屏制造战略夥伴关系
» 格斯科技携手生态系夥伴产学合作 推出油电转纯电示范车
» Arm:因应AI永无止尽的能源需求 推动AI资料中心工作负载
» 英特尔晶圆代工完成商用高数值孔径极紫外光微影设备组装
» 联发科技签署绿电合约 大步迈向净零里程碑


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 远播信息股份有限公司版权所有 Powered by O3  v3.20.1.HK84P1T8BWOSTACUKN
地址:台北数位产业园区(digiBlock Taipei) 103台北市大同区承德路三段287-2号A栋204室
电话 (02)2585-5526 #0 转接至总机 /  E-Mail: webmaster@ctimes.com.tw