完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
4个回答
|
|
今天的设计要比上世纪90年代末处理器加硬件模块的结构复杂许多。从最小、最简单的手持无线设备到标准的、带有语音视频处理功能的蜂窝电话,直至非常复杂的电子设备,当今的威廉希尔官方网站
已经可以把多颗处理器、多片存储器、复杂的片上通信总线网络,以及由相当可观的硬件模块组成的协同工作子系统集成到一颗SoC中。同时应用软件也愈加复杂,数百万行代码组成的系统软件已是司空见惯了。因此,使用传统方法进行体系结构设计变得日益困难,这一切都使得ESL设计方法学变得越来越必要。尤其是当可配置处理器代替传统的固定指令集处理器,可能的设计方案越来越多时更是如此。
|
|
|
|
定制指令集处理器(ASIP)
基于特定应用定制指令集处理器(ASIP),这一概念在嵌入式系统设计中变得越来越重要。ASIP的设计方法学和开发工具也在学术界和IP设计领域被提及,并且许多商业的ESL工具已经提供了类似的处理器和协处理器综合工具。处理器的指令集大都采用一种中间形式进行描述。Tensilica提供的XPRES工具也提供这样的功能,由Tensilica定义的TIE语言描述的,并且工程师可以应用这种语言,进一步手动优化处理器的特定配置。 如果SoC的设计是要通过单颗CPU实现,也许再增加一些硬件加速器来提升性能,那么现在的这些工具和设计方法论就已经足够了。但事情并非如此简单,如今已有很多的SoC设计使用了至少两颗处理器(一颗是做控制的RISC,另一颗是进行数据处理的DSP),并且下一代SoC设计正朝着6~10颗处理器这一方向前进。在这种情况下,目前显然缺乏设计方法论和工具来支持这样的设计。 |
|
|
|
使用可配置处理器搭建MPSoC系统
当使用多颗处理器尤其是使用可配置处理器来设计SoC时,将会遇到一些关键问题,包括: * 一个或一组应用需要使用多少颗处理器 * 应如何配置、扩展这些处理器 * 处理器采用同构方式还是异构方式 * 处理器之间如何通信?采用标准总线,还是片上网络(NoC),采用点到点方式,或是多种方式的组合。 * 如何选择正确的并行模式,是流水线还是多线程? * 工程师如何从应用程序中提取可并行执行的任务?又怎样分解他们? * 在可配置处理器,多处理器,新的通信架构以及内存选择等多种可供选择的威廉希尔官方网站 下,如何能得到多种设计方案并进行对比? * 在90nm以下的工艺流程上,如何从10个处理器的设计扩展到100个,甚至1000个处理器? 如今EDA供应商所提供的ESL工具还不足以解决这些问题。可配置处理器IP厂商的工具提供了以下流程帮助工程师进行设计:从已有的应用程序或算法的软件代码开始;分解成多个同步处理进程;将各个进程分别映射到已经优化过的处理器上,这些处理器之间有着理想的通信网络;迭代处理器定义和进程映射;分析处理器间通信网络的需求;设计并行控制和调度模块;涉及通信网络(包括存储器、总线、队列等);分析结果并且迭代其他可能的配置;反复迭代优化直至实现满足设计需求的MPSoC系统;实现软件/硬件的具体设计。 这种自上至下、以应用需求为驱动的设计流程,在一些MPSoC子系统的应用设计中是非常适合的。尤其是当需要一个全新的功能,或者之前的系统设计方案不足以支持新标准应用程序的开发时,这种从设计需求和应用程序的特征出发进行设计的方法,往往可以得到最优的解决方案。使用这种方法定义系统的体系架构时,通过模拟、分析,并迭代得出使用处理器的种类和数量,内存的层次结构以及通信子系统等等是非常有效的。 |
|
|
|
MPSoC ESL解决方案的功能
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直接相关的。 来源:Tensilica公司 |
|
|
|
只有小组成员才能发言,加入小组>>
818 浏览 0 评论
1162 浏览 1 评论
2536 浏览 5 评论
2871 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2720 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1113浏览 3评论
198浏览 2评论
465浏览 2评论
382浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
462浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-28 18:48 , Processed in 1.602797 second(s), Total 104, Slave 85 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号