软硬件协同综合及虚拟微处理器技术研究

软硬件协同综合及虚拟微处理器技术研究

张鲁峰[1]2002年在《软硬件协同综合及虚拟微处理器技术研究》文中认为嵌入式系统通常是完成特定功能的软件和硬件的集合,嵌入式系统的发展十分迅速。在传统的嵌入式系统设计方法中,软硬件设计过程的割裂导致了低质量的设计方案和开发进程的拖延,现有设计方法已经不能满足嵌入式系统发展的需求。 软硬件协同设计是一种新的设计方法。软硬件协同设计协调软硬件开发过程并行开展,一方面可以缩短设计周期,极大地提高设计效率。另一方面可以根据系统各个部分的特点和设计约束,选择软件或者硬件实现方式,得到高性能,低成本的优化设计方案。本文的主要研究了系统软硬件协同设计中的若干关键技术,包括:系统模型、设计评价技术、软硬件协同综合和嵌入式微处理器虚拟原型技术。 针对有固定周期约束的计算密集型嵌入式系统,本文提出了带时间约束的任务流图模型(TTG),为软硬件协同综合综合和评价研究奠定了良好的基础。TTG模型中以任务作为设计的基本粒度,本文指出了任务划分问题的重要性,并提出了基于系统行为对象关系度量进行任务划分的方法。 文中通过分析完全点和二分点的情况,提出了两个合并准则,对于C.J.Tseng提出的、目前使用广泛的基团剖分算法进行了改进。经模拟测试表明,新算法明显提高了划分质量。 软硬件协同综合决定系统功能在软硬件实现结构上的分配,是软硬件协同设计的核心问题。本文提出了基于改进遗传算法解决软硬件协同综合问题的新方法,基于TTG模型,该方法能够实现多并发任务流在多处理单元结构上的映射。对于遗传算法的若干改进明显提高了综合算法的速度、稳定性和适应性。 在对现有性能评价方法的深入对比研究和对软硬件协同设计中调度问题分析的基础上,本文提出了基于动态关键路径优先调度进行系统层性能评价的方法,实验表明该方法优于其它几种调度算法。 嵌入式微处理器是嵌入式系统的核心,本文介绍了面向嵌入式微处理器的虚拟原型工具——VCPU的设计和实现。同其它微处理器仿真工具相比,该工具具有多层次,可配置,功能全面的特点。 软硬件协同设计强调设计进程的并行化和协作化,该设计方法需要相应辅助设计环境的支持。本文介绍了我们开发的支持软硬件协同设计方法的并行设计环境——YH-CDE,该设计环境以集成框架为核心,支持嵌入式系统多层次的建模与仿真。 最后,对于研究工作进行了总结,并指出了今后的研究方向。 本文的研究成果对于推动软硬件协同设计技术的发展和应用有重要的理论意义和实践意义。

葛保建[2]2008年在《基于SOPC的软硬件协同设计平台的研究与实现》文中指出随着信息技术的高速发展,微电子工艺技术的不断革新和计算机体系结构理论的完善,嵌入式技术不断取得新进展,SOPC(System on Programmable Chip)作为SOC和CPLD/FPGA相结合的一项综合技术,集合了两者的优点,成为可编程技术发展到一定阶段的必然产物。对于嵌入式系统产品开发来说,SOPC技术缩短了开发周期,降低了产品开发的风险。Nios II嵌入式处理器是基于SOPC技术的一个32位软核微处理器,它是一个可变结构、通用的RISC型嵌入式处理器。整个Nios II系统的设计过程充分体现了嵌入式系统软硬件协同设计,可重配置,面向用户,面向应用的SOPC技术设计思想。除此之外,应用与Nios II相关的集成开发平台和辅助开发工具SOPC Builder使嵌入式设计者能非常方便地设计构造以处理器为基础的系统,加快Nios II系统的设计与验证环节的开发速度,对于嵌入式系统的产品开发和应用,提供了极具优势的支持。本文工作来源于武汉市科技计划项目“ASIC综合实验与应用开发系统研发”(项目编号:20043007077-19),本项目的设计目标是针对本科教学过程中所涉及的计算机组成原理,单片机等课程的实验教学,为学生提供实验平台。文中主要讨论了SOPC软硬件协同设计这一方法学在项目设计过程中的应用,对SOPC系统开发部分中,所完成的设计进行了详细的阐述,这一系统开发完成了叁部分内容:1.开发板的原理图和PCB版图设计,开发板安装与调试;2.硬件系统控制逻辑定制,包括Nios II处理器及相关外设的IP核定制设计,并设计自定义外设的控制逻辑;3.针对现有硬件资源,对操作系统μClinux进行模块化定制,设计集成在其开发环境中,并设计LCD液晶显示应用程序在系统上稳定运行。项目实现了一个集ASIC分离元器件实验设计,单片机实验设计,CPLD/FPGA实验设计及SOPC实验设计为一体的实验装置,现已在江汉大学计算机学院硬件实验室投入稳定应用。

