總線的三種控制方式:串行鏈接、定時查尋和獨(dú)立請求。1.串行鏈接方式
在串行鏈接方式下,總線使用權(quán)的分配通過三根控制線來實(shí)現(xiàn):總線可用、總線請求和總線忙信號線,如圖3.5所示。所有的功能部件經(jīng)過一條公共的總線請求信號線向總線控制器發(fā)出要求使用總線的請求,控制器收到總線申請后,首先檢查總線忙信號線,只有當(dāng)總線處于空閑狀態(tài)時,總線請求才能被總線控制器響應(yīng),此時,送出總線可用的回答信號,該信號串行地通過每個部件。未發(fā)出總線請求的部件在接收到總線可用信號時將其傳送給下一個功能部件;發(fā)出請求的部件在收到總線可用信號后就停止傳送該信號,并開始建立總線忙信號,并去除總線請求信號,開始總線操作。在數(shù)據(jù)傳送期間,總線忙信號維持總線可用信號的建立。完成數(shù)據(jù)傳送后,部件除去總線忙信號,總線可用信號也隨之去除。此后若有總線請求,則再次開始總線分配過程。
可見,這種方式使使用總線的優(yōu)先次序完全由總線可用線所接部件的物理位置來決定,離總線控制器越近的部件其獲得總線使用權(quán)的優(yōu)先級別越高,越遠(yuǎn)的部件優(yōu)先級別越低。
串行鏈接方式的主要優(yōu)點(diǎn)是總線裁決算法很簡單,用于控制總線分配的線數(shù)很少,而且與掛接在總線上的部件的數(shù)量無關(guān),易于擴(kuò)充設(shè)備。但這種方式由于優(yōu)先級是固定的,靈活性較差,不能由軟件改變優(yōu)先級,如果級別高的部件頻繁使用總線時,優(yōu)先級低的部件可能很久也得不到響應(yīng)。又由于總線可用信號串行地通過各個部件,這限制了總線分配的速度;在總線可用信號傳輸?shù)倪^程中,如果第I個部件發(fā)生故障,在其后的所有部件將主永遠(yuǎn)得不到總線的使用權(quán),即對硬件的失效很敏感。在總線上增加、去除或移動部件也要受總線長度的限制。
本文引用地址:http://m.butianyuan.cn/article/201612/330340.htm2.定時查詢方式
圖3.6為采用查詢方式的集中式總線控制方式。查詢方式的原理是在總線控制器中設(shè)置一個查詢計數(shù)器。由控制器輪流地對各部件進(jìn)行測試,看其是否發(fā)出總線請求。當(dāng)總線控制器收到申請總線的信號后,計數(shù)器開始計數(shù),如果申請部件編號與計數(shù)器輸出一致,則計數(shù)器停止計數(shù),該部件可以獲得總線使用權(quán),并建立總線忙信號,然后開始總線操作。使用完畢后,撤消總線忙信號,釋放總線,若此時還有總線請求信號,控制器繼續(xù)進(jìn)行輪流查詢,開始下一個總線分配過程。
計數(shù)器的值可以每次從“0”開始計數(shù),這時部件的優(yōu)先級類似于串行鏈接方式;如果計數(shù)器的值每次從上次的中止點(diǎn)開始計數(shù),則是一種循環(huán)優(yōu)先級,每個部件獲得總線使用權(quán)的機(jī)會均相等;計數(shù)器的值還可以通過程序的方法來改變,在每次總線分配前賦予計數(shù)器一個起始值,同樣,部件號也可以由程序置定,這樣部件的優(yōu)先級有較靈活的改變。
查詢方式是用計數(shù)查詢線代替了串行鏈接方式的總線可用信號線,這樣不會因某一部件的故障而引起其他部件獲得總線的使用權(quán),故可靠性比較高。但查詢線的數(shù)目限制了總線上可掛接的部件數(shù)目,擴(kuò)充性較差,而且控制較為復(fù)雜,總線的分配速度取決于計數(shù)信號的頻率和部件數(shù),速度仍然不會很高。
3.獨(dú)立請求方式
每個部件都有各自的一對總線請求和總線允許線,各部件可以獨(dú)立地向控制器發(fā)出總線請求,總線已被分配信號線是所有部件公用的,如圖3.7所示。當(dāng)部件要申請使用總線時,送總線請求信號到總線控制器,如果總線已被分配信號線還未建立,即總線空閑時,總線控制器按照某種算法對同時送來的請求進(jìn)行裁決,確定響應(yīng)哪個部件發(fā)來的總線請求,然后返回這個部件相應(yīng)的總線允許信號,部件得到總線允許信號后,去除其請求,建立總線已被分配信號,這次的總線分配結(jié)束,直至該部件傳輸完數(shù)據(jù),撤消總線已被分配信號,經(jīng)總線控制器去除總線準(zhǔn)許信號,可以接受新的申請信號,開始下一次的總線分配。
這種方式的總線分配速度快,各模塊優(yōu)先級的確定靈活,既可以采用優(yōu)先級固定法,也可通過程序改變優(yōu)先次序,還可通過屏蔽禁止某個請求,也能方便地不響應(yīng)來自己知失效或可能失效的部件發(fā)出的請求,但這是以增加總線控制器的復(fù)雜性和控制線的數(shù)目為代價的。
選擇題
測試3.1.5總線控制機(jī)構(gòu)為解決N個部件使用總線時優(yōu)先次序的裁決,集中式定時查詢,需另外增加控制線根數(shù)為( )。
A. 3B. 2N十1
C. 2十「log2N」D. N十2
參考答案:3.1.5C
填空題
測試3.2.4總線的控制方式分為(1)和(2)。
參考答案:3.2.4(1)集中式控制 (2)分布式控制
測試3.2.7
總線總裁算法有:靜態(tài)優(yōu)先級算法、(1)、動態(tài)優(yōu)先級算法和先來先服務(wù)算法。
參考答案:3.2.7(1)固定時間片算法
問答題
測試3.4.2總線控制方式有哪3種?各需要增加幾根用于總線控制的控制線?總線控制優(yōu)先級的靈活性如何?
參考答案:3.4.2
總線控制方式有串行鏈接、定時查詢和獨(dú)立請求3種。串行鏈接需增加3根控制線,優(yōu)先級線連固定,無靈活性;定時查詢需增加2十「log2N」根控制線,優(yōu)先級可用程序改變,靈活;獨(dú)立請求需增加2N+l根控制線,優(yōu)先級可用程序改變,靈活。串行鏈接需增加3根控制線,優(yōu)先級線連固定,無靈活性。定時查詢需增加2十「log2N」根控制線,優(yōu)先級可用程序改變,靈活;獨(dú)立請求需增加2N+l根控制線,優(yōu)先級可用程序改變,靈活。
評論