嵌入式系统开发简介

软件开发

系统开发

系统架构设计


浏览:1265 次

嵌入式系统设计的主要任务是定义系统功能,确定系统架构,并将功能映射到系统实现架构。这里,系统架构包括软件系统架构和硬件系统架构。架构可以映射到不同的物理实现。每个实现代表不同的选择。同时,它必须满足一些设计指标,并优化其他设计指标。嵌入式系统的设计方法不同于一般的硬件设计和软件开发。它采用硬件和软件协同设计的方法。开发过程不仅涉及软件领域的知识,还涉及硬件领域的综合知识,甚至包括机械领域的知识。设计者必须熟悉并能够自由使用这些领域中的各种技术,这样设计的系统才能达到最佳状态。尽管嵌入式系统应用软件的设计方案因不同的应用领域而异,但嵌入式系统的分析和设计方法也遵循软件工程的一般原则。许多成熟的分析和设计方法可以应用于嵌入式领域。嵌入式系统的开发过程还包括需求分析、系统设计、实现和测试等几个基本阶段,每个阶段都有其独特的特点和重点。

测量嵌入式系统设计的一些主要技术指标。

1.NRE成本(非重复工程成本):设计系统所需的一次性货币成本,即一旦设计完成,可以制造任何数量的产品,而无需支付额外的设计费用。

2.单位成本:生产单个产品所需的货币成本,不包括NRE成本。

3.大小:指系统占用的空间。对于软件,它通常以字节为单位;对于硬件,它是通过逻辑门或晶体管的数量来测量的。

4.性能:系统完成指定任务所需的时间是设计期间最常用的设计指标。衡量它的主要方法有两种。一种是响应时间,即从开始执行到任务结束之间的时间。第二个是完成的任务量,即单位时间内完成的任务数量。

5.功率:系统消耗的功率,它决定电池的寿命或电路的冷却要求。

6.灵活性:在不增加NRE成本的情况下改变系统功能的能力。

7.原型建立时间:建立系统可操作版本所需的时间。系统原型可能比最终产品更大、更昂贵,但它可以验证系统的使用和正确性,并改进系统的功能。

8.上市时间:从系统开发到可以销售给消费者,主要影响因素包括设计时间、制造时间和测试时间。

9.可维护性:系统启动或启动后易于修改,特别是对于非原创开发人员。

10.正确性:系统功能已正确实现。您可以在整个设计过程中检查系统的功能,也可以插入测试电路以检查其是否正确。

11.安全性:系统不会造成伤害的概率。每个设计指标之间一般都具有竞争性,一个指标的提高往往会导致其他指标的恶化。

嵌入式系统的开发也可以采用软件工程中的通用开发模型。

1.瀑布模型。瀑布模型由五个主要阶段组成:需求分析阶段确定目标系统的基本特征;在系统结构设计阶段,将系统功能分解为主要架构;在编码阶段,程序主要是编译和调试;检测测试阶段的错误;最后是维护阶段,主要负责修改代码以适应环境的变化、纠正错误和升级。从高级抽象到详细设计步骤,每个阶段的工作和信息总是朝着一个方向流动,这是一个理想的自上而下的设计模型。

2.螺旋模型。螺旋模型假设将建立多个版本的系统。早期版本是一个简单的测试模型,用于帮助设计者建立对系统的直觉,并积累开发系统的经验。随着设计的进展,将创建更复杂的系统。在每一层设计中,设计师将经历三个阶段:需求分析、结构设计和测试。在后期,当一个更复杂的系统