計算機組成原理第5章 中央處理器_第1頁
計算機組成原理第5章 中央處理器_第2頁
計算機組成原理第5章 中央處理器_第3頁
計算機組成原理第5章 中央處理器_第4頁
計算機組成原理第5章 中央處理器_第5頁
已閱讀5頁,還剩98頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

M

9林

*

IF~

A介紹CPU的功能和組成;

A通過具體例子介紹指令周期的概念,深入了解指令的執(zhí)行過

程;

A簡單介紹時序產生器和控制方式;

A詳細介紹微程序控制器的原理和設計技術;.

A簡單介紹硬布線控制器的設計思想;

A了解傳統CPU的結構的基礎上,進一步了解流水CPU、RISC

CPU、多媒體CPU等先進的計算機科學技術。

本拿的重點:便一步理繇CPU的為成、交成施合的過程,忽制器

的實的技術-----微程序相制拔木O

2

,IVK^S

5.1CPU的功能和組成

TO1g,?丁sr——hr-m

ACPU的功能

ACPU的基本組成

ACPU中的主要寄存器(簡單介紹)

ACPU操作控制器與時序產生器

淖FTG*"TIT化;TftTfE

:Bac^snx十

*

CPU是利用大規(guī)模集成電路技術,把運算器

和控制器集成在一片芯片上,是微型計算機中的運

算控制部件,它本身不具備微型計算機硬件的全部

功能,即其本身不構成獨立工作系統,因此它不能

獨立地執(zhí)行程序。CPU其主要任務是執(zhí)行指令序列,

對系統的各個部件進行統一的協調和控制。通常由

算術邏輯部件(ALU)、控制部件、寄存器組等幾

部分組成。

1、CPU的功能修合

:TTftr-n;£"rF<EJ7ZHTT^?SSCQ

CPU是計算機的核心組成部分,裝入內存的程序在

CPU的控制下,完成取出指令和執(zhí)行指令的任務。

CPU的基本功能:

O指令控制:程序的順序控制,保證機器按順序執(zhí)行程序,

(如何保證:CPU內部設置了程序計數器等部分)

?操作控制:管理并產生完成指令執(zhí)行操作所需的控制信號,

把這些信號送往相應的部件,控制這些部件按指令的要求

進行動作。

0時間控制:對各種操作實施時間上的定時,保證計算機有

條不紊地自動工作。

9數據加工:對數據進行算術運算和邏輯運算處理。

2、CPU的基本組成?

傳統CPU:運算器、控制器。

現代CPU:運算器、Cache和控制器。

?控制器的主要功能:

?從內存中取出一條指令,并指出下一條指令在內存中的

位置。

?對指令進行譯碼或測試,并產生相應的操作控制信號,

以便啟動規(guī)定的動作。

?指揮并控制CPU、內存和輸入/輸出設備之間數據流動

的方向。

?控制器的組成:程序計數器、指令寄存器、指令譯碼器、

b時序產生器和操作控制器。

6

8086內部結構圖

執(zhí)行部分

123456

ALU/控制電路8位

指令隊列緩沖器

標志寄存器

7

3、CPU中的主要寄存器

MWSM■■MMtS*aaiav■■■■■

CPU中最基本寄存器:

?指令寄存器(IR):保存正在執(zhí)行的指令

?程序計數器(PC):存放要執(zhí)行的指令的地址

O地址寄存器(AR):保存當前所要訪問的內存單元的地址

?數據緩沖寄存器(DR):

?作為CPU和內存、外圍設備之間信息傳送的中轉站;

?補償CPU和內存、外圍設備之間在操作速度上的差別;

?在單累加器結構的運算器中,數據緩沖寄存器還可兼作

操作數寄存器。

?累加寄存器(AC):暫時存放ALU運算的結果信息

o狀態(tài)條件寄存器(PSW):

4、CPU操作控制器與時序產生器

?操作控制器的功能:根據指令操作碼和時序信號,產生各

種操作控制信號,以正確建立數據通路,完成取指令和執(zhí)

?行指令的控制。'

?根據設計方法不同,操作控制器可分為:

(1)硬布線控制器:采用組合邏輯技術來實現;