夏新军[3]2004年在《SoC中支持软硬件划分的虚部件库设计研究》文中研究说明在SoC系统面市时间缩短和设计复杂度增加的双重压力下,传统的采用基于模块的软硬件协同设计设计方法已经严重滞后于微电子制造技术,成为了集成电路工业进一步快速发展的瓶颈,新的系统级设计语言和基于平台的软硬件协同设计方法得到了广泛深入的研究。软硬件划分是基于平台的软硬件协同设计技术中的一个关键环节,合理的软硬件划分结果对最终生成的系统芯片在性能、成本、可扩展性等许多方面有着重要的影响。 本文深入研究了基于平台的设计方法学和系统级设计语言;提出了支持软硬件划分的虚部件层、虚部件库及虚部件单元的模型,提出了虚部件单元的封装方法;设计实现了虚部件管理系统,设计实现了基于数字流媒体领域平台的存储器模块虚部件和USB控制器虚部件单元:并将该虚部件库管理系统嵌入在SOC-CDE软硬件协同设计环境中,经实例验证,取得了良好的试验结果。 本文的主要研究内容包括: 1.研究了基于平台设计方法学和系统级设计语言SystemC支持下的系统级设计方法,参与设计了基于层次平台的SoC软硬件协同设计环境SOC-CDE系统。 2.提出了支持软硬件划分的虚部件设计模型与封装方法。 虚部件是一类相应实部件的抽象,因此它不必包含过多的硬件实现细节。虚部件设计有叁方面的需求:第一、采用系统级设计语言进行功能描述。第二、采用OCP协议对虚部件进行接口封装实现虚部件的即插即用。第叁、考虑作为虚部件级SoC系统仿真和性能评价基础的虚部件性能模型。 3.研究了虚部件级SoC系统构建过程,确定了虚部件库中虚通信部件的建立与封装标准。 分析了不同层次的虚部件级通信模型的区别,确定了虚部件库中虚通信部件的建立与封装标准,这个标准基于适合软硬件协同设计的事务级通信模型。 4.设计实现了一个虚部件库管理工具。 综合考虑了虚部件设计时对于功能、接口和性能等方面的需求,设计实现了一个虚部件库管理工具。 5.构建了基于数字流媒体应用的虚部件库。 分析了基于SOC-CDE环境进行MP3播放器设计的流程,构建了基于数字流媒体应用的虚部件库;并以存储器虚部件和USB控制器虚部件为例,详细说明了虚部件单元设计的方法和步骤。

夏新军, 文宏, 陈吉华[4]2004年在《SoC设计中支持软硬件划分的虚拟微处理器》文中研究指明在SoC系统软硬件协同设计过程中,采用WISHBONE总线协议标准来构造虚部件级SoC系统,将经过软硬件划分后的软件和硬件在虚部件级进行协同仿真,再进行实部件级的综合。提出了一种基于ARMSim仿真内核的虚部件级微处理器(虚拟微处理器)的模型构造方法,可以简化SoC系统的设计。

