CAN總線位定時參數(shù)的確定_第1頁
CAN總線位定時參數(shù)的確定_第2頁
CAN總線位定時參數(shù)的確定_第3頁
CAN總線位定時參數(shù)的確定_第4頁
CAN總線位定時參數(shù)的確定_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

CAN總線位定時參數(shù)的確定

摘要:CAN通信中,波特率、位周期內(nèi)取樣點數(shù)和位置可以編程設(shè)置,這些設(shè)置為用戶根據(jù)其應(yīng)用優(yōu)化網(wǎng)絡(luò)通信性能提供了方便。優(yōu)化位定時參數(shù),能夠保證信息同步,保證傳輸延遲和時鐘誤差在極端條件下進行恰當(dāng)?shù)腻e誤檢測。本文說明位定時參數(shù)的確定方法。

關(guān)鍵詞:CAN總線位定時同步延遲

引言

CAN總線是一種有效支持分布式控制和實時控制的、多主的異步串行通信網(wǎng)絡(luò)。由于CAN總線具有較強的能力,支持差分收發(fā),適合高噪聲環(huán)境,具有較遠(yuǎn)的傳輸距離,并且Philips和Intel等半導(dǎo)體公司都有支持CAN通信協(xié)議的集成器件。CAN總線已經(jīng)在各個領(lǐng)域中得到了廣泛應(yīng)用。

在CAN通信協(xié)議中規(guī)定,通信波特率、每個位周期的取樣位置和個數(shù),都可以自行設(shè)定。這樣的設(shè)計理念,為用戶在自己的應(yīng)用中,優(yōu)化網(wǎng)絡(luò)通訊性能提供了空間。為了通過設(shè)定位定時參數(shù)來優(yōu)化網(wǎng)絡(luò)通信性能,必須清楚位定時參數(shù)與參考時鐘誤差和系統(tǒng)內(nèi)信號延遲的關(guān)系。如果位周期內(nèi)的取樣位置偏后,將能夠容忍較大的信號傳輸延遲,相應(yīng)的,總線傳輸距離可以延長;而如果周期內(nèi)的取樣位置接近中間,則可以容忍系統(tǒng)的節(jié)點間的參考時鐘誤差。但這顯然是矛盾的,為了協(xié)調(diào)這種矛盾,必須對位定時參數(shù)進行優(yōu)化位置。

通過對CAN總線位定時參數(shù)進行研究,找到矛盾的關(guān)鍵所在,就能夠?qū)ζ溥M行優(yōu)化,從而提高通信系統(tǒng)的整體性能。下面以Philips公司的獨立通信控制器SJA1000為例,進行研究。

1相關(guān)定義

位周期的組成

波特率是指單位時間內(nèi)所傳輸?shù)臄?shù)據(jù)位的數(shù)量,一般取單位時間為1s。波特率由通信線上傳輸?shù)囊粋€數(shù)據(jù)位周期的長度決定,如下式所示。

Fbit=1/Tbit

根據(jù)Philips公司的獨立通信控制器,一個位周期由3個部分組成:同步段、相位緩沖段1和相位緩沖段2。

Tbit=tSYNC_SEG+tTSEG1+tTSEG2(2)

所有這些時間段,都有一個共同的時間單元——系統(tǒng)時鐘周期。具體到SJA1000,TSCL由總線時序寄存器的值來確定。SJA1000有2個總線時序寄存器,即總線時序寄存器0和總線時序寄存器1。這2個寄存器有自己不同的功能定義,共同作用決定總線的通信波特率。

總線時序寄存器0定義波特率預(yù)設(shè)值BRP的值。位功能說明如表1所列。

表1

CAN的系統(tǒng)時鐘周期TSCL,可以由BRP的數(shù)值為決定,計算公式

TSCL=2TCLK×BRP=2TCLK×(++

++++1)

其中TCLK為參考時間的周期。

TCLK=1/fCLK

為了補償不同總線控制器的時鐘振蕩器之間的相位偏移,任何總線控制器必須在當(dāng)前傳送的相關(guān)信號邊沿重新同步。同步跳轉(zhuǎn)寬度定義了每一位周期可以被重新同步縮短或延長的時鐘周期的最大數(shù)目。

tSJW=TSCL×

總線時序寄存器1定義每個位周期長度采樣點的位置和在每個采樣點的采樣數(shù)目。位功能說明如表2所列,其中SAM意義見表3。

表2

表3位值功能SAM0三倍:總線采樣三次:建議在中/低速總線使用,有處于過濾總線上毛刺1單倍:總線采樣一次;建議使用在高速總線上

TSEG1和TSEG2決定了每一位時鐘數(shù)目和采樣點的位置。這里

tSYNC_SEG=1×TSCL

tTSEG1=TSCL×(8×+4×+2×+1×+1)(7)

tTSEG2=TSCL×(4×+2×+1×+1)(8)

位周期的標(biāo)量值定義為,SYNC_SEG、TSEG1、TSEG2之和。這決定了它的取值區(qū)間為[3,25],在1個取樣點時,最小值一般取4;在3個取樣點時,最小值一般取5。

NBT=Tbit/TSCL=SYNC_SEG+TSEG1+TSEG2(9)

位周期的一般結(jié)構(gòu)如圖1所示。

參考時鐘誤差

在系統(tǒng)中,每一個節(jié)點都有自己獨立的參考時鐘。由于制造工藝、運行時間及環(huán)境溫度的變化,這些時鐘的實際頻率往往偏離預(yù)期的頻率值。我們稱這種偏差為參考時鐘誤差。FCLK,max/min表示參考時鐘頻率的最大值或最小值,fCLK,rat表示參考時鐘頻率的額定值。