(2)微程序控制器:采用存儲邏輯來實現;

(3)門陣列控制器:吸收前兩種的設計思想來實現的。

本章重點介紹微程序控制器.

O時序產生器:產生對控制信號進行時間上控制的定時信號.

5.2指令周期

o指令周期的基本概念

o幾種典型指令的指令周期分析

?CLA指令的指令周期

?ADD指令的指令周期

?STA指令的指令周期

?NOP指令和JMP指令的指令周期

?用方框圖語言表示指令周期

:LXK^S

-3

n

o

u

1、指令周期的基本概念*

?指令周期:取出并執(zhí)行一條指令的時間。-

程序的執(zhí)行過程(圖5.2):取指一執(zhí)行指令一再取指令一執(zhí)行指令...

各種指令的操作功能不同,其指令周期不盡相同。_

?機器周期:也稱CPU周期。

指令周期由若干個CPU周期組成。

通常:用內存中讀取一個指令字的最短時間來規(guī)定CPU周期。

0時鐘周期:常稱為節(jié)拍。一個CPU周期又包含若干個時鐘周期,

它是處理操作的最基本單位。

算術邏輯單元

圖5.6h條指令的取指和執(zhí)行過程執(zhí)行指令控制

地址總線ABUS

第五條JMP指令,將地址碼部分21送到程序計數第下一條

指令從內存21m兀開始執(zhí)行,改變門京先執(zhí)行聯序.

2、幾種典型指令周期分析——CLA*

?CLA指令功能:清累加器。是一個非訪內指令。

0取指令階段,CPU完成三件事:

⑴從內存取出指令;

(2)對程序計數器PC加1,為取下一條指令做好準備;

(3)對指令操作碼進行譯碼或測試,以確定進行什么操作。

?執(zhí)行指令階段:CPU根據對指令操作碼的譯碼或測試,進

行指令所要求的操作。

小結:CLA指令的指令周期包括一個CPU周期的取指令和一

個CPU周期的執(zhí)行指令,共需兩個CPU周期。

取指令周期

執(zhí)行周期

S=-73tE-^£.

幾種典型指令周期分析(ADD)?

OADD30指令功能:取存儲單元(30)中的操作數和累加器的內

容相加,結果送累加器。這是一條訪問內存取數并執(zhí)行加法

的指令。

O取指令

?執(zhí)行指令:

?將操作數的地址送往地址寄存器

?把地址寄存器的內容(30)送到地址總線;

?經譯碼從內存取出操作數(06)送往數據緩沖器;

?執(zhí)行相加的操作。

小結:ADD指令功能由三個CPU周期組成:取指、送操作數地

4址、去操作數進行相加運算并將結果放回累加器。

18~r~r?j~~~j~~'rre\

-IVK^S\:Li&zT-

ADD指令的指令周期

幾種典型指令周期分析(STA)

OSTA40指令的功能:把累加器內容送存儲單元(40)。這

是一條訪內存存數指令。

O取指令

?執(zhí)行指令:

?將操作數的地址送往地址寄存器;

?累加器的內容送到數據緩沖寄存器DR;

?把地址寄存器的內容(40)送到地址總線;

?把數據緩沖寄存器的內容送到數據總線;

?數據總線上的數寫入選中的存儲單元(40)o

具體過程描述如圖

小結:它由三個CPU周期組成。

22

,IVKJS

第三條指令STA執(zhí)行的功能是把和數006存入內存單元40.

STA指令的指令周期

24

幾種典型指令周期分析(NOP和JMP)名、?

ONOP:空操作指令。在第二CPU周期中不發(fā)出任何

控制信號。

?JMP指令是一個程序控制指令,在執(zhí)行周期中只是

改變了PC的內容。

算術邏輯單元

圖5.6h條指令的取指和執(zhí)行過程執(zhí)行指令控制

地址總線ABUS

第五條JMP指令,將地址碼部分21送到程序計數第下一條

指令從內存21m兀開始執(zhí)行,改變門京先執(zhí)行聯序.

幾種典型指令周期分析

小結:

?指令周期分取指令周期、執(zhí)行指令周期兩大部分;

0執(zhí)行指令時間的長短不同,可能包括一?三個CPU周期;