强亚东[5]2008年在《基于ARM7核的SoC芯片软硬件协同验证》文中研究指明验证是SoC(系统芯片)设计过程中不可或缺的重要环节,它是在流片前发现设计缺陷和错误的最后机会,所以对于整个项目的成败而言,验证的作用至关重要。随着应用需求的不断提升,SoC的设计规模急剧增大,功能日益复杂,性能要求也越来越高,如何缩短验证时间、提高验证效率和质量以缩短芯片的上市时间便成为当今SoC设计领域中最为关注的课题之一。本论文的研究工作是基于ARM7核的某SoC芯片开发项目的一部分。本文在分析讨论SoC软硬件协同设计和验证技术的基础上,以基于虚拟原型仿真和基于FPGA原型验证相结合的方法构建软硬件协同仿真验证平台,根据既定的功能验证流程和规范,先分别开发模块级和系统级验证程序,在两种验证环境下对SoC设计进行层次化的功能验证;在此基础上,提出了基于嵌入式操作系统的SoC软硬件协同验证的方法,在片上移植两个典型的嵌入式操作系统μCOS-Ⅱ和μCLinux,并开发基本的应用程序以对片上资源进行管理和调用,一定程度上提高了验证效率和质量。本论文所提出的方案在此SoC芯片的开发过程中得以实施,并取得了良好效果。

陈军[6]2006年在《MPEG-SOC中CPU子系统的设计及软硬件协同验证的研究》文中研究表明作为国家重点扶持的产业之一,中国的IC设计业近年来发展迅猛,设计能力也有大幅度提升。涌现了一批以视音频编解码SOC芯片为代表的高端芯片,其中有些芯片还得到了高端设备制造商的认可。 但是SOC芯片的规模日益庞大,功能日益复杂,一次性非重发费用NRE越来越昂贵,而芯片的产品周期却越来越短。伴随着SOC设计风险和上市时间的压力,SOC设计工程师们也面临着以SOC的验证为代表的诸多技术难题。 数字电视已经步入寻常百姓家,随着国家对数字电视发展的进一步政策指向,以及数字电视上下游厂家的共同努力,数字电视产业的井喷式发展已指日可待。 本文介绍了基于数字电视机顶盒应用的MPEG-SOC芯片中CPU子系统的设计。包括CPU子系统的硬件设计以及软件设计。CPU子系统的硬件设计主要包括CPU子系统的存储结构,外围的IP功能模块设计等。CPU子系统的软件设计主要包括RTOS在CPU子系统上的移植,以及基于机顶盒应用的软件系统设计。 验证已经成了SOC的设计过程中的瓶颈。与传统的ASIC功能验证不同,SOC的验证包括了硬件部分的验证,软件部分的验证以及软硬件接口的验证,软件部分的高速高效验证很难用传统的ASIC功能验证方法实现,但是软件设计的失败也将导致SOC芯片的设计失败。因此在SOC的验证中,软硬件协同验证居于核心地位。 本文讨论了软硬件协同验证技术,主要包括基于仿真环境的软硬件协同验证,以及基于FPGA原型的软硬件协同验证。基于仿真环境的软硬件协同验证主要采用模拟技术,利用软件环境或部分硬件加速模拟虚拟的原型目标系统,然后在该原型目标系统上执行软件代码,达到软硬件协同仿真验证的目的。基于FPGA原型的软硬件验证,主要利用FPGA可编程逻辑的特性,在PCB板级完成整个目标应用系统的原型样机,使原型系统可以在实际速度或接近于实际速度的条件下运行,能对复杂的SOC系统进行高速高效的开发和验证,从而减少设计失败的风险并缩短项目周期。