相應(yīng)的系統(tǒng)時鐘周期也會有誤差。TSCL,min表示系統(tǒng)時鐘周期最小值,TSCL,max表示系統(tǒng)時鐘周期最大值,TSCL,rat表示系統(tǒng)時鐘周期額定值。由于Δf1,可以進行近似。

TSCL,min=(TSCL,rat)/(1+Δf)

≈TSCL,rat×(1-Δf)

TSCL,max=(TSCL,rat)/(1-Δf)≈TSCL,rat×(1+Δf)(12)

傳輸延遲

CAN總線采用無破壞性的基于優(yōu)先權(quán)的仲裁機制。在這種機制下,傳輸延遲至關(guān)重要。如果傳輸延遲時間過長,將導(dǎo)致無效的訪問仲裁。傳輸延遲時間由物理總線延時、總線驅(qū)動器延時和其它設(shè)備傳輸延遲共同決定。其它設(shè)備包括通信控制器、隔離光耦等。

tprop=2×(tBUS+ttran+toth)

傳輸延遲的標(biāo)量值可以由公式得到。

PROP=tprop/TSCL(14)

同步

通過同步機制,可以消除由于相位誤差帶來的影響,保證信息正確解碼。有兩種同步方式:硬同步和重同步。

硬同步僅發(fā)生在報文開始時,在一個空閑期間,總線上的所有控制器在一個SYNC_SEG段從隱性位到顯性位的跳變沿上,初始化自己的位周期定時,執(zhí)行一次硬同步。

重同步發(fā)生在報文位流發(fā)送期間,每一個隱性位到顯性位跳變沿后。重同步根據(jù)引起同步邊沿的相位誤差,要么增加tTSEG1,要么減少tTSEG2,使采樣點處于恰當(dāng)?shù)奈恢?。同步邊沿的相位誤e,由相對于同步邊沿的位置而定,以系統(tǒng)時鐘周期。其它定及重同步處理方式

e=0,同步邊沿發(fā)生在SYNC_SEG內(nèi);

e0,同步邊沿發(fā)生在TSEG1內(nèi);

e0,同步邊沿發(fā)生在TSEG2內(nèi)。

如果引起重同步的邊沿相位誤差e的幅值小于或等于tSJW編程數(shù)值,則得同步導(dǎo)致位時間縮短或延長,與硬同步的作用一樣;如果e為正值,且幅值大于tSJW,則增加tTSEG1值為tSJW;如果e為負(fù)值,且幅值大于tSJW,則減少值為tSJW。

2參數(shù)計算規(guī)則

參數(shù)確定原則為:保證系統(tǒng)在極端惡劣條件的兩節(jié)點間,能夠正確接收并解碼網(wǎng)絡(luò)上的信息幀。極端惡劣條件是指這兩個節(jié)點的鐘振偏差在系統(tǒng)容忍偏差極限的兩端,并且兩節(jié)點間具有最大的傳輸延遲。在沒有噪音干擾的正常通信情況下,相位誤差累計的最壞情況是,重同步邊沿之間間隔有10個位周期。這是定義SJW最小值的條件。

在實際的通信系統(tǒng)中,噪音干擾是不可避免的。由于噪音干擾,可能會導(dǎo)致重同步邊沿之間的間隔超過10個位周期,可能進入錯誤處理模式。在這種情況下,由于同步邊沿之間的時間比較長,所以保證每一位都能夠確切地取樣就更加重要。如果不能夠確切地取樣,將會導(dǎo)致檢測到錯誤并進行錯誤處理。

考慮各方面的影響,位定時參數(shù)的設(shè)置公式

①1取樣點模式

②3取樣點模式

在計算SJWmin時,取大于計算數(shù)值的最小整數(shù);在計算TSEG2max時,取小于計算數(shù)值的最大整數(shù)。由公式~可見,SJW和TSEG2由NBF、Δf、PROP分別決定。計算得到SJW和TSEG2后,由公式可以得到TSEG1。根據(jù)SJA1000的寄存器說明,可以得到具體寄存器的設(shè)置數(shù)值。

3參數(shù)計算步驟及舉例

某CAN通信系統(tǒng),采用1個取樣點模式,其它參數(shù)指標(biāo)如表4所列。

表4參數(shù)說明最小值典型值最大值fBit/(kb·s-1)通信波特率250tbit/μs位周期時間4fCLK/MHzCAN控制器的時鐘頻率24Δf/%時鐘頻率偏差/ns總線驅(qū)動器延時3075157toth/ns其它設(shè)備延時1540δ/(ns·m-1)線路延時5/m節(jié)點間總線長度395tBUS/ns計算得到線路延時tBUS=L·δ15618fprop/ns計算得到傳輸延時,公式1201630

①確定可能的BRP、NBT和PROP。

由公式、、及得到

NBT=1/(fbit·TSCL)=fCLK/(2fbit·BRP)

所以有NBT·BRP=fCLK/2fbit

將參數(shù)代入公式得到NBT·BRP的值為48,而NBT取值為3~25,所以NBT和BRP所有可能的組合如表5所列。

表5fCLKNBTBRPTSCL/nsPROP

maxPROPmin有效性無無無有有無

②計算NBTmin和NBTmax。由公式、、、及推出

NBT≥

代入數(shù)據(jù),計算得到≤NBT≤。原則上選12和16都可以,為了方便取得樣點,我們?nèi)≥^大的值16。

③根據(jù)公式計算SJWmin,如表6所列。

④根據(jù)公式計算TSEG2min,如表6所列。

⑤根據(jù)公式計算TSEG2max,如表6所列。

⑥確定寄存器設(shè)置數(shù)值,如表7所列。

表6最小值最大值確定值SJW{,}max44TSEG2{2,SJW}max{8,,}min4TSEG1TSEG1=NBT-TS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論