AURIX TC275/TC234開發----(1) 開發準備工作

TC234/TC275 是英飛凌推出的較新一代AURIX 系列的單核/三核處理器,適合應用於車載控制器的開發,目前在很多車型上有在使用,下面對兩種芯片做個簡單的分析對比:

1)TC275

  1. 該芯片有三個運算核、兩個校驗覈,類似於將三個高性能單片機集成在一起,功能非常強大;
  2. 該芯片推出較早、各種開發例子、資料文檔、開發工具相對較爲齊全;其他型號均是在TC275之後推出,如性價比更高的TC234、TC212、TC297等等
  3. 由於集成3核、價格優勢不是太明顯;
  4. 有4通道can接口,4個can公用256個接收發送郵箱;
  5. 有電機控制器專用接口;
  6. 內部Flash有4Mbyte;

2)TC234

  1. 該芯片有一個運算核、一個校驗覈,和普通的單片機基本上沒什麼區別。
  2. 所有的開發工具對於TC275相對較少,目前還沒有相關的中文文檔;
  3. TC234的價格不到TC275價格的40%,個人認爲已經可以滿足車載控制器的要求,是性價比較高的代表。
  4. 有6路can接口,這個是我比較喜歡的,前面3個can公用128個接收發送郵箱,後面3個can公用128個接收發送郵箱。這一點比TC275還有多兩路can;
  5. 內部Flash有2Mbyte,184K的RAM;

 

開發工具:

1)軟件編程開發環境:首選Tasking,功能強大;其次Hightec,適合個人使用;

2)下載仿真工具:miniwiggler,勞特巴赫、PLS;

3)工具價格功能介紹

  1. TC275要求的最低版本是Tasking 4.2.2,TC234要求的最低版本是4.3.3,選購的時候請注意,否則不能在線仿真;Tasking的試用版僅半個月,需要與MAC地址綁定,可是我一直沒有申請到。較新的版本是Tasking6.2,該版本支持所有的芯片,同時內部還有PinMapper功能,可自動生成底層引腳配置程序,但是與電腦的CID嗎綁定,不容易破解;
  2. Hightech的價格未知,但是試用期一年,基本上採用試用版既可以完成開發,需要在網上申請license,與MAC地址綁定,我使用的是4.9.1版本,不過已經有更新的版本發佈了;
  3. Tasking的價格最低要6萬RMB,和畫PCB的 Altium Designer同一家公司,非英飛凌出品;
  4. 英飛凌出品:miniwiggler的官方價格約1000RMB,淘寶價格300RMB,自制成本價格低於100RMB;
  5. 勞特巴赫:功能強大,支持n多種芯片,價格從8萬到30萬RMB之間的各種套裝,可憐本人只聞其聲,未見其人,歡迎財大氣粗的大俠交流下使用體驗。

4)工具組合介紹

  1. Tasking +miniwiggler:可以編寫代碼、生產目標文件,實現基本的調試功能,可設置斷點、逐行調試、觀察變量等等
  2. Hightec+miniwiggler:Hightec可以編寫代碼,但是無法在線調試,進支持Startkit開發板的在線調試。使用英飛凌的memtool上位機+miniwiggler將生成的文件下載到單片機裏面運行;
  3. Hightec+pls:pls的hightec主推的配套組合,功能和當然非常強大;
  4. Tasking、hightec + 勞特巴赫:這個不用講了,天下最強組合、沒有解決不了的問題。

5)根據性價比推薦組合

  1. Hightec (0RMB)+ 自制(300RMB): 可以在線仿真和調試,性價比最高,有需要的可以聯繫我

  2. Tasking + miniwiggler(北京乾勤300RMB或者英飛凌1000RMB):可以在線調試仿真
  3. 注意:Hightec (0RMB)+ miniwiggler(北京乾勤300RMB或者英飛凌1000RMB):無法在線調試,可以編譯下載;
  4. 其他組合:有錢就是任性;

附錄:

HighTec是英飛凌工具合作伙伴。

HighTec EDV Systeme 公司成立於1982年, 是世界上最大的基於開源的商業編譯工具供應商。 HighTec GNU-based compiler 在工業應用領域有超過30年的經驗,在汽車領域有超過20年的應用經驗,客戶遍及世界一流的行業公司。由於和一些主要汽車OEMs和半導體供應商有緊密的合作,在GNU-based compiler 和debugger 中融入了支持不同32位核的特別功能和不同的代碼優化方法。該產品包括以下基本內容:

* a GNU-based C/C++ compiler 工具鏈

* 基於Eclipse的集成開發環境

HighTec EDV Systeme 公司在布拉格設立有能力和服務中心,負責嵌入式多核應用開發和功能安全的諮詢和工程服務。

HighTec公司總部在德國Saarbrücken,北京西能電子科技發展有限公司是國內的代理商,負責HighTec 編譯工具在國內的市場推廣和技術支持。

 

1. HighTec公司GNU C/C++ Compiler開發編譯工具平臺

德國HighTec公司GNU C/C++ Compiler開發編譯工具平臺,可以支持infineon Tricore系列產品的嵌入式開發。HighTec公司的開發編譯工具平臺包括:

* 有強大的代碼優化功能的TriCore C/C++ 多核編譯器套餐

* Compiler for HSM security module

* GTM/MCS assembler

* EclipseTM集成開發環境

* 通過ISO26262安全認證

 

2. HighTec公司的開發編譯工具平臺主要特點

開發編譯工具包含有強大的操作引導模板wizards,並支持最新的多核結構,它很好的完成項目管理、從 compiler, assembler 到linker 的整個build process ,以及實現對硬件的初始化。主要功能特點包括:

