微机原理课件第2章2_第1页
微机原理课件第2章2_第2页
微机原理课件第2章2_第3页
微机原理课件第2章2_第4页
微机原理课件第2章2_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

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

文档简介

1微处理器与总线8088/8086微处理器25.

8088/8086CPU的特点采用并行流水线工作方式

——通过设置指令预取队列实现对内存空间实行分段管理

——

将内存分为4个段并设置地址段寄存器,以实现对1MB空间的寻址支持多处理器系统CPU内部结构存储器寻址部分工作模式引脚

CPU引脚是系统总线的基本信号,除电源和地外可分成三类信号:16位数据线:D0~D720位地址线:A0~A19控制线:ALE、IO/M*、WR*、RD*、READYINTR、INTA*、NMI,HOLD、HLDARESET、CLK48088/8086的内部结构2.1.18086/8088微处理器结构EUBIUALU通用寄存器EU控制器状态标志寄存器地址加法器专用寄存器指令队列缓冲器总线控制逻辑算术逻辑运算;按寻址方式给出所需操作对象的16位(偏移地址)。存放操作后的状态特征和设置的控制标志。控制指令执行的电路。取指令、译码等。存放BIU从存储器中预取的指令。由段寄存器提供的16位信息(左移四位)加上EU或IP提供的16位信息形成20位物理地址。1、8086/8088的编程结构2.一部分为EU(ExecutionUnit)。专门负责分析指令与执行指令。它不与系统BUS打交道。

8086CPU按功能可分为两大部分:1.一部分为BIU(BUSInterfaceUnit);

专门负责取指令和存取操作数。它与

BUS打交道。BIU的功能:是8086CPU与存储器或I/O设备之间的接口部件,负责全部引脚的操作。

①BIU负责产生指令地址,根据指令地址从存储器取出指令,送到指令队列中排队或直接送给EU去执行;

②BIU也负责从存储器的指定单元或外设端口中取出指令规定的操作数传送给EU,或者把EU的操作结果传送到指定的存储单元或外设端口中。总线接口单元BIUBIU内部设有4个16位的段寄存器:代码段寄存器CS(CodeSegment)数据段寄存器DS(DataSegment)堆栈段寄存器SS(StakeSegment)附加段寄存器ES(ExtraSegment)总线接口单元BIUBIU内部设有一个16位的指令指针寄存器IP(InstructionPointer)6字节指令队列缓冲器20位地址加法器总线控制电路总线接口单元BIU2.1.28086微处理的内部结构执行单元(EU)总线接口单元(BIU)①算术逻辑单元(ALU)②EU控制电路③寄存器组2.EU2.执行单元EUEU的功能:是从BIU的指令队列中取出指令代码,然后执行指令所规定的全部功能。在执行指令的过程中,如果需要向存储器或I/O传送数据,则EU向BIU发出访问存储器或I/O的命令,并提供访问的地址和数据。CPU取指过程执行单元(EU)总线接口单元(BIU)存储器DBCBAB

CPU向内存写数过程执行单元(EU)总线接口单元(BIU)存储器DBCBAB

EU取指、译码过程执行单元(EU)总线接口单元(BIU)存储器DBCBAB…

取指令与执行指令操作是并行的,提高了CPU的利用率,这种重叠操作技术,提高了整个系统的运行速度。BIU与外部总线打交道,负责取指令、读写操作数、地址转换与总线控制;EU负责指令译码与执行指令的工作。161.组成8088/8086内部由两部分组成:

执行单元(EU)总线接口单元(BIU)172.执行单元运算器8个通用寄存器1个标志寄存器

EU部分控制电路教材第43页图2-6图18执行单元功能指令译码指令执行暂存中间运算结果保存运算结果特征指令的执行在标志寄存器FLAGS中在ALU中完成在通用寄存器中193.总线接口单元功能:从内存中取指令到指令预取队列指令预取队列是并行流水线工作的基础负责与内存或输入/输出接口之间的数据传送在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,并立即传给执行单元执行。20结论指令预取队列的存在使EU和BIU两个部分可同时进行工作,从而:提高了CPU的效率;降低了对存储器存取速度的要求21四、内部寄存器22内部寄存器的类型含14个16位寄存器,按功能可分为三类8个通用寄存器4个段寄存器2个控制寄存器深入理解:每个寄存器中数据的含义

