嵌入式CPU

2024-09-28

嵌入式CPU(精选4篇)

嵌入式CPU 篇1

深亚微米时代,处理器和FPGA跟随摩尔定律沿着各自的路径向前发展,少有交集。处理器不断加强运算能力,并充分利用新增加的并且越来越小的晶体管不断完善外围功能,走上单片集成的道路。FPGA则通过工艺技术的进步增大自身容量降低功耗,把预处理运算、接口电路等吸收进了FPGA。

对于既需要处理能力又需要灵活性的系统,CPU+FPGA这样的解决方案早年前就被提出并付诸实践,如今比比皆是。虽然近几年Xilinx和Altera也一直致力于推进自己的软核Nios和MicroBlaze,而且Xilinx在其Virtex系列产品中嵌入了PowerPC硬核,但市场反应都不太强烈。

摩尔定律持续有效,半导体工艺技术步入深亚纳米时代,为处理器和FPGA的融合提供了无限可能。Intel于2010年11月发布的凌动E600 C系列,即原研发代号为“Stell arton”的可配置凌动处理器,把凌动E600处理器和Altera的FPGA集成到一个多芯片封装之中,开启了处理器和FPGA融合的新时代。

随着工艺技术的不断进步,从65 nm、40 nm进入28 nm,ASIC和ASSP厂商遭遇了设计流程复杂、良率降低、设计周期过长,特别是研发制造费用剧增等难题。据了解,做一个28 nm ASIC芯片所需的研发费需要5 000万~6 000万美元,比40 nm时的研发费用增加了40%。正如赛灵思亚太区销售及市场总监张宇清先生所说:“10年前,半导体领域比较领先的是CPU厂商,他们会带领某一个工艺向前跨步。现在FPGA厂商已经跑到了前面。从40nm开始有这个端倪,在28 nm,我们的代工厂发现FPGA厂商最先采用这些先进工艺。”这些都为FPGA厂商在成功立足通信领域后瞄准嵌入式领域的新蓝海提供了无限可能。

在28 nm工艺节点,Altera和Xilinx都不约而同地在其新产品中集成双核ARM Cortex-A9处理器。此集成与Intel E600集成Altera FP-GA从硬件架构层面没有太大不同,但实质相去甚远。Intel是把CPU的裸片和FPGA的裸片封装在一起,给穿了层塑料外衣。FPGA厂商则是在FPGA中嵌入处理器,FPGA与处理器之间通过AXI总线互联,最高可达125 b/s的互联带宽。

为什么FPGA厂商都会选择ARM?处理器厂商是否会在下一代处理器中嵌入FPGA?Altera公司产品及企业市场副总裁Vince Hu先生告诉笔者,在FPGA中嵌入处理器远比在处理器中嵌入FPGA容易,第一是ARM的授权IP模式提供了处理器的授权,FPGA厂商不会授权IP (当然,如果某一天Achronix宣布把其FPGA的IP开放给Intel,想必业内一定不会奇怪。);第二是工具,针对FPGA的开发工具相对复杂,不是一时可以开发出来。

FPGA两巨头都瞄向了嵌入式处理器领域,却采用了不同的策略。Altera是在其久负盛名的CycloneⅤ和ArriaⅤ系列下增加了SoC FPGA;Xilinx干脆创立一个新的产品系列Zynq。虽然产品略有不同,宣传策略大有不同,但关注的应用领域却都在能源和工业、高清晰视频处理、通信基础设施和计算机和存储应用,甚至连价格都定在批量15美元,并且都宣称最大的对手是Intel等处理器厂商。

面对Xilinx的嵌入式处理器Zynq系列,Altera的Vince Hu列出了互联带宽、工艺模式等几大不同。不管两家如何争斗,工程师确实享受到了技术进步的乐趣。上海晶奥信息科技有限公司技术经理吴厚航说:“单片集成了CPU的FPGA单从硬件架构层面来看,好像没有太大的优势,仅仅只是二合一而已。但是真正做过系统开发的工程师都知道,这种二合一所带来的不仅仅是BOM成本降低和布局的简化,更多的改变是我们肉眼看不到的软硬件底层衔接的优化和无形之中的灵活性以及潜在的性能提升。”