?執(zhí)行周期中CPU周期的劃分原則:總線及控制不沖突。

27

3、用方框圖語言表示指令周期?

o規(guī)則:

?方框代表一個CPU周期,其內容表示數據通路的操作或

某種控制操作。

?菱形表示某種判斷或測試,時間上依附于它前面方框的

CPU周期,不單獨占用一個CPU周期。

?“?”表示公操作,指一條指今執(zhí)行完畢后,CPU所開

始進行的一些操作。這些操作可能是CPU對外設請求的

處理,如中斷處理、通道處理等,若沒有外設請求,

CPU將轉入下一個“取指令”。因此取指令也可以認為

是公操作。

幺前面五條指令用方框圖語言表示的指令周期見圖。

?,..........…….

28—??…,個

:IVK^S:iAeZ十

1

指令周期分析及方框圖表示示例

【例1】圖5.15所示為雙總線結構機器的數據通路,IR為指令寄

存器,PC為程序計數器(具有自增功能),M為主存(受R/W信

號控制),AR為地址寄存器,DR為數據緩沖寄存器,ALU由

加、減控制信號決定完成何種操作,控制信號G控制的是一

個門電路。另夕卜,線上標注有小圈表示有控制信號,例中yi

表示y寄存器的輸入控制信號,RIo為寄存器R1的輸出控制信

號,未標字符的線為直通線,不受控制。

(1)?ADDRrRo”指令完成(Ro)+(Rz)一%的功能操作,畫出其指

令周期流程圖,假設該指令的地址已放入PC中。并列出相應

的微操作控制信號序列。

(2)“SUBRPR3”指令完成(R3ZR1)一R3的操作,畫出其指令期

物充程圖,并列出相應的微操作控制信號序列

30

?IVKDS:gGZ十

11

II

|\|\

I

5.3時序產生器和控制方式

7^"后:二i唯'『罡:'噌'『手力呻二手\電"7"^"

一、時序信號的作用和體制

二、時序信號產生器

三、控制方式

n言Kgzz清ErF=cjT^c_^3<E_^Qp|r丁府任虹HRE

;IVxds:Ut&xT

一、時序信號的作用和體制(1)為、、*

對時序信號的理解:

CPU的“作息時間”表。機器一旦啟動,CPU開始取指令并

執(zhí)行指令,操作控制器就利用定時脈沖的順序和不同的脈沖間

隔,有步驟地指揮各部件工作,規(guī)定在這一脈沖到來之前做什

么,在另一脈沖到來之前又做什么。

一般來說,操作控制器發(fā)出的各種控制信號都是時間因素

(時序信號)和空間因素(部件位置)的函數。

思考:用二進制碼表示的指令和數據都放在內存里,那么CPU

是怎樣識別出它們是數據還是指令呢?

時間、空間

一、時序信號的作用和體制(2)V公?

時序信號的體制:

一個CPU周期中要劃分為若干個小段,每一個小段中

應該做什么有嚴格規(guī)定。

根據組成計算機硬件的器件的特性,微程序控制器中

的時序信號最基本的體制是節(jié)拍電位-節(jié)拍脈沖制。一個

節(jié)拍電位表示一個CPU周期,節(jié)拍脈沖把一個CPU周期劃

分成幾個較小的時間間隔。

二、時序信號產生器《務

微程序控制器的時序信號產生器(P142圖5.17):

由時鐘源、環(huán)形脈沖發(fā)生器、節(jié)拍脈沖和讀寫時序譯碼邏

輯、啟??刂七壿嫷炔糠纸M成。

?IVxds;U&ZT

'—

RDWETiT2T3T4

圖5.17時序信號產生器框圖

37圖5.18環(huán)形脈沖發(fā)生器與譯碼邏輯

IJC;J\

節(jié)拍電位與節(jié)拍脈沖時序關系圖

38CPU周期CPU周期

圖5.20啟??刂七壿?/p>

三、控制方式(1)

控制器的控制方式指形成不同操作序列的時序信號的

控制方法。有同步控制、異步控制、聯合控制三種方式。

?同步控制方式:

在任何情況下,已定的指令在執(zhí)行時所需的機器周期數和時

