計算機原理與設(shè)計王保恒-16214CH6-2005



《計算機原理與設(shè)計王保恒-16214CH6-2005》由會員分享,可在線閱讀,更多相關(guān)《計算機原理與設(shè)計王保恒-16214CH6-2005(108頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、第六章輸入輸出(I/O)控制,何謂I/O控制:對I/O操作的軟、硬件管理。,本章主要從硬件角度討論I/O控制。從軟件角度討論I/O控制是操作系統(tǒng)(OS由作業(yè)管理、進程管理、存儲管理、設(shè)備管理、文件管理五部分構(gòu)成)的主要內(nèi)容之一。,本章主要內(nèi)容:外設(shè)簡介I/O控制的有關(guān)問題程序直接控制傳送中斷系統(tǒng)及程序中斷控制傳送直接內(nèi)存存取DMA(DirectMemoryAccess)I/O通道(I/OCHannel),6.1外圍設(shè)備簡介,外圍設(shè)備亦稱I/O設(shè)備,簡稱外設(shè)PD/PE(PeripheralDevice/Equipment)。,何謂外設(shè):安裝在主機周圍,與主機進行信息交換,并改變信息形態(tài)的裝置。,
2、6.1.1外設(shè)分類,1.按使用類型分通用設(shè)備:鍵盤、鼠標、顯示器、打印機外存儲器、繪圖儀、繪圖機、通用終端等等。專用設(shè)備:聲音輸入、聲音輸出、觸摸屏、手寫筆、A/D、D/A、數(shù)傳機、調(diào)制解調(diào)器(Modullator)、網(wǎng)絡(luò)橋接器(Bridge)、網(wǎng)關(guān)(Gateway)、專用終端等等。,2.按功能分,輸入設(shè)備:鍵盤、鼠標、觸摸屏、掃描儀等輸出設(shè)備:顯示器、打印機、記錄儀、繪圖機等外存儲器:硬盤、光盤、軟盤、磁帶等,網(wǎng)絡(luò)通信及終端設(shè)備:數(shù)傳機、調(diào)制解調(diào)器、網(wǎng)絡(luò)橋接器、路由器、網(wǎng)關(guān)和各種終端設(shè)備。,簡單終端:具有人機對話和簡單的輸入輸出功能,通常配有鍵盤、顯示器、打印機智能終端:除具有簡單終端的功能
3、外,還具有數(shù)據(jù)處理功能。通常配有鍵盤、顯示器、打印機和處理機,配備管理軟件和用戶程序。專用終端:專作某種工作,完成單一功能。,模數(shù)轉(zhuǎn)換設(shè)備:A/D、D/A,6.1.2外設(shè)在計算機系統(tǒng)中的地位與作用,1.外設(shè)是計算機系統(tǒng)重要組成部分相當于計算機的五官四肢,沒有,計算機不能運轉(zhuǎn);不全或性能不好,計算機效率低。,2.人機通信和對話的工具了解機器運行狀態(tài);進行故障診斷檢測;控制、命令計算機。都要通過外設(shè)。如:鍵盤、鼠標、顯示器。,3.不同媒體間信息變換的裝置,4.系統(tǒng)軟件及信息資源的駐留地,5.推廣應(yīng)用的橋梁,6.1.3外設(shè)與主機的連接方式,除外存儲器在輸入輸出設(shè)備與設(shè)備控制器之間必須加驅(qū)動器外,其它
4、外設(shè)與主機的連接方式如圖6.1P317,I/O控制主要講授的就是上圖中的輸入輸出系統(tǒng)接口。該系統(tǒng)接口將因設(shè)備的不同、主機的要求不同而存在很大差別。,磁盤存儲器與主機的鏈接方式,6.2.1I/O設(shè)備和I/O操作的特點,1.I/O設(shè)備的特點,慢速性:I/O是機電、機械設(shè)備裝置,其速度為ms/s,甚至為S(秒)級;而主機,尤其是CPU卻是ns秒級。兩者速度差異很大,所以I/O是影響計算機系統(tǒng)工作效率的兩大瓶頸之一。,多樣性:品種多、功能強、涉及學科領(lǐng)域多,如機械、光電、磁、聲、自動控制、通信等。,復雜性:外設(shè)品種多、差異大;體積大小懸殊;工作原理相差極大;簡單到鼠標,復雜到磁盤、光盤、激光打印機。,
5、6.2.1I/O設(shè)備和I/O操作的特點,2.I/O操作的特點,異步性:主機與外設(shè),外設(shè)與外設(shè)速度差異很大,導致CPU對外設(shè)的控制,外設(shè)對CPU的請求都將是隨機的、異步的。,實時性:外設(shè)速度慢,但一經(jīng)啟動,則以固定速率工作,要求主機在規(guī)定的時間內(nèi)完成信息交換,I/O操作的實現(xiàn)與設(shè)備的無關(guān)性:外設(shè)雖多種多樣,但I/O操作應(yīng)盡量標準化,使I/O操作的實現(xiàn)與設(shè)備無關(guān)。即:通過簡單的命令即可使用外設(shè)并完成I/O操作盡可能少的考慮外設(shè)的內(nèi)部細節(jié),而是將外設(shè)的內(nèi)部細節(jié)隱藏在各自的設(shè)備控制器和接口的可變部分中。,6.2.2四級I/O子系統(tǒng)和三級I/O子系統(tǒng),何謂I/O子系統(tǒng):完成I/O操作的所有軟件和硬件,1
6、.四級I/O子系統(tǒng)的結(jié)構(gòu)(P319),主機部分:只和I/O通道打交道,其功能為:發(fā)出查詢通道或外設(shè)的I/O指令。發(fā)出啟停通道的I/O指令,處理通道的請求。,1.四級I/O子系統(tǒng)的結(jié)構(gòu),I/O通道:它是系統(tǒng)級接口的一種,其功能為:代替CPU調(diào)度,管理和控制外設(shè)工作。即啟停I/O、使I/O工作、接收并寄存I/O狀態(tài)、向CPU提出I/O通道請求,設(shè)備控制器DC控制一臺或多臺外設(shè)實現(xiàn)I/O的操作(如:讀、寫、打印等)和I/O的輔助操作(如:定位、走紙、尋道、歸零等)。設(shè)備不同,DC也不同但都以標準方式與通道連接,外設(shè)PD/PE(PeripheralDevice/Equipment):外設(shè)可為1臺外設(shè)、
7、1個終端或另1臺計算機,2.三級I/O子系統(tǒng)的結(jié)構(gòu)(P320),采用CPU中I/O邏輯、I/O接口和外設(shè)三級層次,2.三級I/O子系統(tǒng)的結(jié)構(gòu)(P320),CPU中的I/O邏輯:其功能為發(fā)出啟停、查詢、使用外設(shè)的I/O的指令。接收并處理接口請求。,I/O接口(指程序直接控制傳送、程序中斷控制傳送和DMA傳送接口)的功能為將CPU啟停、查詢、使用外設(shè)的I/O指令送PD控制數(shù)據(jù)交換。接收、寄存I/O狀態(tài)和請求,并送CPU。,PD及其控制器控制一臺外設(shè)實現(xiàn)I/O操作及輔助操作,注意:三級子系統(tǒng)中設(shè)備控制器被分割:標準公共的部分在I/O接口中,非標準的部分在PD中。,3.直接內(nèi)存存取方式DMA(Dire
8、ctMemoryAccess),6.2.3I/O控制的類型(P320P321),1.程序直接控制方式PDC(ProgramDirectControl),2.程序中斷傳送方式PIT(ProgramInterrputTransfer),4.I/O通道控制方式I/OCH(I/OCHannelcontrol),主機專用于高速運算,PPU專伺于I/O控制。PPU除完成I/O控制外,還進行碼制變換,數(shù)據(jù)糾檢錯,控制通信,維護分析。計算機系統(tǒng)結(jié)構(gòu)由集中式發(fā)展為分布式系統(tǒng),6.2.3I/O控制的類型(P320P321),5.外圍處理機方式PPU(PeripheralProcessorUnit),何謂PPU:用
9、具有豐富指令系統(tǒng)和相當容量主存的小型機作I/O控制。稱該小型機為PPU。特點:,如YH2使用三臺小型機,兩臺VAX11/780用于管理I/O,一臺VAXII用于維護診斷I/O。,6.2.4輸入輸出(I/O)接口,實現(xiàn)主機與外設(shè)的通信和控制,何謂I/O接口:亦稱輸入輸出系統(tǒng)接口,即主機和外設(shè)間的接口。,1.I/O接口的功能和組成,尋址功能,數(shù)據(jù)格式轉(zhuǎn)換和電平變換,數(shù)據(jù)緩存和傳送數(shù)據(jù),提供外設(shè)和接口狀態(tài),P325,6.2.4輸入輸出(I/O)接口,按接口與設(shè)備之間的傳輸寬度分類并行接口和串行接口,2.I/O接口的分類,按主機與外設(shè)通信控制方式分類同步接口和異步接口,按信息傳送的控制方式分類程序直接
10、控制傳送接口程序中斷控制傳送接口DMA接口I/O通道,按接口的連線方式分類硬線連接并行接口可編程連接并行接口,I/O控制的類型PDC、PIT、DMA、I/OCH控制方式不同,接口組成亦存在很大差別。,6.2.4輸入輸出(I/O)接口,3.影響I/O接口結(jié)構(gòu)組成的因素,數(shù)據(jù)的傳送方式是串行傳送還是并行傳送,是用數(shù)據(jù)緩沖存儲器還是數(shù)據(jù)緩沖寄存器,這些均將導致控制邏輯的不同。,通信控制方式同步通信:發(fā)送端與接收端有統(tǒng)一的時鐘,可同步工作。異步通信:發(fā)送端與接收端無統(tǒng)一的時鐘,采用應(yīng)答控制方式工作。,傳送信息的種類通過接口傳送信息的種類將因外設(shè)的不同而異。有的多,有的少,必將影響接口的組成。,3.影響
11、I/O接口結(jié)構(gòu)組成的因素,設(shè)備地址:外部設(shè)備編號,選擇設(shè)備用(各外設(shè)均有)。設(shè)備內(nèi)部所需地址:磁盤的柱面、盤面、扇區(qū);磁帶組組號。(不是所有設(shè)備都有),要讀或要寫的數(shù)據(jù):(各外設(shè)均有)。,設(shè)備狀態(tài)信息:忙/閑、良/故、檢驗錯、尋道錯。(不同設(shè)備有多有少),控制設(shè)備的信息:讀、寫、走紙、走帶、找道。(不同設(shè)備有多有少),6.2.5輸入輸出(I/O)指令,何謂I/O指令:CPU控制、使用PD的指令。,操作碼:指出執(zhí)行什么操作,通常操作為查詢通道和外設(shè)狀態(tài)或啟動和停止通道。,首控制字地址:通道程序(CHP)第1條CCW的首地址,啟動通道的I/O指令使用,1.獨立編址的I/O指令。即在CPU的指令系統(tǒng)
12、中,專設(shè)一類I/O指令。該類指令僅供外設(shè)使用,分為兩種。,通道I/O指令(P326),Reg:查詢時存放通道和外設(shè)的狀態(tài)信息,非通道I/O指令,1.獨立編址的I/O指令。,操作碼:不同的計算機此字段的意義不同。有的指出執(zhí)行什么操作,如讀寫、查詢外設(shè)狀態(tài)、走紙等;有的只是用來區(qū)別是I/O指令還是其它類型指令。,Reg:指出與操作有關(guān)的CPU寄存器。如操作為查詢外設(shè)狀態(tài),則Reg存放外設(shè)的狀態(tài)信息;如操作為讀數(shù)據(jù)到CPU,則該Reg存放從外設(shè)讀入的數(shù)據(jù)。,控制命令碼:指出對設(shè)備如何控制,如啟停、落筆、繪圖、掃描、走紙等。若操作碼只用來區(qū)別是I/O指令還是其它類型指令,則外設(shè)的所有操作均由該字段指出
13、。,2.統(tǒng)一編址的I/O指令,用訪存指令代替I/O指令。此時訪問的不是主存中的存儲單元,而是外設(shè)接口或其設(shè)備控制器中的寄存器,每個寄存器相當于1個存儲單元,這些單元在主存中是不存在的,是虛設(shè)的,但占用主存地址,與主存地址統(tǒng)一編址。通常1個設(shè)備至少要分配3個存儲單元,即,數(shù)據(jù)存儲單元:即接口或設(shè)備控制器(DC)中的數(shù)據(jù)寄存器??勺x出,可寫入。狀態(tài)存儲單元:即接口或DC中的狀態(tài)寄存器。只讀??刂拼鎯卧?即接口或DC中的控制寄存器。只寫。,是一種無需判斷I/O設(shè)備良/故、忙/閑與否即可操作的方式。軟硬件均很簡單。,6.3程序直接控制傳送,6.3.1無條件傳送方式,軟件只需一條I/O指令,硬件僅需一
14、個或幾個數(shù)據(jù)緩沖寄存器。,適用于定時采樣或?qū)刂泣c的定時控制。如對時鐘設(shè)備的計數(shù)。,程序直接控制傳送的特點是I/O操作完全處于CPU指令的控制之下,I/O操作都是在CPU寄存器與外設(shè)接口中寄存器之間進行,I/O設(shè)備不能直接訪問內(nèi)存。分為兩種方式:,6.3.2程序查詢傳送方式1.程序查詢傳送接口,見P328圖6.5。,6.3.2程序查詢傳送方式2.程序查詢傳送的程序流程圖(P329),6.4.1中斷的有關(guān)問題,1.何謂中斷:CPU暫時中止現(xiàn)行程序,轉(zhuǎn)去執(zhí)行“處理隨機發(fā)生的緊急事件或特殊請求”的程序,處理完后自動返回被中止的程序繼續(xù)運行的功能。,2.何謂中斷系統(tǒng)(InterruptSystem):
15、計算機實現(xiàn)中斷功能的軟硬件總稱,3個名詞術(shù)語:,3.中斷源(InterruptSource):引起處理機中斷的事件,稱之為中斷源。,1.中斷的作用(P331),6.4.1中斷的有關(guān)問題,實現(xiàn)主機與外設(shè),外設(shè)與外設(shè)的并行工作,實現(xiàn)故障的處理:如掉電、除數(shù)為“0”,非法操作碼、打印機無紙等。,實現(xiàn)多道程序和分時操作。,實現(xiàn)實時控制:受控對象靠中斷把有關(guān)參數(shù)(爐溫、濕度、速度等)和反饋信號送主機。,實現(xiàn)人機聯(lián)系與通信,自愿中斷:在程序中預(yù)先安排的由廣義(亦稱自愿進管)指令引起的中斷。這種中斷是預(yù)知的,是可重現(xiàn)的中斷。,2.中斷的類型(P332P333),自愿中斷和強迫中斷,何謂廣義指令:由特殊的轉(zhuǎn)移
16、指令和若干參數(shù)組成。如:自愿進管指令,了解外設(shè)、使用外設(shè)指令。它為操作系統(tǒng)編寫通道程序提供必要信息。,強迫中斷:不是在程序中預(yù)先安排的,而是隨機產(chǎn)生的中斷。這種中斷是不可預(yù)知的。,6.4.1中斷的有關(guān)問題,2.中斷的類型(P332P333),內(nèi)中斷:由主機內(nèi)部軟件和硬件原因引起的中斷硬件故障中斷:電源掉電、各種校驗錯等。陷阱(Trap):又稱程序性中斷。由于程序本身運行的原因引起的中斷。如:非法操作碼、階碼溢出、除數(shù)為“0”、棧溢出、缺頁、地址越界、調(diào)度中斷等,一般一定會重復。,內(nèi)中斷和外中斷,外中斷:主機以外的部件引起的中斷。如:I/O傳輸中斷、I/O故障中斷、時鐘中斷等,注意:操作系統(tǒng)中的
17、異常,包括自愿中斷和陷阱,單重中斷系統(tǒng):執(zhí)行中斷服務(wù)程序時,不能再響應(yīng)其它中斷的系統(tǒng)稱單重中斷系統(tǒng)。多重中斷系統(tǒng):執(zhí)行中斷服務(wù)程序時,還可響應(yīng)更高優(yōu)先級中斷的系統(tǒng)稱多重中斷系統(tǒng),2.中斷的類型(P332P333),.單重中斷系統(tǒng)和多重中斷系統(tǒng),可屏蔽中斷和不可屏蔽中斷。,不可屏蔽中斷:必須處理的、不能回避的中斷。如:掉電中斷,可屏蔽中斷:可不響應(yīng)或暫不響應(yīng),或有條件的響應(yīng)的中斷。,3.中斷系統(tǒng)應(yīng)解決的問題,6.4.1中斷的有關(guān)問題,接收并保存中斷請求(硬件完成),進行中斷判優(yōu)(軟、硬件均可),實施中斷響應(yīng)(硬件完成),實現(xiàn)中斷處理(軟件完成),返回被暫停(中止)的程序(軟件完成IRET)。,4
18、.中斷的全過程(五個階段),中斷請求,中斷判優(yōu),中斷響應(yīng),中斷處理,中斷返回,軟件判優(yōu)時兩步合為一步,軟件實現(xiàn),6.4.1中斷的有關(guān)問題,注意:自愿中斷是在程序中預(yù)先安排的,其過程只有中斷響應(yīng)、中斷處理和中斷返回三個階段,6.4.2中斷系統(tǒng)的結(jié)構(gòu)組成,1.接收并保存中斷請求的寄存器(3個),中斷寄存器每個中斷源需設(shè)1位中斷觸發(fā)器,所有中斷源的中斷觸發(fā)器組成中斷寄存器。,功能:寄存隨機產(chǎn)生的中斷,觸發(fā)器為“1”表示有中斷,“0”表示無中斷。稱中斷寄存器的內(nèi)容為中斷編碼或中斷字。,不可屏蔽中斷由中斷寄存器發(fā)出中斷請求。,中斷屏蔽寄存器每個可屏蔽中斷源又設(shè)1個中斷屏蔽觸發(fā)器,所有可屏蔽中斷源的中斷屏
19、蔽觸發(fā)器組成中斷屏蔽寄存器。,1.接收并保存中斷請求的寄存器,功能:控制相應(yīng)中斷觸發(fā)器是否發(fā)出中斷請求。“1”表示封鎖相應(yīng)位的中斷請求,“0”表示允許相應(yīng)位發(fā)出中斷請求。稱其內(nèi)容為中斷屏蔽碼。,功能:可屏蔽中斷由中斷請求寄存器發(fā)出中斷請求。觸發(fā)器為“1”表示已發(fā)出中斷請求,為“0”表示未發(fā)出中斷請求。只有屏蔽觸發(fā)器為“0”時,中斷請求寄存器才可能為“1”。,中斷請求寄存器每個可屏蔽中斷源還設(shè)1個中斷請求觸發(fā)器,所有可屏蔽中斷源的中斷請求觸發(fā)器組成中斷請求寄存器。,中斷排隊:按中斷的性質(zhì)和請求處理的輕重緩急,給中斷源排出中斷響應(yīng)的先后次序。,2.完成中斷判優(yōu)的部件或軟件,幾個名詞和術(shù)語,中斷優(yōu)先
20、權(quán)INTP(INTerruptPriority):中斷響應(yīng)的先后次序,中斷判優(yōu):通過中斷排隊,從中選出需優(yōu)先處理的中斷源。,注意:中斷優(yōu)先權(quán)在中斷系統(tǒng)設(shè)計時,就已考慮好,一般在程序運行中不變。但系統(tǒng)程序員可通過改變屏蔽碼,確定或變更個別中斷的優(yōu)先權(quán)。,當中斷源很多時,通常按中斷性質(zhì)和請求處理的輕重緩急分級,每級包含若干中斷源。P335圖6.7示出某計算機分3級,每級八個中斷源。處于同一級的中斷,其優(yōu)先權(quán)為左高右低。不同級的中斷源由系統(tǒng)決定級別的高低。,中斷源分級:,硬件判優(yōu)線路,最左判優(yōu)電路(P336圖6.8),鏈型排隊電路(P336圖6.9),中斷判優(yōu)線路,軟件判優(yōu)(P337圖6.10):軟
21、件判優(yōu)是通過執(zhí)行中斷查詢程序?qū)ふ覂?yōu)先中斷源,而后轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序,中斷判優(yōu)線路,CPU允許響應(yīng)中斷,通過設(shè)一個中斷允許觸發(fā)器INT實現(xiàn)。若INT為1,允許響應(yīng)中斷。若INT為0,不允許響應(yīng)中斷。為此,有的計算機專設(shè)兩條指令,開中斷指令,置“1”INT;關(guān)中斷指令,清“0”INT。80 x86指令為STI和CLI。,3.中斷響應(yīng),(1)中斷響應(yīng)的條件:,CPU的一條指令執(zhí)行完畢(有例外,如串操作指令),無更緊迫的任務(wù)或事件。如無DMA傳送、掉電中斷。,有中斷請求。,具有3級,每級8個中斷源的集中式中斷請求產(chǎn)生示意圖見P338圖6.11,3.中斷響應(yīng),3.中斷響應(yīng),(2)中斷響應(yīng)完成的任務(wù)暫
22、?,F(xiàn)行程序;進入中斷服務(wù)(處理)程序。,注意:中斷響應(yīng)的任務(wù),通常由中斷隱指令實現(xiàn)。,中斷隱指令:響應(yīng)中斷時才由硬件產(chǎn)生以便完成中斷響應(yīng)的各項工作,因它象一條指令,但CPU指令系統(tǒng)中又無此指令,故稱中斷隱指令。,為實現(xiàn)中斷隱指令,有的CPU控制器特設(shè)一個中斷(PI)周期。只要CPU響應(yīng)了中斷,執(zhí)行周期結(jié)束時,不是進入取指周期,而是進入中斷周期,中斷周期執(zhí)行完后,才進入取指周期。,3.中斷響應(yīng),(3)暫?,F(xiàn)行程序時需要做的工作,關(guān)中斷:進入不可再次響應(yīng)中斷的狀態(tài),以便保證保存中斷現(xiàn)場的正確性。,保存斷點:保存中斷返回后,被暫停程序要執(zhí)行的第一條指令的地址。,保存硬件的其它現(xiàn)場:如程序狀態(tài)字中的F
23、lag、中斷碼、條件碼等。,撤消本次的中斷請求,防止一次請求多次響應(yīng)。上述四項工作必須是由中斷隱指令完成。,3.中斷響應(yīng),硬件法:亦稱向量中斷法。由中斷隱指令完成經(jīng)典的向量中斷法:響應(yīng)中斷時,由硬件自動產(chǎn)生相應(yīng)中斷源的向量地址。據(jù)此訪問中斷向量表,從中取出中斷服務(wù)程序的入口地址(或包括狀態(tài)字),轉(zhuǎn)入中斷服務(wù)程序。,(4)進入中斷服務(wù)程序的方法,向量地址:訪問中斷向量表所需地址,中斷向量表:所有中斷服務(wù)程序入口地址(或包括狀態(tài)字)組成的一維表格。,中斷向量:所有中斷服務(wù)程序入口地址(或包括狀態(tài)字)的有序集合。,80 x86向量地址形成部件和中斷向量表,3.中斷響應(yīng),硬件法:向量中斷的其它實現(xiàn)方法
24、:中斷響應(yīng)時,硬件產(chǎn)生的是相對于中斷向量表始地址的偏移量。向量表始地已存入向量表基址寄存器,向量地址為該寄存器內(nèi)容與偏移量之和,具有多根中斷請求線的計算機,可通過對請求線編碼產(chǎn)生各中斷源的向量地址,見P339圖6.13,該向量地址就是相應(yīng)中斷服務(wù)程序的入口地址。,中斷響應(yīng)時,硬件產(chǎn)生的是向量地址的低位,向量地址的高位存放在中斷向量寄存器中,二者拼接形成向量地址。,上述兩種方法使中斷向量表可存放在主存的任何位置,中斷響應(yīng)時,硬件直接產(chǎn)生與中斷源對應(yīng)的向量地址,但該地址中存儲的不是中斷服務(wù)程序的入口地址,而是一條無條件轉(zhuǎn)移到中斷服務(wù)程序的指令,如P339圖6.14,3.中斷響應(yīng),3.中斷響應(yīng),軟件
25、法:中斷響應(yīng)后,轉(zhuǎn)到一個處理中斷的總?cè)肟?通過執(zhí)行判優(yōu)先中斷源的程序,找到優(yōu)先中斷源。然后轉(zhuǎn)入相應(yīng)中斷服務(wù)程序。即判優(yōu)和中斷響應(yīng)合并為一步。見337圖6.10,(4)進入中斷服務(wù)程序的方法,保存現(xiàn)場:保存CPU寄存器、中斷屏蔽寄存器內(nèi)容,4.中斷服務(wù)程序的組成(P340),中斷隱指令完成:保存斷點、關(guān)中斷、保存Flag、撤消本次中斷請求,然后進入中斷服務(wù)程序。,送新的屏蔽碼:屏蔽比本級低級中斷。,開中斷:允許響應(yīng)比本級更高級中斷。,實施中斷服務(wù):實現(xiàn)對緊急事件處理。,關(guān)中斷:不允許任何中斷。,恢復現(xiàn)場:恢復CPU寄存器、中斷屏蔽寄存器內(nèi)容,開中斷:允許其它中斷。,返回被暫停的程序。,5.中斷屏
26、蔽與多重中斷的實現(xiàn),實現(xiàn)方法:在接口硬件中設(shè)置屏蔽觸發(fā)器及其相關(guān)電路。軟件上依中斷源的優(yōu)先級為每個中斷源預(yù)先設(shè)1個中斷屏蔽碼。屏蔽碼與中斷源的優(yōu)先級別是一一對應(yīng)的,表6.1是對應(yīng)8個中斷源且具有8個優(yōu)先級的屏蔽碼。1級中斷源的屏蔽碼為8個1,2級中斷源的屏蔽碼從左數(shù)第2位開始共7個1,依此類推。,表6.1中斷優(yōu)先級和中斷屏蔽碼P341,進入中斷服務(wù)程序保護現(xiàn)場之后,送新的屏蔽碼即通過中斷屏蔽實現(xiàn)了多重中斷。見P342圖6.16是一個三級中斷的例子,多重中斷的實現(xiàn)示意(P342圖6.16),5.中斷屏蔽與多重中斷的實現(xiàn),1級中斷的屏蔽碼111111112級中斷的屏蔽碼011111113級中斷的屏
27、蔽碼00111111,6.4.3程序中斷控制傳送及其接口,程序中斷控制傳送的基本思想與特點,基本思想:僅在PD準備好單位數(shù)據(jù)時,才向CPU發(fā)中斷請求,CPU響應(yīng)中斷請求,轉(zhuǎn)中斷服務(wù)程序進行數(shù)據(jù)傳送。PD準備單位數(shù)據(jù)時,CPU和PD是并行工作的。,特點:以CPU為中心,通過中斷服務(wù)程序完成數(shù)據(jù)傳送。主機、外設(shè);外設(shè)、外設(shè)有一定的并行度,何謂準備好單位數(shù)據(jù):要輸入的單位數(shù)據(jù)已送接口的DBR;要輸出的單位數(shù)據(jù)已從DBR中取走,單位數(shù)據(jù):中斷服務(wù)程序執(zhí)行一次所傳輸?shù)臄?shù)據(jù),程序中斷控制傳送示意圖(P344圖6.17),1.程序中斷傳送接口框圖(見P343,圖6.18),6.4.3程序中斷控制傳送及其接口
28、,設(shè)備選擇器:接收CPU發(fā)出的設(shè)備地址,譯碼產(chǎn)生選中信號,選擇和控制相應(yīng)外設(shè)及接口實現(xiàn)I/O操作。,數(shù)據(jù)緩沖器:寄存輸入或輸出的信息。為寄存器或小容量存儲器。,1.程序中斷傳送接口框圖(見P343,圖6.18),中斷控制邏輯:中斷請求的產(chǎn)生邏輯、中斷屏蔽和選優(yōu)判優(yōu)邏輯、中斷類型(設(shè)備)碼回送邏輯等,狀態(tài)與控制命令寄存器:寄存CPU發(fā)出的命令和外設(shè)及接口的狀態(tài),如:BUSY、DONE、MASK和INTR等狀態(tài)與控制觸發(fā)器,6.4.3程序中斷控制傳送及其接口,2.程序中斷傳送(PIT)的過程,-初始化CPU設(shè)置傳送的主存始地和傳輸長度,查詢PD良/故和忙/閑,若閑且良好,由程序?qū)涌诔跏蓟H魹檩?/p>
29、出,還應(yīng)將首次輸出的單位數(shù)據(jù)送數(shù)據(jù)緩沖器(DBR)。,0.啟動外設(shè)工作通過I/O指令啟動PD,外設(shè)開始單位數(shù)據(jù)輸出或準備要輸入的單位數(shù)據(jù)。注意此期間CPU與外設(shè)并行的工作,中斷請求當外設(shè)1個單位數(shù)據(jù)準備好或已完成1個單位數(shù)據(jù)的輸出,置忙閑標志BUSY為“0”,完成標志DONE為“1”,在不屏蔽即MASK為“0”情況下,形成中斷請求信號。,中斷判優(yōu)經(jīng)過中斷排隊器,取得優(yōu)先中斷源,并在接口(設(shè)備碼回送網(wǎng)絡(luò))形成中斷類型碼。,2.程序中斷傳送(PIT)的過程,中斷響應(yīng)中斷響應(yīng)條件滿足,CPU發(fā)中斷響應(yīng)(識別)信號INTA,從接口取走中斷類型碼(由中斷類型碼再形成向量地址),從而得到中斷服務(wù)程序入口地
30、址。,中斷處理和中斷返回執(zhí)行中斷服務(wù)程序。而后返回被暫停的程序。,注意:每執(zhí)行1次中斷服務(wù)程序,僅交換1個單位數(shù)據(jù)。要交換多少個單位數(shù)據(jù),就需執(zhí)行多少次中斷服務(wù)程序,除最后1次不啟動外設(shè)外,其它次均須啟動外設(shè)。,3.X-Y記錄儀程序中斷傳送接口組成P345,設(shè)備選擇器SEL:亦稱設(shè)備地址譯器,當CPU向所有接口發(fā)出X-Y記錄儀的地址時,僅有該接口被選中,SEL為高電平,控制該接口的其它邏輯部件使之受控于CPU,以完成X-Y儀與主機的信息交換工作。,3.X-Y記錄儀程序中斷傳送接口組成P345,工作狀態(tài)與控制觸發(fā)器(圖6.18命令和狀態(tài)寄存器的一部分)Busy:忙閑狀態(tài)觸發(fā)器,簡稱B。Done:
31、準備好觸發(fā)器,簡稱D。INTR:中斷請求觸發(fā)器。MASK:中斷屏蔽觸發(fā)器,BD.MASKINTR00停機00允許中斷,無中斷請求01準備好等待主機傳輸10屏蔽中斷,無中斷請求10正在準備數(shù)據(jù)01允許中斷,有中斷請求11無意義(不應(yīng)出現(xiàn))11不可能存在,工作狀態(tài)與控制觸發(fā)器,啟動PD。,外設(shè)1次傳輸完成。,繼續(xù)傳輸。,故障停機。,一批數(shù)據(jù)傳輸完成停機,中斷排隊邏輯:鏈型排隊電路的1環(huán)(P336圖6.9),3.X-Y記錄儀程序中斷傳送接口組成,設(shè)備地址回送網(wǎng)絡(luò):亦稱設(shè)備編碼器?;厮驼埱髠鬏斍遗派详牭腜D的設(shè)備碼即中斷類型碼,由其決定向量地址,以便進入相應(yīng)的中斷服務(wù)程序。,數(shù)據(jù)緩沖器X和Y和設(shè)備的其
32、它狀態(tài)或控制觸發(fā)器,3.X-Y記錄儀程序中斷傳送接口組成,第部分構(gòu)成PIT的接口標準部分。第部分構(gòu)成PIT接口的非標準部分,其將因設(shè)備不同而異,通常和設(shè)備控制器DC制作在一起。,4.X-Y記錄儀程序中斷傳送過程,-初始化:CPU設(shè)置存曲線坐標信息的主存始地及長度。查詢X-Y記錄儀是否良好和閑置,若閑良,則對接口初始化,并先向X-Y記錄儀的數(shù)據(jù)緩沖器發(fā)送1組數(shù)據(jù)X和Y。,以畫一曲線為例說明,0.啟動X-Y記錄儀工作:CPU經(jīng)總線向所有外設(shè)接口發(fā)送X-Y儀設(shè)備地址碼,只有X-Y記錄儀程序中斷接口產(chǎn)生的選中信號SEL有效。該接口中的BUSY被置“1”、DONE被清“0”,X-Y記錄儀工作,從X、Y兩
33、個數(shù)據(jù)緩沖器取走數(shù)據(jù)并開始繪圖。,中斷請求:X-Y記錄儀取走數(shù)據(jù)時,將DONE置“1”、BUSY清“0”,表示本次輸出完成。發(fā)出中斷,要求CPU提供下1組數(shù)據(jù)X和Y。CPU在每條指令執(zhí)行之初均發(fā)出中斷查詢信號RQENB,如MASK為“0”,則將中斷請求觸發(fā)器INTR被置“1”,向CPU發(fā)出中斷請求。,中斷判優(yōu):若開中斷且X-Y中斷接口處于優(yōu)先,CPU發(fā)中斷響應(yīng)信號INTA,準備回送X-Y記錄儀的設(shè)備地址碼。,4.X-Y記錄儀程序中斷傳送過程,中斷響應(yīng):執(zhí)行中斷隱指令,暫?,F(xiàn)行程序,回送X-Y記錄儀的設(shè)備地址碼,依設(shè)備地址碼形成向量地址,轉(zhuǎn)入為X-Y記錄儀服務(wù)的中斷服務(wù)程序。,中斷服務(wù)和中斷返回
34、:執(zhí)行中斷服務(wù)程序,CPU再向接口發(fā)送1組數(shù)據(jù)X和Y,再啟動X-Y記錄儀工作,并自動返回暫停程序繼續(xù)執(zhí)行。X-Y記錄儀再次從X、Y兩個數(shù)據(jù)緩沖器取走數(shù)據(jù),又一次發(fā)出中斷,如此多次中斷,直至整個曲線畫完為止。,PIT每傳送1個單位數(shù)據(jù),都暫?,F(xiàn)行程序,執(zhí)行中斷服務(wù)程序1次。對于慢速外設(shè),單位數(shù)據(jù)間的時間間隔較長,CPU除執(zhí)行中斷服務(wù)程序之外,仍有時間執(zhí)行被暫停的程序。對高速成組傳送的外設(shè),單位數(shù)據(jù)間的時間間隔很短,就會出現(xiàn)兩種可能,5.程序中斷傳送的缺點:,CPU能響應(yīng)外設(shè)的中斷,進行數(shù)據(jù)傳送,但只能忙于數(shù)據(jù)傳送,很少有時間再執(zhí)行被暫停的程序;,CPU響應(yīng)不了頻繁的外設(shè)中斷,導致信息丟失,加之P
35、IT傳輸效率低,為此不得不尋求新的數(shù)據(jù)傳送方式。,6.5內(nèi)存直接存取(DMA),6.5.1DMA概述1.PI傳送、DMA傳送示意,2.DMA的應(yīng)用場合用于高速成組數(shù)據(jù)傳送的外設(shè),并按照連續(xù)地址直接訪問主存。,以MEM為中心,完全用硬件開辟內(nèi)存MEM、外設(shè)PD間直接數(shù)據(jù)傳輸通路,用硬件換得速度和并行度,6.5.1DMA概述,CPU、PD間通路只用來為DMA接口指定傳輸參數(shù)和查詢、啟停PD使用。傳輸參數(shù)包括:內(nèi)存始地、傳輸長度;外設(shè)內(nèi)部地址,如磁盤的柱面、盤面、扇區(qū)、磁帶的組號等;外設(shè)工作方式,如讀、寫、尋道、走帶等,一批數(shù)據(jù)傳輸完成或傳輸中出現(xiàn)問題,發(fā)中斷,通過PI處理,決定下一步如何處理。,3
36、.DMA的特點,處理方法:PD要傳送、發(fā)請求信號給CPU,CPU暫停訪存(即讓出總線控制權(quán)),一批數(shù)據(jù)傳輸完畢后,CPU再繼續(xù)訪存。,4.DMA工作方式,使用場合:PD的訪存周期(即單位數(shù)據(jù)的準備時間)接近于主存存儲周期(不大于3倍),單位數(shù)據(jù)準備時間的間隔很小,CPU很難再利用。如A/D,快速激打,圖形圖像CRT,優(yōu)缺點:控制簡單;存儲器效率和CPU效率均未得到發(fā)揮,因為最高速外設(shè)單位數(shù)據(jù)的準備時間再小也大于TM。,全串行:停CPU,完全讓給DMA訪存。,4.DMA工作方式,處理方法:PD要傳送,CPU暫停一個存儲周期讓給DMA。PD交換一個單位數(shù)據(jù)后,CPU繼續(xù)工作。,使用場合:PD訪存周
37、期主存存儲周期,單位數(shù)據(jù)準備時間的間隔大,單位數(shù)據(jù)準備時間至少四倍于存儲周期。,優(yōu)缺點:這種方式CPU與PD訪存時有可能沖突,也可能不沖突,故存儲器和CPU效率均較高;控制較復雜。注意:DMA大多采用這種方式。,周期挪用亦稱周期竊取,簡單中斷。,處理方法:CPU、DMA各有自己的MAR、MBR,兩者交替訪存。,使用場合:CPU工作周期(機器周期)至少是存儲周期的兩倍。指令周期:完成一種指令所需時間,通常包括多個CPU工作周期。如:取指周期、間址周期、執(zhí)行周期等。,優(yōu)缺點:DMA對CPU無影響,CPU感覺不到DMA的存在,主機不停止程序運行,效率高;主存的效率降低,且要求主存速度高。,交替訪存方
38、式(透明DMA),4.DMA工作方式,透明DMA圖示:,DMA訪存,CPU訪存,以周期挪用DMA接口為例說明,由接口寄存器、中斷傳送標準接口和DMA控制邏輯(線路)三部分組成,6.5.2DMA接口的基本組成,P353圖6.22,DAR(設(shè)備內(nèi)部地址寄存器):寄存設(shè)備內(nèi)部地址,1.接口寄存器,DBR(數(shù)據(jù)緩沖寄存器):寄存要交換的信息,ABR(地址緩沖寄存器):寄存主存始地址,WC(字計數(shù)器):寄存要交換信息的長度,DSR(狀態(tài)寄存器):寄存設(shè)備及接口狀態(tài),DCR(設(shè)備控制寄存器):寄存CPU控制命令,功能:查詢、啟停DMA的PD、送傳輸參數(shù),結(jié)束或傳送出錯時,產(chǎn)生中斷,以便由相應(yīng)中斷服務(wù)程序處
39、理。,2.中斷傳送標準接口,組成:設(shè)備選擇、PI控制邏輯和B、D、MASK和INTR等PI傳送時已介紹,不重述。,組成:單位數(shù)據(jù)準備就緒、DMA請求和DMA響應(yīng)3個觸發(fā)器;DMA優(yōu)先排隊電路;向CPU發(fā)請求使用總線和接收允許使用總線以及回送命令碼等線路,3.DMA控制邏輯,功能:控制并實現(xiàn)DMA傳送(CPU為DMA建立DMA周期完成數(shù)據(jù)傳送),用I/O指令判DMA設(shè)備忙閑、良故,若閑良,則向DMA接口傳送下述參數(shù):ABR內(nèi)存始地、WC傳輸長度DCR控制命令、工作方式設(shè)備控制器外設(shè)內(nèi)部地址輸出時,還應(yīng)將DBRMBR,1.周期挪用DMA的工作過程,6.5.3DMA的工作過程,傳送初始化(CPU程序
40、實現(xiàn)),用I/O指令啟動外設(shè),CPU繼續(xù)執(zhí)行現(xiàn)行程序,從輸入介質(zhì)讀入1個單位數(shù)據(jù)送DBR,表示準備就緒,數(shù)據(jù)傳送(以輸入設(shè)備為例說明P354),外設(shè)向DMA接口發(fā)請求DREQ,DMA接口向CPU申請總線控制權(quán)HRQ;,CPU發(fā)回響應(yīng)信號HLDA,DMA接口取得總線控制權(quán),并向設(shè)備發(fā)信號DACK,通知設(shè)備可挪用1個存儲周期傳送DBR中的數(shù)據(jù),1.周期挪用DMA的工作過程,6.5.3DMA的工作過程,MARABR、MBRDBR、發(fā)出寫存儲器命令。,數(shù)據(jù)傳送(以輸入設(shè)備為例說明P354),將數(shù)據(jù)寫入主存同時,修改長度:WCWC+1、修改地址:ABRABR+1,判WC溢出并檢查傳輸有否錯誤。有錯誤,向
41、CPU發(fā)錯誤中斷請求;無錯且WC無溢出,繼續(xù)傳輸;否則向CPU發(fā)結(jié)束中斷請求。,WC溢出或傳輸中有錯,PI標準接口中B、D被置為為01,向CPU發(fā)中斷請求。CPU響應(yīng)中斷,運行中斷處理程序。,DMA結(jié)束處理,6.5.3DMA的工作過程,中斷處理程序先讀取DSR,判斷是結(jié)束還是錯誤中斷。若為錯誤結(jié)束,轉(zhuǎn)錯誤處理程序;若為正確結(jié)束,則確定本批數(shù)據(jù)傳送完否,未完,繼續(xù)對DMA初始化,繼續(xù)傳送,否則停PD。,PIT主要靠軟件實現(xiàn)數(shù)據(jù)傳送,DMA主要靠硬件實現(xiàn)數(shù)據(jù)傳送。,2.PIT與周期挪用DMA傳送的區(qū)別(P356),DMA請求的響應(yīng),CPU只暫停1個訪存周期,實現(xiàn)單位數(shù)據(jù)的傳送。PIT則通過執(zhí)行中斷
42、服務(wù)程序,實現(xiàn)單位數(shù)據(jù)的傳送。DMA速度快。,PIT只適用于慢速外設(shè),DMA適用于高速成組傳送的外設(shè)。,PIT的響應(yīng)必須在一條指令執(zhí)行之末,而DMA原則上可在CPU不訪存的任何時刻。,PI的功能強,可處理各種復雜突發(fā)事件,而DMA只限于數(shù)據(jù)傳送,1.廣義型DMA傳送接口(P357),6.5.4DMA傳送接口類型,現(xiàn)代計算機采用大規(guī)模集成電路技術(shù),為設(shè)計標準化、模塊化和與具體外設(shè)盡量無關(guān),通常把經(jīng)典DMA接口分為DMA控制器和DMA接口兩個部件稱這樣的DMA接口為廣義型DMA傳送接口。,2.選擇型DMA傳送接口(P357),該類接口與廣義型DMA接口組成上主要不同是在物理上可連接多臺高速外設(shè)。而
43、在邏輯上實際僅連接1臺外設(shè)。即在某一時間段內(nèi),接口只能為1臺外設(shè)服務(wù)。,該類接口在物理和邏輯上均可連接多臺外設(shè),各外設(shè)采用字節(jié)或字交叉方式同時進行數(shù)據(jù)傳送。這種類型接口由1個DMA控制器和多個DMA接口組成,有多少個DMA接口,就可連接多少臺外設(shè)。,3.多路型DMA傳送接口(P359),6.5.5DMA傳送舉例,該子系統(tǒng)由選擇型DMA傳送接口(P358)、硬磁盤控制器和硬盤驅(qū)動器及盤組三大部分組成。,1.硬磁盤DMA傳送子系統(tǒng)的組成(P360),位,2.磁盤DMA傳送的工作過程,讀取接口寄存器DSR中的磁盤及接口的狀態(tài)信息,確定磁盤是否閑置良好。若空閑良好,則進行下一步,否則CPU執(zhí)行其它程序
44、;,初始化階段,送臺號、柱面號、盤面號和起始扇區(qū)號到接口中的DAR,供選擇磁盤和磁盤定位使用;,若為寫盤,應(yīng)將第1個要寫入的單位數(shù)據(jù)(32位字)送接口中的DBR;,分別送讀寫等命令信息、主存始地址和傳輸?shù)淖謹?shù)到接口中的DCR、ABR和WC;,啟動磁盤,CPU繼續(xù)執(zhí)行其它程序。,數(shù)據(jù)傳輸階段,位,2.磁盤DMA傳送的工作過程,數(shù)據(jù)傳送完成或傳送中出錯DMA都將向CPU發(fā)中斷請求。,2.磁盤DMA傳送的工作過程,結(jié)束階段:,CPU接到DMA中斷請求并響應(yīng)后,將先讀取接口DSR中的狀態(tài)信息,以確定是錯誤中斷還是正常結(jié)束中斷。,如果是錯誤中斷,則轉(zhuǎn)相應(yīng)出錯中斷處理程序;如果是正常結(jié)束中斷,則轉(zhuǎn)正常結(jié)束
45、中斷服務(wù)程序,以決定是繼續(xù)下一批數(shù)據(jù)交換還是交換結(jié)束關(guān)閉磁盤。,DMA的缺點(P361),1.DMA傳送效率的提高是以配備專用硬件DMA接口為代價,若有多臺DMA設(shè)備,則每臺都配備DMA接口,硬件開銷大。性能價格比將大大下降;,3.系統(tǒng)若有多臺DMA外設(shè),頻繁挪用存儲周期,CPU暫停次數(shù)將大大增加,訪存沖突增加,必將影響主機效率。,2.初始化需多條I/O指令,對CPU打擾仍然較多,6.6I/O通道,6.6.1I/O通道概述,1.通道計算機的系統(tǒng)結(jié)構(gòu),具有系統(tǒng)總線和通道總線兩類總線。,三種類型的通道:字節(jié)多路通道、選擇通道和數(shù)組多路通道。,設(shè)置存控部件:確定哪個部件使用主存。當通道與CPU同時請
46、求訪存時,通道優(yōu)先于CPU,2.CPU對通道的管理與服務(wù),6.6.1I/O通道概述,CPU通過了解查詢通道、外設(shè)狀態(tài)和啟停通道的通道I/O指令管理和控制通道,CPU通過運行操作系統(tǒng)的設(shè)備管理程序,為用戶編寫“通道程序”,以便通道運行通道程序?qū)崿F(xiàn)傳送。,CPU通過處理通道可能發(fā)出的數(shù)據(jù)傳輸結(jié)束中斷或故障中斷管理通道。CPU響應(yīng)中斷后,通過查詢通道、外設(shè)狀態(tài)確定是哪一種中斷,并決定通道后續(xù)還需做什么工作。,6.6.1I/O通道概述,CH是四級I/O子系統(tǒng)的核心,代替CPU管理、調(diào)度、控制使用外設(shè)。CPU只是查詢通道、外設(shè)狀態(tài)和啟停通道。CH具體功能為,選擇、啟停外設(shè)。,取通道程序,并執(zhí)行它,實現(xiàn)數(shù)
47、據(jù)傳送,提供數(shù)據(jù)緩沖,完成信息裝配和拆卸。,對子通道(SCH)、外設(shè)的中斷請求排隊。,接收SCH、外設(shè)狀態(tài),形成CH狀態(tài)并提供給CPU查詢用。,3.CH的功能,6.6.1I/O通道概述,4.通道分類及其結(jié)構(gòu)組成,何謂字節(jié)多路通道:連接控制多臺慢速外設(shè),以字節(jié)交叉方式傳送數(shù)據(jù)的通道,字節(jié)多路通道,P364,結(jié)構(gòu)組成:,包含多個子通道(SCH),每個SCH連接1個控制器和1臺外設(shè)或多臺外設(shè),通道控制共享;數(shù)據(jù)緩沖公用,用來拆裝數(shù)據(jù)。,字符緩沖器、狀態(tài)控制寄存器、內(nèi)存地址計數(shù)器、字節(jié)計數(shù)器分設(shè),P364,字節(jié)多路通道,選擇通道P365,4.通道分類及其結(jié)構(gòu)組成,結(jié)構(gòu)組成:讀寫數(shù)據(jù)所需的主存地址計數(shù)器
48、,交換長度的字計數(shù)器,設(shè)備內(nèi)部地址寄存器、數(shù)據(jù)緩沖寄存器和數(shù)據(jù)格式變換線路等。,何謂選擇通道:連接控制1臺或多臺同種高速外設(shè),以成組方式順序傳送數(shù)據(jù)的通道。,4.通道分類及其結(jié)構(gòu)組成,數(shù)組多路通道,何謂數(shù)組多路通道:連接控制多臺高速外設(shè),以成組方式交叉?zhèn)魉蛿?shù)據(jù)的通道。,控制復雜,隨著高速外設(shè)尋找設(shè)備內(nèi)部地址的速度加快,有的已達5ms以下,此段時間的利用價值不很高,故目前很少采用。,高速成組傳送的外設(shè)尋找設(shè)備內(nèi)部地址需較長時間,為利用這部分時間,使一臺設(shè)備進行數(shù)據(jù)傳送與其他設(shè)備的機電尋址操作重疊。實質(zhì)上它是字節(jié)多路通道和選擇通道兩者結(jié)合的產(chǎn)物。,5.字節(jié)多路通道和選擇通道傳送數(shù)據(jù)的特點,字節(jié)多路
49、通道傳送數(shù)據(jù)的特點,當所有設(shè)備同時工作時,每個設(shè)備僅交換一個字節(jié)的信息后就轉(zhuǎn)交給其它設(shè)備交換信息。在某一時刻,只要不是一個設(shè)備工作,則交叉交換數(shù)據(jù),P363,選擇通道傳送數(shù)據(jù)的特點,選擇通道的傳輸特點:在一段時間內(nèi)只為1臺外設(shè)服務(wù),一旦服務(wù),則不能打斷該臺設(shè)備的傳送,直到一批傳送完畢。在不同時間段,可選擇不同外設(shè),但一定是同種外設(shè)。,P365,1.通道命令字:亦稱通道控制字CCW(ChannelCommand/ControlWord),又稱硬控制字。,6.6.2通道命令字和通道程序,何謂通道命令字:規(guī)定通道及其連接的外設(shè)執(zhí)行何種操作及如何執(zhí)行該操作的命令字。它指出通道及其外設(shè)執(zhí)行什么操作及操作
50、所需參數(shù)。又稱通道控制字。,計算機系統(tǒng)不同,CCW的格式也存在很大差別,但基本組成通常由下述六個組成部分。,通道命令字(CCW)的基本組成(P366),命令碼:指出外設(shè)執(zhí)行什么操作。讀寫、打印、找道、走帶等,主存地址:指出要讀寫數(shù)據(jù)的主存始地址傳輸長度:指出要傳輸?shù)膯挝粩?shù)據(jù)個數(shù)。,特征位:指出CCW的鏈接方法或操作特點。,數(shù)據(jù)鏈特征位:將主存不連續(xù)區(qū)域的數(shù)據(jù)連續(xù)地傳送給外設(shè),或?qū)⑼庠O(shè)不連續(xù)區(qū)域的數(shù)據(jù)傳送到主存的1個連續(xù)區(qū)域;,命令鏈特征位:可將同1臺外設(shè)操作的CCW鏈接成1個通道程序。使啟動1次外設(shè),可執(zhí)行幾種不同操作或傳送大批數(shù)據(jù)。,通道命令字(CCW)的基本組成(P366),外設(shè)內(nèi)部地址:
51、給出設(shè)備內(nèi)部地址,是可選的,因設(shè)備的不同而異。如:磁盤的柱面號、盤面(磁頭)號和扇區(qū)號;磁帶的組號或區(qū)號。下1個CCW的首地址:是CCW串時,給出下1個CCW的首地址。該字段也是可選字段,因計算機不同而異。,回憶通道I/O指令格式(P326),注意:CCW命令碼和通道I/O指令中的操作碼都指出執(zhí)行什么操作,但操作是不同的,是互斥互補的。如:通道I/O指令操作為查詢通道和外設(shè)(即讀狀態(tài)),啟停通道(外設(shè)),讀控制字;CCW命令則為讀、寫、走帶、找道等。,通道控制字CCW舉例:,151機的通道控制字,151機的通道控制字格式3個字組成,每個字32位,B1=1:表示是磁盤(帶)機,CCW由3個32位
52、字組成;B2=1:表示是CCW串,DCCW中為下1個CCW的首地址;B3B210:本CCW執(zhí)行完則停CH和PD;B4B2=10:屏蔽結(jié)束中斷(假讀時使用);B4B2=11:屏蔽滿中斷。,151機的控制字中的特征碼的意義,通道控制字舉例:,6.6.2通道命令字和通道程序,2.通道程序CHP(ChannelProgram),3.通道狀態(tài)字CSW(ChannelStatus/StateWord),何謂通道程序:通道命令字的有序集合。CH能獨立執(zhí)行CHP,無須CPU干預(yù)。,何謂通道狀態(tài)字:反映CH、SCH和PD狀態(tài)的一組二進制的信息。,CH、SCH、PD的狀態(tài)通常有:忙/閑、良/故、正傳輸/未傳輸、傳
53、輸正確結(jié)束/傳輸錯誤結(jié)束、信息丟失與否等。,1.CH的工作過程,6.6.3通道傳送的工作過程,傳送準備工作用戶使用通道傳送的外設(shè)應(yīng)做兩項工作。通過訪存指令提供傳送時所需參數(shù)(即軟控制字);通過自愿進管指令以系統(tǒng)調(diào)用的方式向CPU提出通道I/O請求,進入操作系統(tǒng)的設(shè)備管理程序。,操作系統(tǒng)的設(shè)備管理程序要做3項工作根據(jù)用戶提供的軟控制字編制通道程序CHP,并存到主存指定區(qū)域;在主存中安排數(shù)據(jù)緩沖區(qū);通過了解外設(shè)的I/O指令,取出CSW,依CSW的內(nèi)容判用戶所需外設(shè)是否良閑?若良閑,則執(zhí)行啟動通道和外設(shè)I/O指令,進入數(shù)據(jù)傳送階段。,CH的數(shù)據(jù)傳送,1.CH的工作過程,CH從主存指定區(qū)域取出CHP,
54、執(zhí)行CHP,進行數(shù)據(jù)傳送。,數(shù)據(jù)傳送正常結(jié)束,或傳輸中出現(xiàn)錯誤,CH向CPU發(fā)中斷請求,等待處理。,CPU響應(yīng)中斷并取出CSW,若正常結(jié)束,執(zhí)行正常結(jié)束服務(wù)程序;否則執(zhí)行錯誤處理中斷服務(wù)程序,執(zhí)行該程序時需使用讀回CCW的通道I/O指令。,6.6.3通道傳送的工作過程,CH的結(jié)束處理,6.6.3通道傳送的工作過程,2.151機通道傳送舉例用戶提供軟控制字,使用151機自愿進管指令編CHP,用戶提供的151機軟控制字,6.6.3通道傳送的工作過程,操作系統(tǒng)了解外設(shè)和啟動通道、外設(shè)工作,151機啟動通道和外設(shè)的通道I/O指令格式為:,151機通道的結(jié)束處理,6.6.3通道傳送的工作過程,傳輸中向C
55、PU發(fā)中斷,CPU響應(yīng)中斷并取出CSW,若正常結(jié)束,執(zhí)行正常結(jié)束中斷服務(wù)程序;否則執(zhí)行錯誤處理中斷服務(wù)程序,使用讀回通道CCW的通道I/O指令。以了解傳輸情況,決定如何處理.,3.PIT與CH數(shù)據(jù)傳送的區(qū)別,6.6.3通道傳送的工作過程,PIT靠中止CPU現(xiàn)行程序,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序?qū)崿F(xiàn)數(shù)據(jù)傳送;CH則通過執(zhí)行CHP實現(xiàn)數(shù)據(jù)傳送。,PIT的中斷服務(wù)程序與CPU的現(xiàn)行程序是串行工作的;CH的CHP與CPU的現(xiàn)行程序是并行工作的。,CH是集中獨立的硬件,可連接多臺快、慢速外設(shè);PIT只適用于慢速外設(shè),且每個外設(shè)都有自己的PIT接口和中斷服務(wù)程序。,PIT以CPU為中心;CH則以MEM為中心,4.CH傳送與DMA的區(qū)別,6.6.3通道傳送的工作過程,DMA初始化由CPU完成,CH無需初始化,因CCW包含了初始化信息,取出CCW將其存放到通道寄存器就是初始化。,DMA只控制高速PD成組傳送,CH則高、低速PD均可控制。,DMA主要靠專用接口硬件實現(xiàn)數(shù)據(jù)傳送;CH則靠執(zhí)行CHP實現(xiàn)數(shù)據(jù)傳送。,
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。