当前位置:首页 > 电源 > 数字电源
[导读]复杂的多颗可配置处理器组成的嵌入式系统设计对现今的ESL工具提出了更高的要求,这些需求似乎更像是应该由IP供应商来提供,而不是EDA工具厂商。虽然仍可以使用通用的ESL工具,但具体的流程和特定工具都将是与所使用的IP直接相关的。

近年来,越来越多的嵌入式系统和SoC开始转向使用可配置处理器技术,这样既可以缩短产品开发周期,又可使设计更加灵活,甚至流片后仍可以修改部分功能。这要求处理器设计不仅能灵活重用已有设计,同时又要高效,对于特定应用具有很好的性能,并在符合性能、功耗前提下,能够直接替代硬连线逻辑模块。目前ESL工具对处理器的不同配置和扩展已经有很好的支持,但针对于像多核SoC(MPSoC)这样的复杂设计,ESL工具还很难满足设计需求。我们可以将通常的ESL领域划分成5个主要部分:

* 算法设计与实现

* 行为级综合

* SoC架构设计、仿真及分析

* 构建虚拟系统原型

* 功能-架构协同设计

算法设计工具允许用户对算法进行描述、仿真,并且可以生成算法实现流程的代码描述。比如Mathworks的Matlab和Simlink就是这种工具。目前大部分的工具是使用面向数据流或数据密集型算法进行建模,但是也有一些工具,如Mathworks的StateFlow,允许用户使用有限状态机对控制逻辑进行描述,并可实现自动生成C代码。

行为级综合工具是新一代基于C/C++或SystemC开发的工具,专门为满足算法和软件工程师而非硬件工程师的设计需要而开发的。由于使用C/C++,因此仿真速度比使用传统的RTL方法有了10~1000倍的显著提高。这也为系统硬件、软件和算法的联合仿真开辟了一条新道路。

用户通过SoC的架构设计工具使用传统总线,标准嵌入式处理器库(如MIPS或ARM),以及其他的一些组件(如存储器,特殊的硬件模块和外设等)来构建SoC系统。之后便可以对整个设计进行仿真,通常使用SystemC或C/C++描述的指令集仿真器(ISS)和外围硬件模块联合仿真。这样便可分析得到一些系统级的特性,如总线负荷、竞争,内存访问,处理器负荷等。这些工具可以从CoWare,ARM,Synopsys等公司得到。

虚拟系统原型工具提供单核或多核SoC平台的仿真模型,可以以数十MHz的速度仿真实际系统。系统架构师需要在这样的平台上运行大量的测试序列,并得到系统性能分析的结果,软件开发人员也可在接近实际的仿真模型中测试他们的嵌入式软件。

但现今提供的商业ESL工具没有一种可以在更早的阶段帮助工程师决定系统的基础架构,例如决定整个系统需要使用处理器的数量和种类;需要设计专门的通信机制还是使用传统的分级总线;如何将应用程序划分成多个任务,并分配到不同的处理器上运行;如何有效的探索各种可能的设计方案等。现在的SoC架构设计工具和ISS要在体系架构确定后才有用武之地。

今天的设计要比上世纪90年代末处理器加硬件模块的结构复杂许多。从最小、最简单的手持无线设备到标准的、带有语音视频处理功能的蜂窝电话,直至非常复杂的电子设备,当今的技术已经可以把多颗处理器、多片存储器、复杂的片上通信总线网络,以及由相当可观的硬件模块组成的协同工作子系统集成到一颗SoC中。同时应用软件也愈加复杂,数百万行代码组成的系统软件已是司空见惯了。因此,使用传统方法进行体系结构设计变得日益困难,这一切都使得ESL设计方法学变得越来越必要。尤其是当可配置处理器代替传统的固定指令集处理器,可能的设计方案越来越多时更是如此。

定制指令集处理器(ASIP)

基于特定应用定制指令集处理器(ASIP),这一概念在嵌入式系统设计中变得越来越重要。ASIP的设计方法学和开发工具也在学术界和IP设计领域被提及,并且许多商业的ESL工具已经提供了类似的处理器和协处理器综合工具。处理器的指令集大都采用一种中间形式进行描述。Tensilica提供的XPRES工具也提供这样的功能,由Tensilica定义的TIE语言描述的,并且工程师可以应用这种语言,进一步手动优化处理器的特定配置。

如果SoC的设计是要通过单颗CPU实现,也许再增加一些硬件加速器来提升性能,那么现在的这些工具和设计方??就已经足够了。但事情并非如此简单,如今已有很多的SoC设计使用了至少两颗处理器(一颗是做控制的RISC,另一颗是进行数据处理的DSP),并且下一代SoC设计正朝着6~10颗处理器这一方向前进。在这种情况下,目前显然缺乏设计方??和工具来支持这样的设计。

[!--empirenews.page--]使用可配置处理器搭建MPSoC系统

当使用多颗处理器尤其是使用可配置处理器来设计SoC时,将会遇到一些关键问题,包括:

* 一个或一组应用需要使用多少颗处理器

* 应如何配置、扩展这些处理器

* 处理器采用同构方式还是异构方式