鐘周期數都固定不變。

0異步控制方式:

?每條指令、每個操作控制信號需要多少時間就占用多少時

間。一

?采用應答方式。

三、控制方式(2)

0聯合控制方式:上述兩種情況的結合。

?大部分操作序列安排在固定的機器周期中,對某些時間

難以確定的操作則以執(zhí)行部件的“回答”信號作為本次

操作的結束。.

?機器周期的節(jié)拍脈沖數固定,但是各條指令周期的機器

周期數不固定。

5.4微程序控制器

引言

?基本思想:利用軟件方法設計硬件。即仿照通常的解題程

,序的方法,把操作控制信號編成所謂的“微指令”,存放

到一個只讀存儲器里。當機器運行時,一條又一條地讀出

..這些微指令,從而產生全機所需要的各種操作控制信號,

使相應部件執(zhí)行所規(guī)定的操作。

?微程序控制器特點:具有規(guī)整性、靈活性、可維護性等一

系列優(yōu)點。

,IVKJS

主要內容:

一、基本概念:

4-微命令和微操作

,微指令和微程序.

二、微程序控制器原理

-三、微程序設計舉例

四、兩種關系:

CPU周期與微指令周期的關系

機器指令與微指令的關系

43

一、微命令和微操作(1)

W**■■MV?BHW

?計算機的兩大組成部件:

?控制部件:控制器。

?執(zhí)行部件:運算器、存儲器、外設相對來說是執(zhí)行部

■微命令:控制部件通過控制線向執(zhí)行部件發(fā)出各種控制命令;

■微操作:執(zhí)行部件接受微命令后所進行的操作。

44

:Bac^sG二十

一、微命令和微操作(2)

根據數據通路的結構關系,微操作的相容性和相斥性:

?相容性的微操作:在同時或同一個CPU周期內可以并行執(zhí)

“行的微操作;

?相斥性的微操作:不能同時或同一個CPU周期內并行執(zhí)行

.的微操作。一

示例:P145圖5.20。三個寄存器的訪問可以同時,而ALU的

加、減運算只能依次進行,不能并行。如微操作1,2,3是

相容的,而4,6,8是相斥的。

二、微指令和微程序

?微指令:在機器的一個CPU周期中,一組實現一定操作功

能的微命令的組合。一般由操作控制和順序控制兩大部分組

成。P146圖P21示意一條微指令的基本格式。

?微指令周期:讀出一條微指令并執(zhí)行微指令的時間總和。串

行方式的微程序控制器中,微指令周期就是只讀存儲器的工

作周期。

?微程序:許多條微指令按照一定的順序組成微程序。

事實上:一條機器指令的功能是有一定的微程序來實現的。

圖5.22微指令唯本格式

WB-PJH

"AS

48

三、微程序控制器原理

?aaH*^**?■■■*s*■■■■Mfcs*aaw?K—awvMBHar/■?—?

微程序控制器原理框圖如P147圖5.23所示。它主要

由控制存儲器、微指令寄存器、地址轉移邏輯三大部分組

成,其中微指令寄存器分為微地址寄存器和微命令寄存器

兩部分。

:LXK^S

四、微程序設計舉例

?設計思想:

?一條機器指令是由若干條微指令組成的序列實現的。一

條機器指令對應一個微程序,而微程序的總和可實現整

個指令系統。

?微指令又是“一個CPU周期中一組實現一定操作功能的

微命令的組合”。

?分析指令系統的每條指令的微命令及如何組合為微指令

是很重要的。

E1女x9、;U&ZT

O舉例:設計“十進制

加法”運算指令的

微程序:一

仍以運算器為例,

并假設參加運算的兩

個十進制數已經分別

存入寄存器RI、R2

中,要調整的數據6

放到R3寄存器中:

圖5.25十進制加法微程序

?首先確定實現“十進制加法”運算的算法,根據算法畫出

指令流程.

算法:(1)R1+R2存入R2;

(2)R2+R3存入R2;

(3)測試進位標志CY,若CY=O,表示不該加6,需要

將R2-6后存入R2;若CY=L表示該加6,R2中就是十進制運

算結果。

(指令流程也是微程序的一種表示形式)

