淺析嵌入式總線(xiàn)技術(shù)的原理、分類(lèi)及技術(shù)指標
1. 總線(xiàn)基礎
本文引用地址:http://dyxdggzs.com/article/201807/384741.htm總線(xiàn)(Bus)是計算機各種功能部件之間傳送信息的公共通信干線(xiàn),它是由導線(xiàn)組成的傳輸線(xiàn)束,按照計算機所傳輸的信息種類(lèi),計算機的總線(xiàn)可以劃分為數據總線(xiàn)、地址總線(xiàn)和控制總線(xiàn),分別用來(lái)傳輸數據、數據地址和控制信號??偩€(xiàn)是一種內部結構,它是CPU、內存、輸入、輸出設備傳遞信息的公用通道,主機的各個(gè)部件通過(guò)總線(xiàn)相連接,外部設備通過(guò)相應的接口電路再與總線(xiàn)相連接,從而形成了計算機硬件系統。在計算機系統中,各個(gè)部件之間傳送信息的公共通路叫總線(xiàn),微型計算機是以總線(xiàn)結構來(lái)連接各個(gè)功能部件的
2. 總線(xiàn)的工作原理
當總線(xiàn)空閑(其他器件都以高阻態(tài)形式連接在總線(xiàn)上)且一個(gè)器件要與目的器件通信時(shí),發(fā)起通信的器件驅動(dòng)總線(xiàn),發(fā)出地址和數據。其他以高阻態(tài)形式連接在總線(xiàn)上的器件如果收到(或能夠收到)與自己相符的地址信息后,即接收總線(xiàn)上的數據。發(fā)送器件完成通信,將總線(xiàn)讓出(輸出變?yōu)楦咦钁B(tài))。
3. 總線(xiàn)的分類(lèi)
A. 按功能和規范分。

