可重用设计方法在SOPC系统设计中.ppt

上传人:xin****828 文档编号:15510873 上传时间:2020-08-14 格式:PPT 页数:83 大小:1.52MB
收藏 版权申诉 举报 下载
可重用设计方法在SOPC系统设计中.ppt_第1页
第1页 / 共83页
可重用设计方法在SOPC系统设计中.ppt_第2页
第2页 / 共83页
可重用设计方法在SOPC系统设计中.ppt_第3页
第3页 / 共83页
资源描述:

《可重用设计方法在SOPC系统设计中.ppt》由会员分享,可在线阅读,更多相关《可重用设计方法在SOPC系统设计中.ppt(83页珍藏版)》请在装配图网上搜索。

1、微电子讲座之一,可重用设计方法在SOPC系统设计中的研究与实现,主要内容,介绍可重用设计方法的概念和发展,系统级设计概况、实现方式和设计方法。 基于SoPC平台的可重用设计方法的拓宽:详细阐述了SoPC系统平台在可重用设计方面和电子系统级设计方面的方法和优势。 基于DSPBullder的SOPC系统级设计:详细介绍系统级设计工具DSPBullder,以及怎样在SoPC平台上完成原型算法模块的设计。,引言,近年来,随着可编程器件技术的进步,可编程逻辑阵列FPGA逻辑容量不断提高而价格在不断的降低,在FPGA上实现SOC即SOPC技术已成为了一种发展趋势。 SOPC( System on Prog

2、rammable Chip)是一种灵活、高效的soc解决方案。首先它是片上系统(soC),由单个芯片完成整个系统的主要逻辑功能。 其次它是可编程系统,具有灵活的设计方式,可裁减,可扩充,可升级,并具有软硬件体系可编程的功能。,将可重用设计方法与SOPC技术相结合,将传统的停留在板级设计层面的嵌入式系统硬件设计提升到基于可编程逻辑芯片上的系统设计,并将可重用设计方法从SOC领域延伸到SOPC领域。 在SOPC系统平台上将可重用设计方法扩展为四个方面:可重构硬件平台、可重配置系统平台、IP核复用与IP核设计、原型算法可重用设计与验证。,可重用设计方法定义,20世纪70年底以来,微电子技术飞速发展,

3、集成电路设计和工艺水平有了很大提高。 如今人类已经可以设计并制造出包含上亿个晶体管的超大规模集成电路,集成在单个芯片上的功能也在不断增加。从而使得以往由许多芯片组成的电子系统集成在一个单片硅片成为可能,构成所谓的片上系统(soc)。,与普通的集成电路(IC)相比,SOC不再是一种功能单一的单元电路,而是将大规模的数字逻辑和嵌入式处理器整合在单个芯片上,集合模拟部件,形成模数混合、软硬件结合的完整的控制和处理片上系统。 因此,当今电子系统设计已不再是利用各种通用集成电路实现板上系统(SOB),即印刷电路板(PCB)级的设计和调试,而是转向以专用集成电路(ASIC)或大规模FPGA以及CPLD为物

4、理载体的系统芯片设计,前者称为SOC,后者称为SOPC(可编程片上系统),设计方法的转变,随着芯片制造工艺的变化,芯片的设计方法也发生了巨大的改变。传统的方法是自上而下先写出所有模块的RTL编码,再将这些模块集成到一个共同的顶层设计下,最后再进行综合。这种方法对于复杂芯片的设计已经不再适应,也满足不了快速变化的市场的要求 现在复杂芯片设计的有效方法就是可重用设计,即使用以前设计的核以及经过验证的核进行设计。,可重用设计方法理念,随着嵌入式技术的不断完善与发展,现在的嵌入式系统设计已经不再像早期那样,只要完成某个特定的功能就可以。越来越多的SoC芯片对系统性能稳定性、可靠性有了越来越高的要求,S

5、oC设计的焦点己经不再是某个新功能的设计和实现,而是如何去评估验证和集成多个己存在的软硬件模块。 可重用设计方法已经成为设计巨大容量芯片的必选方法,因为只有使用这种方法,我们才能在芯片设计过程中有效控制设计费用、缩短设计周期、提高设计质量。从SOC的设计和实践中,人们认识到设计方法的革命就是要完成一个转变,以功能设计为基础的传统流程转变为以功能组装为基础的全新流程。,可重用设计方法规范,可重用设计方法是基于知识产权核的,适用于设计可重用核或者集成可重用核的设计。知识产权核是经过预先设计、预先验证,符合产业界普遍认同的设计规范和设计标准,具有相对独立功能的电路模块或子系统,可重用于SOC、SoP

