第五章?中央處理器
5.1.1 CPU的功能
程序是一個(gè)指令序列泻拦,這個(gè)序列明確告訴計(jì)算機(jī)應(yīng)該執(zhí)行什么操作怜校,在什么地方找到用來操作的數(shù)據(jù)了牛。
一旦程序進(jìn)入內(nèi)存儲器氨鹏,就可以由計(jì)算部件來自動完成取指令和執(zhí)行指令欧募,而CPU就是執(zhí)行這樣的功能。
CPU的四大基本功能:
指令控制仆抵、操作控制跟继、時(shí)間控制、數(shù)據(jù)加工
1.指令控制
保證程序按順序執(zhí)行程序镣丑。
2.操作控制
程序是一個(gè)指令序列舔糖,一條指令的功能往往由若干個(gè)操作信號的組合來實(shí)現(xiàn)。
因此莺匠,CPU 管理并產(chǎn)生 由內(nèi)存取出的每條指令的操作信號金吗,把各種操作信號送往相應(yīng)的部件,從而控制這些部件按指令的要求進(jìn)行動作慨蛙。
3.時(shí)間控制
對各種操作實(shí)施時(shí)間上的定時(shí)辽聊,稱為時(shí)間控制。
4.數(shù)據(jù)加工
對數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算處理期贫。
5.1.2 CPU的基本組成
CPU的基本部分變成了運(yùn)算器(ALU跟匆,算術(shù)邏輯單元)、cache通砍、控制器三大部分玛臂。
控制器
由程序計(jì)數(shù)器PC烤蜕、指令寄存器IR、指令譯碼器迹冤、時(shí)序產(chǎn)生器和操作控制器組成讽营。
屬于“決策機(jī)構(gòu)”,完成協(xié)調(diào)和只會整個(gè)計(jì)算機(jī)系統(tǒng)的操作泡徙。
其主要功能:
(1):從指令cache中取出一條指令橱鹏,并指出下一條指令在指令cache中的位置。
(2): 對指令進(jìn)行譯碼或測試堪藐,并產(chǎn)生相應(yīng)的操作控制信號莉兰,以便啟動規(guī)定的動作。
運(yùn)算器
由ALU算術(shù)邏輯單元礁竞、通用寄存器糖荒、數(shù)據(jù)緩沖寄存器、狀態(tài)字寄存器組成
有兩個(gè)主要功能:
(1): 執(zhí)行所有的算術(shù)運(yùn)算模捂。
(2): 執(zhí)行所有的邏輯運(yùn)算捶朵,并進(jìn)行邏輯測試,如零值測試或兩個(gè)值的比較狂男。
5.1.3 CPU的主要寄存器
【十分重要W劭础!并淋!一開始忽略了寓搬,后來看到在指令周期中需要有這個(gè)姿勢儲備!】
數(shù)據(jù)緩沖寄存器(DR)
存的是數(shù)據(jù)字县耽。
作用:
①:作為ALU運(yùn)算結(jié)果和通用寄存器之間信息傳遞中時(shí)間上的緩沖句喷。
②:補(bǔ)償CPU和內(nèi)存、外圍設(shè)備之間在操作速度上的差別兔毙。
指令寄存器(IR)
指令寄存器(IR)用來保存當(dāng)前正在執(zhí)行的指令唾琼。
PS:在一條指令執(zhí)行時(shí),先把它從指令cache存儲器(簡稱指存)讀出澎剥,然后傳送到 指令寄存器锡溯,然后 指令寄存器 中的操作碼字段 傳送到 指令譯碼器 ,操作碼譯碼后哑姚,向操作控制器發(fā)出具體操作的特定信號祭饭。
程序計(jì)數(shù)器(PC)
作用:確定下一條指令在內(nèi)存中的地址。
當(dāng)執(zhí)行指令時(shí)叙量,CPU會自動修改PC的內(nèi)容倡蝙,以便其保持的總是將要執(zhí)行的下一條指令的地址。
由于大多數(shù)指令都是按順序來執(zhí)行的绞佩,所以修改的過程中通常只是簡單的對PC加1.
數(shù)據(jù)地址寄存器(AR)
存的是地址寺鸥。
用來保存當(dāng)前CPU所訪問的數(shù)據(jù)cache存儲器種(簡稱數(shù)存)單元的地址猪钮。
通用寄存器(R0~R3)
當(dāng)ALU(算術(shù)邏輯單元)執(zhí)行算數(shù)或邏輯運(yùn)算時(shí),為ALU提供一個(gè)工作區(qū)胆建。
例如烤低,在執(zhí)行一次加法運(yùn)算中,選擇兩個(gè)操作數(shù)(分別放在兩個(gè)寄存器)相加笆载,所得到的結(jié)果再送到一個(gè)寄存器扑馁。
狀態(tài)字寄存器(PSW)
顧名思義,狀態(tài)字寄存器宰译。
來保存 算術(shù)指令 和 邏輯指令運(yùn)算或測試結(jié)果建立的各種條件代碼檐蚜。
如:運(yùn)算結(jié)果進(jìn)位標(biāo)志(C);運(yùn)算結(jié)果溢出標(biāo)志(V);運(yùn)算結(jié)果為零標(biāo)志(Z);運(yùn)算結(jié)果為負(fù)標(biāo)志(N);
5.1.4 操作控制器與時(shí)序產(chǎn)生器
數(shù)據(jù)通路:
多寄存器之間傳送信息的通路魄懂。
操作控制器:
根據(jù)指令操作碼和時(shí)序信號(從主存取出指令沿侈,完成指令操作碼譯碼),產(chǎn)生各種操作控制信號市栗,以便正確地選擇數(shù)據(jù)通路缀拭,把有關(guān)數(shù)據(jù)打到一個(gè)寄存器,從而完成取指令和執(zhí)行指令的控制填帽。
硬布線控制器(時(shí)序邏輯型)(硬件實(shí)現(xiàn))
微程序控制器(存儲邏輯型)(軟件實(shí)現(xiàn))
時(shí)序產(chǎn)生器:
產(chǎn)生各種時(shí)序信號(電位,脈沖)。
對各種操作實(shí)施時(shí)間上的控制辑莫。
5.2 指令周期
5.2.1 指令周期的基本概念
指令周期弄痹,CPU周期,T周期
指令周期是取出一條指令并執(zhí)行這條指令的時(shí)間嘹悼。
CPU周期叛甫,稱為機(jī)器周期,又稱時(shí)鐘周期杨伙,內(nèi)存中讀取一個(gè)指令字的最短時(shí)間來規(guī)定CPU周期其监。
一個(gè)CPU周期又包含有若干個(gè)T周期。T周期為計(jì)算機(jī)操作的最小時(shí)間單位限匣。
一條指令所需的最短時(shí)間為兩個(gè)CPU周期抖苦。
單周期、多周期
所謂單周期:就是在一個(gè)CPU周期中完成取指和執(zhí)行操作【少數(shù)指令可實(shí)現(xiàn)】
大多數(shù)指令需要多個(gè)CPU周期完成指令周期的全部操作米死。
用方框圖語言表示指令周期
指令系統(tǒng)設(shè)計(jì)()
方框:按CPU周期
方框內(nèi)內(nèi)容:數(shù)據(jù)通路操作或操作控制
菱形符號:判別或測試
~:共操作锌历,前邊講的5種操作的框圖描述。
公操作:取指令峦筒。
時(shí)序產(chǎn)生器的功能:
產(chǎn)生時(shí)序信號究西。
時(shí)序產(chǎn)生器的組成:
時(shí)鐘源、環(huán)形脈沖發(fā)生器勘天、節(jié)拍脈沖和讀寫時(shí)序譯碼邏輯怔揩、啟妥叫希控制邏輯。
控制方式:
同步控制商膊,異步控制伏伐,聯(lián)合控制。
同步控制
在任何情況下晕拆,已定的指令在執(zhí)行時(shí)所需的機(jī)器周期數(shù)和時(shí)鐘周期數(shù)都是固定不變的藐翎。
選取方案:
1.采用完全統(tǒng)一的機(jī)器周期執(zhí)行各種不同的指令。
2.采用不定長機(jī)器周期实幕。
3.中央控制與局部控制結(jié)合吝镣。
異步控制
每條指令、每個(gè)操作控制信號需要多少時(shí)間就占用多少時(shí)間昆庇。
每條指令的指令周期可由多少不等的機(jī)器周期組成末贾;
沒有固定的CPU周期數(shù)或嚴(yán)格的時(shí)鐘周期。
聯(lián)合控制
同步控制和異步控制相結(jié)合的方式整吆。
5.4 微程序控制
控制存儲器:
控制存儲器用來存放實(shí)現(xiàn)全部指令系統(tǒng)的微程序拱撵。
控制存儲器的字長即微指令字的長度,其存儲容量由機(jī)器指令系統(tǒng)而定表蝙,即取決于微程序的數(shù)量拴测。對控制存儲器的要求是速度快,讀出周期要短府蛇。
微指令寄存器:
微指令寄存器是用來存放由控制存儲器讀出一條微指令信息集索。
微地址寄存器決定要訪問的下一條微指令的地址,而微指令寄存器則保存一條偽指令的操作控制字段和判別測試字段的信息汇跨。
地址轉(zhuǎn)移邏輯:
通過判別測試字段P和執(zhí)行部件的“狀態(tài)條件”反饋信息务荆,去修改微地址寄存器的內(nèi)容,實(shí)現(xiàn)一定的條件轉(zhuǎn)移扰法。
微程序設(shè)計(jì)方法(會設(shè)計(jì))
水平微指令和垂直微指令區(qū)別
水平型微指令并行操作能力強(qiáng)蛹含,效率高,靈活性強(qiáng)塞颁。垂直型微指令則比較差浦箱。
垂直型微指令中,一般只能完成一個(gè)操作祠锣,控制一兩個(gè)信息傳送通路酷窥,因此微指令的并行操作能力低,效率低伴网。
水平型指令執(zhí)行一條指令的時(shí)間短蓬推,垂直型微指令執(zhí)行時(shí)間長。
水平型微指令解釋指令的微程序澡腾,微指令字較長沸伏,微程序短的特點(diǎn)糕珊。垂直型相反。
水平型微指令用戶難以控制毅糟,而垂直型指令與指令比較相似红选,容易控制。
第六章?總線系統(tǒng)
6.1 總線概念
總線是多個(gè)系統(tǒng)功能部件進(jìn)行數(shù)據(jù)傳送的公共通路姆另。
按位置分類:一個(gè)單處理器系統(tǒng)中的總線大致分為三類:
(1) 內(nèi)部總線:CPU內(nèi)部連接各寄存器及運(yùn)算部件之間的總線
(2) 系統(tǒng)總線:CPU同計(jì)算機(jī)系統(tǒng)的其他高速功能部件喇肋,如存儲器、通道等互相連接的總線迹辐。
(3) I/O總線:中蝶防、低速I/O設(shè)備之間互相連接的總線。
總線的特性
物理特性:指總線的物理連接方式明吩,包括總線的根數(shù)间学,總線的插頭、插座的形狀贺喝,引腳線的排列方式等菱鸥。功能特性:描述總線中每一根線的功能。
電氣特性:定義每一根線上信號的傳遞方向及有效電平范圍躏鱼。送入CPU的信號叫輸入信號(IN),從CPU發(fā)出的信號叫輸出信號(OUT)殷绍。
時(shí)間特性:定義了每根線在什么時(shí)間有效染苛。規(guī)定了總線上各信號有效的時(shí)序關(guān)系,CPU才能正確無誤地使用主到。
總線評價(jià)指標(biāo)
總線帶寬(BW):總線的帶寬指的是單位時(shí)間內(nèi)總線上可傳送的數(shù)據(jù)量茶行。單位是字節(jié)/秒(B/s)或兆字節(jié)/秒(MB/s)〉窃浚總線帶寬是總線本身所能達(dá)到的最高傳輸速率畔师。 與總線帶寬密切相關(guān)的兩個(gè)概念是總線寬度和總線的工作頻率。
總線寬度(W)總線的寬度指的是總線能同時(shí)傳送的數(shù)據(jù)位數(shù)牧牢,(通常題目中會有“一個(gè)總線周期中并行傳輸XX個(gè)字節(jié)的數(shù)據(jù)” 這類話)
**總線工作頻率(f)**總線的工作頻率即總線的時(shí)鐘頻率看锉,以MHz為單位。它是指用于協(xié)調(diào)總線上的各種操作的時(shí)鐘信號的頻率塔鳍。工作頻率越高則總線工作速度越快伯铣。
總線帶寬的計(jì)算公式如下:
BW =(W/8)× f/每個(gè)存取周期的時(shí)鐘數(shù)
解釋:
(W/8):如果W用位來表示,除8得到字節(jié)數(shù)轮纫。
每個(gè)存取周期的時(shí)鐘數(shù):題目沒寫的話就為1.
6.1.2 總線的連接方式
1.單總線結(jié)構(gòu) 使用一條系統(tǒng)總線來連接CPU腔寡、主存和I/O設(shè)備,叫做單總線結(jié)構(gòu)掌唾。
6.1.3 總線的內(nèi)部結(jié)構(gòu)
6.1.4 總線結(jié)構(gòu)實(shí)例CPU總線:?
也稱CPU——存儲器總線放前。此總線可連接主存忿磅。PCI總線: 用于連接高速的I/O設(shè)備模塊。ISA總線: pentium機(jī)使用該總線與低速I/O設(shè)備連接凭语。
6.2 總線接口
6.2.1 信息的傳送方式
計(jì)算機(jī)系統(tǒng)中贝乎,傳輸信息采用三種方式: 串行傳送、并行傳送和分時(shí)傳送叽粹。但是出于速度和效率上的考慮览效,系統(tǒng)總線上傳送的信息必須采用并行傳送方式。
串行傳送
只有一條傳輸線虫几,有利于長途傳送數(shù)據(jù)锤灿。 在串行傳送時(shí),被傳送的數(shù)據(jù)需要在發(fā)送部件進(jìn)行并--串變換辆脸,這稱為拆卸但校;而在接收部件又需要進(jìn)行串--并變換,這稱為裝配啡氢。 為了區(qū)分一段時(shí)間內(nèi)到底傳了幾個(gè)0或1状囱,用到位時(shí)間。串行傳輸時(shí)低位在前倘是,高位在后亭枷。
例題:采用串行接口進(jìn)行七位ASCII碼傳送,帶有1位奇偶校驗(yàn)位搀崭,1位起始位和1位停止位叨粘,當(dāng)波特率為9600波特時(shí), 字符傳送速率為____瘤睹。 A.960 B.873 C.1371 D.480
答:波特率:每1秒傳送9600個(gè)bit
由題意:10個(gè)bit位=1個(gè)字符所以每秒鐘傳送960個(gè)字符 選A
2.并行傳送
用并行方式傳送二進(jìn)制信息時(shí)升敲,對每個(gè)數(shù)據(jù)位都需要單獨(dú)一條傳輸線。
3.分時(shí)傳送
6.2.2 總線接口的基本概念
接口即I/O設(shè)備適配器轰传,具體指CPU和主存驴党、外圍設(shè)備之間通過總線進(jìn)行連接的邏輯部件。
I/O設(shè)備適配器=I/O接口=適配器=I/O功能模塊
一個(gè)適配器的兩個(gè)接口:一個(gè)同系統(tǒng)總線相連获茬,采用并行方式港庄,另外一個(gè)同設(shè)備相連,可能采用并行方式或是串行方式锦茁。
6.3 總線的仲裁
為了解決多個(gè)主設(shè)備同時(shí)競爭總線控制權(quán)攘轩,必須具有總線仲裁部件
按照總線仲裁電路的位置不同,仲裁方式分為集中式仲裁和分布式仲裁兩類码俩。
對于單處理器系統(tǒng)總線而言度帮,總線仲裁器=總線控制器,是CPU的一部分
6.3.1 集中式仲裁
1.鏈?zhǔn)讲樵兎绞剑?/h3>
(1).菊花鏈查詢方式:
授權(quán)信號線(BG)從總線仲裁器出發(fā),每經(jīng)過一個(gè)設(shè)備笨篷,檢查其是否有總線請求瞳秽,有的話就該I/O接口有總線控制權(quán),且不往下查詢率翅,沒有就往下查詢练俐。所以,離總線仲裁器最近的冕臭,有最高優(yōu)先權(quán)腺晾。
鏈?zhǔn)讲樵兪峭ㄟ^接口的優(yōu)先級排隊(duì)電路實(shí)現(xiàn)的。
缺點(diǎn):1.對電路故障敏感辜贵。2.優(yōu)先級低的可能一直不能使用總線悯蝉。
2.計(jì)數(shù)器定時(shí)查詢方式
計(jì)數(shù)器初值也可用程序來設(shè)置,這可以方便地改變優(yōu)先次序托慨,但這種靈活性是以增加線數(shù)為代價(jià)的鼻由。
3,獨(dú)立請求方式優(yōu)點(diǎn):
總線請求響應(yīng)的速度快,用不著一個(gè)設(shè)備接一個(gè)設(shè)備地查詢厚棵。其次蕉世,對優(yōu)先次序的控制相當(dāng)靈活;
缺點(diǎn):擴(kuò)充性較差婆硬;
分布式仲裁
分布式仲裁不需要中央仲裁器狠轻,每個(gè)潛在的主方功能模塊都有自己的仲裁號和仲裁器。
當(dāng)它們有總線請求時(shí)柿祈,把它們唯一的仲裁號發(fā)送到共享的仲裁總線上哈误,每個(gè)仲裁器將仲裁總線上得到的號與自己的號進(jìn)行比較。如果仲裁總線上的號大躏嚎,則它的總線請求不予響應(yīng),并撤消它的仲裁號菩貌。最后卢佣,獲勝者的仲裁號保留在仲裁總線上。顯然箭阶,分布式仲裁是以優(yōu)先級仲裁策略為基礎(chǔ)虚茶。
優(yōu)點(diǎn):線路可靠性高(個(gè)別仲裁故障不會影響整個(gè)系統(tǒng))
缺點(diǎn):設(shè)計(jì)復(fù)雜
6.4.1 總線的定時(shí)
總線的一次信息傳送過程,大致可分為如下五個(gè)階段:請求總線仇参,總線仲裁嘹叫,尋址(目的地址),信息傳送诈乒,狀態(tài)返回(或錯(cuò)誤報(bào)告)罩扇。 定時(shí):事件出現(xiàn)在總線上的時(shí)序關(guān)系。
數(shù)據(jù)傳送過程中采用的兩種定時(shí)方式:
6.4.2 總線數(shù)據(jù)傳送模式
讀、寫操作:讀操作是由從方到主方的數(shù)據(jù)傳送喂饥;寫操作是由主方到從方的數(shù)據(jù)傳送消约。
塊傳送操作:只需給出塊的起始地址,然后對固定塊長度的數(shù)據(jù)一個(gè)接一個(gè)地讀出或?qū)懭朐卑铩τ贑PU(主方)—存儲器(從方)而言的塊傳送或粮,常稱為猝發(fā)式傳送,
廣播捞高、廣集操作:但有的總線允許一個(gè)主方對多個(gè)從方進(jìn)行寫操作氯材,這種操作稱為廣播。與廣播相反的操作稱為廣集硝岗,它將選定的多個(gè)從方數(shù)據(jù)在總線上完成AND或OR操作氢哮,用以檢測多個(gè)中斷源。
6.5.1 多總線結(jié)構(gòu)
PCI是一個(gè)與處理器無關(guān)的高速外圍總線辈讶,又是至關(guān)重要的層間總線命浴。它采用同步時(shí)序協(xié)議和集中式仲裁策略,并具有自動配置能力贱除。PCI沒有DMA(直接存儲器傳送)生闲,PCI總線支持猝發(fā)式傳送
本 章 小 結(jié)
1.總線是構(gòu)成計(jì)算機(jī)系統(tǒng)的互聯(lián)機(jī)構(gòu),是多個(gè)系統(tǒng)功能部件之間進(jìn)行數(shù)據(jù)傳送的公共通道月幌,并在爭用資源的基礎(chǔ)上進(jìn)行工作碍讯。
2.總線有物理特性、功能特性扯躺、電氣特性捉兴、機(jī)械特性,因此必須標(biāo)準(zhǔn)化录语。
3.當(dāng)代流行的標(biāo)準(zhǔn)總線追求與結(jié)構(gòu)倍啥、CPU、技術(shù)無關(guān)的開發(fā)標(biāo)準(zhǔn)澎埠。其總線內(nèi)部結(jié)構(gòu)包含:①數(shù)據(jù)傳送總線(由地址線虽缕、數(shù)據(jù)線、控制線組成)蒲稳;②仲裁總線氮趋;③中斷和同步總線;④公用線(電源江耀、地線剩胁、時(shí)鐘、復(fù)位等信號線)祥国。
4.計(jì)算機(jī)系統(tǒng)中昵观,根據(jù)應(yīng)用條件和硬件資源不同,信息的傳輸方式可采用:①并行傳送;( 用并行方式傳送二進(jìn)制信息時(shí)索昂,對每個(gè)數(shù)據(jù)位都需要單獨(dú)一條傳輸線建车。)②串行傳送;(一條傳輸線椒惨;位時(shí)間缤至;低位在前,高位在后康谆。)③ 復(fù)用傳送领斥。 衡量總線性能指標(biāo):帶寬(BW):總線本身能達(dá)到的最高傳輸速率。
5總線定時(shí)方法:(1).同步定時(shí)(事件出現(xiàn)在總線上的時(shí)刻由總線時(shí)鐘信號來確定沃暗,總線周期長度確定) (2).異步定時(shí)