第2章16位和32位微处理器_第1页
第2章16位和32位微处理器_第2页
第2章16位和32位微处理器_第3页
第2章16位和32位微处理器_第4页
第2章16位和32位微处理器_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

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

文档简介

1、1 Intel 8086/8088CPUIntel 8086/8088CPU的基本结的基本结构构 微处理器的基本工作原理微处理器的基本工作原理 PentiumPentium处理器的特点处理器的特点第第2章章 16位和位和32位微处理器位微处理器23基本概念基本概念Intel 8086Intel 8086和和80888088 字长字长1616位,采用位,采用4040引脚双列直插式引脚双列直插式(DIP)(DIP)封装;封装; 20 20位地址线,最大寻址位地址线,最大寻址2 22020=1M=1M;4 内部数据线内部数据线1616位,外部数据线:位,外部数据线:80868086为为1616位,位

2、,80888088为为8 8位;位;8080/80888080/8088微处理器在逻辑上微处理器在逻辑上由两大部分组成:由两大部分组成:总线接口单元总线接口单元(BIU)(BIU)和执行单元和执行单元(EU)(EU)组成组成下下图。图。56执行部件执行部件1. 1. ALU( (算术逻辑单元算术逻辑单元) ) 功能:主要进行功能:主要进行8 8位或位或1616位算术逻辑运位算术逻辑运算。算。2. 2. 寄存器组寄存器组7AXAHALBXBHBLCXCHCLDXDHDL AX又称为累加器又称为累加器 BX又称为基址寄存器又称为基址寄存器 CX又称为计数寄存器又称为计数寄存器 DX又称为数据寄存器

3、又称为数据寄存器(1 1)通用寄存器)通用寄存器8(2) (2) 专用寄存器专用寄存器(均为均为16位位) SP( SP(堆栈指针寄存器堆栈指针寄存器):):指向当前堆栈指向当前堆栈栈顶的偏移地址;栈顶的偏移地址; BP( BP(基址指针寄存器基址指针寄存器):):用于对堆栈中用于对堆栈中的数据进行基址寻址;的数据进行基址寻址;9 SI( SI(源变址寄存器源变址寄存器):):用于变址寻址;用于变址寻址; DI( DI(目的变址寄存器目的变址寄存器):):用于变址寻址;用于变址寻址;3. 3. 标志寄存器(标志寄存器(FR)是一个是一个1616位寄存器,其中有位寄存器,其中有7 7位未使用。位

4、未使用。1011总线接口部件总线接口部件( (BIU) )总线接口部件由以下各部分组成:总线接口部件由以下各部分组成:1. 1. 段寄存器(段寄存器(DS、CS、ES、SS) DS数据段寄存器数据段寄存器 CS代码段寄存器代码段寄存器 ES附加段寄存器附加段寄存器 SS堆栈段寄存器堆栈段寄存器122. 162. 16位指令指针寄存器位指令指针寄存器IP用于存储下一条要执行指令的偏移地址。用于存储下一条要执行指令的偏移地址。3. 203. 20位地址加法器位地址加法器用于产生用于产生2020位的物理地址。位的物理地址。4.4.指令队列缓冲器指令队列缓冲器 8086 8086指令队列缓冲器为指令队

5、列缓冲器为6 6字节,字节, 80888088指令队列缓冲器为指令队列缓冲器为4 4字节。字节。13BIUBIU与与EUEU的动作协调原则的动作协调原则(1) (1) 当当80868086指令队列有指令队列有2 2个空字节个空字节(8088)(8088)有有1 1个空字节时,就会自动取指令。个空字节时,就会自动取指令。(2) (2) 当当EUEU执行指令时需要访问外设时,执行指令时需要访问外设时,会向会向BIUBIU提出请求。提出请求。(3) (3) 当指令队列满且当指令队列满且EUEU无请求时,无请求时,BIUBIU进入空闲状态。进入空闲状态。14(4) (4) 在执行转移指令时,指令队列中

6、在执行转移指令时,指令队列中的内容被清除,的内容被清除,BIUBIU从转移到的目标从转移到的目标地址处取指令。地址处取指令。取指取指忙忙取指取指忙忙BIUEUBUS时间时间取指取指执行执行忙忙取指取指执行执行忙忙取指取指执行执行忙忙存数存数执行执行忙忙取数取数执行执行忙忙8086的总线周期的概念4个时钟周期, T1状态 T2状态 T3状态 Tw状态 T4状态典型的8086总线周期序列17存储器组织存储器组织u存储器地址的分段u8086存储器的分体结构u堆栈18存储空间的分段存储空间的分段u20位地址 地址线为20根,寻址空间为1Mu16位寄存器 寄存器为16位,可寻址64Ku提出逻辑段的概念

7、段地址可灵活定义(必须是16的整倍数), 段内的最大空间为64K存储器中以字节为单位存储信息存储器中以字节为单位存储信息每个存储单元有唯一的物理地址每个存储单元有唯一的物理地址存储顺序:低字节存放在低地址;高字节存放在高地址存储顺序:低字节存放在低地址;高字节存放在高地址物理地址的形成物理地址的形成19u四个段寄存器CS,DS,SS,ESu逻辑地址是由段寄存器和段内偏移量寄存器组成u物理地址=段寄存器的值*16+段内偏移量寄存器的值物理地址的形成物理地址的形成20物理地址=段寄存器的值*16+段内偏移量寄存器的值不同的段基址和段内偏移量可以得到相同的物理地址。如:1234:00051230:0

8、0451200:03451000:2345逻辑地址的来源逻辑地址的来源uCS:IP CS:IP 指向代码段指向代码段uSS:SPSS:SP指向堆栈段指向堆栈段uDS:BX(SI,DI)DS:BX(SI,DI)指向数据段指向数据段uES:DI (ES:DI (串操作)指向附加段串操作)指向附加段2122规则字和非规则字:规则字和非规则字: 规则字:从偶单元开始存放的字数据。规则字:从偶单元开始存放的字数据。 非规则字:从奇单元开始存放的字数非规则字:从奇单元开始存放的字数据。据。 对于规则字,对于规则字,8086CPU8086CPU只需要一个总只需要一个总线周即可存取;对于非规则字需要二个线周即

9、可存取;对于非规则字需要二个总线周期才能存取。总线周期才能存取。 对于规则字和非规则字,对于规则字和非规则字,8088CPU8088CPU都需要二个总线周期才能存取。都需要二个总线周期才能存取。23系统复位地址系统复位地址系统复位后,使系统复位后,使CS = 0FFFFH , IP = 0000HCS = 0FFFFH , IP = 0000H计算机的第一条指令是从物理地址计算机的第一条指令是从物理地址0FFFF0H0FFFF0H处开始执行的。处开始执行的。24特殊的存储器区域特殊的存储器区域中断向量区:中断向量区:00000H00000H003FFH003FFH,共,共1KB1KB空间空间显

10、示缓冲区:显示缓冲区:单色显示器的显示缓冲区:单色显示器的显示缓冲区:地址空间:地址空间:B0000HB0000HB0F9FHB0F9FH存放所显字符存放所显字符ASCIIASCII和属性和属性25彩色显示器的显示缓冲区:彩色显示器的显示缓冲区:地址空间:地址空间:B8000HB8000HBBF3FHBBF3FH存放像素代码存放像素代码8086/8088的工作模式及外部结构的工作模式及外部结构268086/80888086/8088有有2 2种工作模式:种工作模式:最大模式:工作于多处理器系统最大模式:工作于多处理器系统(包括数学协处理器),总线争用,(包括数学协处理器),总线争用,总线裁决功

11、能总线裁决功能最小模式:工作于单处理器系统,最小模式:工作于单处理器系统,总线不需要共享。总线不需要共享。272.3.12.3.1 指令周期、总线周期及时钟周期指令周期、总线周期及时钟周期1. 1. 指令周期指令周期指一条指令从内存中取出到执行完指一条指令从内存中取出到执行完规定的动作所用的时间。规定的动作所用的时间。2. 2. 总线周期总线周期进行一次总线操作进行一次总线操作( (访存或访访存或访I/O)I/O)所所需的时间。需的时间。283. 3. 时钟周期时钟周期是系统工作的最小时间单位,取决是系统工作的最小时间单位,取决于系统的主频。于系统的主频。292.3.2 8086/8088CP

12、U2.3.2 8086/8088CPU引脚信号及功能引脚信号及功能301. 8086CPU1. 8086CPU引脚功能引脚功能 ADAD1515ADAD0 0( (双向三态双向三态) ):1616位地址位地址/ /数据数据复用总线。复用总线。 A A19191616/S/S6 63 3 ( (输出,三态输出,三态) ):高:高4 4位地位地址址/ /状态信号复用总线。状态信号复用总线。 BHE/SBHE/S7 7 ( (输出,三态输出,三态) ):数据高:数据高8 8位允位允许信号许信号/ /状态信号复用总线。表示高状态信号复用总线。表示高8 8位数据线位数据线D15D15D8上的数据有效。上

13、的数据有效。31 INTR(INTR(输入输入) ):可屏蔽中断请求信号。:可屏蔽中断请求信号。 NMI(NMI(输入输入) ):不可屏蔽中断请求信号。:不可屏蔽中断请求信号。 RD(RD(输出,三态输出,三态) ):读信号。:读信号。 READY(READY(输入输入) ):存储器或外设准备就:存储器或外设准备就绪信号。绪信号。 RESET(RESET(输入输入) ):复位信号,至少保持高:复位信号,至少保持高电平电平4 4个周期。个周期。CPUCPU复位后,复位后,CS=0FFFFHCS=0FFFFH,其它寄存器内容为其它寄存器内容为0000H0000H。32 DEN(DEN(输出,三态输

14、出,三态) ):数据允许信号。表示:数据允许信号。表示CPUCPU当前准备发送或接收一个数据当前准备发送或接收一个数据 RQ/GTRQ/GT0 0、RQ/GTRQ/GT1 1( (输入输入/ /出出) ):总线请求:总线请求/ /应答应答信号。信号。 INTA(Interrupt Acknowledge,INTA(Interrupt Acknowledge,输出输出) ):中断响应信号。中断响应信号。 DT/R(Data Transmit/Receive,DT/R(Data Transmit/Receive,输出,三输出,三态态) ):数据发送:数据发送/ /接收信号。接收信号。 M/IO(M

15、/IO(输出,三态输出,三态) ):访存:访存/ /外设控制信号。外设控制信号。 CLK(CLK(输入输入) ):时钟输入信号。:时钟输入信号。33 WR (WR (输出,三态输出,三态) ):写控制信号。:写控制信号。 MN/MX(MN/MX(输入输入) ):最小:最小/ /最大模式信号。最大模式信号。 ALE(Address Lock Enable,ALE(Address Lock Enable,输入输入) ):地址锁存允许输出信号。地址锁存允许输出信号。8086最大/最小模式下的典型配置 常有芯片74LS24534驱动电路3574LS37336锁存电路373839402.4 8086/8

16、0882.4 8086/8088微处理器的基本时序微处理器的基本时序8086最小模式下读操作时序最小模式下读操作时序418086最小模式下写操作时序最小模式下写操作时序428088最小模式下读操作时序最小模式下读操作时序438088最小模式下写操作时序最小模式下写操作时序44452.5 80X862.5 80X86至至PentiumPentium系列微处理器系列微处理器 从从19821982年后年后IntelIntel公司先后推出了多公司先后推出了多种型号的微处理器,除具备种型号的微处理器,除具备80868086的基本的基本功能外,主要增加了虚拟存储、特权保功能外,主要增加了虚拟存储、特权保护

17、、任务管理、时钟倍频技术、预测技护、任务管理、时钟倍频技术、预测技术等功能。术等功能。462.5.1 Pentium2.5.1 Pentium微处理器的内部结构微处理器的内部结构PentiumPentium微处理器的内部结构:微处理器的内部结构: 内部寄存器为内部寄存器为3232位位 外部数据线外部数据线6464位,地址线位,地址线3232位位 有有2 2条相对独立的并行指令流水条相对独立的并行指令流水线:线:U U线和线和V V线线47482.5.2 Pentium2.5.2 Pentium微处理器的特点微处理器的特点 2 2条流水线构成超标量流水线结构条流水线构成超标量流水线结构 U U流

18、水线可以执有的整数和浮点运流水线可以执有的整数和浮点运算,算,V V流水线只能执行简单的整数运流水线只能执行简单的整数运算和一条异常指令算和一条异常指令FXCHFXCH。 重新设计浮点部件,流水线达重新设计浮点部件,流水线达8 8级级49 独立的指令和数据独立的指令和数据CacheCache 分支预测分支预测采用采用6464位外部数据总线。位外部数据总线。502.5.2 Pentium2.5.2 Pentium微处理器的程序设计微处理器的程序设计模型模型1. 1. 基本结构寄存器基本结构寄存器EAXAX(AH AL)累加器累加器EBXBX(BH BL)基址寄存器基址寄存器ECXCX(CH CL

19、)计数器计数器EDXDX(DH DL)数据寄存器数据寄存器ESPSP堆栈指针堆栈指针EBPBP基址指针基址指针EDIDI目的变址寄存器目的变址寄存器ESISI源变址寄存器源变址寄存器512. 2. 指令指针和标志寄存器指令指针和标志寄存器指令指针指令指针EIPEIP:3232位位标志寄存器标志寄存器FLAGSFLAGS:3232位,与位,与80868086相比,相比,增加了如下标志:增加了如下标志:lIOPL(IOPL(输入输入/ /输出特权级标志输出特权级标志) ) :2 2位位lNT(NT(任务嵌套标志任务嵌套标志) ) :1 1位位52lRF(RF(恢复标志恢复标志) ) :1 1位,调

20、试用位,调试用lVM(VM(虚拟方式标志虚拟方式标志) ) :1 1位,为位,为1 1表表示工作于保护方式下示工作于保护方式下3. 3. 段寄存器段寄存器6 6个个3232位段寄存器:位段寄存器:CSCS、DSDS、ESES、SSSS、FSFS、GSGS534. 4. 系统级寄存器系统级寄存器全局描述符表寄存器全局描述符表寄存器GDTRGDTR GDTR GDTR是是4848位寄存器,其中高位寄存器,其中高3232位位是全局描述符表(是全局描述符表(GDTGDT)的线性基地)的线性基地址,低址,低1616位是界限全局描述符表位是界限全局描述符表的大小。的大小。局部描述符表寄存器局部描述符表寄存

21、器LDTRLDTR 存放局部描述符表(存放局部描述符表(LDTLDT)的线性)的线性基地址、界限、描述符表的属性等。基地址、界限、描述符表的属性等。54中断描述符表寄存器中断描述符表寄存器IDTRIDTR任务状态寄存器任务状态寄存器TRTR 存放当前正在执行的任务的线性存放当前正在执行的任务的线性基地址、界限、描述符属性和基地址、界限、描述符属性和1616位位的选择符。的选择符。552.Pentium2.Pentium的寄存器和的寄存器和I/OI/O地址空间地址空间(1)(1)存储地址空间存储地址空间 为了管理方便,存储器空间可为了管理方便,存储器空间可以分为若干个段,每个段再分为若以分为若干

22、个段,每个段再分为若干个页,段的大小是可变的,而页干个页,段的大小是可变的,而页的大小是固定的。的大小是固定的。56 分段对于按逻辑模块组织存储分段对于按逻辑模块组织存储器是很有用的。器是很有用的。 分页对于系统物理存储器的管分页对于系统物理存储器的管理是是很有用的。理是是很有用的。57虚拟空间:虚拟空间:又称逻辑空间,是应用又称逻辑空间,是应用程序员编写程序的空间,其相应的程序员编写程序的空间,其相应的地址为虚拟地址或逻辑地址。地址为虚拟地址或逻辑地址。物理空间:物理空间:也称主存空间,是计算也称主存空间,是计算机主存储器的实际空间。相应的地机主存储器的实际空间。相应的地址称为物理地址。址称

23、为物理地址。58逻辑地址:逻辑地址:即虚拟地址,由选择子即虚拟地址,由选择子(是段寄存器的内容)和一个偏移(是段寄存器的内容)和一个偏移量组成。量组成。(2 2)输入)输入/ /输出输出(I/O)(I/O)地址空间地址空间 80X86 80X86的的I/OI/O地址空间为地址空间为2 21616,80X86,80X86采用采用I/OI/O独立编址方式,由独立编址方式,由 引脚引脚区别是访问内存或是区别是访问内存或是I/OI/O空间。空间。IOM/592.5.4 Pentium2.5.4 Pentium微处理器的工作模式微处理器的工作模式有有3 3种工作模式:种工作模式: 实地址模式实地址模式

24、保护模式保护模式 虚拟虚拟80868086模式。模式。60 REALMODEPROTECTEDMODEVIRTUAL8086MODESYSTEMMANAGEMENTMODEPOWER-ON / RESET611.1.实地址模式实地址模式与与80868086兼容。兼容。实地址模式的特点:实地址模式的特点:寻址机构、存储器管理、中断管理与寻址机构、存储器管理、中断管理与80868086一致。一致。操作数的默认长度是操作数的默认长度是1616位,但可以访位,但可以访问问3232位寄存器组。位寄存器组。62主存最大寻址能力主存最大寻址能力1M1M,采用分段管理,采用分段管理内存。内存。2.保护虚拟地址

25、模式 在保护模式下在保护模式下 ,存储器采用分段和分页管,存储器采用分段和分页管理、支持多任务、并对任务进行保护。理、支持多任务、并对任务进行保护。6364 Any Pentium CPU starts up in Real Mode While in real mode, its behavior is like an 8086 (i.e., any program can do anything it wants, as the CPUs protection mechanisms are disabled) But software can enter protected mode (o

26、n a 80286 or higher) using a special instruction to modify a bit within a processor control-register Once in protected mode, the segment-sizes can be adjusted, accesses to physical memory (or to peripheral devices) can be restricted, and tasks can be isolated from interfering with one another 65Enab

27、ling ProtectionNEETTSEMMPPE 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 080286 Machine Status WordPE (Protection Enable) 0=no, 1=yesSMSW AXOR AX, #1LMSW AXCode-fragment that enables protection66 A boot loader is a small program that is resident in the starting sector of a disk (or tape or other non-volatile

28、 storage medium) After testing and initializing the machines essential hardware devices, the startup program in the ROM-BIOS firmware will read the boot loader into memory, at an assigned location, and then jump there67PC ROM-BIOS BOOT_LOCNBOOT_LOCN0 x00007C000 x00007E00512 bytesROM-BIOSVRAMIVT and

