位定時規(guī)格的確定需要考慮總線的物理特性和網(wǎng)絡(luò)的通信要求,包括晶振頻率總線長度、傳輸延遲等。通過合理的配置這些參數(shù),可以保證網(wǎng)絡(luò)上不同節(jié)點之間的數(shù)據(jù)傳輸同步,從而確保通信的可靠性。
位定時段的規(guī)格是根據(jù)數(shù)據(jù)通信系統(tǒng)的需求而確定的。如果要在特定位速率下實現(xiàn)最大的總線長度或者在給定總線長度的情況下實現(xiàn)最短的等待時間(最大位速率),那么用于重新同步的保留時間(相位緩沖段)必須保持最小。當時間緩沖段設(shè)定為最小值時,表示在一次重新同步當中只能校正|e|=1的相位誤差。因此對位同步的要求非常高,要滿足這樣的要求只能使用精確的石英晶振(石英晶振的誤差通常小于0.1%)。
圖1 位定時段(位速率和總線長度乘積為最大值)的規(guī)格
圖1所示為位定時段(位速率和總線長度乘積為最大值)的規(guī)格。這樣的要求主要應(yīng)用于工業(yè)自動化系統(tǒng)。
如果對位速率和總線長度的要求不高,那么位速率和總線長度的乘積也因此降低,而用于重新同步的時間緩沖段則可延長。這樣根據(jù)最大可能的同步跳轉(zhuǎn)寬度,在一次重新同步中可校正|e|=4的相位誤差。因此可以使用較為經(jīng)濟的陶瓷振蕩器。圖 2所示為適用于汽車電子中最大振蕩器誤差的位定時規(guī)格。
圖2 位定時段的規(guī)格(適用于最大振蕩器誤差)通常位定時的規(guī)格首先通過所需要的位速率來確定。位時間必須為系統(tǒng)時鐘周期的整數(shù)倍。位時間tBit=n×tq(n=4.25,tq為時間量)。確定位定時參數(shù)的一種方法是首先確定傳輸段的長度,因此必須考慮到最大的總線長度和最大內(nèi)部延遲時間。
將往返的延遲時間轉(zhuǎn)換成對應(yīng)時間量的數(shù)目并取四舍五入為tq的整數(shù)倍。由于同步段的長度為1個tq。那么剩下兩個相位緩沖段的長度為(tBit-tprog_seg-tq)。如果剩余時間單位的個數(shù)m=(tBit-tprog_seg-tq)/tq為偶數(shù),則兩個緩沖段的長度相同,如果是奇數(shù),tphase_seq2=tphase_seq1+tq。
還必須注意Phase_Seg2的最小標稱長度。由于該段不能短于CAN控制器的數(shù)據(jù)處理時間(該時間取決于實現(xiàn)方式的不同,介于0到2tq之間)。同步跳轉(zhuǎn)寬度(SJW)設(shè)置為它的最大值Min{4, tphase_seq1/tq}。振蕩器的允許誤差根據(jù)下方兩條公式進行確定。
公式一:
tBit:標稱位時間
tSJW:重新同步跳轉(zhuǎn)寬度
公式二:
tphase_seq1:相位緩沖段1的時間
tphase_seq2:相位緩沖段1的時間tBit:標稱位時間