版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理与接口技术
自动化学院王俊宏课程网站:/auto/wjjk/公共Email:zdhwjyl@126.com密码:wjyl1234第二实验大楼南506电话四讲*2复习*3§2-38086存储器组织存储器地址的分段存储器的要求:以字节为单位存储信息,每个存储单元有唯一的地址。分段管理的原因:
8086/8088系统的存储空间1M字节(即220,要20位物理地址),CPU内部寄存器只有16位(只能寻址64K字节)。整个存储中间分成许多逻辑段。1.存储器地址的分段0段000000FFFF100001FFFF
F0000FFFFF1段…15段64KB64KB64KB*4物理地址形成段基址00001503210偏移地址150地址加法器物理地址190段基址指每段的起始地址,根据前述PC机规定,它必须是每小段的首地址,即必须能被16整除,则其低4位一定为0。从段寄存器中取出段基址,将其左移4位,再与16位偏移地址相加,就得到了物理地址(由总线接口部件BIU的地址加法器完成)。一、存储器地址的分段§2-38086存储器组织
*5逻辑地址来源访问存储器的操作类型不同,BIU所使用的逻辑地址来源也不同。操作类型隐含段地址替换段地址偏移地址取指令CS无IP堆栈操作SS无SPBP为间接SSCS、DS、ES有效地址EA存取变量DSCS、DS、ES有效地址EA源字符串DSCS、DS、ESSI目标字符串ES无DI一、存储器地址的分段§2-38086存储器组织
*6§2-38086存储器组织8086存储器的分体结构分体结构概念两个存储体:偶地址存储体+奇地址存储体,各为512KByte,共1MByte.512K×8位奇地址存储体(A0=1)512K×8位偶地址存储体(A0=0)000010000300005
FFFFF000000000200004
FFFFE220-1==220-2*7二、8086存储器的分体结构§2-38086存储器组织
分体结构概念两个存储体:偶地址存储体+奇地址存储体,各为512KByte,共1MByte.512K×8位奇地址存储体(A0=1)512K×8位偶地址存储体(A0=0)000010000300005
FFFFF000000000200004
FFFFE220-1==220-2与数据总线低8位相连,当A0=0时,选择访问偶地址存储体,从低8位数据总线读/写一个字节。与数据总线高8位相连,当BHE=0时,选择访问奇地址存储体,从高8位数据总线读/写一个字节。*8分体结构读写操作00000FF10000100011000200103100041122333322从偶地址读一个字若字单元地址从偶地址开始,只需访问一次存储器
从奇地址读一个字00000FF10000100011000200103100041122332211若字单元地址从奇地址开始,要访问两次存储器
二、8086存储器的分体结构§2-38086存储器组织
*9二、8086存储器的分体结构§2-38086存储器组织
存储器与总线连接D7~D0奇地址存储体SELA19~A1D7~D0偶地址存储体SELA19~A1A0BHEA19~A1地址总线8086系统0000000002:FFFFE0000100003:FFFFF与8286数据双向收发器相连与8282地址锁存器相连A19A18A17A16A15……A7A6A5A4A3A2A1A0000000000000000000000000000000000000001011111111111111111110:::::D7~D0
数据总线D15~D8
数据总线*10存储器与总线连接D7~D0数据总线D7~D01M×8位存储体A19~A0A19~A0地址总线8088系统0000000001FFFFFA19A18A17A16A15……A7A6A5A4A3A2A1A0000000000000000000000000000000000000000111111111111111111111:::::二、8086存储器的分体结构§2-38086存储器组织
*11§2-38086存储器组织堆栈的概念堆栈的定义堆栈是在存储器中开辟一个区域,用来存放需要暂时保存的数据。堆栈段构成及特点
堆栈段由段定义语句在存储器中定义的一个段,可以在存储器1M字节空间内任意浮动,容量小于等于64K字节。段基址由堆栈寄存器SS指定,栈顶由堆栈指针SP指定,SP指向当前栈顶单元。C0000
C1000sp向上增长栈底*12三、堆栈的概念§2-38086存储器组织
堆栈的工作方式及特点
工作方式:“先进后出”,指令为PUSH、POP,栈顶指针SP的变化由CPU自动管理。操作特点:以字为单位进行操作,低字节在偶地址,高字节在奇地址,每访问一次堆栈就能压入/弹出一个字。地址增长方式一般是向上增长:栈底设在存储器的高地址区,堆栈地址由高向低增长。C0000
C1000sp向上增长栈底*13C0000
C1000sp向上增长栈底执行PUSH指令时,CPU自动修改指针SP-2SP。使SP指向新栈顶,然后将低位数据压入(SP)单元,高位数据压入(SP+1)单元。当执行POP指令时,CPU先将当前栈顶SP(低位数据)和SP+1(高位数据)中的内容弹出,然后再自动修改指针,使SP+2SP,SP指向新栈顶。三、堆栈的概念§2-38086存储器组织
*14C0000
C1000sp向上增长栈底【例1】.假如当前SS=C000H.堆栈段<64K,SP=1000H,指出当前栈顶在存储器中的位置。当前栈顶在存储器中的地址为C1000H三、堆栈的概念§2-38086存储器组织
*15【例2】.上例中若AX=3322H,BX=1100H,CX=6655H,执行指令PUSHAX,PUSHBX,再执行指令POPCX,此时堆栈中内容发生什么变化,AX,BX,CX中的内容是什么?C00002233sp栈底0011C0FFCC0FFEC10003322PUSH
AX1100PUSH
BX6655CXspC00002233栈底0011C0FFCC0FFEC10003322AX1100BX1100POP
CX三、堆栈的概念§2-38086存储器组织
*16三、堆栈的概念§2-38086存储器组织
*17堆栈的主要用途 中断,子程序调用,数据暂时保存。【注意】: 先进入的内容要后弹出,PUSH和POP指令要成对。三、堆栈的概念§2-38086存储器组织
*18第二章8086系统结构内容提要8086CPU内部结构8086/8088CPU的引脚及功能8086的存储器组织8086工作模式和总线操作*19§2-48086系统配置简述系统配置方式:最小模式(CPU的引脚MN/MX瑞接高电平+5V)最大模式(CPU的引脚MN/MX瑞接高电平低电平)系统配置特点:最小模式为单机系统,控制信号由CPU提供;最大模式为多处理器/协处理器系统,控制信号由总线控制器8288提供。(常用的处理器有数值运算协处理器8087,输入/输出处理器8089)CPU的24~31引脚意义不同*20§2-48086系统配置最小模式系统8086CPU存储器I/O接口芯片1片8284A,作为时钟发生器3片8282/8283或74LS373,作为地址锁存器2片8285/8287或74LS245,作为双向数据总线收发器*21§2-48086系统配置最小模式系统时钟发生器RESVccCLKREADYRESETRDWRM/IOALE8086CPUA19/S6~A16/S3
AD15~AD0DENDT/RMN/MXVccSTB8282/8283OE8286/8287T地址/数据地址存储器DATAI/O芯片DATABHEOEBHE/S720位16位地址总线数据总线*22§2-48086系统配置最小模式系统8282/8283是三态缓冲的8位数据锁存器,8282的输入和输出信号同相(8283的输入和输出信号反相)。
地址锁存器8282/8283*23§2-48086系统配置最小模式系统8286/8287是三态8位双向数据收发器,可增加驱动能力。8286数据输入与输出同相(8287数据输入与输出反相)。
双向数据总线收发器8286/8287*24§2-48086系统配置最小模式系统产生CLK信号,该CLK信号是8086CPU的内部和外部的时间基准信号,由驱动门电路进行功率放大。
时钟发生器8284*25§2-48086系统配置*最大模式系统CPU的引脚MN/MX接地时,8086为最大模式系统。在最大模式系统中需要增加总线控制器8288和总线裁决器8289,以完成8086CPU为中心的多处理器系统的协调工作。CPU输出的状态信号S2~S0同时送给8288和8289,由8288输出原CPU所有的控制信号:存储器读/写控制,I/O端口读/写控制,中断响应信号等。8289来裁决总线使用权赋给哪个处理器,以实现多主控者对总线资源的共享。*26§2-48086系统配置最大模式系统OE时钟发生器RESVccCLKREADYRESET8086CPUA19~A16AD15~AD0MN/MXSTB8282/8283OE8286/8287T地址/数据地址存储器DATAI/O芯片DATABHES0S1S2地址总线数据总线S1CLKS0S2DENDT/RALEIORCIOWCMWTCMRDCINTAAENCLKS2S1S0AEN82898288多主控者系统总线*27§2-48088系统配置最小模式系统*28§2-48088系统配置最大模式系统*29※有关概念介绍主频,外频,倍频系数T状态总线周期指令周期时序时序图*30一、主频,外频,倍频系数CPU是在时钟信号的控制下工作时钟信号
是一个按一定电压幅度,一定时间间隔发出的脉冲信号CPU所有的操作都以时钟信号为基准
CPU按严格的时间标准发出地址,控制信号,存储器、接口也按严格的时间标准送出或接受数据。这个时间标准就是由时钟信号确定。CLK*31CPU的主频或内频指CPU的内部工作频率。主频是表示CPU工作速度的重要指标,在CPU其它性能指标相同时,主频越高,CPU的速度越快CPU的外频或系统频率指CPU的外部总线频率。倍频系数指CPU主频和外频的相对比例系数。8088/8086/80286/80386的主频和外频值相同;从80486DX2开始,CPU的主频和外频不再相同,将外频按一定的比例倍频后得到CPU的主频,即:
CPU主频=外频×倍频系数
PC机各子系统时钟(存储系统,显示系统,总线等)是由系统频率按照一定的比例分频得到。一、主频,外频,倍频系数*32外频性能指标
8088CPU
频率f:1秒内的脉冲个数4.77MHz
周期T
=1/f210ηs
占空比:高电平在一个周期中的比例1:3CLKT一、主频,外频,倍频系数*33相邻两个脉冲之间的时间间隔,称为一个时钟周期,又称T状态(T周期)。二、T状态
每个T状态包括:下降沿、低电平、上升沿、高电平CLKT*34CPU通过总线完成与存储器、I/O端口之间的操作,这些操作统称为总线操作。三、总线周期数据总线DB控制总线CB地址总线AB存储器I/O接口输入设备I/O接口输出设备CPU*35执行一个总线操作所需要的时间称为总线周期。三、总线周期*36一个基本的总线周期通常包含4个T状态,按时间的先后顺序分别称为T1、T2、T3、T4
总线周期T1T2T3T4CLK三、总线周期*37执行一条指令所需要的时间称为指令周期。
执行一条指令的时间:是取指令、执行指令、取操作数、存放结果所需时间的总和(用所需的时钟周期数表示)。四、指令周期例:MOVBX,AX;2个T周期
MULBL;70~77个T周期*38不同指令的执行时间(即指令周期)是不同的;
同一类型的指令,由于操作数不同,指令周期也不同例
MOVBX,AX2个T周期
MULBL70~77个T周期
MOV[BX],AX
14个T周期四、指令周期*39例1
执行ADD[BX],AX包含:(1)取指令译码(2)取(DS:BX)内存单元操作数存储器读周期(3)存放结果到(DS:BX)内存单元存储器写周期例2
执行MOVBX,AX包含:
仅取指令和译码执行指令的过程中,需从存储器或I/O端口读取或存放数据,故一个指令周期通常包含若干个总线周期。四、指令周期*40
为实现某个操作,芯片上的引脚信号在时钟信号的统一控制下,按一定的时间顺序发出有效信号,这个时间顺序就是时序。五、时序描述某一操作过程中,芯片/总线上有关引脚信号随时间发生变化的关系图,即时序图。*41六、时序图时间有关引脚信号T1T2T3T4A19~A0D7~D0ALECLKMEMR例
IBMPC/XT总线上存储器读周期时序*42
时序图以时钟脉冲信号作为横坐标轴,表示时间顺序;
纵轴上是有关操作的引脚信号随时间发生变化的情况,
时序图中左边出现的事件发生在右边之前。时间有关引脚信号T1T2T3T4A19~A0D7~D0ALECLKMEMR例
IBMPC/XT总线上存储器读周期时序六、时序图*43一、概述【8086CPU时序】
概念:计算机工作过程:在时钟脉冲CLK统一控制下的指令执行过程。
8086的时钟频率为5MHz,时钟周期或T状态为200ns。指令周期(InstructionCycle):
执行一条指令所需的时间称为指令周期。不同指令的指令周期的长短是不同的.一个指令周期由几个总线周期组成。总线周期(BusCycle):
BIU完成一次访问存储器或I/O操作所需要的时间,称作一个总线周期。一个总线周期由几个T状态组成。③时钟周期(ClockCycle):CPU的时钟频率的倒数,也称T状态。*44注意:在8086/8088CPU中,每个总线周期至少包含4个时钟周期(T1~T4),一般情况下,在总线周期的T1状态传送地址,T2~T4状态传送数据。一、概述【8086CPU时序】
*45复位信号:通过RESET引脚上的触发信号来引起8086系统复位和启动,RESET至少维持4个时钟周期的高电平。复位操作:当RESET信号变成高电平时,8086/8088CPU结束现行操作,各个内部寄存器复位成初值。标志寄存器清零指令寄存器0000HCS寄存器FFFFHDS寄存器0000HSS寄存器0000HES寄存器0000H指令队列变空其它寄存器0000H二、系统的复位与启动【8086CPU时序】
*46复位后程序执行:代码段寄存器CS=FFFFH,指令指针IP=0,从内存的FFFF0H处开始执行指令。在FFFF0处存放了一条无条件转移指令,转移到系统引导程序的入口处,这样系统启动后就自动进入系统程序。可屏蔽中断被屏蔽:标志寄存器被清0,程序中要用指令STI来设置中断允许标志。二、系统的复位与启动【8086CPU时序】
*47CLKRESET复位内部RESET三态门输出信号浮空不作用状态二、系统的复位与启动【8086CPU时序】
*48在RESET信号变成高电平后,经过一个时钟周期,所有的三态输出线被设置成高阻,并一直维持高阻状态(浮空),直到RESET信号回到低电平为止。但在高阻状态的前半个时钟周期,三态输出线被置成不作用状态,当时钟信号又变成高电平时,才置成高阻状态。置成高阻状态的三态输出线包括:AD15~AD0、A19/S6~A16/S3、BHE/S7、M/IO、DT/R、DEN、WR、RD和INTA。另外有几条控制线在复位之后处于无效状态,但不浮空,它们是ALE、HLDA、RQ/GT0、RQ/GT1、QS0、QS1。二、系统的复位与启动【8086CPU时序】
说明*49动画演示二、系统的复位与启动【8086CPU时序】
*50§2-58086CPU时序最小模式下的总线操作读总线周期(动画)*51三、最小模式下的总线操作
【8086CPU时序】读总线周期一个最基本的读总线周期包含4个T状态,即T1、T2、T3、T4,在存储器和外设速度较慢时,在T3后可插入1个或几个等待状态Tw。*52三、最小模式下的总线操作
【8086CPU时序】读总线周期T1状态:M/IO信号在T1状态有效,指出CPU是从内存还是从I/O端口读取数据。M/IO信号的有效电平一直保持到总线周期结束的T4状态。T1状态开始,20位地址信号通过多路复用总线输出,指出要读取的存储器或I/O瑞口的地址。高4位地址从A19/S6~A16/S3地址/状态线送出,低16位从AD15~AD0地址/数据线送出。ALE引脚上输出一个正脉冲作地址锁存信号。在T1状态结束时,M/IO信号,地址信号均已有效,ALE的下降沿用作锁存器8282的选通信号,使地址锁存。BHE信号有效,作为奇地址存储体的选体信号,配合地址信号可实现存储单元的寻址,它表示高8位数据线上的数据有效。系统中若接有数据总线收发器8286时,在T1状态,DT/R端输出低电平,表示本总线周期为读周期,用DT/R去控制8286接收数据。*53三、最小模式下的总线操作
【8086CPU时序】读总线周期T2状态:地址信号消失,A19/S6~A16/S3引脚上输出状态信息S6~S3,指出当前正在使用的段寄存器及中断允许情况。低位地址线AD15~AD0进入高阻状态,为读取数据作准备。BHE/S7变成高电平,输出状态信息S7,S7在设计中未赋于实际意义。RD信号有效,送到所有的存储器和I/O端口,但只选通地址有效的存储单元和I/O端口,使之能读出数据。若系统中接有8286,DEN信号在T2状态有效,作为8286的选通信号,使数据通过8286传送。*54三、最小模式下的总线操作
【8086CPU时序】读总线周期T3状态:T3状态一开始,CPU采样READY信号,若此信号为低电平表示系统中所连接的存储器或外设工作速度较慢,数据没有准备好,要求CPU在T3和T4状态之间再插入一个TW状态。READY是通过时钟发生器8284传递给CPU的。当READY信号有效时,CPU读取数据。在DEN=0、DT/R=0的控制下,内存单元或I/O端口的数据通过数据收发器8286送到数据总线AD15~AD0上。CPU在T3周期结束时,读取数据。S3S4指出了当前访问哪个段寄存器,若S3S4=10,表示访问CS段,读取的是指令,CPU将它送入指令队列中等待执行,否则读取的是数据,送入ALU进行运算。*55三、最小模式下的总线操作
【8086CPU时序】读总线周期Tw状态:
CPU在每个TW状态的前沿对READY信号采样,若为低电平继续插入TW状态。当在TW状态采样到READY信号为高电平时,在当前TW状态执行完,进入T4状态,在最后一个TW状态,数据肯定已出现在数据总线上,此时TW状态的动作与T3状态一样。CPU采样数据线AD15~AD0。T4状态:
CPU在T3与T4状态的交界处采样数据。然后在T4状态的后半周期,数据从数据总线上撤除,各个控制信号和状态信号线进入无效状态,DEN无效,总线收发器不工作,一个读总线周期结束。*56三、最小模式下的总线操作
【8086CPU时序】写总线周期*57三、最小模式下的总线操作
【8086CPU时序】写总线周期T1状态:
M/IO信号有效,指出CPU将数据写入内存还是I/O端口;CPU给出写入存储单元或I/O端口的20位物理地址;地址锁存信号ALE有效,选存储体信号BHE、A0有效,DT/R变高平,表示本总线周期为写周期。T2状态: 地址撤消,S6~S3状态信号输出;数据从CPU送到数据总线AD15~AD0,WR写信号有效;DEN信号有效,作为数据总线收发器8286的选通信号。*58三、最小模式下的总线操作
【8086CPU时序】写总线周期T3状态:
CPU采样READY线,若READY信号无效,插入一个到几个TW状态,直到READY信号有效.存储器或I/O设备从数据总线上取走数据。T4状态: 从数据总线上撤消数据,各控制信号和状态信号线变成无效;DEN信号变成高电平,总线收发器不工作。*59三、最小模式下的总线操作
【8086CPU时序】写总线周期几点不同之处(与读总线周期):在T1状态,DT/R信号为高电平,表示本总线周期为写周期,即CPU将数据写入存储单元或I/O端口。在T2状态,地址信号发出后,CPU立即向地址/数据总线AD15~AD0发出数据,数据信号保持到T4状态的中间,使存储器或外设一旦准备好即可从数据总线取走数据。写信号为WR(代替RD),在T2状态有效,维持到T4状态,选通存储器或I/O端口的写入。*60三、最小模式下的总线操作
【8086CPU时序】只有在CPU和存储器或I/O接口之间传输数据时,CPU才执行总线周期,当CPU不执行总线周期时(指令队列6字节已装满,EU未申请访问存储器),总线接口部件不和总线打交道,就进入了总线空闲周期Ti。此时状态信息S6~S3和前一个总线周期一样,数据总线上信号不同,若前—个总线周期是读周期,则AD15~AD0在Ti状态处于高阻状态,若前一个总线周期是写周期,则AD15~AD0在Ti状态继续保持数据有效。在空闲周期中,虽然CPU对总线进行空操作,但CPU内部操作仍然进行。例ALU执行运
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 保险行业客户服务与管理专项训练习题
- 保险消费者权益保护与保险纠纷处理备考习题
- 初中道德与法治统编版(2024)七年级上册9.2 提高防护能力 课件
- 山西长治市2026年一级造价工程师考试(建设工程技术与计量、交通运输工程)题库及答案
- 卫生防疫技师考试题库试卷及答案
- 住房和城乡建设领域现场专业人员培训考试(设备安装施工员专业基础知识)题库(2025年海南洋浦经济开发区)
- 自考专业(学前教育)《学前教育政策与法规》考试试题及答案
- 皮肤科医学理论考试题及答案
- 消防设施操作员(中级)考试题库答案
- 2026年中小学宿舍用电安全禁止违规电器教育试题
- 湖南省2027届高三九校联盟第一次联考语文试卷(含答案及解析)
- 2026年广东中考英语考试大纲
- 2026年上海高考英语(秋考)完整真题(考生回忆版)+ 参考答案与解析
- 《新能源专业导论》新能源相关专业全套教学课件
- 高中120个文言实词+18个文言虚词
- 人力资源业务开展制度
- 广东广州市2025-2026学年九年级上学期第一次月考化学试题(含答案)
- 初中几何基础习题集含解答
- 消除母婴三病培训课件
- 临床实验(检验、病理)标本采集、储存、运送制度
- 酒店管理心理学
评论
0/150
提交评论