随笔分类 - ARM软件开发
ARM软件开发
摘要:优化一个codec的时候,MCPS往往作为一个关键的指标,很多公司的datasheet上,也常常把MCPS最为关键参数列出,一个公司能做到多少MCPS,往往成为它技术能力的象征。那么通常做一个项目的时候,怎么确定到底最终能到达多少MCPS呢?怎么能在项目开展之前准确的算出最终能达到多少MCPS, 我感觉也没有很好的方法,不过倒是有几点可以参考。1.项目的需求,实际上,根据项目的需求来确定codec的MCPS比较好。根据采用的dsp/arm的计算能力和整个项目的计算复杂度,然后的分配给codec多少。2. 参考其他公司的指标,在网上可以查到很多公司做的codec的指标,虽然各个公司有偏差,但大致
阅读全文
摘要:终于在android 手机上跑了c和汇编,先把以前的资料重新整理下,分以下步骤1. 首先下载并安装交叉编译工具GNU/ARM Linux gcc: http://www.codesourcery.com/gnu_toolchains/arm/download.html 安装时 直接解压就行了2. 要设置好PATH环境变量。3. 用刚下载的交叉编译工具编译源代码: # arm-none-linux-gnueabi-gcc test.c -o test -static -static选项在这里是必须的,不然android平台就不运行此程序。 这也说明了此平台上的C/C++库是不能被C/
阅读全文
摘要:ARMv6 及更高版本中推出了饱和指令:SSAT 和 USAT, SSAT16 和 USAT16有符号饱和到任何位位置和无符号饱和到任何位位置,可选择在饱和前进行移位。SSAT 可将有符号值饱和到有符号范围内。USAT 可将有符号值饱和到无符号范围内。语法其中:op 是 SSAT 或 USAT。cond 是一个可选的条件代码(请参阅条件执行)。Rd 是目标寄存器。 Rd 不能为 r15。sat 指...
阅读全文
摘要:最近需要对比ARM9E和cortex a8 NEON的优化效率,虽然NEON的指令在完全适合的情况下,可以做到是ARM9E的1/4的运行周期,但是实际情况下很少有程序完全适合NEON的并行思想,只能是部分适合,所以在网上搜了下,发现visual on 公司做过arm11和cortex a8的对比。实际上,arm11和arm9e的效率基本相当,这点可以从多家公司公布的datasheet看出来。那么我...
阅读全文
摘要:DSP存储器特点:• 采用多总线Harvard结构• 支持 >2~4存储器访问/Cycle• 大容量的片内SRAM• 片内SRAM可以配置成程序存储空间或数据存储空间• 没有或较小的片内指令CacheGP存储器特点:• 采用单总线Von Neumann结构• 只支持1次存储器访问/Cycle• 一般没有较大的片内...
阅读全文
摘要:NEON 中的加法指令其实并不少,大致有以下几种VADDVADDHNVHADDVPADDVQADDVRHADDVRADDH但是使用起来相当的不灵活,尤其是某些加法指令不带饱和,往往加的结果会溢出而无法处理,不得不采用ARM指令来完成饱和加其中VADD,VQADD是可以带饱和的加VHADDVPADDVRHADDVRADDH是不带饱和的加,令其功能逊色不少
阅读全文
摘要:ARM NEON Optimization. An Example Http://hilbert-space.de/?p=22 Since there is so little information about NEON optimizations out there I thought I’d write a little about it.Some weeks ago someo...
阅读全文
摘要:用RVDS4.0集成开发环境新建一个target为cortex A8 NEON的工程,即便是hellowolrd,也无法正常运行,然而自己写makefile调用amrcc的方式就可以。在水木等地咨询,虽然回复的网友众多,其中不乏一些高手,但是问题总是解决不了。最后还是arm的技术支持技高一筹,给了下面的代码,并设置程序入口点为init_cpu,问题解决http://infocenter.arm.c...
阅读全文
摘要:今天检查实习生写的程序,发现他们对跳转指令有混用的现象,想给他们解释,于是重新复习了一下这几条跳转指令。B :强制跳转BL:带链接跳转,将下一个指令的地址复制到 lr(r14,链接寄存器)中。BX:跳转并切换指令集,将下一个指令的地址复制到 lr(r14,链接寄存器)中。BLX:带链接跳转并切换指令集,将下一个指令的地址复制到 lr(r14,链接寄存器)中, BLX label:无论何种情况,...
阅读全文
浙公网安备 33010602011771号