以Altera最新发布的SoC FPGA为例,它提高了系统性能,4 000 DMIPS时功耗不到1.8 W,高达1 600 GMACS、300 GFLOPS的DSP;降低了功耗,相对两芯片解决方案,功耗降低了3 0%;减小了电路板面积,外形封装减小了55%,只有两种电源;降低了元件成本、PCB复杂度和成本从而大大降低系统成本。

对于未来,FPGA厂商信心满满。Vince Hu说:“在嵌入式调查里发现接近45%的嵌入式设计人员,计划在下一代的嵌入式设计里面使用FPGA来实现其可编程的功能,还有就是Altera的FPGA付运记录里面发现超过35%的FPGA项目利用了其Nios软核。未来两三年中,预期超过50%嵌入式系统里面会用上FPGA。”

嵌入式CPU 篇2

电能是当今世界上最重要的能源之一。电力系统的稳定运行不仅影响着国家经济的持续发展, 而且与人民的日常生活息息相关。目前, 随着工业的高速发展, 电网污染十分严重, 尤其是非线性设备如可控硅等设备的增加、铁芯设备的饱和、电弧炼钢炉容量的增大以及家用电器的大量使用等原因, 使注入电力系统中的高次谐波日益增多, 导致系统电压、电流正弦波形发生畸变, 电能质量下降, 对电网的安全、经济运行产生危害和影响, 严重时还会引发事故。基于此, 笔者设计了一种基于单片机和DSP的双CPU嵌入式谐波检测装置, 实现检测与分析电力系统谐波的目的。

1 基于卡尔曼的检测算法

卡尔曼算法采用时域上的递推算法在数字计算机上进行数据滤波处理, 分为连续和离散2种形式。离散型卡尔曼算法是以最小均方误差为准则的最优线性估计, 根据前一个观测数据和最近的一个观测数据, 利用状态方程和递推方法对当前过程状态进行实时估计[1]。本文介绍的谐波检测装置即根据卡尔曼算法的这一特点设计, 提高了谐波电流检测的实时性和精确性。

由于电力系统的基频总是随着一个标称值按一定比例波动, 因此, 本文假设算法模型中的基频保持常量[2]。

k次谐波信号可表示为

式中:harms为谐波;r为谐波次数。

由于谐波信号是以一系列n次谐波形式出现的, 故也可表示为

由此, 状态被定义为

测量矩阵H

状态的传播可用下面的随机模型描述:

若ϕ为单位矩阵, 则每个频率成分的幅值和相位分别为

若基频被估计为状态, 则模型变为非线性的, 此时必须使用扩展卡尔曼算法。假设谐波信号为

由此, 状态被定义为

则:

2 硬件设计

嵌入式谐波检测装置采用单片机和DSP相结合的主从结构设计, 利用单片机的自动控制和DSP强大的数字处理能力完成整个系统的工作。其硬件结构如图1所示。

图1中, 单片机采用AT89C51芯片, 主要用于完成人机交互和整个系统的协调任务, 即:按键操作、功能显示和向上位机传输数据;DSP采用TI公司生产的TMS320VC5402芯片, 主要完成数据的采集和处理, 并将数据存入FLASH;SRAM为DSP提供外围的程序运行空间和数据存储;6通道A/D转换器采用精度较高且采样率可调整的AD73360芯片;CPLD为整个系统提供逻辑功能和采样脉冲;锁相环电路则实现同步采样功能, 抑制由于采样不同步而造成的频谱泄露[3]。

单片机和DSP之间的通信 (数据交换) 采用先进的DSP主机接口技术 (HPI) 实现。利用Matlab进行大量的数据分析, 以确保在实际应用中能正常运行。

3 软件设计

嵌入式谐波检测装置的软件程序采用模块化设计思想, 以便移植、修改及扩展。整个装置的数据流向如图2所示。

4 仿真分析

