隨著對汽車安全、可靠性與舒適度需求的增加,汽車電子的數(shù)量也在增加,并提出了對傳動鏈與線控系統(tǒng)中高速控制的需求。汽車制造商要求有可提供更高頻寬、靈活性及(也許是最重要的)確定性行為的新協(xié)議。FlexRay串行通訊協(xié)議可滿足這種車內(nèi)通訊基礎(chǔ)設(shè)施的要求,并能實現(xiàn)高速控制應(yīng)用。
FlexRay協(xié)議由BMW、博世、戴姆勒克萊斯勒、飛思卡爾、通用汽車、飛利浦及大眾汽車等公司開發(fā),其架構(gòu)可提供高達10Mbps的資料速率以及確定性行為等極大優(yōu)勢。該協(xié)議包括一個雙冗余信道,并采用具有可保證消息延遲時間的可擴展靜、動態(tài)消息傳輸。此外,基于FlexRay的系統(tǒng)可編程為具有比只有異步傳輸?shù)目刂凭钟蚓W(wǎng)絡(luò)(CAN)協(xié)議更高靈活性的同步與異步傳輸。還有,該協(xié)議還支持通過整體時基的時脈同步、無沖突總線存取、透過標(biāo)識符元針對消息的尋址以及采用單或雙信道的可擴展系統(tǒng)容錯。
FlexRay訊框分成三部分:封包頭、載荷及封包尾。封包頭部分包括訊框ID、載荷長度、封包頭CRC及循環(huán)數(shù)。訊框ID標(biāo)識一個訊框,并用于區(qū)分由事件觸發(fā)的訊框優(yōu)先級。載荷長度包括訊框所傳輸?shù)淖址麛?shù)。封包頭CRC用于在傳輸期間進行錯誤檢測。循環(huán)數(shù)包含一個每次當(dāng)通訊周期開始時計一次數(shù)的計數(shù)器值。載荷部分包括訊框所傳輸?shù)馁Y料。FlexRay載荷或資料訊框的長度長達127個字符(254個字節(jié))。封包尾部分則由三個8位CRC組成,用于錯誤檢測。
設(shè)計人員的任務(wù)
使用FlexRay的設(shè)計人員的主要挑戰(zhàn)是‘編寫’通訊驅(qū)動程序。FlexRay下層的時間觸發(fā)方法要求控制設(shè)計階段中有幾個計劃步驟,比采用更熟悉的CAN接口所需的步驟要多。其中包括用于任務(wù)配置及消息調(diào)度的高階計劃。
例如,一個基于CAN總線的汽車系統(tǒng),其消息調(diào)度是透過用消息標(biāo)識符元暗中分配消息優(yōu)先級來完成。優(yōu)先級越高,消息登上總線的可能性就越大。但如果用FlexRay來作為通訊系統(tǒng),則消息必須相對于所計劃的任務(wù)順序來調(diào)度。因此每條消息都在通訊周期中分配有一個唯一的傳輸時隙,這便能實現(xiàn)可離線計算的消息和任務(wù)的靜態(tài)及確定性調(diào)度。
設(shè)計人員的另一項挑戰(zhàn)是測試FlexRay系統(tǒng),這需要有適當(dāng)?shù)脑徒?gòu)環(huán)境。例如,一個基于FlexRay的引擎控制系統(tǒng)需要仿真引擎速度、過程曲軸訊號,以及產(chǎn)生用于點火與噴射系統(tǒng)的輸出訊號等。這便提出了對適當(dāng)工具,以及可處理FlexRay協(xié)議動態(tài)的強大原型建構(gòu)系統(tǒng)的需求
評估套件幫助應(yīng)用推出
很多半導(dǎo)體廠商都在進行FlexRay控制器開發(fā),并準(zhǔn)備將FlexRay與32位微控制器整合。為使開發(fā)人員現(xiàn)在能從基于FlexRay的系統(tǒng)開始,富士通提供了一個基于FPGA的開發(fā)評估套件,可為用作主控制器的富士通32位Flash微控制器(MB91F369G)提供一個多功能評估板。該套件包含一塊CPU板、一塊FlexRay主板以及一塊帶有富士通基于FPGA的FlexRay控制器的子板(位于主板上)。子板位于FlexRay主板上,并能用作單獨的FlexRay控制器,可與任何采用外部總線接口的CPU接口。
該套件也可用于軟件開發(fā),并可用整合Softune Workbench(工作臺)開發(fā)環(huán)境、協(xié)同監(jiān)視調(diào)試器或仿真器系統(tǒng)來進行測試。這些工具使設(shè)計人員能著手進行FlexRay系統(tǒng)評估。
為以該套件開始,設(shè)計人員首先應(yīng)該熟悉FlexRay IP模塊即E-RAY規(guī)范(稍后介紹),以及與其一起提供的評估板硬件。熟悉該套件的能力后,設(shè)計人員即可解決在使用套件評估硬件時可能出現(xiàn)的硬件整合等問題。
熟悉后,即可將板插入每塊板上提供的適當(dāng)插座中。為FlexRay主板加電后(它也負(fù)責(zé)為其它子板供電),微控制器上的預(yù)編程軟件即開始執(zhí)行,此時可用一臺示波器或任何FlexRay總線分析工具來觀察FlexRay總線的行動。為對微控制器進行重編程,或編輯、調(diào)試程序,評估版套件需要有一臺帶RS23接口的PC或兼容硬件。這需要搭配富士通的免費程序及專用軟件開發(fā)環(huán)境(Softune Workbench),以便設(shè)計人員能編輯、編譯、建構(gòu)及調(diào)試程序。
電路板特點
CPU板的32位微控制器帶有512kB閃存ROM和24kB RAM芯片上內(nèi)存。此外,為滿足應(yīng)用開發(fā)階段對更大內(nèi)存的需求,CPU板還帶有可用于程序代碼及恒定資料的1MB外部閃存。外部板上2MB RAM可為用監(jiān)視調(diào)試器進行外部調(diào)試提供幫助。
這個開發(fā)板提供按鈕,用于外部中斷及微控制器重置。還有一個RS232驅(qū)動器及一個用于內(nèi)部UART的DB9連接器。除通用UART外,開發(fā)板還提供與PC的連接,用于監(jiān)視器/調(diào)試器的通訊,或?qū)π酒祥W存進行編程。用于芯片上CAN控制器的單信道CAN收發(fā)器適合開發(fā)基于CAN的系統(tǒng)。
該套件的主板可作為基板,用于插入帶FlexRay控制器的子板和兩個帶FlexRay收發(fā)器的實體層模塊,實體層模塊則為可選組件。主板帶有用于所有次級電壓的電源,它透過RS485收發(fā)器提供和主處理器及兩個FlexRay信道的連接。每一個通訊信道都能配置成10Mbps的資料速率。
子板在遵循博世公司建議的E-Ray 1.1版規(guī)范(很快將推出2.1版),在Altera FPGA上整合了富士通FlexRay控制器;贔PGA的通訊控制器由一個80MHz的振蕩器提供饋入。FlexRay通訊的默認(rèn)實體層由兩個安裝在FlexRay主板上的RS485收發(fā)器提供,不過這些收發(fā)器可用插入至FlexRay評估主板終端上的實體層來旁路?捎靡粋真正的實體層表現(xiàn)來代替默認(rèn)RS485收發(fā)器。此外,也可用富士通公司的新型MB88121 FlexRay控制器來取代板上FPGA。
了解E-Ray特性集
為編寫應(yīng)用程序,設(shè)計人員必須首先了解E-Ray特性集。E-Ray模塊為整合在子板FPGA中的FlexRay IP模塊。該模塊根據(jù)2.1版FlexRay協(xié)議規(guī)范通訊,且其緩存器組可由CPU透過外部總線接口來直接存取。這些緩存器連同消息處理器、整體時間單元、系統(tǒng)通用控制、訊框和符號處理、網(wǎng)絡(luò)管理與中斷控制等一起,來控制、配置及監(jiān)視FlexRay協(xié)議控制器,并透過I/O緩沖器來存取消息RAM。
這套工具還具有254字節(jié)的消息緩沖器,均可針對FlexRay網(wǎng)絡(luò)上的通訊來配置。消息儲存器由128個消息緩沖器組成,并可針對不同的載荷長度來配置。每個消息緩沖器均可配置成接收緩沖器、發(fā)送緩沖器或接收FIFO。所有和消息處理有關(guān)的功能都在消息處理器中完成。這些功能包括:接收過濾、兩個FlexRay協(xié)議控制器與消息RAM之間的消息傳輸、發(fā)送時序保持以及消息狀態(tài)信息提供等。消息過濾支持使用訊框ID、信道ID及循環(huán)計數(shù)的過濾。透過允許針對靜、動態(tài)插槽來配置macrotick及microtick的整體時間單元緩存器,E-Ray還能支持網(wǎng)絡(luò)管理。
由于用E-Ray模塊來編寫FlexRay通訊驅(qū)動程序既費時又費力,因此評估套件提供了用于時間驅(qū)動通訊的Decomsys庫的評估副本。Decomsys庫為開發(fā)人員提供了現(xiàn)成可用的功能,并使其能進行平臺獨立應(yīng)用開發(fā)。利用這些特性,應(yīng)用程序可用一個通用應(yīng)用編程接口(API)來透明地存取硬件。組件驅(qū)動程序為FlexRay通訊控制器提供了基于訊框的API。這些API功能包括執(zhí)行控制器配置、方便對通訊控制器的資料緩沖器的讀/寫存取、以及控制通訊控制器開/關(guān)等。
提供了評估套件后,Softune Workbench V6便成為一個與Windows XP兼容、用于富士通微控制器的整合開發(fā)環(huán)境。該工作臺包括整個軟件開發(fā)周期所需的全套工具、編輯器、C編譯器、匯編器、鏈接器、庫管理及調(diào)試器等。
對于那些開發(fā)具體軟件以及使用調(diào)試器的工程師來說,必須首先安裝Softune Workbench開發(fā)環(huán)境。
該套件還提供有現(xiàn)成的樣板程序以及可進行適當(dāng)修改以生成實際應(yīng)用程序的模板。這些程序可用Softune Workbench來進行編譯和構(gòu)造。樣板程序可用COMMSTACK庫來獲得,或直接使用E-Ray模塊,以使開發(fā)人員對不帶庫的程序的復(fù)雜性進行評估。用庫編寫的程序要求在項目文件中安裝庫才能進行編寫。
成功編譯/建構(gòu)程序后,即可加載這些樣品程序并直接從CPU上執(zhí)行。使用者可用預(yù)編程至CPU369板閃存中的監(jiān)視器/調(diào)試器來立即調(diào)試程序,無需其它工具。
對于更廣泛的軟件調(diào)試,可與評估套件一起使用仿真器。要使用仿真器,設(shè)計人員必須先取下帶閃存MCU的MCU適配器板,然后再插入Starterkit。
FlexRay套件是一個高性能的評估與原型建構(gòu)平臺,具有可實現(xiàn)快速綜合設(shè)計、仿真以及用于FlexRay的測試系統(tǒng)應(yīng)用的通用性與可擴展性。這種產(chǎn)品將在設(shè)計人員使FlexRay成為一項產(chǎn)業(yè)標(biāo)準(zhǔn)協(xié)議、并在某一天讓線控應(yīng)用取代機械系統(tǒng)的過程中提供幫助。
Neelima Chaurasia為富士通微電子(美國)公司高級應(yīng)用工程師。您可以透過以下email地址與她聯(lián)系:nchauras@fma.fujitsu.com。
作者:Neelima Chaurasia
富士通微電子(美國)公司