* 強大的項目管理

* 操作模板引導功能

* 版本控制

* DAvE 工程文件導入功能

* 基於模型驅動的圖形化內存分配功能:Eclipse?中基於模型化GUI功能進行內存分配,使代碼和數據放置在內存中的合適區域。

其工作流程爲:首先選擇MCU型號;然後產生工程項目,包括正確的啓動代碼,必要的硬件初始化,內存分配,頭文件描述等

 

2.1  C/C++ compiler 套餐的特點:

* 產生穩定、緊湊和快速可執行的代碼

* Compiler能快速build,能同時多次起動,可以並行編譯,加快build過程

* AUTOSAR MCAL driver support:在用到AUTOSAR操作系統時,compiler可以指定寄存器,以便用戶特別使用,以免compiler佔用或使用。同時支持不同AUTOSAR供應商:ETAS, Elektrobit 和Vector等。

* ANSI/ISO conformance

* Multi-core support (ISO and EABI compliant)

* 爲了充分發揮32位MCU核的強大功能,HighTec的compiler套餐採用了領先的代碼優化技術,以及必要的對硬件的控制。代碼優化策略有閉環優化、函數在線和全局優化兩種方式,這樣節省代碼執行時間和提高代碼密度。

* 長期的產品支持和維護

* Commercial standard and math libraries(no open source)

* 多種尋址模式包括:absolute, register relative, circular:Tricore結構可以實現不同尋址模式,這樣提高效率,一方面地址計算省略了,同時地址由彙編指令編碼。compiler實現不同尋址模式是通過‘pragma’語句的源代碼完成的,這樣控制和分配代碼和數據在合適的內存空間。

* 代碼覆蓋率功能支持Code coverage support

* SIMD and FPU support

* PCP C-Compiler

HighTec C/C++ compiler產生位置獨立的代碼PIC和位置獨立的數據PID,這個功能在ECUs廠家生產和測試過程編程燒寫中很重要,適合汽車軟件的多平臺運行要求。

 

2.2  支持ISO-26262標準的應用開發

在Tricore CPU結構核中,所有標註PRO-SILTM的產品都滿足ISO 26262(ASIL-D)和IEC 61508(SIL-3)的要求。在infineon的SafeTcore安全套件中,程序啓動階段和正常運行階段時,有一系列功能強大的自檢程序,運行於PCP中,以確保用戶的軟件和CPU硬件在正常環境運行。HighTec PCP C-Compiler 支持SafeTcore安全套件。

根據ISO-26262,汽車行業的應用程序供應商在隨機的時間裏可以複製應用程序以及軟件的版本狀態。HighTec 提供長期的服務,不管是固定的版本號,還是有升級的。

在處理故障檢測和防錯方法上,HighTec 提供了先進的bug-finding-compiler,適合於已經知道的silicon bug和compiler bug。Compiler可以檢測客戶的應用代碼,看是否被bug影響了,如果影響了,哪個模塊受到影響。這樣,用戶只是重新rebuild受影響的模塊,節約build和testing的時間。

關於安全要求高的應用中,對代碼覆蓋率的分析功能,HighTec C/C++ compiler 支持產生instrumented code。應用程序運行時,採集到的代碼覆蓋信息寫到標準的gcov format格式中,相應的源代碼的代碼覆蓋率信息在Eclipse editor中顯示。

在軟件的build process過程中,可追溯行是保證軟件質量的保障。HighTec C/C++ compiler 通過記錄compiler版本號和build可選信息,保證可追溯性。這些信息存儲在可執行文件的特定區域,而且不會下載到目標板中,而佔用額外的內存空間。

除此之外,HighTec工具裏還可以對變量指定’alias’名,這樣和客戶的命名規則一致。

 

2.3  支持多核系統開發Multi-core support

單核向多核系統轉換:TriCore C/C++ 編譯器套餐支持同類或不同類的多核結構。HighTec對多核的支持,不必在linker level對源代碼進行匹配。這種ISO- and EABI-compliant多核支持功能使得從單核到多核源代碼輸出變得簡單,容易實現可linker level執行代碼和數據代碼的指定。不同核之間的數據交換通過hide-and visibility機制處理,即指定核之間用戶定義的接口。如果數據和代碼要對所有核可視,則要直接指定。所有核共享的數據和代碼,在一個單獨的文件中輸出,可以用來實現核之間的對比分析。hide-and visibility機制降低了分佈式系統的複雜性,減少了系統調試的工作量,提高了軟件系統的可維護行。

另外,在數據和代碼相互分開的情況下,在單獨的核中執行獨立的應用程序是沒有問題的。

資源的訪問和映射:一個核可以進入它本地的資源,如通過本地地址空間進入RAM。另外,這些資源可以映射到全局地址空間,其他的核也可以訪問。這樣,內存可以以不同地址訪問,如本地地址空間或全局地址空間,對不同的核結構也是可行的,如GTM/MCS模塊。

Linker 和輸出文件:HighTec Tricore linker自動處理不同核的內存重新映射。Linker可以連接不同核的目標文件,產生一個輸出elf文件,由全球主要的debugger 工具供應商 PLS, Lauterbach, Isystem等都支持多核調試。

HighTec 工具支持不同的核架構,如GTM/MCS和HSM安全模塊。Tricore, GTM和HSM的二進制可以連接輸出到一個ELF文件中,並上載‘en bloc’到目標系統。

高效的尋址模式,如small addressing mode,可以單獨用於每個核中。每個核的對應地址寄存器需要在啓動代碼中初始化。Linker會自動對每個核的small addressable area必要的基本寄存器初始化

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章