談總線之前,首先應(yīng)該明白總線是什么?度娘的完整定義是:總線是計(jì)算機(jī)各種功能部件之間傳送信息的公共通信干線,它是由導(dǎo)線組成的傳輸線束,按照計(jì)算機(jī)所傳輸?shù)男畔⒎N類。
其實(shí),筆者認(rèn)為,總線就是是一種內(nèi)部結(jié)構(gòu),它是cpu、內(nèi)存、輸入、輸出設(shè)備傳遞信息的公用通道。工程師為了簡(jiǎn)化硬件電路設(shè)計(jì)、簡(jiǎn)化系統(tǒng)結(jié)構(gòu),常用一組線路,配置以適當(dāng)?shù)?a target="_blank">接口電路,與各部件和外圍設(shè)備連接,這組共用的連接線路被稱為總線。另外就是采用總線結(jié)構(gòu)便于部件和設(shè)備的擴(kuò)充,尤其制定了統(tǒng)一的總線標(biāo)準(zhǔn)則容易使不同設(shè)備間實(shí)現(xiàn)互連。
總線分類:
1、總線按功能和規(guī)范可分為五大類型:數(shù)據(jù)總線、地址總線、控制總線、擴(kuò)展總線及局部總線。
數(shù)據(jù)總線、地址總線和控制總線也統(tǒng)稱為系統(tǒng)總線,即通常意義上所說(shuō)的總線。常見(jiàn)的數(shù)據(jù)總線為ISA、EISA、VESA、PCI等。
地址總線:是專門用來(lái)傳送地址的,由于地址只能從CPU傳向外部存儲(chǔ)器或I/O端口,所以地址總線總是單向三態(tài)的,這與數(shù)據(jù)總線不同,地址總線的位數(shù)決定了CPU可直接尋址的內(nèi)存空間大小。
控制總線:用來(lái)傳送控制信號(hào)和時(shí)序信號(hào)。控制信號(hào)中,有的是微處理器送往存儲(chǔ)器和I/O接口電路的;也有是其它部件反饋給CPU的,比如:中斷申請(qǐng)信號(hào)、復(fù)位信號(hào)、總線請(qǐng)求信號(hào)、設(shè)備就緒信號(hào)等。
2、按照傳輸數(shù)據(jù)的方式劃分,可以分為串行總線和并行總線。串行總線中,二進(jìn)制數(shù)據(jù)逐位通過(guò)一根數(shù)據(jù)線發(fā)送到目的器件;并行總線的數(shù)據(jù)線通常超過(guò)2根。常見(jiàn)的串行總線有SPI、I2C、USB及RS232等。
3、按照時(shí)鐘信號(hào)是否獨(dú)立,可以分為同步總線和異步總線。同步總線的時(shí)鐘信號(hào)獨(dú)立于數(shù)據(jù),而異步總線的時(shí)鐘信號(hào)是從數(shù)據(jù)中提取出來(lái)的。SPI、I2C是同步串行總線,RS232采用異步串行總線。
4、微機(jī)中總線一般有內(nèi)部總線、系統(tǒng)總線和外部總線。內(nèi)部總線是微機(jī)內(nèi)部各外圍芯片與處理器之間的總線,用于芯片一級(jí)的互連;而系統(tǒng)總線是微機(jī)中各插件板與系統(tǒng)板之間的總線,用于插件板一級(jí)的互連;外部總線則是微機(jī)和外部設(shè)備之間的總線,微機(jī)作為一種設(shè)備,通過(guò)該總線和其他設(shè)備進(jìn)行信息與數(shù)據(jù)交換,它用于設(shè)備一級(jí)的互連。
那么多分類,筆者也只能選擇一種介紹了,就選擇內(nèi)部總線、系統(tǒng)總線和外部總線咯。
內(nèi)部總線
I2C總線:I2C(Inter-IC)總線10多年前由Philips公司推出,是近年來(lái)在微電子通信控制領(lǐng)域廣泛采用的一種新型總線標(biāo)準(zhǔn)。它是同步通信的一種特殊形式,具有接口線少,控制方式簡(jiǎn)化,器件封裝形式小,通信速率較高等優(yōu)點(diǎn)。在主從通信中,可以有多個(gè)I2C總線器件同時(shí)接到I2C總線上,通過(guò)地址來(lái)識(shí)別通信對(duì)象。
SCI總線:串行通信接口SCI也是由Motorola公司推出的。它是一種通用異步通信接口UART,與MCS-51的異步通信功能基本相同。
IIS:I2S(Inter-IC Sound Bus)是飛利浦公司為數(shù)字音頻設(shè)備之間的音頻數(shù)據(jù)傳輸而制定的一種總線標(biāo)準(zhǔn)。I2S有3個(gè)主要信號(hào):1.串行時(shí)鐘SCLK,也叫位時(shí)鐘,即對(duì)應(yīng)數(shù)字音頻的每一位數(shù)據(jù),SCLK有1個(gè)脈沖。2.幀時(shí)鐘LRCK,用于切換左右聲道的數(shù)據(jù)。LRCK為“1”表示正在傳輸?shù)氖亲舐暤赖臄?shù)據(jù),為“0”則表示正在傳輸?shù)氖怯衣暤赖臄?shù)據(jù)。3.串行數(shù)據(jù)SDATA,就是用二進(jìn)制補(bǔ)碼表示的音頻數(shù)據(jù)。有時(shí)為了使系統(tǒng)間能夠更好地同步,還需要另外傳輸一個(gè)信號(hào)MCLK,稱為主時(shí)鐘,也叫系統(tǒng)時(shí)鐘(Sys Clock)。
SPI:SPI(Serial Peripheral Interface:串行外設(shè)接口);SPI是Motorola首先在其MC68HCXX系列處理器上定義的。SPI接口主要應(yīng)用在EEPROM,F(xiàn)LASH,實(shí)時(shí)時(shí)鐘,AD轉(zhuǎn)換器,還有數(shù)字信號(hào)處理器和數(shù)字信號(hào)解碼器之間。SPI接口是以主從方式工作的,這種模式通常有一個(gè)主器件和一個(gè)或多個(gè)從器件,其接口包括以下四種信號(hào):(1)MOSI – 主器件數(shù)據(jù)輸出,從器件數(shù)據(jù)輸入 (2)MISO – 主器件數(shù)據(jù)輸入,從器件數(shù)據(jù)輸出 (3)SCLK – 時(shí)鐘信號(hào),由主器件產(chǎn)生(4)/SS – 從器件使能信號(hào),由主器件控制。
UART:UART(Universal Asynchronous Receiver Transmitter:通用異步收發(fā)器)。將由計(jì)算機(jī)內(nèi)部傳送過(guò)來(lái)的并行數(shù)據(jù)轉(zhuǎn)換為輸出的串行數(shù)據(jù)流。將計(jì)算機(jī)外部來(lái)的串行數(shù)據(jù)轉(zhuǎn)換為字節(jié),供計(jì)算機(jī)內(nèi)部使用并行數(shù)據(jù)的器件使用。在輸出的串行數(shù)據(jù)流中加入奇偶校驗(yàn)位,并對(duì)從外部接收的數(shù)據(jù)流進(jìn)行奇偶校驗(yàn)。在輸出數(shù)據(jù)流中加入啟停標(biāo)記,并從接收數(shù)據(jù)流中刪除啟停標(biāo)記。處理由鍵盤或鼠標(biāo)發(fā)出的中斷信號(hào)(鍵盤和鼠票也是串行設(shè)備)。可以處理計(jì)算機(jī)與外部串行設(shè)備的同步管理問(wèn)題。有一些比較高檔的UART還提供輸入輸出數(shù)據(jù)的緩沖區(qū)。常用TXD,RXD,/RTS,/CTS。
JTAG:JTAG (Joint Test Action Group 聯(lián)合測(cè)試行動(dòng)小組)是一種國(guó)際標(biāo)準(zhǔn)測(cè)試協(xié)議(IEEE1149.1兼容),主要用于芯片內(nèi)部測(cè)試。標(biāo)準(zhǔn)的JTAG接口是4線:TMS、TCK、TDI、TDO,分別為模式選擇、時(shí)鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。測(cè)試復(fù)位信號(hào)(TRST,一般以低電平有效)一般作為可選的第五個(gè)端口信號(hào)。一個(gè)含有JTAGDebug接口模塊的CPU,只要時(shí)鐘正常,就可以通過(guò)JTAG接口訪問(wèn)CPU的內(nèi)部寄存器和掛在CPU總線上的設(shè)備,如FLASH,RAM,內(nèi)置模塊的寄存器,象UART,Timers,GPIO等等的寄存器。
CAN:CAN全稱為“Controller Area Network”,即控制器局域網(wǎng),是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一。最初,CAN被設(shè)計(jì)作為汽車環(huán)境中的微控制器通訊,在車載各電子控制裝置ECU之 間交換信息,形成汽車電子控制網(wǎng)絡(luò)。比如:發(fā)動(dòng)機(jī)管理系統(tǒng)、變速箱控制器、儀表裝備、電子主干系統(tǒng)中,均嵌入CAN控制裝置。一個(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的抗電磁干擾能力。
SDIO:SDIO是SD型的擴(kuò)展接口,除了可以接SD卡外,還可以接支持SDIO接口的設(shè)備,插口的用途不止是插存儲(chǔ)卡。支持 SDIO接口的PDA,筆記本電腦等都可以連接象GPS接收器,Wi-Fi或藍(lán)牙適配器,調(diào)制解調(diào)器,局域網(wǎng)適配器,條型碼讀取器,F(xiàn)M無(wú)線電,電視接收 器,射頻身份認(rèn)證讀取器,或者數(shù)碼相機(jī)等等采用SD標(biāo)準(zhǔn)接口的設(shè)備。
GPIO:GPIO (General Purpose Input Output 通用輸入/輸出)或總線擴(kuò)展器利用工業(yè)標(biāo)準(zhǔn)I2C、SMBus或SPI接口簡(jiǎn)化了I/O口的擴(kuò)展。當(dāng)微控制器或芯片組沒(méi)有足夠的I/O端口,或當(dāng)系統(tǒng) 需要采用遠(yuǎn)端串行通信或控制時(shí),GPIO產(chǎn)品能夠提供額外的控制和監(jiān)視功能。
系統(tǒng)總線
ISA總線:ISA(industrialstandardarchitecture)總線標(biāo)準(zhǔn)是IBM公司1984年為推出PC/AT機(jī)而建立的系統(tǒng)總線標(biāo)準(zhǔn),所以也叫AT總線。它是對(duì)XT總線的擴(kuò)展,以適應(yīng)8/16位數(shù)據(jù)總線要求。它在80286至80486時(shí)代應(yīng)用非常廣泛,以至于現(xiàn)在奔騰機(jī)中還保留有ISA總線插槽。ISA總線有98只引腳。
EISA總線:EISA總線是1988年由Compaq等9家公司聯(lián)合推出的總線標(biāo)準(zhǔn)。它是在ISA總線的基礎(chǔ)上使用雙層插座,在原來(lái)ISA總線的98條信號(hào)線上又增加了98條信號(hào)線,也就是在兩條ISA信號(hào)線之間添加一條EISA信號(hào)線。在實(shí)用中,EISA總線完全兼容ISA總線信號(hào)。
VESA總線:VESA(videoelectronicsstandardassociation)總線是1992年由60家附件卡制造商聯(lián)合推出的一種局部總線,簡(jiǎn)稱為VL(VESAlocalbus)總線。它的推出為微機(jī)系統(tǒng)總線體系結(jié)構(gòu)的革新奠定了基礎(chǔ)。該總線系統(tǒng)考慮到CPU與主存和Cache的直接相連,通常把這部分總線稱為CPU總線或主總線,其他設(shè)備通過(guò)VL總線與CPU總線相連,所以VL總線被稱為局部總線。它定義了32位數(shù)據(jù)線,且可通過(guò)擴(kuò)展槽擴(kuò)展到64位,使用33MHz時(shí)鐘頻率,最大傳輸率達(dá)132MB/s,可與CPU同步工作。是一種高速、高效的局部總線,可支持386SX、386DX、486SX、486DX及奔騰微處理器。
PCI總線:PCI(peripheralcomponentinterconnect)總線是當(dāng)前最流行的總線之一,它是由Intel公司推出的一種局部總線。它定義了32位數(shù)據(jù)總線,且可擴(kuò)展為64位。PCI總線主板插槽的體積比原ISA總線插槽還小,其功能比VESA、ISA有極大的改善,支持突發(fā)讀寫操作,最大傳輸速率可達(dá)132MB/s,可同時(shí)支持多組外圍設(shè)備。PCI局部總線不能兼容現(xiàn)有的ISA、EISA、MCA(microchannelarchitecture)總線,但它不受制于處理器,是基于奔騰等新一代微處理器而發(fā)展的總線。
外部總線
RS-232-C總線:RS-232-C是美國(guó)電子工業(yè)協(xié)會(huì)EIA制定的一種串行物理接口標(biāo)準(zhǔn)。RS是英文“推薦標(biāo)準(zhǔn)”的縮寫,232為標(biāo)識(shí)號(hào),C表示修改次數(shù)。RS-232-C總線標(biāo)準(zhǔn)設(shè)有25條信號(hào)線,包括一個(gè)主通道和一個(gè)輔助通道,在多數(shù)情況下主要使用主通道,對(duì)于一般雙工通信,僅需幾條信號(hào)線就可實(shí)現(xiàn),如一條發(fā)送線、一條接收線及一條地線。RS-232-C標(biāo)準(zhǔn)規(guī)定的數(shù)據(jù)傳輸速率為每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。RS-232-C標(biāo)準(zhǔn)規(guī)定,驅(qū)動(dòng)器允許有2500pF的電容負(fù)載,通信距離將受此電容限制,例如,采用150pF/m的通信電纜時(shí),最大通信距離為15m;若每米電纜的電容量減小,通信距離可以增加。傳輸距離短的另一原因是RS-232屬單端信號(hào)傳送,存在共地噪聲和不能抑制共模干擾等問(wèn)題,因此一般用于20m以內(nèi)的通信。
RS-485總線:在要求通信距離為幾十米到上千米時(shí),廣泛采用RS-485串行總線標(biāo)準(zhǔn)。RS-485采用平衡發(fā)送和差分接收,因此具有抑制共模干擾的能力。加上總線收發(fā)器具有高靈敏度,能檢測(cè)低至200mV的電壓,故傳輸信號(hào)能在千米以外得到恢復(fù)。RS-485采用半雙工工作方式,任何時(shí)候只能有一點(diǎn)處于發(fā)送狀態(tài),因此,發(fā)送電路須由使能信號(hào)加以控制。RS-485用于多點(diǎn)互連時(shí)非常方便,可以省掉許多信號(hào)線。應(yīng)用RS-485可以聯(lián)網(wǎng)構(gòu)成分布式系統(tǒng),其允許最多并聯(lián)32臺(tái)驅(qū)動(dòng)器和32臺(tái)接收器。
IEEE-488總線:IEEE-488總線用來(lái)連接系統(tǒng),如微計(jì)算機(jī)、數(shù)字電壓表、數(shù)碼顯示器等設(shè)備及其他儀器儀表均可用IEEE-488總線裝配起來(lái)。它按照位并行、字節(jié)串行雙向異步方式傳輸信號(hào),連接方式為總線方式,儀器設(shè)備直接并聯(lián)于總線上而不需中介單元,但總線上最多可連接15臺(tái)設(shè)備。最大傳輸距離為20米,信號(hào)傳輸速度一般為500KB/s,最大傳輸速度為1MB/s。
USB總線:通用串行總線USB是由Intel、Compaq、Digital、IBM、Microsoft、NEC、NorthernTelecom等7家世界著名的計(jì)算機(jī)和通信公司共同推出的一種新型接口標(biāo)準(zhǔn)。它基于通用連接技術(shù),實(shí)現(xiàn)外設(shè)的簡(jiǎn)單快速連接,達(dá)到方便用戶、降低成本、擴(kuò)展PC連接外設(shè)范圍的目的。它可以為外設(shè)提供電源,而不像普通的使用串、并口的設(shè)備需要單獨(dú)的供電系統(tǒng)。
另外,汽車電子最近這么火,筆者想談一下汽車網(wǎng)絡(luò)中的LIN與CAN總線:
早在1983年,博世公司開始開發(fā)控制器局域網(wǎng)(CAN)總線,并且在1986年正式發(fā)布相關(guān)協(xié)議。目前有多種不同汽車總線標(biāo)準(zhǔn),但是CAN仍然是最流行的標(biāo)準(zhǔn)。在CAN網(wǎng)絡(luò)中,所有節(jié)點(diǎn)(源于不同的ECU)都擔(dān)當(dāng)主節(jié)點(diǎn)(即,不存在主從拓?fù)浣Y(jié)構(gòu)),而且并不分配具體地址。而是由消息攜帶標(biāo)識(shí)符。
在給定時(shí)間,多個(gè)節(jié)點(diǎn)可以同時(shí)向CAN總線發(fā)送數(shù)據(jù)。然后由消息標(biāo)識(shí)符幫助確定消息的優(yōu)先級(jí)。最高優(yōu)先級(jí)的消息會(huì)使CAN總線進(jìn)入顯性狀態(tài),而所有其他節(jié)點(diǎn)會(huì)停止發(fā)送。這些節(jié)點(diǎn)實(shí)際上是收發(fā)器,除發(fā)送消息之外,其可以根據(jù)特定功能從總線查找特定消息。因此,CAN總線所連接的不同節(jié)點(diǎn)之間會(huì)出現(xiàn)信息流。
由于CAN會(huì)進(jìn)行填充錯(cuò)誤、誤碼、校驗(yàn)和錯(cuò)誤、誤幀以及應(yīng)答錯(cuò)誤等多項(xiàng)錯(cuò)誤檢查, 因此具有高可靠性。CAN支持高達(dá)1Mbps的數(shù)據(jù)傳輸速率,從而成為連接汽車關(guān)鍵功能ECU(如:變速箱、溫度傳感器等)的默認(rèn)選擇。
但汽車為什么選擇LIN?
汽車電子的作用并非僅僅局限于這些關(guān)鍵單元。車身電子市場(chǎng)多年來(lái)一直在增長(zhǎng)。典型車身控制應(yīng)用包括座椅、車窗、智能雨刷以及汽車空調(diào)傳感器等。對(duì)車身電子的關(guān)鍵要求是確保汽車更舒適、更安全。盡管這些系統(tǒng)可能不要求像關(guān)鍵ECU那樣的高安全性,但是它們?nèi)匀恍枰欢ǖ钠嚲W(wǎng)絡(luò)通信標(biāo)準(zhǔn)。
LIN與CAN對(duì)比:
實(shí)現(xiàn)CAN比實(shí)現(xiàn)LIN的成本高。導(dǎo)致CAN成本更高的因素包括:
- CAN網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都需要時(shí)鐘發(fā)生器或晶體;
- CAN的芯片級(jí)實(shí)現(xiàn)起來(lái)更復(fù)雜;
- 采用雙線傳輸。
最重要的是,整個(gè)昂貴的架構(gòu)對(duì)于不需要高可靠性和高數(shù)據(jù)速率的應(yīng)用來(lái)說(shuō)過(guò)于奢侈。
以上就是各類總線大全了,希望對(duì)工程師們有些幫助。
-
芯片
+關(guān)注
關(guān)注
453文章
50387瀏覽量
421783 -
總線
+關(guān)注
關(guān)注
10文章
2866瀏覽量
87981 -
音頻數(shù)據(jù)
+關(guān)注
關(guān)注
0文章
13瀏覽量
9978
原文標(biāo)題:電子工程師常常弄混的總線分類匯總
文章出處:【微信號(hào):FANYPCB,微信公眾號(hào):凡億PCB】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論