微机原理与接口技术-第2章-微处理器课件_第1页
微机原理与接口技术-第2章-微处理器课件_第2页
微机原理与接口技术-第2章-微处理器课件_第3页
微机原理与接口技术-第2章-微处理器课件_第4页
微机原理与接口技术-第2章-微处理器课件_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

第2章微处理器2.1微处理器概述2.28086/8088微处理器结构2.38086/8088微处理器工作模式及外部结构2.48086/8088微处理器的基本时序2.5

80x86至Pentium系列微处理技术概述2.6嵌入式系统和嵌入式处理器概述本章目标2.1微处理器概述计算机运算器控制器存储器输入设备输出设备微处理器集成在一个芯片2.1.1微处理器的基本概念微计算机单片机单板机通用微机微处理器有各种型号:Intel公司的8080、8086/8088、80286/386/486、PentiumZilog公司的Z80、Z8000Motorola公司的6800、6809、68000等2.1.1微处理器的基本概念又称微控制器,属于嵌入式微处理器微机早期的一种简化形式2.1.2微处理器基本结构和功能不同型号的微处理器有不同的内部结构,但在功能结构上具有相似性和共通性微处理器内部寄存器阵列算术逻辑运算单元控制器浮点运算部件及高速缓冲存储器cache

通用寄存器和专用寄存器指令寄存器、指令译码器和各种定时与控制信号的产生电路现代的微处理器中还集成了1971年第一块微处理器问世,Intel4040Intel4040ROM、RAM、I/O芯片MCS-4Intel8008ROM、RAM、I/O芯片MCS-81972年第一代微处理器2.1.3微处理器及发展过程类型时期代表产品重要特征第一代1971-1973Intel40044040字长4位集成度2300管/片时钟频率1MHz第二代1973—1977年Intel8080/85ZilogZ80Motorola6800RockweH6502字长8位地址线16根集成度1万管/片时钟频率2~4MHz第三代1978—1980年Intel8086/88Motorola68000字长16位地址线20根集成度2万~6万管/片时钟频率4~8MHz1981—1984年Intel80286Motorola68010字长16位地址线24根集成度约13万管/片时钟频率6~20MHz类型时期代表产品重要特征第四代

1985—1989年Intel80386、Motorola68020字长32位、地址线32根集成度15万~50万管/片、时钟频率16~40MHz1989—1992年Intel、AMD、Cyrix的80486、IBMPowerPC601字长32位、地址线32根、集成度120万管/片、时钟频率33~100MHz1993—1994年Intel的Pentium、AMD、Cyrix的5X86及K5、M系列、IBMPowerPC604、DECAlpha21064集成度350万管/片、时钟频率50~166MHz1995年之后PentiumPro、PentiumMMX等字长都是32位、数据通道64位、地址线32根2005年至今Pentium8XX处理器、9XX处理器多核2.28086/8088微处理器结构8088/8086CPU寄存器组算术逻辑单元ALU标志寄存器FR暂存器执行单元EU(ExecutionUnit)总线接口单元BIU(BusInterfaceUnit)完成取指令和存取数据操作负责分析指令和执行指令内部控制逻辑段寄存器(CS、SS、DS、ES)地址加法器指令队列输入/输出控制电路指令指针寄存器IP地址总线20位控制总线数据总线16

8088/8086的内部结构图AHBHCHDHALBLCLDLSPBPSIDICSDSSSESIP内部暂存寄存器暂存寄存器FREU控制系统123456总线控制逻辑数据总线16ALU∑通用寄存器8088指令队列8088/8086外部总线数据总线地址总线20位执行部件EU总线接口部件BIU16位控制总线EU控制系统ALUEU控制系统ALU数据总线16地址总线20位控制总线AXBXCXDX150AXBXCXDX①通用寄存器AHALBHBLCHCLDHDL87累加器基地址寄存器计数器数据寄存器2.2.1执行部件(ExecutionUnit)堆栈指针寄存器基地址寄存器源变址寄存器目的变址寄存器SPBPSIDI②专用寄存器1、算术逻辑单元ALU4、EU控制器2、寄存器组状态标志寄存器FR1503、标志寄存器标志寄存器的安排×××OFDFIFTFSFZF×AF×PF××CF1511109876543210进位标志奇偶标志半进位标志零标志符号标志中断标志单步标志溢出标志方向标志控制标志状态标志FR寄存器2.2.2总线接口部件(BusInterfaceUnit)CSDSSSES代码段寄存器数据段寄存器堆栈段寄存器附加段寄存器段寄存器IP指令指针寄存器20位的地址加法器BIU总线控制逻辑1234566个字节的指令队列80884个字节2.2.3BIU与EU的动作协调原则BIU和EU是并行工作的,按流水线技术原则管理4.执行转移、调用和返回指令时,指令队列中的原有内容自动消除