6、C设计中。 在可重用设计方法中最关键的技术就是IP核的设计与验证。可重用设计在大大提高电子系统设计效率的同时,也提出了对IP核设计中代码、接口、验证、配置等方面的更高要求。,研究内容,可重用设计方法学中对于IP核设计及能够研究的内容大体包括: 面向一般设计问题设计 这就是意味IP核必须很容易进行配置,以适用不同的应用 面向多种工艺设计 对于IP软核,它必须能够面向不同的工艺库进行综合,从而产生令用户满意的结果,面向多种模拟器的设计 对于好的可重用设计,既要有Verilog代码版本,又有VHDL代码版本,能有各种版本的验证和测试向量,而且能够运行在多个主流商用模拟器上。 面向标准的接口设计 IP

7、核设计要基于标准的接口,只有在没有标准可遵循的时候才设计一些特殊、定制的接口,提供独立的验证 可重用IP核在集成到芯片之前必须经过全面、独立的测试和验证,需要保持很高的测试覆盖率 验证要达到高度可信 可重用IP核需要进行极其严格的验证,甚至要建立一个物理原型并附加特定软件进行测试,对于核的应用和限制必须给予全面说明 任何配置中的限制和参数选取,需要清楚地说明,特别是配置方法、参数意义和可重用核接口要求及限制必须详细说明。 系统设计的第一步通常是创建系统的设计规范,包括开发、验证、细化等一整套的设计规范,甚至可以详细到可以开始RTL编码。快速完成一套清晰、全面、一致的设计规范是个非常困难的问题,

8、而一个成功的设计中,设计规范阶段是最关键、最具有挑战性和最耗时的阶段,当前,有两种主要技术有助于描述软件、硬件规范,可使软、硬件更具有鲁棒性和可用性,它们是形式规范和可执行规范 形式化规范:在形式规范中,设计的特征被一种与任何实现都不相关的形式定义下来。一旦设计采用了形式化规范,就可以利用形式化方法来证实实现是否满足规范的要求(利用属性检查) 可执行规范:可执行规范对于描述大多数设计中的功能行为更加有用。可执行规范实际上是对软、硬件的一种抽象模型。对一些高层次的规范用system c或HVL(硬件验证语言)书写。在低层次通常用verilog或VHDL语言描述,采用可重用设计方法的意义,可重用设

9、计方法己经成为SoC设计团队必须采用的一种设计方法,也正在被世 界上越来越多的可重用IP开发团队和SoC集成设计者使用。偶然地重用可以带来2一3倍的效益;而大多数soc设计明确要求使用可重用模块。因为可重用IP核设计需要花费比一般设计更多的时间。所以只有专门的公司或团队来负责可重用模块的开发,可重用模块设计就必须走向标准化。 因此可重用设计方法的最大意义在于使整个芯片设计行业划分两类:IP核集成或使用者和专业的IP核设计或开发者。,可重用设计方法不仅限于数字IP核重用的范畴和SoC设计,随着可重用设计方法的不断完善,势必在模拟IP核和软件的可重用设计上也会逐渐受到重视。 将可重用设计方法从So

10、C设计领域延伸到SoPC设计领域,从可重用设计方法角度阐述基于SoPC的嵌入式系统设计。,ESL系统级设计,ESL系统级设计基本概念 电子系统级ESL (Electronie system Level)设计方法是从算法建模演变而来的,ESL设计已经演变为嵌入式系统软硬件设计、验证和调试的一种补充方法学。这些嵌入式系统包括soc系统、FPGA系统、板上系统、以及多板级系统。 ESL以抽象方式来描述SOC系统,给软硬件工程师提供一个虚拟的硬件原型平台,用以进行硬件系统结构的探察和软件系统的开发。在ESL设计中,系统的描述和仿真速度快,使设计师有充足的时间分析设计内容。 ESL设计不仅能应用在设计初

11、期与系统架构规划阶段,也能支持整个硬件与软件协同设计的流程。,SOC的设计趋势正从RTL向ESL转移。ESL可以帮助设计者从更高层次进行电路设计,它能协助工程师进行系统级设计、结构定义、软硬件分割和协同设计,建立虚拟原型机,以及验证不同构架方案的可行性。 ESL设计的核心TLM( Transaction Level Modeling)事务级建模。目前的ESL工具通常采用工业标准语言进行建模,如c/c、system、system Verilog等。 在基于FPGA的SocPC平台上,还可以使用MATLAB/ Simulink进行建模。用基于模型的设计方法,以系统模型取代书面规范。,系统级设计流程

