新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > C语言平台 缩短SoC前期设计时间

C语言平台 缩短SoC前期设计时间

作者:时间:2008-07-04来源:嵌入式技术网收藏

  结构探索作业结束后,再整合客户的要求规格,评估客户提出的规格时,此时为防与止晶片出现怪异现象,除了动作等级的System C之外,必需使用低抽象度RTL(Register Transfer Level)等级的设计资料。一旦取得客户的许可后就可以同时进行System C的硬体、软体设计。由于平台设计方式使用了,演算、System C模型和RTL模型等多种模型,因此必需维持模型之间的理论等价性,然而实际上「形式验证工具」还未达到实用阶段,必需使用一般理论模拟分析,验证上述设计资料的等价性,其中RTL等级的理论模拟分析非常耗时,因此它已经成为平台设计有待克服的问题。

本文引用地址:http://www.eepw.com.cn/article/85279.htm

  目前动作合成工具技术上还不成熟,若直接转换成System C,Gate规模与消费电流值会变大。(Interconnect Systems)

  C语言平台的设计的特色

  实际上利用C语言平台的设计方式方面,例如日本某业者,曾经开发以Pentium微处理器使用的压缩处理技术硬体化 
,使其具备MPEG-4单压缩功能,基于资料处理并联化对降低动作频率非常有效等考虑,因此使用动作合成方式使整体达成的硬体连线化目的。由于在结构探索工程中已经针对并联处理段数,等相异多结构进行评估,因此检验结果与实际晶片的量测结果几乎完全相同,证实C语言平台设计方式可以实现高精度的结构探索目的。

  另外,也有业者在开发应用在行动电话的长时间MP3音乐播放晶片,同样具备MPEG-4单压缩功能时,设计上被要求尽量降低耗功,因此设计人员决定採用动作合成方式,使整体达成的硬体连线化目的。此外,该业者为了减少耗功与晶片面积,因此进行演算处理位元宽度最佳化设计,就展开调查各处理作业的资源消耗量,与演算位元宽度的关係,依此制作演算位元宽度、建立调整方桉、进行音质检验、决定位元宽度,根据实测结果证实传统同等级SoC的耗功为60mW,可以降至7mW。

  东芝成立小组导入C语言设计平台

  目前可以感受到,随着半导体制程的微细化,SoC的开发时间越来越长,在此同时短交期、低成本的要求依然没变,因此大幅提高SoC的设计效率,成为开发SoC时非常重要的课题。以往SoC大多利用高抽象度动level设计硬体,设计资料使用C语言平台描述,如此就能够在SoC样品晶片完成前,开始进行软体验证、修正作业。

  所以,东芝在2005年就成立「R-CUBE」小组专研新晶片的前期设计规划,来因应此一变化,R-CUBE高阶设计环境主要是由,软、硬体协调验证环境、结构探索环境、高阶验证环境、高阶合成环境,和整体验证环境等等,5个次环境构成。

  实际的想法是,设计流程中最初会使用结构探索环境,此时规格书中会将所有功能当作ANSIC语言/C++演算描述,并将该演算分成实现软硬体两大单元。至于分割的妥当性则利用效能分析工具验证,如果验证无误就进入下个阶段。此时设计流程可分成, 软、硬体协调验证,以及硬体的执行(Implementation)两大部份,软、硬体协调验证环境会整合了可以实现硬体部份的C语言平台描述,以及微处理器核心的C语言平台描述,并製作SoC整体的硬体模型。上述验证会先确认软、硬体之间的介面是否有不妥,接着进行软体整体的验证与修正作业,由于此时要求实机的1/10~1/100左右的模拟分析速度,因此硬体的模式必需使用高抽象度C语言平台进行描述。

 

图说:冲电气採用「μPLAT」+软体的合成动作方式,可以使晶片发挥低耗功化效果。(Tanner Research)

  在硬体的执行设计方式方面,首先以人工方式将硬体的演算C语言平台转换成System C,再使用高阶验证环境验证此System C的描述,该环境包含多种工具,例如,利用形态检查器验证System C描述意义的工具,以及是否已经成为高阶合成用资料的工具等等。高阶验证环境还包含东芝开发的可以检查验证进度(coverage)的工具, 它可以防止遗漏检查,进行Line Coverage)、分岐含盖范围、条件含盖范围等检查,经过验证的System C的描述,再利用高阶合成环境转换成RTL描述。

  目前高阶合成工具无法以一次的合成作业,获得令人满意的高品质输出,必需对C语言平台描述进行修正,并作反覆数次的高阶合成动作。如果晶片已经备妥全模组的RTL描述,就利用整体验证环境进行晶片整体验证作业,在该环境下使用理论模拟器(Emulator)与硬体加速器(accelerator)等验证专用电脑,再以时脉循环(clock cycle)的时序(timing)精度验证SoC整体,若验证没有异常就结束高阶设计作业,接下来的晶片设计则与传统RTL设计完全相同。

整体开发时间只有传统的1/3左右

  在实际设计例子上,东芝所开发的液晶电视用SoC,就此採用这样的架构平台开发设计,此晶片有三个设计作业适合上述设计环境,分别是,统一平台的开发、减少开发软体的TAT(Turn Around Time),以及使用高阶合成获得的RTL描述。

  在统一平台的开发部分,由于晶片目标是广用衍生型的SoC,并且主要诉求是开发容易,因此必需将共通部位定义成统一平台,此时最重要的是On Chip汇流排的结构,与记忆体次系统的定义,设计人员利用上述环境,讨论出如何能够定义成最适宜的统一平台。

  具体步骤首先检查汇流排的存取流通量(Throughput)、延迟、仲裁(Arbitration)功能、汇流排的扩充性(Scalability),接着利用C语言平台描述进行效能模拟分析,再透过 
定性优劣比较作定量性分析,透过该分析就能够定义最适当的统一平台。

  在减少开发软体的TAT,由于是以广用SoC为目标,所以必需充分应用软、硬体协验证,因此在样品晶片完成前,就需要成功验证大部份的软体,因此从样品晶片公佈,一直到发佈软体工具为止,整个的开发时间只有传统的1/3左右,主要原因是Stream data能够使用协调验证所致。

  此外即使使用应用协调验证环境,并不表示如此一来就不需要进行样品晶片的实机验证,因为C语言平台描述的精度还有无法验证Bug,例如记忆体初期化与电晶体的初期化设定错误,以及有关插入时序的不协调,一般协调验证都无法检查。

  在高阶合成取得RTL的描述部分,这颗晶片的MPEG2解码器后处理部分,非常适合使用高阶合成,尤其是将动作频率高达266Mhz的后处理方块,当作82K闸道(gate)规模的电路合成,可以获得媲美人工设计的结果。至于软、硬体协调验证使用的硬体部位C语言平台描述,就可以利用这颗晶片的C语言平台描述作基础,只改写变更部分即可。

  IC设计业者已经开始建立C语言设计平台

  目前许多IC设计公司已经开始建立C语言平台设计技术,应用在半导体晶片的设计,该技术除了能够使晶片架构在短时内进行比较、检讨作业,同时还可以应用在各种SoC(System On a Chip)结构的最佳化设计。以行动电话的语音处理晶片为例,C语言平台设计技术可以使晶片的耗功降至1/10,预定今后2~3年内,市场上将会有20~30%的SoC,是採用C语言平台设计技术。所以,通常SoC的开发要求同时满足各式各样规格,然而同时满足高效能、低耗功、低制作成本的特性。



关键词: C语言 SoC

评论


相关推荐

技术专区

关闭