简方军[7]2006年在《一种基于平台的SoPC软硬件协同设计与实现》文中指出合成孔径雷达(Synthetic Aperture Radar,SAR)实时成像是距离向与方位向二维匹配滤波过程,可实现全天时、全天候、大面积对地观察和高分辨率成像,在军事、经济和环境等领域有重要应用价值。SAR实时成像数据规模大、计算复杂、处理精度要求高,片上可编程系统(System on a Programmable Chip,SoPC)是基于可编程逻辑器件(Programmable Logic Device,PLD)的SoC,是SAR实时成像系统研究的重要方向。平台是一个软硬件集成的结构,基于平台的设计(Platform-Based Design,PBD)是SoPC的重要设计方法,软硬件协同设计(Hardware-Software Co-design)为其核心技术之一。 本文围绕基于Chirp Scaling算法的SAR实时成像的具体应用,系统地研究了基于平台的SAR实时成像SoPC的软硬件协同设计与实现,对系统模型、平台设计、算法模拟与原型仿真、系统实现、性能优化以及系统评测等相关内容进行了深入的研究: 结合基于平台的SoPC系统的特点,提出了一种多约束处理流图模型(Multi-Constrain Process Graph Model,MCPGM)。增加了虚拟处理节点,用于描述实际应用中软件和硬件实现之间切换所需的通信开销;增加设计余量约束,提供了面向平台应用的设计余量分析;研究了MCPGM的软硬件划分问题。MCPGM具有较强的平台描述能力,适合基于平台的SoPC系统建模。 设计并实现了一种高性能的片内多总线结构的SoPC(Multi-Bus SoPC,MBSoPC),应用MBSoPC实现了SAR实时成像。设计实现了高效的异步总线桥,该桥采用高速异步FIFO实现了数据快速突发传输。研究了可验证设计(DFV)方法,包括DFV状态机、对关联状态机之间设置状态同步点、设计影子寄存器实现不同存储空间的数据映射。DFV设计有效地验证了基于平台的系统设计,显着降低了验证复杂度,提高了验证效率。MBSoPC支持输入和输出并行,实现了高性能的数字信号处理,具有良好的扩展性。实际测试数据表明,片内叁PLB总线结构SoPC,在相同的时钟频率条件下,处理性能是单PLB总线结构SoPC的两倍。 基于片内叁PLB总线结构的SoPC实现了SAR实时成像Chirp Scaling系统,采用流水线和并行计算技术提高了成像性能。SAR实时成像SoPC系统采用了软硬件协同实现,其中固件实现系统的控制功能,软件完成因子预处理计算,硬件完成实时处理。研究了基于MPI的机群并行算法和性能优化,为SAR实时成像SoPC系统建立了算法设计、系统仿真和成像质量评测体系。详细讨论了SAR实时成像SoPC系统的主要功能单元设计、控制测试子系统以及片上计算流程等。

栾静[8]2006年在《模型驱动的系统级软硬件协同设计若干关键技术研究》文中研究表明随着微电子技术和超大规模集成电路的快速发展,软硬件协同设计的应用范围越来越广,硬件的异构程度和软件的复杂性都达到了前所未有的程度。技术上的不断进步和成熟,使研究人员正逐步由RTL级设计向系统级设计转移。然而目前这一设计领域对系统的高层设计仍然研究不足,较多注重于RTL级和底层芯片的设计,对系统设计规范描述不够,传统的建模技术不能满足系统级设计的要求,结果使设计周期变长,设计修改困难。因此提高设计的抽象层次,采用模型驱动架构(MDA)的设计技术,在整个开发过程中以系统的建模行为驱动设计,已经成为解决问题的有效途径。本文尝试在系统级软硬件协同设计中融合先进的MDA的技术成果,探索出一种模型驱动的软硬件协同设计方案,解决系统功能建模、不同模型(ECDM到SystemC模型)间的自动转换等关键技术问题,使之能有效地分离功能设计与软硬件的具体实现;通过重用已有的组件,扩大设计空间;在不同抽象层次上进行综合与验证,改善设计性能,提高设计效率。作者完成的研究工作和贡献主要有以下几点: ■ 针对消费类数字应用产品的更新换代快、设计周期短的特点,提出了一种基于模型驱动的系统级设计方案。该方案采用具有实时处理的ECDMfExtended Co-Design Model),模型作为系统功能描述模型,以软硬件协同设计为主要特征的SystemC模型作为实现模型,从而有效地分离了功能设计与具体实现;在设计初期能够对系统功能进行验证,纠正设计错误,因此可降低设计成本;通过自动化的模型变换来实现系统级综合,利用组件重用来优化设计空间搜索,因此能够提高系统设计的性能和开发效率。 ■ 扩展了已有CDM(Co-Design Model)模型的实时响应特性,使之能有效地提高设计方案中系统建模的能力。扩展后的模型称为ECDM模型。CDM模型作为系统级功能描述模型,能够在高层描述和调度执行系统功能、允许不同模块并发处理,但是它没有衡量不同时间约束对于系统实现的影响程度,并且同一模块不能对多个并发条件10关系进行响应。ECDM模型通过扩展条件10关系的响应时限,增强模块处理的外壳功能,解决了CDM模型的不足,使ECDM模型具有更广泛的应用范围。 ■ 提出了相应的模型转换的映射规则和算法,其特点为可灵活设置约束参数,重用已有组件等,从而可以达到设计空间优化搜索、提高设计性能的目的。