12、,为了迎接系统设计所带来的挑战,设计师正在将他们的设计方法转移到两种主要的设计方法上: 从瀑布式模式转移到螺旋式模式上 从自顶向下的方法转变为自顶向下和自底向上的混合方法,由图可以看出传统的瀑布模式,项目开发是从一个阶段到另一阶段按步骤推进的,后一阶段完成后,不会再返回到前一阶段。这样的模式中,设计项目通常是由一个团队移交到下一个团队,团队之间没有交流。另外,此模式在上一阶段未完成之前,不允许下一阶段开始。在以前大多数项目开发中,软件设计总是紧跟着硬件设计之后就开始了,然而由于没有硬件平台供软件进行调试,软件开发团队也只能等待,所以软、硬件的开发总是顺序进行。,随着复杂度的增加、几何尺寸的缩小

13、和上市时间的压力,许多设计团队己经从旧的瀑布模式转移到螺旋模式上。在此模式下,设计团队是在多个层面上同时开始设计,增强了设计的竞争力。,上图给出了螺旋式系统设计流程,这种流程的特征包括: 软件和硬件的开发并行; 验证和综合的过程并行; 规划和布局、布线包含在综合过程中; 只有当以前设计的软、硬核不可用时,才开发新模块; 整个过程中有多次迭代。,经典的自顶向下的设计流程式设计中常采用的,它开始于规范制定、功能划分,结束于系统集成和验证。但是像瀑布模式一样,自顶向下的开发方式也是一种可以实现的理想状态。因为它是假定底层的模块己经设计好了,如果某一模块不合 适本次设计,则设计需要重新再反复一次。正因

14、如此,设计团队通常选择自顶向下和自底向上的混合方法。在这一设计过程中,可重用核库可以提供一些已验证过的核,以满足设计的需要。,ESL设计步骤,与以往的SOC系统级设计不同,ESL设计可分3步走。 首先是功能设计,在这一步需要建立并且验证所开发产品的功能模型,通常包括各个部分的功能,各个部分之间的通信、数据流控制输入输出端口等。 其次是基于应用的结构设计 此时需要描述整个系统平台,将功能模型映射到平台上,并进行验证,找到最理想的情况。 最后是基于平台的结构设计 这一步需要对平台进行低层次的描述,建立和谐的硬件结构。,电子系统设计流程,首先接受一个设计定义的输入,这个定义可以是文本、图表、算法或某

15、种描述语言。根据这个输入的定义,完成算法的开发,提出一种系统的架构,用ESL语言来描述这种系统架构,即系统级描述,并在此基础上完成软硬件的初步划分。 完成基本的软硬件划分后,开始软件和系统级硬件的设计。这里的系统级硬件设计是指对功能单元的高抽象层次的建模,完成功能设计。软件设计是根据架构中指定的处理器和软件任务的定义完成应用软件的设计。 软硬件协同验证,根据协同验证的结构反馈给体系结构和软硬件划分,根据性能成本等因素重新做出调整,这是一个重复的过程,在整个设计过程中要根据验证的结果对系统和设计做出调整。 完成验证的硬件和软件就可以组成一个完整的系统设计。,ELS系统级设计特点,ESL设计受到欢

16、迎,主要有三方面的功能: 功能正确和时钟精确型的执行环境使提前开发软件成为可能,缩短了软硬件集成时间;系统设计更早的和验证流程结合,能确定工程开发产品的正确性;在抽象层设置的约束和参数能传递到各种用于实现的工具中。 ESL设计领域有三种不同的层次: 在最高的层次是算法开发; 在设计和实现层次是系统构架开发; 接着就是设计的自动生成过程。,ESL设计有以下几个特点: 1.更早的进行软件开发 2.更高层次上的硬件设计 3.设计的可配置性和自动生成 4.方便的架构设计 5.快速设计和验证,ESL系统级设计的挑战,首先是IP核问题, 在ESL设计中IP无疑起到了很重要的作用。虽然在ESL设计中,功能模