?第二步確定微指令的格式:

按前面已經給出一種微指令的格式。(實際上微指令

的格式及如何編碼都有很多種方法,這里給出的是一種比

較直觀的方法(直接表示法),5.5節(jié)將詳細介紹多種設計

方法。)

?根據每一條微指令所需要控制信號和微指令的格式分別

寫出四條微指令的編碼。

?將上述四條微指令按順序排列構成“十進制加法”的微

程序(編碼形式)。

五、CPU周期與微指令周期的關系

?在串行方式的微程序控制器中,

微指令周期=讀出微指令的時間+執(zhí)行該條微指令的時間.

?為了保證整個機器控制信號的同步,一般將一個微指令周期

時間設計得恰好和CPU周期時間相等。

?讀微

—執(zhí)行微指令微指令周期搐令

T1T2T3T4T1T2T3T4

CPU周期CPU周期

,1VK3S

六、機器指令與微指令的關系

P151圖5.26很好地說明了機器指令和微指令之間的

關系,也方便深層次地解釋程序的執(zhí)行過程:取指令人IR

,后通過微程序執(zhí)行指令?!?/p>

小結:

?一條機器指令的功能是由若干條微指令組成的序列來實現

的。

?從指令與微指令,程序與微程序,地址與微地址的——對

應關系來看,前者與內存儲器有關,后者與控制存儲器有

關。

?每一個CPU周期就對應一條微指令。

56

-

微命令

圖機器指令與微指令

5.27,小

的關系

5.5微程序設計技術

avav'_a?■

___Krol_____r-_X.ICL-△33*_____/

微程序設計的關鍵是如何確定微指令的結構。

目標是:

,?有利于縮短微指令字長度;’

?有利于減小控制存儲器的容量;.

?有利于提高微程序的執(zhí)行速度;

?有利于對微指令的修改;

?有利于提高微程序設計的靈活性。

本節(jié)內容

,?微命令編碼方法

258.微地址形成的方法人"T'