寄存器阵列大致分为以下四组:存放待处理数据的寄存器;存放地址码的寄存器;存放控制信息的寄存器;起数据或地址缓冲器作用的寄存器。四、寄存器阵列(RegisterArray)

在CPU内部,有一个临时存放地址和数据的寄存器阵列,是CPU内部的高速存储单元。这个阵列因CPU的不同而不同,有的称寄存器堆,寄存器多少有差别,但其功能相似。2.寄存器结构8086CPU内部寄存器DLDHCLCHBLBHALAH通用寄存器AXBXCXDXSPBPSIDI数据寄存器CSDSSSESIPFLAG变址寄存器指针寄存器堆栈指针基数指针源变址目的变址指令指针状态标志代码段数据段堆栈段附加段段寄存器控制寄存器251.通用寄存器数据寄存器(AX,BX,CX,DX)地址指针寄存器(SP,BP)变址寄存器(SI,DI)26数据寄存器8088/8086含4个16位数据寄存器,它们又可分为8个8位寄存器,即:AXBXCXDXAH,ALCH,CLBH,BLDH,DL27数据寄存器特有的习惯用法AX:累加器。所有I/O指令都通过AX与接口传送信息,中间运算结果也多放于AX中;BX:基址寄存器。在间接寻址中用于存放基地址;CX:计数寄存器。用于在循环或串操作指令中存放计数值;DX:数据寄存器。在间接寻址的I/O指令中存放

I/O端口地址;在32位乘除法运算时,存放高16位数。28地址指针寄存器SP:堆栈指针寄存器,其内容为栈顶的偏移地址;BP:基址指针寄存器,常用于在访问内存时存放内存单元的偏移地址。29BX与BP在应用上的区别作为通用寄存器,二者均可用于存放数据;作为基址寄存器,用BX表示所寻找的数据在数据段;用BP则表示数据在堆栈段。30变址寄存器SI:源变址寄存器DI:目标变址寄存器变址寄存器在指令中常用于存放数据在内存中的地址。1514131211109876543210OFDFIFTFSFZFAFPFCF状态标志方向标志中断标志跟踪标志TraceFlag控制标志进位标志奇偶标志半进位标志零标志符号标志溢出标志标志寄存器——状态标志32状态标志位(1)CF(CarryFlag)进位标志位。加(减)法运算时,若最高位有进(借)位则CF=1PF(ParityFlag)奇偶标志位。运算结果的低8位中“1”的个数为偶数时PF=lAF(AuxiliaryCarryFlag)辅助进位标志位。加(减)操作中,若Bit3向Bit4有进位(借位),AF=133状态标志位(2)ZF(ZeroFlag)零标志位。当运算结果为零时ZF=1SF(SignFlag)符号标志位。当运算结果的最高位为1时,SF=lOF(OverflowFlag)溢出标志位。当算术运算的结果超出了有符号数的可表达范围时,OF=l

34状态标志位例给出以下运算结果及运算后各状态标志位的状态:10110110+1111010010110110

