第四讲 16位微处理器_第1页
第四讲 16位微处理器_第2页
第四讲 16位微处理器_第3页
第四讲 16位微处理器_第4页
第四讲 16位微处理器_第5页
已阅读5页,还剩110页未读 继续免费阅读

下载本文档

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

文档简介

第四讲16位微处理器曾铁军主要内容16位微处理器概述1

8086/8088CPU的结构2

8086/8088CPU的引脚信号和工作模式3

8086/8088的主要操作功能44.116位微处理器概述微型计算机系统组成微处理器存储器I/O接口总线硬件系统软件系统微型计算机系统微型计算机(主机)外设ALU寄存器控制器键盘、鼠标显示器软驱、硬盘、光驱打印机、扫描仪系统软件应用软件8086/8088内部结构相同,但外部性能有区别:8086是16位数据总线,8088是8位数据总线。处理一个16位数据字时,8088需要两步操作,8086只要一步。8086/8088的CPU的内部都采用16位字进行操作及存储器寻址,软件完全兼容、程序执行也一样。但是8088有相对较多的外部存取操作,所以程序执行速度相对较慢。封装模式:都封装在40脚双列直插组件(DIP)中。4.28086/8088CPU的结构AHALBHBLCHCLDHDL

SP

BP

DI

SI通用寄存器运算寄存器ALU标志执行部分控制电路123456

CS

DS

SS

ES

IP内部寄存器I/O控制电路地址加法器20位16位8位指令队列缓冲器外部总线执行部件(EU)总线接口部件(BIU)AXBXCXDX16位专用寄存器AHALBHBLCHCLDHDL

SP

BP

DI

SI通用寄存器运算寄存器ALU标志执行部分控制电路123456

CS

DS

SS

ES

IP内部寄存器I/O控制电路地址加法器20位16位8位指令队列缓冲器外部总线执行部件(EU)总线接口部件(BIU)AXBXCXDX16位专用寄存器4.2.1执行部件

EU功能:负责指令的执行。(1)从指令队列中取出指令。(2)对指令进行译码,发出相应的控制信号。(3)接收由总线接口送来的数据或发送数据至接口。(4)利用内部寄存器和ALU进行数据处理。AHALBHBLCHCLDHDL

SP

BP

DI

SI通用寄存器运算寄存器ALU标志执行部分控制电路123456

CS

DS

SS

ES

IP内部寄存器I/O控制电路地址加法器20位16位8位指令队列缓冲器外部总线执行部件(EU)总线接口部件(BIU)AXBXCXDX16位专用寄存器4.2.1执行部件

EU执行部件的组成:(1)4个通用寄存器:AX、BX、CX、DX。(2)4个专用寄存器:BP-基数指针寄存器SP-堆栈指针寄存器SI-源变址寄存器DI-目的变址寄存器(3)FR--标志寄存器(4)ALU-算术逻辑部件AXBXCXDX目的变址指针(DestinationIndex)DI源变址指针(SourceIndex)SI基址指针(BasePointer)BP堆栈指针(StackPointer)SP数据寄存器(Data)DLDHDX计数寄存器(Count)CLCHCX基址寄存器(Base)BLBHBX累加器(Accumulator)ALAHAX数据寄存器可分为两个8位,主要用于数据操作地址指针主要用于地址操作16位888086通用寄存器组寄存器特殊用法AX,AL乘法/除法指令,作累加器;I/O操作时,作数据寄存器AH在LAHF指令中用作目的寄存器((AH)←标志)AL在BCD码及ASCII码运算指令中作为累加器;在XLAT指令中作为累加器(AL)←((AL)+(BX))BX在间接寻址中作为基址寄存器和变址寄存器CX在循环程序中,作循环次数计数器CL在移位和循环移位指令中,作为移位位数和循环移位次数的计数寄存器(指令执行后,(CL)不变)DXI/O指令间接寻址时,作为地址寄存器;在乘法指令中作为辅助累加器(当乘积或被除数为32位时,存放高16位数)BP在间接寻址中,作为基址寄存器SP在堆栈操作中,作为堆栈指针SI间接寻址时,作为地址寄存器或变址寄存器;在串操作指令中作为源变址寄存器DI在间接寻址时,作为地址寄存器或变址寄存器;在串操作指令中作为目的变址寄存器8086/8088的EU具有如下4个特点:4个通用寄存器既可以作为16位寄存器来使用,也可以作为8位寄存器使用。例如:BX作为8位寄存器时,分为BH高8位和BL低8位。AX寄存器常常称为累加器,8086指令系统中有许多指令是通过累加器的动作来执行的。例如,累加器作为16位来使用的时候,可以按照“字”进行乘、除等操作;当累加器作为8位来使用的时候,可以按照“字节”进行乘、除等操作。加法器是算术逻辑单元(ALU)的主要部件,绝大部分指令的执行都由加法器来完成。(4)标志寄存器FR共有16位,其中有7位未用。D0进位标志奇偶标志辅助进位标志零标志符号标志跟踪标志中断标志方向标志溢出标志1-有进、借位0-无进、借位加减法中第3位向第4位有进、借位,BCD码运算中是否调整1-当前运算结果为00-结果不为0状态标志:操作执行后,决定ALU在何种状态,这种状态影响以后的操作。控制标志:人为设定的,对特定的功能起控制作用。D15OFDFIFTFSFZFAFPFCF表4-18086/8088标志位表标志寄存器功能举例 0101010000111001