17、块的设计在较高的抽象层次上完成,但这相对于RTL模块的设计速度要快很多。但要完成设计和验证众多的功能模块,没有专业的IP核提供商也是难以想象的,而像处理器等重要的虚拟模型需要由ESL工具或专业的IP提供商来提供,而IP的可配置性决定了他们能否工作在不同的平台上。 其次是设计方法学的发展,ESL是一个新的设计方法,需要在设计流程和设计方法学上进一步探索。 最后是设计人员观念的转变,传统的软件工程师、硬件工程师和体系架构工程师是各自分立,而ESL设计需要他们结合在一起而不是分离。,SOPC技术概述,SoPC是一种灵活、高效的SOC解决方案。它具有双重含义:首先它是片上系统(SoC),由单个芯片完成

18、整个系统的主要逻辑功能; 其次它是可编程系统,具有灵活的设计方式,可裁减,可扩充,可升级,并具有软硬件在系统可编程的功能。 SOPC是PLD和AsIC技术融合的结果。与传统的系统设计相比SoPC继承了SoC的优点。 此外,SoPC将处理器、存储器、I/O口等系统设计需要的功能模块集成到一个PLD器件上,构建成一个可编程的片上系统。下图表示了SoC到SoPC的转变,以往在ASIC芯片实现的众多功能模块以IP核集成的方式在FPGA芯片内实现,系统功能更具灵活性。,从系统集成的角度看,SoC是以不同模型的电路集成、不同工艺的集成作为支持基础的。所以,要实现SoC,首先必须重点研究器件的结构与设计技术

19、、VLSI设计技术、工艺兼容技术、信号处理技术、测试与封装技术等,这就需要规模较大的专业设计队伍,相对较长的开发周期和高昂的开发费用,并且涉及到大量集成电路后端设计和微电子技术的专门知识,因此设计者在转向SOC的过程中也面临着巨大的困难。,SoC面临上述诸多困难的原因在于SoC技术基于超大规模专用集成电路,因此,整个设计过程必须实现完整的定制或半定制集成电路设计流程。 美国ALTERA公司在2000年提出的SoPC技术则提供了另一种有效地解决方案,即用大规模编程器件的FPGA来实现SoC的功能。 SoPC与SoC的区别就是FPGA与AsIC区别。SoPC是SoC发展的新阶段,代表了当今电子设计

20、的发展方向。 其基本特是设计人员采用自顶向下的设计方法,对整个系统进行方案设计和功能划分,最后系统的核心电路在可编程器件上实现。,随着百万门级以上的FPGA芯片、功能复杂的IP核、可重构的嵌入式处理器核以及各种功能强大的开发工具的出现,SoPC已成为一种一般单位甚至个人都可以承担和使用的设计方法。 SoPC基于FPGA芯片,将处理器、存储器、I/O口等系统设计需要的模块集成在一起,完成整个系统的主要逻辑功能,具有设计灵活、 可裁减、可扩充、可升级及软件、硬件在系统可编程的功能。,MCU、 DSP、FPGA,MCU(Micro Control Unit)、DSP(Digital Signal P

21、rocessing)和FPGA在现代嵌入式系统中都扮演着非常重要的角色,它们都具有各自的特点但又不能兼顾。 在简单的控制和人机接口方面,以51系列单片机和 ARM(Advanced RISC Machine)微处理器为代表的MCU因为具有全面的软件支持而处于领先地位 在海量数据处理方面,DSP优势明显;在高速复杂逻辑处理方面,FPGA凭借其超大规模的单芯片容量和硬件电路的高速并行运算能力而显示出突出的优势。,因而,MCU、DSP、FPGA的结合将是未来嵌入式系统发展的趋势。而SoPC技术正使MCU、DSP和FPGA有机融合。 目前,在大容量FPGA中可以嵌入16位或32位的MCU,如ALTER

22、A公司的Nios2处理器;DSP对海量数据快速处理的优异性能主要在于它的流水线计算技术,只有规律的加减乘除等运算才容易实现流水线的计算方式.这种运算方式也较容易用FPGA的硬件门电路来实现。 SOPC一般采用大容量FPGA作为载体,除了在一片FPGA中定制MCU处理器和DSP功能模块外,可编程器件内还具有小容量高速RAM资源和部分可编程模拟电路,还可以设计其他逻辑功能模块。,由于市场上有丰富的IP核资源可供灵活选择,用户可以构成各种不同的系统。 有些可编程器件内还可以包括部分可编程模拟电路。除了系统使用的资源外,可编程器件内还具有足够的可编程逻辑资源,用于实现其它的附加逻辑。 目前精度较高的A