BIU往指令队列中装入另一程序段中的指令8088中一个当8086指令队列中有两个空字节时,BIU自动把指令取到队列中2.EU从指令队列取指,执行。执行过程中如果要访问存储器或I/O,

而此时,BIU正在取指,完成取指后,响应EU的总线请求。3.指令队列已满,EU又没有总线访问,BIU进入空闲状态2.2.4存储器组织20条地址线→寻址能力地址范围220=1M字节→00000~FFFFFH190物理地址加法器段基址偏移地址1501500000偏移地址段首地址00000H42320H42386H…乘以16物理地址例:已知IP=66H,CS=4232HCS×16=42320H段首址IP=66H偏移地址下一条指令物理地址采用段寄存器的优点解决了16位寄存器如何访问大于64KB内存空间的问题可以实现程序的重定位物理地址:1MB存储区域中的实际地址(20位的地址)逻辑地址:程序中出现的地址,由段地址和段内偏移量组成(注:段地址和段偏移量都是16位的二进制数)存储器管理就是将程序中的逻辑地址转换成物理地址的结构物理地址=段地址×16+偏移量*同一物理地址可以有不同的段地址和偏移量对8086/8088而言特殊的存储区域中断向量区:00000H~003FFH共1KB

用以存放256种中断类型的中断向量每个中断向量占用4字节单色显示器显示缓冲区:

B0000H~B0F9FH约25×80×24000字节,存放文本方式下所显示字符的ASCII码及属性码;彩色显示器的显示缓冲区:

B8000H~BBF3FH约16KB,存放图形方式下屏幕显示像素的代码。2.38086/8088微处理器

的工作模式及外部结构工作模式最小工作模式:所有的总线控制信号都直接由8088/8086产生最大工作模式:8088/8086要通过总线控制器

8288来形成各种总线周期,控制信号由8288供给MN/MX=VCCMN/MX=GND单CPU系统多CPU系统2.3.1指令周期、总线周期、时钟周期取指令译码执行每条指令一系列控制信号指令周期:执行一条指令所需要的时间总线周期:CPU从存储器或I/O端口存取一次所需要的时间(BusCycle)访问一次总线的时间分析执行每一条指令的时间不同2.3.1指令周期、总线周期、时钟周期是微机系统工作的最小时间单位时钟周期:系统完成任何操作所需要的时间,均是时钟周期的整数倍。取决于系统的主频率T状态CLKT1T2T3T4总线周期8088CPU的主频率为5MHz,时钟周期(一个T状态)为200ns基本总线周期存储器读或写输入输出的读或写中断响应一个最基本的总线周期通常包括4个T状态2.3.28086/8088CPU的引脚信号和功能8080/80858位16位64KB408088/808616位20位1MB40数据线地址线直接寻址引脚数双功能引脚的功能转换分时复用同一引脚在一个总线周期的不同时钟周期内其功能不同根据工作模式定义引脚的功能1.两种模式下,名称和功能相同的32个引脚(2)

AD15~AD0地址/数据复用总线,双向,三态(8088中A15~A8不复用,输出,三态)(3)A19/S6~A16/S3,地址/状态线复用,输出,三态S4S3当前段寄存器00使用附加段寄存器01使用堆栈段寄存器10使用代码段寄存器11使用数据段寄存器(1)Vcc、GND单一电源、两个地(4)

NMI,非屏蔽中断,输入(6)CLK,时钟信号,输入(7)

RESET,复位信号,输入(至少保持4个时钟周期的高电平)CPU立即停止操作,清FR,DS,ES,SS、IP及指令队列。同时,置CS为FFFFH。当RESET变为低电平时,CPU从FFFF0H单元开始启动。牢记(5)

RD,读信号,输出,三态,低电平有效

INTR,可屏蔽中断请求信号,输入1.两种模式下,名称和功能相同的32个引脚(8)