5439H+ 0100010101101010

456AH 1001100110100011低8位中“1”的个数为偶数,PF=1运算结果不为0,ZF=0低4位向前有进位,AF=1最高位向前没有进位,CF=01514131211109876543210

ODITSZAP

C

AHALBHBLCHCLDHDL

SP

BP

DI

SI通用寄存器运算寄存器ALU标志执行部分控制电路123456

CS

DS

SS

ES

IP内部寄存器I/O控制电路地址加法器20位16位8位指令队列缓冲器外部总线执行部件(EU)总线接口部件(BIU)AXBXCXDX16位专用寄存器4.2.2总线接口部件

BIU功能:负责CPU与存储器、I/O端口之间的数据传送(1)取指令送到指令队列。(2)CPU执行指令时,到指定的位置取数据,并将其送至指令要求的位置单元中AHALBHBLCHCLDHDL

SP

BP

DI

SI通用寄存器运算寄存器ALU标志执行部分控制电路123456

CS

DS

SS

ES

IP内部寄存器I/O控制电路地址加法器20位16位8位指令队列缓冲器外部总线执行部件(EU)总线接口部件(BIU)AXBXCXDX16位专用寄存器4.2.2总线接口部件

BIU总线接口部件的组成:(1)4个段地址寄存器:CS-16位代码段寄存器DS-16位数据段寄存器ES-16位附加段寄存器SS-16位堆栈段寄存器(2)16位指令指针寄存器IP(3)20位的地址加法器(4)6字节的指令队列缓冲器CS:CodeSegmentRegister代码段寄存器指示当前执行程序所在存储器的区域DS:DataSegmentRegister数据段寄存器指示当前程序所用之数据的存储器区域SS:StackSegmentRegister堆栈段寄存器指示当前程序所用之堆栈位于的存储器区域ES:ExtraSegmentRegister附加段寄存器指示当前程序所用之数据位于的另外存储器区域,在字符串操作中常用到段寄存器8086CPU将1MB寻址空间分为若干段,由段寄存器来识别当前寻址的段,每个段功能各不相同16位指令指针寄存器IP程序运行中自动加1,指向下一条要执行指令的偏移地址当程序执行到跳转、调用、中断等指令时,IP中的值将根据条件变化通常不能被直接访问,也不能直接赋值,指令中不会出现对IP的操作IP—InstructionPointer存储指令在代码段中的偏移地址8086/8088的BIU具有如下特点:(1)指令队列缓冲器:在执行指令的同时,从内存中取下一条或者下几条指令,并放入指令队列缓冲器中。CPU执行完一条指令后,可以立即执行下一条指令(流水线技术),而无需轮番取指令和执行指令,从而提高CPU效率。(2)地址加法器:产生20位地址。CPU内无论是段地址寄存器还是偏移量都是16位的,通过地址加法器产生20位地址。指令的一般执行过程:取指令指令译码读取操作数执行指令存放结果8088之前的CPU采用串行工作方式:CPU访问存储器(存取数据或指令)时要等待总线操作的完成