▲[魴士匕人敖才

、微命令編碼

微命令編碼:對微指令中的操作控制字段采用的

表不方法。

?直接表示法:操作控制字段中的每一位代表一

個微命令。

?優(yōu)點:簡單直觀,其輸出直接用于控制。

?缺點:微指令字較長,使控制存儲器容量較大。

?編碼表示法:把一組相斥性的微命令信號組成

一個小組(即一個字段),然后通過小組(字

Ti-l卡I?/力-斗「y./力-4■田』/二七口

二、微地址形成的方法(1)

才Fr不注-手機-二千Er丁'=r<EJ7s高■EcjTTfig

微指令執(zhí)行順序控制是通過產生后繼微

.指令的地址實現的。其方法有兩種:

計數器法方式:

順序執(zhí)行微指令時,由現行微地址加上

一個增量來產生;非順序執(zhí)行微指令,須通

過轉移方式。與程序計數器來產生機器指令

地址的方法相似。

特息酒鎰制寶段較短H微地嶼生

60產■-?*.—rrq-TTJW

a和機I埼圣伯早幺吆玨衿彷殄什臺麗目「懂

二、微地址形成的方法(2)

yirTOzrramsjr-TrirT^ry?r-ngjnln-rr^^TitrT^C:

名路轉移方式:

?多路轉移:一條微指令具有多個轉移分支的能

力。如“取指”微指令要根據操作碼產生多個

微程序分支。

?當微程序不產生分支時,后繼微地址由微指令的

順序控制字段給出;

?當微程序出現分支時,按順序控制字段的“判別

測試”標志和“狀態(tài)條件”信息選擇某一分支所

對應的微地址。“狀態(tài)條償.革值標志=理以宴二

現微程序2n路轉移。取指后的分支由1嚙加字段確

三、微指令格式(1)

微指令的編譯方法是決定微指令格式的主

要因素??紤]到速度、成本等原因,微指令的

格式大體分為兩類:

水平型微指令

「次能定義并執(zhí)行多個并行操作微命令的微

制字判別測試字下地址字

于土匕日庫軟0

WuL段

前面5?4節(jié)的微指吩勺水平型板指令。

套水平型微盛曾聲工一

:Bac^s

三、微指令格式(2)

垂直型微指令

微指令中設置微操作碼字段,采用微操

作碼編譯法,由微操作碼規(guī)定微指令的功能。

垂直型微指令的結構類似于機器指令的

結構。

特點:

每條微指令的功能單一,一條垂直型微指

令只能產生3至敬搦自

63'till|B?

a惚早早田祐k的微粹享住機垢通A,日的徽

三、微指令格式(3)

F*ErPhEr丁;滬Tig*T

水平型微指令和垂直型微指令的比較

?水平型微指令并行操作能力強,效率高,靈

活性強。

?水平型微指令執(zhí)行一條指令的時間短,垂直

型微指令執(zhí)行時間長。(水平用較少的微指

令數實現一條指令的功能,因而縮短了指令

的執(zhí)行時間,而且水平型不需要譯碼)

14/左六匕京吉開I"2八后

四、動態(tài)微程序

靜態(tài)微程序

對應于一臺計算機的機器指令只有一組

微程序,而且這一組微程序設計好之后,一

般無需改變而且也不好改變。

動態(tài)微程序

通過改變微指令和微程序來改變機器的

指令系統。這樣可以在一臺機器上實現不同

5類型的指令系統。這種技術又稱為仿真其他

6機器指令系統,以便擴大機器的功蒯三

5.6硬布線控制器

硬布線控制器:把控制部件看做產生專門固定

時序控拜蕊八f路和觸發(fā)

器構成結果反饋信息C1????Cn

B1

設計目標Bj:操作速度。

II

樹形邏輯網絡

指令

特點:上譯碼需I制的速度

Im[_

較快。----------彳微指令都

IR

MlMiT1Tk

要從拄指吟寄存器:,而硬布

量線控制盛節(jié)拍電位/節(jié)拍

脈沖發(fā)生器

矍展:白復位沖TTjFTTiE-^C

浪復雜,

硬布線控制器設計(1)

?微操作抨制信號的產牛n

硬布線控制器中,某一微操作控制信號

由布爾代數表達式描述的輸出函數產生。口

邏輯函數的設計方法:

根據所有機器指令流程圖,尋找出產生

同一個微操作信號的所有條件,并與適當的

節(jié)拍電位和節(jié)拍脈沖組合,從而寫出其布爾

代數表達式并進行簡化,然后用門電路或可

編程器件來實現EEEFTEFT工E"

硬布線控制器設計(2)

[例4]圖5.32中五條指令的微操作控制信號的產

生。注意T脈沖的順序。

O回顧指令流程

CW)

5.7傳統CPU簡介

OM6800CP七AM。號ism.

典力]

外設采4

OIntel8

產生

8085兼名

隊列,節(jié)、到主

/存儲

OIBM370/器

使用

Tntp1R

5.7流水CPU簡介

一、并行處理技術

二、流水CPU的結構

三、流水線中的主要問題

四、奔月蕾CPU

n言Kgrgs清ErG*Er丁拓=£_^=^73111^^三電£_^£:

;IVxds:Ut&xT

一、并行處理技術

標準的馮?諾依曼體系結構是串行處理,即一個時

刻只能進行一個操作。

并行忤的兩種含W

?同時性:兩個以上事件在同一時刻發(fā)生。如多機系統中,

同一時刻多個進程在運行。

.?并發(fā)性:兩個以上事件在同一間隔內發(fā)生。如并發(fā)程序,

某一時刻CPU中只有一個進程在運行,而在一個時間段內,

多個進程同時運行。

并行忤的二種形式

?時間并行:即使用流水處理部件,時間重疊。

齡.空間并行二段置重公選皤JW工J主要堀蹴/理

k”器系統和多計算機系統。W正

、流水CPU的結構

?流水CPU的組成:

按流水方式組織,其組成由指令部件,指

令隊列,執(zhí)行部件三大部分,目組成3級流水

線。

?執(zhí)行段的速度匹配問題的解決

?執(zhí)行部件分為定點和浮點執(zhí)行部件,分別處理定

點和浮點運算指令;

?在浮點執(zhí)行部件中,又有浮點加法部件和浮點乘

⑥〃/除部件*Q也可以同時執(zhí)行不同的指金-I

