




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
雕
即
M
小
招
攝
9林
*
IF~
A介紹CPU的功能和組成;
A通過(guò)具體例子介紹指令周期的概念,深入了解指令的執(zhí)行過(guò)
程;
A簡(jiǎn)單介紹時(shí)序產(chǎn)生器和控制方式;
A詳細(xì)介紹微程序控制器的原理和設(shè)計(jì)技術(shù);.
A簡(jiǎn)單介紹硬布線控制器的設(shè)計(jì)思想;
A了解傳統(tǒng)CPU的結(jié)構(gòu)的基礎(chǔ)上,進(jìn)一步了解流水CPU、RISC
CPU、多媒體CPU等先進(jìn)的計(jì)算機(jī)科學(xué)技術(shù)。
本拿的重點(diǎn):便一步理繇CPU的為成、交成施合的過(guò)程,忽制器
的實(shí)的技術(shù)-----微程序相制拔木O
2
,IVK^S
5.1CPU的功能和組成
TO1g,?丁sr——hr-m
ACPU的功能
ACPU的基本組成
ACPU中的主要寄存器(簡(jiǎn)單介紹)
ACPU操作控制器與時(shí)序產(chǎn)生器
淖FTG*"TIT化;TftTfE
:Bac^snx十
*
CPU是利用大規(guī)模集成電路技術(shù),把運(yùn)算器
和控制器集成在一片芯片上,是微型計(jì)算機(jī)中的運(yùn)
算控制部件,它本身不具備微型計(jì)算機(jī)硬件的全部
功能,即其本身不構(gòu)成獨(dú)立工作系統(tǒng),因此它不能
獨(dú)立地執(zhí)行程序。CPU其主要任務(wù)是執(zhí)行指令序列,
對(duì)系統(tǒng)的各個(gè)部件進(jìn)行統(tǒng)一的協(xié)調(diào)和控制。通常由
算術(shù)邏輯部件(ALU)、控制部件、寄存器組等幾
部分組成。
1、CPU的功能修合
:TTftr-n;£"rF<EJ7ZHTT^?SSCQ
CPU是計(jì)算機(jī)的核心組成部分,裝入內(nèi)存的程序在
CPU的控制下,完成取出指令和執(zhí)行指令的任務(wù)。
CPU的基本功能:
O指令控制:程序的順序控制,保證機(jī)器按順序執(zhí)行程序,
(如何保證:CPU內(nèi)部設(shè)置了程序計(jì)數(shù)器等部分)
?操作控制:管理并產(chǎn)生完成指令執(zhí)行操作所需的控制信號(hào),
把這些信號(hào)送往相應(yīng)的部件,控制這些部件按指令的要求
進(jìn)行動(dòng)作。
0時(shí)間控制:對(duì)各種操作實(shí)施時(shí)間上的定時(shí),保證計(jì)算機(jī)有
條不紊地自動(dòng)工作。
9數(shù)據(jù)加工:對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算處理。
2、CPU的基本組成?
傳統(tǒng)CPU:運(yùn)算器、控制器。
現(xiàn)代CPU:運(yùn)算器、Cache和控制器。
?控制器的主要功能:
?從內(nèi)存中取出一條指令,并指出下一條指令在內(nèi)存中的
位置。
?對(duì)指令進(jìn)行譯碼或測(cè)試,并產(chǎn)生相應(yīng)的操作控制信號(hào),
以便啟動(dòng)規(guī)定的動(dòng)作。
?指揮并控制CPU、內(nèi)存和輸入/輸出設(shè)備之間數(shù)據(jù)流動(dòng)
的方向。
?控制器的組成:程序計(jì)數(shù)器、指令寄存器、指令譯碼器、
b時(shí)序產(chǎn)生器和操作控制器。
6
8086內(nèi)部結(jié)構(gòu)圖
執(zhí)行部分
123456
ALU/控制電路8位
指令隊(duì)列緩沖器
標(biāo)志寄存器
7
3、CPU中的主要寄存器
MWSM■■MMtS*aaiav■■■■■
CPU中最基本寄存器:
?指令寄存器(IR):保存正在執(zhí)行的指令
?程序計(jì)數(shù)器(PC):存放要執(zhí)行的指令的地址
O地址寄存器(AR):保存當(dāng)前所要訪問(wèn)的內(nèi)存單元的地址
?數(shù)據(jù)緩沖寄存器(DR):
?作為CPU和內(nèi)存、外圍設(shè)備之間信息傳送的中轉(zhuǎn)站;
?補(bǔ)償CPU和內(nèi)存、外圍設(shè)備之間在操作速度上的差別;
?在單累加器結(jié)構(gòu)的運(yùn)算器中,數(shù)據(jù)緩沖寄存器還可兼作
操作數(shù)寄存器。
?累加寄存器(AC):暫時(shí)存放ALU運(yùn)算的結(jié)果信息
o狀態(tài)條件寄存器(PSW):
4、CPU操作控制器與時(shí)序產(chǎn)生器
?操作控制器的功能:根據(jù)指令操作碼和時(shí)序信號(hào),產(chǎn)生各
種操作控制信號(hào),以正確建立數(shù)據(jù)通路,完成取指令和執(zhí)
?行指令的控制。'
?根據(jù)設(shè)計(jì)方法不同,操作控制器可分為:
(1)硬布線控制器:采用組合邏輯技術(shù)來(lái)實(shí)現(xiàn);
(2)微程序控制器:采用存儲(chǔ)邏輯來(lái)實(shí)現(xiàn);
(3)門(mén)陣列控制器:吸收前兩種的設(shè)計(jì)思想來(lái)實(shí)現(xiàn)的。
本章重點(diǎn)介紹微程序控制器.
O時(shí)序產(chǎn)生器:產(chǎn)生對(duì)控制信號(hào)進(jìn)行時(shí)間上控制的定時(shí)信號(hào).
5.2指令周期
o指令周期的基本概念
o幾種典型指令的指令周期分析
?CLA指令的指令周期
?ADD指令的指令周期
?STA指令的指令周期
?NOP指令和JMP指令的指令周期
?用方框圖語(yǔ)言表示指令周期
:LXK^S
-3
n
o
u
1、指令周期的基本概念*
?指令周期:取出并執(zhí)行一條指令的時(shí)間。-
程序的執(zhí)行過(guò)程(圖5.2):取指一執(zhí)行指令一再取指令一執(zhí)行指令...
各種指令的操作功能不同,其指令周期不盡相同。_
?機(jī)器周期:也稱(chēng)CPU周期。
指令周期由若干個(gè)CPU周期組成。
通常:用內(nèi)存中讀取一個(gè)指令字的最短時(shí)間來(lái)規(guī)定CPU周期。
0時(shí)鐘周期:常稱(chēng)為節(jié)拍。一個(gè)CPU周期又包含若干個(gè)時(shí)鐘周期,
它是處理操作的最基本單位。
算術(shù)邏輯單元
圖5.6h條指令的取指和執(zhí)行過(guò)程執(zhí)行指令控制
地址總線ABUS
第五條JMP指令,將地址碼部分21送到程序計(jì)數(shù)第下一條
指令從內(nèi)存21m兀開(kāi)始執(zhí)行,改變門(mén)京先執(zhí)行聯(lián)序.
2、幾種典型指令周期分析——CLA*
?CLA指令功能:清累加器。是一個(gè)非訪內(nèi)指令。
0取指令階段,CPU完成三件事:
⑴從內(nèi)存取出指令;
(2)對(duì)程序計(jì)數(shù)器PC加1,為取下一條指令做好準(zhǔn)備;
(3)對(duì)指令操作碼進(jìn)行譯碼或測(cè)試,以確定進(jìn)行什么操作。
?執(zhí)行指令階段:CPU根據(jù)對(duì)指令操作碼的譯碼或測(cè)試,進(jìn)
行指令所要求的操作。
小結(jié):CLA指令的指令周期包括一個(gè)CPU周期的取指令和一
個(gè)CPU周期的執(zhí)行指令,共需兩個(gè)CPU周期。
取指令周期
執(zhí)行周期
S=-73tE-^£.
幾種典型指令周期分析(ADD)?
OADD30指令功能:取存儲(chǔ)單元(30)中的操作數(shù)和累加器的內(nèi)
容相加,結(jié)果送累加器。這是一條訪問(wèn)內(nèi)存取數(shù)并執(zhí)行加法
的指令。
O取指令
?執(zhí)行指令:
?將操作數(shù)的地址送往地址寄存器
?把地址寄存器的內(nèi)容(30)送到地址總線;
?經(jīng)譯碼從內(nèi)存取出操作數(shù)(06)送往數(shù)據(jù)緩沖器;
?執(zhí)行相加的操作。
小結(jié):ADD指令功能由三個(gè)CPU周期組成:取指、送操作數(shù)地
4址、去操作數(shù)進(jìn)行相加運(yùn)算并將結(jié)果放回累加器。
18~r~r?j~~~j~~'rre\
-IVK^S\:Li&zT-
ADD指令的指令周期
幾種典型指令周期分析(STA)
OSTA40指令的功能:把累加器內(nèi)容送存儲(chǔ)單元(40)。這
是一條訪內(nèi)存存數(shù)指令。
O取指令
?執(zhí)行指令:
?將操作數(shù)的地址送往地址寄存器;
?累加器的內(nèi)容送到數(shù)據(jù)緩沖寄存器DR;
?把地址寄存器的內(nèi)容(40)送到地址總線;
?把數(shù)據(jù)緩沖寄存器的內(nèi)容送到數(shù)據(jù)總線;
?數(shù)據(jù)總線上的數(shù)寫(xiě)入選中的存儲(chǔ)單元(40)o
具體過(guò)程描述如圖
小結(jié):它由三個(gè)CPU周期組成。
22
,IVKJS
第三條指令STA執(zhí)行的功能是把和數(shù)006存入內(nèi)存單元40.
STA指令的指令周期
24
幾種典型指令周期分析(NOP和JMP)名、?
ONOP:空操作指令。在第二CPU周期中不發(fā)出任何
控制信號(hào)。
?JMP指令是一個(gè)程序控制指令,在執(zhí)行周期中只是
改變了PC的內(nèi)容。
算術(shù)邏輯單元
圖5.6h條指令的取指和執(zhí)行過(guò)程執(zhí)行指令控制
地址總線ABUS
第五條JMP指令,將地址碼部分21送到程序計(jì)數(shù)第下一條
指令從內(nèi)存21m兀開(kāi)始執(zhí)行,改變門(mén)京先執(zhí)行聯(lián)序.
幾種典型指令周期分析
小結(jié):
?指令周期分取指令周期、執(zhí)行指令周期兩大部分;
0執(zhí)行指令時(shí)間的長(zhǎng)短不同,可能包括一?三個(gè)CPU周期;
?執(zhí)行周期中CPU周期的劃分原則:總線及控制不沖突。
27
3、用方框圖語(yǔ)言表示指令周期?
o規(guī)則:
?方框代表一個(gè)CPU周期,其內(nèi)容表示數(shù)據(jù)通路的操作或
某種控制操作。
?菱形表示某種判斷或測(cè)試,時(shí)間上依附于它前面方框的
CPU周期,不單獨(dú)占用一個(gè)CPU周期。
?“?”表示公操作,指一條指今執(zhí)行完畢后,CPU所開(kāi)
始進(jìn)行的一些操作。這些操作可能是CPU對(duì)外設(shè)請(qǐng)求的
處理,如中斷處理、通道處理等,若沒(méi)有外設(shè)請(qǐng)求,
CPU將轉(zhuǎn)入下一個(gè)“取指令”。因此取指令也可以認(rèn)為
是公操作。
幺前面五條指令用方框圖語(yǔ)言表示的指令周期見(jiàn)圖。
?,..........…….
28—??…,個(gè)
:IVK^S:iAeZ十
1
指令周期分析及方框圖表示示例
【例1】圖5.15所示為雙總線結(jié)構(gòu)機(jī)器的數(shù)據(jù)通路,IR為指令寄
存器,PC為程序計(jì)數(shù)器(具有自增功能),M為主存(受R/W信
號(hào)控制),AR為地址寄存器,DR為數(shù)據(jù)緩沖寄存器,ALU由
加、減控制信號(hào)決定完成何種操作,控制信號(hào)G控制的是一
個(gè)門(mén)電路。另夕卜,線上標(biāo)注有小圈表示有控制信號(hào),例中yi
表示y寄存器的輸入控制信號(hào),RIo為寄存器R1的輸出控制信
號(hào),未標(biāo)字符的線為直通線,不受控制。
(1)?ADDRrRo”指令完成(Ro)+(Rz)一%的功能操作,畫(huà)出其指
令周期流程圖,假設(shè)該指令的地址已放入PC中。并列出相應(yīng)
的微操作控制信號(hào)序列。
(2)“SUBRPR3”指令完成(R3ZR1)一R3的操作,畫(huà)出其指令期
物充程圖,并列出相應(yīng)的微操作控制信號(hào)序列
30
?IVKDS:gGZ十
11
II
|\|\
I
5.3時(shí)序產(chǎn)生器和控制方式
7^"后:二i唯'『罡:'噌'『手力呻二手\電"7"^"
一、時(shí)序信號(hào)的作用和體制
二、時(shí)序信號(hào)產(chǎn)生器
三、控制方式
n言Kgzz清ErF=cjT^c_^3<E_^Qp|r丁府任虹HRE
;IVxds:Ut&xT
一、時(shí)序信號(hào)的作用和體制(1)為、、*
對(duì)時(shí)序信號(hào)的理解:
CPU的“作息時(shí)間”表。機(jī)器一旦啟動(dòng),CPU開(kāi)始取指令并
執(zhí)行指令,操作控制器就利用定時(shí)脈沖的順序和不同的脈沖間
隔,有步驟地指揮各部件工作,規(guī)定在這一脈沖到來(lái)之前做什
么,在另一脈沖到來(lái)之前又做什么。
一般來(lái)說(shuō),操作控制器發(fā)出的各種控制信號(hào)都是時(shí)間因素
(時(shí)序信號(hào))和空間因素(部件位置)的函數(shù)。
思考:用二進(jìn)制碼表示的指令和數(shù)據(jù)都放在內(nèi)存里,那么CPU
是怎樣識(shí)別出它們是數(shù)據(jù)還是指令呢?
時(shí)間、空間
一、時(shí)序信號(hào)的作用和體制(2)V公?
時(shí)序信號(hào)的體制:
一個(gè)CPU周期中要?jiǎng)澐譃槿舾蓚€(gè)小段,每一個(gè)小段中
應(yīng)該做什么有嚴(yán)格規(guī)定。
根據(jù)組成計(jì)算機(jī)硬件的器件的特性,微程序控制器中
的時(shí)序信號(hào)最基本的體制是節(jié)拍電位-節(jié)拍脈沖制。一個(gè)
節(jié)拍電位表示一個(gè)CPU周期,節(jié)拍脈沖把一個(gè)CPU周期劃
分成幾個(gè)較小的時(shí)間間隔。
二、時(shí)序信號(hào)產(chǎn)生器《務(wù)
微程序控制器的時(shí)序信號(hào)產(chǎn)生器(P142圖5.17):
由時(shí)鐘源、環(huán)形脈沖發(fā)生器、節(jié)拍脈沖和讀寫(xiě)時(shí)序譯碼邏
輯、啟??刂七壿嫷炔糠纸M成。
?IVxds;U&ZT
'—
RDWETiT2T3T4
圖5.17時(shí)序信號(hào)產(chǎn)生器框圖
37圖5.18環(huán)形脈沖發(fā)生器與譯碼邏輯
IJC;J\
節(jié)拍電位與節(jié)拍脈沖時(shí)序關(guān)系圖
38CPU周期CPU周期
圖5.20啟停控制邏輯
三、控制方式(1)
控制器的控制方式指形成不同操作序列的時(shí)序信號(hào)的
控制方法。有同步控制、異步控制、聯(lián)合控制三種方式。
?同步控制方式:
在任何情況下,已定的指令在執(zhí)行時(shí)所需的機(jī)器周期數(shù)和時(shí)
鐘周期數(shù)都固定不變。
0異步控制方式:
?每條指令、每個(gè)操作控制信號(hào)需要多少時(shí)間就占用多少時(shí)
間。一
?采用應(yīng)答方式。
三、控制方式(2)
0聯(lián)合控制方式:上述兩種情況的結(jié)合。
?大部分操作序列安排在固定的機(jī)器周期中,對(duì)某些時(shí)間
難以確定的操作則以執(zhí)行部件的“回答”信號(hào)作為本次
操作的結(jié)束。.
?機(jī)器周期的節(jié)拍脈沖數(shù)固定,但是各條指令周期的機(jī)器
周期數(shù)不固定。
5.4微程序控制器
引言
?基本思想:利用軟件方法設(shè)計(jì)硬件。即仿照通常的解題程
,序的方法,把操作控制信號(hào)編成所謂的“微指令”,存放
到一個(gè)只讀存儲(chǔ)器里。當(dāng)機(jī)器運(yùn)行時(shí),一條又一條地讀出
..這些微指令,從而產(chǎn)生全機(jī)所需要的各種操作控制信號(hào),
使相應(yīng)部件執(zhí)行所規(guī)定的操作。
?微程序控制器特點(diǎn):具有規(guī)整性、靈活性、可維護(hù)性等一
系列優(yōu)點(diǎn)。
,IVKJS
主要內(nèi)容:
一、基本概念:
4-微命令和微操作
,微指令和微程序.
二、微程序控制器原理
-三、微程序設(shè)計(jì)舉例
四、兩種關(guān)系:
CPU周期與微指令周期的關(guān)系
機(jī)器指令與微指令的關(guān)系
43
一、微命令和微操作(1)
W**■■MV?BHW
?計(jì)算機(jī)的兩大組成部件:
?控制部件:控制器。
?執(zhí)行部件:運(yùn)算器、存儲(chǔ)器、外設(shè)相對(duì)來(lái)說(shuō)是執(zhí)行部
■微命令:控制部件通過(guò)控制線向執(zhí)行部件發(fā)出各種控制命令;
■微操作:執(zhí)行部件接受微命令后所進(jìn)行的操作。
44
:Bac^sG二十
一、微命令和微操作(2)
根據(jù)數(shù)據(jù)通路的結(jié)構(gòu)關(guān)系,微操作的相容性和相斥性:
?相容性的微操作:在同時(shí)或同一個(gè)CPU周期內(nèi)可以并行執(zhí)
“行的微操作;
?相斥性的微操作:不能同時(shí)或同一個(gè)CPU周期內(nèi)并行執(zhí)行
.的微操作。一
示例:P145圖5.20。三個(gè)寄存器的訪問(wèn)可以同時(shí),而ALU的
加、減運(yùn)算只能依次進(jìn)行,不能并行。如微操作1,2,3是
相容的,而4,6,8是相斥的。
二、微指令和微程序
?微指令:在機(jī)器的一個(gè)CPU周期中,一組實(shí)現(xiàn)一定操作功
能的微命令的組合。一般由操作控制和順序控制兩大部分組
成。P146圖P21示意一條微指令的基本格式。
?微指令周期:讀出一條微指令并執(zhí)行微指令的時(shí)間總和。串
行方式的微程序控制器中,微指令周期就是只讀存儲(chǔ)器的工
作周期。
?微程序:許多條微指令按照一定的順序組成微程序。
事實(shí)上:一條機(jī)器指令的功能是有一定的微程序來(lái)實(shí)現(xiàn)的。
圖5.22微指令唯本格式
WB-PJH
"AS
48
三、微程序控制器原理
?aaH*^**?■■■*s*■■■■Mfcs*aaw?K—awvMBHar/■?—?
微程序控制器原理框圖如P147圖5.23所示。它主要
由控制存儲(chǔ)器、微指令寄存器、地址轉(zhuǎn)移邏輯三大部分組
成,其中微指令寄存器分為微地址寄存器和微命令寄存器
兩部分。
:LXK^S
四、微程序設(shè)計(jì)舉例
?設(shè)計(jì)思想:
?一條機(jī)器指令是由若干條微指令組成的序列實(shí)現(xiàn)的。一
條機(jī)器指令對(duì)應(yīng)一個(gè)微程序,而微程序的總和可實(shí)現(xiàn)整
個(gè)指令系統(tǒng)。
?微指令又是“一個(gè)CPU周期中一組實(shí)現(xiàn)一定操作功能的
微命令的組合”。
?分析指令系統(tǒng)的每條指令的微命令及如何組合為微指令
是很重要的。
E1女x9、;U&ZT
O舉例:設(shè)計(jì)“十進(jìn)制
加法”運(yùn)算指令的
微程序:一
仍以運(yùn)算器為例,
并假設(shè)參加運(yùn)算的兩
個(gè)十進(jìn)制數(shù)已經(jīng)分別
存入寄存器RI、R2
中,要調(diào)整的數(shù)據(jù)6
放到R3寄存器中:
圖5.25十進(jìn)制加法微程序
?首先確定實(shí)現(xiàn)“十進(jìn)制加法”運(yùn)算的算法,根據(jù)算法畫(huà)出
指令流程.
算法:(1)R1+R2存入R2;
(2)R2+R3存入R2;
(3)測(cè)試進(jìn)位標(biāo)志CY,若CY=O,表示不該加6,需要
將R2-6后存入R2;若CY=L表示該加6,R2中就是十進(jìn)制運(yùn)
算結(jié)果。
(指令流程也是微程序的一種表示形式)
?第二步確定微指令的格式:
按前面已經(jīng)給出一種微指令的格式。(實(shí)際上微指令
的格式及如何編碼都有很多種方法,這里給出的是一種比
較直觀的方法(直接表示法),5.5節(jié)將詳細(xì)介紹多種設(shè)計(jì)
方法。)
?根據(jù)每一條微指令所需要控制信號(hào)和微指令的格式分別
寫(xiě)出四條微指令的編碼。
?將上述四條微指令按順序排列構(gòu)成“十進(jìn)制加法”的微
程序(編碼形式)。
五、CPU周期與微指令周期的關(guān)系
?在串行方式的微程序控制器中,
微指令周期=讀出微指令的時(shí)間+執(zhí)行該條微指令的時(shí)間.
?為了保證整個(gè)機(jī)器控制信號(hào)的同步,一般將一個(gè)微指令周期
時(shí)間設(shè)計(jì)得恰好和CPU周期時(shí)間相等。
?讀微
—執(zhí)行微指令微指令周期搐令
T1T2T3T4T1T2T3T4
CPU周期CPU周期
,1VK3S
六、機(jī)器指令與微指令的關(guān)系
P151圖5.26很好地說(shuō)明了機(jī)器指令和微指令之間的
關(guān)系,也方便深層次地解釋程序的執(zhí)行過(guò)程:取指令人IR
,后通過(guò)微程序執(zhí)行指令。”
小結(jié):
?一條機(jī)器指令的功能是由若干條微指令組成的序列來(lái)實(shí)現(xiàn)
的。
?從指令與微指令,程序與微程序,地址與微地址的——對(duì)
應(yīng)關(guān)系來(lái)看,前者與內(nèi)存儲(chǔ)器有關(guān),后者與控制存儲(chǔ)器有
關(guān)。
?每一個(gè)CPU周期就對(duì)應(yīng)一條微指令。
56
-
微命令
圖機(jī)器指令與微指令
5.27,小
的關(guān)系
5.5微程序設(shè)計(jì)技術(shù)
avav'_a?■
___Krol_____r-_X.ICL-△33*_____/
微程序設(shè)計(jì)的關(guān)鍵是如何確定微指令的結(jié)構(gòu)。
目標(biāo)是:
,?有利于縮短微指令字長(zhǎng)度;’
?有利于減小控制存儲(chǔ)器的容量;.
?有利于提高微程序的執(zhí)行速度;
?有利于對(duì)微指令的修改;
?有利于提高微程序設(shè)計(jì)的靈活性。
本節(jié)內(nèi)容
,?微命令編碼方法
258.微地址形成的方法人"T'
▲[魴士匕人敖才
、微命令編碼
微命令編碼:對(duì)微指令中的操作控制字段采用的
表不方法。
?直接表示法:操作控制字段中的每一位代表一
個(gè)微命令。
?優(yōu)點(diǎn):簡(jiǎn)單直觀,其輸出直接用于控制。
?缺點(diǎn):微指令字較長(zhǎng),使控制存儲(chǔ)器容量較大。
?編碼表示法:把一組相斥性的微命令信號(hào)組成
一個(gè)小組(即一個(gè)字段),然后通過(guò)小組(字
Ti-l卡I?/力-斗「y./力-4■田』/二七口
二、微地址形成的方法(1)
才Fr不注-手機(jī)-二千Er丁'=r<EJ7s高■EcjTTfig
微指令執(zhí)行順序控制是通過(guò)產(chǎn)生后繼微
.指令的地址實(shí)現(xiàn)的。其方法有兩種:
計(jì)數(shù)器法方式:
順序執(zhí)行微指令時(shí),由現(xiàn)行微地址加上
一個(gè)增量來(lái)產(chǎn)生;非順序執(zhí)行微指令,須通
過(guò)轉(zhuǎn)移方式。與程序計(jì)數(shù)器來(lái)產(chǎn)生機(jī)器指令
地址的方法相似。
特息酒鎰制寶段較短H微地嶼生
60產(chǎn)■-?*.—rrq-TTJW
a和機(jī)I埼圣伯早幺吆玨衿彷殄什臺(tái)麗目「懂
二、微地址形成的方法(2)
yirTOzrramsjr-TrirT^ry?r-ngjnln-rr^^TitrT^C:
名路轉(zhuǎn)移方式:
?多路轉(zhuǎn)移:一條微指令具有多個(gè)轉(zhuǎn)移分支的能
力。如“取指”微指令要根據(jù)操作碼產(chǎn)生多個(gè)
微程序分支。
?當(dāng)微程序不產(chǎn)生分支時(shí),后繼微地址由微指令的
順序控制字段給出;
?當(dāng)微程序出現(xiàn)分支時(shí),按順序控制字段的“判別
測(cè)試”標(biāo)志和“狀態(tài)條件”信息選擇某一分支所
對(duì)應(yīng)的微地址?!盃顟B(tài)條償.革值標(biāo)志=理以宴二
現(xiàn)微程序2n路轉(zhuǎn)移。取指后的分支由1嚙加字段確
三、微指令格式(1)
微指令的編譯方法是決定微指令格式的主
要因素??紤]到速度、成本等原因,微指令的
格式大體分為兩類(lèi):
水平型微指令
「次能定義并執(zhí)行多個(gè)并行操作微命令的微
制字判別測(cè)試字下地址字
于土匕日庫(kù)軟0
WuL段
前面5?4節(jié)的微指吩勺水平型板指令。
套水平型微盛曾聲工一
:Bac^s
三、微指令格式(2)
垂直型微指令
微指令中設(shè)置微操作碼字段,采用微操
作碼編譯法,由微操作碼規(guī)定微指令的功能。
垂直型微指令的結(jié)構(gòu)類(lèi)似于機(jī)器指令的
結(jié)構(gòu)。
特點(diǎn):
每條微指令的功能單一,一條垂直型微指
令只能產(chǎn)生3至敬搦自
63'till|B?
a惚早早田祐k的微粹享住機(jī)垢通A,日的徽
三、微指令格式(3)
F*ErPhEr丁;滬Tig*T
水平型微指令和垂直型微指令的比較
?水平型微指令并行操作能力強(qiáng),效率高,靈
活性強(qiáng)。
?水平型微指令執(zhí)行一條指令的時(shí)間短,垂直
型微指令執(zhí)行時(shí)間長(zhǎng)。(水平用較少的微指
令數(shù)實(shí)現(xiàn)一條指令的功能,因而縮短了指令
的執(zhí)行時(shí)間,而且水平型不需要譯碼)
14/左六匕京吉開(kāi)I"2八后
四、動(dòng)態(tài)微程序
靜態(tài)微程序
對(duì)應(yīng)于一臺(tái)計(jì)算機(jī)的機(jī)器指令只有一組
微程序,而且這一組微程序設(shè)計(jì)好之后,一
般無(wú)需改變而且也不好改變。
動(dòng)態(tài)微程序
通過(guò)改變微指令和微程序來(lái)改變機(jī)器的
指令系統(tǒng)。這樣可以在一臺(tái)機(jī)器上實(shí)現(xiàn)不同
5類(lèi)型的指令系統(tǒng)。這種技術(shù)又稱(chēng)為仿真其他
6機(jī)器指令系統(tǒng),以便擴(kuò)大機(jī)器的功蒯三
5.6硬布線控制器
硬布線控制器:把控制部件看做產(chǎn)生專(zhuān)門(mén)固定
時(shí)序控拜蕊八f路和觸發(fā)
器構(gòu)成結(jié)果反饋信息C1????Cn
B1
設(shè)計(jì)目標(biāo)Bj:操作速度。
II
樹(shù)形邏輯網(wǎng)絡(luò)
指令
特點(diǎn):上譯碼需I制的速度
Im[_
較快。----------彳微指令都
IR
MlMiT1Tk
要從拄指吟寄存器:,而硬布
量線控制盛節(jié)拍電位/節(jié)拍
脈沖發(fā)生器
矍展:白復(fù)位沖TTjFTTiE-^C
浪復(fù)雜,
硬布線控制器設(shè)計(jì)(1)
?微操作抨制信號(hào)的產(chǎn)牛n
硬布線控制器中,某一微操作控制信號(hào)
由布爾代數(shù)表達(dá)式描述的輸出函數(shù)產(chǎn)生。口
邏輯函數(shù)的設(shè)計(jì)方法:
根據(jù)所有機(jī)器指令流程圖,尋找出產(chǎn)生
同一個(gè)微操作信號(hào)的所有條件,并與適當(dāng)?shù)?/p>
節(jié)拍電位和節(jié)拍脈沖組合,從而寫(xiě)出其布爾
代數(shù)表達(dá)式并進(jìn)行簡(jiǎn)化,然后用門(mén)電路或可
編程器件來(lái)實(shí)現(xiàn)EEEFTEFT工E"
硬布線控制器設(shè)計(jì)(2)
[例4]圖5.32中五條指令的微操作控制信號(hào)的產(chǎn)
生。注意T脈沖的順序。
O回顧指令流程
CW)
5.7傳統(tǒng)CPU簡(jiǎn)介
OM6800CP七AM。號(hào)ism.
典力]
外設(shè)采4
OIntel8
產(chǎn)生
8085兼名
隊(duì)列,節(jié)、到主
/存儲(chǔ)
OIBM370/器
使用
Tntp1R
5.7流水CPU簡(jiǎn)介
一、并行處理技術(shù)
二、流水CPU的結(jié)構(gòu)
三、流水線中的主要問(wèn)題
四、奔月蕾CPU
n言Kgrgs清ErG*Er丁拓=£_^=^73111^^三電£_^£:
;IVxds:Ut&xT
一、并行處理技術(shù)
標(biāo)準(zhǔn)的馮?諾依曼體系結(jié)構(gòu)是串行處理,即一個(gè)時(shí)
刻只能進(jìn)行一個(gè)操作。
并行忤的兩種含W
?同時(shí)性:兩個(gè)以上事件在同一時(shí)刻發(fā)生。如多機(jī)系統(tǒng)中,
同一時(shí)刻多個(gè)進(jìn)程在運(yùn)行。
.?并發(fā)性:兩個(gè)以上事件在同一間隔內(nèi)發(fā)生。如并發(fā)程序,
某一時(shí)刻CPU中只有一個(gè)進(jìn)程在運(yùn)行,而在一個(gè)時(shí)間段內(nèi),
多個(gè)進(jìn)程同時(shí)運(yùn)行。
并行忤的二種形式
?時(shí)間并行:即使用流水處理部件,時(shí)間重疊。
齡.空間并行二段置重公選皤JW工J主要堀蹴/理
k”器系統(tǒng)和多計(jì)算機(jī)系統(tǒng)。W正
、流水CPU的結(jié)構(gòu)
?流水CPU的組成:
按流水方式組織,其組成由指令部件,指
令隊(duì)列,執(zhí)行部件三大部分,目組成3級(jí)流水
線。
?執(zhí)行段的速度匹配問(wèn)題的解決
?執(zhí)行部件分為定點(diǎn)和浮點(diǎn)執(zhí)行部件,分別處理定
點(diǎn)和浮點(diǎn)運(yùn)算指令;
?在浮點(diǎn)執(zhí)行部件中,又有浮點(diǎn)加法部件和浮點(diǎn)乘
⑥〃/除部件*Q也可以同時(shí)執(zhí)行不同的指金-I
?藍(lán)景流水1+尊相,?Q有一條招今流春上三
流水CPU的時(shí)空?qǐng)D
沼-E
(a)一個(gè)指令流水線過(guò)程段
(b)非流水線時(shí)空?qǐng)D
三、流水線中的主要問(wèn)題
?資源相關(guān):指多條指令進(jìn)入流水線后在司一
?'機(jī)器時(shí)鐘周期內(nèi)爭(zhēng)用同一個(gè)功能部件所發(fā)生
的沖突。
解決方法:指令推遲執(zhí)行,或是設(shè)置重復(fù)資
源。
?數(shù)據(jù)相關(guān):在一個(gè)程序中,如果必須等前一
'條指令執(zhí)行完畢后,才能執(zhí)行后一條指令,
74
1次人]:小以計(jì)
解)±1戶(hù)T*-定在1梏洋土古術(shù)
主要掌握其超標(biāo)量流水線、指令Cache
和數(shù)據(jù)Cache、浮點(diǎn)單元、轉(zhuǎn)移預(yù)測(cè)四個(gè)方
面的特性。(P196-198)
n言Hfcrgs淖ErG*Er丁章=£?^==73111^^三/二^£
;IVxds:Ut&xT
5.9RISCCPU
?RISC的三個(gè)基本要素:有限、簡(jiǎn)單的指令集、
CPU配備大量的通用寄存器、強(qiáng)調(diào)對(duì)指令流水
線的優(yōu)化
?RISC機(jī)器的特征:
?使用等長(zhǎng)指令。
?尋址方式少,絕不出現(xiàn)存儲(chǔ)器間接尋址。
?只有取數(shù)、存數(shù)指令訪問(wèn)存儲(chǔ)器。
?指令數(shù)一般少于100條,指令格式少于4種。
?指令功能簡(jiǎn)單,控制器多采用硬布線方式。
盤(pán).大部分指會(huì)在二加器囿期內(nèi)完成j一一
k,CPU中通用寄存器數(shù)量相當(dāng)多。鼻
5.10多媒體CPU
'?多媒體技術(shù)的主要問(wèn)題'
?MMX技術(shù)
O動(dòng)態(tài)執(zhí)行技術(shù)
77
:Bac^srsx十
一、多媒體技術(shù)的主要問(wèn)題
?媒體:信息傳遞領(lǐng)域中傳遞信息的媒介。包括
存儲(chǔ)信息的實(shí)體與傳遞信息的載體兩部分。如
磁盤(pán)、光盤(pán)等屬于存儲(chǔ)信息的實(shí)體,而載體指
表示信息的形體,如數(shù)值、文字、聲音、圖形
與動(dòng)靜圖象等。
?多媒體技術(shù):指計(jì)算機(jī)把各種不同的電子媒質(zhì)
集成起來(lái),統(tǒng)一進(jìn)行存儲(chǔ)、處理和傳輸?shù)募夹g(shù)。
如把計(jì)算機(jī)屏幕顯示、視頻光盤(pán)、CD-ROM以及
聯(lián)B言和聲善綜合戶(hù)并在御i王趙闞建密屋輯連二接不
「1*
/Fh放小在4玄自右六7=71葉
三MMX技術(shù)*
o一種多媒體擴(kuò)展結(jié)構(gòu)技術(shù)。
?MMX指令是一種SIMD并行處理指令,其先進(jìn)
?性主要體現(xiàn)在:(P206)
?SIMD結(jié)構(gòu)
?飽和運(yùn)算方式
?積和運(yùn)算方式
?比較指令
?轉(zhuǎn)換指令
三、動(dòng)態(tài)執(zhí)行技術(shù)
?動(dòng)態(tài)執(zhí)行技術(shù)
通過(guò)預(yù)測(cè)程序流來(lái)調(diào)整指令的執(zhí)行,
”并且分析程序的數(shù)據(jù)流來(lái)選擇指令執(zhí)行的
最佳順序。
?實(shí)現(xiàn)的關(guān)鍵
使用一個(gè)指令緩沖池以開(kāi)辟一個(gè)較長(zhǎng)
.的指令窗口,以便允許執(zhí)行單元能在一個(gè)■
較大的范圍內(nèi)調(diào)遣和執(zhí)行已譯碼過(guò)的程序
J日/J\\jOFWXo,:LifeXT-
實(shí)驗(yàn):實(shí)驗(yàn)計(jì)算機(jī)的設(shè)計(jì)
?設(shè)計(jì)指令系統(tǒng):
確定指令系統(tǒng)的指令,包括幾種類(lèi)型,
操作數(shù)有哪幾種尋址方式,以及指令的編碼等。
要兼顧必要性(編程方便)和可行性(硬件條
件)。
?設(shè)計(jì)指令執(zhí)行流程
對(duì)于微程序控制的計(jì)算機(jī)設(shè)計(jì)指令流程
、時(shí),要保證每條微指令所包含的微操作的必要
實(shí)驗(yàn):實(shí)驗(yàn)計(jì)事機(jī)的設(shè)計(jì)_
O設(shè)計(jì)微操作控制信號(hào)及其實(shí)現(xiàn)方法:
綜合指令系統(tǒng)各指令執(zhí)行流程中涉及到的
微操作控制信號(hào),統(tǒng)計(jì)總共需要多少個(gè)微操作
控制信號(hào).
設(shè)計(jì)時(shí)應(yīng)考慮以下幾點(diǎn):
?微指令編碼格式
?微操作信號(hào)的有效性
?器件的操作條件一
告設(shè)計(jì)微指令格式
翻定微程序指制方苴==*
1
/4■?.'.?i.14,9
:Bac^s:iSX十:
/llll-、T-r
Pentium4的邏輯結(jié)構(gòu)
匚江RT-TTGrEr-n」=EEJ!ZI
?寄存器組與CPU字長(zhǎng)
?超標(biāo)量結(jié)構(gòu)ALU
?流水線處理技術(shù)
?SIMD技術(shù)
?EM-64T
?超線程技術(shù)
?雙核與多核技術(shù)
Pentium4處理器的邏輯結(jié)構(gòu)
?"jdB'l:q1q-war-rra-Ufa—
△
64位,時(shí)鐘頻率士匕A支預(yù)測(cè)器
刖
端
總
線
一控制器
總線接口
預(yù)取
控制邏輯
?V
L2
cache
Pentium4處理器的芯片布局
前端總線L1數(shù)據(jù)cache
及其接口L2cache
高級(jí)動(dòng)態(tài)執(zhí)行
.超級(jí)流水線
定點(diǎn)運(yùn)算器技術(shù)
□
Streaming
SIMD
Extensions2
Tracecache浮點(diǎn)運(yùn)算器
(L1指令cache)MMX
?IVxds;U&ZT
Pentium4的寄存器組
P4Pentium804868038680868088
3115870
整數(shù)寄存器組GPROEAXAXAHAL
GPR1ECXCXCHCL
GPR2EDXDXDHDL
GPR3EBXBXBHBL
GPR4ESPSP
GPR5EBPBP
GPR6ESISI
GPR7EDIDi
指令計(jì)數(shù)器EIPIP
標(biāo)志寄存器EFLAGSFLAGS
浮點(diǎn)寄存器組
86
:Bac^s-U^z-f-
Pentium4的超標(biāo)量結(jié)構(gòu)運(yùn)算器
87
nx十
?采用超標(biāo)量(superscalar)結(jié)構(gòu),一共包含9個(gè)ALU,均可
同時(shí)工作:
?2個(gè)高速整數(shù)ALU(每個(gè)時(shí)鐘周期進(jìn)行2次操作),用于完成簡(jiǎn)
單的整數(shù)運(yùn)算(如加、減法)
?1個(gè)慢速整數(shù)ALU(需要多個(gè)時(shí)鐘周期才能完成1次操作),用于
完成整數(shù)乘、除法運(yùn)算
?2個(gè)地址生成部件(AGU),用于計(jì)算操作數(shù)的有效地址,所
生成的地址分別用于從內(nèi)存取操作數(shù)或向內(nèi)存保存操作結(jié)果
?1個(gè)ALU用于完成浮點(diǎn)操作數(shù)地址的計(jì)算
?1個(gè)ALU用于完成浮點(diǎn)加法、乘法和除法運(yùn)算
?1個(gè)ALU用于執(zhí)行流式的SIMD處理(SSE/SSE2/SSE3指令)
?1個(gè)ALU用于完成多媒體信號(hào)處理(MMX指令)
88
-
指令的流水線執(zhí)行
指令的順序執(zhí)行:
指令1(11)指令2(12)指令3(13)
ExecuteExecute
UrileJIfplch
Ifelchl>ev<HieI)e<<>dek:N:::W、、rile
TOT1T2T3T4T5T6~T8~T9,1
指令的流水線執(zhí)行::!Pentium1的流力〈線分成20
級(jí)I每一級(jí)的操作都很簡(jiǎn)單,
IlIFetchllecode:Write執(zhí)行速度快快,;因而允許時(shí)
..J鐘頻率高出1GHz以上
ITelchDvccxleMS:Write
13KetchIMock皺Write
其3
14IfetchDecode■Write
15IletchDecode\\rite
16Write
.舉逡
:Bac^snx十
超流水線(Hyper-pipeline)技術(shù)
?Pentium4有多條超流水線,每
條流水線的級(jí)數(shù)均很長(zhǎng),定點(diǎn)
運(yùn)算達(dá)20級(jí),浮點(diǎn)運(yùn)算達(dá)到29
級(jí),處于執(zhí)行狀態(tài)的指令數(shù)最
多可達(dá)到126條
?超級(jí)流水線中每步操作都非常簡(jiǎn)單,因此主頻可以顯著提高
■Pentium4的20級(jí)超流水線結(jié)構(gòu)的示意圖:
2ik567891011121314151617181920
13J*4i411?
TCNxtIPTCFirtchDthreAllocRenamoQuoSehSehSch□r<pDUpRFRF曰FigsBrCkDrive
取指階段譯碼階段執(zhí)行階段保存結(jié)果,修改IP
90
E1女x9、;U&ZT
指令流水線的效果彘
CPU
Add
運(yùn)算
流水線會(huì)阻塞嗎?結(jié)果
如何確保指令流水線通暢?
例:調(diào)整后:
LOADR1,BLOADR1,B
a=b+c;LOADR2,CLOADR2,C
?ADDR2,R1々LOADR3,D
「<
e=e-d;〉?STORER2,A、ADDR2,R1
假設(shè)a,b,c,d,e分LOADR3,D-LOADR4,E
別存儲(chǔ)在地址為L(zhǎng)OADR4,ESTORER2,A
A,B,C,D,E的單
?SUBR4,R3SUBR4,R3
元中
?IVxds;U&ZT
指令預(yù)取和分支預(yù)測(cè)
?為了使流水線不中斷,指令預(yù)取部件用于完成指令地址的計(jì)
算,并從指令cache中讀取指令(一次64位),它還通過(guò)動(dòng)態(tài)
分支預(yù)測(cè)器對(duì)即將執(zhí)行的指令提前進(jìn)行預(yù)取,如果預(yù)測(cè)發(fā)生
錯(cuò)誤,那么流水線就會(huì)中斷,CPU的速度將會(huì)受到影響
,1VK3S-
Pentium的64位擴(kuò)展技術(shù)(EM-64T)
Pentium4的64位寄存器組
整數(shù)寄存器組P4Pentium803868048680868088
311587。
GPR0EAXAXAHAL
GPR1ECXCXCHCL
GPR2EDXDXDHDL
64位處
GPR3EBXBXBHBL
理器的
整數(shù)寄GPR4ESPSP
存器組GPR5EBPBP
GPR6ESISI
GPR7EDIDI
指令計(jì)數(shù)器EIPIPI
標(biāo)志寄存器EFLAGS
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 制定黨建共建協(xié)議書(shū)
- 后備人才師徒協(xié)議書(shū)
- 深入學(xué)習(xí)財(cái)務(wù)管理考試試題及答案
- 合作商標(biāo)使用協(xié)議書(shū)
- 2025年全面預(yù)算管理試題及答案
- 合同解除補(bǔ)償協(xié)議書(shū)
- 員工安全保護(hù)協(xié)議書(shū)
- 2025雙方合作的合同范文
- 商圈合作合同協(xié)議書(shū)
- 品牌加盟經(jīng)營(yíng)協(xié)議書(shū)
- 2023年04月江蘇南京師范大學(xué)附屬中學(xué)公開(kāi)招聘教科室文員1人筆試參考題庫(kù)附答案詳解
- 監(jiān)事會(huì)成員任職決定
- 線段的垂直平分線 課件
- 桌面運(yùn)維工程師能力試卷試卷題庫(kù)面試版本
- 工業(yè)園區(qū)物業(yè)保潔工作作業(yè)指導(dǎo)手冊(cè)
- 消防安全工作例會(huì)制度
- GB/T 9634.4-2007鐵氧體磁心表面缺陷極限導(dǎo)則第4部分:環(huán)形磁心
- 2022年阜寧縣(中小學(xué)、幼兒園)教師招聘考試《教育綜合知識(shí)》試題及答案解析
- GB/T 15608-2006中國(guó)顏色體系
- 95598工單大數(shù)據(jù)分析及壓降策略
- 《游園不值》-完整版課件
評(píng)論
0/150
提交評(píng)論