第3章 现代微型计算机教材289-326_第1页
第3章 现代微型计算机教材289-326_第2页
第3章 现代微型计算机教材289-326_第3页
第3章 现代微型计算机教材289-326_第4页
第3章 现代微型计算机教材289-326_第5页
已阅读5页,还剩121页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章现代微型计算机(教材289-326)

教学内容:80X86系列处理器;现代微型计算机体系

结构;微机存储管理技术;多任务与I/O管理;掌握

32位Pentium系列微处理器的特点和相应的微机结构

教学重点:80X86系列处理器;微机存储管理技术;

现代微型计算机体系结构;多任务管理与I/O管理

教学难点:现代微处理器的特点;现代微型计算机体系

结构;微机存储管理技术;多任务管理

3.180x86系列微处理器(复习)

3.232位80X86汇编语言程序设计*(自学)

3.3微型计算机体系结构

3.4存储管理技术(复习)

3.5多任务管理与I/O管理

3.180x86系列微处理器(复习)

3.1.116位80X86微处理器

(1)8088微处理器

1)Intel公司在推出8086之后,推出了介于16位与8位之间的

准16位微处理器8088。

2)8088与8086之间的区别主要在于8088对外只有8根数据线引

脚,访问16位的操作数需要二个总线周期。

3)8088的这一特点使它能够十分方便地与8位接口芯片相连接o

4)1980年,IBM公司使用8088成功地开发了16位微型计算机一

——IBM-PCo

(2).80186和80286微处理器

1)Intel公司把大型计算机的技术融合到微处理器中,首先研

制的80186在技术上并不十分成熟,没有获得广泛的应用。)

1982年Intel推出了增强型16微处理器80286,集成度达

13万管/片,时钟频率提高到5MHz〜25MHz,它的16条数据

线和24条地址线相互独立,不再分时使用,可以寻址16M的

地址空间。

2)80286CPU增加了运行多任务所需要的任务切换、存储管理

和多种保护功能。

80286CPU基本工作方式:

□实地址方式:

和8086一样,使用20根地址线寻址1M的内存空间,DOS

应用程序占用全部系统资源。

□保护方式:

80286CPU具有虚拟内存管理和多任务处理功能,通过硬

件控制可以在多任务之间进行快速切换。

Intel80286CPU结构

地址单元

(AU)

地址锁存器——\At3~A()__

和耳F动器BHEM/IO

段基地址

协处理器

段限预取器-APEACK

偏移量检查段容量接口-----PEREQ

加法器

总线控制-----READYHOLD

C>ST,SO,COD/INTA

数据收发器人LOCKHLDA

6字节总线

预取队歹!单元

I(BU)

<RESET

<----------CLK

3条已被译码指令指令

---------AVss

的指令队列译码器单元

执行单元(EU):Vcc

/一CAP

NMIERROR

INTRBUSY

80286CPU的内部组成:

总线接口部件BIU:地址单元AU、指令单元IU、总线单元

BUo

执行部件EU

3.1.232位80X86微处理器

(1)80386微处理器

HOLD,INTR,NMI

ERROR,BUSY

RESET,HLDA

BE0#〜BE3#

A2-A31

M/1O#,D/C#,W/R#

LOCK,ADS#,NA#

BSIC#,READY#

D0-D31

1)1985年,Intel公司推出了第四代微处理器,32

位的微处理器80386。片内集成27.5万个晶体管,

时钟频率为16MHz〜33MHzo具有32位数据线和32

位地址线,32位通用寄存器。

2)80386内部由中央处理器CPU、存储器管理部件

MMU、总线接口部件BIU组成。

3)80386有3种工作模式:

实地址模式、虚地址保护模式和虚拟8086模式。

(2).80486微处理器

1989年,Intel公司推出了集成120万个晶体管的32位微处

理器80486。

1)80486中集成了:

□一个80386体系结构的主处理器;

□一个与80387兼容的数字协处理器;

□一个8KB的高速缓冲存储器(Cache)。

2)80486首次采用了时钟倍频技术(在80486DX中使用),使

内部部件可以以输入时钟的倍频运行。

3)80486还支持外部的二级Cache,支持多处理器系统。

3.1.3Pentium系列微处理器

(1)Pentium微处理器

1)1993年,Intel公司推出了新一代的32位微处理器Pentium

(奔腾,以P5代称),内部集成了320万个晶体管,具有64条

数据线和32条地址线。

2)Pentium共有3个执行部件:两个整数执行部件U、V和一个浮

点执行部件。

3)每个整数部件由五级流水线组成;浮点流水线由8级组成.

4)“超标量结构”。

5)Pentium处理器分为独立的8KB指令Cache和8KB数据Cache。

6)Pentium采用了分支预测技术(也称为转移预测技术),处

理器效率得到提高。

7)除了实地址模式、虚地址保护模式和虚拟8086模式以外,又

增加了一个系统管理模式。

8)1996年,Intel公司推出了改进型32位微处理器PentiumMMX

(多能奔腾),它增加了57条MMX(多媒体扩展指令集)指

令,提高了对多媒体数据的处理能力。

(2).第六代微处理器

1)1996年Intel公司推出第六代微处理器PentiumPro(高能

奔腾)。

片内集成了550万个晶体管

具有64位数据线和36位地址线,物理地址空间64GB(236),虚拟

存储空间64TB。

2)1997年5月1廿虱公司发布了艮1151111111(奔腾2代),采用

P6核心结构,属于32位微处理器。

Pentiumll集成750万个晶体管;

加强了MMX技术,能同时处理两条MMX指令;

LICache增加到32KB,并配备了512KB的L2Cache,在CPU一半的频

率下工作;

PentiumH采用了双独立总线结构,前端总线FSB负责主存储器的访

问,后端总线与L2Cache连接;

采用动态执行和寄存器重命名RISC技术来执行x86指令。

动态执行技术主要包括:

□多路分支预测:对程序的流向进行分析,以便程序的几个分支可以同时在

处理器内部执行。

□数据流分析:对译码后的指令进行数据相关性和资源可用性分析,判断该

指令能否与其他指令同时执行。

□推测执行:将多个程序流向的指令序列优化后送往处理器的执行部件执行,

充分发挥各部件的效能。多个分支的运行结果作为“预测结果”保留,将

最终确定为“预测正确”的分支预测结果作为最终结果加以保存。

为了减少不同分支指令争用同一个寄存器的情况,Pentiumll增设了40

个可以“重新命名”的“内部寄存器”,在指令流运行结束后写回

“通用寄存器”,从而解决了多分支运行时争用寄存器的问题。

3)1999年2月,Intel公司推出PentiumHI微处理器。

□集成了950万到2800万个晶体管;

□它的前端总线频率(FSB)提高到133MHz;

□256KB的L2Cache集成到芯片内,和CPU以相同的频率工作;

□与运算部件的数据通路从64位扩展到256位;

口增加了新的70条SSE指令,使得多媒体信息的处理能力得到进一步

提高;

PentiumHI微处理器内部结构

|主存|||L2Ca盂|

前端总线|舍舍向蠡

总线接口单元I画V------>画眄][Cache16KB

H

B

⑶现代微处理器

□1999年,AMD公司首先提出了X86系列微处理器的64位扩展

架构AMD64,并在随后应用到它的Opteron及Athlon64微

处理器之中。

□此后Intel公司也提出了IA-32e(IntelAchicture-32

Extend,Intel32位体系结构扩展),后来又改名为

EM64T(IntelExtendedMemory64Technology,Intel

64位内存扩展技术),出现在Prescott核心的Pentium4

处理器上。

□原32位x86处理器的32位寄存器被扩展为64位,命名为RAX,

RBX,……,增加了8个64bit的通用寄存器R8〜R15,一个

64bit的指令指针RIP。整数部件扩展为64位,可以进行64

位的整数运算。

□EM64T的运行模式分为“传统的IA-32模式”和“IA・32e扩

展模式”两大类。在传统的IA・32模式下,64位架构的处理

器仍然像以前那样,工作在“保护模式”,“实地址模

式”,“虚拟8086模式”下。在IA-32e扩展模式下,它可

以工作在“32位兼容模式”下,以“64位处理器”的“身

份”兼容运行32位处理器的程序,或者工作在真正的“64

位模式”下,运行64位程序。

□为了进一步提升处理器的性能,AMD公司、Intel公司先后

推出了在一个微处理器芯片中集成两个64位处理器的新结

构,两个处理器有各自的LICache,共享L2CacheoIntel

公司将双核产品更名为PentiumD。

□Intel公司在2006年推出了称为“Core”的新内核。新一代

“Core”内核将流水线从Prescott核心的31级降低为14级,

通过优化整体结构提高性能。

□Core内核使用了一种“指令融合”的新技术,通过“指令

解码器”将功能相关的两条连续指令“融合”为一条“内

部指令”。例如将比较指令和条件转移指令融合为一条

“比较并转移”指令,用一条指令的执行时间完成这两条

指令的功能。Core内核因此在一个时钟周期内可以完成

4+1条指令,其中的+1即为被融合的指令。

内核的许多单元在空闲时可以进入“深度睡眠”状态,以

降低功耗。

Core核心还包含了新的指令集SSE4。

目前使用Core内核的处理器产品称为“Core2Duo(酷睿

2)”。

2001年5月29日,Intel公司推出了64位微处理器Itanium(安

腾),数据通道宽度128位。

Itanium处理器采用了全新的设计,采用称为LV64的体系结

构,不再兼容之前的80X86系列微处理器,是真正的64位处

理器。

该处理器目前主要用于服务器。

3.1.432位微处理器的寄存器

•80X86微处理器由16位升级为32位后,它的寄存器也对应升

级为32位。

•为了新的工作方式和存储管理的需要,增加了一些用于控制

的寄存器。

(1)数据寄存器

16位80X86处理器原有的4个通用数据寄存器扩展为32位,命

名为EAX、EBX、ECX和EDX。仍然可以使用原有的16位和8位寄

存器,如AX、BX、CX、DX、AH、AL、BH、BL......

⑵地址寄存器

□原有的4个主要用于内存寻址的通用寄存器同样扩展为32位,

命名为ESI、EDI、EBP、ESPo在实地址模式下仍然可以使

用原有的16位寄存器SI、DI、BP和SP。

□指令指针寄存器扩展为32位,更名为EIP,实地址下仍然可

以使用它的低16位IP。

EIP

□在原有的4个段寄存器基础上,增加了2个新的段寄存器FS

和GS。

□段寄存器长度仍为16位,但是,它存放的不再是16位二进制

表示的“段基址”,而是13位代表这个段的一个编号,称为

“段选择子”。

□段的其他信息(起始地址、段的长度、段的属性.・・)组

成64Bits的“段描述符”,存放在二张称为“段描述符表”

的表格中。13位二进制的“段选择子”就是这个段的“段

描述符”在表中的顺序号。

□一张表格存放的是当前任务所使用的段的信息,称为“局部

段描述符表(LocalDescriptorTable,LDT)

□另一张表格存放了系统所使用的段的信息,称为“全局段描

述符表(GlobalDescriptorTable,GDT)

□16位段寄存器的另一位称为“表指不器(TableIndicator,

TI)”,用来在二张表中间进行选择。

□16位段寄存器的最低二位表示申请使用段的“特权级

(RPL)”,取值0〜3。

□每个段寄存器还有一个配套的64bits“段描述符寄存器”。

向段寄存器装入一个新的“段选择子”的同时,处理器会同

时把它的描述符装入对应的“段描述符寄存器”。这些寄存

器不能由指令来存取,对程序员是不可见的。

□32位微处理器增加了4个系统幽况寄存器:

□存放“全局段描述符表”首地址的GDTR;

□存放“中断描述符表”首地址的IDTR;

□存放“局部段描述符表”选择子的LDTR;

□存放“任务段”选择子的“任务寄存器"TR。

4716150

GDTR线性地址界限

1DTR线性地址界限

LDTR

150

TR

⑵控制寄存器

□标志寄存器也扩展为32位,更名为EFLAGS。除了原有的状

态、控制标志,增加了2位表示10操作特权级别的IOPL,

表进入虚拟8086方式的VM标志等。

□32位微处理器增加了5个32位的控制寄存器,命名为

CR0~CR4。CR0寄存器的PE二1表示目前系统运行在“保护模

式”,PG二1表示允许进行分页操作。CR3寄存器存放“页

目录表”的基地址。

□此外,还有8个用于调试的寄存器DR0~DR7,2个用于测试

的寄存器TR6〜TR7。

3.1.532位微处理器的工作方式

(1)实地址方式

1)实地址方式使用16位80X86的寻址方式、存储器管理和中断管

理。实地址方式下使用20位地址寻址1MB空间,中断向量表

安置在00000H开始的1KB内。

2)32位微处理器刚加电或者复位时,就进入实地址方式。实地

址方式用于在开机后为进入保护模式做准备,也可以把32

位处理器用作一片高速16位处理器使用

3)可以使用32位寄存器(需要在指令前加上寄存器扩展前缀),

使用特权级3可以执行大多数指令。

⑵保护方式

1)保护方式是32位微处理器的基本工作方式。

2)保护方式下微处理器支持多任务运行环境,对任务进行隔

离和保护,进行虚拟存储管理。

3)保护方式能够充分发挥32位处理器的优良性能。

(3)虚拟8086方式

1)虚拟8086方式是保护模式下某个任务的工作方式,允许在

保护模式下运行多个8086程序。

2)虚拟8086方式使用8086的寻址方式,每个任务使用1MB的

内存空间。虚拟8086方式的任务以最低特权级运行,所以不

能使用特权指令。

(4)系统管理方式

系统管理模式(SystemManagementMode,SMM)主要用于电

源管理

3.232位80X86汇编语言程序设计

*(复习,阅读)

3.2.132位汇编语言源程序格式

与16位80X86汇编语言的主要区别

1)在程序首部添加处理器伪指令。

2)对每个段说明它的16位/32位属性。