READY,准备好信号,输入=VCC最小工作方式(单CPU方式)=GND最大工作方式(多CPU方式)MN/MXMN/MX(10)MN/MX,最小/最大模式控制引脚,输入(9)TEST,测试信号,输入,低电平有效(11)

BHE/S7(8086)高8位数据线允许/状态信息复用引脚,输出1.两种模式下,名称和功能相同的32个引脚

8086的存储器结构奇地址存储器偶地址存储器A0A19~A1D7~D0D15~D8(34)512K*8512K*8D7~D0D7~D000005H00004H00003H00002H00001H00000H…一个字BHEA000字操作

01奇地址高位字节

10偶地址低位字节BHESELSEL2.最小工作模式的24~31引脚(1)INTA(QS1)中断响应,输出,三态,低电平有效(3)DEN(S0)数据允许信号,输出,三态,低电平有效括号中是最大工作模式下的引脚功能常用的地址锁存器有8282/8283、74LS373(2)ALE(QS0)地址锁存允许信号,输出,三态,高电平(4)DT/R(S1)数据发送/接收控制,输出,三态(6)WR(LOCK)写信号,输出,三态,低电平有效(7)HOLD(RQ/GT0)请求占用总线信号,输入,高电平有效(总线保持请求信号)(8)HLDA(RQ/GT1)同意让出总线信号,输出,高电平有效(总线保持响应信号)(5)M/IO(S2)存储器/IO控制,输出,三态8088M/IO2.最小工作模式的24~31引脚QS1(24)QS0(25)性能00无操作01取指令队列中指令操作码的第一字节10队列空11取队列中的其它字节(1)

QS1和QS2指令队列状态信号,输出(ALEINTA)3.最大工作模式的24~31引脚S2(28)S1(27)S0(26)性能000中断响应001读I/O端口010写I/O端口011暂停100取指101读存储器110写存储器111无源(2)

总线周期状态信号,输出,三态3.最大工作模式的24~31引脚(3)

LOCK总线封锁信号,输出,三态,低电平有效(4)RQ/GT1、RQ/GT0双向总线请求/允许信号,双向3.最大工作模式的24~31引脚2.3.38086在最小工作模式和最大工作模式下的典型配置收发器8286(二片)8284A地址锁存器8282(三片)控制总线控制总线+5VSTBOET数据总线地址总线BHEREADYRESETCLKMN/MXRESETALEREADYBHEA19~A16AD15~AD08086

DENDT/RM/IOWRRDHOLDHLDAINTRINTA74LS373替代74LS245替代20位地址总线数据总线控制总线1.最小模式下的典型配置8282AD0AD1AD2AD3AD4AD5AD6AD7AD8AD9AD15A16A17A18A19BHE

数据…DI0DO0DI1DO1DI2DO2DI3DO3DI4DO4DI5DO5DI6DO6DI7DO7DI0DO0DI1DO1DI7DO7ALESTBSTBSTB…地址808682828282OEOE

8282锁存器与8086的连接8286T

8286收发器和8088的连接8088数据总线AD0AD1AD2AD3AD4AD5AD6AD7A0A1A2A3A4A5A6A7B0B1B2B3B4B5B6B7接地址锁存器OEOETDENDT/R011总线控制器8288状态译码器控制电路命令信号发生器控制信号发生器MRDCMWTCAMWTCIORCAIOWCINTAIOWCDT/RDENMCE/PDENALES2S1S0CLKAENCENIOB状态信号控制输入总线命令信号总线控制信号相当于RD和M/IO的组合相当于WR和M/IO的组合超前写信号状态信号控制输入2.最大模式下的典型配置8284ACLK8282锁存器(3个)8286收发器(2个)8288总线控制器8259A及有关电路地址总线数据总线控制总线ReadyResetCLKRESETREADYMN/MXBHEA19~A16S0S1S2OETRQ/GT1RQ/GT0INTRAD15~AD08086中断请求INTABHEOE2.48086/8088微处理器的基本时序CPU的基本时序最小模式下的典型时序最大模式下的典型时序时序:是计算机操作运行的时间顺序2.4.1最小模式下的典型时序T1T2T3T4CLKALE1.最小工作模式下的总线读周期M/IOA19~A16S6~S3BHERDDT/RDENAD15~AD0高=M地址地址低=IO输出输出S6~S3数据输入如果是8088有哪些不同?数据TwCLKALEM/IOA19~A16S6~S3RDDT/RDENAD15~AD0具有等待状态的总线读操作BHET1高=M地址地址READY低=IO输出输出T2S6~S3T3输入T42.最小模式下的总线写操作(8086)T1T2T3T4CLKALEM/IOA19~A16S6~S3BHEWRDT/RDENAD15~AD0数据S6~S3高=M地址地址输出读操作和写操作有哪些不同?***输出低=IO输出3.中断响应周期T1T2T3T4T1T1T1T1T2T3T4三个空闲状态LCKALEAD7~AD0INTA中断类型INTA4.系统的复位和启动操作CLK无作用状态浮空三态门输出信号RESET输入8086/8088的启动和复位信号内部RESET①CPU立即停止操作,清FR,DS,ES,SS、IP及指令队列。同时,置CS为FFFFH。当RESET变为低电平时,CPU从FFFF0H单元开始启动。进入内部RESET后5.总线占用周期≈≈≈≈CLKHOLDHLDA所有三态总线8086/8088总线请求/响应时序图T4或T1

