1引言
嵌入式计算机的设计不同于通用的计算机设计,它的设计过程较复杂。对于嵌人式计算机的设计,是针对具体的应用问题,通过对问题的描述、建模,分解嵌入式计算的任务需求后,在建立的计算模型上,进一步地向设计的领域转换,即:将需要完成的计算任务向可以有效地解决该问题的嵌入式计算机系统结构与组成映射。
嵌人式计算机的设计,涉及到软件和硬件的分别设计。硬件的设计,主要是需要考虑处理器的类型及数量,系统组成部件(包括处理器、存储器、专用部件及可编程部件、I/O部件等)之间的互联拓扑结构(即选择通信部件,以什么样的总线协议进行系统各组成部件的互联)。嵌入式计算机,由于其设计时间要求、应用环境的限制,对它的设计成本、设计性能都有特殊的要求。
嵌入式计算机的设计*价指标,可以是多种指标的综合,例如:处理速度(主要以任务的计算时间度量)、设计体积、设计成本、实时反应能力、系统的功耗、可靠性与可信度等。由于嵌入式计算机设计本身的复杂性及特殊性,不同的设计要求,*价的方式方法对不同的设计过程各不相同,同时,对这些*价指标的偏好程度及侧重点也不相同。有的环境要求很苛刻的实时性,有的应用场合要求很小的设计体积,有的要求在较小的设计成本下获得尽可能快的处理速度等。因此,嵌入式计算机的设计*价与测量是复杂的。
本文主要就嵌入式计算机的设计*价指标、*价方法,使用到的*测技术及用于设计过程中的*测基准方法进行分析,并对未来的嵌入式计算机设计中用到的*测基准技术进行探讨。
2嵌入式计算机的设计性能测试指标
对于嵌入式计算机的设计性能进行*价,需要对构成嵌入式计算机系统的组成部件,如嵌入式微处理器、编译器、运行库等关键的系统构件的*价性能特征,定义一系列的性能指标。用于嵌入式计算机设计性能*测的常用指标有以下几种:
(1)系统的执行时间(Execution Time)和加速比(Speed Up)
嵌入式计算机设计对于运行的应用程序执行时间衡量,是嵌入式计算机系统设计性能测试中最重要的性能指标。用于*测的基准程序运行时间,即基准程序的运行速度,直接反映了嵌入式系统的性能。这一性能指标,主要由嵌入式微处理器、存储系统的层次结构和I/O系统的整体性能决定,同时,也与应用程序向嵌入式计算机目标处理器编译过程有关。编译器的优化能力、支持程序运行的运行库性能对应用程序的运行时间,有着密切的关系,同时,也受操作系统的开销和同时运行的其他用户任务的影响。这一性能指标,通常会选择系统对应用测试程序的最大峰值速度作为为度量的指标。
通过对比测试,可以*测2个嵌入式系统及构成系统的关键构件设计的改进加速比:
(2)代码尺寸(Code Size)
代码尺寸是指将应用程序的源程序,由编译器编译后生成的二进制代码大小。嵌入式系统是资源受限的系统,它的内存资源往往受应用需求与成本的限制,要求应用程序的目标代码在达到一定性能的条件下,尽可能降低代码尺寸,以减少对有限内存资源的占用量。通过编译后的基准测试程序代码尺寸,可以反映微处理器的代码压缩性能和用于这种微处理器上编译器的存储优化性能。
(3)系统功耗(Energy Consumption)
目前的嵌入式系统,对于电源的要求也较为苛刻。由电池供电的嵌入式系统,一般都尽可能节省电源的要求。低功耗的嵌入式系统设计,不仅节省了系统的电源耗费成本,而且在很程度上可以有效地延长系统使用寿命。因此,对于系统的功耗*价,也是嵌入式系统的一项重要性能指标。嵌入式系统的能量消耗主要由各芯片的工艺属性和电路规模决定,受芯片电源管理控制。进一步的系统设计,进入片上系统(System-on-a-Chip,SoC)的设计时代后,系统的功耗就将会有硬件本身维持运行所消耗的静态功耗及进行软件任务的计算所表现出的系统芯片逻辑门翻转而引起的动态功耗。在目前普通的嵌入式计算机中,硬件芯片的功耗管理,可以最终通过指令序列和软件编程控制,分别由编译器指令调度和操作系统功耗管理模块完成。嵌入式系统的功耗指标,表征着嵌入式系统硬件、操作系统和编译系统的省电属性。