29、BDA8086 memory-mapRAMVendors Firmware Video Display MemoryNo installed memoryVolatile Program Memory1-MB(1)特权级 在8086的系统中,由于系统程序和用户程序是放在一起的,同属一个级别,因此用户程序运行中就有可能破坏系统程序。这是早期80X86CPU一个重要的缺陷。自从80286以后,逐步发展并完善了保护模式的功能,使系统的特权级为四级,如图所示。 6869 四级特权保护结构示意图70IndexTIRPLIndexIndex:1313位,指描述符在描述符表位,指描述符在描述符表(GDT(G

30、DT或或LDT)LDT)中的顺序号。中的顺序号。TITI:1 1位,位,TI=0TI=0指示从指示从GDTGDT中读出描述中读出描述符,符,TI=1TI=1指示从指示从LDTLDT中读出描述符。中读出描述符。(2)描述符)描述符 1 ).选择符在保护方式下,段寄存器中存放的不是段地址,而是段在保护方式下,段寄存器中存放的不是段地址,而是段选择符,段选择符的格式如下选择符,段选择符的格式如下RPLRPL:请求特权级,:请求特权级,2 2位。位。2). 段描述符 从80386开始,段描述符均由8个字节(64位)构成,其格式如图所示。 71 段描述符的格式 72在保护方式下,段信息由保存在段描述在保护方式下,段信息由保存在段描述符中。段描述符有符中。段描述符有3 3类:存储段描述符、类:存储段描述符、系统段描述符和门描述符。系统段描述符和门描述符。73(70)(158)(70)(158)(2316)PDPLDT=1TYPEAGD0AVL(1916)(3124)存储段描述符格式存储段描述符格式74段界限:规定段的大小,与段界限:规定段的大小,与G G位位共同确定本段的大小。共同确定本段的大小。段基址:段基址:3232位。位。段属性:段属性:l P P:存在位,为:存在位,为1 1表示

温馨提示

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

评论

0/150

提交评论