运用Matlab对嵌入式谐波检测装置进行仿真研究[4]。仿真参数:输入电压为380 V, 基波频率为50 Hz, 采样频率为3 000 Hz, 采样点数为360个。使用的谐波电流波形如图3所示, 其包含成分如表1所示。

仿真结果如图4所示, 用卡尔曼算法对表1中的信号进行分析所得的结果如表2所示。

从表1、表2可看出, 采用卡尔曼算法对谐波电流进行分析时, 所得谐波分量的幅值和相位误差都很小, 准确性较高, 可见该算法是一种有效的计算方法。

5 实验结果分析

由于国家谐波标准中规定“测量谐波的次数一般为2~19次”, 因此, DSP对还原后的数据进行快速傅里叶变换 (FFT) 后, 只计算出2~19次谐波, 如表3所示, 其中THDU为各次谐波畸变率 (各次谐波百分含量) 。

6 结语

本文提出的嵌入式谐波检测装置以单片机为控制核心, 以具有高运算速度的TMS320VC5402型DSP为数据处理核心, 并采用了一种新的谐波检测算法——卡尔曼算法。实验结果表明, 该装置硬件电压、电流、功率、功率因数和频率等重要的电力参数, 还可实时分析电力系统中的高次谐波, 从而使人们采取进一步的措施减少谐波污染, 保证电能质量, 保证电力系统安全、可靠、经济地运行。

与软件搭配合理, 能很好地满足谐波检测量的精确性及实时性的要求。该装置不但能实时检测如

参考文献

[1]胡乃英, 王德成.实时在线谐波检测装置的设计与实现[J].理论与研究, 2007 (6) :1~3.

[2]侯典立, 黄锦安.基于DSP的电能质量分析仪的设计[J].鲁东大学学报, 2007, 23 (4) :339~342.

[3]GRANDKE T.Interpolation Algorithms for DiscreteFourier Transforms of Weighted Signals[J].IEEETrans.on I M, 2003 (32) :350~355.

嵌入式CPU 篇3

医疗电子领域中,在嵌入式处理器方面,目前使用最广泛和主流的象ARM、MIPS都是国外厂商生产的CPU,而国内的具有自主知识产权的CPU却很少被人注意。

此外,随着无线技术的进步和无线设备成本的降低,医疗电子无线化必将是未来发展的趋势。目前已经有一些企业和团体在医疗电子无线化的方向上作出了研究和开发,但是目前的无线医疗电子使用的网络协议基本都是基于IPV4的,将更加先进的IPV6网络运用到无线医疗电子是未来发展必须面临的问题。

本文主要为医疗电子设计了一个基于IPV6的网络协议,为实现该协议编写了路由协议程序和射频适配程序,实现了医疗电子的无线功能。

1 系统概述

主要系统架构如图1所示:单个节点由CK610开发板与医疗电子板和CC2520射频芯片组成,控制器为普通节点与PC相连接。Linux用作CK610的操作系统,CK610通过操作FPGA IP核模拟的SPI来控制CC2520,CC2591由CC2520的管脚控制。

在整个医疗电子应用的网络系统中,可以有多个节点,但是只有一个控制器。所有节点数据发送的终点是控制器,距离较远的节点可以通过其他节点转发来传输数据。

2 网络协议设计

为了实现图1的系统架构,需要为系统设计一个基于IPV6的网络协议。

2.1 路由算法设计

建立和维护无线网络,必须要发送和处理三种形式的数据包,分别是路由请求包、路由广播包和路由汇报包[1]。

网络中的每个节点都维护一个路由表,路由表的每项都是与本节点相邻的节点[2]。一个典型节点路由表内容如表1所示。

每个节点会对路由表中的每项根据总链路代价进行排序,总链路代价最小的对应的节点会被选为默认路由,只要节点有数据要发送或者转发,都会将数据发往默认路由[3]。

总链路代价表示的是这条链路信道的质量,该值越小越好,它是本地链路代价和前驱节点链路代价两者之和。前驱节点链路代价是从本节点定期发送的路由广播包中获取的。如果前驱节点是控制器,那么前驱节点链路代价是0。本地链路代价指的是自身节点同前驱节点之间信道的链路代价,表示的是通信信道质量,该值越小越好。为了计算本地链路代价,必须要维护长期发送数据包总数LT、长期发送数据包成功数LS、近期发送数据包总数ST和近期发送数据包成功数SS这四个数据。