23、SIC产品制造价格仍然相当昂贵,而集成了硬核或软核的CPU、DSP、存储器、外围I/O及可编程逻辑的SOPC芯片在应用的灵活性和价格上有极大的优势。,从应用角度看,SOPC与SOC相比有自己的优点。因为它是基于PLD/FPGA实现的,可以随时下载以验证其功能,灵活性高。 对设计好的产品中,如果要对芯片中电路布局改动,或者增减功能只需要重新下载,设计周期短,不是定制的,是可编程的。 SOPC结合了SOC和FPGA各自的优点,一般具备以下基本特征:,.至少包含一个以上的嵌入式处理器IP核 .具有小容量片内高速RAM资源 .丰富的IP核资源可供灵活选择 .足够的片上可编程逻辑资源 .处理器调试接口和

24、FPGA编程接口共用或并存 .可能包含部分可编程模拟电路 .单芯片低功耗微封装,SOPC设计流程通常包括两方面: 基于Quartus2的硬件设计,基于Nios2的软件设计。对于比较复杂的系统,硬件和软件设计可以分开进行。 下图为SOPC设计流程示意图。,硬件设计工作如下: (l)使用SOPC Builder进行IP软核集成。 (2)将SOPC Builder生成的HDL代码用QuartusII进行综合、布局布线和前端仿真验证,也可用第三方工具综合,仿真验证;将设计顶层模块在目标器件进行I/O分配。 (3)使用QuartusII编程器将生成的配置文件下载到FPGA,进行后端验证和测试,根据结果不

25、断优化设计。,软件设计工作如下: (1)在SoPC Builder构建硬件系统同时,就可以开始编写独立于器件的C/C+应用程序,或编写自行设计的IP核驱动程序。 (2)在NiosII软件开发环境中根据 SOPC Builder对系统的配置脚本生成相对应的HAL库,可以进行对程序进行软件级仿真和调试,还可以进行操作系统配置。 (3)在NiosII软件开发环境中将编译、链接过的可执行程序下载到可编程逻辑器件,进行硬件级的调试和测试,根据结果不断优化设计。,从上图可以看出软、硬件协同设计思想自始至终体现在SoPC系统的开发过程中。不仅在软、硬件划分后,构建硬件系统的同时就可并行地设计软件程序, 当配

26、置文件和软件程序下载到FPGA后,系统的优化和调试完全也是是相互协调、配合的。,可重用设计方法是针对SoC设计所总结出的方法论,将可重用设计方法的思想延伸到以FPGA为平台、以IP核为核心的基于SoPC的嵌入式系统设计中,将研究重点放在算法可重用的设计与评估上,能够彻底摆脱在以往的嵌入式系统设计中,软硬工程师分家和总体设计人员只能停留在SoC应用层的局面。,基于SOPC平台的可重用设计方法的拓宽,SOPC片上可编程系统是美国ALTERA公司于2000年提出一种灵活、高效的SoC解决方案,它将处理器、存储器、I/O接口和用户逻辑电路等系统设计所需要的功能模块集成在一个可编程器件中,构建成一个可编

27、程的片上系统,具有可裁剪、可扩充、可升级以及软硬件在系统可编程的功能。,可重用设计方法源于SoC的设计人员对复杂芯片设计方法的总结和归纳 即使用以前设计完成且已经过验证的知识产权核构建系统的设计方法。 在不断的使用和总结过程中,这种设计方法己经推广到更多的设计层次上并被赋予了更多的内涵 在SoPC平台下,我们认为可以从四个层次或者是模式上定义可重用设计方法。,基于FPGA硬件结构的可重构设计,(1)可重构技术是指用在系统内作为硬件处理单元的可编程逻辑器件,根据需要对其内部结构、功能、连线重新配置,使固定的硬件实现多种多样的可编程解法。 (2)可重构计算机是一种通过将计算单元进行制造后空域连接以

28、实现计算的器件。该定义中的两个要点是:一是制造后的功能定义;二是利用空域连接进行计算。所谓制造后,是指器件功能的定义是在IC器件出厂之后由用户完成的,而ASIC器件的功能是在芯片生产厂制造过程中完成的,在这个意义上可重计算系统与通用处理器十分相似。,空域连接指的是用逻辑门和连线来实现计算,与此相对的另一种完成计算的方式 是用算术逻辑运算单元(ALU)和在ALU上实现的指令序列,后者被称为时域连接方式。,(3)可重构计算系统就是通用定制硬件。这个定义突出通用和定制这两个点。 所谓通用就是可以用同一个硬件平台完成多种计算功能 而定制就是将硬件按照一个特定应用的结构、行为特点进行设计与优化。 通用性