* 处理器之间如何通信?采用标准总线,还是片上网络(NoC),采用点到点方式,或是多种方式的组合。

* 如何选择正确的并行模式,是流水线还是多线程?

* 工程师如何从应用程序中提取可并行执行的任务?又怎样分解他们?

* 在可配置处理器,多处理器,新的通信架构以及内存选择等多种可供选择的技术下,如何能得到多种设计方案并进行对比?

* 在90nm以下的工艺流程上,如何从10个处理器的设计扩展到100个,甚至1000个处理器?

如今EDA供应商所提供的ESL工具还不足以解决这些问题。可配置处理器IP厂商的工具提供了以下流程帮助工程师进行设计:从已有的应用程序或算法的软件代码开始;分解成多个同步处理进程;将各个进程分别映射到已经优化过的处理器上,这些处理器之间有着理想的通信网络;迭代处理器定义和进程映射;分析处理器间通信网络的需求;设计并行控制和调度模块;涉及通信网络(包括存储器、总线、队列等);分析结果并且迭代其他可能的配置;反复迭代优化直至实现满足设计需求的MPSoC系统;实现软件/硬件的具体设计。

这种自上至下、以应用需求为驱动的设计流程,在一些MPSoC子系统的应用设计中是非常适合的。尤其是当需要一个全新的功能,或者之前的系统设计方案不足以支持新标准应用程序的开发时,这种从设计需求和应用程序的特征出发进行设计的方法,往往可以得到最优的解决方案。使用这种方法定义系统的体系架构时,通过模拟、分析,并迭代得出使用处理器的种类和数量,内存的层次结构以及通信子系统等等是非常有效的。


MPSoC ESL设计方法需要提供很多功能,这些需要包含在集成开发环境(IDE)中,如系统建模,程序映射,各种设计方案对比,以及对可配置处理器的配置修改。

IDE是最引人注目的部分。Eclipsez作为一个开源软件,对扩展已有的软件工具、器件、调试软件都有很好的支持,而这些功能可以使得MPSoC ESL设计在更抽象的层次上进行。比如可以在Eclipse中加入处理器创建、扩展的用户配置界面,将用户的配置转化成基于某种特定语言描述的指令扩展,之后交给外部的特定编译器进行编译。因为这一扩展被编译成RTL级的描述,在这种意义下可以使用IDE定制和实现一个软硬件系统。

IDE软件提供的项目编辑功能可以支持设计输入、修改、映射到特定处理器等操作。同时还要能够配置处理器、内存、通信接口、总线以及外设等设备,用以搭建一个完整的系统。IDE还需要支持系统级仿真,可以装载处理器的ISS,能够装载整个系统的仿真模型,静态或动态的追踪系统级上发生的事件,能统计处理器的执行状况并记录数据,并通过图形界面向用户显示。并需提供分析工具,使得用户可以方便得到传输延迟、资源竞争、处理器等待、内存的使用状况,以及处理器数据读取的平衡状况等系统级信息。

IP的参数(meta-data)和一些临时信息需要使用标准的格式来存储。近来XML格式被广泛的使用到工具中,如Mentor Graphics的Platform Express等等。基于XML格式排版的文件很容易被扩展,解析和生成,所以是一种描述存储系统架构和参数的极具吸引力的方法。

有了系统架构的信息,也有了标准格式的ISS模型,便可以生成系统仿真模型用于系统测试。许多已有的ISS支持在SystemC环境中运行,这样便可以和总线模型、内存模型、硬件模块模型、外设模型等其他系统模型在事务级上进行互联、仿真。TLM在ESL方??中是一个非常重要的概念,但到目前为止还没有为TLM上的互操作定义标准。由于没有一个可用的OSCI TLM标准,考虑到OSCI工作的不透明性质和其缺乏一个发展的路线图,ESL世界里的系统仿真必须继续依赖于IP提供商提供的可供互联的适配器和用户自己对“事务”这一概念的理解。

快速功能仿真,有时也被称为“虚拟系统原型”,是对周期精确型的TLM模型的重要补充。周期精确型的TLM模型允许对系统运行时的细节进行分析,每秒钟只能运行数千个周期或再多一些,而快速功能仿真则可以数百万个周期每秒的速度运行,这对软件的开发有着特别的意义。

可配置处理器是高性能MPSoC系统的核心,通过扩展指令的自动生成技术使得在设计的最后阶段仍可修改系统配置。通过在设计的早期阶段自动生成的配置和扩展ISA,可将最初的任务映射到这个处理器上,当处理器发生变化,任务需要重新被映射时,该过程可以快速反复迭代进行。通过手动对设计进行改善,最终可以通过提高进程效率,从而降低处理器频率,达到设计目标。自动生成的软件工具链(包括编译器、ISS、调试器和IDE扩展功能模块)允许对处理器的每一个修改都可以反映到整体系统中。

本文小结

复杂的多颗可配置处理器组成的嵌入式系统设计对现今的ESL工具提出了更高的要求,这些需求似乎更像是应该由IP供应商来提供,而不是EDA工具厂商。虽然仍可以使用通用的ESL工具,但具体的流程和特定工具都将是与所使用的IP直接相关的。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