ST和SS从零开始计数,节点每发送一次数据(包括重传),近期发送数据包总数ST就会加1,而近期发送数据包成功数SS则是每成功发送一次数据就加1。这两个值会在RTIMER定时器到期之时更新完长期发送数据包总数LT和长期发送数据包成功数LS之后清零。长期发送数据包总数LT和长期发送数据包成功数LS在RTIMER定时器到期之时更新,更新的规则是将当前长期发送数据包总数LT加上近期发送数据包总数ST作为新的长期发送数据包总数LT,将长期发送数据包成功数LS加上近期发送数据包成功数SS作为新的长期发送数据包成功数LS,如果此时长期发送数据包总数LT大于0XF000,那么将长期发送数据包总数LT和长期发送数据包成功数LS右移一位。这样做有两个好处:

(1)避免长期发送数据包总数LT和长期发送数据包成功数LS无限增大到无法存储。

(2)离当前时间越远的统计值对计算链路代价的影响越小,符合自然规律。

本地链路代价的计算公式如下:

undefined

节点会在收到邻居节点的路由广播包和RTIMER定时器到期的时候更新路由表链路代价信息。

2.2 网络节点的加入

当节点1要加入网络中时首先要发送一个路由请求包,申请加入无线网络。控制器接收到这个请求之后,向节点1发送一个路由广播包。节点1接收到该路由广播包之后,将网络地址前缀加上自己的节点ID组成自己的网络地址,并且将控制器加入自己的路由表。此时节点1的默认路由是控制器。同时,节点1会立即启动TTIMER和RTIMER两个定时器,当TTIMER到期时,节点1就会向控制器发送路由汇报包,控制器收到该包及时更新网络拓扑。而控制器的RTIMER到期之时,也会给节点1发送路由广播,节点1立即更新路由表。

网络运行的过程中,有新的节点要加入这个网络,且该节点能够直接同控制器通信,此时的情况比第一个节点加入网络的情况复杂些。节点2启动时,首先发送一个路由请求包,控制器和节点1接收到该包后会先后发送路由广播包,节点2收到这些包之后修改自己的网络地址,并且将控制器和节点1都加入自己的路由表中。当RTIMER定时器到期时,会发送路由汇报包给控制器,经过一段时间稳定之后,路由汇报包的内容应该包括节点1和控制器。之后节点1的RTIMER定时器到期,发送路由广播包,控制器和节点2都能收到,节点2更新其路由表,节点2的RTIMER定时器到期也会发送路由广播包,此时节点1将节点2加入自己的路由表。

如果新加入的节点无法直接同控制器通信,即节点1已经存在于网络中,节点2无法同控制器通信。节点2启动的时候也会发送路由请求包,这个包只有节点1可以收到,于是节点1给节点2回复一个路由广播包,节点2和控制器都可以收到。节点2收到这个包之后,会设置好自己的网络地址,同时将节点1加入自己的路由表中。此时节点2的路由表只有节点1这一项,因此节点2的默认路由是节点1。节点2的TTIMER定时器到期时会向默认路由,即节点1发送路由汇报包,节点1收到路由汇报包之后将其转发给控制器。节点1的RTIMER定时器到期,发送路由广播包,节点2更新其路由表。节点2的RTIMER定时器到期之时发送路由广播包,节点1接收到该包之时更新路由表。

2.3 网络的维护与更新

网络运行过程中,信道都是随时变化的。为了使整个网络工作正常,必须要及时更新网络参数。网络的维护和更新是通过每个节点的RTIMER定时器实现的,每当该定时器到期,节点都会广播路由广播包,所有接收到该广播包的节点都会更新自己的路由表信息,这样整个网络的信道信息得到了更新。

3 软件和硬件设计

3.1 硬件结构

图1中的硬件主要包括CK610开发板、CC2591和CC2520。

