如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
嵌入式系统设计过程如图1-3所示,首先从系统需求开始。然后是规格说明,在这一步对想要的进行更加细致地描述,但是规格说明只对系统如何工作(工作过程)进行了描述,这些描述并不涉及它的组成。系统内部的详细构造要在开发系统的体系结构时才能展现出来,这一阶段以大的构件为单位给出了系统的结构。一旦知道了需要的构件,就可以设计这些构件,包括软件模块和任何所需要的专用硬件模块。在这些构件的基础上,可以构造出所需要的完整的系统。如图1-3所示,首先从系统需求开始。然后是规格说明,在这一步对想要的进行更加细致地描述,但是规格说明只对系统如何工作进行了描述,这些描述并不涉及它的组成。系统内部的详细构造要在开发系统的体系结构时才能展现出来,这一阶段以大的构件为单位给出了系统的结构。一旦知道了需要的构件,就可以设计这些构件,包括软件模块和任何所需要的专用硬件模块。在这些构件的基础上,可以构造出所需要的完整的系统。1.系统需求分析确定设计任务和设计目标,并提炼出设计规格说明书,作为正式设计指导和验收的标准。系统的需求一般分功能性需求和非功能性需求两方面。功能性需求是系统的基本功能,如输入输出信号,操作方式等;非功能性需求包括系统性能,成本,功耗,体积,重量等因素。2.体系结构设计描述系统如何实现所述的功能和非功能需求,包括对硬件,软件和执行装置的功能划分.以及系统的软件,硬件选型等。一个好的体系结构是设计成功与否的关键。3.硬件/软件设计基于体系结构,对系统的软件,硬件进行详细设计。为了缩短产品开发周期,设计往往并行的。应该说嵌入式系统设计的工作大部分都集中在软件设计上,采用采用面向对象技术,软件组件技术,模块化设计是现代软件工程经常采用的方法。4.系统集成把系统的软件,硬件和执行装置集成在一起,进行调试,发现并改进单元设计过程中的错误。5.系统测试对设计好的系统进行测试,看其是否满足规格说明书中给定的功能要求。针对系统的不同的复杂程度,目前有一些常用的系统设计方法,如瀑布设计方法,自顶向下设计的方法,自下向上的设计方法,螺旋设计方法,逐步细化设计方法和并行设计方法等,根据设计对象复杂程度的不同,可以灵活的选择不同的系统设计方法。1.3.1需求分析大家应该也有点累了,稍作休息1.需求与规格说明通常,需求包括功能部分和非功能部分。当然,我们必须从中获取系统的基本功能,但是,只有功能的描述是不够的。非功能需求包括:(1)性能系统的处理速度通常是该系统的实用性和最终成本的主要决定因素。正如我们已经注意到的,性能是软件性能度量(如执行一个用户级函数的大致时间和必须完成的一个特定操作的硬时限)的组合。(2)价格产品最终的成本或者销售价格也是一个主要的考虑因素。产品的成本包含两个主要部分:生产成本,包括购买构件以及组装它们的花费;不可再生的工程成本(NRE),包括人力成本以及设计系统的其他花费。(3)系统的尺寸和重量最终产品的物理特性会因为使用的领域不同而大不相同。一台控制装配线的工业控制系统通常装配在一个标准尺寸的柜子里,它对重量没有什么约束,但是手持设备对系统的尺寸和重量就有很严格的限制。(4)功耗对于那些靠电池来供电的系统以及其他一些电器来说,电源是十分重要的,电源问题在需求阶段以电池寿命的方式提出。因为顾客通常不能够以瓦为单位描述允许的功率。2.确认需求3.简单的需求表格(1)名称这一项十分简单,但却十分有用。给该项工程取一个名字不仅在和别人讨论这个工程时更加方便,也可以使设计的目的更加明确。(2)目的这一项可以是简单的一到两行的关于系统将要满足的需求的描述,如果你不能用一两句话来描述你所设计的系统的主要特性的话,说明你还不是十分了解它。(3)输入和输出这两项内容比较复杂,对系统的输入和输出包含了大量细节:①数据类型:模拟电信号?数字数据?机械输入?②数据特性:周期性到达的数据,比如数字音频信号?或者是用户的输入?每个数据元素多少位?③输入/输出设备的类型:按键?模/数转换器?视频显示器?(4)功能这一项是关于系统所做的工作的更加详细的描述。从输入到输出进行分析是提出功能的一种好方法:当系统接收到输入时,它执行哪些动作?用户通过界面输入的数据如何对该功能产生影响?不同功能之间是如何相互作用的?(5)性能许多嵌入式系统都要花费一定的时间来控制物理设备,或是处理从外界输入的数据。在大部分情况下,这些计算必须在一定的时间内处理完,对性能的要求必须尽早地明确,因为这些要求在执行过程中得认真加以考虑,以便随时检查我们的系统是否达到了这些要求。(6)生产成本这中间主要包含了硬件构件的花费。如果你不能确定将要花费在硬件构件上的