29、是可编程处理器优势,而通过定制获得高性能是ASIC器件的特长。这个定义说明了可重构计算可以兼具可编程处理器的通用性和ASIC器件高性能的优点,基于网络技术的可重配置设计,这里的可重配置设计,并不同于前面的可重构。这里侧重在于系统平台的配置性,是在FPGA中加入CPU核,通过升级软件和必要时修改FPGA电路逻辑,实现软硬件体系可配置,使得不同的设计工作可以使用相同的平台来完成,即系统平台的可重用性。,这里的可重配置既可以是软件上的也可以是硬件上的。 概括的说,可重配置系统结构具备这样一种功能,它能够即时对自身进行重新配置,改变自身的软件结构或者硬件结构,或者两者都改变,并且具备改变这种软硬件结构

30、并重新引导系统自动恢复工作状态的能力。,ALTERA将这种配置设计称为ISP(实时系统可编程),能从远程进行实时系统升级,可以使用任何网络通信网络传输远程系统升级数据。 使用ISP功能的第一步是通过一个确定的或远程的连接,比如以太网连接,将编程比特流发送给应用系统,然后远程升级系统通过JTAG口将数据发送给配置Flash存储器并保存起来。,IP核复用及IP核设计,IP设计与复用技术:主要是指在SOPC系统的设计阶段,推广和使用IP,从而达到保护知识产权,同时提高设计效率,减少设计周期和投入的目的。 IP是具有知识产权的、已经设计好并经过验证的、可重复利用的专利算法和专项应用模块。 IP可以是继

31、承以往的设计,也可以从第三方得到或者自己开发。,从功能上分类,IP核包括:微处理器,数字信号处理器,总线结构,外部设备,I/O通道,大容量内存等等。从结构分类,知识产权核包括:硬核,固核和软核。 具体来说,软核是能综合的HDL描述,硬核为芯片版图的数字描述,固核为门级HDL描述。软核包括逻辑描述(VerilogHDL或VHDL代码)、器件内部连线和可测性设计。 软核可经用户修改,以实现所需要的电路系统设计。,硬核由于功能与工艺设计已完成而不能更改。用户得到的硬核产品仅是产品功能而不是产品设计,因此硬核的设计与制造商能对它实行全权控制,它的知识产权保护也较简单。 固核是一种介于软核与硬核之间的I

32、P。它既不独立,也不固定,可根据用户的要求作部分修改。固核允许用户重新定义关键的性能参数,内部连线标有的可以重新优化,其使用流程与硬核相同。 软核的开发工作量相对低,因此一般开发成本比较低,柔性大,如可增加特性和选择工艺并容易从一个工艺向另一个工艺转移,且性能可提高,但可预测性相对差。 硬核的开发成本最高,柔性小,但性能一定并具有可预测性,易于使用。固核介于硬核与软核之间。,IP核复用,IP核复用对基于IP软核的SOPC系统设计尤其重要。系统需求分析是将嵌入式系统的应用进行量化的过程。正确完善的需求分析是一个成功的嵌入式系统设计的基础;反之,错误的需求分析将给整个设计过程带来毁灭性的结果。 针

33、对不同的应用场合,系统需求分析应该给出性能、体积、功耗、成本和寿命的量化指标。 对基于IP软核的嵌入式系统设计而言,需求分析直接决定系统建模和软、硬件划分,从而决定了IP核的选择,可编程逻辑器件的选择,操作系统的选择,电路板设计等等。,软、硬件划分直接决定系统的硬件结构和软件规模。可编程逻辑器件的优势在此体现的淋漓尽致。 因为CPLD和FPGA的硬件可重构性使得即使软、硬件划分不妥时,只需要重新编辑即可改变,相对SOC系统芯片的设计而言,节省了大量的NRE(Non-Recurring Engineering)费用和宝贵的流片时间。,尽管如此,软、硬件划分始终是基于IP软核的嵌入式系统设计过程中

34、的最重要的步骤,需要讨论的问题包括:功能设计方案、片内互连和片内总线、可调试性与可测性和可重用性。 功能设计方案包括硬件功能方案和软件功能方案。软件功能方案则指出系统所需的操作系统,将使用的软件库和自行设计的软件功能模块。 硬件功能方案需要指出系统复用的IP软核功能和自行设计的IP核功能,在此重点阐述硬件功能方案。,IP核复用和集成并不是简单的将IP核连接起来,而是通过选择合理的分布将IP核集成到顶层设计中。需要使用以下方法在一定程度上来缓解上述问题,(1)将接口开发纳入整个设计计划中,不要将接口问题留到设计最后阶段,而应该在设计初期就规划好详细的分析和定义。 (2)选择接口尽量简单的IP核,