+11110100101010101CF=OF=AF=PF=SF=ZF=11101035控制标志位TF(TrapFlag)陷井标志位,也叫跟踪标志位。TF=1时,使CPU处于单步执行指令的工作方式。IF(InterruptEnableFlag)中断允许标志位。IF=1使CPU可以响应可屏蔽中断请求。DF(DirectionFlag)方向标志位。在数据串操作时确定操作的方向。363.段寄存器作用用于存放相应逻辑段的段基地址8086/8088内存中逻辑段的数量最多为64K个8086/8088内存中逻辑段的类型代码段数据段附加段堆栈段存放指令代码存放操作的数据存放操作的数据存放暂时不用但需保存的数据。为什么叫逻辑段?每个段寄存器中存放的内容=?37段寄存器CS代码段寄存器,存放代码段的段基地址。DS数据段寄存器,存放数据段的段基地址。ES附加段寄存器,存放数据段的段基地址。SS堆栈段寄存器,存放堆栈段的段基地址段寄存器的值表明相应逻辑段在内存中的位置段式地址管理“段基址”由段寄存器CS、DS、SS和ES提供“偏移量”由BX、BP、IP、SP、SI、DI提供……段的起始地址偏移量要访问的单元段高低存储器中的数据存放规则存储单元中可以存放的内容包括:数据、地址指针(偏移地址和段地址)、程序代码。字节数据的存储:存储在1个存储单元中。字数据的存储:占用2个连续的字节单元,低字节在较低地址单元中,高字节在较高地址单元中。字的地址为低字节地址(较低的地址)。字地址为偶数——规则存放的字。字符串的存储:按字符顺序依次连续存放,整个串的地址为存放第一个字符的最低地址。地址指针(双字数据)的存储:地址偏移量存放在低地址字单元,段基址在较高地址单元。2.4.2存储器分段分段原因:8086有20根地址线,但其内部可以表示的地址最多只能是16位。为了能寻址1MB空间,8086对存储器进行逻辑分段,每个段最大为64KB,最小为16B(此时最多64K个段)。

连续逻辑段A段B段C段D段E段00000H10000H20000H30000H40000H……实际(物理)存储器分离完全重叠部分重叠•8086系统存储器分段示意图

存储器的逻辑地址和物理地址加法器8086物理地址PA的形成,其中的16位偏移量也称为有效地址EA(出现在指令中)段寄存器15016位偏移量01520位物理地址019段基址1123H偏移量13H段基址1124H偏移量03H物理地址PA与逻辑地址LA的对应存储单元物理地址

11230H11231H11232H……1123FH11240H11241H11242H

11243H0000存储器段操作

四个段寄存器(CS、DS、SS、ES)指示四个现行段的段地址。段和段之间可以相互分离、连接、部分重叠或完全重叠。存储器操作默认段基址可使用段基址偏移地址取指令CS—IP堆栈操作SS—SP变量DSCS、ES、SS有效地址*源数据串DSCS、ES、SSSI目的数据串ES—DI堆栈中的变量SS—BP*由指令给的出寻址方式所指定的地址逻辑地址源

CS0000

IP代码段

DS或ES0000

SI、DI或BX

SS0000

SP或BP数据段堆栈段存储器段寄存器和偏移地址寄存器组合关系取指令堆栈操作取操作数2.4.38086系统堆栈操作堆栈:后进先出的的一段内存栈顶:永远由地址指针(SS:SP)指示栈底:最初始的地址指针(SS:SP)指示处堆栈深度:最大64KB堆栈的作用:调用子程序(或转向中断服务程序)时,把断点及有关的寄存器、标志位及时正确地保存下来,并保证逐次正确返回堆栈操作指令:入栈指令PUSH与出栈指令POP入/出栈操作数:是一个字,而不是一个字节子程序调用指令或中断响应自动完成时,恢复断点地址由返回指令(RET或IRET)完成46存储器的编址(2)段基地址:决定存储单元在内存中的位置相对地址(偏移地址)决定该存储单元相对段内第一个单元的距离逻辑段的起始地址称为段首每个逻辑段内的第一个单元段首的偏移地址=047存储器的编址(3)0000段基地址(16位)段首地址(段首的物理地址)××ו••×××1904段首的偏移地址:0000H段基地址(16位)××ו••×××31015××ו••×××48存储器的编址(4)例:段基地址=6000H段首地址偏移地址=0009H物理地址数据段60009H00H12H60000H9物理地址:内存单元在整个内存空间中的惟一地址492.实地址模式下的存储器地址变换内存物理地址由段基地址和偏移地址组成物理地址=段基地址×16+偏移地址0000段首地址××ו••×××1904××ו••×××偏移地址+物理地址例如:若CS=FFFFH,IP=0000H,则指令所在存储单元的物理地址为:PA=(CS)×10H+IP=FFFF0H