CPU执行指令时总线处于空闲状态缺点:CPU无法全速运行解决:总线空闲时预取指令,使CPU需要指令时能立刻得到取指令1执行1取操作数2执行2CPUBUS忙碌忙碌忙碌忙碌存结果1取指令28086/8088CPU采用并行工作方式取指令2取操作数BIU存结果取指令3取操作数取指令4执行1执行2执行3

EUBUS忙碌忙碌忙碌忙碌忙碌忙碌指令预取队列的存在使EU和BIU两个部分可同时进行工作,提高了CPU的效率降低了对存储器存取速度的要求总线接口部件和执行部件不是同步工作的,它们按照以下的流水线技术原则管理:(1)每当8086的指令队列中有2个空字节,8088指令队列中有1个空字节时,总线接口部件就会自动取指令至队列中。(2)执行部件从总线接口的指令队列前部取出指令代码,执行该指令。(3)当队列已满,执行部件又不使用总线时,总线接口部件进入空闲状态。

(4)执行转移指令、调用指令、返回指令时,先清空队列内容,再将要执行的指令放入队列中。4.2.3存储器结构数据与指令的存储与访问

由于8086/8088有20条地址线,可以寻址220(1M)字节,CPU送到地址总线(AB)上的20位的地址称为物理地址。

物理地址..60000H60001H60002H60003H60004H...12HF0H1BH08H存储器的操作完全基于物理地址。问题:8086/8088的内部总线和内部寄存器均为16位,如何寻找20位地址?FFH解决方法(后面详细)存储器分段并赋以地址偏移量逻辑地址图4.3存储器逻辑段的首地址段首地址的高16位称为“段基址”,存放在段寄存器DS或CS或SS或ES中,段内的偏移地址存放在IP或SP中0150H4200H1CD0HB000H64KB代码64KB数据64KB附加64KB堆栈各段独立的分配方式举例CSDSSSES段寄存器存储器01500H~114FFH1CD00H~2CCFFH42000H~51FFFHB0000H~BFFFFH0200H0400H0480HCSDSSSES段寄存器存储器04000H04800H段重叠的分配方式举例02000H段地址段所在位置CS=0200H02000H-11FFFHDS=0400H04000H-13FFFHSS=0480H04800H-147FFH存储器中的逻辑地址和物理地址

物理地址=段基址×16+偏移地址

(20位)(16位)(16位)图4.5物理地址的形成

CS0000

IP代码段

DS或ES0000

SI、DI

SS0000

SP数据段附加段堆栈段段寄存器和偏移地址寄存器组合关系习题:已知CS=1055H,DS=250AH,ES=2EF0H,SS=8FF0H,各段的容量均为64K,DS段有一操作数,其偏移地址=0204H,1)画出各段在内存中的分布;2)在图中指出各段首地址;3)求操作数的物理地址。10550H250A0H2EF00H8FF00HCSSSCSDSES解:各段分布及段首址见右图所示。操作数的物理地址为:250AH×16+0204H=252A4H00000HFFFFFH相邻两个脉冲之间的时间间隔,称为一个时钟周期,又称T状态(T周期)。每个T状态包括:下降沿、低电平、上升沿、高电平CLKT8086CPU

频率f:1秒内的脉冲个数10MHz

周期T:T=1/f100ns

占空比:高电平在一个周期中的比例1:34.2.48086总线工作周期

总线周期概念总线操作:CPU通过总线完成与存储器、I/O端口之间的操作。总线周期:执行一个总线操作(读或写)所需要的时间。一个基本的总线周期通常包含4个T状态,按时间的先后顺序分别称为T1、T2、T3、T4。总线周期T1T2T3T4CLK图4.188086/8088最小工作模式总线读/写操作的时序指令周期概念指令周期:执行一条指令所需要的时间,是取指令、执行指令、取操作数、存放结果所需时间的总和。用所需的时钟周期数表示。不同指令的指令周期是不同的;同一类型的指令,由于操作数不同,指令周期也不同。例