35、保证外部IP核可以在任何时候知道当前的数据状态,同时尽量只选择支持标准总线的IP核。 (3)通常需要对软核进行参数配置,然后才能生成RTL代码。因此在选择软核时,板极系统设计是不涉及片内总线的,但是对基于SoPC的嵌入式系统不仅要考虑其功能特性,也要考虑到参数配置是否能够满足设计要求。,(4)验证和测试平台也是在选择IP核时重要的一方面。被选的IP核必须有详细的验证和测试平台,这不仅保证完整的验证IP核本身的功能,更帮助设计人员提高系统级验证的效率。 (5)IP核的文档,易用性和价格当然也是IP核选择的考虑因素。,片内互连和片内总线是IP复用和集成的重要问题。IP核与IP核之间的接口直接代表数

36、据流通道,因此在选择可重用的IP核是应该选择接口支持总线标准的IP核,这样才能使IP核之间不仅仅能够点对点连接,而是可以保证多个IP核之间的连接,并且成熟并通用总线有良好的仲裁机制。对于嵌入式系统来说,片内总线是系统的中枢。 值得单独提出的是在板极设计中常用的三态总线并不适合SoPC系统,因为三态总线需要保证每个周期都只有一个驱动源,在多驱动源情况下是很难确保传输可靠性。 所以,当IP核需要与片外三态总线相连时,如SRAM,FLASH等存储器,应该使用三态总线桥。,虽然可调试性和可测性从系统规范制定时就要规划和考虑,但它们也是软、硬件划分需要考虑的另一问题。 板极设计的可调试性设计主要来自电路

37、板设计上留有余地,可测性主要是示波器,逻辑分析仪测试物理信号和测试点的设制。 而基于可编程逻辑器件和IP核的嵌入式系统设计,将可调试性和可测性的重点转移到可编程逻辑器件内部。虚拟仪器使测试可编程逻辑器件内部信号和管脚信号变得简单可行,专用调试模块则使软件调试和测试得到硬件级的支持。,IP核设计,可重用设计方法的基础是大量的IP核资源,IP核设计理所当然地成为基于IP软核的嵌入式系统设计的重点。 与硬件功能模块的设计和验证相对应,软件功能 模块也有其设计和验证方法。 当物理平台为可编程逻辑器件,IP核设计以软核形式应用于系统中时,IP核设计工作主要集中在布局布线以前,流程如下图所示。,可重用性是

38、基于IP核的嵌入式系统设计的最大特色。不仅在系统设计过程中,设计人员最大限度的使用可重用的IP设计以提高效率,而且可重用设计方法还提高了验证的效率。 在软、硬件划分中需要做到规范化、简单化和局部化来保证系统的可重用性。 因此,为了提高基于IP核的嵌入式系统设计的可重用性,建立一个设计团队内部的IP核库是非常有必要的,它可以大大减少设计新IP核的可能性。,基于EDA设计环境的算法可重用设计,越来越多的EDA设计工具正在使算法模型和软件代码转换成硬件的这一过程自动化。 正是利用可靠的综合工具,FPGA的开发开始支持更高级别的抽象设计,使得FPGA设计可以直接应用算法级仿真结果,完成模型设计到硬件实

39、现的一体化设计。 这就是目前可重用设计的最高层次,即利用原型算法的可重用性。,即借助各种EDA工具和现有的模型,构造可复用的算法验证平台 同时这个平台不只是计算机上的仿真软件,而是与实际环境相同或者相似的实际平台,在这样的平台上进行的算法验证是具体实施可预测的,能对具体性能做出评估,不同于仿真软件上的模拟结果 这样的验证环境能够对算法在实际运用过程中的资源消耗与性能做出准确的测试结果。,实现算法可重用设计,必须解决算法的可测性问题和在硬件平台上的在环测试流程。 算法上的可测性不仅对系统设计带来方便,更重要是在学术理论研究上脱离纸上谈兵的方式,将算法上的创新和性能评估紧密连接起来。 硬件平台的在

