色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > CAN總線網(wǎng)絡(luò)的實(shí)時(shí)性研究和改進(jìn)

          CAN總線網(wǎng)絡(luò)的實(shí)時(shí)性研究和改進(jìn)

          作者: 時(shí)間:2012-03-16 來源:網(wǎng)絡(luò) 收藏

          目前有很多文獻(xiàn)關(guān)于協(xié)議的,基本都是局限于周期型消息的處理,但是在實(shí)際工業(yè)現(xiàn)場有很多諸如報(bào)警、故障等突發(fā)型消息,這些都是事件型消息,都未能有效處理?;诖?,本文兼顧周期型和事件型消息,以 2.0B擴(kuò)展幀格式為例,通過重新定義ID字段的含義來解決帶寬分配不均的問題。這種重新定義的幀并未改變擴(kuò)展幀的格式,所以能與其他系統(tǒng)兼容,如圖3所示。擴(kuò)展格式幀的ID字段被重新定義為3個(gè)部分:類間優(yōu)先級域(1b)、類內(nèi)優(yōu)先級域(8b)、內(nèi)容標(biāo)示域(20b)。

          本文引用地址:http://cafeforensic.com/article/155170.htm

          c.JPG


          圖3中,類間優(yōu)先級域?yàn)? b,在實(shí)際應(yīng)用中將0分給事件型消息,使其具有最高優(yōu)先級,將1分給周期型消息;類內(nèi)優(yōu)先級域?yàn)? b,用于標(biāo)示同種類型消息的優(yōu)先級大小,數(shù)值越小,優(yōu)先級越高;內(nèi)容標(biāo)識(shí)符域?yàn)?0 b,可以根據(jù)實(shí)際的需要對其進(jìn)行定義,在類間優(yōu)先級和類內(nèi)優(yōu)先級大小都一樣的情況少,也可進(jìn)一步起到輔助仲裁的作用。

          2 動(dòng)態(tài)優(yōu)先級調(diào)度算法
          CAN的特點(diǎn)之一就是多主發(fā)送,各個(gè)站點(diǎn)在任何時(shí)候都可以隨機(jī)發(fā)送數(shù)據(jù),如果在某一個(gè)時(shí)刻有2個(gè)或都2個(gè)以上的站點(diǎn)要發(fā)送數(shù)據(jù),就要通過非破壞性仲裁機(jī)制進(jìn)行仲裁來競爭的使用權(quán),標(biāo)識(shí)符數(shù)值小的站點(diǎn)即優(yōu)先級較高的站點(diǎn)可以獲得使用權(quán),競爭失敗的站點(diǎn)則需等待下次重新競爭,當(dāng)負(fù)載較大時(shí),優(yōu)先級較低的站點(diǎn)很可能在多次競爭中失敗,從而數(shù)據(jù)不能及時(shí)發(fā)送,或有時(shí)發(fā)送產(chǎn)生沖突有時(shí)順利發(fā)送,造成發(fā)送延時(shí)的不確定性,這就是帶寬分配不均所造成的。為了解決隨著負(fù)載增加所造成的帶寬分配不均,本文提出了動(dòng)態(tài)優(yōu)先級算法。動(dòng)態(tài)優(yōu)先級算法是一種隨著時(shí)間推移動(dòng)態(tài)改變各個(gè)站點(diǎn)優(yōu)先級的算法,與原有的靜態(tài)分配優(yōu)先級算法相比,該算法可使每個(gè)站點(diǎn)均等地競爭總線的使用權(quán),即能夠均等地分配帶寬,從而保證消息的實(shí)時(shí)傳輸。方法如下:初始情況下各個(gè)站點(diǎn)均有事先分配好的優(yōu)先級,在不發(fā)生沖突的情況下,按原有優(yōu)先級來完成數(shù)據(jù)的傳送。當(dāng)發(fā)生沖突之后,高優(yōu)先級站點(diǎn)可以順利完成數(shù)據(jù)發(fā)送,為了能讓競爭失敗的站點(diǎn)在下次競爭中成功的概率變大,可以將競爭失敗的站點(diǎn)提高一個(gè)優(yōu)先等級參加下次競爭,即使失敗了若干次,這時(shí)該站點(diǎn)的優(yōu)先級也很高了,競爭勝出的概率會(huì)很大。但是需要注意的是優(yōu)先級較低的站點(diǎn)在提高優(yōu)先級的情況下獲得總線使用權(quán)并順利完成數(shù)據(jù)發(fā)送之后,需要將優(yōu)先級降低為初始優(yōu)先級,以保證的正常運(yùn)行。
          如果把CAN總線上要發(fā)送數(shù)據(jù)的站點(diǎn)看成一個(gè)隊(duì)列,某個(gè)節(jié)點(diǎn)j在隊(duì)列的位置可表示為:
          Pj=P0-f(n)
          式中:Pj為節(jié)點(diǎn)j某時(shí)刻在隊(duì)列中的位置,即節(jié)點(diǎn)在此時(shí)刻的優(yōu)先級;P0為節(jié)點(diǎn)j在隊(duì)列中的初始位置,即初始優(yōu)先級。圖3中類內(nèi)優(yōu)先級分配了8位,當(dāng)優(yōu)先級最低時(shí),P0=28-1=255;f(n)為優(yōu)先級晉升項(xiàng),為關(guān)于競爭失敗次數(shù)n的函數(shù),可取正比例函數(shù)、指數(shù)函數(shù)等。在本文中取的為正比例函數(shù),即f(n)=kn,k為系數(shù)項(xiàng),決定著晉升優(yōu)先級的快慢程度,一般取為CAN系統(tǒng)中節(jié)點(diǎn)的個(gè)數(shù)。由此可得:
          Pj=28-1-kn=255-kn
          采用該算法還可以避免當(dāng)節(jié)點(diǎn)優(yōu)先級提高之后出現(xiàn)2個(gè)或2個(gè)以上優(yōu)先級相同的情況,例如,在某個(gè)網(wǎng)絡(luò)中節(jié)點(diǎn)個(gè)數(shù)為5,即k=5,所以Pj=255-5n,則各站點(diǎn)初始及晉升之后優(yōu)先級如表1所示。

          f.JPG



          評論


          技術(shù)專區(qū)

          關(guān)閉