31 Mar '12, 11am

@degewa ARM程序设计优化策略与技术 (1)

程序优化是指软件编程结束后,利用软件开发工具对程序进行调整和改进,让程序充分利用资源, 提高运行效率, 缩减代码尺寸的过程。按照优化的侧重点不同, 程序ARM 优化可分为运行速度优化和代码尺寸优化。运行速度优化是指在充分掌握软硬件特性的基础上, 通过 应用程序结构调整等手段来降低完成指定任务所需执行的指令数。在同一个处理器上,经过速度优化的程序比未经优化的程序在完成指定任务时所需的时间更短,即前者比后者具有更高的运行效率。代码尺寸优化是指,采取措施使应用程序在能够正确完成所需功能的前提下, 尽可能减少程序的ARM代码量。 然而在实际的程序设计ARM过程中,程序优化的两个目标(运行速度和代码大小) 通常是互相矛盾的。为了提高程序运行效率,往往要以牺牲存储空间、增加代码量为代价,例如程序设计 中经常使用的以查表代替计算、循环展开等方法就容易导致程序代码量增加。而为了减少程序代码量、压缩存储器空间,可能又要以降低程序运行效率为代价。因此, 在对程序实施优化之前, 应先根据实际需求确定相应的策略。在处理器资源ARM紧张的情况下, 应着重考虑运行速度优化;而在存储器资源使用受限的情况下, 则应优先考虑代码尺寸的优化。 1 程序运行速度优化 程序运行速度优化的方法可分为以下ARM几大类。 1.1 通用的优化方法 (1)减小运算强度 利用左/ 右移位操作代替乘/ 除2 运算:通常需要乘以ARM或除以2 的幂次方都可以通过左移或右移n 位来完成。实际上乘以任何一个整数都可以用移位和加法来代替乘法。ARM 7 中加法和移位可以通过一条指令来完成,且执行时间少于乘法指令。例如: i = i × 5 可以用i = (i& lt;<2) + i 来代替。 利用乘法代替乘方运算:ARM7 核中内建有32 ×8 ARM乘法器, 因此可以通过乘法运算来代替乘方运算以节约乘方函数调用的开销。例如: i = pow(i, 3.0) 可用 i = i×i × i 来代替。 利用与运算代替求余运算:有时可以通过用与(AND )指令代替求余操作(% )来提高效率。例如:i = i...

Full article: http://www.eeworld.com.cn/mcu/2012/0331/article_8269.html

Tweets

@degewa 电磁波辐射问题的评价与探讨

@degewa 电磁波辐射问题的评价与探讨

eeworld.com.cn 01 Apr '12, 11pm

电磁波辐射对环境的影响,日益成为人们所关心的话题,并越来越受到研究者的关注。怎样评价电磁波是否危害人体健康,如何避免和防护超标准有害的电磁辐射,是我们需要研究的新课题。 1.电磁辐射的评价标准 如何衡量电磁辐射对人体作用的大小呢?电磁辐射能量要...

@degewa 山东:济南市三网融合试点工作进展顺利

eeworld.com.cn 31 Mar '12, 8am

日前,山东省政府三网融合工作协调小组办公室召开专题会议,对济南市三网融合 试点工作实施方案进行了审议。 山东省政府三网融合工作协调小组对实施方案给予充分肯定,认为方案结构合理、技术先进、功能较全,能满足三网融合形势下业务发展的需要,思路切实可行...

Latest: Snap65: Nikon 1 V1 and Nikon 1 J1

tech65.org 31 Mar '12, 4am

The Nikon 1 V1 and Nikon J1 are Nikon’s late entry into the mirrorless interchangesable lens (MIL) arena. As with other ca...