MOVBX,AX2个T周期 MOV[BX],AX14个T周期MULBL70~77个T周期例

执行ADD[BX],AX包含:1)取指令存储器读周期

2)取DS:BX内存单元操作数存储器读周期

3)存放结果到DS:BX内存单元存储器写周期执行指令的过程中,需要从存储器或I/O端口读取或存放数据,所以一个指令周期通常包含若干个总线周期。指令周期与总线周期关系T1T2T3TWT4总线周期

有时,外设或存储器不能及时配合CPU传输数据,这时,会在T3状态之后插入一个或者多个时钟周期TW,称为等待状态。只有在CPU和内存、I/O接口之间传输数据,以及填充指令队列的时候,CPU才执行总线周期。如果一个总线周期之后,不立即执行下一个总线周期,那么系统总线就处在空闲状态,此时,执行空闲周期。4.38086/8088CPU的引脚信号和工作模式

根据所连的存储器和外设规模的不同,使8086/8088可以在两种模式下工作:

系统最小模式:系统中只有一个8086/8088CPU。所有的总线控制信号都直接由8086/8088产生,系统中的总线控制逻辑电路被减到最少。控制信号较少,一般可不必外接总线控制器。系统最大模式:有两个或两个以上的CPU,一个为主处理器,即8086/8088;其他称为协处理器,协同主处理器工作,包括数值运算协处理器8087,和输入/输出协处理器8089。控制信号较多,CPU必须通过总线控制器与总线相连。8087:专门用于数值运算,能实现多种类型的数值操作。8089:具有专门用于I/O接口的指令系统,可直接为I/O设备服务,使得8086/8088不再担任这类工作。4.3.18086/8088的引脚信号和功能8086引脚信号引脚分类:(1)基本需要:电源、地、晶振(2)数据、地址:先看分组,再看各组I/O是否有复用(3)控制类A基本应用控制

复位

中断

片选

同步B扩展应用控制8086最小工作模式下控制核心单元的组成地+5V读写控制读写控制读写控制CSH奇地址存储体8284时钟发生器RESETREADYCBD7~D0D15~D8DBCSL偶地址存储体CSI/O接口ABA0A1~A19BHE

STBOE8282锁存器8086CPUMN/MXINTARDCLKWRREADYM/IORESETALEBHEA19-A16AD15-AD0DENDT/RTOE8286

收发器D15~D0基本需要1CLK(clock)时钟引脚(输入)8086/8088时钟信号占空比33%。8086/8088的时钟频率要求为5MHz,8086-1的时钟频率为10MHz,8086-2的时钟频率则为8MHz,时钟信号为CPU和总线控制逻辑电路提供定时手段。

2T/3CLKTT/3右图为8086的最小模式8284A为时钟发生器;一般的芯片的CLK有外接和内部产生两种方式,右图为外接方式2GND地和Vcc电源引脚8086/8088均用单一+5V电源目前很多芯片为3.3或3V电源此处有两个GND。当芯片内既有数字电路又有模拟电路时,往往从抗干扰的角度出发,设置数字地和模拟地。8086最小工作模式下控制核心单元的组成地+5V读写控制读写控制读写控制CSH奇地址存储体8284时钟发生器RESETREADYCBD7~D0D15~D8DBCSL偶地址存储体CSI/O接口ABA0A1~A19BHE

STBOE8282锁存器8086CPUMN/MXINTARDCLKWRREADYM/IORESETALEBHEA19-A16AD15-AD0DENDT/RTOE8286

收发器D15~D0数据、地址类3.AD15-AD0:地址/数据复用引脚(双向,三态)。(86/88)AD15-AD0:16位地址总线A15-A0,输出访问存储器或I/O的地址信息。(86)AD15-AD0

:16位数据总线D15-D0,与存储器和I/O设备交换数据信息。(88)AD7-AD0:8位数据总线D7-D0,与存储器和I/O设备交换数据信息。AD15-AD8:只用于输出地址信息,A15-A8。地址/数据总线复用,分时工作。在总线周期的T1状态用来输出地址,在T2