当取指令时,自动选择的段寄存器是CS,再加上IP所决定的16位偏移量,得到要取出指令具体的物理地址:

当涉及到取一个堆栈操作数时,自动选择的段寄存器是SS,再加上SP所决定的16位偏移量,得到堆栈操作所需要的20位物理地址。51例:已知CS=1055H,DS=250AHES=2EF0HSS=8FF0H画出各段在内存中的分布。52例:CS=1055H段首地址=10550HDS=250AH段首地址=250A0HES=2EF0HSS=8FF0H10550H250A0H2EF00H8FF00H代码段数据段附加段堆栈段53例设某操作数存放在数据段,DS=250AH,数据所在单元的偏移地址=0204H。则该操作数所在单元的物理地址为:250AH×16+0204H=252A4H5、堆栈段的使用

所谓堆栈是在存储器中开辟一个区域,用来存放需要暂时保存的数据,其工作方式是“先进后出”或“后进先出”的方式。(FILO方式)

8086系统中的堆栈段是由段定义语句在存储器中定义的一个段,堆栈段容量小于等于64K字节。段基址由堆栈寄存器SS指定,栈顶由堆栈指针SP指定,堆栈地址由高向低增长,栈底设在存储器的高地址区。(向上生成)SP的初值决定了堆栈的大小。堆栈主要用于中断控制,子程序调用以及数据暂时存储。55例:已知SS=1000H,SP=0100H则:堆栈段的段首地址=栈顶(偏移)地址=若该段最后一个单元地址为10200H,则:栈底偏移地址=段首栈底栈顶堆栈区10000H0100H0200H565.内部寄存器小结全部为16位寄存器只有4个数据寄存器分别可分为2个8位寄存器所有16位寄存器中:全部通用寄存器中,只有AX和CX中的内容一定为参加运算的数据,其余通用寄存器中的内容可能是数据,也可能是存放数据的地址;SP中的内容通常为堆栈段的栈顶地址;段寄存器中的内容为相应逻辑段的段地址;IP中的内容为下一条要取的指令的偏移地址;FLAGS中有9位标志位576.实模式下的存储器寻址小结每个内存单元在整个内存空间中都具有惟一地址每个内存单元的地址都由两部分组成:段基地址段内相对地址(偏移地址)段基地址决定了逻辑段在内存中所占的区域,改变段基地址,则改变了逻辑段的位置。一个逻辑段的默认长度为64KB,最小长度值为16B。逻辑段可以有多个,但只有4种类型。在一个程序模块中,每种类型的逻辑段最多只能有一个。58六、总线时序59时序时序:CPU各引脚信号在时间上的关系总线周期:CPU完成一次访问内存(或接口)操作所需要的时间。一个总线周期至少包括4个时钟周期。60小结微处理器的一般构成8088CPU的主要引线及其功能8088CPU的内部结构内部寄存器功能寄存器中数据的含义8位寄存器中存放的均为运算的数据存储器寻址逻辑地址,段基地址,偏移地址,物理地址堆栈栈顶地址,栈底地址,堆栈段基地址四、

8086/8088CPU工作时序

(一)、时序基本概念时钟周期(ClockCycle):时钟频率的倒数,是CPU的时间基准(T状态);(若8086的主频为5MHZ,一个时钟周期为200ns)总线周期(BusCycle):

CPU完成对存储器或I/O端口一次访问所需的时间;(机器周期)指令周期(InstructionCycle):执行一条指令所需要的时间。(一个指令周期由一个或若干个总线周期组成,总线周期覆盖了EU的内部操作过程。)最小模式下的时序操作小结一个基本总线周期由T1~T4组成;T1状态:ALE、M/IO、DT/R有效,分时复用线上传送地址信息;T2状态:RD、WR、DEN信号有效。对读操作,数据线呈高阻;对写操作,直接出现输出数据;T3状态:在T3的前沿检测READY,若有效,则读操作出现输入数据;若READY无效,持续其他各控制信号,加入若干个等待态Tw,并在每个Tw前沿继续检测READY,直至READY有效为止;T4状态:接收数据,将各控制信号驱动为无效,进入无源状态,为下一个总线周期做好准备。典型的总线周期BusCycle微机处理器BIU与外部电路之间进行一次数据传送操作所占用的时间,包含若干个时钟周期。T1T2T3T4TiT1T2T3T4总线周期总线周期地址数据地址ADCLK数据空闲周期Ti(二).几种基本时序1.读总线周期地址A19---A0M/IO:在整个读周期有效,

0=I/O读,1=M读;RD:在T2-T3期间有效;ALE:T1期间出现正脉冲,下降沿锁存地址信息;DT/R:在整个总线周期为低电平,表示读周期;DEN:在T2-T3期间为低电平,表示数据有效。READY:T3开始有可能高电平。存储器读时序存储器读时序说明T1T2T3T4CLK

M/IO1=M0=IOA19/S6-A16/S3A19-A16S6-S3AD15-AD0A15-A0DATAINALERDDT/RDENREADYREADY2.存储器写周期存储器写时序AD15~AD0(AD7~AD0)在T2~T4期间CPU送上欲输出的数据。存储器写时序与存储器读时序相似,其不同点在于:WR:在T2~T4期间WR有效;DT/R:在整个总线周期内为高,表示写周期,在接有数据收发器的系统中,用来控制数据传输方向。

3.时序要点整个周期M/IO#表示存储操作;DT/R#表示写/读操作。有效。

T1时钟周期ALE下降沿触发地址锁存,锁存后地址线才能复用。3)T2-T4周期,RD#(WR#)、DEN#信号有效,读(写)数据。上升沿读写数据。4)T3周期上升沿,CPU监测READY信号,如果没有操作完数据,则插入Tw周期,等待CPU能正确地读如或取出数据。显然,等待周期的个数取决于存储器和IO设备的读取速度。

一个总线周期一般由四个T组成。T1:输出地址;T2、T3:传送数据。若存储器或外设速度慢,可插入等待周期Tw。

若一个总线周期后不执行下一个总线周期,即总线上无数据传输操作,系统总线处于空闲状态,此时执行空闲周期。69七、8088系统总线70主要内容:总线的基本概念和分类;总线的工作方式;常用系统总线标准。711.概述总线:

是一组导线和相关的控制、驱动电路的集合。是计算机系统各部件之间传输地址、数据和控制信息的通道。地址总线(AB)数据总线(DB)控制总线(CB)722.总线分类CPU总线系统总线外部总线片内总线片外总线按相对CPU的位置分按层次结构分733.总线的系统结构单总线结构CPUMMI/OI/OI/O74多总线结构面向CPU的双总线结构面向主存的双总线结构双总线结构多总线结构75面向CPU的双总线结构存储器与I/O接口间无直接通道CPUMI/OI/OI/O76面向存储器的双总线结构在单总线结构基础上增加一条CPU到存储器的高速总线CPUMI/OI/OI/O77现代微机中的多总线结构784.总线的基本功能数据传送仲裁控制出错处理总线驱动795.常用系统总线ISA(8/16位)PCI(32/64位)AGP(加速图形端口,用于提高图形处理能力)PCI-E(PCIExpress)目前最新的系统总线标准,采用串行方式传输数据,依靠高频率来获得高性能。806.总线的主要性能指标总线带宽(B/S):单位时间内总线上可传送的数据量总线位宽(bit):能同时传送的数据位数总线的工作频率(MHz)总线带宽=(位宽/8)(工作频率/每个存取周期的时钟数)817.两种工作模式下的总线连接8088可工作于两种模式下最小模式为单处理器模式,控制信号较少,一般可不必接总线控制器。最大模式为多处理器模式,控制信号较多,须通过总线控制器与总线相连。82最小模式下的总线连接示意图8088CPU••控制总线数据总线地址总线地址锁存数据收发ALE时钟发生器83最大模式下的总线连接示意图8088CPU数据总线地址总线地址锁存数据收发ALE时钟发生器总线控制器控制总线842.8088和8086CPU引线功能比较数据总线宽度不同8088的外部总线宽度是8位,8086为16位。访问存储器和输入输出控制信号含义不同8088——IO/M=0表示访问内存;8086——IO/M=1表示访问内存。其他部分引线功能的区别2.5微处理器新技术简介

