CAN總線網(wǎng)絡(luò)的實(shí)時性研究和改進(jìn)
可見,在競爭失敗提升優(yōu)先級的情況下,不會出現(xiàn)優(yōu)先級相同的情況,因此不會產(chǎn)生相應(yīng)的錯誤。該算法的實(shí)現(xiàn)流程圖如圖4所示。本文引用地址:http://www.ex-cimer.com/article/155170.htm
CAN網(wǎng)絡(luò)已經(jīng)有很多控制芯片??刂菩酒梢酝瓿?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/CAN">CAN協(xié)議轉(zhuǎn)換。要想通過動態(tài)優(yōu)先級來改進(jìn)CAN實(shí)時性,就要針對不同芯片的應(yīng)用特性來實(shí)現(xiàn)。本文的仿真是利用Philips公司的SJA1000來實(shí)現(xiàn)的。
3 TTCAN協(xié)議
TTCAN(時間觸發(fā)CAN)是CAN協(xié)議的另外一種擴(kuò)展,它依賴一個靜態(tài)的TDMA時間表來保證確定的響應(yīng)時間。將系統(tǒng)中所有發(fā)送周期型數(shù)據(jù)的節(jié)點(diǎn)至少發(fā)送1次的時間稱為系統(tǒng)周期,系統(tǒng)周期又由n個基本周期組成。TTCAN中一個特殊的節(jié)點(diǎn)即時間主控節(jié)點(diǎn)周期性地發(fā)送使各個節(jié)點(diǎn)同步的消息,并且將CAN的通信分割在基本周期內(nèi)。每個基本周期開始于一個參考消息,并且由下一個參考消息的開始作為結(jié)束。在每個基本周期內(nèi),主定時器又將每個基本周期的信道使用時間分為一個個的時間窗口,分給不同的信號,特定的信號只能在特定的時間窗口內(nèi)進(jìn)行傳輸,避免了信號之間的干擾,其結(jié)構(gòu)如圖5所示。參考信息是由主定時器發(fā)送的,控制基本周期的時態(tài),它的發(fā)送表明一個基本周期的開始;獨(dú)占窗口是為特定信號預(yù)留的特定時問窗口,只有特定的信號才能在該時間窗口內(nèi)傳輸,為了使系統(tǒng)具有一定的靈活性,獨(dú)占窗口在一個基本周期內(nèi)可以重復(fù)出現(xiàn),但是為了保證數(shù)據(jù)傳輸?shù)拇_定性,CAN幀的自動重發(fā)功能在獨(dú)占窗口內(nèi)被禁止。分配給隨機(jī)發(fā)送信息的時間窗口叫競爭窗口,一個競爭時窗可以分配給多個信息幀,競爭時窗的數(shù)據(jù)碰撞采用CAN的位仲裁機(jī)制,在這里發(fā)送的每個信息幀都具有固定的優(yōu)先級,位仲裁機(jī)制決定網(wǎng)絡(luò)中哪個信息幀取得總線的訪問權(quán)?;诤酮?dú)占窗口相同的原因,CAN的自動重發(fā)機(jī)制也被禁止。自由窗口是為網(wǎng)絡(luò)的進(jìn)一步擴(kuò)展預(yù)留的窗口。
評論