3)可以使用新的存储器操作数寻址方式。

4)使用32位寄存器,扩展/新增的32位指令

3.2.132位汇编语言源程序格式

1.处理器伪指令

.8086只使用8086指令(缺省方式)

.286.386.486.586.686使用该种类型处理器指令

.386P.486P.586P.686P允许使用该种类型处理器保

护模式指令(特权指令)

.MMX.XMM使用多媒体指令集

2.段的属性

16位段,使用16位偏移地址,最大64KB

32位段,使用32位偏移地址,最大4GB

.386

CODESEGMENTUSE16;使用16位段

使用16位段:.MODELSMALL

.386

使用32位段:.386

.MODELSMALL

3.32位80X86指令操作数

(1)允许使用8位/16位/32位的寄存器、立即数、存储器操作数

(2)任何一个通用寄存器都可以用来间接寻址

MOVEDX,[EAX];寄存器间接寻址,使用DS

ADDDWORDPTR[EBP+2],-4;寄存器相对寻址,使用SS

ORBL,3[EBP][EDX];相对的基址(EBP)变址(EDX)寻址

;使用SS

XORCX,6[ECX][EBP];相对的基址(ECX)变址(EBP)寻址,

;使用DS

(3)变址寄存器可以乘上系数1、2、4或8

MOVECX,2[ESI][4*EBP];相对的基址变址寻址,使用DS

MOVECX,2[EBP][4*EBX];相对的基址变址寻址,使用SS

(4)32位MPU在16位段内可以继续使用16位8086MPU存储

器操作数寻址方式,也可以使用32位寻址方式,但是必须保证

有效地址的高16位为0。

3.2.232位80X86指令系统

32位80X86指令系统主要由以下几组指令组成:

(1)原8086指令;

(2)扩展了操作数长度的原16位指令:允许使用32位的寄存器

、立即数、存储器操作数,使用32位寻址方式。例如:

“MOVEBX,BUFFER[EAX+4*ECX『;

(3)使用原16位指令的指令助记符,但是扩展了功能的指令例

如:“IMULEDX,3"(EDX—(EDX)X3);

(4)原16位指令的“自然”延伸。例如:“MOVSD”

(字符串指令,每次传送4字节);

(5)新增的32位指令。如:“CVTSS2PlEBX,XMM2”

(SSE指令)o

1,扩展了操作数长度的指令:

允许使用32位的寄存器、立即数、存储器操作数,使用32

位寻址方式。

(1)传送类指令:MOV,IN,OUT

(2)算术运算类指令:ADD,ADC,INC,SUB,SBB,

DEC,NEG,CMP,MUL,IMUL,DIV,IDIV

(3)逻辑运算类指令:AND,OR,NOT,XOR,TEST

(4)移位与循环指令:SHR,SHL,SAL,SAR,ROR,

ROL,RCR,RCL

扩展了操作数长度的指令举例

INEAX,DX;读32位端口(端口地址在DX中)

MOVEAX,12345678H;32位立即数送入32位寄存器EAX

ADDDWORDPTR[ECX],EDX

;32位EDX寄存器内容加入32位内存变量

2.扩展了功能的指令

(1)移位与循环类指令

允许使用不大于255的立即数给出移位/循环次数。

例如:ROREAX,12;EAX寄存器循环右移12次

(2)IMUL允许有更灵活的操作数个数与类型

例如:IMULAX,3;AX—(AX)x3

IMULECX,X;ECX^(ECX)x(X),X是双字变量

IMULEDX,EBX,-5;EDX—(EBX)义(-5)

3.16位指令自然延伸得到的32位指令:

(1)字符串指令:MOVSD,SCASD,LODSD,

STOSD,

CMPSD

每次传输、处理4字节数据,之后变址寄存器+4或-4。

(2)数据符号扩展指令CWDE,CDQ

CWDE;将人乂符号扩展为32位,送入EAX

CDQ;将后八符号扩展为64位,送入EDX、EAX

(3)堆栈指令PUSHAD,POPAD,PUSHFD,

POPFD

PUSHAD,POPAD将8个32位通用寄存器入栈/出栈。

PUSHED,POPFD将32位EFLAGS寄存器入栈/出栈。

(4)地址装载指令LFS,LGS

取32位存储器,送16位寄存器(指令操作数)和16位

段寄存器(FS,GS)o

(5)转移控制类指4JECXZ,IRETD

JECXZ:ECX寄存器全零时转指定标号。

IRETD:32位中断返回指令,从堆栈先后弹出EFLGS

、EIP、CS寄存器内容。

(4)其它32位指令

(1)MOVSX指令允许将8/16位源操作数符号扩展后送入

16/32位的目的操作数。

MOVSXEDX,BL;8位操作数符号扩展为32位送

EDX

(2)MOVZX指令允许将8/16位源操作数零扩展后送入

16/32位目的操作数。

MOVZXDX,DL;8位操作数零扩展为16位送DX

(3)32位MPU的条件转移指令使用2字节相对位移量,

可以实现64KB范围内的转移(不包括JECXZ)。

3.2.332位80X86汇编语言程序设计(复习,阅读)

(1)16位模式下的32位80X86汇编语言程序设计

1)所谓“16位模式”就是指MPU工作在实地址模式,或者虚拟

8086方式。

2)这时的MPU只能访问1MB以内的存储器,每个段最大64KB.

3)可以使用32位寄存器,处理32位数据,使用32位的寻址方式(

有效地址高16位必须为0)。

⑴16位模式下的32位80X86汇编语言程序设计

,MODELSMALL

.386;使用32位MPU指令集

.DATA

FRADW5DUP(?)

.CODE

START:MOVAX,@DATA

MOVDS,AX

MOVEBX,1;EBX中存放待求阶乘的数

MOVCX,5;求阶乘次数(循环次数)

LOOPO:CALLFRACTOR;调用FRACTOR求阶乘

MOVFRA[2*EBX-2],AX;保存结果(阶乘值)

INCBX;产生下一个待求阶乘的数

LOOPLOOPO;循环控制

;以下同16位MPU程序

(2)32位模式下的32位80X86汇编语言程序设计

运行在保护模式下的32MPU程序使用32位模式

1)使用“FLAT”(平坦)内存模式。整个程序只有一个段

,最大4GB。

2)使用32位寻址方式,偏移地址32位。

3)在Windows操作系统下,用户界面操作、消息传递等大

量工作可以通过调用应用程序接口(API函数)实现。

3.3微型计算机体系结构

3.3.180X86微型计算机结构

(l)IBM-PC,PC/XT微型计算机结构

1)PC/XT机采用以CPU为中心的简单结构,通过若干缓冲和锁

存电路把8088CPU的信号连接到它的“系统板”上,构成了

62线的"XT总线"o

2)XT总线包括赢数总线,20根地址线,使用与CPU相同的

4.77MHz的时钟信号。XT总线的数据传输率约为L2MB/S。

3)它的“系统板”上除了8088CPU及其外围电路,还集成了

ROM、RAM、定时/计数器、中断控制器、DMA控制器、键

盘、扬声器接口以及8个62引脚的“XT总线”扩展插槽。

4)它的显示器接口,打印机接口,串行通信接口都是以“接口

卡”的形式通过62脚插槽与系统相连接的。

(2)PC/AT微型计算机结构

1)PC/AT对8位的“XT总线”进行了扩充,构成16位的“AT

总线”;随后推出了与AT总线兼容的,公开的总线标准—

一ISA(IndustryStandardArchitecture,工业标准体系结

构)。

2)ISA总线使用24位地址、16位数据、15级硬件中断和7个

DMA通道,使用6〜8MHz时钟信号,最高数据传输率为

8MB/So

3)“分级”总线的微型计算机结构:把CPU与内存储器直接

相连,称为“CPU局部总线”;经过外围芯片(组)产生

“系统总线”,与相对低速的其他I/O设备相连接。

4)L2Cache和DRAM及其控制器通过“CPU局部总线”与

80486直接相连。

3.3.2Pentium系列微型计算机结构

□为Intel于1991年底提出,1993年联合其他公司推出了PCI总

线规范。它独立于CPU,完全兼容当时已有的ISA/EISA/微

通道总线,具有高达133MB/S的数据传输速率,能够满足高

性能图形接口和其他高速外设的需要。

□随着同年高性能微处理器Pentium的推出,Pentium+PCI成

为新一代微型机计算机的的代名词。

(1)“南北桥”结构

Pentiumll系列处理器,Pentiumll系列处理器

主处理器总线1

小0〜66MHz

<3

主存

“南北桥”CPU/PCI

图形设备

结构的IglL2Cache

PentiumH

微型计算

机?CI||总"

帕加izi5

V-----------丫午YYY

APIC总线

PCI/ISA|I/O|

APIC

TI串行口

并行口

软盘接口

ISA总线

<1-------

键盘接口

系统BIOS鼠标接口

1)“南北桥”结构支持多级总线的系统组成。系统由处理器

总线(HostBus),局部总线(PCI)和系统总线(ISA)三

级组成(图10・7)。

2)“CPU/PCI桥”处于上部,按照地图的习惯,被称为“

北桥”。该芯片除了“CPU/PCI桥”电路之外,同时集成了

AGP总线接口、主存储器控制器、PCI仲裁器。

3)“PCI/ISA桥”位于图的下方,被称为“南桥”,它同时

