特色C语言平台 SoC设计最佳化(一)

2013-09-06 20:54:52来源: 互联网

在设计上能减少结构探索时间的C语言平台,在结构上如何以新思考突破?如何形成一个具有特色的C语言平台,是的SoC设计达到最佳化呢?

  以往半导体业者大多使用FPGA(Field Programmable Gate Array)製作样品(Prototype),接着锁定几项晶片重要规格,依此找出最适合该晶片的结构,这种方式最大缺点是作业时间非常冗长。然而,C语言平台的设计方式则是,利用软体模拟分析检讨晶片结构,以往FPGA平台的样品,大约需要半年左右的结构探索时间,如果採用C语言平台的设计方式,只需要花费约2周~1个月的时间。

  目前开发最快的是日本冲电气,以ARM为基础的整合平台及设计环境可应用在晶圆专工的先进技术,根据冲电气的规划,在内部适用C语言平台设计技术的SoC,是使用了三种架构,分别是:「μPLAT」+软体、「μPLAT」+专用加速器度(accelerator)+软体、硬体连线(hard wired)电路。

  在「μPLAT」+软体的部份,传统FPGA也有支援此功能,因此IC设计公司可以利用IP来源业者的Process Core,再以μPLAT为基础开发SoC,例如目前ARM已经将ProcESS Core,封装成软体提供客户使用。而关于「μPLAT」+专用加速器度(accelerator)+软体、硬体连线(hard wired)电路结构开发的晶片的部份,就是利用C语言平台设计方式使开发更效率化。此外,「μPLAT」+专用加速器度(accelerator)+软体中,专用加速器度还分成两种执行方式,分别是:将C语言资料转换成System C,再将SySTem C输入至动作合成工具内,最后嵌入硬体连线(hard wired)电路,以及利用合成使Process Core特定化,接着在该Process Core进行C语言演算作业。采用第一种方式的合成动作方式,可以使晶片发挥低耗功化效果,第二种的特定化Process Core合成方式,以资源共用的观点而言确实相当有效,不过耗功上经常不如第一种的合成动作方式。

半导体业者大多使用FPGA制作样品

  图说:半导体业者大多使用FPGA制作样品,依此找出最适合该晶片的结构,这种方式最大缺点是作业时间非常冗长。(School of Computer Science)

  C语言平台摆脱传统刻板观念

  关于C语言平台的SoC设计方式的流程是,首先需要从客户端接收要求,以SoC处理的「C语言/C++描述的演算」与该SoC使用方法的「use case」,并收取「演算(Algorithm)测试环境」然后再开始进行SoC开发作业。此时必需先检查收取的原始码(Source Code),确认是否适合动作合成或是组合软体,不适合的场合,则检讨原始码的修正进行架构探讨。由于该工程被赋予「高精度评估」的角色,因此已经摆脱传统「设计」的刻板印象,此时短期可量产的优先度比品质更高,例如1个月内完成探索的设计,只进行代表性项目的验证,如此就能够缩短探索工程的验证时间,至于验证品质则在探索之后的后段工程透过设计方式维持。

  结构探索工程又分成:结构草案的检讨,以及结构初期模型的制作与检验。结构草案的检讨是根据原始码的分析结果,决定使用「动作合成的硬体连接」,或是专用处理器。功能不太複杂的晶片,要求低制作成本与低耗功时,大多选择动作合成方式;要求相似功能进行复合性处理时,通常会选择专用处理器方式。决定基本方针后立即检讨包括,演算位元的宽度、并联处理电路的结构、动作频率、与软体的搭配等等问题,接着制作晶片的结构模型,再利用虚拟样品模拟器(virtual prototyping simulator)验证,模拟器除了晶片功能之外,还能够分析包含晶片外部的资料转送等系统整体与晶片的所有效能。

  采用C语言平台的设计方式,只需要花费2周~1个月的时间,就可以完成模拟分析检讨晶片的结构。(National Center for Ecological Analysis and Synthesis)

目前在进行合成所面临的问题

  选择动作合成方式时会面临下列问题,分别是:演算转换至System C化的工程数减少、转换后以System C化为对象的高速化与高精度化等问题,因此System C化时演算部位必需以UnTImed模型封装,介面的部位则以定时模型封装,利用上述溷合封装追加埠,加上变数的有效位元长度设定等最低限度追加处理作业,就可以达成System C化目标。

  目前动作合成工具技术上还不成熟,若直接转换成System C,闸道(gate)规模与消费电流值会变大,为了达成System C化必需特别设置Guide Line。有关介面部分,就可以使用原先惯用的雏型,透过再利用方式有效减少工程数,如此一来数千行的演算,大约一周就能够转换成System C。

  有关专用处理器,利用一般的处理器制作工具,同样能够轻易进行最适化探索作业,进而使处理器的开发时间,从以往6个月压缩至2~3个月。实际开发时必需先进行Profiling描述、决定管线结构,再根据Profiling描述结果,对各SoC进行複合指令等,最佳指令追加作业,依此使参考用处理器达成SoC要求的最佳化目标,最后再利用指令设定,模拟分析估算成本、耗功等效能。

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

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

  C语言平台的设计的特色

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

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

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

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

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

关键字:C语言  SoC设计

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2013/0906/article_19045.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
C语言
SoC设计

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved