詳解嵌入式總線技術(shù)
1. 總線基礎(chǔ)總線(Bus)是計算機各種功能部件之間傳送信息的公共通信干線,它是由導(dǎo)線組成的傳輸線束,按照計算機所傳輸?shù)男畔⒎N類,計算機的總線可以劃分為數(shù)據(jù)總線、地址總線和控制總線,分別用來傳輸數(shù)據(jù)、數(shù)據(jù)地址和控制信號??偩€是一種內(nèi)部結(jié)構(gòu),它是CPU、內(nèi)存、輸入、輸出設(shè)備傳遞信息的公用通道,主機的各個部件通過總線相連接,外部設(shè)備通過相應(yīng)的接口電路再與總線相連接,從而形成了計算機硬件系統(tǒng)。在計算機系統(tǒng)中,各個部件之間傳送信息的公共通路叫總線,微型計算機是以總線結(jié)構(gòu)來連接各個功能部件的。2. 總線的工作原理當(dāng)總線空閑(其他器件都以高阻態(tài)形式連接在總線上)且一個器件要與目的器件通信時,發(fā)起通信的器件驅(qū)動總線,發(fā)出地址和數(shù)據(jù)。其他以高阻態(tài)形式連接在總線上的器件如果收到(或能夠收到)與自己相符的地址信息后,即接收總線上的數(shù)據(jù)。發(fā)送器件完成通信,將總線讓出(輸出變?yōu)楦咦钁B(tài))。3. 總線的分類
本文引用地址:http://butianyuan.cn/article/201808/385513.htmA. 按功能和規(guī)范分。(如圖1所示)
圖1三類總線在微機系統(tǒng)中的地位和關(guān)系
(1) 片總線(Chip Bus, C-Bus) 又稱元件級總線,是把各種不同的芯片連接在一起構(gòu)成特定功能模塊(如CPU模塊)的信息傳輸通路,它的寬度可以是8、16、32或64位。目前比較流行的幾種內(nèi)部總線技術(shù):I2C總線、SCI總線等。
(2) 內(nèi)總線(Internal Bus, I-Bus) 又稱系統(tǒng)總線或板級總線,是微機系統(tǒng)中各插件(模塊)之間的信息傳輸通路。例如CPU模塊和存儲器模塊或I/O接口模塊之間的傳輸通路。常用的有PC總線、AT總線(ISA總線)、PCI總線等。
(3) 外總線(External Bus, E-Bus)
又稱通信總線,是微機系統(tǒng)之間或微機系統(tǒng)與其他系統(tǒng)(儀器、儀表、控制裝置等)之間信息傳輸?shù)耐罚鏓IA RS-232C、IEEE-488等。
其中的系統(tǒng)總線,即通常意義上所說的總線,一般又含有三種不同功能的總線,即數(shù)據(jù)總線DB、地址總線AB和控制總線CB。有的系統(tǒng)中,數(shù)據(jù)總線和地址總線是復(fù)用的,即總線在某些時刻出現(xiàn)的信號表示數(shù)據(jù)而另一些時刻表示地址;而有的系統(tǒng)是分開的。51系列單片機的地址總線和數(shù)據(jù)總線是復(fù)用的,而一般PC中的總線則是分開的。“數(shù)據(jù)總線DB”用于傳送數(shù)據(jù)信息。數(shù)據(jù)總線是雙向三態(tài)形式的總線,即他既可以把CPU的數(shù)據(jù)傳送到存儲器或I/O接口等其它部件,也可以將其它部件的數(shù)據(jù)傳送到CPU。數(shù)據(jù)總線的位數(shù)是微型計算機的一個重要指標(biāo),通常與微處理的字長相一致。例如Intel 8086微處理器字長16位,其數(shù)據(jù)總線寬度也是16位。需要指出的是,數(shù)據(jù)的含義是廣義的,它可以是真正的數(shù)據(jù),也可以是指令代碼或狀態(tài)信息,有時甚至是一個控制信息,因此,在實際工作中,數(shù)據(jù)總線上傳送的并不一定僅僅是真正意義上的數(shù)據(jù)。“地址總線AB”是專門用來傳送地址的,由于地址只能從CPU傳向外部存儲器或I/O端口,所以地址總線總是單向三態(tài)的,這與數(shù)據(jù)總線不同。地址總線的位數(shù)決定了CPU可直接尋址的內(nèi)存空間大小,比如8位微機的地址總線為16位,則其最大可尋址空間為2^16=64KB,16位微型機(x位處理器指一個時鐘周期內(nèi)微處理器能處理的位數(shù)多少,即字長大小)的地址總線為20位,其可尋址空間為2^20=1MB。一般來說,若地址總線為n位,則可尋址空間為2^n字節(jié)。“控制總線CB”用來傳送控制信號和時序信號??刂菩盘栔?,有的是微處理器送往存儲器和I/O接口電路的,如讀/寫信號,片選信號、中斷響應(yīng)信號等;也有是其它部件反饋給CPU的,比如:中斷申請信號、復(fù)位信號、總線請求信號、設(shè)備就緒信號等。因此,控制總線的傳送方向由具體控制信號而定,一般是雙向的,控制總線的位數(shù)要根據(jù)系統(tǒng)的實際控制需要而定。實際上控制總線的具體情況主要取決于CPU。
B. 按傳輸數(shù)據(jù)的方式劃分
可以分為串行總線和并行總線。串行總線中,二進制數(shù)據(jù)逐位通過一根數(shù)據(jù)線發(fā)送到目的器件;并行總線的數(shù)據(jù)線通常超過2根。常見的串行總線有SPI、I2C、USB及RS232等。常見并行總線有VME總線和PCI總線等。串行總線傳輸速度比并行快,并行總線的時鐘一般為33MHz或66MHz。
C. 按時鐘信號是否獨立分
可以分為同步總線和異步總線。同步總線的時鐘信號獨立于數(shù)據(jù),而異步總線的時鐘信號是從數(shù)據(jù)中提取出來的。I2C總線、SPI總線、PCI總線、CPCI總線是同步串行總線,SCI總線、IEEE 488和ANSI X3.131-1986 SCSI總線、VME總線、RS232采用異步串行總線。 4. 總線的主要技術(shù)指標(biāo)
1、總線的帶寬(總線數(shù)據(jù)傳輸速率)
總線的帶寬指的是單位時間內(nèi)總線上傳送的數(shù)據(jù)量,即每鈔鐘傳送MB的最大穩(wěn)態(tài)數(shù)據(jù)傳輸率。與總線密切相關(guān)的兩個因素是總線的位寬和總線的工作頻率,它們之間的關(guān)系:總線的帶寬=總線的工作頻率*總線的位寬/8 或者 總線的帶寬=(總線的位寬/8 )/總線周期
2、總線的位寬
總線的位寬指的是總線能同時傳送的二進制數(shù)據(jù)的位數(shù),或數(shù)據(jù)總線的位數(shù),即32位、64位等總線寬度的概念??偩€的位寬越寬,每秒鐘數(shù)據(jù)傳輸率越大,總線的帶寬越寬。 3、總線的工作頻率
總線的工作時鐘頻率以MHZ為單位,工作頻率越高,總線工作速度越快,總線帶寬越寬。
5. 總線的優(yōu)缺點
采用總線結(jié)構(gòu)的主要優(yōu)點:
1、簡化了硬件的設(shè)計。便于采用模塊化結(jié)構(gòu)設(shè)計方法,面向總線的微型計算機設(shè)計只要按照這些規(guī)定制作cpu插件、存儲器插件以及I/O插件等,將它們連入總線就可工作,而不必考慮總線的詳細(xì)操作。
2、簡化了系統(tǒng)結(jié)構(gòu)。整個系統(tǒng)結(jié)構(gòu)清晰。連線少,底板連線可以印制化。
3、系統(tǒng)擴充性好。一是規(guī)模擴充,規(guī)模擴充僅僅需要多插一些同類型的插件。二是功能擴充,功能擴充僅僅需要按照總線標(biāo)準(zhǔn)設(shè)計新插件,插件插入機器的位置往往沒有嚴(yán)格的限制。
4、系統(tǒng)更新性能好。因為cpu、存儲器、I/O接口等都是按總線規(guī)約掛到總線上的,因而只要總線設(shè)計恰當(dāng),可以隨時隨著處理器的芯片以及其他有關(guān)芯片的進展設(shè)計新的插件,新的插件插到底板上對系統(tǒng)進行更新,其他插件和底板連線一般不需要改。
評論