具有硬件矢量浮点运算单元的MCU在医疗电子中的应用
微控制器是将微型计算机的主要部分集成在一个芯片上的单芯片微型计算机。微控制器诞生于20世纪70年代中期,经过20多年的发展,其成本越来越低,而性能越来越强大,这使其应用已经无处不在,遍及各个领域。例如电机控制、条码阅读器/扫描器、消费类电子、游戏设备、电话、HVAC、楼宇安全与门禁控制、工业控制与自动化和白色家电(洗衣机、微波炉)等。
现今的嵌入式工业及汽车系统中,有许多是基于8位或16位微控制器架构来设计的。随着新的低功耗32位架构的面市,这些应用有可能获得更高的性能、准确度和功效。此外,处理能力的提高也有助于实现新产品的差异性功能,包括先进的控制算法,GUI显示器、语音控制,以及电容式触摸感测等下一代接口。8 bit/16 bit微控制器通常需要消耗很多计算资源来做这些工作。今天,内置浮点运算的强大微控制器开始出现,32 bit微控制器有足够的能力来实现其中的许多功能。
评估微控制器的性能
相比于专业的DSP处理器,微控制器用于信号处理具有如下优势:
(1)有效的循环控制;(2)丰富的外设;(3)单一的处理器结构、指令集和开发工具链;(4)统一的中断和任务切换环境,同类存储器;(5)同样的操作系统同时管理控制和信号处理任务,基于MMU;(6)由于大大地简化了开发过程,所以上市时间较短;(7)流行的微控制器容易获得,开发工具成本低。
如何评估微控制器的性能是否满足应用需求,是工程师在项目设计的早期阶段需要考虑的问题。评价和汇总来自数据手册的信息是一种有效方法,另一种方法是使用某一类型的评估板来进行特定性能测试和功耗测试的方法。这两类方法都有各自的缺点。
32位与8/16位系统的效率差异相当大,在16位处理器上,一次普通的32位乘/累加操作需要4次乘法与4次加法运算。由于需要访问存储器以存储中间结果或释放多个寄存器,执行效率会进一步降低,并可能减慢其他操作的速度。因此,在16处理器上,一次32位乘法可能需要20~40个周期。而32位UC3C处理器只需要单个周期即可。此外,32位管线较宽,故从存储器检索数据及指令的速度更快。
在评估过程中,使用了三个步骤:(1)通过运行各种系统测试基准,并改变不同的系统参数,抽象出系统特征;(2)解释收集的特征数据来确立系统的行为;(3)通过系统的行为决定怎样设定控制参数,从而使系统表现达到预想的效果。
特征化
从理论上来说,性能测试是对运作系统式样的质化或量化评估。在实际应用中,系统的式样可能不够详细,不足以定义完整的质量测试,创建测试也许太昂贵,不能保证其开发。一个比较好的得到系统特征的折衷方法是,使用测试基准作为一个或一系列以软件执行的测试,提供量化的数据,这些数据可以用来比较不同系统的特性。
为得到微控制器的特性,从EEMBC的Auto-Bench组选择一套性能测试基准。这些基准帮助预测微控制器在汽车电子,工业和一般应用中的性能。运行每一个基准测试都通过多次反复循环以消除一些启动代码在每次测试开始时只运行一次的影响。使用这一工业标准基准组件的一个优势就是可以将结果数据与其他类似架构微控制器的测试数据进行比较,以评判总体系统性能。
这里所测试的微控制器是基于ARM926EJ-S内核,带硬件矢量浮点协处理器和一个32 KB的指令缓存(I-cache)。该测试衡量浮点协处理器和指令缓存的性能。在微控制器不同的工作频率时运行Auto-Bench测试基准,使用Energy-Bench测量每一基准执行中消耗的能量。Energy-Bench是另一个EEMBC工具,可以测量基准负载运行时处理器消耗的能量。从Energy-Bench收集的数据可以观察到微控制器在各种不同负载下的能量效率。选择了这些工具来评估微控制器,下一步就是确定微控制器在不同运行条件下的性能。
性能分析
为了分析微控制器的性能,需要决定在不同条件下的整体系统响应。在测试项目中,需要评估恩智浦微控制器上浮点协处理器和指令缓存的性能。
运行Auto-bench基准测试组,改变4个参数:运行频率、CPU核的电压、指令缓存的状态和浮点协处理器的状态。
Auto-Bench/Energy-Bench测试环境系统由三部分组成:数据获取系统(DAC)、软件开发环境和测试目标。美国国家仪器公司的DAC连接到PC机上,PC机运行Energy-Bench这一功耗和能耗测试软件。软件测试环境使用KeilTM集成开发工具来编译,下载和运行Auto-Bench测试基准。把供给微处理器的三个电源电压隔离开,Energy-Bench可以测量Auto-Bench基准测试中消耗的能量,并计算在每一测试中消耗的总能量。
在4种不同的频率下运行Auto-Bench(13 MHz、52 MHz、104 MHz和208 MHz),并组合其
MCU 医疗 电子 应用 单元 运算 硬件 矢量 浮点 具有 相关文章:
- 如何将DSP和MCU两者完美结合(08-10)
- 基于MCU+DSP的运动控制硬件平台设计(10-01)
- 微控制器省电管理方法(05-04)
- 利用低成本的MCU的UART驱动智能卡(05-04)
- DSP结构特点和运算性能(07-19)
- 基于DSP+MCU的列车滚动轴承故障诊断系统设计与应用(10-08)