2.4.2最大模式下的典型时序T1T2T3T4CLKALES2S1S0A19~A16S6~S3DT/RDENAD15~AD0BHES2S1S0地址地址输出输出S6~S3数据输入1.总线周期MRDC或IORDC8288产生S2S1S0=111MRDC或IORC2.总线写周期T1T2T3T4CLKALES2S1S0A19~A16S6~S3DT/RDENAD15~AD0BHES2S1S0=110地址地址输出输出S6~S3数据输入MWTC或IOWC8288产生S2S1S0=111MWTC或IOWCAMWC***

指令指针控制ROM控制部件地址生成(U流水线)地址生成(V流水线)ALU(U流水线)ALU(V流水线)整数寄存器组桶形移位器8K字节数据高速缓存TLB浮点部件控制寄存器组加法除法乘法总线部件

页面部件预取缓冲器指令译码器8K字节代码高速缓存TLB

分支目标缓冲器

分支检验与目标地址

预取地址控制64位数据总线32位地址总线32位地址总线64位数据总线256323232323232Pentium内部结构2.58086至Pentium系列微处理技术概述2.5.2Pentium微处理器的特点(1)Pentium由U和V两条指令流水线构成了超标量流水线结构(2)重新设计的浮点部件

(3)独立的指令和数据Cache(4)分支预测(5)采用64位外部数据总线2.5.3Pentium微处理器的程序设计模型

程序设计模型,就是程序员编程时所需要的计算机模型。GSFSSSESDSCSFLAGSIPDISIBPSPDLCLBLALDHCHBHAHEDXECXEBXEAXEDIESIEBPESPEFLAGSEIP31150DXCXBXAX图2-17Pentium微处理器的寄存器结构通用寄存器32位通用寄存器是8086的16位通用寄存器的扩展,命名为EAX、EBX、ECX、EDX、ESI、EDI、EBP、ESP。每一个寄存器都可以存放数据或地址,支持8、16、32位的数据操作及1~32位的位操作数,也支持16位和32位的地址操作数。指令指针寄存器EIP(InstructionPointer)EIP是一个专用寄存器,用于寻址当前需要取出的指令字节。当CPU从内存中取出一个指令字节后,EIP就自动加1,指向下一指令字节。当微处理器工作在实模式下时,这个寄存器为IP(16位);当80386及更高型号的微处理器工作于保护模式下时,则是EIP(32位)。程序员不能对EIP/IP进行存取操作。程序中的转移指令、返回指令以及中断处理能对EIP/IP进行操作。任务嵌套标志恢复标志虚拟方式标志地址对齐检查标志虚拟中断标志虚拟中断暂挂标志输入/输出特权级标志CPU标识标志标志寄存器IDVIPVIFACVMRFNTIOPODAP3121201918171615141312111098765432101IOP0ITSZPentium/PentiumII80486SX/80486DX80386DX802868086/8088图2-18

80x86/Pentium全系列微处理器的标志寄存器段寄存器当微处理器工作在实地址方式时,这些段寄存器提供的内容就是16位的段地址。与8086/8088的段地址寄存器含义相同。当微处理器工作在保护方式时,CS中的选择子将选择一个描述代码存储区起始地址和长度等信息的描述符。这时段寄存器存放的是段选择子。系统级寄存器系统级寄存器:控制寄存器、系统地址寄存器和调试测试寄存器系统地址寄存器又称为保护方式寄存器