CK610为杭州中天微系统有限公司生产的CPU,主要特性有:八级流水线;双发射超标量流水线技术,提升性能近50%;非阻塞指令发射、投机执行和按序退休;返回地址预测(4-entry return stack);哈佛结构数据/指令Cache和SPM,大小可配置;数据Cache Write-back/Write-through动态可配置;内部双通用数据总线;AHB/AXI总线接口,和可扩展的协处理器接口。

CC2520为TI公司生产的一款低功耗射频芯片,主要特性有:发射功率可达到5dBm;数据传输速率最大可达250kbps;工作在2.4GHz ISM频段;4-线SPI;6个可配置GPIO。

CC2591为TI公司生产的一款高性能低成本前端,适用于如ZigBee网络等2.4GHz无线系统,可以改善RF性能。

CC2520与CC2591结合使用可以使得输出功率范围扩大到-24dBm~22dBm,接收灵敏度增加到-90dBm,传输距离可达到几百米甚至上千米。

3.2 网络系统架构

为了实现在第3节中定义的网络协议,需要在Linux之上编写一个应用程序,该程序需要实现网络协议中的规则。除此以外,还需要根据协议,选择合适的路由,该程序称为路由协议程序。此外,为了使IPV6运行在CC2520射频芯片上,移植了6LoWPAN协议到Linux系统中,大大减小了包头的字节,减少了能量消耗。

在用户应用程序中,当有数据要发送时,Linux内核会查找内核路由表,找到下一跳的地址,然后将数据交给相应的设备以发送数据。系统所用的网络设备是CC2520射频芯片,但是Linux并没用为CC2520开发对应的网络驱动,因此可以虚拟一个网络设备tun,将网络层传过来的数据都交给tun,读取tun接口便能够得到要发送的网络数据。射频适配层得到该数据之后,经过适配层6LoWPAN协议的压缩之后,然后再通过SPI操作CC2520芯片发送数据[4]。对应从底层来的数据,其处理过程跟上述方式类似。

3.3 射频适配程序的设计

当内核有数据要发送之时,要使用正确的方法驱动CC2520芯片无线发送出去,负责这部分内容的程序称为射频适配程序。

在实现过程中,使用CC2520芯片作为无线网络收发设备。在Linux内核中,并无CC2520作为网络设备的驱动。为了实现使用CC2520收发数据的功能,可以建立一个虚拟网络设备tun。字符设备tun是内核空间和用户空间的数据接口,内核将数据包发送到虚拟网络设备上,数据包会被保存到设备的队列中,此时用户空间可以通过打开字符设备tun并调用read函数读取其中的数据,此时数据传递到了用户空间,程序可以对这些数据进行处理。同样,用户空间程序可以通过write函数将收到的数据包交给内核。这样就可以在上层有数据来的时候先经过6LoWPAN的处理压缩,再通过驱动CC2520发送数据,在CC2520收到数据的时候,将数据经过6LoWPAN还原之后交给Linux内核,实现无线收发数据包的功能。

4 系统测试

整个系统的工作流程为:医疗板首先采集医疗检验结果,将其传递给CK610开发板,开发板通过操作CC2520进行无线发送。而当CC2520接收到数据时,通过读取CC2520 SO管脚获得收到的数据,通过UART输出给PC,PC运行C#编写的图形界面将检验结果显示出来,如图2所示。

5 结束语

本文主要提出了一种基于国产CPU的SOC医疗电子无线网络的路由协议以及整个平台的软件架构和射频适配程序,并实现了医疗电子板的点对点无线通信,实验结果证明,系统运行正常,达到预期效果。在后期工作中,将加入更多节点来验证系统性能。

参考文献

[1] Stephen Dawson-Haggerty. Design, Implementation, and Evaluation of an Embedded IPv6 Stack[D].UC Berkeley,2010.

[2] Stephen Dawson-Haggerty. Hydro: A Hybrid Routing Protocol for Low-Power and Lossy Networks[C].Smart Grid Communications (SmartGridComm), 2010 First IEEE International Conference,2010:268-273.

[3] Blip Tutorial [EB/OL]. (2011-3-25).http://docs.tinyos. net/tinywiki/index.php/BLIP_Tutorial.