~T3状态,读周期时处于浮空状态,写周期时传送数据。在CPU响应中断、系统总线“保持响应”时,为高阻状态。4.A19/S6-A16/S3:地址/状态总线复用引脚(输出,三态)输出CPU的工作状态。分时工作,T1状态输出访问存储器的20位地址的高4位;T2、T3、TW、T4状态输出状态信息。S6:指示8086/8088当前是否与总线相连,S6=0表示8086/8088当前与总线相连。S5:表明中断允许标志当前的设置。S5=0,表示CPU中断是关闭的,禁止一切可屏蔽中断源的中断请求;S5=1,表示CPU中断是开放的,允许一切可屏蔽中断源的中断申请。S4S3

段寄存器00当前正在使用ES01当前正在使用SS0当前正在使用CS,或者

未使用任何段寄存器11当前正在使用DSS4、S3:指出当前使用段寄存器的情况。当系统总线处于“保持响应”状态时,A19/S6-A16/S3为高阻状态。5.:高8位数据总线允许/状态复用引脚(输出)在总线周期的T1状态,此引脚输出BHE信号,表示高8位数据线D15-D8上的数据有效。在T2、T3、TW和T4状态时,此引脚输出S7状态信号。S7:8086中无定义。

8088中,第34脚不是。在最大模式中,此引脚恒为高电平;在最小模式中,输出SS0信号,此信号与其它信号合作决定当前总线周期的读/写动作。、A0的代码组合和对应的操作(表4-3)A0

总线使用情况

00从偶地址单元开始,在16位数据总线上进行字传送

01从奇地址单元开始,在高8位数据总线上进行字节传送

10从偶地址单元开始,在低8位数据总线上进行字节传送

11无效01从奇地址单元开始,在16位数据总线上进行字传送10(第1个总线周期,将低8位数字送到AD15~AD8)

第2个总线周期,送高8位数字到AD7-AD0

基本应用控制类8086引脚信号引脚分类:(1)基本需要:电源、地、晶振(2)数据、地址:先看分组,再看各组I/O是否有复用(3)控制类A基本应用控制

复位

中断

片选

