新聞中心

        EEPW首頁 > 嵌入式系統 > 業界動態 > IAR編譯代碼執行速度高3倍代碼少50%

        IAR編譯代碼執行速度高3倍代碼少50%

        ——
        作者: 時間:2006-02-23 來源: 收藏
        在Atmel公司的AVR32內核上, Systems成熟的指令調度機制能夠充分利用Single-cycle Load/Store、SIMD和DSP指令,支持并行和Out-of-Order算法

         Systems®發布了支持Atmel公司全新的AVR®32嵌入式CPU內核的 Embedded Workbench®。同日發布的AVR32架構,結合IAR Embedded Workbench for AVR32,可用于開發要求苛刻的各種應用,例如消費者娛教、銷售終端節點、生物特征掃描、語音識別以及運動探測。

        在與Atmel公司合作研發AVR硬件設計的同時,IAR公司經過數年的迭代開發以及針對目標應用的軟硬件整體分析,IAR Embedded Workbench for AVR32的C/C++編譯器實現了先進的應用代碼結構識別技術,并且能夠充分利用AVR32指令架構中的Single-cycle load/store、SIMD以及DSP指令。因此,IAR Systems的C/C++編譯器既能優化順序執行的指令,也能優化并行算法的操作,從而獲得杰出的每周期處理能力;而對設計者而言這一切完全透明。與32位嵌入式微處理器內核的其它競爭產品相比,編譯之后的AVR32代碼只需要三分之一到二分之一的執行周期和二分之一左右的存儲空間。如果運行由IAR Systems最新的C/C++編譯器生成的代碼,AVR32在每一項EEMBC基準測試中,其性能和代碼密集度都始終優于其它主流的32位內核。

        Single-cycle Load/Store — 據估計,RISC處理器平均有30%的時鐘周期被用于執行load/store指令,而不是進行運算。通過實現與大多數常用指針操作密切相關的字節(8位)、半字(16位)、字(32位)和雙字(64位)load/store指令,AVR32指令集架構將load/store指令所需的時鐘周期數減至最少。通過使用幾種成熟而完善的技術,IAR Embedded Workbench for AVR32能夠有效地利用這些指令以取得良好的效果:既減少了所生成代碼的大小,又降低了運行所需的時鐘周期數。

        Out-of-Order Execution — IAR Embedded Workbench for AVR32的高性能指令調度器能夠透明地調度并行和順序的運算操作(無相關數據),從而使得AVR32的三條次級算術流水線(multiplication/MAC、load/store和ALU)達到最大處理能力,且應用程序中總的流水線延遲周期數降到最少。這將顯著地提高任何一種應用的性能。

        SIMD指令的數據通道優化 — IAR Embedded Workbench for AVR32中的一些高端優化操作能夠識別和優化SIMD指令循環中的數據通道。對于需要在單數據流上執行同樣操作的特定多媒體運算而言(例如MPEG解碼程序中的運動預測),該優化可以使處理能力提高四倍。

        IAR Embedded Workbench for Atmel AVR32還支持所有已發布的指令集擴展。這些擴展主要是針對使用飽和算法的信號處理應用,以及重視高效率位操作的控制應用。

        IAR Embedded Workbench for AVR 32
        除了成熟的C/C++編譯器,IAR Embedded Workbench for AVR32還包含了調試功能,使得在AVR32上的開發和調試最有效率。C-SPY®調試器支持先進的基于JTAG的Trace功能,例如function trace;C-SPY Simulator能為整個AVR32 MMU提供精準的仿真。IAR Systems的調試器技術在Atmel公司設計AVR32內核的過程中同樣得到了運用。Atmel的設計工程師使用IAR Systems的simulator技術來驗證CPU內核的硬件實現并在開發過程的早期查找問題,顯著加快了開發進度并提高了整個產品的質量。

        IAR Embedded Workbench for AVR32將于Atmel首次發布AVR32芯片的同時在全球開始發售。全功能版本的IAR Embedded Workbench for AVR32的最終用戶許可單價將大約為4995美元或4400歐元。欲獲得更多信息,例如銷售方式或評估版軟件,請訪問網址:http://www.iar.com/atmel

        c++相關文章:c++教程


        加速度計相關文章:加速度計原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 宿迁市| 淄博市| 曲周县| 邯郸县| 本溪| 富顺县| 古交市| 英山县| 乐东| 江阴市| 南岸区| 东莞市| 贺兰县| 涞源县| 广西| 定兴县| 秭归县| 荆门市| 封丘县| 丰城市| 凌海市| 井陉县| 吴旗县| 五华县| 辽宁省| 克拉玛依市| 彭阳县| 揭阳市| 大庆市| 南丹县| 靖江市| 理塘县| 馆陶县| 丹江口市| 垣曲县| 霍山县| 扶沟县| 巫溪县| 卓尼县| 普洱| 天镇县|