嵌入式CPU 篇4

嵌入式系统, 是一种“完全嵌入受控器件内部, 为特定应用而设计的专用计算机系统”, 其通过有限的硬件资源来执行带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务, 设计人员能够对它进行优化, 减小尺寸降低成本。从当前嵌入式消费电子产品来看, 媒体处理与无线通信、3D游戏逐渐融合, 其强大的功能带来了芯片处理能力的增加, 在复杂的移动应用环境中, 功耗正在大幅度增加[1,2,3]。比如手机, 用户往往希望待机时间、听音乐时间, 以及看视频的时间能更长, 在这样的背景下, 嵌入式处理器的功耗波动范围非常的大, 并且由于嵌入式节能算法的引入导致其功耗的预测变得更加困难。如何在不断变化的动态的计算环境中准确的预测云计算嵌入式处理器的功耗是亟待解决的问题[4,5,6]。

目前, 随着网络应用的飞速发展使得对计算能力的需求不断增加, 伴随着网格计算, 并行计算, 分布式计算的发展, 云计算应运而生, 被列为国家未来重点发展的技术方向, 并成为了当今计算机研究届和工业界的热点研究课题。现有的云计算是将大量用网络连接的计算资源统一管理和调度, 构成一个计算资源池向用户按需服务。简单来说就是将计算、处理等工作分布在大量分布式计算机上, 而管理中心只需对计算结果进行汇总管理, 并为用户提供应用服务。

本文提出一种基于云算法的嵌入式处理器CPU功耗预测方法。结合目前先进的云计算方法, 将云计算和传统的嵌入式处理器CPU功耗预测方法相结合, 给出一种全新快速稳定高效的嵌入式处理器CPU功耗预测方法。本文所提的云计算节点采用模块化设计, 嵌入式微架构, 可根据实际应用范围增加或减少扩展功能模块, 功能丰富, 即插即用.可以网络中任意位置部署, 降低网络搭建成本, 大大降低网络维护难度.有效减少网络数据传输对通信链路的资源占用, 降低管理中心的计算量, 间接降低了网络搭建和管理中心架设的投入成本.同时本文开展了充分的实验研究, 将本文的方法应用于实际的嵌入式处理器CPU功耗预测中, 考虑不同型号的嵌入式处理器, 来进一步验证本文方法的适用性, 结果表明本文方法能够准确的预测出嵌入式CPU的功耗, 尤其对于复杂环境下的预测效果明显优于传统的预测方法[7]。

1 一种基于云计算的嵌入式CPU功耗预测方法

1.1 基于云计算的嵌入式CPU功耗预测方法简介

云计算是一种基于互联网的计算方式, 通过这种方式, 共享的软硬件资源和信息可以按需求提供给计算机各种终端和其他设备。云计算是继1980年代大型计算机到客户端-服务器的大转变之后的又一种巨变。用户不再需要了解“云”中基础设施的细节, 不必具有相应的专业知识, 也无需直接进行控制。云计算描述了一种基于互联网的新的IT服务增加、使用和交付模式, 通常涉及通过互联网来提供动态易扩展而且经常是虚拟化的资源。本文采用嵌入式云计算节点的系统包括Zig Bee节点模块和扩展应用模块。如图1所示, 其中, Zig Bee节点模块基于Zig Bee技术, 用于实现组网和通信。扩展应用模块包括定制计算模块、数据压缩模块、数据存储模块、扩展通信模块以及开关控制模块中的至少一种。扩展应用模块与其包含的子模块的接口采用标准化设计, 即插即用, 本文提供的一种嵌入式云计算节点的方法, 依靠节点模块与附近的网络建立连接, 扩展应用模块开始向网内广播具备的功能标识并开放链路, 网络内的节点向网内链路发送请求, 扩展应用模块验证请求的合法性, 扩展应用模块验证自身是否具备请求的相应的功能, 如果验证通过, 扩展应用模块根据请求执行相应的功能, 扩展应用模块根据请求返回计算的结果。其中, Zig Bee节点模块与附近的网络建立连接的步骤包括:Zig Bee节点模块启动后搜索网络信号;Zig Bee节点模块搜索到网络信号后, 请求验证:Zig Bee节点模块通过验证后, 与搜索到的网络建立连接。其中, 请求包括向网内链路发起数据计算处理的请求。扩展应用模块根据请求返回计算的结果包括将计算的结果返回给发送请求的网络内的节点或者扩展应用模块根据所述请求返回计算的结果包括按照发送请求的网络内的节点的要求返回的计算的结果, 或者扩展应用模块根据所述请求返回计算的结果包括将计算的结果经过网关节点传输到管理中心[8]。