彭艺频[9]2005年在《面向多媒体应用的软硬件划分方法研究》文中提出在市场需求的推动下,多媒体技术开始广泛应用到手持设备如手机、PMC、MP3播放器中。从最初仅要求广播接收功能到要求MP3、MIDI等音频播放的支持,越来越多的多媒体应用被要求集成到手持设备中,这对手持设备的处理能力提出了很高的要求。为了解决这种日益增长的移动计算需求,具有多媒体处理能力的系统芯片(SoC)开始广泛运用到手持设备中,这极大地降低了设备的成本和功耗,并满足了系统的需求(如实时性)。在该类系统芯片的设计中,采用有效的软硬件划分方法,将多媒体算法合理地分配到有限的硬件资源上,并使得软硬件相互配合,以较小的代价满足系统需求。其中,针对以数据流为主的多媒体应用开发有效的软硬件划分方法是关键。 本文针对多媒体等数据流为主的应用,以单处理器和ASIC为可执行单元,以单层总线的通信拓扑为硬件架构,进行了软硬件划分方法的研究。不同于传统的采用固定划分粒度和只考虑二进制映射的软硬件划分方法,本文提出的软硬件划分方法以遗传算法作为基本算法框架,融合了灵活划分粒度和扩展映射机制,成功开发了以特殊双链编码的遗传算法为核心的软硬件划分方法。根据这种特殊的双链编码机制,设计了对应的遗传操作包括选择操作、交叉操作和变异操作,并针对在划分过程中可能出现的无效解,设计了无效解的修补操作过程,极大地提高了算法的运行效率。为了验证本文方法的有效性,建立了一套完整的随机图测试流程:利用Princeton开发的随机图生成工具TGFF生成大量随机图,通过本文开发的PERL解析器对这些初始随机图进行解析,产生出符合本文软硬件划分要求的随机图。以这些随机图作为测试输入,进行了大量的随机图实验。首先通过横向对比实验验证了灵活粒度机制和扩展映射机制对软硬件划分质量的影响,其次通过纵向对比实验同Rajesh提出的软硬件划分方法进行了对比。实验证明,本文提出的融合灵活划分粒度机制和扩展映射机制的软硬件划分方法是有效的。 以本文提出的软硬件划分方法为核心,建立了包括浮点到定点转换、图模型的抽取、参数提取和反标、软硬件划分、基于调度的快速性能评估以及虚拟原型系统在内的一套软硬件划分的完整解决方案。通过多媒体处理器805Plus中多媒体硬件加速器MMA的设计,实际验证了本文方法的有效性,同时弥补了仅仅依靠随机图实验进行有效性验证存在的局限性。最后,对本文的工作进行了总结,并对论文工作中的不足进行了说明。 本文工作的创新有如下几个方面:提出了集成灵活划分粒度和扩展映射机制的软硬件划分模型;在遗传算法的运行框架下,针对提出的软硬件划分模型,设计了特殊的双链编码方案和对应的遗传操作方案,以此为基础,提出了在软硬件划分过程中融合灵活划分粒度和扩展映射机制的软硬件划分方法;以基于关键路径调度的快速系统性能评估器为内循环,以基于SYSTEMC开发的虚拟原型系统评估为外循环,融合本文提出的软硬件划分方法,建立了一套完整的软硬件划分解决方案。