还集成了IDE辅助存储器接口,二个8259中断控制器,二个

DMA控制器,8253/8254定时/计数器和实时时钟,还增添了

通用串行总线(USB)接口,“I/OAPIC”等。

4)各“级”之间信号的速度缓冲、电平转换、控制协议转换

由称为“桥”的电路实现。根据“桥”二端电路的不同,有

“CPU/PCI桥”(HostBridge),“PCI/ISA桥”,“PCI/

PCI桥”等。

4)处理器总线连接高速缓存(Cache)和主存储器;

3)PCI总线连接显示适配器、网络适配器、硬盘驱动器等高速

设备;

4)ISA总线连接传统的并行口、串行口、软盘驱动器、键盘、

鼠标等相对低速的外部设备。

9)传统的较低速的接口集成在称为“SuperI/O的电路中。

10)许多公司研制和生产了组成“南■北桥”的芯片组,它们各

自具有不同的性能和技术特征。

Intel公司生产的典型的“南-北桥”的芯片组有440BX和440Tx等。

从PentiumII开始的CPU还提供专用的引脚,通过南桥芯片“I/OAPIC”接口

连接多于一个的CPU,构成多CPU系统。

(2)“两个中心”结构

“南-北桥”结构存在一个明显的“数据传输瓶颈”:南桥芯

片连接的高速外设都要通过PCI总线与处理器相连接。这增加

了PCI总线数据交换的拥挤程度。Intel公司为此又推出了称为

“中心结构”的新的结构体系。

1)“存储控制中心”(MemoryControlHub,MCH)芯片的主

要任务是建立处理器与系统其他设备的高速连接。

它与处理器连接,通过存储器总线连接主存储器,通过“中心高速接口”与

称为“I/O控制中心(I/OControlHub,ICH)”的芯片连接,它还集成了高

速AGP总线接口,电源管理部件和存储管理部件。

有的MCH芯片还同时集成了AGP图形接口,可以直接连接显示设备,称为“

图形存储控制中心(GMCH)

2)“I/O控制中心”芯片(ICH)负责建立I/O设备与系统的连接。

在它的内部集成了:

2个IDE辅助存储器接口(PrimaryIDE,SecondaryIDE);

2个或4个USB接口;

内置了PCI总线仲裁器和PCI总线接口;

内置了AC97控制器,提供音频编码和调制解调器编码接口;

通过1「(31小和5叩01*1/0芯片相连。该芯片内置相关接口,连接软盘驱动器、键

盘、鼠标等相对低速的外部设备,同时提供传统的并行、串行接口;

称为“固件中心”(FWH)的芯片主要用来存储系统和显示的BIOS,它也连接

到ICH芯片上。

Intel公司生产的典型的“中心结构”的芯片组有810,815,820,850,860和

845等系列。

PC99规范中取消了ISA总线,需要使用时可通过“PCI/ISA桥”芯片引出。

“中心结构”进一步完善了多级总线结构,是目前普遍使用的微计算机系统

结构.

3.3.3Intel系列芯片组

系统芯片组的作用:

①连接构成系统的各个部件(处理器,主存储器,

接口,外设)

②提供各种基本信号,连接局部/系统总线,

③集成了时钟、定时/计数器、中断控制器、DMA控

制器以及并行接口、串行接口等电路。

系统芯片组在系统的构成上起着重要的作用,它使系统结构简

洁而同时又保持了强大的功能。

广泛使用的Intel芯片组有865,915,925,965等系列

(1)Intel845芯片组

由存储控制中心芯片(如:82845P)和第四代10控制中心

芯片(ICH4,如:82801DB)组成。

]支持mPGA478封装的P4或CelronD处理器,处理器总线频率最高533MHz;

]支持SDR/DDRSDRAM等不同种类的存储器;

]提供1X/2X/4XAGP图形总线;

j支持USB2.0。

(2)Intel865芯片组

由865系列的MCH芯片(如82865PE)与第五代10

控制芯片(ICH5/ICH5R,如82801EB)组成。

□支持mPGA478封装的P4或CeleronD处理器,支持超线程(Hyper

Threading,HT)技术,支持800MHz/533MHz/400MHz的处理器总线;

□支持双通道DDR400存储器,带宽达到到6.4GB/S(64/8*400MHz*2),与

处理器总线带宽相均衡;

□提供8X/4XAGP图形总线;

□提供串行ATA硬盘驱动器接口和Gb级的以太网接口。

InteIPentium4

Processor

6.4,4.2or.2GB/S

双通道

DDR400/333/266SDRAM

DDR3.2GB/S

3.2GB/S

OMB/S

双通道串行ATA

ICH5/

PCI2.3

ICH5R

USATAW;

BIOSIntelRAID技术

支持超线程仅ICH5R

