《嵌入式系统中“软外设”的研究》由会员分享,可在线阅读,更多相关《嵌入式系统中“软外设”的研究(4页珍藏版)》请在金锄头文库上搜索。
1、 嵌入式系统中“软外设”的研究 嵌入式系统中“软外设”的研究嵌入式系统论文 嵌入式系统中“软外设”的研究摘要:随着 CPU 的性能的不断提升,处理速度越来越快,运算 能力不断增强,在许多嵌入式系统的开发中逐渐出现了软外设 (Soft 公司宣称他们的 32、64 位 RISC 处理器已经能用软件实现更 多更强的功能,指令集也更为丰富,甚至包括 DSP 方面的许多功能 现在已经能够在 CPU 上实现。Motorola 公司已经开发出基于 SM56PCI 接口的用纯软件实现的调制解调器。这些都说明电路设计 已经进入了一个崭新的时期。目前,电子设计中把外设嵌入进系统的方法主要有两种。方法 是采用标准的
2、微处理器一块辅助芯片,辅助芯片可以是 FPGA 或 CPLD 等可编程逻辑芯片;方法是采用基本的 CPU 内核附加逻 辑单元,这些可以在一块高密度可编程逻辑芯片上实现,CPU 内核 往往为 Altera 和 Xilinx 等 FPGA 生产厂家提供的软件模块。以上两 种方法都需要开发人员熟悉硬件描述语言,但在实际应用中 CPU 内 核以及各种 IP 核的使用的往往要得到产权许可,而且可编程逻辑芯 片体积大,价格昂贵,故在一些便携式装置的研制中不便采用。软外设的设计通常是采用标准的微处理器,在满足系统稳定和系 统负荷允许的条件下,设计中尽可能多地采用可配置的软件模块, 用这些可配置的软件模块来实
3、现某种外设的功能。并且可以配置、 升级、重组,从而完成特定的功能。应该说明的是,并不是所有外 设的功能都能完全由软件实现,这种设计方法的目的是在系统允许 的条件下尽量“以软代硬”,以尽可能少的硬件开销取得最佳的性能 比。二、系统要求下面给出具有软外设的嵌入式系统结构图。下面给出对嵌入式系统的要求:(1)高性能 CPU 内核。软外设的必须以高性能 CPU 内核为支 持,只有采用高性能 CPU 内核,系统的频率才能得以提高,软外设 和 CPU 之间才能高速传送数据,软外设才能得以高速运行而对系统 整体工作不会有太多影响。建议采用带有流水线、32 位以上 RISC 核的 CPU。(2)快速的中断响应
4、。软外设均采用中断方式向 CPU 提出服务 请求。可以在片上存储器与内部总线之间增加寄存器组来减少系统 的中断响应时间。(3)附加硬件模块。正如前面所提,系统有些特性是不能由软 件实现的,象定时器、中断控制器。另外在信号处理中由于 A/D、D/A 转换如果用软件实现对系统开销太大,由硬件实现较好。(4)快速、足够的存储器和高性能的运算单元。三、软外设的算法设计由于软外设要求实时性强,有时需要和别的应用程序并行执行, 在设计时可以把软外设看作等待服务的任务,协调、安排好这些任 务非常重要,根据任务的确定性可以把实时系统的进程调度策略划 分为两类:一类是静态的,主要负责预先知道发生时间的任务;要
5、求按进度准点完成的任务;要求固定时间发生的任务。对这类调度 策略可以采用 Roundrobin 算法或间隔算法(见 3)。另外一类是 动态进程调度策略,负责那些不能预测何时发生任务;不知执行周 期有多长的任务。这是一些具有临时性的任务,比如含有条件循环 的任务(不知何时满足条件)。以上两种策略分别适用于不同的情 况,在一个复杂的系统中,往往存在几个要求并行执行的软外设, 进程的调度对任务的同步和系统的优化非常重要。另外为了设计的可移植性和简便,要进行模块化和层次化设计, 复杂的软外设可以看作由几个具有层次的简单的模块构成。四、性能分析现以示出了一个嵌入式系统的框图,该系统采用 Motorola
6、 公司 生产的 MCF5104 型号 CPU,接有三个软外设,分别为UART、LCD 和键盘控制器。现在从工作速度和能量损耗方面以 UART 软外设为例,对软外设进行性能分析。在 UART 实现程序中,共有 16 条汇编指令,假定每条指令需要 一个时钟周期(即 CPI1),没有奇偶校验功能。通过改变 CPU 主频(变化范围为 30100),计算执行的时间占有 CPU 时间的比 率,分析 UART 软外设在不同波特率情况下对 CPU 的负担,计算 过程如下:假定 CPU 发送/接收一个字节的时间为 t。UART 软外设的 CPU 占有率为 T,则t=指令数CPI中断响应周期CPU 主频1。 Tt
7、波特率。 结果如表 1 所示。表 1 UART 的 CPU 占有率上表中的统计数据是在假定 UART 工作在全双工方式(FD)下, 没有检错功能得到的,而系统绝大多数时间是工作在半双工方式 (HD)下的,HD 方式下该 UART 的 CPU 占有时间率要减少 25。如果加上奇偶校验功能,该软外设的 CPU 占有时间率在 FD 方式会增加 11.45%,HD 方式下增加 7.60%。由表 1 可知,CPU 频率越高,软外设对系统的负担越小,另外 随着 UART 的波特率增加,系统负担加重。建议软外设的运行占 CPU 时间不能超过 20,实验证明,软外设的 CPU 占有率不超过 20的情况下对系统
8、来说是可以承受的。接下来我们分析该软外设的能耗问题。图三示出了 CPU 在接有 URAT 软外设或 URAT 硬件的情况下在不同情况下的 CPU 消耗电流 曲线。上图表明:1随着波特率增加,UART 软外设的能耗增加。 2随着 CPU 主频增加,UART 软外设的能耗增加。3波特率在小 于 70Kbit/s 时 UART 软外设的能耗低于硬件外设,此时选用软外设 可以降低能耗,即该软外设适合于数据量不是很大的场合(如语音 通信)。在要求系统传输速率极快的情况下(如视频流传输),选用硬件实现较为合适。六、结束语本文系统地介绍了软外设的设计思想,并以一个软外设为例,分 析了它的一些性能指标。软外设具有许多优点:如调试方便,系统 可移植性强,能耗小,成本低。很适合在一些要求便携式、低能耗 的场合应用。虽然也存在一些缺点,如速度慢,并行性差,但随着 CPU 相关技术的发展以及算法的完善,这些方面在一定程度上会得 到改观。设计人员在设计时需要对硬件设计和软件设计进行折衷考 虑。毕竟,软外设的出现给嵌入式系统设计提供了一种更为灵活的 设计方案,给设计人员也提供了更多的选择余地,更广的设计空间。