嵌入式系统开发设计

嵌入式系统开发设计

嵌入式系统设计的主要任务是定义系统的功能、决定系统的架构,并将功能映射到系统实现架构上。系统架构既包括软件系统架构也包括硬件系统架构。前端

嵌入式系统设计具备如下特色: 软、硬件协同并行开发; 微处理器的类型多种多样; 实时嵌入式操做系统具备多样性; 与通用系统开发相比,可利用系统资源不多; 应用支持少; 要求特殊的开发工具; 软、硬件都要很健壮; 调试很困难。后端

开发模型与设计流程 :架构

嵌入式系统的开发也能够采用软件工程中常见的开发模型,主要包括瀑布模型、螺旋模型、逐步求精模型及层次模型。工具

(1)瀑布模型。性能

瀑布模型由五个主要阶段构成:开发工具

需求分析阶段肯定目标系统的基本特色;测试

系统结构设计阶段将系统的功能分解为主要的构架;编码

编码阶段主要进行程序的编写和调试;操作系统

测试阶段检测错误;设计

最后一个是维护阶段,主要负责修改代码以适应环境的变化,并改正错误、升级。各个阶段的工做和信息老是由高级的抽象到较详细的设计步骤单向流动,是一个理想的自顶向下的设计模型。

(2)螺旋模型。

螺旋模型假定要创建系统的多个版本,早期的版本是一个简单的试验模型,用于帮助设计者创建对系统的直觉和积累开发此系统的经验,随着设计的进展,会建立更加复杂的系统。在每一层设计中,设计者都会通过需求分析、结构设计、测试三个阶段。

(3)逐步求精模型。逐步求精模型是一个系统被创建屡次,第一个系统被做为原型,其后逐个将系统进一步求精。当设计者对正在建造的系统的应用领域不是很熟悉时,这个方法颇有意义。经过建造几个愈来愈复杂的系统,从而精炼系统,使设计者能检验架构和设计技术。此外,各类迭代技术也可仅被局部完成,直到系统最终完成。

(4)层次模型。许多嵌入式系统自己是由更多的小设计组成的,完整的系统可能须要各类软件构件、硬件构件。这些部件可能由尚需设计的更小部件组成,所以从最初的完整系统设计到为个别部件的设计,设计的流程随着系统的抽象层次的变化而变化,从最高抽象层次的总体设计到中间抽象层次的详细设计,再到每一个具体模块的设计,都是逐层展开的,其中每一个流程可能由单个设计人员或设计小组来承担,每一个小组依靠其余小组的结果,各个小组从上级小组得到要求,同时上级小组依赖于各个分组设计的质量和性能。并且,流程的每一个实现阶段都是一个从规格说明到测试的完整流程 。

嵌入式系统设计不一样于传统的软件设计,如图 12-11 所示。常常包含硬件设计和软件设计,其中前端活动,如规格说明和系统架构,须要同时考虑硬件和软件两个方面。

后端设计,如系统集成和测试要考虑整个系统。在中间阶段中,软件和硬件构件的开发彼此相互独立,而且大多数的硬件和软件的工做可以相对独立地进行。最后,要将经调试后正确无误的可执行程序固化到目标机上。