嵌入式系统的软硬件协同设计.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE 1 PAGE 1 嵌入式系统的软硬件协同设计 协同设计转变了传统的设计反复修改系统方案的缺点,通过综合分析系统软硬件功能,最大限度地挖掘系统软硬件之间的并发性,将软硬件开发结合得更紧密,可以大大提高设计效率,使设计出来的系统工作在最佳工作状态。本文将系统地阐述软硬件协同设计技术。 传统的先硬件后软件嵌入式系统的系统设计模式需要反复修改、反复试验,整个设计过程在很大程度上依靠于设计者的经验,设计周期长、开发成本高,在反复修改过程中,常常会在某些方面背离原始设计的要求。 软硬件协同设计是为解决上述问题而提出的一种全新的系统设计思想。他依据系统目标要求,通过综合分析系统软硬件功能及现有资源,最大限度地挖掘系统软硬件之间的并发性,协同设计软硬件体系结构,以便系统能工作在最佳工作状态.种设计方法,可以充分利用现有的软硬件资源,缩短系统开发周期、降低开发成本、提高系统性能,避免由于独立设计软硬件体系结构而带来的弊端。 将这一设计思想应用在实际产品开发上离不开EDA工具的帮助,本文也将对几种比较成熟的协同设计EDA工具加以简洁介绍。 1、协同设计与传统设计方法的比较 嵌入式系统是由若干个功能模块组成的,这些功能模块根据其性质可以分为软件模块和硬件模块两类。在过去几十年内,系统的设计方法经历了很大的变化,有自上向下的设计方法,也有模块化设计方法,他们总体上都是硬件模块优先的设计方法,将其统称为传统的设计方法。其基本思路如图1所示。 图1传统设计方法设计流程图 这种设计方法将硬件和软件分为两个独立的部分。在整个设计过程中,通常采?quot;硬件优先的原则",即在粗略估计软件任务需求的状况下,首先进行硬件设计,然后在此硬件设计平台上进行软件设计。由于在硬件设计过程中缺乏对软件构架和实现机制的清楚了解,硬件设计工作带有一定的盲目性。他的系统优化由于设计空间的限制,只能改善硬件/软件各自的性能,不可能对系统做出较好的综合优化,得到的最终设计结果很难充分利用硬软件资源,难以适应现代复杂的、大规模的系统设计任务。 而嵌人式系统软硬件协同设计是让软件设计和硬件设计作为一个整体并行设计,找到软硬件的最佳结合点,从而使系统高效工作。协同设计的基本思路如图2所示。 图2软硬件协同设计流程 从图2可以看出,软硬件协同设计最主要的一个优点就是在设计过程中,硬件和软件设计是相互作用的,这种相互作用发生在设计过程的各个阶段和各个层次。 设计过程充分体现了软硬件的协同性。在软硬件功能安排时就考虑到了现有的软硬件资源,在软硬件功能的设计和仿真评价过程中,软件和硬件是相互支持的。这就使得软硬件功能模块能够在设计开发的早期相互结合,从而及早发觉问题及早解决,避免了(至少可以削减)在设计开发后期反复修改系统以及由此带来的一系列问题,而且有利于挖掘系统潜能、缩小产品的体积、降低系统成本、提高系统整体性能。 2、软硬件协同设计的过程 总的来说,软硬件协同设计的系统设计过程可以分为系统描述、系统设计、仿真验证与综合实现4个阶段。 系统描述是用一种或多种系统级描述语言对所要设计的嵌入式系统的功能和性能进行全面的描述,建立系统的软硬件模型的过程。系统建模可以由设计者用非正式语言,甚至是自然语言来手工完成,也可以借助EDA工具实现。手工完成简单导致系统描述不精确,在后续过程中需要修改系统模型,从而使系统设计复杂化等问题,而优秀的EDA工具可以克服这些弊端。 对于嵌人式系统来说,系统设计可以分为软硬件功能安排和系统映射2个阶段。软硬件功能安排就是要确定哪些系统功能由硬件模块来实现,哪些系统功能由软件模块来实现。硬件一般能够供应更好的性能,而软件更简单开发和修改,成本相对较低。由于硬件模块的可配置性,可编程性以及某些软件功能的硬件化、固件化,某些功能既能用软件实现,又能用硬件实现,软硬件的界限已经不非常明显。此外在进行软硬件功能安排时,既要考虑市场可以供应的资源状况,又要考虑系统成本、开发时间等诸多因素。因此,软硬件的功能划分是一个复杂而艰苦的过程,是整个任务流程最重要的环节。 系统映射是依据系统描述和软硬件任务划分的结果,分别选择系统的软硬件模块以及其接口的详细实现方法,并将其集成,最终确定系统的体系结构。详细地说,这一过程就是要确定系统将采用哪些硬件模块(如全定制芯片、MCU,DSP,FPGA、存储器、I/O接口部件等)、软件模块(嵌入式操作系统、驱动程序、功能模块等)和软硬件模块之间的通讯方法(如总线、共享存储器、数据通道等)以及这些模块的详细实现方法。 仿真验证是检验系统设计正确性的过程

文档评论(0)

185****9607 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档