同步B扩展应用控制6.RESET(reset)复位信号引脚(输入)复位信号为高电平有效。8086/8088要求复位信号至少维持4个时钟周期的高电平才有效。复位信号来到后,CPU便结束当前操作,并对处理器标志寄存器、IP,DS,SS,ES及指令队列清零,而将CS设置为FFFFH。当复位信号变为低电平时,CPU从FFFF0H开始执行程序。7.NMI(non-maskableinterrupt)非屏蔽中断引脚(输入)非屏蔽中断信号是一个由低到高的上升沿。这类中断不受中断标志IF的影响,也不能用软件进行屏蔽。每当NMI端进入一个正沿触发信号时,CPU就会在结束当前指令后,进入对应于中断类型号为2的非屏蔽中断处理程序。8.INTR(interruptrequest)可屏蔽中断请求信号引脚(输入)可屏蔽中断请求信号为高电平有效CPU在执行每条指令的最后一个时钟周期会对INTR信号进行采样,如果CPU中的中断允许标志为1,并且又接收到INTR信号,那么,CPU就会在结束当前指令后,响应中断请求,进入一个中断处理子程序。9.INTA(interruptacknowledge)中断响应信号(输出)用来对外设的中断请求作出响应。电平特性:连续周期中的两个负脉冲,在每个总线周期的T2,T3和TW状态,INTA端为低电平。第1个负脉冲通知外部设备的接口,它发出的中断请求已经得到允许;外设接口收到第2个负脉冲后,往数据总线上放中断类型码,从而CPU便得到了有关此中断请求的详尽信息。10.RD(read)读信号引脚(输出)此信号指出将要执行一个对内存或I/O端口的读操作。到底是读取内存单元中的数据还是I/O端口中的数据,这决定于M/IO信号。在一个执行读操作的总线周期中,RD信号在T2,T3和TW状态均为低电平。在系统总线进入“保持响应”期间,RD引脚被浮置为高阻状态。11.WR(write)写信号(输出)WR有效时,表示CPU当前正在进行存储器或I/O写操作,具体到底为哪种写操作,则由M/IO信号决定。对任何写周期,WR只在T2,T3,TW期间有效。在DMA方式时,WR被浮置为高阻状态。12.READY(ready)“准备好”信号引脚(输入)READY是由所访问的存储器或I/O设备发来的响应信号,高电平有效,表示内存或I/O设备准备就绪,马上就可进行一次数据传输。CPU在每个总线周期的T3状态开始对READY信号进行采样。如果检测到READY为低电平,则在T3状态之后插入等待状态TW,在TW状态,CPU也对READY进行采样,若READY仍为低电平,则会继续插入TW,所以TW可以插入一个或多个。直到READY变为高电平后,才进入T4状态,完成数据传送过程,从而结束当前总线周期。13.TEST(test)测试信号引脚(输入)测试信号为低电平有效。TEST信号是和指令WAIT结合起来使用的,在CPU执行WAIT指令时,CPU处于空转状态进行等待;当8086的TEST信号有效时,等待状态结束,CPU继续往下执行被暂停的指令。14.MN/MX(minimum/maximummodecontrol)最小/最大模式控制信号引脚(输入)它是最大模式及最小模式的选择控制端。此引脚固定接为+5V时,CPU处于最小模式;如果接地,则CPU处于最大模式。4.3.2最小工作模式图4.88086最小工作模式的典型配置在8086的最小模式中,硬件包括:1片8284A,作为时钟发生器;3片8282或74LS373,用来作为地址锁存器;当系统中所连的存储器和外设较多时,需要增加数据总线的驱动能力,这时,要用两片8286/8287作为总线收发器。图4.118284A和8086/8088的连接1.ALE(addresslatchenable)地址锁存允许信号(输出)8086/8088提供给地址锁存器8282/8283的控制信号,高电平有效。在任何一个总线周期的T1状态,ALE输出有效电平,以表示当前在地址/数据复用总线上输出的是地址信息,地址锁存器将ALE作为锁存信号,对地址进行锁存。要注意ALE端不能被浮空。8282DI1DI2DI3DI4DI5DI6DI7DO1DO2DO3DO4DO5DO6DO7CLKDQDODI00STBOESTBDI0DI1直通保持高阻DO0DO1OE2.M/IO存储器/输入/输出控制信号(输出)高电平,CPU和存储器之间进行数据传输;低电平,CPU和输入/输出设备之间进行数据传输。一般在前一个总线周期的T4状态,M/IO就成为有效电平,然后开始一个新的总线周期。在此周期中,M/IO一直保持有效电平,直到本周期的T4状态为止。在DMA方式时,M/IO被浮置为高阻状态。8086最小工作模式下控制核心单元的组成地+5V读写控制读写控制读写控制CSH奇地址存储体8284时钟发生器RESETREADYCBD7~D0D15~D8DBCSL偶地址存储体CSI/O接口ABA0A1~A19BHE

STBOE8282锁存器8086CPUMN/MXINTARDCLKWRREADYM/IORESETALEBHEA19-A16AD15-AD0DENDT/RTOE8286