2.5.1处理器的架构2.5.264位技术2.5.3双核技术2.5.1处理器的架构决定CPU整体性能表现的关键因素已经不仅仅是主频,也不是缓存技术,而是核心架构。Intel在大部分时间内都保持领先地位。Pentium采用了代号为P5的架构、PentiumPro、PentiumⅡ、PentiumⅢ采用了代号为P6的架构、Pentium4和PentiumD则采用了NetBurst架构,目前,Intel推出了全新的Core架构,在未来一段时间内将彻底取代NetBurst架构。AMD处理器主要采用的架构有K7和K8。常见的Athlon采用了K7架构,Athlon64即采用了K8架构。返回本节2.5.264位技术目前世界上的64位微处理器主要由HP、IBM、Intel和AMD等公司所把持。相比较与常见的32位处理器相比,64位计算主要有两大优点:可以进行更大范围的整数运算;可以支持更大的内存。目前主流处理器使用的64位技术主要有AMD公司的AMD64位技术、Intel公司的EM64T技术和IA-64技术。1.Itanium(安腾)微处理器

32位和64位处理模型图采用了一种新的指令集结构——EPIC。

2.Athlon64系列Athlon64系列处理器的诞生对于桌面处理器领域具有划时代的意义,使得桌面电脑可以迅速迈入64位的时代。Athlon64系列处理器的主要特征和性能:·64位计算能力。·超过4GB的内存寻址能力。·处理器内部集成内存控制器。·采用HyperTransport总线。·ExecutionProtection防病毒技术。·Cool‘n’Quiet技术。·MMX、3DNow!、SSE、SSE2全面支持,部分支持SSE3。·Athlon64X2系列支持双核技术。返回本节2.5.3双核技术双核处理器是指在一个处理器上集成两个运算核心,从而提高计算能力。AMD和Intel的双核技术在物理结构上也有很大不同之处。AMD将两个内核做在一个Die(晶元)上,通过直连架构连接起来,集成度更高。Intel则是将放在不同Die(晶元)上的两个内核封装在一起,因此有人将Intel的方案称为“双芯”,认为AMD的方案才是真正的“双核”。AMD处理器的两个核心直接连接到同一个内核上,核心之间以芯片速度通信,进一步降低了处理器之间的延迟。而Intel采用多个核心共享二级缓存方案。

1.PentiumD和PentiumEEPentiumD和PentiumEE分别面向主流市场以及高端市场,其每个核心采用独立式缓存设计,在处理器内部两个核心之间是互相隔绝的,通过处理器外部(主板北桥芯片)的仲裁器负责两个核心之间的任务分配以及缓存数据的同步等协调工作。两个核心共享前端总线,并依靠前端总线在两个核心之间传输缓存同步数据。pentiumD内部示意图如图2-17,揭开外壳后的双核心pentiumD如图2-18。图2-18揭开外壳后的双核心PentiumD处理器图2-17PentiumD内部示意图2.AMD双核处理器AMD推出的双核心处理器分别是双核心的Opteron系列和全新的Athlon64X2系列处理器。AMDAthlon64X2内部示意图如图2-19,揭开外壳后的AMDAthlon64X2如图2-20。其中Athlon64X2是用以抗衡PentiumD和PentiumExtremeEdition的桌面双核心处理器系列。图2-19AMDAthlon64X2内部示意图图2-20揭开外壳后的AMDAthlon64X2

3.Core2系列Core2(酷睿2

温馨提示

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

评论

0/150

提交评论