?藍景流水1+尊相,?Q有一條招今流春上三

流水CPU的時空圖

沼-E

(a)一個指令流水線過程段

(b)非流水線時空圖

三、流水線中的主要問題

?資源相關:指多條指令進入流水線后在司一

?'機器時鐘周期內爭用同一個功能部件所發(fā)生

的沖突。

解決方法:指令推遲執(zhí)行,或是設置重復資

源。

?數據相關:在一個程序中,如果必須等前一

'條指令執(zhí)行完畢后,才能執(zhí)行后一條指令,

74

1次人]:小以計

解)±1戶T*-定在1梏洋土古術

主要掌握其超標量流水線、指令Cache

和數據Cache、浮點單元、轉移預測四個方

面的特性。(P196-198)

n言Hfcrgs淖ErG*Er丁章=£?^==73111^^三/二^£

;IVxds:Ut&xT

5.9RISCCPU

?RISC的三個基本要素:有限、簡單的指令集、

CPU配備大量的通用寄存器、強調對指令流水

線的優(yōu)化

?RISC機器的特征:

?使用等長指令。

?尋址方式少,絕不出現存儲器間接尋址。

?只有取數、存數指令訪問存儲器。

?指令數一般少于100條,指令格式少于4種。

?指令功能簡單,控制器多采用硬布線方式。

盤.大部分指會在二加器囿期內完成j一一

k,CPU中通用寄存器數量相當多。鼻

5.10多媒體CPU

'?多媒體技術的主要問題'

?MMX技術

O動態(tài)執(zhí)行技術

77

:Bac^srsx十

一、多媒體技術的主要問題

?媒體:信息傳遞領域中傳遞信息的媒介。包括

存儲信息的實體與傳遞信息的載體兩部分。如

磁盤、光盤等屬于存儲信息的實體,而載體指

表示信息的形體,如數值、文字、聲音、圖形

與動靜圖象等。

?多媒體技術:指計算機把各種不同的電子媒質

集成起來,統一進行存儲、處理和傳輸的技術。

如把計算機屏幕顯示、視頻光盤、CD-ROM以及

聯B言和聲善綜合戶并在御i王趙闞建密屋輯連二接不

「1*

/Fh放小在4玄自右六7=71葉

三MMX技術*

o一種多媒體擴展結構技術。

?MMX指令是一種SIMD并行處理指令,其先進

?性主要體現在:(P206)

?SIMD結構

?飽和運算方式

?積和運算方式

?比較指令

?轉換指令

三、動態(tài)執(zhí)行技術

?動態(tài)執(zhí)行技術

通過預測程序流來調整指令的執(zhí)行,

”并且分析程序的數據流來選擇指令執(zhí)行的

最佳順序。

?實現的關鍵

使用一個指令緩沖池以開辟一個較長

.的指令窗口,以便允許執(zhí)行單元能在一個■

較大的范圍內調遣和執(zhí)行已譯碼過的程序

J日/J\\jOFWXo,:LifeXT-

實驗:實驗計算機的設計

?設計指令系統:

確定指令系統的指令,包括幾種類型,

操作數有哪幾種尋址方式,以及指令的編碼等。

要兼顧必要性(編程方便)和可行性(硬件條

件)。

?設計指令執(zhí)行流程

對于微程序控制的計算機設計指令流程

、時,要保證每條微指令所包含的微操作的必要

實驗:實驗計事機的設計_

O設計微操作控制信號及其實現方法:

綜合指令系統各指令執(zhí)行流程中涉及到的

微操作控制信號,統計總共需要多少個微操作

控制信號.

設計時應考慮以下幾點:

?微指令編碼格式

?微操作信號的有效性

?器件的操作條件一

告設計微指令格式

翻定微程序指制方苴==*

1

/4■?.'.?i.14,9

:Bac^s:iSX十:

/llll-、T-r

Pentium4的邏輯結構

匚江RT-TTGrEr-n」=EEJ!ZI

?寄存器組與CPU字長

?超標量結構ALU

?流水線處理技術

?SIMD技術

?EM-64T

?超線程技術

?雙核與多核技術

Pentium4處理器的邏輯結構