(3)Intel955芯片组

□Intel955芯片组配用第六代10控制芯片(ICH6,如

82801GB)o以Intel955XExpress芯片组(MCH芯

片为Intel82955X)为例:

□支持多内核CPU(如PentiumD),支持超线程技术,处理器总线频率为

1066MHz或800MHz,使用LGA775封装;

□提供PCIExpressxl6高速图形总线,带宽达到8GB/S,是AGP8X接口带

宽的3.5倍;

□提供6组PCIExpressXI总线接口,供系统扩展;

□支持双通道DDR2-533存储器,带宽高至10.7GB/S;

□提供4组独立的串行ATA辅助存储器接口,每组带宽达到3Gb/S。

(4)结构的发展

Intel*ExtremeTuning

Support

3.4存储管理技术(复习)

3.4.1高速缓存技术

□对于半导体存储器器件而言,低价格、大容量、高速度是一组永恒的矛盾;

□用单一工艺制造的半导体存储器难以同时满足上述三方面的要求。

□解决这个问题的有效方法就是发挥不同存储器件各自的长处,采用多层次的存

储系统。

(1)多级存储体系

□多级存储体系就是把几种不同容量、速度的存储器合理地组

织在一起,使它们能较好地同时满足大容量、高速度、低价

格的要求。

□以增加技术复杂程度为代价。

存储系统层次结构如下图,该系统由高速缓存(Chache)、

主存、辅存三类存储器组成。

三类存储器构成了二个层次的存储系统。

1)“高速缓存一主存”层次

□高速缓存(Chache)存储器:

>由小容量的高速静态存储器构成

>速度很快,可以与处理器相匹配

>容量小(约32KB),不会显著提高系统成本

>一般将Cache集成在CPU的内部

>Cache存储处理器当前使用的指令和数据

>和处理器之间以“字”为单位进行读写

□主存储器:

>由大容量的动态存储器组成

>单位成本低于Cache

>速度相对较慢

>Cache与主存之间以“页”为单位进行读写

□这一层次主要解决存储系统的“速度”问题。

2)“主存—辅存”层次

□辅助存储器:

□由大容量的磁表面存储器或光存储器构成

□具有很低的“位存储价格”

□辅助存储器上储存着大量的程序和数据,处理器仅把目前

使用的程序和数据装入主存

□辅存和主存之间以“块”为单位进行读写交换

□这一层次主要解决存储系统的“容量”和“成本”

问题

以上二个层次的组合,本质上来说,是充分利用Cache的高速

度,辅助存储器的大容量和低成本,使存储系统较好地解决

“容量一速度一价格”之间的矛盾。

⑵映射方式

□设置高速缓冲存储器之后,处理器需要的指令和数据首先

在Cache中寻找:

如果找到,则从Cache中快速读取,称为“命中”

如果未能在Cache中找到,称为“失靶”(不命中),需要:

□从主存中读取指令或数据所在“页”存入Cache

□同时将该指令或数据送入处理器

□确定所要的指令/数据是否在Cache中,相关信息纪录在

“相联存储映像表”中。

□为此,对主存“页”进入Cache的位置作了种种限制,主存

的“页”需要由某个“映像函数”确定它在Cache中的位置。

1)直接映像法

假设:

Cache:

>容量16KB,混合存储指令和数据信息

>16个“字”(每个字为32bit=4Byte)为一“页”,共

256“页”

>地址:页地址(8位):页内位置(6位)

主存:

>使用32位主存地址,寻址4GB的主存空间

>地址:TAG(18位):页地址(8位):页内地址(6位)

直接映像法:

主存中的一页只能进入与它页号相同的Cache页中。

8位6位

页地址页内位置Ca)

9)

例子

□Cache为“空”时,处理器访问主存单元地址12345678H的,该地址可

以划分为:

TAG页地址页内地址

主存地址

048D1H59H38H

该内存页被读出,存入Cache中59H页。“相联存储映像表”中该页的“标

记(TAG)”被置为“048D1H”。

□随后,处理器访问主存单元12345644H,地址划分为:

TAG=O48D1H,页地址=59H,页内地址=04H

查找“相联表”中页面为59H的标记项TAG,“命中”。Cache第59H

页面中页内地址为04H的“字”被读出,送往处理器。

处理器访问地址12341678H的主存单元,地址划分为:

区号(TAG)=048D0H,页地址=59H,页内地址=38H。

再次查找表中页面59H的标记项,发出“失靶”信息。

主存中编号为048D0H的1页被读出,存入Cache第59H页面中,对应的

“标记”修改为“048D0H”。

一个新的主存页面进入Cache,原来的页面被覆盖。

直接映像法特点:

直接映像法采用简单的映射关系,查找方便。

