日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ARM assembly instruction set 汇总(一)

發布時間:2024/4/17 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ARM assembly instruction set 汇总(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??? ARM Core指令現在越來越強大,同時又因此能耗低,現在越來越廣泛地應用于移動設備中。隨著3G時代的到來,各種移動終端設備中都有多媒體功能,而且是功能越多且性能越優.很多smartphone上都能播放高清的視頻了。在這就把ARM assembly instruction sets 進行次總結,也好讓自己對相關的指令更加地靈活應用。

??? 目前由指令集來看,主要有以下幾種:ARMv4, ARMv5E, ARMv6 and Neon.

??? 各種ARM CPU core都有其對應的指令集,其體的型號可查ARM 公司資料(在公司主頁可以找到很有用的infos),如:ARM7TDMI, ARM720T,ARM920T等用ARMv4 ISA; ARM7EJ-S, AMR926EJ-S, ARM1020E 等用ARMv5E, ARM1036J-S, ARM1136J-S等用ARMv6 ISA, Cortex-A8 等用Neon. 所有的ARM core都有向下兼容性。

 本文基于ARMv4,來對ARMv5E, ARMv6 和Neon ISAs增加部分進行匯總,并分析新增指令會帶來什么樣的性能提升。

?? ARMv5E 擴展提供了許多新的指令。

?? (1) CLZ? Rd, Rm??? ---- 零計數指令用于計算最高符號位與第一個1之間的零的個數

?? 這個指令在Speech/Audio codec 歸一化運算中很有用,如用ARMv4 ISA實現前向零計數會有用到好幾第指令來實現。

?? (2) QADD Rd, Rm, Rn?? --- Rd = Sat(Rm + Rn)

??????? QDADD Rd, Rm, Rn? ---- Rd = Sat(Rm + Rn << 1)

??????? QSUB??? Rd, Rm, Rn? ---- Rd = Sat(Rm - Rn)

??????? QDSUB? Rd, Rm, Rn? ---- Rd = Sat(Rm - Rn << 1)

??????? 由于代碼的定點化過程中,對很多運算都有飽和保護,用C或ARMv4 ISA來實現這個功能效率會很低。但用ARMv5只照一條指令就行了。

???(3) 乘累加指令

??????? ARMv5E在音頻算法方面的optimization效果會很好,主要是有新增加了16bits*16bits,32bits*16bits乘累加指令。而音頻很多源數據是16bits,同時也有可能一些filter coefs 是32bits,這時ARMv5E指令就能很好的發揮其威力.

??????? SMLAxy??? Rd, Rm, Rs, Rn??? --- Rd = (Rm.x * Rs.y) + Rn

??????? SMLALxy?? RdHi, RdLo, Rm, Rs --- [RdHi, RdLo] += Rm.x * Rs.y

??????? SMLAWy??? Rd, Rm, Rs, Rn??? ---- Rd = ((Rm*Rs.y) >> 16) + Rn

????????SMULxy???? Rd, Rm, Rs????????? ---- Rd = Rm.x + Rs. y

??????? SMULWy??? Rd, Rm, Rs????????? ---- Rd = ((Rm*Rs.y) >> 16)

???????

?

???????

轉載于:https://www.cnblogs.com/huaping-audio/archive/2010/07/31/1789062.html

總結

以上是生活随笔為你收集整理的ARM assembly instruction set 汇总(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。