我們之前已經(jīng)分享了LIN、CAN、CAN FD、FlexRay總線。在開(kāi)始閱讀之前,如果你對(duì)已介紹的總線技術(shù)還不了解的話,可以先閱讀以下文章快速溫習(xí)一下,等補(bǔ)完車(chē)載以太網(wǎng)和MOST,汽車(chē)總線技術(shù)樓主基本分享結(jié)束了。
車(chē)載以太網(wǎng)的出現(xiàn)背景樓主就不多做贅述了,其實(shí)主要是因汽車(chē)E/E架構(gòu)和功能的復(fù)雜度提升而帶來(lái)的對(duì)車(chē)輛數(shù)據(jù)傳輸帶寬提高和通訊方式改變(基于服務(wù)的通訊-SOA)的需求。
就目前汽車(chē)總線的應(yīng)用情況,成本低、可靠性高、應(yīng)用普遍的有Lin、CAN通訊,CAN FD也是最近幾年才逐漸得到應(yīng)用,而FlexRay、車(chē)載Ethernet等基于成本因素,目前主要在高端車(chē)型中使用。
其中樓主之前介紹的FlexRay后續(xù)得到普遍應(yīng)用的可能性樓主認(rèn)為不是很大,首先成本方面與車(chē)載以太網(wǎng)差不多而通訊速率又遠(yuǎn)低于它,而伴隨著未來(lái)智能化、網(wǎng)聯(lián)化的趨勢(shì),車(chē)載Ethernet在未來(lái)得到推廣的可能性要比FlexRay高很多。需要注意的是CAN FD在市場(chǎng)推廣實(shí)施還沒(méi)有幾年,第三代CAN總線-CAN XL也即將登場(chǎng),CAN XL傳輸速率將達(dá)到10Mbit/s,可填補(bǔ)CAN FD和百兆車(chē)載以太網(wǎng)(100BASE-T1)之間的鴻溝,從這點(diǎn)也可以看出車(chē)載通訊的快速發(fā)展及對(duì)通訊帶寬的越來(lái)越高的要求,同時(shí)也可從另一方面說(shuō)明FlexRay的尷尬。當(dāng)然所有總線的應(yīng)用都是分所在的域和場(chǎng)景的,例如對(duì)于安全要求很高的場(chǎng)合,采用了基于時(shí)間觸發(fā)機(jī)制的FlexRay因?qū)崟r(shí)性和確定性更高則更合適。
在車(chē)載網(wǎng)絡(luò)方面,玩家是很多的,也推出了各自的標(biāo)準(zhǔn),如下:
其中OPEN Alliance和電氣與電子工程師協(xié)會(huì)(IEEE)制定的標(biāo)準(zhǔn)是車(chē)載以太網(wǎng)領(lǐng)域比重最大和應(yīng)用最廣泛的,例如我們熟知的100BASE-T1和1000BASE-T1。
自1980年以來(lái),IEEE一直負(fù)責(zé)以太網(wǎng)的維護(hù)、開(kāi)發(fā)和標(biāo)準(zhǔn)化。盡管各個(gè)公司都可提供專(zhuān)有的以太網(wǎng)解決方案,但大多數(shù)時(shí)候公司都會(huì)交給IEEE進(jìn)行標(biāo)準(zhǔn)化以確保更廣泛的應(yīng)用。802工作組則專(zhuān)門(mén)負(fù)責(zé)以太網(wǎng),因此,所有與以太網(wǎng)相關(guān)的標(biāo)準(zhǔn)都以802開(kāi)頭(例如,IEEE 802.1,IEEE 802.2,IEEE 802.3等)。
OPEN Alliance SIG是由汽車(chē)制造商和供應(yīng)商組成的聯(lián)盟,目的是促進(jìn)以太網(wǎng)在汽車(chē)工業(yè)中的進(jìn)一步發(fā)展。OPEN Alliance SIG與IEEE合作,將汽車(chē)以太網(wǎng)轉(zhuǎn)換為通用標(biāo)準(zhǔn)。就目前的車(chē)載以太網(wǎng)標(biāo)準(zhǔn)方面,主流標(biāo)準(zhǔn)的是如下幾個(gè),目前主要是第二個(gè)100BASE-T1:用單對(duì)雙絞線實(shí)現(xiàn)100Mbit/s的數(shù)據(jù)傳輸,走的靠前的OEM則使用更快的千兆以太網(wǎng)。
OSI七層網(wǎng)絡(luò)模型(OSI=Open SystemsInterconnection)是互聯(lián)網(wǎng)發(fā)展過(guò)程中一個(gè)很重要的模型。OSI是一個(gè)開(kāi)放性的通信系統(tǒng)互連參考模型,其含義就是建議所有公司使用這個(gè)規(guī)范來(lái)控制網(wǎng)絡(luò)。只有統(tǒng)一通信規(guī)范時(shí),才能實(shí)現(xiàn)真正的互聯(lián)化。OSI 七層模型及通信互聯(lián)的傳輸過(guò)程,如下圖所示:
OSI 七層網(wǎng)絡(luò)模型是一個(gè)理想的網(wǎng)絡(luò)參考模型,TCP/IP模型是已經(jīng)被實(shí)際廣泛應(yīng)用于因特網(wǎng)的網(wǎng)絡(luò)分層模型。TCP/IP 模型沒(méi)有對(duì) OSI 的 5~7 層做嚴(yán)格區(qū)分,統(tǒng)稱(chēng)為應(yīng)用層。
車(chē)載以太網(wǎng)是基于 TCP/IP 的網(wǎng)絡(luò)分層模型,并由 OPEN 和 AUTOSAR 等聯(lián)盟對(duì)以太網(wǎng)相關(guān)協(xié)議進(jìn)行了規(guī)范和補(bǔ)充。
以太網(wǎng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)有點(diǎn)對(duì)點(diǎn)形式、類(lèi)似于CAN或LIN的總線形式、鏈?zhǔn)胶托切偷刃问剑?/span>
也有由上面幾種形式的組合形式:
當(dāng)然現(xiàn)在多個(gè)節(jié)點(diǎn)的車(chē)載以太網(wǎng)的互聯(lián)互通需要交換機(jī)Switch,Switch的作用如下:
從硬件的角度看,以太網(wǎng)接口電路主要由MAC(Media Access Control)控制器和物理層接口PHY(Physical Layer,PHY)兩大部分構(gòu)成,如下圖所示:
MAC及PHY工作在OSI七層模型的數(shù)據(jù)鏈路層和物理層,如下
PHY和MAC之間是如何傳送數(shù)據(jù)和相互溝通的呢?MAC與PHY之間通過(guò)兩個(gè)接口連接,分別為SMI接口和MII接口。
MII(Media Independent Interface)即媒體獨(dú)立接口,MII接口是MAC與PHY連接的標(biāo)準(zhǔn)接口,以太網(wǎng)MAC通過(guò)該接口發(fā)出數(shù)據(jù)幀經(jīng)過(guò)PHY后傳輸?shù)狡渌W(wǎng)絡(luò)節(jié)點(diǎn)上,同時(shí)其他網(wǎng)絡(luò)節(jié)點(diǎn)的數(shù)據(jù)先經(jīng)過(guò)PHY后再由MAC接收。MII是IEEE-802.3定義的以太網(wǎng)行業(yè)標(biāo)準(zhǔn),MII接口提供了MAC與PHY之間、PHY與STA(Station Management)之間的互聯(lián)技術(shù),該接口支持10Mb/s與100Mb/s的數(shù)據(jù)傳輸速率,數(shù)據(jù)傳輸?shù)奈粚挒?/span>4位。"媒體獨(dú)立"表明在不對(duì)MAC硬件重新設(shè)計(jì)或替換的情況下,任何類(lèi)型的PHY設(shè)備都可以正常工作。802.3協(xié)議最多支持32個(gè)PHY,但有一定的限制:要符合協(xié)議要求的connector特性。
SMI叫串行管理接口,以太網(wǎng)MAC通過(guò)該接口可以訪問(wèn)PHY的寄存器,通過(guò)對(duì)這些寄存器操作可對(duì)PHY進(jìn)行控制和管理。SMI接口包括MDIO(控制和管理PHY以獲取PHY的狀態(tài))和MDC(為MDIO提供時(shí)鐘)。MDC由MAC提供,MDIO是一根雙向的數(shù)據(jù)線。用來(lái)傳送MAC層的控制信息和物理層的狀態(tài)信息。MDIO數(shù)據(jù)與MDC時(shí)鐘同步,在MDC上升沿有效。
由此可見(jiàn),MAC 和PHY,一個(gè)是數(shù)據(jù)鏈路層,一個(gè)是物理層;兩者通過(guò)MII傳送數(shù)據(jù)。 因此Ethernet的接口實(shí)質(zhì)是MAC通過(guò)MII總線控制PHY的過(guò)程。
MII接口后續(xù)又衍生了很多其他版本,如RMII、GMII、SGMII、RGMII等。這里簡(jiǎn)要介紹其中的MII和RMII,如下圖所示。MII共使用了16根線。其中CRS與COL只在半雙工模式有效,而車(chē)載以太網(wǎng)固定工作在全雙工模式下,故應(yīng)用在汽車(chē)環(huán)境需要14根線。
RMII是精簡(jiǎn)版的MII,數(shù)據(jù)發(fā)送接收均為兩根,相比MII減少了4根,另外它整合或減去了一些線,最終RMII只有8根線RMII的接口如下:
在實(shí)際的設(shè)計(jì)中,以上三部分并不一定獨(dú)立分開(kāi)的。由于,PHY整合了大量模擬硬件,而MAC是典型的全數(shù)字器件??紤]到芯片面積及模擬/數(shù)字混合架構(gòu)的原因,通常,將MAC集成進(jìn)微控制器而將PHY留在片外。更靈活、密度更高的芯片技術(shù)已經(jīng)可以實(shí)現(xiàn)MAC和PHY的單芯片整合,可分為下列幾種類(lèi)型:
CPU集成MAC與PHY,目前來(lái)說(shuō)并不多見(jiàn):
CPU集成MAC,PHY采用獨(dú)立芯片,這種在車(chē)載以太網(wǎng)上是主流方式,因嵌入式芯片廠商一般都將MAC集成在MCU內(nèi)部,而PHY芯片則由OEM或控制器供應(yīng)商自己選擇:
CPU不集成MAC與PHY,MAC與PHY采用集成芯片。這種在消費(fèi)用以太網(wǎng)上比較比較常見(jiàn),如電腦的網(wǎng)卡有這種方式的。
在以太網(wǎng)連接線束上,車(chē)載以太網(wǎng)與消費(fèi)用以太網(wǎng)也是不同的,首先消費(fèi)用以太網(wǎng)的標(biāo)準(zhǔn)主要采用10BASE-2、10/100BASE-TX和1000BASE-T,其中1000BASE-T是使用RJ45接口,需要四對(duì)雙絞線共8根線進(jìn)行數(shù)據(jù)傳輸,而10/100BASE-TX則是只使用四對(duì)雙絞線其中的兩對(duì)共4根線進(jìn)行數(shù)據(jù)傳輸,如下是100BASE-TX的示意圖(使用了兩對(duì)雙絞線)。
在很早之前的10BASE-2則是同軸電纜進(jìn)行數(shù)據(jù)傳輸,因此消費(fèi)類(lèi)以太網(wǎng)采用線束總結(jié)如下:
而車(chē)載以太網(wǎng)一般都基本采用帶T1的標(biāo)準(zhǔn),如IEEE 100BASE-T1(以前稱(chēng)為OABR)、IEEE 1000BASE-T1,這些都使用一對(duì)雙絞線共兩根線進(jìn)行數(shù)據(jù)傳輸:
其次在編碼方式上,1000BASE-T主要采用PAM5的編碼方式:
而車(chē)載以太網(wǎng)100BASE-T1和1000BASE-T1主要采用PAM3的編碼方式。
從上面可知,車(chē)載以太網(wǎng)主要采用基于一對(duì)雙絞線進(jìn)行數(shù)據(jù)傳輸?shù)?00BASE-T1或1000BASE-T1標(biāo)準(zhǔn),而我們電腦則使用RJ45接口采用基于4對(duì)雙絞線進(jìn)行數(shù)據(jù)傳輸?shù)?000BASE-TX標(biāo)準(zhǔn),因此當(dāng)我們用電腦測(cè)量控制器以太網(wǎng)時(shí),有時(shí)需要轉(zhuǎn)換器,如下:
以太網(wǎng)幀的格式如下:
以太幀有多種類(lèi)型,不同類(lèi)型的幀具有不同的格式和MTU值,但在同種物理媒體上都可同時(shí)存在。常見(jiàn)有兩種幀格式,第一種是上世紀(jì)80年代初提出的DIX v2格式,即Ethernet II幀格式。Ethernet II后來(lái)被IEEE802標(biāo)準(zhǔn)接納,并寫(xiě)進(jìn)了IEEE802.3x-1997的3.2.6節(jié)。
第二種是1983年提出的IEEE802.3格式。
這兩種格式的主要區(qū)別在于,Ethernet II格式中包含一個(gè)Type字段,標(biāo)識(shí)以太幀處理完成之后將被發(fā)送到哪個(gè)上層協(xié)議進(jìn)行處理。IEEE802.3格式中,同樣的位置是長(zhǎng)度字段。
不同的Type字段值可以用來(lái)區(qū)別這兩種幀的類(lèi)型,當(dāng)Type字段值小于等于1500(或者十六進(jìn)制的0x05DC)時(shí),幀使用的是IEEE802.3格式。當(dāng)Type字段值大于等于1536(或者十六進(jìn)制的0x0600)時(shí),幀使用的是Ethernet II格式。以太網(wǎng)中大多數(shù)的數(shù)據(jù)幀使用的是Ethernet II格式。
以太幀中還包括源和目的MAC地址,分別代表發(fā)送者的MAC和接收者的MAC,此外還有幀校驗(yàn)序列字段,用于檢驗(yàn)傳輸過(guò)程中幀的完整性。
汽車(chē)行業(yè)通常使用Ethernet II格式,該格式還可包含VLAN信息作為擴(kuò)展,因此,又分基本MAC幀(無(wú)VLAN)和標(biāo)記MAC幀(包括VLAN)兩種。
MAC addresses: Ethernet II幀通常以接收者目標(biāo)地址開(kāi)頭。 作用是指定要接收消息的網(wǎng)絡(luò)節(jié)點(diǎn)。 與隨后的發(fā)送者源地址相反,除單播地址外,還可以使用多播或廣播地址。對(duì)于以太網(wǎng)幀,只能有一個(gè)發(fā)送方,但可以有多個(gè)接收方。
Ether type: 基本和標(biāo)記的MAC幀通過(guò)類(lèi)型字段(以太類(lèi)型)進(jìn)行區(qū)分。 這通常標(biāo)識(shí)有效載荷數(shù)據(jù)區(qū)域中包含的分組,并給出有關(guān)較高層中使用的協(xié)議(例如,IPv4)的信息。如果以太類(lèi)型的值為0x8100,則將類(lèi)型字段向后移四個(gè)字節(jié),并在其原始位置插入一個(gè)VLAN標(biāo)簽。
VLAN Tag:VLAN標(biāo)簽由協(xié)議標(biāo)識(shí)符(TPID)和控制信息(TCI)組成。 TPID包含原始類(lèi)型字段的值,而TCI由優(yōu)先級(jí)(PCP),符合丟棄要求或規(guī)范的形式指示符(DEI或CFI)和標(biāo)識(shí)符(VID)組成。標(biāo)識(shí)符和優(yōu)先級(jí)主要用于汽車(chē)行業(yè)。標(biāo)識(shí)符區(qū)分不同應(yīng)用區(qū)域的相應(yīng)虛擬網(wǎng)絡(luò)。優(yōu)先級(jí)允許通過(guò)交換機(jī)優(yōu)化運(yùn)行時(shí)間,以便優(yōu)先轉(zhuǎn)發(fā)重要信息。
Payload:在類(lèi)型字段之后,以太幀包含有效載荷數(shù)據(jù)區(qū)域。 有效負(fù)載的最小長(zhǎng)度為不帶VLAN標(biāo)記的46字節(jié)或帶VLAN標(biāo)記的42字節(jié), 在汽車(chē)工業(yè)中,它最多可以包含1500個(gè)字節(jié)。
CRC校驗(yàn):CRC校驗(yàn)在以太幀的末尾發(fā)送。 校驗(yàn)中包含的值是使用標(biāo)準(zhǔn)化算法計(jì)算的,該算法在發(fā)送方和接收方中以相同的方式實(shí)現(xiàn)。該計(jì)算是在以太幀的所有字段中進(jìn)行的,因此可以確保整個(gè)消息的完整性。
以太網(wǎng)Packet: 對(duì)于以太網(wǎng)II幀的傳輸,以太網(wǎng)控制器在開(kāi)頭插入前同步碼和起始幀定界符(SFD),用于指示傳輸開(kāi)始。前同步碼,開(kāi)始幀定界符和以太幀的組合稱(chēng)為以太網(wǎng)數(shù)據(jù)包。
上面我們已經(jīng)提到,車(chē)載以太網(wǎng)是基于TCP/IP的網(wǎng)絡(luò)模型,因此我們先不考慮應(yīng)用層數(shù)據(jù)是根據(jù)哪種應(yīng)用層協(xié)議組織的,從應(yīng)用層來(lái)的數(shù)據(jù),經(jīng)過(guò)傳輸層會(huì)加上TCP/UDP報(bào)頭,再到網(wǎng)絡(luò)層的IP報(bào)頭,然后到鏈路層增加MAC地址等信息,最后由PHY轉(zhuǎn)換成線路上的二進(jìn)制流實(shí)現(xiàn)在發(fā)送端和接收端的數(shù)據(jù)傳輸。
其中上面傳輸層的TCP協(xié)議和網(wǎng)絡(luò)層的IP協(xié)議,樓主在本篇文章中就不過(guò)多贅述了,大家感興趣的請(qǐng)自行查詢(xún)了解。而應(yīng)用層協(xié)議有不少,例如DoIP、DHCP、SOME/IP等,而最重要的車(chē)載以太網(wǎng)應(yīng)用層協(xié)議主要是SOME/IP協(xié)議,關(guān)于這部分的闡述樓主放到下一篇。
參考文獻(xiàn):
1、Ethernet introduction(BOSCH、Tektronix、Vector、CSDN等資料)
點(diǎn)個(gè)“在看”再走!
文章推薦
探索沃爾沃XC60:豪華SUV中的安全典范 傳祺gs4霧燈在哪開(kāi) 傳祺gs4倒車(chē)燈型號(hào) 比亞迪元用什么機(jī)油好 gs4空調(diào)濾芯怎么換 gs4自動(dòng)空調(diào)怎么用 傳祺gs4水箱在哪里 廣汽gs4傳祺換車(chē)門(mén) 傳祺gs4儀表盤(pán)圖標(biāo) 傳祺gs4雨刷怎么用最新文章
探索沃爾沃XC60:豪華SUV中的安全典范 傳祺gs4霧燈在哪開(kāi) 傳祺gs4倒車(chē)燈型號(hào) 比亞迪元用什么機(jī)油好 gs4空調(diào)濾芯怎么換 gs4自動(dòng)空調(diào)怎么用 傳祺gs4水箱在哪里 廣汽gs4傳祺換車(chē)門(mén) 傳祺gs4儀表盤(pán)圖標(biāo) 傳祺gs4雨刷怎么用