每个主存页面只与Cache中惟一的一个页相映射,增加了页

面冲突的可能性,会增加不合理的页面更换,Cache的页面

不能充分利用。

(2)全相联映像法

全相联映像法:主存一页可以进入Cache任何一页。

例:16KBCache,划分同上.32位主存地址,主存地址划分:

页地址(26位):页内地址(6位)。

处理器发出主存物理地址之后,Cache管理逻辑需要把主存的“页号”

与所有的“标记”逐一进行比较,以确定是否“命中”。

全相联映像法特点:

>“页面冲突”的可能降到最小;

>查表,比较次数多,电路复杂;

>只适用于小容量的Cache

8位6位

页地址页内位置(a)

26位6位

(3)组相联映像法

组相联映像法:

>Cache划分成大小相等的“组”,每个组由若干“页”组成

>允许主存的一个页与同一组内Cache的多个页面进行映射

例:32位主存地址,16KBCache,Cache每“组”由二个页面

组成,共128个组。

Cache内字节地址由组号(7位):页号(1位):页内地址(6位)

主存地址区号(19):页号(7位):页内地址(6位)

每个“区”包含128个“页”,等于Cache"组”的数量。

□主存每个区的0#页面可以和Cache内0组二个页面中的任

个相映射,

□1#页面可以和Cache内1组二个页面中的任一个相映射

□访问主存时,需要将主存“区地址”部分与一个组内二

个页面的“标记”同时进行比较,以确定是否“命中”。

组相联映像法特点:

□减少了页面冲突的可能性

□比较次数等于Cache内每组的页面数

□目前的微处理器多采用这种方法

7位1位6位

组地址页地址页内位置(a)

19位7位6位

区地址页地址页内位置(b)

相联存储映像表Cache主存

0#区

1#区

(c)

3.替换算法

□一个新的主存页面写入Cache,Cache中原有的页面就被覆

盖或者说被替换。

□使用“全相联映像法”和“组相联映像法”时,主存页的

进入位置有一个以上的选择,管理逻辑需要决定覆盖或者

替换哪一个Cache页。

□确定被替换页面的算法主要取决于实现的难易和命中率的

IWJ低。

常用的方法有以下二种

(1)先进先出法(FIFO)

选择最早进入的页为被替换的页

这种方法实现简单,但不够合理,最早进入的页仍然可能

是现在频繁使用的页。

(2)“近期最少使用”算法(LRU)

这种算法比较合理,实现起来稍微复杂一些。

4.Cache和主存一致性问题

□使用高速缓存后,一项数据可能同时储存在二个位置上

□处理器把数据写入Cache,尚未写入主存时,就产生了

Cache一主存内容的不一致性

解决这个问题可以采用二种方法。

(1)写回法(WriteBack)

处理器执行写操作时,信息只写入Cache,该页被替换时,

才将它写回主存。

(2)写直达法(WriteThrough)

信息在写入Cache的同时也写回主存。

比较:

使用写回法时,一个主存页面调入Cache后最多回写一次

(内容未修改则不需要写回),节省了回写时间,但是一

致性保持不如写直达法。

5.突发总线周期(BrustBusCycle)

□主存和Cache之间以“页”为单位进行信息交换,每次传送

都是对连续的若干字节进行

□新型主存器件都支持突发总线传输方式

突发总线传输:

向主存储器发送起始地址之后,连续传送多个字的数

据。

例:

•Pentium的Cache每页64字节,与主存之间可以同时传输

64Bits也就是8字节信息。

•主存页调入Cache时,向主存发出该页的起始地址,同时发

出“突发总线请求”信号。

­主存收到上述信号,适当延时,在连续的多个周期内每次

发送8字节(64Bits)信息,最终把一页内容写入Cache。

3.4.2虚拟存储技术

现代微型计算机对内存数量要求的增加:

□采用多任务的操作系统,提高CPU利用率和性能

□多媒体技术的广泛使用,系统程序和应用程序使用的内存

数量越来越大。

□由于成本的原因,主存容量配置难以满足上述要求。

内存管理的“碎片”问题:

□任务运行时申请使用内存;任务撤销时释放内存。运行一

段时间之后,主存空间将出现许多“碎片”。

□清理这些“碎片”需要移动正在使用的“内存片”,这会

带来许多复杂的问题。

虚拟存储技术:

■将主存储器和辅助存储器的一部分统一编址,看作一个

完整的“虚拟存储空间”。

•从80386开始的微处理器都内置了“存储管理部件

(MMU)汽完成“虚存”和“实存”之间的调度。

使用虚拟存储技术的好处:

>扩大了程序可用的存储空间;

>有效地解决了任务之间,用户任务与操作系统之间存储

空间的隔离和保护;

>有效解决“碎片”问题。

虚拟存储

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论