收发器D15~D03.DEN(dataenable)数据允许信号(输出)在用8286/8287作为数据总线收发器时,DEN为收发器提供了一个控制信号,表示CPU当前准备发送或接受一个数据。总线收发器将DEN作为输出允许信号。在每个存储器访问周期和I/O访问周期为低电平,即有效电平;在中断响应周期,也为有效电平。在DMA方式时,DEN被浮置为高阻状态。4.DT/R(datatransmit/receive)数据收发(输出)DT/R信号用来控制8286/8287的数据传送方向。如果DT/R为高电平,则进行数据发送;如果DT/R为低电平,则进行数据接收。在DMA方式时,DT/R被浮置为高阻状态。双向数据收发器8286内部结构8286A1A2A3A5A4A6A7B1B2B3B5B4B6B7A0B0OETOET传送方向01Ai→Bi00Bi→Ai11高阻状态10高阻状态功能表5.HOLD(holdrequest)总线保持请求信号(输入)当系统中CPU之外的另一个主模块要求占用总线时,就在当前总线周期完成时,于T4状态从HLDA引脚发出一个回答信号,对刚才的HOLD请求作出响应。同时,CPU使地址/数据总线和控制状态线处于浮空状态。总线请求部件收到HLDA信号后,就获得了总线控制权,在此后一段时间,HOLD和HLDA都保持高电平。在总线占有部件用完总线之后,会把HOLD信号变为低电平,这样,CPU又获得了地址/数据总线和控制状态线的占有权。6.HLDA(holdacknowledge)总线保持响应信号(输出)此信号为高电平有效。当HLDA有效时,表示CPU对其他主部件的总线请求作出响应,与此同时,所有与三态门相接的CPU的引脚呈现高阻抗,从而让出了总线。在最小模式下,8088和8086的第34脚的信号定义不同。对8086来说,第34脚为BHE/S7,由于S7未被赋予实际意义,所以,此引脚就是用来提供高8位数据总线允许信号。对8088来说,对外只有8位数据总线,没有高8位数据总线,因而也不需要BHE信号。所以,第34脚不再是BHE/S7,而叫SS0。SS0,M/IO(在8088中,第28脚上不是M/IO,而是/IO)和DT/R组合起来,决定了当前总线周期的操作。具体对应关系见P84,表4-44.3.3最大工作模式图4.128086最大工作模式的典型配置8086/8088CPU为实现多处理器控制系统(多主控系统)就要增设总线控制器8288和总线仲裁器8289。最大工作模式的典型配置如图4.12所示。这时,8086/8088的MN/MX引脚接地。

系统最大模式下重点弄清楚右边几个引脚的功能及应用1.QS1和QS0(instructionqueuestatus)指令队列状态信号(输出)

这两个信号提供总线周期的前一个状态中指令队列的状态。QS1QS0

指令队列状态信号00无操作

01从指令队列的第一个字节中取走代码

10队列为空

11从指令队列的第一个字节及后续字节中取走代码

2.S2,S1及S0总线周期状态信号(输出)它们三个提供当前总线周期中所进行的数据传输过程类型。由总线控制器8288根据这些信号对存储器及I/O进行控制。S2S1S0操作000发中断响应001读I/O010写I/O011暂停100取指令101读指令110写内存111无源状态3.LOCK(lock)总线封锁信号(输出)当LOCK为低电平时,其它总线主控部件都不能占用总线。在DMA期间,LOCK端被浮空而处于高阻状态。4.RQ/GT1,RQ/GT0总线请求信号(输入)/总线请求允许信号(输出)供CPU以外两个协处理器用来发出使用总线请求和接收CPU对总线请求信号的回答信号。这两个应答信号都是双向的。RQ/GT0的优先级比RQ/GT1的高。总线控制器8288AEN:地址允许信号,类似于ALE,由总线仲裁器发出CEN:片选IOB:控制系统总线还是I/O总线。为0时,8288工作于系统总线工作方式。多处理器控制系统共用一条外部总线,因而需要增加一个总线控制器及总线仲裁控制器来完成多处理器的分时控制。S2S1S0操作 8288命令000发中断响应 INTA001读I/O IORC010写I/O IOWCAIOWC011暂停

无100取指令 MRDC101读指令 MRDC110写内存 MWTCAMWC 111无源状态