?"jdB'l:q1q-war-rra-Ufa—

64位,時鐘頻率士匕A支預測器

一控制器

總線接口

預取

控制邏輯

?V

L2

cache

Pentium4處理器的芯片布局

前端總線L1數據cache

及其接口L2cache

高級動態(tài)執(zhí)行

.超級流水線

定點運算器技術

Streaming

SIMD

Extensions2

Tracecache浮點運算器

(L1指令cache)MMX

?IVxds;U&ZT

Pentium4的寄存器組

P4Pentium804868038680868088

3115870

整數寄存器組GPROEAXAXAHAL

GPR1ECXCXCHCL

GPR2EDXDXDHDL

GPR3EBXBXBHBL

GPR4ESPSP

GPR5EBPBP

GPR6ESISI

GPR7EDIDi

指令計數器EIPIP

標志寄存器EFLAGSFLAGS

浮點寄存器組

86

:Bac^s-U^z-f-

Pentium4的超標量結構運算器

87

nx十

?采用超標量(superscalar)結構,一共包含9個ALU,均可

同時工作:

?2個高速整數ALU(每個時鐘周期進行2次操作),用于完成簡

單的整數運算(如加、減法)

?1個慢速整數ALU(需要多個時鐘周期才能完成1次操作),用于

完成整數乘、除法運算

?2個地址生成部件(AGU),用于計算操作數的有效地址,所

生成的地址分別用于從內存取操作數或向內存保存操作結果

?1個ALU用于完成浮點操作數地址的計算

?1個ALU用于完成浮點加法、乘法和除法運算

?1個ALU用于執(zhí)行流式的SIMD處理(SSE/SSE2/SSE3指令)

?1個ALU用于完成多媒體信號處理(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

級I每一級的操作都很簡單,

IlIFetchllecode:Write執(zhí)行速度快快,;因而允許時

..J鐘頻率高出1GHz以上

ITelchDvccxleMS:Write

13KetchIMock皺Write

其3

14IfetchDecode■Write

15IletchDecode\\rite

16Write

.舉逡

:Bac^snx十

超流水線(Hyper-pipeline)技術

?Pentium4有多條超流水線,每

條流水線的級數均很長,定點

運算達20級,浮點運算達到29

級,處于執(zhí)行狀態(tài)的指令數最

多可達到126條

?超級流水線中每步操作都非常簡單,因此主頻可以顯著提高

■Pentium4的20級超流水線結構的示意圖:

2ik567891011121314151617181920

13J*4i411?

TCNxtIPTCFirtchDthreAllocRenamoQuoSehSehSch□r<pDUpRFRF曰FigsBrCkDrive

取指階段譯碼階段執(zhí)行階段保存結果,修改IP

90

E1女x9、;U&ZT

指令流水線的效果彘

CPU

Add

運算

流水線會阻塞嗎?結果

如何確保指令流水線通暢?

例:調整后:

LOADR1,BLOADR1,B

a=b+c;LOADR2,CLOADR2,C

?ADDR2,R1々LOADR3,D

「<

e=e-d;〉?STORER2,A、ADDR2,R1

假設a,b,c,d,e分LOADR3,D-LOADR4,E

別存儲在地址為LOADR4,ESTORER2,A

A,B,C,D,E的單

?SUBR4,R3SUBR4,R3

元中

?IVxds;U&ZT

指令預取和分支預測

?為了使流水線不中斷,指令預取部件用于完成指令地址的計

算,并從指令cache中讀取指令(一次64位),它還通過動態(tài)

分支預測器對即將執(zhí)行的指令提前進行預取,如果預測發(fā)生

錯誤,那么流水線就會中斷,CPU的速度將會受到影響

,1VK3S-

Pentium的64位擴展技術(EM-64T)

Pentium4的64位寄存器組

整數寄存器組P4Pentium803868048680868088

311587。

GPR0EAXAXAHAL

GPR1ECXCXCHCL

GPR2EDXDXDHDL

64位處

GPR3EBXBXBHBL

理器的

整數寄GPR4ESPSP

存器組GPR5EBPBP

GPR6ESISI

GPR7EDIDI

指令計數器EIPIPI

標志寄存器EFLAGS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論