(精品論文)基于pci總線can卡的設(shè)計(jì)_畢業(yè)論文_第1頁(yè)
(精品論文)基于pci總線can卡的設(shè)計(jì)_畢業(yè)論文_第2頁(yè)
(精品論文)基于pci總線can卡的設(shè)計(jì)_畢業(yè)論文_第3頁(yè)
(精品論文)基于pci總線can卡的設(shè)計(jì)_畢業(yè)論文_第4頁(yè)
(精品論文)基于pci總線can卡的設(shè)計(jì)_畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩64頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

基于PCI總線CAN卡的設(shè)計(jì)【摘要】本文介紹了CAN總線發(fā)展的基本情況,通信方式的特點(diǎn)和優(yōu)越性。在深入了解PCI總線的相關(guān)特性及功能的基礎(chǔ)上,結(jié)合考慮了硬件的價(jià)格和實(shí)現(xiàn)的難易程度,對(duì)本硬件設(shè)計(jì)做出了合理的選擇。介紹了CAN 總線通信控制器芯片SJAl000 和PCI 總線控制器PCI9052,并在此基礎(chǔ)上給出了基于PCI 接口的CAN 總線控制系統(tǒng)通信卡硬、軟件的設(shè)計(jì)思路和實(shí)現(xiàn)方法??刂破骶钟蚓W(wǎng)(CAN)為串行通訊協(xié)議,能有效地支持具有很高安全等級(jí)的分布實(shí)時(shí)控制。CAN的應(yīng)用范圍很廣,從高速的網(wǎng)絡(luò)到低價(jià)位的多路接線都可以使用CAN?!娟P(guān)鍵詞】控制器局域網(wǎng)、通信卡、PCI總線【Abstract】This paper describes the development of the CAN basic situation means of communication features and advantages. and in-depth understanding of the total county PCI related to the features and functions on the basis of The hardware design of chip design for a reasonable choice,and considering the hardware price and degree of difficulty. given design. This paper also introduces the CAN bus communication controller SJA1000 and the PCI buscontroller PCI9052. Then it gives the method to design and implement the hardware and software of CAN communication card based on PCI bus. The Controller Area Network (CAN) is a serial communications protocol whichefficiently supports distributed realtime control with a very high level of security. Its domainof application ranges from high speed networks to low cost multiplex wiring.【Keyword】Controller Area Network、Communication card、PCI bus.II目 錄【摘要】I【Abstract】II第1章 CAN總線11.1 CAN總線的發(fā)展過(guò)程11.1.1 CAN總線發(fā)展史11.1.2 CAN 先行者的發(fā)展21.1.3 CAN 前景展望21.2 CAN總線的基本特點(diǎn)31.3 CAN通信協(xié)議41.3.2 物理媒體連接子層(PMA)71.3.3 媒體訪問(wèn)控制子層71.3.4 邏輯鏈路控制(LLC)子層111.4 CAN數(shù)據(jù)交換原理111.5 CAN總線網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)12第2章 PCI總線142.1 PCI總線概述142.2 PCI總線的發(fā)展142.2信號(hào)的類(lèi)型和信號(hào)線的定義162.2.1信號(hào)類(lèi)型162.2.2 PCI信號(hào)線定義162.3 PCI總線的系統(tǒng)結(jié)構(gòu)及特點(diǎn)182.4 PCI總線的主要優(yōu)點(diǎn)192.5 PCI總線體系結(jié)構(gòu)202.5 PCI總線的操作202.5.1 總線命令202.5.2 命令使用規(guī)則222.5.3 PCI總線協(xié)議222.5.4 PCI總線的開(kāi)發(fā)技術(shù)242.6 PCI總線的應(yīng)用25第3章 基于PCI總線CAN卡的硬件芯片介紹263.1 CAN器件介紹263.1.1 CAN協(xié)議通信格式263.1.1 SJA1000 CAN控制器273.1.2 CAN控制器SJA1000及其應(yīng)用283.2 PCI總線接口芯片PCI9052及其應(yīng)用303.2.3引腳介紹323.2.3 PCA82C250CAN總線收發(fā)器34第4章 基于PCI總線CAN卡的設(shè)計(jì)374.1CAN卡的硬件設(shè)計(jì)374.1.1 PCI接口硬件設(shè)計(jì)374.2. CAN卡的設(shè)計(jì)說(shuō)明384.2.1串行EEPROM的配置394.2.2電路原理圖404.3 軟件設(shè)計(jì)414.3.1 SJA1000初始化414.3.2驅(qū)動(dòng)程序設(shè)計(jì)434.4總結(jié)43【致謝】44【參考文獻(xiàn)】45附錄1:執(zhí)行程序46附錄2:電路原理圖47附錄3:英文原文:48中文翻譯:56第1章 CAN總線1.1 CAN總線的發(fā)展過(guò)程CAN全稱(chēng)為“Controller Area Network”,即控制器局域網(wǎng),是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一。最初,CAN被設(shè)計(jì)作為汽車(chē)環(huán)境中的微控制器通訊,在車(chē)載各電子控制裝置ECU之間交換信息,形成汽車(chē)電子控制網(wǎng)絡(luò)。比如:發(fā)動(dòng)機(jī)管理系統(tǒng)、變速箱控制器、儀表裝備、電子主干系統(tǒng)中均嵌入CAN控制裝置。1.1.1 CAN總線發(fā)展史 1986 年2 月,Robert Bosch公司在SAE 汽車(chē)工程協(xié)會(huì)大會(huì)上介紹了一種新型的串行總線CAN??刂破骶钟蚓W(wǎng),那是CAN 誕生的時(shí)刻。今天在歐洲幾乎每一輛新客車(chē)均裝配有CAN 局域網(wǎng),同樣CAN也用于其他類(lèi)型的交通工具,從火車(chē)到輪船或者用于工業(yè)控制CAN ,已經(jīng)成為全球范圍內(nèi)最重要的總線之一,甚至領(lǐng)導(dǎo)著串行總線。在1999年接近6 千萬(wàn)個(gè)CAN 控制器投入應(yīng)用,2000 年市場(chǎng)銷(xiāo)售超過(guò)1 億個(gè)CAN器件。在1980 年的早些時(shí)候,Bosch公司的工程師就開(kāi)始論證當(dāng)時(shí)的串行總線用于客車(chē)系統(tǒng)的可行性。因?yàn)闆](méi)有一種現(xiàn)成的網(wǎng)絡(luò)方案能夠完全滿足汽車(chē)工程師們的要求,于是在1983 年初Uwe Kiencke開(kāi)始研究一種新的串行總線。新總線的主要方向是增加新功能,減少電氣連接線,使其能夠用于產(chǎn)品而非用于驅(qū)動(dòng)技術(shù)。來(lái)自Mercedes-Benz的工程師較早制定了總線的狀態(tài)說(shuō)明,而Intel 也準(zhǔn)備作為半導(dǎo)體生產(chǎn)的主要廠商。當(dāng)時(shí)聘請(qǐng)的顧問(wèn)之一是來(lái)自于德國(guó)的Applied Science大學(xué)教授Wolfhard Lawrenz博士,給出了新網(wǎng)絡(luò)方案的名字Controller Area Network,簡(jiǎn)稱(chēng)CAN 。1986 年2 月CAN 誕生了在底特律的汽車(chē)工程協(xié)會(huì)大會(huì)上,由 Bosch 公司研究的新總線系統(tǒng)被稱(chēng)為汽車(chē)串行控制器局域網(wǎng)。此方案基于非破壞性的仲裁機(jī)制,能夠確保高優(yōu)先級(jí)報(bào)文的無(wú)延遲傳輸,并且不需要在總線上設(shè)置主控制器。當(dāng)關(guān)于這種革新的通訊方案的大部分文字內(nèi)容制定之后,于1987 年中期,Intel 提前計(jì)劃2個(gè)月交付了首枚CAN控制器82526,這是CAN方案首次通過(guò)硬件實(shí)現(xiàn)。僅僅用了四年的時(shí)間設(shè)想就變成了現(xiàn)實(shí)。不久之后Philips 半導(dǎo)體推出了82C200,這兩枚最先的CAN 控制器在驗(yàn)收濾波報(bào)文控制方面有許多不同,一方面由Intel 主推的FullCAN比由Philips主推的BasicCAN占用較少的CPU載荷,另一方面 FullCAN器件所能接收的報(bào)文數(shù)目相對(duì)受到限制,BasicCAN 控制器僅需較少的硅晶體。今天的CAN 控制器中在同一模塊中的驗(yàn)收濾波和報(bào)文控制方面仍有相當(dāng)?shù)牟煌?。制造出BasicCAN 和FullCAN 兩大陣營(yíng)。標(biāo)準(zhǔn)化與一致性:在1990 年早些時(shí)候Bosch CAN 規(guī)范CAN 2.0 版被提交給國(guó)際標(biāo)準(zhǔn)化組織,在數(shù)次行政討論之后,應(yīng)一些主要的法國(guó)汽車(chē)廠商要求增加了Vehicle Area Network(VAN)內(nèi)容,并于1993 年11 月出版了CAN的國(guó)際標(biāo)準(zhǔn)ISO11898。除了CAN 協(xié)議外它也規(guī)定了最高至1Mbps波特率時(shí)的物理層同時(shí)在國(guó)際標(biāo)準(zhǔn)ISO11519-2 中也規(guī)定CAN數(shù)據(jù)傳輸中的容錯(cuò)方法。1995年國(guó)際標(biāo)準(zhǔn)ISO11898進(jìn)行了擴(kuò)展以附錄的形式說(shuō)明了29位CAN標(biāo)識(shí)符。但令人傷心的是所有出版的CAN規(guī)范均包含錯(cuò)誤,或者不完整。因此為避免出現(xiàn)不兼容的CAN應(yīng)用,Bosch公司一直在進(jìn)行驗(yàn)證CAN芯片是否基于Bosch 的CAN參考模型的工件。國(guó)際標(biāo)準(zhǔn)ISO11992卡車(chē)和拖車(chē)接口和ISO11783農(nóng)業(yè)和森林機(jī)械,都在美國(guó)標(biāo)準(zhǔn)J1939 的基礎(chǔ)上定義了基于CAN應(yīng)用的子協(xié)議,但是它們也并不完整。1.1.2 CAN 先行者的發(fā)展 盡管當(dāng)初研究CAN的起點(diǎn)是應(yīng)用于客車(chē)系統(tǒng),但CAN的第一個(gè)市場(chǎng)應(yīng)用卻來(lái)自于其他領(lǐng)域,特別是在北歐,CAN早已得到非常普遍的應(yīng)用:在荷蘭,電梯廠商Kone 使用CAN總線。瑞士工程辦公室Kvaser已建議將CAN應(yīng)用至一些紡織機(jī)械廠,并由他們提供機(jī)器的通訊協(xié)議。這一領(lǐng)域中在 Lars-Berno Fredriksso的領(lǐng)導(dǎo)下公司建立了CAN 紡織機(jī)械用戶集團(tuán),到1989 年他們已研究出通訊原理,并于1990 年早期幫助建立CAN Kingdom開(kāi)發(fā)環(huán)境,盡管CAN Kingdom并不是一種基于OSI參考模型的應(yīng)用層,但它被認(rèn)為是基于CAN的高層協(xié)議的原型。在荷蘭Philips 醫(yī)療系統(tǒng)決定使用CAN構(gòu)成X光機(jī)的內(nèi)部網(wǎng)絡(luò),成為CAN的工業(yè)用戶。主要由TomSuters 發(fā)表的Philips報(bào)文規(guī)范,PMS提出了CAN網(wǎng)絡(luò)的第一個(gè)應(yīng)用層。1.1.3 CAN 前景展望由于CAN總線為越來(lái)越多不同領(lǐng)域采用和推廣,導(dǎo)致要求不同應(yīng)用領(lǐng)域通信報(bào)文的標(biāo)準(zhǔn)化。為此,1991年9月Philips Semiconductors制定并發(fā)布了CAN技術(shù)規(guī)范(Version2.0)。該技術(shù)規(guī)范包括A和B兩部分。2.0A給出了曾在CAN技術(shù)規(guī)范版本1.2中定義的CAN報(bào)文格式,2.0B給出了標(biāo)準(zhǔn)的和擴(kuò)展的兩種報(bào)文格式。此后,1993年11月ISO正式頒布了道路交通運(yùn)輸工具數(shù)字信息交換高速通信控制器局部網(wǎng)(CAN)國(guó)際標(biāo)準(zhǔn)(ISO11898),為控制器局部網(wǎng)標(biāo)準(zhǔn)化,規(guī)范化推廣鋪平了道路。盡管CAN協(xié)議已經(jīng)有15 年的歷史,但它仍處在改進(jìn)之中。從2000 年開(kāi)始一個(gè)由數(shù)家公司組成的ISO任務(wù)組織定義了一種時(shí)間觸發(fā)CAN報(bào)文傳輸?shù)膮f(xié)議。Bernd Mueller博士,Thomas Fuehrer Bosch公司人員和半導(dǎo)體工業(yè)專(zhuān)家、學(xué)術(shù)研究專(zhuān)家將此協(xié)議定義為時(shí)間觸發(fā)通訊的CAN TTCAN。計(jì)劃在將來(lái)標(biāo)準(zhǔn)化為ISO11898-4,這個(gè)CAN的擴(kuò)展已在硅片上實(shí)現(xiàn)。TTCAN將為CAN延長(zhǎng)5-10年的生命期,現(xiàn)在CAN在全球市場(chǎng)上仍然處于起始點(diǎn),當(dāng)?shù)玫街匾?。誰(shuí)也無(wú)法預(yù)料CAN 總線系統(tǒng)在下一個(gè)10、15年內(nèi)的發(fā)展趨勢(shì)。這里需要強(qiáng)調(diào)一個(gè)現(xiàn)實(shí),近幾年內(nèi)美國(guó)和遠(yuǎn)東的汽車(chē)廠商將會(huì)在他們所生產(chǎn)汽車(chē)的串行部件上使用CAN,另外大量潛在的新應(yīng)用例如娛樂(lè)正在呈現(xiàn),不僅可用于客車(chē)也可用于家庭消費(fèi),同時(shí)結(jié)合高層協(xié)議應(yīng)用的特殊保安系統(tǒng)對(duì)CAN的需求也正在穩(wěn)健增長(zhǎng)。德國(guó)專(zhuān)業(yè)委員會(huì)BIA 和德國(guó)安全標(biāo)準(zhǔn)權(quán)威TUV 已經(jīng)對(duì)一些基于CAN的保安系統(tǒng)進(jìn)行了認(rèn)證,CANopen-Safety是第一個(gè)獲得BIA 許可的CAN解決方案。全球分級(jí)協(xié)會(huì)的領(lǐng)導(dǎo)者之一Germanischer Lloyd正在準(zhǔn)備提議將CANopen固件應(yīng)用于海事運(yùn)輸。2 1.2 CAN總線的基本特點(diǎn)CAN(控制器局域網(wǎng))是國(guó)際上應(yīng)用很廣泛的一種現(xiàn)場(chǎng)總線。它作為一種串行通信總線,最初被設(shè)計(jì)為汽車(chē)工業(yè)中的微控制器通信用,由于它具有高可靠性和獨(dú)特的設(shè)計(jì)、在多主系統(tǒng)中的優(yōu)勢(shì)及很高的實(shí)時(shí)性,現(xiàn)在CAN總線已經(jīng)在汽車(chē)工業(yè)、航天工業(yè)等領(lǐng)域的控制系統(tǒng)中得到了很廣泛的應(yīng)用,并且是到目前為止唯一一種成為國(guó)際標(biāo)準(zhǔn)(ISO)的現(xiàn)場(chǎng)總線,被認(rèn)為是目前最有前途的現(xiàn)場(chǎng)總線之一。CAN是一種多主方式的串行通訊總線,基本設(shè)計(jì)規(guī)范要求有高的位速率,高抗電磁干擾性,而且能夠檢測(cè)出產(chǎn)生的任何錯(cuò)誤。當(dāng)信號(hào)傳輸距離達(dá)到10Km時(shí),CAN仍可提供高達(dá)5Kbit/s的數(shù)據(jù)傳輸速率。一個(gè)由CAN總線構(gòu)成的單一網(wǎng)絡(luò)中,理論上可以掛接無(wú)數(shù)個(gè)節(jié)點(diǎn)。實(shí)際應(yīng)用中,節(jié)點(diǎn)數(shù)目受網(wǎng)絡(luò)硬件的電氣特性所限制。例如,當(dāng)使用Philips P82C250作為CAN收發(fā)器時(shí),同一網(wǎng)絡(luò)中允許掛接110個(gè)節(jié)點(diǎn)。CAN可提供高達(dá)1Mbit/s的數(shù)據(jù)傳輸速率,這使實(shí)時(shí)控制變得非常容易。另外,硬件的錯(cuò)誤檢定特性也增強(qiáng)了CAN的抗電磁干擾能力。CAN屬于總線式串行通信網(wǎng)絡(luò)。由于其采用了許多新技術(shù)及獨(dú)特的設(shè)計(jì),與一般的通信總線相比,CAN總線的數(shù)據(jù)通信具有突出的可靠性、實(shí)時(shí)性和靈活性。其特點(diǎn)可概括如下: 1) CAN為多主方式工作,網(wǎng)絡(luò)上任一節(jié)點(diǎn)均可在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上其他節(jié)點(diǎn)發(fā)送信息,而不分主從,通信方式靈活,且無(wú)需站地址等節(jié)點(diǎn)信息。利用這一特點(diǎn)可方便池構(gòu)成多機(jī)備份系統(tǒng)。 2) CAN網(wǎng)絡(luò)上的節(jié)點(diǎn)信息分成不同的優(yōu)先級(jí),可滿足不同的實(shí)時(shí)要求,高優(yōu)先級(jí)的數(shù)據(jù)員多可在134微秒內(nèi)得到傳輸。 3) CAN采用非破壞性總線仲裁技術(shù),當(dāng)多個(gè)節(jié)點(diǎn)同時(shí)向總線發(fā)送信息時(shí),優(yōu)先級(jí)較低的節(jié)點(diǎn)會(huì)主動(dòng)地退出發(fā)送,而最高優(yōu)先級(jí)的節(jié)點(diǎn)可不受影響地繼續(xù)傳輸數(shù)據(jù),從而大大節(jié)省了總線沖突仲裁時(shí)間。尤其是在網(wǎng)絡(luò)負(fù)載很重的情況下也不會(huì)出現(xiàn)網(wǎng)絡(luò)癱瘓情況(以太網(wǎng)則可能)。 4) CAN只需通過(guò)報(bào)文濾波即可實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)及全局廣播等幾種方式傳送接收數(shù)據(jù),無(wú)用專(zhuān)門(mén)的“調(diào)度”。 5) CAN的直接通信距離最遠(yuǎn)可達(dá)10km(速率5kbPs以下);通信速率最高可達(dá)1Mbps(此時(shí)通信距離員長(zhǎng)為40m)。 6) CAN上的節(jié)點(diǎn)數(shù)主要取決于總線驅(qū)動(dòng)電路,目前可達(dá)110個(gè);報(bào)文標(biāo)識(shí)符可達(dá)2032種(CAN2.0A),而擴(kuò)展標(biāo)準(zhǔn)(CAN2.0B)的報(bào)文標(biāo)識(shí)符幾乎不受限制。 7) 采用短幀結(jié)構(gòu),傳輸時(shí)間短,受干擾概率低,具有極好的檢措效果。 8) CAN的每幀信息都有CRC校驗(yàn)及其他檢錯(cuò)措施,保證了數(shù)據(jù)出錯(cuò)率極低。 9) CAN的通信介質(zhì)可為雙絞線、同軸電纜或光纖,選擇靈活。 10) CAN節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下具有自動(dòng)關(guān)閉輸出功能以使總線上其他節(jié)點(diǎn)的操作不受影響。CAN得到Motorola、Intel、Philip、Siemence、NEC等公司的支持,CAN的應(yīng)用范圍遍及從高速網(wǎng)絡(luò)到低成本的多路線網(wǎng)絡(luò),廣泛地應(yīng)有與離散控制系統(tǒng)。CAN的信號(hào)傳輸采用段幀結(jié)構(gòu),每一幀的有效字節(jié)數(shù)為8個(gè),因而傳輸時(shí)間短,受干擾的概率低,由于其采用CRC-16的校驗(yàn)方式,誤碼率僅為。CAN總線上的數(shù)值邏輯,如圖1-1所示,CAN中的總數(shù)值為兩種互補(bǔ)的邏輯數(shù)值之一:“顯性”或“隱性”?!帮@性”(Daminant)數(shù)值表示邏輯“0”,而“隱性”(Recessive)表示邏輯“1”。“顯性”和“隱性”位同時(shí)發(fā)送時(shí),最后總線數(shù)值將為“顯性”。在“隱性”狀態(tài)下,被固定于平均電壓水平,近似為0。在總線空閑或“隱性”位期間,發(fā)送“隱性”狀態(tài)?!帮@性”狀態(tài)以大于最小閾值的差分電壓表示。在“顯性”位期間,“顯性”狀態(tài)改寫(xiě)“隱性”狀態(tài),并發(fā)送。隱性位隱性位圖1-1 CAN總線位的數(shù)值表示時(shí)間t/ms平均電壓CAN總線的速率與距離的關(guān)系。CAN系統(tǒng)內(nèi)兩個(gè)任意節(jié)點(diǎn)的最大傳輸距離與其位速率有關(guān)。由于CAN 技術(shù)的應(yīng)用普遍推廣導(dǎo)致要求通信協(xié)議的標(biāo)準(zhǔn)化。為此,1991年9月Bosch公司制定并發(fā)布了CAN 技術(shù)規(guī)范(Version2.0)。該技術(shù)規(guī)范包括A和B兩部分。2.0A給出了曾在CAN技術(shù)規(guī)范版本1.2中定義的CAN報(bào)文格式。此后,1993年11月ISO正式頒布了道路交通運(yùn)輸工具-數(shù)字交換-高速通信控制器局部網(wǎng)(CAN)國(guó)際標(biāo)準(zhǔn)(ISO11898),為CAN進(jìn)一步標(biāo)準(zhǔn)化,規(guī)范化起到了推廣的作用。1.3 CAN通信協(xié)議CAN總線作為一種國(guó)際標(biāo)準(zhǔn),也遵從網(wǎng)絡(luò)標(biāo)準(zhǔn)模型。按照IEEE802.2和802.3,CAN只采用了OSI參考模型全部七層中的兩層,即物理層和數(shù)據(jù)鏈路層。物理層又分為物理層信號(hào)(Physical Layer Signal-PLS),物理媒體連接(Physical Medium Attachment-PMA)與介質(zhì)從屬接口(Medium Dependent Interface-MDI)三部分,完成電器連接,實(shí)現(xiàn)驅(qū)動(dòng)器/接受其特性,定時(shí),同步,位編碼解碼。數(shù)據(jù)鏈路層分為邏輯鏈路控制(LLC)與媒體訪問(wèn)控制(MAC)兩部分,分別完成接受濾波超載通知,恢復(fù)管理,以及應(yīng)答,幀編碼,數(shù)據(jù)封裝拆裝,媒體訪問(wèn)管理,出錯(cuò)檢驗(yàn)等,如圖1-2所示,實(shí)際應(yīng)用CAN總線時(shí),用戶可根據(jù)需要實(shí)現(xiàn)應(yīng)用層的功能。應(yīng)用層表示層會(huì)話層傳輸層網(wǎng)絡(luò)層數(shù)據(jù)鏈路層物理層LLCMACPLSPMALLCMACPLSPMA 媒 體 圖1-2 CAN 通信模型1.3.1 物理層物理層定義信號(hào)是如何實(shí)際地傳輸?shù)摹_@里將連接于總線的各個(gè)節(jié)點(diǎn)稱(chēng)為電子控制裝置(ECU)。因此物理層涉及到的是將ECU連接至總線的電路實(shí)現(xiàn)。ECU的總數(shù)受限于總線上的電器負(fù)載。物理層按照IEEE802.3LAN標(biāo)準(zhǔn)規(guī)范構(gòu)造模型,如圖1-2所示。它劃分為如下三部分:1. 物理層信號(hào) 物理層信號(hào)(Physical Layer Signal-PLS)實(shí)現(xiàn)于位表示,位定時(shí)和同步相關(guān)的功能。(1) 位定時(shí) 理想發(fā)射器在沒(méi)有沖同步的情況下,每妙發(fā)送的位數(shù)定義為標(biāo)準(zhǔn)位速率(Nominal Bit Rate),標(biāo)稱(chēng)位時(shí)間(Nominal Bit Time )定義為標(biāo)稱(chēng)位速率的倒數(shù),即 標(biāo)稱(chēng)位時(shí)間=1/標(biāo)稱(chēng)位速率 標(biāo)準(zhǔn)位時(shí)間相位緩沖段2相位緩沖段1傳播段同步段采樣點(diǎn)圖1-3 標(biāo)稱(chēng)位時(shí)間的組成位時(shí)間指的是一位的持續(xù)時(shí)間。在位時(shí)間框架內(nèi)執(zhí)行的總線管理功能,諸如ECU同步狀態(tài),網(wǎng)絡(luò)發(fā)送延遲補(bǔ)償和采樣點(diǎn)定位,均由CAN協(xié)議集成電路的可編程位定時(shí)邏輯確定。正常位時(shí)間可劃分為分開(kāi)的,不重疊的時(shí)間段,如圖1-3所示。這些時(shí)間段包括同步段(Sync-Seg),傳播段(Prop-Seg)和相位緩存段1(Phase-Seg)和相位緩存段2(Phase-Seg2)。同步段用于同步總線上的各個(gè)節(jié)點(diǎn)或設(shè)備。在此段內(nèi),等待一個(gè)跳邊沿。傳播段用于補(bǔ)償網(wǎng)絡(luò)內(nèi)的物理延遲時(shí)間,輸入比較起延遲時(shí)間和輸出收發(fā)器延遲時(shí)間的2倍。相位緩存段1和相位緩存段2用于補(bǔ)償相位邊沿的誤差。這兩個(gè)時(shí)間段可通過(guò)重新同步加以延長(zhǎng)或縮短。采樣點(diǎn)讀取總線電平,并被轉(zhuǎn)化為相應(yīng)位數(shù)值的一個(gè)時(shí)間點(diǎn),其位于相位緩沖段1的結(jié)束處。信息處理時(shí)間始于采樣點(diǎn),它被保留用作計(jì)算子序列位電平的時(shí)間段。位時(shí)間按時(shí)間量程進(jìn)行編程。時(shí)間量程是由震蕩周期推出的固定時(shí)間單位。存在一個(gè)可編程的預(yù)分刻度數(shù)值,其范圍為130的整數(shù)。自時(shí)間量程最小開(kāi)始,時(shí)間量程的長(zhǎng)度為:時(shí)間量程=m時(shí)間量程最小值式中m為預(yù)分刻度數(shù)值。組成位時(shí)間的各時(shí)間長(zhǎng)度分別為:同步段長(zhǎng)度為1個(gè)時(shí)間量程;傳播段長(zhǎng)度可編程位1、2、3、8或更多時(shí)間量程;相位緩沖段1長(zhǎng)度可編程為1、2、3、8或更多時(shí)間量程;相位緩沖段2為相位緩沖段的最大值加信息處理時(shí)間。信息處理時(shí)間長(zhǎng)度為小于或等于2個(gè)時(shí)間量程。位時(shí)間中時(shí)間量程總數(shù)必須編程為至少825。對(duì)于不同ECU中震蕩器的頻率應(yīng)加以調(diào)整,以便提供系統(tǒng)規(guī)定的時(shí)間量程。(2) 位編碼/解碼 位編碼即位流編碼,CAN規(guī)定CAN的數(shù)據(jù)幀的五個(gè)部分(包括幀起始、仲裁域、控制域、數(shù)據(jù)域以及CRC序列)均通過(guò)位填充的方法編碼。無(wú)論何時(shí),發(fā)送器只要檢測(cè)到位流里有5個(gè)連續(xù)相同值的位,便自動(dòng)在位流里插入一補(bǔ)充位。數(shù)據(jù)幀或遠(yuǎn)程幀的其它位域,包括界定符應(yīng)答域和幀結(jié)束格式固定,沒(méi)有位填充。錯(cuò)誤幀和遠(yuǎn)程幀的格式也是固定的,他們不用位填充的方法編碼。 CAN規(guī)定,CAN報(bào)文的位流根據(jù)“不歸零”的方法來(lái)解碼。這就是說(shuō),在整個(gè)位時(shí)間里,位的電平要么為顯性,要么為隱性。(3) 同步 同步包括硬同步和重同步兩種形式。一個(gè)硬同步后,位時(shí)間由每個(gè)位定時(shí)邏輯單元以同步段重新啟動(dòng)。因此,硬同步強(qiáng)迫引起硬同步的跳變沿處于重新開(kāi)始的位時(shí)間同步段內(nèi)。而重同步的結(jié)果使相位緩沖段1延長(zhǎng)或相位緩沖段2縮短。延長(zhǎng)和縮短相位緩沖器段的綜合存在一個(gè)上限,此上限由重同步跳轉(zhuǎn)寬度給定。重同步跳轉(zhuǎn)寬度應(yīng)通過(guò)編程設(shè)置在1和4(Phase Seg1)之間。 時(shí)鐘信息可以從一位值至另一位值的躍變中提取。由于具有連續(xù)相同數(shù)值位的最大數(shù)目是固定的,這一特性使得在幀起間總線單元重同步于流成為可能??捎糜谥赝降膬蓚€(gè)跳變之間的最大長(zhǎng)度為29個(gè)位時(shí)間。 同步邊沿的相位誤差e由相對(duì)于同步段邊沿的位置給定,以時(shí)間量程度量。相位誤差的符號(hào)定義如下:e=0, 若邊沿位于同步段內(nèi); e0,若邊沿位于采樣點(diǎn)前;e0, 若邊沿位于采樣點(diǎn)后。當(dāng)引起重同步的邊沿相位誤差的值小于或等于重同步跳轉(zhuǎn)寬度的編程數(shù)值時(shí),重同步導(dǎo)致位時(shí)間縮短或延長(zhǎng),使采樣點(diǎn)處于正確位置。當(dāng)相位誤差值大于重同步跳轉(zhuǎn)寬度時(shí),如果相位誤差e為正,則Phase Seg1延長(zhǎng)的數(shù)值等于一個(gè)重同步跳轉(zhuǎn)寬度的值;如果相位誤差e為負(fù),則Phase Seg2縮短的數(shù)值等于一個(gè)重同步跳轉(zhuǎn)寬度的值。硬同步和重同步遵從下列同步規(guī)則:1)在一個(gè)位時(shí)間內(nèi)僅允許一種同步;2)僅當(dāng)采樣點(diǎn)之前檢測(cè)到的數(shù)值(先前讀總線數(shù)值)與緊跟邊沿之后出現(xiàn)的總線數(shù)值不同時(shí),邊沿才被用于同步;3)總線空閑期間,無(wú)論何時(shí),只要一有“隱性”至“顯性”的跳變沿,就執(zhí)行硬同步;4)所有滿足規(guī)則1)和2)的其他“隱性”至“顯性”的跳變沿(和在低位速率情況下,選擇的“顯性”至“隱性”跳變沿)將被用于重同步;例外情況是,若有“隱性”至“顯性”的跳變沿被用于重同步,由于具有正相位誤差的“隱性”至“顯性”的跳變沿的結(jié)果,發(fā)送器將不完成重同步。1.3.2 物理媒體連接子層(PMA)PMA子層的主要功能是實(shí)現(xiàn)總線發(fā)送/接受的功能電路,并可提供總線故障檢測(cè)方法。在CAN技術(shù)規(guī)范2.0B中沒(méi)有定義該層的驅(qū)動(dòng)器/接受器的特性,以便在具體應(yīng)用中進(jìn)行優(yōu)化設(shè)計(jì)。在1993年形成的國(guó)際標(biāo)準(zhǔn)ISO11898中對(duì)基于雙絞線的物理媒體連接特性做了建議。由物理媒體連接(PMA)和媒體從屬接口(MDI)構(gòu)成媒體訪問(wèn)單元(MAU)。1.3.3 媒體訪問(wèn)控制子層媒體訪問(wèn)控制子層是CAN協(xié)議的核心。它把接收到的報(bào)文提供給子層,并接受來(lái)自子層的報(bào)文。子層負(fù)責(zé)報(bào)文分幀,仲裁,應(yīng)答,錯(cuò)誤檢測(cè)和標(biāo)定。CAN有兩種幀格式,一種是含有11位標(biāo)識(shí)符的標(biāo)準(zhǔn)幀和含有29位標(biāo)識(shí)符的擴(kuò)展幀另外,數(shù)據(jù)在節(jié)點(diǎn)間發(fā)送和接收以四種不同類(lèi)型的幀出現(xiàn)和控制。其中,數(shù)據(jù)幀將數(shù)據(jù)由發(fā)送器傳至接收器;遠(yuǎn)程幀由節(jié)點(diǎn)發(fā)送,以請(qǐng)求發(fā)送具有相同標(biāo)識(shí)符的數(shù)據(jù)幀;出錯(cuò)幀可由任何節(jié)點(diǎn)發(fā)送,以檢測(cè)總線錯(cuò)誤。而超載幀用于提供先前和后續(xù)數(shù)據(jù)幀或遠(yuǎn)程幀之間的附加延時(shí)。另外,數(shù)據(jù)幀和遠(yuǎn)程幀以幀空間隔同先前幀隔開(kāi)。 1. 數(shù)據(jù)幀 一個(gè)數(shù)據(jù)幀由7個(gè)不同位域(場(chǎng))構(gòu)成,它們是幀起始(Start Of Frame-SOF)、仲裁幀、控制域(兩位保留位+DLC域)、數(shù)據(jù)域、 CRC域、ACK域和幀結(jié)束(EOF-End Of Frame),如圖1-4所示: (1)幀起始(SOF) 標(biāo)志數(shù)據(jù)幀和遠(yuǎn)程數(shù)據(jù)幀的起始,它由單個(gè)“顯性”位構(gòu)成。只有當(dāng)總線為空閑狀態(tài)時(shí),才允許節(jié)點(diǎn)開(kāi)始傳送,所有節(jié)點(diǎn)必須同步于首先開(kāi)始發(fā)送節(jié)點(diǎn)幀起始引起的上升沿。(2)仲裁域 標(biāo)準(zhǔn)幀格式與擴(kuò)展幀格式的仲裁域格式不同。在標(biāo)準(zhǔn)格式中,仲裁域由11 位標(biāo)識(shí)符(IdentifierID)和一位遠(yuǎn)程發(fā)送請(qǐng)求(Remot Transmission RequestRTR)位構(gòu)成。11位標(biāo)識(shí)符由基本ID-28ID-18組成,并且按ID-28到D-18的順序發(fā)送。16bit12或32bit bit6bit 08B16bit2bit7bit3bit幀起始仲裁域控制域數(shù)據(jù)域CRC域ACK域幀結(jié)束幀間隔圖1-4 報(bào)文的數(shù)據(jù)幀結(jié)構(gòu)在擴(kuò)展格式中,仲裁域由29位標(biāo)識(shí)符、1位替代遠(yuǎn)程請(qǐng)求(Substitute Remote RequestSRR)位、一位標(biāo)識(shí)符擴(kuò)展位(Identifier ExtensionIDE)位和一位RTR位組成。29位標(biāo)識(shí)符包括11位基本ID和18位擴(kuò)展ID?;綢D和標(biāo)準(zhǔn)格式是一樣的,按ID-28到D-18的順序發(fā)送。擴(kuò)展ID按ID-17到ID-0的順序發(fā)送。SSR位數(shù)值總為“1”,IDE位數(shù)總為“1”。(3)控制域 控制域由6位構(gòu)成。標(biāo)準(zhǔn)幀格式與擴(kuò)展幀格式的控制與格式不同。標(biāo)準(zhǔn)格式里的控制域包括4位數(shù)據(jù)長(zhǎng)度代碼(Data Length CodeDLC)、IDE位(數(shù)值為“0”) 和保留位r0。擴(kuò)展格式里的控制域包括4位數(shù)據(jù)長(zhǎng)度代碼(DLC)、兩個(gè)保留位r1、r0。數(shù)據(jù)長(zhǎng)度代碼指示了數(shù)據(jù)里的字節(jié)數(shù)目。DLC的編碼含義見(jiàn)表1-5。接收器接收“0”和“1”位作為所有組合中的保留位。在定義保留位功能之前,發(fā)送器只能發(fā)送“0”位。(4)數(shù)據(jù)域 數(shù)據(jù)域由數(shù)據(jù)幀內(nèi)被發(fā)送的數(shù)據(jù)組成,它可包括08個(gè)字節(jié),每個(gè)字節(jié)包括8位。(5)CRC域 CRC域包括CRC序列,后隨CRC界定符。用于幀校驗(yàn)的CRC序列由特別適用于位數(shù)小于127位幀的循環(huán)冗余碼校驗(yàn)(BCH碼)驅(qū)動(dòng)。為實(shí)現(xiàn)CRC計(jì)算,作為除數(shù)的多項(xiàng)式被定義為這樣一個(gè)多項(xiàng)式,其系數(shù)由幀起始,仲裁域,控制域,數(shù)據(jù)域(如果存在)和15位最低系數(shù)為0組成的解除填充的位流給定。此多項(xiàng)式除以下列生成多項(xiàng)式:除以(系數(shù)按模2計(jì)算),相除的余數(shù)即為發(fā)至總線的CRC序列。(6)ACK域 ACK域?yàn)閮晌唬篈CK隙和ACK界定符。發(fā)送節(jié)點(diǎn)的ACK域中,送出兩個(gè)“隱性”位。在ACK隙內(nèi),所有接收到匹配CRC序列的節(jié)點(diǎn),以“顯性”位改寫(xiě)發(fā)送器的“隱性”位送出一個(gè)應(yīng)答。ACK界定為ACK場(chǎng)的第二位。它必須是“隱性”位,因此,ACK隙被兩個(gè)“隱性”位(ACK界定符和CRC界定符)所包圍。(7)幀結(jié)束 每個(gè)數(shù)據(jù)幀和遠(yuǎn)程幀均由7個(gè)“隱性”位構(gòu)成的標(biāo)志序列界定。表1-5 由DLC表示的數(shù)據(jù)字節(jié)數(shù)目的編碼數(shù) 數(shù)據(jù)字節(jié)數(shù)目 DLC DLC3 DLC2 DLC1 DLC0 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 0 1 0 1 6 0 1 1 0 7 0 1 1 1 8 10 0 02. 遠(yuǎn)程幀 激活為數(shù)據(jù)接收器的節(jié)點(diǎn)可以通過(guò)發(fā)送一個(gè)遠(yuǎn)程幀啟動(dòng)源節(jié)點(diǎn)發(fā)送各自的數(shù)據(jù)。一個(gè)遠(yuǎn)程幀由6個(gè)不同的圍場(chǎng)構(gòu)成:幀起始(SOF)、仲裁域、控制域、CRC域,ACK域和幀結(jié)束(EOF),如圖1-6所示:1 bit12或32bit bit6bit16bit2bit7bit3bit幀起始仲裁域控制域CRC域ACK域幀結(jié)束幀間隔圖1-6 報(bào)文遠(yuǎn)程幀結(jié)構(gòu)遠(yuǎn)程幀也有標(biāo)準(zhǔn)格式(11bit標(biāo)識(shí)符)和擴(kuò)展格式(29bit標(biāo)識(shí)符)。在MAC數(shù)據(jù)幀中,RTR位數(shù)值為“1”,與數(shù)據(jù)幀是相反的。幀起始(SOF),控制域,CRC域,ACK域和幀結(jié)束(EOF)等位域均與MAC數(shù)據(jù)幀的相應(yīng)位域相同。3 出錯(cuò)幀 出錯(cuò)幀由兩個(gè)不同的域構(gòu)成:第一個(gè)域由來(lái)自不同節(jié)點(diǎn)的錯(cuò)誤標(biāo)志疊加給出;第二個(gè)域?yàn)殄e(cuò)誤定界符。(1)錯(cuò)誤標(biāo)志 有兩種錯(cuò)誤標(biāo)志形式:錯(cuò)誤主動(dòng)標(biāo)志和錯(cuò)誤被動(dòng)標(biāo)志。前者由6bit連續(xù)的顯性位構(gòu)成;后者由6bit的連續(xù)的隱性位構(gòu)成,除非被其他節(jié)點(diǎn)的顯性位覆蓋。檢測(cè)到出錯(cuò)狀態(tài)的“錯(cuò)誤主動(dòng)”節(jié)點(diǎn)通過(guò)發(fā)送錯(cuò)誤主動(dòng)標(biāo)志來(lái)指示錯(cuò)誤。因?yàn)檫@個(gè)錯(cuò)誤標(biāo)志的格式違反了從幀的起始到定界符的位填充規(guī)則,也破壞了要求固定形式的位域。這樣,所有其他的節(jié)點(diǎn)將檢測(cè)到一個(gè)出錯(cuò)狀態(tài),并開(kāi)始發(fā)送錯(cuò)誤標(biāo)志。因此,各節(jié)點(diǎn)發(fā)送的不同錯(cuò)誤標(biāo)志疊加起來(lái)就形成了出錯(cuò)幀的第一個(gè)域。實(shí)際上總線上的監(jiān)控到的是疊加的“顯性”位序列,其總長(zhǎng)度在最小值6bit最大值12bit之間變化。檢測(cè)到出錯(cuò)狀態(tài)的“錯(cuò)誤被動(dòng)”節(jié)點(diǎn)通過(guò)發(fā)送錯(cuò)誤被動(dòng)標(biāo)志來(lái)指示錯(cuò)誤。錯(cuò)誤被動(dòng)的節(jié)點(diǎn)從錯(cuò)誤被動(dòng)標(biāo)志的開(kāi)頭起,等待6個(gè)后續(xù)的相同的極性的位。當(dāng)這6個(gè)相同的位被檢測(cè)到時(shí),錯(cuò)誤被動(dòng)標(biāo)志就完成了。(2)錯(cuò)誤定界符 錯(cuò)誤定界符由8bit隱性位構(gòu)成。傳送了錯(cuò)誤標(biāo)志后,每個(gè)節(jié)點(diǎn)就發(fā)送一個(gè)隱性位,并一直監(jiān)控總線直到檢測(cè)到一個(gè)隱性位為止。然后就開(kāi)始發(fā)送剩余的7個(gè)隱性位。4.超載幀 存在兩類(lèi)具有相同格式的超載幀:LLC要求的超載幀和重激活超載幀。前者為L(zhǎng)LC子層所要求,以表明內(nèi)部超載狀態(tài),后者將由MAC子層的一些出錯(cuò)條件而被啟動(dòng)發(fā)送。超載幀包括兩個(gè)位場(chǎng):超載標(biāo)志和超載定界符。超載標(biāo)志的完整形式相應(yīng)于活動(dòng)錯(cuò)誤標(biāo)志。超載定界符與錯(cuò)誤定界符具有相同形式。超載標(biāo)志由6個(gè)“顯性”位構(gòu)成。由于超載標(biāo)志形式破壞了發(fā)送場(chǎng)的固定形式,因此所有其它節(jié)點(diǎn)將檢測(cè)到一個(gè)超載條件,并在其部件上開(kāi)始發(fā)送一超載標(biāo)志。 超載定界符由8bit隱性位構(gòu)成。發(fā)送超載標(biāo)志后,每個(gè)節(jié)點(diǎn)均監(jiān)控總線,直到檢測(cè)到隱性位。此時(shí),每個(gè)節(jié)點(diǎn)發(fā)出其超載標(biāo)志,并且所有節(jié)點(diǎn)開(kāi)始發(fā)送剩余的7個(gè)“隱性”位,以完成8bit長(zhǎng)度超載定界符。5.幀間空間 數(shù)據(jù)幀和遠(yuǎn)程幀同前述的任何幀(數(shù)據(jù)幀、遠(yuǎn)程幀、出錯(cuò)幀、超載幀)用稱(chēng)之為幀間空間的位域隔開(kāi)。與此相反,超載幀和出錯(cuò)幀前面不存在幀的空間,并且多個(gè)超載幀也不用幀間空間分離。幀間空間包括間歇場(chǎng)和總線空閑場(chǎng),并且對(duì)于先前幀已發(fā)送“錯(cuò)誤認(rèn)可”的節(jié)點(diǎn)還有暫停發(fā)送場(chǎng)。(1)間歇場(chǎng) 間歇場(chǎng)由3個(gè)“隱性”位構(gòu)成,間歇期不允許節(jié)點(diǎn)開(kāi)始發(fā)送數(shù)據(jù)幀或遠(yuǎn)程幀,僅起標(biāo)注超載條件的作用。(2)總線空閑場(chǎng) 總線空閑時(shí)間可以是任意長(zhǎng)度??偩€空閑時(shí)間內(nèi),任何節(jié)點(diǎn)均可訪問(wèn)總線,以便發(fā)送。其它幀發(fā)送期間,等待發(fā)送的幀在緊隨間歇場(chǎng)后的第一位啟動(dòng)。如果在總線空閑期間檢測(cè)到總線是“顯性”位,將被理解為幀起始。(3)暫停發(fā)送場(chǎng) “錯(cuò)誤節(jié)點(diǎn)”完成發(fā)送后,其在緊隨間歇后,被允許在發(fā)送下一幀前發(fā)送8bit“隱性”位。期間,若有發(fā)送啟動(dòng)(由其它節(jié)點(diǎn)引起),則節(jié)點(diǎn)將變?yōu)樵搸慕邮掌鳌?.媒體訪問(wèn)和仲裁 當(dāng)檢測(cè)到間歇場(chǎng)未被“顯性”位中斷后,認(rèn)為總線被所有節(jié)點(diǎn)釋放。總線一旦釋放,“錯(cuò)誤主動(dòng)”節(jié)點(diǎn)可以訪問(wèn)總線,接受當(dāng)前或先前幀的“錯(cuò)誤被動(dòng)”節(jié)點(diǎn)也可以訪問(wèn)總線。一旦完成暫停的發(fā)送,并且期間沒(méi)有其它節(jié)點(diǎn)開(kāi)始發(fā)送,發(fā)送當(dāng)前幀或已發(fā)送完先前幀的“錯(cuò)誤被動(dòng)”節(jié)點(diǎn)可以訪問(wèn)總線。當(dāng)允許節(jié)點(diǎn)訪問(wèn)總線時(shí),MAC數(shù)據(jù)幀和MAC遠(yuǎn)程幀可以開(kāi)始。MAC錯(cuò)誤幀和MAC超載幀如上述規(guī)定被發(fā)送。發(fā)送期間,發(fā)送數(shù)據(jù)幀或遠(yuǎn)程幀的每個(gè)節(jié)點(diǎn)均為總線主站。當(dāng)許多節(jié)點(diǎn)一起開(kāi)始發(fā)送時(shí),此時(shí)只有發(fā)送具有最高優(yōu)先權(quán)幀的節(jié)點(diǎn)變?yōu)榭偩€主站。這種解決總線訪問(wèn)碰撞的機(jī)理是基于競(jìng)爭(zhēng)的仲裁。仲裁期間,每個(gè)發(fā)送器將發(fā)送位電平和總線上偵聽(tīng)到的電平進(jìn)行比較。若相等,則節(jié)點(diǎn)可以繼續(xù)發(fā)送。當(dāng)送出一個(gè)“隱性”電平,而偵聽(tīng)到的為“顯性”電平時(shí),表明節(jié)點(diǎn)丟失仲裁,并且不應(yīng)再送更多位。當(dāng)送出“顯性”電平,而檢測(cè)到“隱性”電平時(shí),表明節(jié)點(diǎn)檢測(cè)出位錯(cuò)誤?;诟?jìng)爭(zhēng)的仲裁依靠標(biāo)識(shí)符和緊隨其后的RTR位完成。具有不同標(biāo)識(shí)符的兩幀中,優(yōu)先權(quán)被標(biāo)注于幀中,較高優(yōu)先權(quán)的標(biāo)識(shí)符具有較低的二進(jìn)制數(shù)值。若具有相同標(biāo)識(shí)符的數(shù)據(jù)幀和遠(yuǎn)程幀同時(shí)被初始化,數(shù)據(jù)幀較之遠(yuǎn)程幀具有較高的優(yōu)先權(quán),它通過(guò)按照RTR位數(shù)值標(biāo)注達(dá)到。除僅當(dāng)總線釋放時(shí),可以啟動(dòng)發(fā)送這一原則外,還存在解決碰撞的下列原則:(1)在一個(gè)系統(tǒng)內(nèi),每條信息必須標(biāo)以唯一的標(biāo)識(shí)符。(2)具有給定標(biāo)識(shí)符和非零數(shù)據(jù)長(zhǎng)度代碼(DLC)的數(shù)據(jù)幀僅可由一個(gè)節(jié)點(diǎn)啟動(dòng)。(3)遠(yuǎn)程幀僅可以由全系統(tǒng)內(nèi)確定的DLC發(fā)送,該數(shù)據(jù)長(zhǎng)度碼對(duì)應(yīng)數(shù)據(jù)幀的DLC。由于相同標(biāo)識(shí)符和不同DLC的遠(yuǎn)程幀同時(shí)發(fā)送將導(dǎo)致不能解決的碰撞。CAN具有較高的效率是因?yàn)榭偩€僅僅被那些請(qǐng)求總線懸而未決的站利用,這些請(qǐng)求是根據(jù)報(bào)文在整個(gè)系統(tǒng)中的重要性按順序處理的。這種方法在網(wǎng)絡(luò)負(fù)載較重時(shí)有很多優(yōu)點(diǎn),因?yàn)榭偩€讀取的優(yōu)先級(jí)已被按順序放在每個(gè)報(bào)文中了,這可以保證在實(shí)時(shí)系統(tǒng)中有較短的個(gè)體隱伏時(shí)間。對(duì)于主站的可靠性,由于CAN協(xié)議執(zhí)行非集中化總線控制,所有主要通信,包括總線讀?。ㄔS可)控制,在系統(tǒng)中分幾次完成。這是實(shí)現(xiàn)有較高可靠性通信系統(tǒng)的方法。1.3.4 邏輯鏈路控制(LLC)子層LLC子層的功能包括以下三個(gè)部分:1.幀接受濾波 在LLC子層上開(kāi)始的幀躍變是獨(dú)立的,其自身的操作與先前的幀躍變無(wú)關(guān)。幀內(nèi)容由標(biāo)識(shí)符命名。標(biāo)識(shí)符并不能指明幀的目的地,但可描述數(shù)據(jù)的含義,每個(gè)接受器通過(guò)幀接受濾波確定此幀與其是否有關(guān)。2.超載通告 如果接受內(nèi)部條件要求延遲下一個(gè)LLC數(shù)據(jù)幀或LLC遠(yuǎn)程幀,則通過(guò)LLC子層開(kāi)始發(fā)送超載幀。最多可產(chǎn)生兩個(gè)超載幀,以延遲下一個(gè)數(shù)據(jù)幀或遠(yuǎn)程幀。3.恢復(fù)管理 發(fā)送期間,對(duì)于丟失仲裁或或被錯(cuò)誤干擾的幀,LLC子層具有自動(dòng)重發(fā)功能。在發(fā)送成功完成之前,幀發(fā)送服務(wù)不被用戶認(rèn)可。 LLC數(shù)據(jù)幀由三個(gè)位場(chǎng)(標(biāo)識(shí)符場(chǎng)、DLC場(chǎng)和LLC數(shù)據(jù)場(chǎng))組成。LLC遠(yuǎn)程幀由兩個(gè)位場(chǎng)(標(biāo)識(shí)符場(chǎng)和DLC場(chǎng))組成。LLC遠(yuǎn)程幀標(biāo)識(shí)符格式與LLC數(shù)據(jù)幀標(biāo)識(shí)符格式相同,只是不存在DLC場(chǎng)。DLC的數(shù)值是獨(dú)立的,此數(shù)據(jù)為對(duì)應(yīng)LLC數(shù)據(jù)幀的DLC。1.4 CAN數(shù)據(jù)交換原理CAN是一種基于廣播的通訊機(jī)制,廣播通訊依靠報(bào)文(Message)的傳送機(jī)制來(lái)實(shí)現(xiàn),因此CAN并未定義站及站地址,而僅僅定義了報(bào)文,這些報(bào)文依靠報(bào)文確認(rèn),(Identifier)來(lái)進(jìn)行識(shí)別,一個(gè)消息報(bào)文確認(rèn)區(qū)在一個(gè)網(wǎng)絡(luò)中必須是惟一的,它不但描述了某一報(bào)文的意義,而且還定義了報(bào)文的優(yōu)先級(jí),當(dāng)很多站都在訪問(wèn)總線時(shí),優(yōu)先級(jí)是很重要的。CAN使用地址訪問(wèn)的方法,使網(wǎng)絡(luò)的配置變得非常靈活,用戶可以很容易的增加一個(gè)新的站到一個(gè)己經(jīng)存在CAN的網(wǎng)絡(luò)里,而不用對(duì)己經(jīng)存在的站進(jìn)行任何硬件或軟件上的修改,但必須被新的站點(diǎn)完全的接受,這樣它將不會(huì)對(duì)網(wǎng)絡(luò)上各結(jié)點(diǎn)的通訊產(chǎn)生影響。 1.5 CAN總線網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu) CAN總線作為現(xiàn)場(chǎng)總線的一種,它具備現(xiàn)場(chǎng)總線的基本特性,以現(xiàn)場(chǎng)總線為基礎(chǔ)組成現(xiàn)場(chǎng)網(wǎng)絡(luò)主要有三種形式:(1)星型網(wǎng)絡(luò)星型網(wǎng)即以1臺(tái)稱(chēng)之為中心處理機(jī)的計(jì)算機(jī)為主組成網(wǎng)絡(luò),各種類(lèi)型的入網(wǎng)機(jī)均與該中心處理機(jī)有物理鏈路直接相連,因此,所有的網(wǎng)上傳輸信息均需要通過(guò)該機(jī)轉(zhuǎn)發(fā),其結(jié)構(gòu)如圖1-7所示。在圖1-7中,主機(jī)為整個(gè)現(xiàn)場(chǎng)測(cè)試網(wǎng)絡(luò)中的上位機(jī),主要負(fù)責(zé)網(wǎng)絡(luò)的統(tǒng)一管理以及測(cè)試數(shù)據(jù)的后續(xù)處理。C為各個(gè)子節(jié)點(diǎn)PC機(jī),主要負(fù)責(zé)與現(xiàn)場(chǎng)測(cè)試單元進(jìn)行通信,并將現(xiàn)場(chǎng)的測(cè)試數(shù)據(jù)及時(shí)發(fā)送到主機(jī)中。T為PC子節(jié)點(diǎn)以下的各個(gè)種現(xiàn)場(chǎng)測(cè)試單元,主要負(fù)責(zé)現(xiàn)場(chǎng)數(shù)據(jù)采集,并對(duì)測(cè)試數(shù)據(jù)進(jìn)行適當(dāng)?shù)奶幚恚ㄐ盘?hào)放大和信號(hào)濾波等。現(xiàn)場(chǎng)測(cè)試單元有很多種,比如:應(yīng)變測(cè)試單元、溫度測(cè)試單元、位移測(cè)試單元等等。星型網(wǎng)絡(luò)的結(jié)構(gòu)特點(diǎn)是:構(gòu)造較容易,適于同種機(jī)型互連,通信功能簡(jiǎn)單,它可以根據(jù)需要由中心處理機(jī)分時(shí)或按優(yōu)先權(quán)處理。但是在星型網(wǎng)絡(luò)中,主機(jī)的負(fù)載過(guò)重,擴(kuò)充困難,每臺(tái)入網(wǎng)計(jì)算機(jī)均需與主機(jī)有線路直接互連,因此線路利用率不高,信道容量浪費(fèi)較大。主機(jī)前端機(jī)CCT T T T T T T T T T CTTTTTTTT圖1-7 星型網(wǎng)結(jié)構(gòu)示意圖T(2)總線型網(wǎng) 總線型網(wǎng)是從計(jì)算機(jī)的總線訪問(wèn)控制發(fā)展而來(lái)的,它將所有的入網(wǎng)機(jī)通過(guò)分接頭接入一條載波傳輸線上,網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)就是一條傳輸線,如圖1-8所示。其中主機(jī)主要負(fù)責(zé)對(duì)整個(gè)網(wǎng)絡(luò)進(jìn)行管理,同時(shí)對(duì)數(shù)據(jù)進(jìn)行后續(xù)處理。下位機(jī)主要負(fù)責(zé)對(duì)現(xiàn)場(chǎng)數(shù)據(jù)進(jìn)行管理。T為測(cè)試現(xiàn)場(chǎng)的各種測(cè)試模塊??偩€型網(wǎng)絡(luò)的特點(diǎn)是所有入網(wǎng)機(jī)共用一條傳輸信道,信道利用率高,同一時(shí)刻只能有兩處網(wǎng)絡(luò)節(jié)點(diǎn)在相互通信;網(wǎng)絡(luò)延伸距離有限,一般局域網(wǎng)絡(luò)多采用此種方式。主機(jī)分接頭分接頭分接頭下位機(jī)下位機(jī)TTTTTT數(shù)據(jù)鏈路層T圖1-8 總線型網(wǎng)結(jié)構(gòu)示意圖(3)環(huán)型網(wǎng)環(huán)型網(wǎng)通過(guò)一個(gè)轉(zhuǎn)發(fā)器將每臺(tái)入網(wǎng)計(jì)算機(jī)接入網(wǎng)絡(luò),每個(gè)轉(zhuǎn)發(fā)器與相鄰兩臺(tái)轉(zhuǎn)發(fā)器用物理鏈路相連,所有轉(zhuǎn)發(fā)器組成一個(gè)拓?fù)錇榄h(huán)的網(wǎng)絡(luò)系統(tǒng),如圖1-9所示。環(huán)型網(wǎng)由于其點(diǎn)點(diǎn)通信路由的唯一性,因此,不宜在廣域范圍內(nèi)組建網(wǎng)絡(luò)。環(huán)型網(wǎng)主要應(yīng)用于計(jì)算機(jī)群組,對(duì)于要求能夠?qū)崿F(xiàn)全局廣播方式通信的現(xiàn)場(chǎng)網(wǎng)絡(luò)來(lái)說(shuō),環(huán)型網(wǎng)并不具備太大優(yōu)勢(shì)。T TT T CCT T CCT T T T T T 圖1-9 環(huán)型網(wǎng)結(jié)構(gòu)示意圖第2章 PCI總線2.1 PCI總線概述PCI總線的英文全稱(chēng)為Peripheral Component Interconnect。即外部設(shè)備互聯(lián)總線,是于1993年推出的PC局部總線標(biāo)準(zhǔn)。PCI局部總線是一種高性能、32位或64位地址數(shù)據(jù)線復(fù)用的總線。它的用途是在高度集成的外設(shè)控制器器件、擴(kuò)展卡和處理器/存儲(chǔ)器系統(tǒng)之間提供一種內(nèi)部的連接機(jī)構(gòu)。PCI總線是一種不依附于某個(gè)具體處理器的局部總線。從結(jié)構(gòu)上看,PCI是在CPU和原來(lái)的系統(tǒng)總線之間插入的一級(jí)總線,具體由一個(gè)橋接電路實(shí)現(xiàn)對(duì)這一層的管理,并實(shí)現(xiàn)上下之間的接口以協(xié)調(diào)數(shù)據(jù)的傳送。管理器提供了信號(hào)緩沖,使之能支持10種外設(shè),并能在高時(shí)鐘頻率下保持高性能。PCI總線也支持總線主控技術(shù),允許智能設(shè)備在需要時(shí)取得總線控制權(quán),以加速數(shù)據(jù)傳送。PCI器件和擴(kuò)展卡是獨(dú)立于微處理器的,所以在利用未來(lái)微處理器時(shí),PCI也能應(yīng)用,而且還使PCI多處理系統(tǒng)中也能使用。獨(dú)立于微處理器的PCI局部總線能使I/O功能更加優(yōu)化,能使局部總線于微處理器/存儲(chǔ)器子系統(tǒng)同時(shí)工作,并滿足多種高性能要求。PCI總線還定義了由32位數(shù)據(jù)地址總線擴(kuò)充為64位總線的方法,使總線寬度加倍,并對(duì)32位和64位PCI局部總線外設(shè)做到向前和向后兼容。PCI總線的主要特點(diǎn)是傳輸速度高,目前可實(shí)現(xiàn)66M的工作頻率,在64位總線寬度下可達(dá)到突發(fā)(Burst)傳輸速率533MB/s。可以滿足大吞吐量的外設(shè)的需求。采用這種總線類(lèi)型的網(wǎng)卡在當(dāng)前的臺(tái)式機(jī)上相當(dāng)普遍,也是目前最主流的一種網(wǎng)卡接口類(lèi)型。因?yàn)樗腎/O速度遠(yuǎn)比ISA總線型的網(wǎng)卡快(ISA最高僅為33MB/s,而目前的PCI 2.2標(biāo)準(zhǔn)32位的PCI接口數(shù)據(jù)傳輸速度最高可達(dá)133MB/s),所以在這種總線技術(shù)出現(xiàn)后很快就替代了原來(lái)老式的ISA總線。2.2 PCI總線的發(fā)展最早的PC總線是IBM公司1981年在PC/XT 電腦采用的系統(tǒng)總線,它基于8bit的8088 處理器,被稱(chēng)為PC總線或者PC/XT總線。在1984年的時(shí)候,IBM 推出基于16-bit Intel 80286處理器的PC/AT 電腦,系統(tǒng)總線也相應(yīng)地?cái)U(kuò)展為16bit,并被稱(chēng)呼為PC/AT 總線。而為了開(kāi)發(fā)與IBM PC 兼容的外圍設(shè)備,行業(yè)內(nèi)便逐漸確立了以IBM PC總線規(guī)范為基礎(chǔ)的ISA(工業(yè)標(biāo)準(zhǔn)架構(gòu):IndustryStandard Architecture)。ISA 是8/16bit 的系統(tǒng)總線,最大傳輸速率僅為8MB/s ,但允許多個(gè)CPU 共享系統(tǒng)資源。由于兼容性好,它在上個(gè)世紀(jì)80年代是最廣泛采用的系統(tǒng)總線,不過(guò)它的弱點(diǎn)也是顯而易見(jiàn)的,比如傳輸速率過(guò)低、CPU占用率高、占用硬件中斷資源等。后來(lái)在PC98 規(guī)范中,就開(kāi)始放棄了ISA 總線,而Intel 從i810 芯片組開(kāi)始,也不再提供對(duì)ISA 接口的支持。 使用286和386SX以下CPU的電腦似乎和8/16bit ISA 總線還能夠相處融洽,但當(dāng)出現(xiàn)了32-bit 外部總線的386DX處理器之后,總線的寬度就已經(jīng)成為了嚴(yán)重的瓶頸,并影響到處理器性能的發(fā)揮。因此在1988年,康柏、惠普等9個(gè)廠商協(xié)同把ISA 擴(kuò)展到32-bit,這就是著名的EISA(Extended ISA,擴(kuò)展ISA)總線。EISA 總線的工作頻率仍舊僅有8MHz ,并且與8/16bit 的ISA總線完全兼容,由于是32-bit 總線的緣故,帶寬提高了一倍,達(dá)到了32MB/s ??上У氖?,EISA 仍舊由于速度有限,并且成本過(guò)高,在還沒(méi)成為標(biāo)準(zhǔn)總線之前,在20世紀(jì)90年代初的時(shí)候,就給PCI 總線給取代了。CPU 的飛速發(fā)展,ISA/EISA 逐漸顯現(xiàn)出疲態(tài),跟不上時(shí)代的步伐。當(dāng)時(shí)CPU 的速度甚至還高過(guò)總線的速度,造成硬盤(pán)、顯示卡還有其它的外圍設(shè)備只能通過(guò)慢速并且狹窄的瓶頸來(lái)發(fā)送和接受數(shù)據(jù),使得整機(jī)的性能受到嚴(yán)重的

溫馨提示

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

評(píng)論

0/150

提交評(píng)論