①GDTR。GDTR是48位寄存器,其中高32位是全局描述符表(GDT)的线性基地址,低16位是界限——全局描述符表的尺寸。②IDTR。IDTR也是48位寄存器,其中高32位是中断描述符表(IDT)的线性基地址,低16位是界限——中断描述符表的尺寸。③LDTR。该寄存器用于存放局部描述符表(LDT)的线性基地址、界限、描述符的属性和16位的选择符。④TR。该寄存器用于存放当前正在执行的任务的线性基地址、界限、描述符的属性和16位的选择符。Pentium的存储器和I/O地址空间(1)存储地址空间Pentium微处理器定义了三个地址空间,分别是虚拟空间、线性空间和物理空间。虚拟空间又称逻辑空间,是应用程序员编写程序的空间,其相应的地址称为虚拟地址或逻辑地址。物理空间也称主存空间,是计算机中主存储器的实际空间,相应的地址称为物理地址或主存地址。Pentium微处理器能访问的物理空间可达232B(4GB)。逻辑地址(即虚拟地址)由一个选择子和一个偏移量组成。选择子是段寄存器的内容,偏移量与所有寻址分量(基地址、变址、位移)相加形成有效地址。输入/输出(I/O)地址空间Pentium微处理器有两个独立的物理空间:存储空间、I/O空间

2.5.4Pentium微处理器的工作模式实地址模式(RealAddressMode)保护虚拟地址模式(ProtectedVirtualAddressMode)

虚拟8086模式

实地址模式(RealAddressMode)(1)实地址模式的主要特点寻址机构、存储器管理和中断机构均与8086一致。操作数的默认长度是16位,但允许访问32位寄存器组;在使用32位寄存器组时,指令中要加上前缀,以表示越权存取。不用虚拟地址的概念,主存储器的容量最大为1MB;采用分段方式,每个段大小固定为64KB。在实地址模式下,存储器中保留两个固定区域,一个是初始化区域,另一个是中断向量区域。前者地址为FFFF0H~FFFFFH,后者地址为00000H~003FFH。(2)实地址模式下的存储空间和存储器寻址只使用地址线的低20位,分页功能是不允许的,线性地址就是物理地址。1MB的内存单元的物理地址按照00000H~FFFFFH来进行编址。存储器寻址与8086/8088一致,同样采用“段偏移”的寻址模式。(3)实地址模式下保留的地址空间地址0000:0000H~0000:03FFH是中断向量区,每一中断向量占用4个字节;地址FFFF:FFF0H~FFFF:FFFFH为系统初始化区,当加电或复位时,物理地址自动置为FFFF0H。实地址模式(RealAddressMode)保护虚拟地址模式①存储器用虚拟地址空间、线性地址空间和物理地址空间三种方式来进行描述。在保护模式下,寻址机构不同于8086,需要通过一种称为描述符表的数据结构来实现对内存单元的访问。②在保护模式下,借助于分段分页部件的功能将磁盘等存储设备有效映射到内存,使逻辑地址空间大大超过实际的物理地址空间,这样,使可以使用的主存储器容量很大。③既能进行16位运算,也能进行32位运算。特点:保护虚拟地址模式保护模式是支持多任务的工作模式。它提供了一系列的保护机制,如任务地址空间的隔离,设置特权级(0~3共4个特权级),设置特权指令,进行访问权限(如只读、只执行)及段限检查等。80386以上的微处理器在保护模式下可以访问4G字节的物理存储空间,段的长度在启动分页功能时是4G字节,不启动分页功能时是1M字节,分页功能是可选的。在这种方式下,可以引入虚拟存储器的概念,以扩充编程者所使用的地址空间。虚拟8086模式虚拟8086模式又称“V86模式”。它是既有保护功能又能执行8086代码的工作模式,是一种动态工作模式。在这种工作模式下,处理器能够迅速、反复进行V86模式和保护模式之间的切换,从保护模式进入V86模式执行8086程序,然后离开V86模式,进入保护模式继续执行原来的保护模式程序。

保护模式实模式虚拟8086模式复位复位复位复位PE=1PE=0作业切换中断返回中断、异常图注:(1)PE——保护模式允许,是80x86控制寄存器CR0的一位(2)异常——80286以上的处理器中,称“内部中断”为异常(exception)三种工作模式的转换2.6嵌

温馨提示

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

评论

0/150

提交评论