什么是計(jì)算機(jī)的輸入/輸出系統(tǒng)概述
什么是計(jì)算機(jī)的輸入/輸出系統(tǒng)概述
1、作用:連通計(jì)算機(jī)的各個(gè)功能部件和設(shè)備,實(shí)現(xiàn)它們之間的數(shù)據(jù)交換。
2 、硬件組成:由計(jì)算機(jī)總線和輸入/輸出接口兩部分組成。
二、 計(jì)算機(jī)的總線
1、計(jì)算機(jī)總線概述
(1)計(jì)算機(jī)總線:連接計(jì)算機(jī)各功能部件的邏輯電路和連線,包括管理信息傳輸規(guī)則的電路被稱為總線。它是計(jì)算機(jī)的各部件之間傳輸信息的公共通路,總線的硬件組成選用集電極開(kāi)路輸出電路,實(shí)現(xiàn)把多路輸入的某一路信息送到總線上。
(2)計(jì)算機(jī)總線按所承擔(dān)的功能分為三部分
◎數(shù)據(jù)總線(DB):功能是傳輸數(shù)據(jù)和指令信息
◎地址總線(AB):功能是傳輸內(nèi)存或I/O設(shè)備地址
◎控制總線(CB):功能是給出總線周期類型、I/O操作完成的時(shí)刻、DMA周期、中斷等有關(guān)控制信號(hào)
(3)總線周期:是通過(guò)總線完成一次內(nèi)存讀寫操作或完成一次輸入/輸出設(shè)備的讀寫操作所必須的時(shí)間。由兩個(gè)時(shí)間段組成。
總線周期T
※地址??http://www.csai.cn??用于CPU向內(nèi)存或 I/O設(shè)備送地址到 地址總線的時(shí)間。
※數(shù)據(jù)??http://www.csai.cn??用于CPU向內(nèi)存或 I/O設(shè)備送數(shù)據(jù)的時(shí)間。
◎總線的等待狀態(tài):若設(shè)備的讀寫速度慢,不能在一個(gè)總線的數(shù)據(jù)時(shí)間完成讀寫操作,必須再增加一到幾個(gè)數(shù)據(jù)時(shí)間,這段時(shí)間稱總線的等待狀態(tài)。
◎總線周期分類:依據(jù)具體操作的性質(zhì),可把一個(gè)總線周期分為:
※內(nèi)存讀周期 ※內(nèi)存寫周期
※I/O讀周期 ※I/O寫周期
◎正常總線周期(normal bus cycle):若每次數(shù)據(jù)傳輸都要用地址時(shí)間和數(shù)據(jù)時(shí)間組成的完整的總線周期來(lái)完成讀寫,則稱這種總線周期為正常總線周期。
◎ BURST總線周期(burst mode):若給出一次地址信息(一個(gè)地址時(shí)間)后,接著用連續(xù)多個(gè)數(shù)據(jù)時(shí)間依次傳輸多個(gè)數(shù)據(jù),則稱這種運(yùn)行方式為總線的急促傳輸方式。 又稱BURST總線周期
2、計(jì)算機(jī)總線構(gòu)成
計(jì)算機(jī)總線結(jié)構(gòu)有單總線結(jié)構(gòu)、雙總線結(jié)構(gòu)、三總線結(jié)構(gòu)等。
優(yōu)點(diǎn):結(jié)構(gòu)簡(jiǎn)單,成本低,易于接入新設(shè)備
缺點(diǎn):所有設(shè)備都用唯一的總線,不支持總線的并發(fā)傳輸操作,因此數(shù)據(jù)傳輸率不能提高
(雙總線結(jié)構(gòu)示意圖)
三 總 線 結(jié) 構(gòu) 示 意 圖 |
3、總線仲裁和數(shù)據(jù)傳輸控制
(1)總線仲裁:就是解決多個(gè)設(shè)備競(jìng)爭(zhēng)使用總線的管理問(wèn)題。
(2)總線主設(shè)備(bus master):首先啟動(dòng)傳輸過(guò)程,即申請(qǐng)總線使用權(quán)并發(fā)出命令控制總線運(yùn)行的一方稱為總線主設(shè)備。
(3)總線從設(shè)備(bus slave):響應(yīng)由主設(shè)備發(fā)出的命令并執(zhí)行讀寫操作的設(shè)備稱為總線從設(shè)備。
(4)總線仲裁器(bus arbiter):當(dāng)有多個(gè)總線主設(shè)備都發(fā)出申請(qǐng)總線的請(qǐng)求時(shí),能決定哪一個(gè)申請(qǐng)者能取得總線的使用權(quán)的專用部件稱為總線仲裁器。
(5)串性鏈?zhǔn)讲樵兎绞剑核性O(shè)備只用3條公用的控制線完成總線申請(qǐng)和響應(yīng),使用設(shè)備的優(yōu)先級(jí)由設(shè)備的位置決定。
串性鏈?zhǔn)讲樵?
(6)其他仲裁方式:
◎計(jì)數(shù)器定時(shí)查詢方式
◎獨(dú)立申請(qǐng)方式
(7)數(shù)據(jù)傳送控制(總線通信控制):即同步問(wèn)題,常用的有同步和異步通信兩種方式。
◎同步通信:是指在總線上傳送數(shù)據(jù)時(shí),通信雙方使用同一個(gè)時(shí)鐘信號(hào)進(jìn)行同步,該時(shí)鐘稱為總線時(shí)鐘。
同步通信的總線時(shí)鐘
◎異步通信:是指在總線上傳送數(shù)據(jù)時(shí),允許通信雙方各自使用自己的時(shí)鐘信號(hào),采用“應(yīng)答方式”(握手方式)解決數(shù)據(jù)傳輸過(guò)程中的時(shí)間配合問(wèn)題,而不是共同使用同一個(gè)時(shí)鐘。
4、教學(xué)實(shí)驗(yàn)機(jī)的總線系統(tǒng)實(shí)例
(1)數(shù)據(jù)總線:寬度16位,通過(guò)雙向3態(tài)邏輯門電路74LS245被分成兩段,分別稱為內(nèi)部數(shù)據(jù)總線IB和外部數(shù)據(jù)總線OB。
三、 輸入/輸出接口概述
輸入/輸出接口就是連接CPU與輸入/輸出設(shè)備的功能電路板,解決不同設(shè)備的速度、匹配、緩沖等問(wèn)題。
1、計(jì)算機(jī)輸入/輸出接口(I/O接口)的基本功能:
(1)為每一個(gè)設(shè)備規(guī)定地址碼,通常有兩種編址方式
◎主存與輸入/輸出設(shè)備統(tǒng)一編址方式
◎設(shè)置專用的輸入(IN)輸出(IN)指令方式
(2)建立主機(jī)和設(shè)備之間的控制與相互了解的機(jī)制
通過(guò)在接口卡中設(shè)置命令寄存器、狀態(tài)寄存器和中斷邏輯來(lái)實(shí)現(xiàn)主機(jī)可以向設(shè)備發(fā)布命令,了解外部設(shè)備的狀態(tài)以及設(shè)備向主機(jī)提出自己的操作要求。
(3)提供主機(jī)和設(shè)備交換信息過(guò)程中的數(shù)據(jù)緩沖機(jī)構(gòu)
在接口卡中設(shè)置輸入數(shù)據(jù)緩沖寄存器、輸出數(shù)據(jù)緩沖寄存器來(lái)實(shí)現(xiàn)。
(4)提供主機(jī)和設(shè)備交換信息過(guò)程中的其它特別需求支持
例如:信號(hào)電平的轉(zhuǎn)換功能、數(shù)據(jù)格式轉(zhuǎn)換功能、DMA需求等。
前三個(gè)功能組成部分是大部分接口卡上都有的,最后一條則按具體需要特殊安排。
2、通用可編程接口的一般組成
◎通用:能有多種用法與輸入/輸出功能
◎可編程:能通過(guò)指令指定接口的功能和運(yùn)行控制參數(shù)等
◎接口內(nèi)的組成部分:
設(shè)備識(shí)別線路
命令寄存器
數(shù)據(jù)緩沖寄存器(輸入/輸出)
控制寄存器
狀態(tài)寄存器
四、串行接口的內(nèi)部組成與傳送協(xié)議
1、常用的輸入/輸出方式概述
(1)程序直接控制方式(狀態(tài)循環(huán)查詢)
特點(diǎn):由CPU通過(guò)查詢?cè)O(shè)備的運(yùn)行狀態(tài)來(lái)控制數(shù)據(jù)的傳送。控制方式簡(jiǎn)單,CPU與外設(shè)串行工作,
CPU效率低,絕大部分時(shí)間花在查詢等待上,嚴(yán)重影響系統(tǒng)運(yùn)行性能。
(2)程序中斷傳送方式
特點(diǎn): 由設(shè)備主動(dòng)向CPU“報(bào)告”它是否已進(jìn)入準(zhǔn)備好狀態(tài), CPU 不必花費(fèi)時(shí)間去循環(huán)測(cè)試,這樣CPU與外設(shè)可并行操作,提高了CPU的利用效率。。
(3)直接存儲(chǔ)器存取方式
(direct memory access,簡(jiǎn)稱DMA)
特點(diǎn):用于快速設(shè)備和主存儲(chǔ)器成批交換數(shù)據(jù),盡量減少CPU的干涉,用一塊專用的DMA接口卡來(lái)控制成批數(shù)據(jù)傳輸,每傳輸一次僅占用一個(gè)總線周期,使CPU的工作效率大大提高。
(4)I/O通道控制方式(I/O channel control)
用專用的處理I/O 操作的處理器(又稱通道)協(xié)助CPU完成輸入輸出操作。
(5)外圍處理機(jī)輸入輸出方式
(peripheral processor unit)
2、中斷的概念和中斷處理過(guò)程
(1)中斷:
在運(yùn)行一個(gè)程序的過(guò)程中,斷續(xù)地以“插入”方式執(zhí)行一些完成特定處理功能的程序段,這種處理方式稱為中斷。
(2)中斷的作用:
◎并行操作
◎硬件故障報(bào)警與處理
◎支持多道程序并發(fā)運(yùn)行,提高計(jì)算機(jī)系統(tǒng)的運(yùn)行效率
◎支持實(shí)時(shí)處理功能
(3)中斷的概念與術(shù)語(yǔ)
◎按中斷源進(jìn)行分類:發(fā)出中斷請(qǐng)求的設(shè)備稱為中斷源。按中斷源的不同,中斷可分為
內(nèi)中斷:即程序運(yùn)行錯(cuò)誤引起的中斷
外中斷:即由外部設(shè)備、接口卡引起的中斷
軟件中斷:由寫在程序中的語(yǔ)句引起的中斷程序的執(zhí)行,稱為軟件中斷
◎允許/禁止(開(kāi)/關(guān))中斷: CPU通過(guò)指令限制某些設(shè)備發(fā)出中斷請(qǐng)求,稱為屏蔽中斷。從CPU要不要接收中斷即能不能限制某些中斷發(fā)生的角度 ,中斷可分為
可屏蔽中斷 :可被CPU通過(guò)指令限制某些設(shè)備發(fā)出中斷請(qǐng)求的中斷
不可屏蔽中斷:不允許屏蔽的中斷如電源掉電
◎中斷允許觸發(fā)器:在CPU內(nèi)部設(shè)置一個(gè)中斷允許觸發(fā)器,只有該觸發(fā)器置“1”,才允許中斷;置“0”,不允許中斷。
指令系統(tǒng)中,開(kāi)中斷指令,使中斷觸發(fā)器置“1”
關(guān)中斷指令,使中斷觸發(fā)器置“0”
◎中斷優(yōu)先級(jí):為了管理眾多的中斷請(qǐng)求,需要按每個(gè)(類)中斷處理的急迫程度,對(duì)中斷進(jìn)行分級(jí)管理,稱其為中斷優(yōu)先級(jí)。在有多個(gè)中斷請(qǐng)求時(shí),總是響應(yīng)與處理優(yōu)先級(jí)高的設(shè)備的中斷請(qǐng)求。
◎中斷嵌套:當(dāng)CPU正在處理優(yōu)先級(jí)較低的一個(gè)中斷,又來(lái)了優(yōu)先級(jí)更高的一個(gè)中斷請(qǐng)求,則CPU先停止低優(yōu)先級(jí)的中斷處理過(guò)程,去響應(yīng)優(yōu)先級(jí)更高的中斷請(qǐng)求,在優(yōu)先級(jí)更高的中斷處理完成之后,再繼續(xù)處理低優(yōu)先級(jí)的中斷,這種情況稱為中斷嵌套。
中斷嵌套示意圖
(4)中斷處理過(guò)程:一次完整的中斷過(guò)程由中斷請(qǐng)求、中斷響應(yīng)和中斷處理三個(gè)階段組成。
◎中斷請(qǐng)求:是由中斷源發(fā)出的并送給CPU的控制信號(hào),由中斷源設(shè)備通過(guò)將接口卡上的中斷觸發(fā)器置“1”完成。
接口卡上還有一個(gè)中斷屏蔽觸發(fā)器
中斷屏蔽觸發(fā)器置“1”,表示要屏蔽該設(shè)備的中斷請(qǐng)求;
中斷屏蔽觸發(fā)器置“0”,表示允許該設(shè)備發(fā)出中斷請(qǐng)求;
◎中斷響應(yīng):當(dāng)CPU接到中斷請(qǐng)求,若滿足下列條件,就會(huì)響應(yīng)中斷。
響應(yīng)中斷的條件:
※允許中斷觸發(fā)器為“1”狀態(tài);
※ CPU結(jié)束了一條指令的執(zhí)行過(guò)程;
※新請(qǐng)求的中斷優(yōu)先級(jí)較高;
中斷響應(yīng)要進(jìn)行的工作:
保存程序計(jì)數(shù)器PC的內(nèi)容或許包括程序狀態(tài)字的內(nèi)容到堆棧(中斷隱指令)
◎中斷處理過(guò)程:
關(guān) 中 斷 |
? | 保 存 斷 點(diǎn) 保 護(hù) 現(xiàn) 場(chǎng) |
? | 判 中 斷 源 轉(zhuǎn) 中 斷 服 務(wù) |
? | 開(kāi) 中 斷 |
? | 執(zhí) 行 中 斷 服 務(wù) 程 序 |
? | 關(guān) 中 斷 |
? | 恢 復(fù) 現(xiàn) 場(chǎng) 恢 復(fù) 斷 點(diǎn) |
? | 開(kāi) 中 斷 |
? | 返 回 斷 點(diǎn) |
3、DMA的概念和DMA處理過(guò)程
(1)DMA的概念:DMA是在專門的硬件( DMA)控制下,實(shí)現(xiàn)高速外設(shè)和主存儲(chǔ)器之間自動(dòng)成批交換數(shù)據(jù)盡量減少CPU干預(yù)的輸入/輸出操作方式。通常有兩種方式:
◎獨(dú)占總線方式 ◎周期挪用方式
(2)DMA的組成:
◎主存地址寄存器
◎數(shù)據(jù)數(shù)量計(jì)數(shù)器
◎DMA的控制/狀態(tài)邏輯 ◎DMA請(qǐng)求觸發(fā)器
◎數(shù)據(jù)緩沖寄存器 ◎中斷機(jī)構(gòu)
(3)DMA的傳送數(shù)據(jù)的過(guò)程:由三個(gè)階段組成
◎傳送前的預(yù)處理:由CPU完成以下步驟
向DMA卡送入設(shè)備識(shí)別信號(hào),啟動(dòng)設(shè)備,測(cè)試設(shè)備運(yùn)行狀態(tài),送入內(nèi)存地址初值,傳送數(shù)據(jù)個(gè)數(shù), DMA的功能控制信號(hào)。
◎數(shù)據(jù)傳送:在DMA卡控制下自動(dòng)完成
◎傳送結(jié)束處理
DMA 卡上應(yīng)包括通用接口卡的全部組成部分,并多出如下內(nèi)容:
主存地址寄存器,傳送字?jǐn)?shù)計(jì)數(shù)器,DMA控制邏輯,DMA請(qǐng)求,DMA響應(yīng),DMA工作方式,DMA優(yōu)先級(jí)及排隊(duì)邏輯等
一次完整的DMA傳送過(guò)程:
DMA 預(yù)處理,CPU向DMA送命令,如DMA方式,主存地址,傳送的字?jǐn)?shù)等,之后CPU執(zhí)行原來(lái)的程序
DMA 控制在 I/O 設(shè)備與主存間交換數(shù)據(jù):
準(zhǔn)備一個(gè)數(shù)據(jù), 向CPU發(fā)DMA請(qǐng)求,取得總線控制權(quán),進(jìn)行數(shù)據(jù)傳送,修改卡上主存地址,修改字?jǐn)?shù)計(jì)數(shù)器內(nèi)且檢查其值是否為零,不為零則繼續(xù)傳送,若已為零,則向 CPU發(fā)中斷請(qǐng)求.
非常好我支持^.^
(95) 32.1%
不好我反對(duì)
(201) 67.9%
相關(guān)閱讀:
- [電子說(shuō)] 集特嵌入式工業(yè)BOX整機(jī)推薦—G102 2024-12-06
- [電子說(shuō)] 智能密集架控制系統(tǒng)與傳統(tǒng)系統(tǒng)對(duì)比 2024-12-06
- [電子說(shuō)] 提高示波器使用效率的小技巧 2024-12-06
- [電子說(shuō)] 中國(guó)“雙法”研究會(huì)-玻色量子基金揭榜掛帥項(xiàng)目結(jié)果公布 2024-12-05
- [電子說(shuō)] NVIDIA打造Earth-2 NIM微服務(wù)以洞見(jiàn)未來(lái) 2024-12-05
- [電子說(shuō)] NVIDI助力打造3D遠(yuǎn)程監(jiān)控解決方案 2024-12-05
- [電子說(shuō)] 馬斯克xAI計(jì)劃:孟菲斯超算集群將擴(kuò)大十倍 2024-12-05
- [電子說(shuō)] 什么是工控機(jī)?相對(duì)于商業(yè)電腦有哪些優(yōu)勢(shì) 2024-12-04
( 發(fā)表人:admin )