刘召煜[10]2010年在《可重构片上系统过程级软硬件协同设计编程模型研究》文中研究表明得益于集成电路制造技术与工艺的进步,可编程逻辑器件、微处理器和其它部件已经能够整合成一个高度集成复杂的可重构片上系统。由于面向可重构片上系统的设计方法滞后于器件技术的发展,所以提出了一种过程级的软硬件协同设计方法。过程级协同设计方法有效运转需要编程模型、硬件平台以及模块间的通信结构叁个方面的支持,涉及的问题比较广泛。本文的主要工作是围绕过程级编程模型领域的软硬件透明编程需求问题而展开进行的,为了实现透明化编程,提高设计效率,主要完成了如下工作:首先,从编程模型的角度,给出了过程级软硬件协同设计方法的流程框架,明确了目标应用的描述、综合、运行环境叁个阶段应该完成的任务。应用设计人员可以按照这一流程框架根据需求编写目标应用程序,并综合生成可在目标应用平台上运行的可执行程序。其次,设计了软硬件协同函数的内部结构以及相应各模块的实现方式,协同函数是过程级软硬件协同设计方法的基础,本文着重强调了协同函数接口方面的设计与规范约定,包括协同函数对外的统一接口约定和协同函数硬件实现方式的软件模式接口代码的设计。结合具体实例,给出了软硬件协同函数主要模块的设计与构造方法。然后,由于协同函数结构特殊,有软件和硬件两种完全不同的实现方式,所以设计了一个协同函数调度器,用于生成协同函数的约束信息。本文详细给出了协同函数调度器工作模型,约束信息组织格式和程序运行环境的修改实施方案,测试了调度器工作模型中关键部分的性能。最后,设计了一个简单原型系统,以便不断完善过程级协同设计方法。根据当前可重构片上系统的资源状况,使用了一个简单实例对过程级软硬件协同设计方法的编程模型进行了测试,从应用设计人员的角度验证了编程模型的可行性。

参考文献:

[1]. 软硬件协同综合及虚拟微处理器技术研究[D]. 张鲁峰. 国防科学技术大学. 2002

[2]. 基于SOPC的软硬件协同设计平台的研究与实现[D]. 葛保建. 武汉科技大学. 2008

[3]. SoC中支持软硬件划分的虚部件库设计研究[D]. 夏新军. 国防科学技术大学. 2004

[4]. SoC设计中支持软硬件划分的虚拟微处理器[J]. 夏新军, 文宏, 陈吉华. 计算机工程. 2004

[5]. 基于ARM7核的SoC芯片软硬件协同验证[D]. 强亚东. 西北大学. 2008

[6]. MPEG-SOC中CPU子系统的设计及软硬件协同验证的研究[D]. 陈军. 浙江大学. 2006

[7]. 一种基于平台的SoPC软硬件协同设计与实现[D]. 简方军. 中国科学院研究生院(计算技术研究所). 2006

[8]. 模型驱动的系统级软硬件协同设计若干关键技术研究[D]. 栾静. 华东师范大学. 2006

[9]. 面向多媒体应用的软硬件划分方法研究[D]. 彭艺频. 东南大学. 2005

[10]. 可重构片上系统过程级软硬件协同设计编程模型研究[D]. 刘召煜. 湖南大学. 2010

标签:;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  

软硬件协同综合及虚拟微处理器技术研究
下载Doc文档

猜你喜欢