隨著汽車電子和工業(yè)的蓬勃發(fā)展, CAN總線上的設(shè)備數(shù)量和數(shù)據(jù)吞吐量都大大提升。為了滿足更高帶寬和數(shù)據(jù)的吞吐量,CAN FD應(yīng)運(yùn)而生。CANFD的延遲時間更短,具有更好的實(shí)時性能和更高的帶寬,可以顯著提升數(shù)據(jù)傳輸?shù)男省?/p>
越來越多的應(yīng)用需要支持CAN FD通訊,然而很多主控芯片的CAN 控制器模塊尚未支持CANFD。TI的TCAN4550(-Q1)及TCAN4551(-Q1)產(chǎn)品集成了SPI轉(zhuǎn)CAN的CAN控制器和CAN 收發(fā)器,并支持CANFD功能,可以幫助開發(fā)者在現(xiàn)有平臺的基礎(chǔ)上迅速拓展CAN FD通訊功能。
為什么CAN FD通訊要開啟收發(fā)送延時補(bǔ)償TDC
傳統(tǒng)CAN最大傳輸速率1Mbps,CAN-FD采用兩種位速率,BRS到ACK中間(數(shù)據(jù)傳輸段)為可變速率,速率最高為8Mbps,其余部分(仲裁段和數(shù)據(jù)控制段)為原CAN總線用的速率,最高1Mbps。針對不同的速率有相應(yīng)的時間定義寄存器。
CAN 控制器要經(jīng)過CAN收發(fā)器將信號發(fā)往CAN總線,再經(jīng)過收發(fā)器反饋總線信號。而CAN協(xié)議規(guī)定,發(fā)送方發(fā)送位時,需要檢測接收到的位與發(fā)送的位是否一致,否則會產(chǎn)生位錯誤幀。對于傳統(tǒng)CAN來說,因?yàn)槠渥罡卟ㄌ芈饰?Mbps,位寬只有1us,所以大部分情況下傳輸?shù)难舆t不會超過位寬的一次采樣點(diǎn)Sample Point SP (通過TSEG1設(shè)置),見圖1。

圖1 發(fā)送延時對傳統(tǒng)CAN 位校驗(yàn)的影響
傳輸延遲受收發(fā)器環(huán)路延遲、傳輸距離和傳輸線纜帶來的硬件延時影響。CAN FD的數(shù)據(jù)段具有比傳統(tǒng)CAN更高的波特率,位寬也更小。因此傳輸延時對CAN
FD的采樣準(zhǔn)確性的影響就比較大了,在一次采樣點(diǎn)采樣容易產(chǎn)生位錯誤,如圖2所示。

圖2 發(fā)送延時對CAN FD 位校驗(yàn)的影響
在汽車應(yīng)用中,受限于車輛線纜布局的限制,難免會有長距離布線的要求。而因?yàn)閭鬏斞舆t無法避免,所以在CANFD通訊中引入了發(fā)送延時補(bǔ)償Transmitter Delay Compensation (TDC)和二次采樣點(diǎn) Secondary Sample Point(SSP)的機(jī)制,將發(fā)送的數(shù)據(jù)與二次采樣點(diǎn)時刻接收到的數(shù)據(jù)進(jìn)行比較,從而保證發(fā)送與接受的位可以更好地匹配。在采用CAN FD時,建議啟動此功能。
如何在TCAN4550 配置TDC 和SSP
1. 首先,需要配置CC Control 寄存器的configuration change enable (CCE) 位,才能寫保護(hù)寄存器,并將TCAN4550的Date Bit Timing and Prescaler (DBTP)寄存器中配置使能TDC功能。
2. 使能了TDC之后,芯片會在CAN FD幀發(fā)送FD Format (FDF) 位的下降沿開始計(jì)算傳輸延時,直到RX收到這一位。

