作者 |Andrei小編 | 吃不飽
當(dāng)ECU之間使用CAN來進(jìn)行通信時,總線上發(fā)生了什么?我們可以借助示波器來觀察總線上的電平,而從示波器上我們可以看到一串連續(xù)的高低起伏的“線條”——波形。無論是電磁波或者是總線上變化的電平,這些信息的載波在時間和空間上是連續(xù)的。而從這段連續(xù)的載波中解讀出我們所需要的信息就需要借助一定的采集手段——采樣。CAN控制器需要從總線的高低電平中獲取到邏輯0和1。那么控制器要在哪個位置采樣?要怎樣才能實現(xiàn)正確采樣呢?這就涉及到了采樣點這個概念。01采樣點的定義采樣點是CAN控制器讀取總線電平,并解釋各個比特的邏輯值的時間點。在我們了解采樣點的測試方法之前,我們需要先了解CAN報文的一個位時間是如何組成的。CAN控制器的最小時間周期稱作時間份額(Time quantum,簡稱Tq),它是通過對芯片晶振周期進(jìn)行分頻而得來的。一個位時間由若干個Tq組成(通常為8到25個),同時根據(jù)功能分為4個階段:同步段、傳播段、相位緩沖段1和相位緩沖段2。
4個階段的功能如下
同步段(Sync_Seg):用于實現(xiàn)時序調(diào)整,總線上各個節(jié)點的跳變沿產(chǎn)生在同步段內(nèi),通常為1個Tq;傳播段(Prop_Seg):用于補償網(wǎng)絡(luò)上的物理延遲時間。這些延遲時間包含信號在總線上的傳輸延遲和CAN節(jié)點內(nèi)部的處理延遲。傳播段保證了2倍的信號在總線上的延遲時間;相位緩沖段1(Phase_Seg1)和相位緩沖段2(Phase_Seg2):用于補償跳變沿的相位誤差,其長度會在重同步的實現(xiàn)過程中延長或縮短。采樣點位于相位緩沖段1的結(jié)尾。由于相位緩沖段1和相位緩沖段2能夠延長或縮短,采樣點也能夠隨之變化。02為什么需要測試采樣點?
合適的采樣點位置是CAN控制器正常通信的保證。
對于CAN網(wǎng)絡(luò)這個整體而言,各個節(jié)點應(yīng)該盡量使用相同的采樣點位置,否則容易出現(xiàn)采樣錯誤,進(jìn)而使整個網(wǎng)絡(luò)的通信出現(xiàn)故障;
對于單個節(jié)點而言,過早的采樣使得節(jié)點易受位時間初期的電平波動影響,進(jìn)而導(dǎo)致采樣錯誤;
受限于重同步的要求和相位緩沖段的寬度,CAN控制器無法過晚采樣。
03采樣點的測試方法
采樣點的測試方法:干擾某一位的采樣點附近的總線電平,利用CAN錯誤幀機(jī)制,根據(jù)ECU是否發(fā)送錯誤幀來判斷是否出現(xiàn)采樣錯誤,進(jìn)而計算ECU的采樣點。根據(jù)ECU角色的不同,采樣點測試的方法可以分為兩類:以ECU作為發(fā)送節(jié)點,干擾它發(fā)送的報文;以ECU作為接收節(jié)點,干擾它接收的報文。實際測試環(huán)境的總線干擾設(shè)備采用VH6501,并以待測ECU作為接收節(jié)點,使用VH6501構(gòu)建仿真報文,然后從后往前逐次翻轉(zhuǎn)仿真報文數(shù)據(jù)場的時間份額的電平極性,直到總線上出現(xiàn)錯誤幀。
在開始采樣點測試之前,我們需要設(shè)置VH6501自身的采樣點;
VH6501使用一連串的脈沖電平來構(gòu)建仿真報文;
從后往前逐次翻轉(zhuǎn)仿真報文數(shù)據(jù)場的各個脈沖的電平極性,直到干擾到待測ECU的采樣點,使得待測ECU發(fā)送錯誤幀。
在執(zhí)行采樣點的測試過程中,我們使用示波器截獲CAN總線上的波形。樣件使用500 Kbps的傳統(tǒng)CAN,即位時間為2 μs。示波器時基設(shè)置為8 μs,即一個橫格可容納4個位。
上圖為沒有受到干擾的報文的波形圖,圖中我們可以清晰地看到數(shù)據(jù)場的每個比特占用均等的1/4橫格。而當(dāng)我們啟動干擾(極性翻轉(zhuǎn)),并且成功翻轉(zhuǎn)采樣點所在區(qū)間的電平極性后,我們將看到示波器上出現(xiàn)了錯誤幀,并且數(shù)據(jù)場最后一個字節(jié)的最后一個隱性位相較于正常的波形有著明顯的縮短。
04采樣點測試誤差產(chǎn)生的原因
采樣點測試誤差的來源有測試環(huán)境、設(shè)備和測試方法等等。
VH6501和待測ECU之間的位時間偏差造成的系統(tǒng)誤差:理想情況下500 Kbps的傳統(tǒng)CAN的位時間長度為2 μs,但實際環(huán)境里,待測ECU和VH6501的位時間與標(biāo)準(zhǔn)的位時間之間存在一定的偏差。如果ECU的位時間大于VH6501的位時間,采樣點的測量結(jié)果會比實際值偏大;當(dāng)樣件的位時間小于CANoe設(shè)定的位時間,采樣點的測量結(jié)果會比實際值偏小。這樣的系統(tǒng)誤差無法通過改進(jìn)測量方法來降低。
測試方法引起的誤差:前文介紹采樣點測試方法中提到,采樣點測試是通過VH6501翻轉(zhuǎn)待測ECU采樣點附近的電平極性實現(xiàn)的。但是采樣點是一個“時間點”,而VH6501干擾的是時間段。因此每次干擾的時間段的長度將直接影響采樣點測試的誤差大小。常用的測試方法中,每個位時間由16個Tq組成,每次翻轉(zhuǎn)一個Tq。最終的實際結(jié)果相對于正確結(jié)果可能存在±6.25%的偏差。但是在介紹采樣點測試方法中我們提到,VH6501使用脈沖序列來構(gòu)建報文,每個位時間由320個脈沖組成。那么通過縮小每次翻轉(zhuǎn)的電平長度,可以將±6.25%的誤差縮減至±0.3125%。
05CAN FD采樣點測試復(fù)雜原因的分析
CAN FD報文的結(jié)構(gòu)更復(fù)雜且位速率可變。這使得CAN FD采樣點測試相較于傳統(tǒng)CAN更復(fù)雜。CAN FD在位速率較小的仲裁場和位速率較大的數(shù)據(jù)場分別采用了兩個不同的采樣點。
CAN FD數(shù)據(jù)場的位速率視報文的BRS位(Bit rate switch)而調(diào)整-當(dāng)BRS位檢測為隱性時,CAN FD的位速率將從仲裁場的最小位速率切換為數(shù)據(jù)場的數(shù)據(jù)位速率,這一位速率將持續(xù)至CRC界定符的采樣點。因此在測量CAN FD采樣點時應(yīng)避免對BRS和CRC界定符進(jìn)行干擾。同時由于位時間的差異,使用VH6501構(gòu)造脈沖序列時應(yīng)考慮到BRS和CRC界定符采樣點前后的位速率的切換以及位時間4個階段的長度變化。
06CAN FD的第二采樣點
不同于采樣點,第二采樣點在CAN FD控制器接收其他節(jié)點發(fā)送報文的過程中并不會起到任何作用。第二采樣點的作用,是在不改變傳輸延遲補償?shù)那闆r下,實現(xiàn)CAN FD在數(shù)據(jù)場的位錯誤檢測要求。
位錯誤的檢測要求發(fā)送節(jié)點對總線狀態(tài)進(jìn)行回讀。傳統(tǒng)CAN總線在設(shè)計之初考慮到了信號在總線上的傳播時延以及發(fā)送節(jié)點TXD和RXD之間的處理時延,這兩種時延通過位時間的傳播段實現(xiàn)補償,進(jìn)而保證了發(fā)送節(jié)點在發(fā)送一個比特期間也能從總線上回讀到這個比特。ISO 11898-5規(guī)定傳輸時延的上限為255 ns。位速率為8 Mbps的CAN FD節(jié)點的位時間為125 ns。以極限狀態(tài)下1個位時間由8個Tq組成來計算,單位Tq為15.625 ns。即傳輸時延需要17個Tq來補償。顯然一個位時間完全不夠來補償傳輸時延。
解決方法有兩種。一是增大位時間,增大傳播段的Tq組成數(shù)量,但是這種方法會降低位速率,因此和CAN FD高速目標(biāo)相沖突。二是采用傳輸時延補償,即在發(fā)送節(jié)點回讀總線狀態(tài)時引入一段傳輸時延補償,進(jìn)而保證位錯誤檢測的需要。而引入這段傳播時延補償?shù)慕Y(jié)果即為第二采樣點(secondary sample point,縮寫 SSP)。
SSP對于CAN FD控制器的重要性不言而喻,它是保證控制器在數(shù)據(jù)段實現(xiàn)位錯誤檢測功能的關(guān)鍵。使用SSP的發(fā)送節(jié)點會忽略它在采樣點檢測到的位錯誤。但是如果在SSP檢測到位錯誤,發(fā)送節(jié)點將會在下一個采樣點對檢測到的位錯誤發(fā)出錯誤幀。
07小結(jié)
ECU采樣點的位置設(shè)計是否得當(dāng)對于通信有著相當(dāng)大的影響。本文重點介紹了傳統(tǒng)CAN采樣點的測試方法,并簡要分析采樣點測試的誤差產(chǎn)生原因,同時就CAN FD采樣點測試的復(fù)雜性和第二采樣點進(jìn)行了介紹。
北匯信息專注于汽車電子測試,后續(xù)將會為大家?guī)砀嗟?a target="_blank">科普文章,介紹汽車電子及測試相關(guān)的知識。同時,也包括本文中所提到的CAN FD第二采樣點SSP的測試實踐經(jīng)驗。注:圖片源自ISO 11898標(biāo)準(zhǔn)以及VC等。
-
芯片
+關(guān)注
關(guān)注
456文章
50889瀏覽量
424243 -
示波器
+關(guān)注
關(guān)注
113文章
6260瀏覽量
185159 -
CAN
+關(guān)注
關(guān)注
57文章
2756瀏覽量
463841
發(fā)布評論請先 登錄
相關(guān)推薦
評論