无总线仲裁控制器8289图4.148289芯片的内部结构框图多处理器系统中必须采用8289配合8288来确定每一时刻的总线使用权赋给优先级别较高的处理器使用8289的IOB及RESB两控制信号可组成总线仲裁器的4种工作方式如下:(1)单一总线方式:当IOB=1及RESB=0时,8289工作于单一总线方式。这时系统中只有一个处理器,8289随时监视着总线状态。只要处理器不处于HALT状态,并且当前BPRN有效及BUSY无效,则这个处理器就可使用总线。(2)I/O总线方式:当IOB=0及RESB=0时,8289工作于I/O总线方法。这时系统中都有输入/输出处理器8089。主处理器执行系统存储器中的主控程序,8089执行驻留存储器中的I/O处理程序,两者可并行操作。(3)驻留总线方式:当IOB=1及RESB=1时,8289工作于驻留总线方式。在这种系统中,处理器可访问系统总线也可访问驻留总线。SYSB/RESB=1时,CPU为访问系统总线上的存储器或I/O设备,当SYSB/RESB=0时,CPU为请求使用驻留总线。但两条总线上各设一个总线控制器8288,分别来发出各条总线上的访问存储器或I/O端口命令。(4)I/O总线和驻留总线方式:当IOB=0及RESB=1时,8289上SYSB/RESB=1,为CPU请求使用系统总线,只访问系统总线上的存储器而不访问I/O端口,若需访I/O端口时则可使用I/O总线进行。8089优先级裁决1、并行优先级裁决(1)并行优先级裁决。所有8289的总线请求BREQ信号并行引入优先级编码器,它将当前级别最高的BREQ的二进制编码向译码器输出。译码器将相应的总线优先级输入(BPRN)信号送至当前级别最高的8289。若当前BUSY为高电平,则该8289可使用系统总线,并立即将BUSY置成低电平,来禁止其他8289再使用系统总线。2、串行优先级裁决(2)串行优先级裁决方式。串行优先级裁决的典型电路如图4.16所示。图中4个8289按优先级的顺序,把它们上一级的BPRO与下一级BPRN链接起来,优先级最高的8289的BPRN端接地。在总线空闲时,所有的BPRO及BPRN端均为低电平。当任何一个8289要求使用系统总线时,只要它的BPRN=0,且当前BUSY=1,即表示比它优先级高的8289未申请使用总线,则它便可获得系统总线使用权。当这个8289使用总线后,即输出BPRO为1,将比它低的所有8289的BPRN置成高电平,禁止它们再使用总线,串行优先级裁决方式不需要增加任何设备,但响应速度受到限制。要求从最高优先级的8289输出BPRO到最低优先级的BPRN输入的延迟时间不超过一个总线时钟周期。在BCLK频率为10MHz时,最多允许链接3片8289。3、循环优先级裁决方式。循环优先级裁决电路与并行方式相似。当该8289取得一次使用系统总线权后,就把最低优先权赋给这一级,把最高优先级赋给原来比它低一级的8289。这种裁决方式能使各个8289具有平等使用总线的权利,因此称做循环优先级裁决。4.48086/8088的主要操作功能4.4.1系统的复位和启动操作4.4.2总线操作4.4.3中断操作4.4.4最小工作模式下的总线请求4.4.5最大工作模式下的读/写操作4.4.1复位和启动图4.178086/8088的启动和复位信号3)复位电平:复位信号(RESET)至少有4个时钟周期的高电平,如果是初次加电的启动,则要求有大于50μs的高电平。寄存器名称寄存器状态标志寄存器(FR)指令指针寄存器(IP)CS段寄存器DS段寄存器SS段寄存器ES段寄存器指令队列其它寄存器清零0000HFFFFH0000H0000H0000H空0000H8086/8088复位:1)复位过程2)复位内容:三态门、内部寄存器4.4.2总线操作图4.188086/8088最小工作模式总线读/写操作的时序4.4.3中断操作一学生在宿舍看书,现在有下面几件事需要办:去拿回落在实验室的书本去开水房打开水同学邀请一起去逛街……中断的实质:在资源冲突时优先权的选择一、中断原理执行主程序主程序继续执行主程序断点中断请求中断响应执行中断处理程序中断返回二、中断概念分时操作实时响应可靠性高CPU可以分时为多个I/O设备服务,提高了计算机的利用率CPU能够及时处理应用系统的随机事件,系统的实时性大大增强;CPU具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。三、中断优越性四、中断源引起中断的原因或能发出中断申请的来源称为中断源。一般的输入/输出设备(如键盘、打印机)数据通道中断源(磁盘、磁带等)实时时钟故障源(如电源掉电)为调试程序而设置的中断源(断点和单步执行)五、8086中断源图4.198086/8088的中断分类硬件中断(1)非屏蔽中断中断请求NMI特点:对NMI请求的响应不受中断标志位IF的控制中断矢量号为2NMI中断优先级别高于可屏蔽中断用

温馨提示

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

评论

0/150

提交评论