圖3 延時補(bǔ)償和二次采樣點(diǎn)圖示
3. 二次采樣點(diǎn)的偏置位置稱為Transmitter Delay Compensation SSP Offset
(TDCO),建議配置成與DBTP寄存器DTSEG1相同的值,通常建議采樣點(diǎn)在80%的位置。確定采樣點(diǎn)是否需要調(diào)整的方法如下:
通過監(jiān)控發(fā)送和接受的錯誤計(jì)數(shù)( TEC Transmitter Error Counter和REC Receiver ErrorCounter)來判斷采樣位置是否合適;
通過示波器來監(jiān)控CANH 和CANL的信號,判斷是否有較久的振鈴時間(通常出現(xiàn)于長的線纜)需要通過更晚的采樣點(diǎn)來規(guī)避;
對一次采樣點(diǎn)SP來說,可以通過增加DTSEG1/DTSEG2推遲采樣點(diǎn),對二次采樣點(diǎn)SSP來說,可以通過增加偏置位置TDCO推遲二次采樣點(diǎn)。
4. 芯片會自動根據(jù)測量到的延時時間和配置的TDCO偏置值,計(jì)算發(fā)送延時補(bǔ)償后的二次測量點(diǎn)位置Transmitter DelayCompensation Value (TDCV)。TDCV= delay+ TDCO。
5.為了避免在收到的FDF位中出現(xiàn)干擾,導(dǎo)致延時計(jì)算被顯性邊緣誤觸發(fā)提前結(jié)束,從而出現(xiàn)二次采樣點(diǎn)的位置非預(yù)期的提前,用戶可以通過TDCF(Transmitter
delay compensation filter windowlength)配置一個最短的濾波窗口時間為最小的SSP位置。通常,對于delay時間范圍未知的系統(tǒng),建議設(shè)定TDCF=TDCO,以使得二次采樣點(diǎn)的位置通過TDCV設(shè)定。對于delay已知的系統(tǒng),建議將TDCF設(shè)置為小于并接近TDCV的值。
6. 當(dāng)計(jì)算的TDCV《TDCF時,二次采樣點(diǎn)SSP為TDCF設(shè)定值。當(dāng)TDCV》TDCF時,二次采樣點(diǎn)為TDCV計(jì)算結(jié)果。

圖4 延時補(bǔ)償和二次采樣點(diǎn)對CAN FD 位校驗(yàn)的影響
需要特別注意的是上述計(jì)算的單位,傳輸延時補(bǔ)償寄存器都是基于minimum time quantum (mtq)即最小時間量做計(jì)算的,一般為CAN時鐘的一個時鐘周期。TDCO和TDCF的單位為mtq,自動測量的延時時間的分辨率也為一個mtq。
tq為mtq的整數(shù)倍,Nominal Bit Timing and Prescaler (NBTP) 和Data Bit Timing andPrescaler (DBTP)寄存器是以tq為單位,相應(yīng)的Prescaler系數(shù)決定了一個tq為多少倍的mtq。所以在配置TDCO與DTSEG1相同時,需要注意這個單位的轉(zhuǎn)換。如果DBRP=1,1tq=1mtq。如果DBRP=2, 1tq= 2mtq。DTSEG1的單位為tq,且由于它的值是從1開始的,所以其配置值比實(shí)際值大1。
-
CAN
+關(guān)注
關(guān)注
59文章
3097瀏覽量
473507 -
TDC
+關(guān)注
關(guān)注
0文章
42瀏覽量
15009 -
SSP
+關(guān)注
關(guān)注
0文章
16瀏覽量
11834 -
CANFD
+關(guān)注
關(guān)注
0文章
106瀏覽量
5947
發(fā)布評論請先 登錄
貿(mào)澤推出集成CAN FD 控制器和收發(fā)器的TI TCAN4550系統(tǒng)基礎(chǔ)芯片
MCU如何配置固定TDC?
TCAN4550 TCAN4550
EV/HEV功能安全系統(tǒng)中的TCAN4550以及TPS3702的應(yīng)用
EV/HEV功能安全系統(tǒng)中的TCAN4550以及TPS3702的應(yīng)用
為什么發(fā)送CANFD加速報文要開啟發(fā)送延遲補(bǔ)償(TDC)?
【Z站推薦】為什么發(fā)送CANFD加速報文要開啟發(fā)送延遲補(bǔ)償(TDC)?
TCAN4550汽車控制區(qū)域網(wǎng)靈活數(shù)據(jù)速率(CAN FD)控制器數(shù)據(jù)表
TCAN341x系列3.3V CAN FD收發(fā)器技術(shù)解析與應(yīng)用指南
?TCAN1162-Q1汽車級CAN FD收發(fā)器技術(shù)解析
為什么CAN FD通訊要開啟收發(fā)送延時補(bǔ)償TDC?如何在TCAN4550配置TDC和SSP?
評論