




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
蔡
修制
般
衛(wèi)屐
犁
備領(lǐng)
<快
出
備印
熱他
長印馬
格也w
雷*
*
6技
被
舟
忸,
8解
8.1總線與輸入輸出系統(tǒng)概述
■一個(gè)計(jì)算機(jī)由CPU、存儲(chǔ)器、I/O設(shè)備三類模
塊組成,它們通過適當(dāng)?shù)耐愤M(jìn)行連接,連接
三類模塊的通路的集合被稱為互連結(jié)構(gòu)(或稱
互連網(wǎng)絡(luò))。
■僅在兩個(gè)部件之間傳遞信息的通路稱為專用通
路。
■在不同時(shí)刻傳遞不同部件之間信息的通路稱為
共享(公用)總線。
■現(xiàn)代計(jì)算機(jī)系統(tǒng)的典型互連結(jié)構(gòu)是總線。
2
8.1總線與輸入輸出系統(tǒng)概述
■任何模塊間的信息(地址、數(shù)據(jù)、控制)都是
通過總線來傳遞的,總線成為了系統(tǒng)的中樞、
圖8.1利用單總線進(jìn)行連接通信的計(jì)算機(jī)系統(tǒng)
3
8.1總線與輸入輸出系統(tǒng)概述
■輸入輸出系統(tǒng)由輸入輸出設(shè)備、輸入輸出接口、
輸入輸出控制器、輸入輸出控制管理軟件等部
分組成。
■輸入輸出系統(tǒng)主要負(fù)責(zé)完成計(jì)算機(jī)系統(tǒng)與輸入
輸出設(shè)備之間的信息交換。
■輸入輸出系統(tǒng)管理的對(duì)象不僅僅是輸入輸出設(shè)
備,還包括外部存儲(chǔ)器。輸入輸出設(shè)備與外部
存儲(chǔ)器統(tǒng)稱為外部設(shè)備。
■為了使計(jì)算機(jī)能夠與各種外設(shè)有效連接并進(jìn)行
信息交換,需要研究多種輸入輸出技術(shù)。
輸入輸出系統(tǒng)概述
■I/O接口:在完成各個(gè)外設(shè)和主機(jī)之間數(shù)據(jù)傳輸過程
中進(jìn)行各種協(xié)調(diào)等工作的邏輯部件。協(xié)調(diào)包括傳輸過
程中的速度和負(fù)載匹配、電平和格式轉(zhuǎn)換、中斷請(qǐng)求
等。
■輸入設(shè)備:用于向計(jì)算機(jī)系統(tǒng)輸入命令或文本、數(shù)據(jù)
等信息的機(jī)械與電子結(jié)合的部件。鍵盤和鼠標(biāo)是最基
本的輸入設(shè)備。
■輸出設(shè)備:用于將計(jì)算機(jī)系統(tǒng)中的信息輸出到計(jì)算機(jī)
夕卜部進(jìn)行顯示、交蕤等作出的機(jī)或與電子結(jié)合前窗件。
顯示器和打印機(jī)是最基本的輸出設(shè)備。
■外存設(shè)備:用于將計(jì)算機(jī)系統(tǒng)與外存儲(chǔ)器交換信息的
機(jī)械、電子與存儲(chǔ)介質(zhì)結(jié)合的部件。硬磁盤、光盤等
是基本的外存設(shè)備。
8.2總線
■總線是計(jì)算機(jī)系統(tǒng)的互連機(jī)構(gòu),是連接兩個(gè)或多個(gè)總線
設(shè)備的公共通信線路,是一組有定義的、可共享的、可
傳遞0、1邏輯信號(hào)的連接線,它由地址總線、數(shù)據(jù)總線、
控制總線組成。
■總線連接同時(shí)具有物理和邏輯兩種連接。
■總線設(shè)備是總線上連接的各種器件、部件、模塊等計(jì)算
機(jī)功能部件的統(tǒng)稱,它分為主設(shè)備(Master>和從屬設(shè)
備(Slave)o
■主設(shè)備是總線上的主控器,是得到控制權(quán)發(fā)布控制命令
控制總線運(yùn)行的設(shè)備,典型示例是CPU。每次數(shù)據(jù)傳輸
總是由主設(shè)備啟動(dòng)。
■從設(shè)備是總線上的被主設(shè)備控制或訪問的對(duì)象,是接受
控制命令的設(shè)備,典型示例是存儲(chǔ)器和I/O設(shè)備。
821總線類型與結(jié)構(gòu)一分類
■按照總線連接對(duì)象在計(jì)算機(jī)系統(tǒng)中所處的層次不同
(位置)
□片內(nèi)總線
□系統(tǒng)總線
□通信總線
■按照總線中數(shù)據(jù)線的多少不同(傳送信息)
□并行總線
□串行總線
■按照總線的使用方式不同
□專用總線
□公用(共享)總線
■按照總線的傳輸方式不同(定時(shí))
□同步總線
□異步總線
7
總線的標(biāo)準(zhǔn)化
■為了充分發(fā)揮總線性能、保障兼容性、便于系
統(tǒng)組建,總線需要標(biāo)準(zhǔn)化。
■總線標(biāo)準(zhǔn):正式公布的工業(yè)標(biāo)準(zhǔn)和實(shí)際存在的
工業(yè)標(biāo)準(zhǔn)。符合某種標(biāo)準(zhǔn)的總線稱為標(biāo)準(zhǔn)總線。
■總線的標(biāo)準(zhǔn)化包括:各種特性、數(shù)據(jù)傳輸率、
通信協(xié)議、政策協(xié)議等一系列規(guī)定和約定。
■典型的標(biāo)準(zhǔn)總線:ISA.EISA.PCI.PCI-E.
RS232、USB、1394等。同一標(biāo)準(zhǔn)可有多種版
本。
821總線類型與結(jié)構(gòu)一特性
■機(jī)械特性:規(guī)定了總線的線數(shù),傳輸線采用的材料,
總線插頭、插座的形狀、尺寸和信號(hào)線的排列等要
素。
■電氣特性:規(guī)定了總線中每條信號(hào)線的有效形式、
電流或電壓的變化范圍、信號(hào)傳送的方向(輸入或
輸出)、信號(hào)采用單端或雙端(差動(dòng))表示、信號(hào)
是單向傳輸或雙向傳輸、信號(hào)上拉電阻阻值、驅(qū)動(dòng)
電路等要素。
■功能特性:規(guī)定了總線中每條信號(hào)線的功能及數(shù)據(jù)
傳輸協(xié)議。
■時(shí)間特性:規(guī)定了總線的工作時(shí)序,即在總線上完
成各種操作時(shí),相關(guān)信號(hào)狀態(tài)變化與時(shí)鐘節(jié)拍(時(shí)
間)之間的關(guān)系。
9
821總線類型與結(jié)構(gòu)性能指標(biāo)
■總線帶寬??偩€帶寬定義為總線的最大數(shù)據(jù)傳
輸率,數(shù)據(jù)傳輸率定義為每秒傳輸?shù)淖止?jié)數(shù)。
■總線寬度。指的是總線的線數(shù),它決定了總線
所占的物理空間和成本。(地址線寬度,數(shù)據(jù)
線寬度)
■總線負(fù)載。指連接在總線上的最大設(shè)備數(shù)量。
■總線頻率。
■是否支持猝發(fā)傳送等
總線帶寬=數(shù)據(jù)線寬度X總線頻率
10
821總線類型與結(jié)構(gòu)一性能指標(biāo)
■例8.1PCI總線的時(shí)鐘頻率為33MHz/66MHz,當(dāng)該總
線進(jìn)行32/64位數(shù)據(jù)傳送時(shí),總線帶寬是多少?
■解:假設(shè)一個(gè)總線時(shí)鐘周期T完成一個(gè)數(shù)據(jù)的傳送,
時(shí)鐘頻率為人數(shù)據(jù)位為〃,則總線帶寬B為
8T8
■所以有
時(shí)鐘頻率(MHz)數(shù)據(jù)位總線帶寬(MB/s)
32132
33
64264
32264
66
64528
821總線類型與結(jié)構(gòu)一性能指標(biāo)
■例8.2使用ISA總線的20條地址線時(shí),允許尋
址的內(nèi)存空間有多大?使用PCI總線的32條地
址線時(shí),允許尋址的內(nèi)存空間又有多大?
■解:
ISA總線內(nèi)存空間=22。個(gè)內(nèi)存單元=1M個(gè)內(nèi)存單元
PCI總線內(nèi)存空間=232個(gè)內(nèi)存單元=4G個(gè)內(nèi)存單元
12
8.2.1總線類型與結(jié)構(gòu)一結(jié)構(gòu)
■單總線結(jié)構(gòu),如圖8.1所示。
■多總線結(jié)構(gòu),由兩種以上總線組成的系統(tǒng)互連
結(jié)構(gòu)。支持并行操作。
多條總線“interCameraSuper1/0ControllerSCSIEthernet
圖8.4一個(gè)基于PCI的系統(tǒng)示意圖
13
8.2.2總線的信息傳輸方式一總線操作
■在計(jì)算機(jī)系統(tǒng)中,所有功能的實(shí)現(xiàn)基本上是由
兩類操作相互配合而達(dá)成的,其一是數(shù)據(jù)在功
能部件內(nèi)部進(jìn)行加工處理,其二是數(shù)據(jù)在功能
部件之間進(jìn)行有效傳輸。
■在總線結(jié)構(gòu)的計(jì)算機(jī)系統(tǒng)中,各功能部件(總
線設(shè)備)之間為實(shí)現(xiàn)各種功能所需要的控制、
狀態(tài)、數(shù)據(jù)信息是利用共享總線來傳輸?shù)?,?/p>
以在總線上為配合某種功能實(shí)現(xiàn)而進(jìn)行的各種
信息傳輸被稱之為總線操作。
■總線上有兩種基本操作:讀操作和寫操作。通
常用時(shí)序圖描述。
內(nèi)存,I/O
14
8.2.2總線的信息傳輸方式一總線操作
4BUSTRANSACTION>
08.5PCI總線的基本讀操作時(shí)序15
8.2.2總線的信息傳輸方式一總線操作
tee
i??
FRAME#:"A」…——LzJk—
--T
1
1?
1t
11
e(
0A
AD-\-儂XOATA-2)DATA-3二
r1■v?i
e(
i?
1?
??
?▲▲
C/BE#一—(BJSCVaDXBEEX曲夕2X光HZ
:出/
S
IRDY#N'I
:4-t/
a二
Lw
e?
<
H
TRDY#<
C
DEVSEL#
DATA>
P-iASE
BUSTWSACFCN>
圖8.6PCI總線的基本寫操作時(shí)序16
8.2.2總線的信息傳輸方式一總線操作
完成一次總線操作所需的時(shí)間定義為總線周期,一個(gè)
總線周期可以是一個(gè)時(shí)鐘周期(大多數(shù)RISC系統(tǒng)),
也可以是多個(gè)時(shí)鐘周期(大多數(shù)CISC系統(tǒng))。
一個(gè)總線周期通常由一個(gè)地址時(shí)間段和一或多個(gè)數(shù)據(jù)
時(shí)間段組成。
■如果從屬設(shè)備的速度低于主設(shè)備,則在讀/寫總線周期
中可以插入等待周期。
■總線復(fù)用:地址、數(shù)據(jù)在一個(gè)總線周期內(nèi)分時(shí)公用一
組信號(hào)線。減少總線線數(shù),降低設(shè)備成本。
■猝發(fā)傳輸方式(burstmode):在一個(gè)地址時(shí)間段之
后用連續(xù)多個(gè)數(shù)據(jù)時(shí)間段依次傳輸多個(gè)數(shù)據(jù)的方式,
也稱為并發(fā)數(shù)據(jù)傳輸或成組數(shù)據(jù)傳輸方式。
17
8.2.2總線的信息傳輸方式一數(shù)據(jù)傳輸方式
■總線上進(jìn)行一次傳輸?shù)倪^程大致分為5個(gè)階段:傳輸
請(qǐng)求、總線仲裁、部件/設(shè)備尋址、數(shù)據(jù)傳輸和總線
釋放。
■數(shù)據(jù)傳輸?shù)幕痉绞接校?/p>
□并行傳送方式:系統(tǒng)總線
□串行傳送方式:通信總線
□分時(shí)(復(fù)用)傳送方式
□消息(數(shù)據(jù)包)傳送方式
■現(xiàn)代總線支持的總線傳輸(操作)
□讀/寫操作
□塊傳送操作
□寫后讀與讀修改寫操作
□廣播/廣集操作
18
8.2.2總線的信息傳輸方式一通信方式
■在總線上通信需要收發(fā)雙方的時(shí)間配合或控制,這種時(shí)
間配合或控制稱為總線定時(shí)或總線通信,其實(shí)質(zhì)是一種
協(xié)議或規(guī)則。
■它有兩種基本方案:同步(synchronous)和異步
(asynchronous)。
■同步總線包括一個(gè)收發(fā)雙方公用的時(shí)鐘(即總線時(shí)鐘,
在姓制線中)和一個(gè)固定的協(xié)議(protocol),該協(xié)議
用于與時(shí)鐘相關(guān)聯(lián)的通信。如圖8.5所規(guī)定的協(xié)議。
□同步定時(shí)方式不需要應(yīng)答,時(shí)序簡單,實(shí)現(xiàn)方便。
□總線速度以慢速設(shè)備而定,總線不宜過長。
■異步總算不用公共時(shí)鐘定時(shí),總線中沒有時(shí)鐘線,使用
握手協(xié)議(handshakingprotocol)。
□異步定時(shí)方式允許總線周期長度可變,可以支持慢速與快速設(shè)
備在同一總線上連接。
□總線控制復(fù)雜。有3種方式:非互鎖、半互鎖、全互鎖。
19
8.2.2總線的信息傳輸方式一通信方式
固定時(shí)寬
Data數(shù)據(jù)
DATARDY
ACK
Data數(shù)據(jù)
圖8.8由發(fā)送設(shè)備發(fā)起的異步數(shù)據(jù)傳輸握手時(shí)序20
8.2.2總線的信息傳輸方式一通信方式
■在串行異步通信中,采用了一種更為簡單的通
信方式,即在串行異步通信總線中,既不用握
手信號(hào),也沒有時(shí)鐘線,它利用收、發(fā)雙方事
先約定的數(shù)據(jù)傳輸格式和傳輸速率來協(xié)調(diào)數(shù)據(jù)
的傳輸。
■例如,RS232串行異步通信總線。
起便停止
1數(shù)據(jù)⑸6聯(lián)位)I(1/L5/2位)
DOD1
數(shù)據(jù)線
A
圖8.10串行異步通信數(shù)據(jù)格式
21
8.2.3總線仲裁
■在共享總線上,允許連接多個(gè)總線主設(shè)備和從
設(shè)備,有可能出現(xiàn)多個(gè)主設(shè)備同時(shí)要求使用總
線的情形。
■總線操作都是由主設(shè)備發(fā)起或控制的,為了防
止總線競(jìng)爭,共享總線上某時(shí)刻只允許一個(gè)主
設(shè)備使用總線,并實(shí)施對(duì)總線的控制。
?哪個(gè)主設(shè)備可以使用總線的選擇機(jī)制稱為總線
仲裁(busarbitration)。
■仲裁依據(jù)是主設(shè)備使用總線的優(yōu)先級(jí),仲裁機(jī)
制可分為集中式和分布式兩類方式。
22
8.2.3總線仲裁一集中式仲裁
■集中式仲裁采用一個(gè)中央總線仲裁器(也稱之
為總線控制器),由它來決定總線上同時(shí)提出
使用請(qǐng)求的主設(shè)備誰可以獲得總線使用權(quán)。
□菊花鏈(daisychaining)
□輪詢(polling)/計(jì)數(shù)查詢/定時(shí)器查詢
□獨(dú)立請(qǐng)求(independentrequesting)
■菊花鏈結(jié)構(gòu)簡單,優(yōu)先級(jí)固定
■輪詢和獨(dú)立請(qǐng)求方式優(yōu)先級(jí)設(shè)置較靈活
■獨(dú)立請(qǐng)求方式響應(yīng)速度快,結(jié)構(gòu)較復(fù)雜,連線
多
23
8.2.3.1集中式仲裁一菊花鏈
■菊花鏈仲裁邏輯可表示為(假設(shè)BR、BG、BB高有效):
BR=BR1,+BR2.TFBRn
BB=BB]+BB°H—?+BB
總線仲裁邏輯BG=BR?麗
設(shè)備相關(guān)信號(hào)產(chǎn)生邏輯|BBj=BGi叫呼—
<BGin,=BG,BGout=BBj-BGin^BGinjd=BGoutj
if(BB,=1)thenBR,-0
24
8.2.3.1集中式仲裁一輪詢/計(jì)數(shù)
■輪詢仲裁邏輯可表示為(假設(shè)BR、BG、BB高有效):
BR=BR1,+BR2.TFBRn
BB=BB]+BB°H—?+BB
總線仲裁邏輯if(BR-BB=1)then{輸出poll_count?poll_count=poll_count+1
設(shè)備相關(guān)信號(hào)產(chǎn)生邏輯n/RR....RR1
if((Addj=poll_count)*(BRj=l))thenBBj=1
[if(BBj=1)thenBRj=0
8.2.3.1集中式仲裁一獨(dú)立請(qǐng)求
■獨(dú)立請(qǐng)求仲裁邏輯可表示為(假設(shè)BR、BG、BB高有效):
BB=BB1+BB?+…+BBn
總線仲裁邏輯if((D是當(dāng)前請(qǐng)求設(shè)備中優(yōu)麒最高者)?(BB=O))thenBG1=1
設(shè)備相關(guān)信號(hào)產(chǎn)生邏輯if(BGj=l)then{BRj=O,BB^l)
圖8.13獨(dú)立請(qǐng)求仲裁方式26
8.2.3.2分布式仲裁
分布式仲裁不需要中央仲裁器,仲裁邏輯分布在
各個(gè)主設(shè)備中。
■假設(shè)圖8.14中設(shè)備的優(yōu)先級(jí)從高到低排序?yàn)镈R2…D「,則
設(shè)備仲裁邏輯可表示為:
BB=BB]+BB2HFBBn
|if((BB=O)-(BR,=l))then{BR,=O,BB,=1}
<if((BR]+…+BRj=O)?(BB=O)?(BRj=l))then{BRj=O,2<j<n
圖8.14自舉分布式仲裁方式27
8.2.3.2分布式仲裁
圖8.15示意的是一種鏈?zhǔn)椒植际街俨梅桨福藳]有中央
仲裁器外,與菊花鏈仲裁方式十分相似。它的仲裁邏輯為:
1-
BR=BR1.+BR29TBRn
BB=BB1+BB2t1-BBn
BBj=BGinj-BRj?麗
<BGin]=1,BGout:=BB〕?BGin『BGinj+l=BGoutj
if(BBj=1)thenBR1二0
圖8.15鏈?zhǔn)椒植际街俨梅绞?/p>
28
8.2.4典型的總線及應(yīng)用
Core2
■PCI總線Processor
■USB總線[PSB
x16PCIExp「籥JDDR2
FXRootComplexSDRAM
(MCH955)
DDR2
DMI/x4PCIExpreSMBu?SDRAM
向&SerialAT,
卜+2,x1P,lExpress
IOControllerHub
一8,USB2.0」
(ICH7)'Cloc峪.PowerManagement
一LPCJ沁丁,靠飛
1
AC97/J
BootGPIOs
軍ROMIntelHDAJdio
CCM0T1
LAN
ModeAudio
mCode
Cc
圖采用芯片組的機(jī)系統(tǒng)
8.16Intel955PC29
8.3輸入輸出接口
■CPU或I/O處理器、總線、I/O接口、I/O設(shè)備、
I/O管理控制軟件等構(gòu)成了輸入輸出系統(tǒng)。
■該系統(tǒng)的任務(wù)是對(duì)I/O設(shè)備的各種信息進(jìn)行輸入
或輸出到計(jì)算機(jī)系統(tǒng)的控制。
對(duì)輸入輸出系統(tǒng)的研究涉及兩個(gè)方面:一是如
何將I/O設(shè)備與計(jì)算機(jī)相連接,二是如何快速、
有效地使I/O設(shè)備與計(jì)算機(jī)進(jìn)行信息交換。
30
8.3輸入輸出接口
■I/O設(shè)備種類繁多,功能、操作方式、速度、
信號(hào)等差異巨大,一種普遍采用的有效的連接
方式是利用I/O接口,如圖8.17所示,該模型
也適用于硬盤、光盤存儲(chǔ)設(shè)備等外存與系統(tǒng)總
線的連接。
總線
I
DO接口1I/O接口11
H
DO設(shè)備1I/O設(shè)備n
圖8.17I/O設(shè)備與總線連接的一般模型
31
8.3輸入輸出接口
1.I/O接口作用及模型
■傳遞數(shù)據(jù)、設(shè)備選擇、I/O接口
設(shè)備控制、信號(hào)形式
轉(zhuǎn)換、速度匹配、數(shù)
據(jù)緩存、錯(cuò)誤檢測(cè)、
負(fù)載匹配、支持中斷系
統(tǒng)
■i/o接口有并行與串行2
之分
■對(duì)于某些復(fù)雜的外設(shè),
I/O接口還應(yīng)是具有
“智能”的控制器。圖8.18I/O接口模型
32
8.3輸入輸出接口
■I/O接口對(duì)內(nèi)與系統(tǒng)總線相連,對(duì)外通過接口
電纜與外設(shè)相連。
■簡單I/O接口和智能I/O接口在硬件邏輯的復(fù)雜
性上相差很大。
■從程序員的角度來看,所有I/O接口可以隱藏
外設(shè)的定時(shí)、機(jī)電、數(shù)據(jù)格式等細(xì)節(jié),它們的
差別僅僅在于接口內(nèi)部可讀寫的寄存器或緩沖
器的數(shù)量不同而已。
33
8.3輸入輸出接口
2.I/O地址編址方式
■為使CPU能選擇設(shè)備并進(jìn)行數(shù)據(jù)傳送,接口中
有一些通過軟件或指令訪問的寄存器或電路,
即I/O端口(Port)。
■對(duì)端口寄存器采用地址加以識(shí)別,這個(gè)識(shí)別過
程稱作I/O尋址;每個(gè)端口寄存器有唯一的地
址編在,這一危址編碼稱作端口地址/接口地
址/I/O地址。
■I/O地址有兩種編碼方式:存儲(chǔ)器映射(統(tǒng)一
編址)方式和I/O映射(獨(dú)立編址)方式。獨(dú)
立編址時(shí),有專用的I/O指令對(duì)端口訪問。
34
8.3輸入輸出接口
3.I/O接口設(shè)計(jì)
■對(duì)于簡單的I/O設(shè)備,可以使用芯片廠家提供
的某些接口芯片(如三態(tài)緩沖器、鎖存器、可
編程并行接口芯片、可編程串行接口芯片等)
設(shè)計(jì)滿足接口要求的I/O接口電路。
■對(duì)于復(fù)雜的I/O設(shè)備,可以利用芯片廠家提供
的單片機(jī)、微控制器(MCU)、嵌入式處理
器等設(shè)計(jì)滿足接口要求的I/O控制器,I/O控制
器實(shí)質(zhì)就是一個(gè)微小型的計(jì)算機(jī)系統(tǒng)。
■采用接口芯片設(shè)計(jì)I/O接口電路時(shí),地址譯碼
器設(shè)計(jì)是I/O接口設(shè)計(jì)的重要內(nèi)容之一。
35
8.4輸入輸出技術(shù)
■面對(duì)復(fù)雜的I/O設(shè)備,應(yīng)采用不同的輸入輸出技術(shù)加以
應(yīng)對(duì),才能滿足各種I/O設(shè)備與計(jì)算機(jī)進(jìn)行信息交換的
要求。
■目前可以采用的輸入輸出控制技術(shù)有:
□程序查詢(programmedI/O)方式
□中斷(interrupt-drivenI/O)方式
□直接存儲(chǔ)器存取(directmemoryaccess,DMA)方式
□I/O通道(I/Ochannel)方式。
■選擇I/O技術(shù)的基本原則是:一、能滿足用戶的數(shù)據(jù)傳
送速度要求且不丟失數(shù)據(jù),二、系統(tǒng)開銷盡量小,三、
能充分發(fā)揮硬件資源的能力(使I/O設(shè)備與CPU盡可能
并行工作)O
36
8.4.1程序查詢方式
■這是最簡單的輸入輸出技術(shù),
每個(gè)計(jì)算機(jī)都具備。利用程
序查詢I/O,可以實(shí)現(xiàn)處理獲取I/O設(shè)備狀態(tài)
器(通過接口)與I/O設(shè)備
之間的數(shù)據(jù)交換。
■程序查詢方式的實(shí)現(xiàn)不是僅
有軟件(程序)就可以了,
它必須有硬件的支持(數(shù)據(jù)完成I/O操作
寄存器和狀態(tài)寄存器)O
圖程序查詢流程
■程序查詢方式要求所有的8.20I/O
I/O操作必須在CPU的直接
控制下完成。
37
8.4.1程序查詢方式
■若有多個(gè)I/O設(shè)備以程序查詢方式與CPU進(jìn)行
信息交換,則CPU輪流查詢I/O設(shè)備,輪詢到
且準(zhǔn)備就緒的I/O設(shè)備可以與CPU交換數(shù)據(jù)。
■輪詢的順序決定了I/O設(shè)備被CPU服務(wù)的優(yōu)先
順序(即優(yōu)先級(jí))。
■程序查詢方式實(shí)現(xiàn)簡單,當(dāng)CPU的工作任務(wù)比
較辛一時(shí),中、低速I/O設(shè)備與CPU的信息交
換可以選用程序查詢方式。
38
8.4.2中斷方式
■程序查詢方式主要有以下限制:
□I/O數(shù)據(jù)傳輸速率低。
□CPU工作效率較低。
□不能保證及時(shí)響應(yīng)I/O設(shè)備的I/O服務(wù)請(qǐng)求。
■中斷是解決上述問題的有效方式之一,是I/O
設(shè)備獲得CPU服務(wù)的主要方式。
■中斷可以改善計(jì)算機(jī)的I/O特性。
■中斷可以實(shí)現(xiàn)主機(jī)與多臺(tái)外設(shè)的并行工作。
■中斷可以實(shí)現(xiàn)故障診斷與處理、對(duì)于隨機(jī)事件
展規(guī)定時(shí)間內(nèi)做出實(shí)時(shí)響應(yīng)與處理。
39
8.4.2中斷方式
■中斷是指,中斷源在需要CPU服務(wù)時(shí),請(qǐng)求CPU暫
?,F(xiàn)行工作轉(zhuǎn)向?yàn)橹袛嘣捶?wù),服務(wù)完成后,再讓
CPU回到原工作狀態(tài)繼續(xù)完成被打斷的工作。
■從程序運(yùn)行角度看,中斷是程序控制流的變化。
CPU現(xiàn)行程序中斷源i處理程序
N
斷點(diǎn):N+m
①(PSW)一堆棧(SP)②((SP)+j尸N+m一PC
(PC尸N+m一堆棧(SP)+j((SP))一PSW
Handler-i^PC
圖8.22中斷過程示意圖40
8.4.2中斷方式
■中斷源就是引起中斷發(fā)生的源頭。
■由內(nèi)部中斷源引發(fā)的中斷稱為內(nèi)中斷或軟件中
斷。
■由外部中斷源引發(fā)的中斷稱為外中斷或硬件中
斷。
■通常,內(nèi)中斷是不可屏蔽的,而外中斷分為可
屏蔽和非屏蔽兩類。
41
8.4.2中斷方式中斷過程
■一個(gè)典型的中斷處理過程如下(參見圖8.22):
(1)中斷請(qǐng)求
(2)中斷檢測(cè)
(3)中斷響應(yīng)
(4)斷點(diǎn)保護(hù)
(5)(識(shí)別中斷源)
(6)中斷處理
(7)斷點(diǎn)恢復(fù)
(8)中斷返回
■過程中的步驟⑴?(4)/(5)由硬件實(shí)現(xiàn),步驟(5)/(6)?(8)
由軟件(中斷處理程序)實(shí)現(xiàn)。
■由于中斷發(fā)生的時(shí)刻是任意的,不可預(yù)期的,所以,
斷點(diǎn)信息的保護(hù)十分重要。
42
8.4.2中斷方式中斷源的選擇與識(shí)別
■當(dāng)系統(tǒng)中有多個(gè)中斷源時(shí),解決中斷源選擇的方法
是采用中航優(yōu)免級(jí)(Interruptprioritylevels,IPL)
□當(dāng)多個(gè)中斷源同時(shí)提出中斷請(qǐng)求時(shí),只有優(yōu)先級(jí)最高
的中斷源的請(qǐng)求被選擇,并被CPU處理;
□當(dāng)高優(yōu)先級(jí)中斷正被CPU服務(wù)時(shí),所有低優(yōu)先級(jí)中斷
被禁止;高優(yōu)先級(jí)中斷請(qǐng)求可以打斷低優(yōu)先級(jí)中斷服
務(wù),即允辭中斷嵌套(Interruptnesting)或多重中斷。
■中斷處理程序/中斷服務(wù)程序(serviceroutine)
中斷源
■中斷優(yōu)先權(quán)仲裁與總線仲裁極為相似,也可以采用
類似菊花鏈、查詢、獨(dú)立請(qǐng)求等仲裁方案,可以軟
件、硬件、軟硬件結(jié)合來實(shí)現(xiàn)。
43
8.4.2中斷方式硬件仲裁
(a)菊花鏈
INTR1
(b)分組獨(dú)立請(qǐng)求
圖8.23基本中斷優(yōu)先級(jí)硬件仲裁方案
8.4.2中斷方式軟件仲裁
INT-REQ<>>
中斷請(qǐng)求寄存器
D
n1
系■
D
統(tǒng)n
總DB
線
D1
Do
AB譯
中
中
中
中
斷
斷
斷
斷
源
源
源
源
碼
器12n
n-
圖824單中斷請(qǐng)求線、軟件查詢的中斷優(yōu)先權(quán)仲裁邏輯
45
8.4.2中斷方式向量中斷
■由k確定中斷處理程序人口地址。
■增加中斷屏蔽寄存器,達(dá)到封鎖某中斷源或適度、動(dòng)態(tài)改變
中斷源優(yōu)先級(jí)的目的。
■在中斷處理程序人口地址處放置無條件跳轉(zhuǎn)指令。
INTR*
JUMProutine_1中
有效請(qǐng)求
中斷請(qǐng)求寄存器斷
JUMProutine_2向
INT-REQO
中
加入PC&dD。<量
優(yōu)先級(jí)INT-REQ1
表
地址k位D<斷
編碼/比較器&1
源JUMProutine_n
INT-REQn-1
&De卜
D。routine1中斷源1處理程序
Di
routine_2中斷源2處理程序
U-i
k位n
中斷屏蔽寄存器routine_n中斷源n處理程序
中斷向量
(a)硬件邏輯
圖8.25向量中斷優(yōu)先權(quán)仲裁邏輯(b)中斷處理程序在內(nèi)存中的位置
例題
■例8.5某計(jì)算機(jī)系統(tǒng)內(nèi)存地址32位,無條件跳
轉(zhuǎn)指令由5字節(jié)組成,中斷系統(tǒng)有12個(gè)中斷源,
優(yōu)先級(jí)仲裁采用圖825方集,試為12個(gè)中斷源
設(shè)計(jì)其中斷向量,使中斷向量表空間最小。
■解:12個(gè)中斷源需要優(yōu)先級(jí)編碼/比較器有12
條中斷請(qǐng)求輸入線,經(jīng)編碼、比較產(chǎn)生k=4位
地址輸出。當(dāng)程序計(jì)數(shù)器PC為32位時(shí)可以實(shí)
現(xiàn)對(duì)32位內(nèi)存地iit空間進(jìn)行訪問。中斷響應(yīng)時(shí),
可耗如圖8.26所示方式生成中斷向量。此*,
f斷向量表空間為最小,占12x8字節(jié)內(nèi)存單
兀Jo
47
中斷源k位地址
32位中斷向量設(shè)xx…x=00...0
編號(hào)編碼
中斷向量—>PC_00000000HJUMProutine_0
00000xx...x000000000000008HJUMProutine1
—
10001xx...x0001000
20010xx...x0010000
00000058HJUMProutine_11
30011xx...x0011000
40100xx...x0100000
50101xx...x0101000routine_0中斷源0處理程序
60110xx...x0110000
70111xx...x0111000
routine_1中斷源1處理程序
81000xx...x1000000
91001xx...x1001000
101010xx...x1010000routine_11中斷源11處理程序
111011xx...x1011000
注:中斷向量空間在內(nèi)存中的位置取決于
XX…X的不同編碼組合。
圖826中斷向量生成方式之一
48
中斷方式多重中斷
■多重中斷:指有多個(gè)中斷源的計(jì)算機(jī)系統(tǒng)中,按照各
自的優(yōu)先叔并以靛套方式工作M中斷。
中斷優(yōu)先級(jí)的設(shè)置與調(diào)整
□設(shè)置:在多重中斷系統(tǒng)中,優(yōu)先級(jí)根據(jù)中斷事件的輕、重、
緩、急程度而分成的若干級(jí)別,且給每一中斷源分配一個(gè)優(yōu)
先級(jí)。CPU先響應(yīng)高級(jí)中斷的請(qǐng)求。
□中斷屏蔽:給每個(gè)中斷源配置一位屏蔽觸發(fā)器,1表示阻止
該中斷源的請(qǐng)求,0表示可以正常申請(qǐng),并將所有的觸發(fā)器
組成一個(gè)中斷屏蔽寄存器。
□調(diào)整:用指令設(shè)置和修改中斷屏蔽寄存器,可以靈活改變?cè)?/p>
有優(yōu)先順序。
多重中斷的響應(yīng)過程:關(guān)中斷、保存現(xiàn)場(chǎng)、識(shí)別中斷、
形成服務(wù)程序入口地址、開中斷、執(zhí)行服務(wù)程序、關(guān)
中斷、恢復(fù)現(xiàn)場(chǎng)、開中斷、中斷返回。
49
■例8.6某計(jì)算機(jī)系統(tǒng)有5級(jí)中斷:LO、L1、L2、L3、L4,硬
件優(yōu)先級(jí)由高至低順序?yàn)長0-L1-L2一L3一L4?,F(xiàn)希望設(shè)
置屏蔽字將中斷響應(yīng)優(yōu)先順序改為L3—L1—L4—L0—L2,
(1)試給出各中斷級(jí)在屏蔽寄存器中設(shè)置的屏蔽字(假設(shè)“1”
表示屏蔽);
(2)首先LO、L1級(jí)中斷源發(fā)出中斷請(qǐng)求,在CPU處理L1級(jí)中
斷時(shí),L2、L3、L4級(jí)中斷又提出了中斷請(qǐng)求,試畫出優(yōu)先
級(jí)修改前、后的中斷響應(yīng)、處理過程程序運(yùn)行軌跡示意圖。
■解:(1)各中斷級(jí)屏蔽字設(shè)置為
L0L1L2L3L4說明
L010100允許優(yōu)先級(jí)高于L0的L1、L3、L4級(jí)中斷
L111101允許優(yōu)先級(jí)高于L1的L3級(jí)中斷
L200100允許優(yōu)先級(jí)高于L2的L0、L1、L3、L4級(jí)中斷
L311111L3優(yōu)先級(jí)最高,禁止所有級(jí)別中斷
L410101允許優(yōu)先級(jí)高于L4的L1、L3級(jí)中斷
50
解:(2)優(yōu)先級(jí)修改前中斷響應(yīng)、處理過程的程序運(yùn)行軌
跡示意如圖8.27。優(yōu)先級(jí)修改后中斷響應(yīng)、處理過程的程序
運(yùn)行軌跡示意如圖8.28。
主程序L0級(jí)中斷L1級(jí)中斷L2級(jí)中斷L3級(jí)中斷L4級(jí)中斷
中斷響應(yīng)順序:L0—L1-L2一L3一L4
圖827優(yōu)先級(jí)修改前程序運(yùn)行軌跡
51
圖8.28優(yōu)先級(jí)修改后程序運(yùn)行軌跡
52
8.4.2中斷方式可編程中斷控制器PIC
■另一種更靈活、更通用的向量中斷方案是用一個(gè)功能
更強(qiáng)的可編程中斷控制器(ProgrammableInterrupt
Controller,PIC)取代優(yōu)先級(jí)編碼/比較器。
■PIC在中斷系統(tǒng)中起著一個(gè)全面管理者的作用。
□接受來自外部設(shè)備的請(qǐng)求,確定哪個(gè)請(qǐng)求是最重要(最高優(yōu)
先權(quán))的,查明收到的請(qǐng)求是否比當(dāng)前正被服務(wù)的請(qǐng)求有更
高的優(yōu)先級(jí)別,并且基于這些判斷向CPU發(fā)出中斷信號(hào)。
□P1C向CPU發(fā)出中斷信號(hào)后,必須設(shè)法給CPU提供信息,該
信息能使程序計(jì)數(shù)器PC,指向”與請(qǐng)求設(shè)備相關(guān)的服務(wù)程序O
這個(gè)“指示器”是一個(gè)在向量表中的地址,經(jīng)常作為向量數(shù)
據(jù)(vectoringdata)。
■PIC的典型范例是可編程82c59A。Intersi182c59A是
IntersilAmericasInc.生產(chǎn)的一個(gè)高性能CMOS優(yōu)先
權(quán)中斷控制器,由先進(jìn)的2RIICMOS工藝制造。
53
8.4.2中斷方式實(shí)現(xiàn)中斷處理程序
■中斷方式由中斷系統(tǒng)或中斷機(jī)構(gòu)實(shí)
現(xiàn),它包括硬件和軟件兩部分,與
程序查詢方式相比要復(fù)雜許多。
■硬件設(shè)計(jì)包括三部分邏輯:中斷控
制邏輯、中斷請(qǐng)求與優(yōu)先級(jí)仲裁邏
輯、I/O接口。
■軟件設(shè)計(jì)包括初始化程序、中斷處
理程序的編寫。
□每個(gè)中斷源必須有自己的中斷處理程序
□中斷處理程序與子程序
圖8.31基本框架
54
8.4.2中斷方式實(shí)現(xiàn)
■中斷具有快速響應(yīng)特性,但中斷仍需時(shí)間。
■一次中斷過程需要有響應(yīng)時(shí)間、信息保護(hù)與恢
復(fù)時(shí)間,也許還需要中斷源識(shí)別時(shí)間(非向量
中斷),這些非實(shí)質(zhì)中斷處理時(shí)間統(tǒng)稱為中斷
額外開銷時(shí)間。
■一次中斷過程所需的完整時(shí)間是對(duì)中斷源實(shí)質(zhì)
的處理時(shí)間與中斷
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 文冠果油粕粉對(duì)面團(tuán)特性及面包品質(zhì)的影響
- 二零二五年度辦公室租賃合同范本:帶車位租賃
- 藥店裝修合同解約風(fēng)險(xiǎn)規(guī)避
- 2025年度半年期租賃合同簽訂與租賃房屋租賃權(quán)轉(zhuǎn)讓
- 房地產(chǎn)評(píng)估居間合同
- 化學(xué)制藥過程節(jié)能減排行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 便攜式智能肺功能儀行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 2025年錦綸6-DTY合作協(xié)議書
- 檔案查閱服務(wù)協(xié)議范文
- 音樂行業(yè)演出版權(quán)免責(zé)協(xié)議
- 工程結(jié)算單【范本模板】
- 5S點(diǎn)檢表1(日檢查表)
- 醫(yī)院感染管理組織架構(gòu)圖
- 冠心病病人的護(hù)理ppt(完整版)課件
- 民間非營利組織會(huì)計(jì)報(bào)表模板
- 2020華夏醫(yī)學(xué)科技獎(jiǎng)知情同意報(bào)獎(jiǎng)證明
- 合伙辦廠協(xié)議書范本(通用5篇)
- 水輪機(jī)結(jié)構(gòu)介紹匯總
- 素描石膏幾何體
- ISO_15442(隨車起重機(jī)安全要求)
- 過橋資金(新)
評(píng)論
0/150
提交評(píng)論