40、环测试能够不必等到在实际的应用平台上再验证,而在算法初期就可以得到效果。,下图是算法可重用设计的流程,设计过程就是算法模型设计到RTL级实现的反复验证,修改的过程,但这种过程在一个设计平台中就能实现,其设计的时间周期可以大大缩减。 图中虚线将设计流程分为了两大部分,左边是在 MATLAB/Simulink中的工作,是系统级层次上设计过程; 右边则是在EDA设计工具(如Quartusll)中的工作,是电路级的设计过程。,设计流程的具体步骤如下: (1)对算法进行分析,确定其基本功能,定义其输入输出信号; (2)在simulink环境下进行建模,分层次、分模块完成算法建模; (3)进行算法的功能仿

41、真,确定是否满足系统要求; (4)仿真通过后利用DSpBuilder设计工具加入DSPBuilder的库模块完成建模, 这种建模是和硬件实现相联系的,是最终实现硬件设计的前提。 (5)进行EDA环境仿真,simulink中的算法模型可以给DsPBuilder中的模型提供对比、参考,使设计达到系统所要求的性能;,( 6)仿真正确后,自动完成系统级设计到RTL级的转换; (7)对转换后的硬件代码进行在环测试,可及早确定系统是否满足要求。 (8)对硬件代码综合适配,运行在SoPC平台上就可执行相应的功能。 当完成上述8个步骤,一个正确的原型算法模型就设计好了,该模型以DSPBullder中的模型为保

42、存方式,在其他设计中调用该模块就可以快速的将该算法应用到硬件平台中。,基于EDA设计环境的算法可重用设计包括了以下几个问题: 1.算法可重用的设计:在simulink /DSPBullder的设计环境中,可以利用MATLAB的丰富资源,对算法进行建模,同样需要使用DSPBullder模块库中的单元模块对算法重新建模,为以后的硬件实现提供基础。 而simulink下的模型可以提供参数、性能的参考和对比。我们既可以将算法模型设计为FPGA中的主设备,也可以将算法模块做为CPU的协处理器或做CPU的一个外设备设计。,2.算法可重用的实现:设计好的模块可以保存在自己定义的库中,做为原有系统或升级系统中

43、的子模块,可以在设计其他系统时重用这些模块。 3.算法可重用的仿真:包括功能仿真,软件仿真,硬件仿真。在功能仿真中,可以使用MATLAB提供的测试激励,或者RTL语言实现的输入激励。既可以使用Simulink中的模块查看输出结果,而转换过程中生成的testbench可以支持其他EDA设计工具做时序仿真。 4.算法可重用的测试:在硬件在环测试中,可以将转化为硬件实现的模型放在SoPC平台上运行,而结果输出到MATLAB环境中进行验证。这种方式可加快仿真速度。,从设计工具方面看,ALTERA提供的集成开发环境Quartus2能完成从原型设计到编译下载的全过程。 特别是设计工具中集成的soPcBui

44、lder,DsPBuilder等系统级设计工具,可以完成算法级设计、软硬件协同设计、联合仿真,协同验证等工作。 与基于AsIC的SoC相比,SoPC在ESL设计中具有更多的特点和吸引力:,(1)SoPC技术天然地具有硬件可编程的特性 可重构技术所依赖的可编程逻辑器件,具有硬件可重构、可编程特性。由于可编程逻辑器件的最小设计单位是逻辑宏单元,它可以通过重新配置,改变原有的逻辑,完成硬件重配置的要求。 另外,可以针对特殊应用,定制满足要求的硬件加速模块。与传统的开发平台仅能满足软件可重构的特性相比,基于可编程逻辑器件的开发平台,能够满足软、硬件都可重构的要求,便于在设计的过程中,采用软硬件协同设计

45、、lP复用等全新的设计理念和方法。,(2)SoPC技术可大大缩短了产品上市时间,延长了生存周期 可编程逻辑器件在很长一段时间里主要用于进行硬件系统的原型设计,这一点在当前新的应用需求下有了进一步发展。 SoPC技术的原型系统在经过针对不同应用的不同配置后就成为了相应的产品可以直接投放市场,这消除了需要针对各个应用进行单独设计带来的时间开销,同时减少了设计中出现错误的概率,系统的可靠性也得到了提高。另外,当前的很多应用领域瞬息万变,各种新标准、新应用层出不穷。 在这种情况下,可重构系统能够“以不变应万变”,仍旧利用现有资源,根据实际情况及时调整系统功能以满足市场需求。在一些关键任务执行中,很多任务要到开始前一刻才能最终确定,可重构系统的存在无疑为这类应用也提供了有力的支持。,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!