HighTec_TC4 編譯器移植 Aurix ADS

關鍵字 :HighTec_TC4編譯器移植Aurix ADS
ADS 是英飛凌推出的針對 AURIX 晶片的開發平台,該開發環境基於業內流行的 Eclipse 打造而成。

        HighTec 作為英飛凌的全球重要合作夥伴和 PDH,作為專業的編譯器供應商和嵌入式產品方案提供商,HighTec 早已經為英飛凌最新一代 AURIX TC4XX 晶片開發了支持全部模塊的編譯器平台,可以全面支持Tricore TC1.8 核,最新 4.1 GTM/MCS 核,和 TC3XX 同源的 SCR 核及用於信息安全的 HSM 核,同時還可以全面支持新增加的 PPU 核。並可以根據客戶需求,提供用於 PPU 計算處理的矢量 DSP 核線性加速運算庫,以及 MATLAB plugin 等產品,幫助客戶快速利用PPU進行產品的開發。HighTec 也可以支持英飛凌的 ADS 中直接調用 HighTec 編譯器。下面介紹如何在 ADS 中直接調用 HighTec 的 TC4xx 編譯器。

        ADS 的下載和安裝可以參考英飛凌官方的文檔,這裡給出軟體的下載網址:
        https://www.infineon.com/cms/en/product/promopages/aurix-development-studio

        另外,目前只能從AURIX Development Studio limited 版本才能構建和編譯TC4xx的demo。下載地址為:

        https://download.hightec-rt.com/downloads/share/hightec_cn/aurixidelimited_1.9.6-L_Windows_x64.exe


導入英飛凌工程

導入英飛凌 ADS 中存在的工程,具體路徑為:File→Import→Infineon→AURIX Development StudioProject



         然後點擊 Next,在出現的界面選擇選擇 Infineon TC4xx Code Examples Repository 並選擇 TC4xx 的例子(示例中選擇的是"blinky" example for STD Kit TC499)。



更新 iLLD


導入工程後需要將工程庫更新到最新版本,右鍵工程,選擇 Project updater->Update iLLD

       在出現的界面中點擊 finish 完成更新。



構建配置
     
      右鍵工程,通過 Build Configurations->Manage 配置 HighTec 的 TC4XX 編譯器。

      
       打開界面如下:

選擇 New 創建新的編譯選項,輸入名字然後在 Import predefined 欄選擇 TriCoreApplication→External GCC→Debug 。



激活編譯器配置

上一步完成之後,需要將工程的編譯器改為新創建的。右鍵工程,選擇Build Configuration->SetActive->HighTec(上一步創建時設置的名字)。



鏈接腳本


TC4XX 例子需要使用 HighTec 適配過的鏈接腳本。目前 HighTec 已經完成了相關的適配,可以通過附件獲取。然後放入下圖位置即可。



排除非必需文件夾

ArcEV 和 CpuGeneric 文件夾必須排除在工程之外。右鍵要排除的文件夾,選擇 ResourceConfigurations→Exclude from build→HighTec (新創建的配置的名稱)。



工程選項設置

右鍵工程,選擇 Properties->C/C++ Build->Settings。


前綴和路徑配置

HighTec 的 LLVM 工具鏈的前綴為空,路徑選擇編譯器的安裝路徑。



編譯選項配置

編譯選項設置優化為 O0 和優化為 O2 的情況,兩種優化在 Command 設置時有區別。
        優化為 O0 時
Command 配置為:clang -march=tc18 -merrata=cpu141 -fomit-frame-pointer


優化為 O2 時
        Command 配置為:clang -march=tc18 -merrata=cpu141


其他的配置為:
        AURIX Settings 中的-fstrict-volatile-bitfields 選項取消。


鏈接選項配置

鏈接選項配置如下:
        Command 配置為:clang -march=tc18
        從 Command line pattern 中刪除-nocrt0
        General->Linker Script 選擇為新的 HighTec 鏈接腳本



copy 指令配置


Command 更新為 llvm-objcopy 。



list 指令配置

Command 更新為 llvm-objdump 。



size 輸出配置


Command 更新為 llvm-size 。



編譯

上述所有配置完成後,右鍵工程,Build Project 即可成功編譯


 更多資訊,請掃碼關注我們!


★博文內容參考自 網站,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

參考來源

false: https://mp.weixin.qq.com/s/O0bev46o04Ft7Qpj8qZQKw

評論