如图2所示是整个嵌入式CPU功耗预测方法的示意图。首先从RAPL接口读取当前嵌入式CPU的工作状态, 将工作状态的数据经过预处理之后到达监测模块, 监测模块将得到的数据发送给误差修正模块, 利用当前的嵌入式CPU的输入数据对功耗进行一个初始的预测。通过功率仪将这个预测的初始值和从功率仪上得到的测量值进行比较, 利用这个误差来修正功率预测模块。误差修正的主要作用是在给定总功率的情况下, 对最大功耗情况下的差额进行计算与分析。为了能够方便的获取任意嵌入式CPU的最大功率差额, 本文所述方法在误差修正模块中额外提供了功耗分析功能。以便于用户对嵌入式CPU功耗的情况进行分析和记录。功耗预测模块根据嵌入式CPU以往的运行数据, 结合误差修正模块的信息, 并对所以的嵌入式CPU进行统一的设定。这样就能够使得整个嵌入式CPU保持在合适的工作状态。

1.2 一种基于云计算的嵌入式CPU功耗预测方法的实验与分析

本文以两种主流的嵌入式CPU为例子进行了实验验证。为了获得CPU总的功耗与给出的限额之间的数学关系。通过这个关系来确定出功耗差值的大小。本实验考虑了两种不同的RAPL限额, 依据功率仪给出的数据最终来校正预测模型的准确性。同时为了充分利用云计算中的主机节点, 在节点端采用的是高性能并行测试程序。

图4, 图5, 图6所示分别为RAPL为20W, 40W, 60W情况下实际功率和预测功率值的对比。从以上三个图中可以看出, 无论对于RAPL值是多少的情况下, 功率预测值和功率实际值有着相同的变化趋势。同时可以得出预测值和实际值的差值大多数情况下是小于20的。由此说明该方法的有效性。

2 结语

本文针对嵌入式处理器CPU功耗预测问题, 提出了一种基于云计算的嵌入式处理器CPU功耗预测方法。该方法有效的结合了目前云计算的优势, 能够快速有效的给出嵌入式处理器CPU功耗预测问题。与传统方法相比, 本文所提方法可以将预测误差控制在10W之内, 从而大大提高了预测精度。

参考文献

[1]林闯, 苏文博, 孟坤, 刘渠, 刘卫东.云计算安全:架构、机制与模型评价[J].计算机学报, 2013 (9) :1765-1784.

[2]何鹏举, 吴来斌, 宋凯华, 曹允耀.基于粒子群算法的嵌入式云计算资源调度[J].电子设计工程, 2014 (10) :88-90.

[3]罗亮, 吴文峻, 张飞.面向云计算数据中心的能耗建模方法[J].软件学报, 2014 (7) :1371-1387.

[4]罗军舟, 金嘉晖, 宋爱波, 东方.云计算:体系架构与关键技术[J].通信学报, 2011 (7) :3-21.

[5]刘嵩, 刘轶, 杨海龙, 周彧聪.基于RAPL的机群系统功耗限额控制[J].计算机工程, 2010:1-7.

[6]陈俊, 张文光.面向IPv4/IPv6云计算虚拟机迁移实时功耗建模研究[J].测控技术, 2016 (4) :89-93+97.

[7]陆娇蓝, 陈军, 杨著.基于云计算的嵌入式人脸识别系统建构与研究[J].计算机测量与控制, 2016 (4) :146-148.

上一篇:空气源热泵系统下一篇:美术工艺