圖1三類(lèi)總線(xiàn)在微機系統中的地位和關(guān)系
(1) 片總線(xiàn)(Chip Bus, C-Bus) 又稱(chēng)元件級總線(xiàn),是把各種不同的芯片連接在一起構成特定功能模塊(如CPU模塊)的信息傳輸通路,它的寬度可以是8、16、32或64位。目前比較流行的幾種內部總線(xiàn)技術(shù):I2C總線(xiàn)、SCI總線(xiàn)等。
(2) 內總線(xiàn)(Internal Bus, I-Bus) 又稱(chēng)系統總線(xiàn)或板級總線(xiàn),是微機系統中各插件(模塊)之間的信息傳輸通路。例如CPU模塊和存儲器模塊或I/O接口模塊之間的傳輸通路。常用的有PC總線(xiàn)、AT總線(xiàn)(ISA總線(xiàn))、PCI總線(xiàn)等。
(3) 外總線(xiàn)(External Bus, E-Bus)
又稱(chēng)通信總線(xiàn),是微機系統之間或微機系統與其他系統(儀器、儀表、控制裝置等)之間信息傳輸的通路,如EIA RS-232C、IEEE-488等。
其中的系統總線(xiàn),即通常意義上所說(shuō)的總線(xiàn),一般又含有三種不同功能的總線(xiàn),即數據總線(xiàn)DB、地址總線(xiàn)AB和控制總線(xiàn)CB。有的系統中,數據總線(xiàn)和地址總線(xiàn)是復用的,即總線(xiàn)在某些時(shí)刻出現的信號表示數據而另一些時(shí)刻表示地址;而有的系統是分開(kāi)的。51系列單片機的地址總線(xiàn)和數據總線(xiàn)是復用的,而一般PC中的總線(xiàn)則是分開(kāi)的。“數據總線(xiàn)DB”用于傳送數據信息。數據總線(xiàn)是雙向三態(tài)形式的總線(xiàn),即他既可以把CPU的數據傳送到存儲器或I/O接口等其它部件,也可以將其它部件的數據傳送到CPU。數據總線(xiàn)的位數是微型計算機的一個(gè)重要指標,通常與微處理的字長(cháng)相一致。例如Intel 8086微處理器字長(cháng)16位,其數據總線(xiàn)寬度也是16位。需要指出的是,數據的含義是廣義的,它可以是真正的數據,也可以是指令代碼或狀態(tài)信息,有時(shí)甚至是一個(gè)控制信息,因此,在實(shí)際工作中,數據總線(xiàn)上傳送的并不一定僅僅是真正意義上的數據。“地址總線(xiàn)AB”是專(zhuān)門(mén)用來(lái)傳送地址的,由于地址只能從CPU傳向外部存儲器或I/O端口,所以地址總線(xiàn)總是單向三態(tài)的,這與數據總線(xiàn)不同。地址總線(xiàn)的位數決定了CPU可直接尋址的內存空間大小,比如8位微機的地址總線(xiàn)為16位,則其最大可尋址空間為2^16=64KB,16位微型機(x位處理器指一個(gè)時(shí)鐘周期內微處理器能處理的位數多少,即字長(cháng)大小)的地址總線(xiàn)為20位,其可尋址空間為2^20=1MB。一般來(lái)說(shuō),若地址總線(xiàn)為n位,則可尋址空間為2^n字節。“控制總線(xiàn)CB”用來(lái)傳送控制信號和時(shí)序信號??刂菩盘栔?,有的是微處理器送往存儲器和I/O接口電路的,如讀/寫(xiě)信號,片選信號、中斷響應信號等;也有是其它部件反饋給CPU的,比如:中斷申請信號、復位信號、總線(xiàn)請求信號、設備就緒信號等。因此,控制總線(xiàn)的傳送方向由具體控制信號而定,一般是雙向的,控制總線(xiàn)的位數要根據系統的實(shí)際控制需要而定。實(shí)際上控制總線(xiàn)的具體情況主要取決于CPU。
B. 按傳輸數據的方式劃分
可以分為串行總線(xiàn)和并行總線(xiàn)。串行總線(xiàn)中,二進(jìn)制數據逐位通過(guò)一根數據線(xiàn)發(fā)送到目的器件;并行總線(xiàn)的數據線(xiàn)通常超過(guò)2根。常見(jiàn)的串行總線(xiàn)有SPI、I2C、USB及RS232等。常見(jiàn)并行總線(xiàn)有VME總線(xiàn)和PCI總線(xiàn)等。串行總線(xiàn)傳輸速度比并行快,并行總線(xiàn)的時(shí)鐘一般為33MHz或66MHz。
C. 按時(shí)鐘信號是否獨立分
可以分為同步總線(xiàn)和異步總線(xiàn)。同步總線(xiàn)的時(shí)鐘信號獨立于數據,而異步總線(xiàn)的時(shí)鐘信號是從數據中提取出來(lái)的。I2C總線(xiàn)、SPI總線(xiàn)、PCI總線(xiàn)、CPCI總線(xiàn)是同步串行總線(xiàn),SCI總線(xiàn)、IEEE 488和ANSI X3.131-1986 SCSI總線(xiàn)、VME總線(xiàn)、RS232采用異步串行總線(xiàn)。
4. 總線(xiàn)的主要技術(shù)指標
(1)總線(xiàn)的帶寬(總線(xiàn)數據傳輸速率)
總線(xiàn)的帶寬指的是單位時(shí)間內總線(xiàn)上傳送的數據量,即每鈔鐘傳送MB的最大穩態(tài)數據傳輸率。與總線(xiàn)密切相關(guān)的兩個(gè)因素是總線(xiàn)的位寬和總線(xiàn)的工作頻率,它們之間的關(guān)系:總線(xiàn)的帶寬=總線(xiàn)的工作頻率*總線(xiàn)的位寬/8 或者 總線(xiàn)的帶寬=(總線(xiàn)的位寬/8 )/總線(xiàn)周期
(2)總線(xiàn)的位寬
總線(xiàn)的位寬指的是總線(xiàn)能同時(shí)傳送的二進(jìn)制數據的位數,或數據總線(xiàn)的位數,即32位、64位等總線(xiàn)寬度的概念??偩€(xiàn)的位寬越寬,每秒鐘數據傳輸率越大,總線(xiàn)的帶寬越寬。
(3)總線(xiàn)的工作頻率
總線(xiàn)的工作時(shí)鐘頻率以MHZ為單位,工作頻率越高,總線(xiàn)工作速度越快,總線(xiàn)帶寬越寬。
5. 總線(xiàn)的優(yōu)缺點(diǎn)
采用總線(xiàn)結構的主要優(yōu)點(diǎn):
1、簡(jiǎn)化了硬件的設計。便于采用模塊化結構設計方法,面向總線(xiàn)的微型計算機設計只要按照這些規定制作cpu插件、存儲器插件以及I/O插件等,將它們連入總線(xiàn)就可工作,而不必考慮總線(xiàn)的詳細操作。
2、簡(jiǎn)化了系統結構。整個(gè)系統結構清晰。連線(xiàn)少,底板連線(xiàn)可以印制化。
3、系統擴充性好。一是規模擴充,規模擴充僅僅需要多插一些同類(lèi)型的插件。二是功能擴充,功能擴充僅僅需要按照總線(xiàn)標準設計新插件,插件插入機器的位置往往沒(méi)有嚴格的限制。
4、系統更新性能好。因為cpu、存儲器、I/O接口等都是按總線(xiàn)規約掛到總線(xiàn)上的,因而只要總線(xiàn)設計恰當,可以隨時(shí)隨著(zhù)處理器的芯片以及其他有關(guān)芯片的進(jìn)展設計新的插件,新的插件插到底板上對系統進(jìn)行更新,其他插件和底板連線(xiàn)一般不需要改。
5、便于故障診斷和維修。用主板測試卡可以很方便找到出現故障的部位,以及總線(xiàn)類(lèi)型。
采用總線(xiàn)結構的缺點(diǎn): 1、利用總線(xiàn)傳送具有分時(shí)性。當有多個(gè)主設備同時(shí)申請總線(xiàn)的使用是必須進(jìn)行總線(xiàn)的仲裁。 2、總線(xiàn)的帶寬有限,如果連接到總線(xiàn)上的個(gè)硬件設備沒(méi)有資源調控機制容易造成信息的延時(shí)(這在某些即時(shí)性強的地方是致命的)。
3、連到總線(xiàn)上的設備必須有信息的篩選機制,要判斷該信息是否是傳給自己的。
嵌入式總線(xiàn)技術(shù)分類(lèi)
一、 內部總線(xiàn)、系統總線(xiàn)和外部總線(xiàn)
1、內部總線(xiàn)
Internal Bus :將處理器的所有結構單元內部相連。它的寬度可以是8、16、32、或64位。目前比較流行的幾種內部總線(xiàn)技術(shù):
I2C總線(xiàn)
I2C(Inter-IC)總線(xiàn)10多年前由Philips公司推出,是近年來(lái)在微電子通信控制領(lǐng)域廣泛采用的一種新型總線(xiàn)標準。它是同步通信的一種特殊形式,具有接口線(xiàn)少,控制方式簡(jiǎn)化,器件封裝形式小,通信速率較高等優(yōu)點(diǎn)。在主從通信中,可以有多個(gè)I2C總線(xiàn)器件同時(shí)接到I2C總線(xiàn)上,通過(guò)地址來(lái)識別通信對象。 SPI總線(xiàn)
串行外圍設備接口SPI(serial peripheral interface)總線(xiàn)技術(shù)是Motorola公司推出的一種同步串行接口。Motorola公司生產(chǎn)的絕大多數MCU(微控制器)都配有SPI硬件接口,如68系列MCU。SPI總線(xiàn)是一種三線(xiàn)同步總線(xiàn),因其硬件功能很強,所以,與SPI有關(guān)的軟件就相當簡(jiǎn)單,使CPU有更多的時(shí)間處理其他事務(wù)。 SCI總線(xiàn)
串行通信接口SCI(serial communicaTIon interface)也是由Motorola公司推出的。它是一種通用異步通信接口UART,與MCS-51的異步通信功能基本相同。
2、系統總線(xiàn)
系統總線(xiàn)又稱(chēng)內總線(xiàn)或板級總線(xiàn)。因為該總線(xiàn)是用來(lái)連接微機各功能部件而構成一個(gè)完整微機系統的,所以稱(chēng)之為系統總線(xiàn)。常用的有PC總線(xiàn)、AT總線(xiàn)(ISA總線(xiàn))、PCI總線(xiàn)等。
系統總線(xiàn)上傳送的信息包括數據信息、地址信息、控制信息,因此,系統總線(xiàn)包含有三種不同功能的總線(xiàn),即數據總線(xiàn)DB(Data Bus)、地址總線(xiàn)AB(Address Bus)和控制總線(xiàn)CB(Control Bus)
目前比較流行的幾種系統總線(xiàn)技術(shù): ISA總線(xiàn)
ISA(industrial standard architecture)總線(xiàn)標準是IBM 公司1984年為推出PC/AT機而建立的系統總線(xiàn)標準,所以也叫AT總線(xiàn)。它是對XT總線(xiàn)的擴展,以適應8/16位數據總線(xiàn)要求。它在80286至80486時(shí)代應用非常廣泛,以至于現在奔騰機中還保留有ISA總線(xiàn)插槽。ISA總線(xiàn)有98只引腳。
評論