微处理器与系统结构课件_第1页
微处理器与系统结构课件_第2页
微处理器与系统结构课件_第3页
微处理器与系统结构课件_第4页
微处理器与系统结构课件_第5页
已阅读5页,还剩111页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章 微处理器和 系统结构1本章内容提要 本章主要介绍微处理器(CPU)的主要组成部分及各部分功能 Intel 8086微处理器组成结构、引脚信号及功能 X86系统组成2第一节 微处理器的基本结构3微处理器的主要组成部件微处理器(CPU)由下列主要部分组成:算术逻辑单元 ALU控制器寄存器阵列总线和总线缓冲器 高性能的CPU还有:指令预取部件,指令译码部件、 地址形成部件、存储器管理部件等。 4一、算术逻辑运算单元(ALU)ALU是对二进制数进行算术逻辑运算的基本部件。数据加工处理可归纳为两种基本运算: 算术运算,逻辑运算。5一、算术逻辑运算单元(ALU)(续) 算术运算: 可进行无符号数和

2、带符号数的加、减、乘、除 运算,符号数采用补码表示,减法通过求负数的补码 而变成加法运算。还可进行BCD码运算。 乘、除可以通过多次重复加、减和移位实现。 6一、算术逻辑运算单元(ALU)(续)例如:13 11=143=8FH 1 1 0 1 采用部分积左移和加法 1 0 1 1 可完成二进制乘法。 1 1 0 1 1 1 0 1 部分积左移 0 0 0 0 + .1.1.0.1 1 0 0 0 1 1 1 17一、算术逻辑运算单元(ALU)(续) 逻辑运算:可完成逻辑“与”、“或”、“非”、“异或”、“移位”等基本的逻辑运算。 浮点运算:浮点数可以看作是由两个定点数组成,尾数与阶码。在对阶后

3、可以对尾数进行运算。 浮点数运算可以用软件实现。也可以专门生产浮点运算部件和浮点微处理器,并设有专门的浮点运算指令,可进行32位或64位浮点加、减、乘、除运算。 Pentium处理器已把浮点处理器与主处理器集成到一个芯片上。 早期的浮点处理器有:8087、80287、80387协处理器。8一、算术逻辑运算单元(ALU)(续) ALU原理框图如下:9二、控制器 CTRL是发布操作命令的部件,操作的顺序需要精确的定时,其内部主要组成如下: 1、指令部件 包括程序计数器(PC),指令寄存器(IR),指 令译码器(ID)。 2、时序部件 包括时钟系统,脉冲分配器。 3、微操作控制部件 可采用组合逻辑控

4、制,微程序控制和可编程逻辑阵列(PLA)来实现。10二、控制器(续)控制器的组成框图(图2.2)11二、控制器(续) 时钟周期(T state):主时钟的两个脉冲前沿的时间间隔称为一个时钟周期,又称为T状态。它CPU操作的最小时间单位。 机器周期:由25个T状态组成一个机器周期(Machine Cycle),称为M周期,又叫做总线周期,用来完成一个基本操作,如 MEM读/写,I/O读/写等。 指令周期:一条指令(的取出和)执行所需的时间称为指令周期(Instruction Cycle),一条指令执行需15个M周期。12二、控制器(续)M2M5CLKT4T3T1T2 M1机器周期 指令周期(包括

5、15个机器周期)指令周期、机器周期与时钟周期的关系如下图13二、控制器(续)微操作控制部件: 根据指令产生计算机各部件所需要的控制信号,如传送、加减、逻辑运算等,由译码 器输出、节拍发生器输出等进行组合而产生,完成指令所规定的全部操作。 14二、控制器(续)该部件可采用:组合逻辑控制(控制信号采用组合逻辑电路设计实 现);微程序控制(若干微指令组成的微程序); 可编程逻辑阵列(PLA、EPLD等) PLA(Programmable Logic Array) EPLD(Electrically Programmable Logic Device)等方法实现。15三、总线与总线(缓冲器)部件 所谓

6、总线是指计算机中传送信息的一组通信线,将多个部件连成一个整体。可以简单分为: 片内总线:在CPU内部或部件内部各单元之间传送信息的总线(又可细分为单总线、双总线(输入/输出BUS)、多总线结构); 片外总线:CPU与外部部件之间传送信息的总线。 片外总线又称为系统总线,通常系统总线分为地址总线、数据总线、控制总线,即所谓三总线结构。16三、总线与总线(缓冲器)部件(续) 因为多个部件均挂在总线上,但各部件工作情况并非完全一样(有的作为信源发,有的作为接收器收)。 由于数据或信息代码是用电位高低来表示,若某一时刻有几个部件同时向BUS发送数据,则BUS上的情况就成为不确定的了,电路也可能被烧毁。

7、 所以同一时刻只允许一个部件向BUS发送信息。 而接收数据就没有上述限制,同一时刻可允许多个部件接收数据。17三、总线与总线(缓冲器)部件(续) 总线缓冲器:在工作过程中,常常要求挂在BUS上的某些部件在电气连接上与BUS “脱开”,使这些部件对BUS上其它部件的工作不产生影响,为此,可在部件内部设置三态缓冲器。 DATA3态BUFBUS; 三态缓冲器(3态BUF)处于: 低阻(高低电平)挂BUS上; 高阻逻辑上脱开。18三、总线与总线(缓冲器)部件(续)“脱开”状态: 处于高阻状态,开路状态,浮空状态; 逻辑上“脱开”,物理上仍连在一起。总线缓冲器分为:单向三态缓冲器,如地址总线缓冲器只发地

8、址信息, (地址BUS是单向的);双向三态缓冲器,如数据总线缓冲器,既可发又可 收数据(数据BUS是双向的)。19三、总线与总线(缓冲器)部件(续) 采用总线结构的优点是: 减少信息传输线数目; 提高系统的可靠性; 增加系统灵活性; 便于实现系统标准化。20四、寄存器阵列(Register Array) 在CPU内部,有一个临时存放地址和数据的寄存器阵列。这个阵列因CPU的不同而不同,有的称寄存器堆,寄存器多少有差别,但其功能相似。 寄存器阵列大致分为以下四组: 存放待处理数据的寄存器; 存放地址码的寄存器; 存放控制信息的寄存器; 起数据或地址缓冲器作用的寄存器。21四、寄存器阵列(Regi

9、ster Array) (续)存放地址的寄存器指令指针(IP)或程序计数器(PC:Program Counter);堆栈指示器(SP: Stack Pointer);其它可存放地址的寄存器(Register), 例如变址REG、基址REG。存放数据的REG累加器(AC: Accumulator);通用REG组,A,B,C,D等。22四、寄存器阵列(Register Array) (续)存放控制信息的REG指令寄存器(IR: Instruction Register)指令代码;标志寄存器(FR: Flag Register),通常设有SF、ZF、AF、PF、CF、OF、IF、DF等标志。起数据缓

10、冲作用的REG数据总线缓冲REG(DBUF:Data BUS Buffer);地址总线缓冲REG (ABUF:Address BUS Buffer )。 三态,单向,内外部地址BUS之间缓冲。23第二节 Intel 8086微处理器 248086 微处理器 8086是一种单片微处理器芯片,内外部数据总线16位,对外40条引脚,主时钟5MHz、 8MHz、10MHz等。 20条地址引脚,直接寻址220 =1MByte,可访问64K个I/O端口,具有24种寻址方式,可以对位、字节、字、字符串、字串、BCD码、ASCll码等多种数据类型进行处理。25一、8086 的寄存器阵列 CPU内部有4组REG

11、,共14个16位REG供编程人员使用。通用REG组 AX 主累加器 BX 累加器或基址REG CX 累加器或计数器 DX 累加器或I/O地址REGAHALBHBLCHCLDHDL26一、8086 的寄存器阵列(续) 指针与变址REG组 堆栈指针 基址指针 源变址器 目的变址器SPBPSIDI变址REG指针REG27一、8086 的寄存器阵列(续) 3. 段REG组 代码段 数据段 堆栈段 附加段 段REG是存放内存地址的高位地址,地址形成是由段寄存器地址左移4位加上对应的偏移量。CSDSSSES28一、8086 的寄存器阵列(续)例如:被取指令的地址为CS左移4位加上IP的值。 若CS =20

12、00H,IP=0100H 则指令地址为 2 0 0 0 0 H + 0 1 0 0 H 2 0 1 0 0 H SS段与SP或BP对应; DS/ES与SI、DI、BX等结合使用,串操作时有约定。29一、8086 的寄存器阵列(续) 4. 控制REG 指令指针 标志REG IPFRH FRL30二、8086 CPU的功能结构 8086 CPU按功能可分为两大部分: 一部分为BIU(BUS Interface Unit); 专门负责取指令和存取操作数。它与BUS打交道。 一部分为EU(Execution Unit)。 专门负责分析指令与执行指令。它不与系统BUS 打交道。 31二、8086 CPU

13、的功能结构(续) 8086CPU的功能结构32二、8086 CPU的功能结构(续) BIU与外部总线打交道,负责取指令、读写操作数、地址转换与总线控制; EU负责指令译码与执行指令的工作。 取指令与执行指令操作是并行的,提高了CPU的利用率,这种重叠操作技术,提高了整个系统的运行速度。33二、8086 CPU的功能结构(续) 早期的计算机取指令、执行指令是按照时间顺序进行的。而8086 CPU 是二者并行同时操作的。如图: t队列BIUEU t 重叠执行指令的过程取指1执行1取指2执行212,33,4,54,5,6取指令1取指令2取指令3读数据等待执行1执行2执行334二、8086 CPU的功

14、能结构(续)BIU总线接口单元 8086CPU与外设的接口部件,提供16位数据总线与20位地址总线。内部由段REG、IP、内部通信REG、指令队列、地址加法器和总线控制逻辑等组成;完成取指令、指令排队、读/写操作数、地址转换与总线控制等工作;队列为先进先出的原则组织FIFO(First In FirstOut),实现流水线操作,高性能CPU更是如此。8086有6个Byte指令队列;需要两个指针,OUT与IN指针;35二、8086 CPU的功能结构(续)当遇到BIU正准备取指令而 EUBIU申请读/写 MEM或 I/O时,则先取指令,后读/写操作数;当队列中当前有两个字节空间时,BIU顺序预取指

15、令并填满队列;当遇到CALL、JMP、INT n等指令时,先把 IP 压入堆栈,再清除队列,再重新取满队列; 36二、8086 CPU的功能结构(续)EU执行单元组成:ALU、FR、8个通用REG、暂存器、队列控制逻辑与时序控制逻辑(EU控制器)等;完成工作:指令译码与执行指令;EU没有连接到总线上,所以对系统总线来说,它是“外界”的。37三、8086 CPU引脚及其功能8086CPU 引脚图38三、8086 CPU引脚及其功能(续)AD15 AD0 : (地址/数据复用信号) 16条,双向,三态地址/数据线,输入/出信号,多路开关,分时复用(低16位地址线与16位数据线公用这些引线),从时间

16、上加以区分。 在T1周期,输出MEM或I/O口地址,T2 T4则为数据收发信号。39三、8086 CPU引脚及其功能(续)A19 / S6 A16 / S3 : 地址/状态输出信号,三态T1时,作为MEM的A19 A16地址信号(访问I/O 口时,保持低电平);T2 T4时,输出状态信息;S5 :中断允许标志位状态(IF);S4与S3:现行使用哪个段REG;40三、8086 CPU引脚及其功能(续)S4与S3编码性能对应的段REG0 0附加数据ES0 1堆栈段SS1 0代码段CS1 1数据段DS S6指示哪个处理器在使用总线: S6 =0,8086使用; S6 =1,其它处理器使用。41三、8

17、086 CPU引脚及其功能(续)BHE/ S7 :允许高字节传送/状态输出在T1状态, BHE在高8位数据总线D15 D8上传送 一个字节数据;BHE与A0把存储器分为两组(高组与低组):S7状态信号没定义。BHEA0状态0 016位数据01高8位( D15 D8 )10低8位( D7 D0 )11保留不用42三、8086 CPU引脚及其功能(续)RD 读信号,输出 读MEM或I/O操作,由M/IO引脚决定是读M还是I/O口:M/IO=1,读MEM; M/IO=0,读I/O口。READY:(输入)外部器件发回的准备就绪信号 由MEM或I/O口发回的应答信号,CPU在T3的上升沿检测该信号,若为

18、高,则准备就绪,不插入Tw ;若为低,则未准备好,插入Tw ;系统规定可插入不超过10个Tw 。43三、8086 CPU引脚及其功能(续)INTR:(Interrupt)可屏蔽中断请求信号(IN),高电平有效触发的输入信号,由外部设备发来; 该信号是在每一指令周期的最后一个T状态被采样,以决定是否进入中断响应周期。 可用软件屏蔽(CLI指令使IF=0)。7. NMI:非屏蔽中断请求信号(IN) 边沿 触发信号,若有 NMI 请求,则现行指令结束后立即引起中断。 该信号不能用指令屏蔽,其检测时间与INTR一样。44三、8086 CPU引脚及其功能(续)TEST:检测信号(IN) 该信号由8087

19、发来,在WAIT指令执行期间,CPU监视TEST信号。若TEST为低电平,8086继续执行WAIT的下一条指令,否则CPU处于等待(空闲)状态,且重复测试TEST信号;TEST为高时,处于WAIT状态,TEST低电平时退出WAIT状态。 8086CPU8087TEST BUSY45三、8086 CPU引脚及其功能(续)RESET:复位信号(IN),高有效 该信号使CPU结束现行操作,初始化内部REG,CPU复位后: CS=FFFFH IP=0000H DS=0000H ES=0000H SS=0000H FR=0000(禁止中断)指令队列空,复位后执行的第一条指令在内存的FFFF0H(引导程序

20、的入口地址),用JMP可转到实际开始处。 CLK:时钟,Vcc与GND:电源与地(IN) 46三、8086 CPU引脚及其功能(续)MN/MX:最小最大组态控制信号(IN) 当MN/MX=0,为最大组态,构成多处理器系统; 在最大组态时,控制信号由S2S0经总线译码器8288译码产生。 当MN/MX=1,为最小组态,构成单处理器系统,CPU提供所有的总线控制信号。 MN/MX的接法决定了8个引脚(2431)之功能。47三、8086 CPU引脚及其功能(续) 当MN/MX=Vcc(最小组态)时,各引脚功能:INTA:中断响应信号(OUT) 是INTR的应答信号,在中断响应时发两个INTA周期。A

21、LE:地址锁存允许信号(OUT) (Address Latch Enable) 把地址/数据、地址/状态线上的地址信号锁存到地址锁存器中,ALE在T1状态有效。48三、8086 CPU引脚及其功能(续)M/IO:MEM与I/O控制信号(OUT) 决定访问的是MEM或者是I/O: M/IO=1,访问MEM; M/IO=0,访问I/O口。WR:写信号(OUT) 用来表示CPU处于写MEM或者I/O口(与M/IO配合使用)。 49三、8086 CPU引脚及其功能(续)DT/R:数据收发信号(双向,三态) 增加数据总线的驱动能力,采用外加总线驱动器(收发器8286/8287)。当 DT/R=1,发送;

22、 DT/R=0,接收。 DEN:数据允许信号(Data Enable)(OUT) 作为总线驱动器8286/8287芯片的输出允许信号(OE)。50三、8086 CPU引脚及其功能(续)HOLD(IN)与HLDA(OUT):总线请求保持 与总线响应保持信号 总线请求HOLD是由其它主设备发送给CPU; CPU检测HOLD的时间: 在每一个总线周期的最后一 个T状态。 总线响应HLDA作为CPU对HOLD之应答,并让出总线控制权。51三、8086 CPU引脚及其功能(续) 当MN/MX=0(最大组态)时,各引脚功能:S2、S1、S0 :总线周期状态信号(OUT) 此三状态信号由总线控制器8288译

23、码产生CPU所需的各种控制信号,共产生8个控制信号。主要有: 存储器读写; 中断响应INTA(ALE,DEN,DT/R); I/O口读写等控制信号。52三、8086 CPU引脚及其功能(续) RQ/ GT0,RQ/ GT1:(Request/Grant) 总线请求(IN)/总线允许(OUT) 每一引脚都是双向的,既可作为总线请求,又可 作为总线响应信号。外部主设备发来的请求信号为 输入,CPU响应时为输出。 若有两个主设备同时请求时 , RQ/ GT0比 RQ/ GT1级别高。53三、8086 CPU引脚及其功能(续)LOCK:总线锁定信号(OUT) 该信号由前缀指令“LOCK”使其生效,且一

24、直保持到下一指令执行完,以使得外部总线主控设备不能获得对系统总线的控制权。54三、8086 CPU引脚及其功能(续)QS1,QS0: 指令队列状态信号(OUT) 让外部设备能监视CPU内部指令队列状况。 编码如下:QS1QS0含义00无操作01来自队列中指令代码的第一个字节10队列空11来自队列的后续字节55第三节 8086 中的标志 寄存器和堆栈 56一、标志寄存器(Flag Register) 8086CPU中有一个16位的标志寄存器(FR),共设有9个标志位,用以反映算术、逻辑运算结果的特征及反映CPU的控制,有7位无用。 不同的指令对标志的影响是不同的(如传送类、转移类等指令不影响标志

25、位,而算术逻辑运算大部分都影响标志位);反之,不同的标志也影响着指令执行的结果。 57一、标志寄存器(Flag Register)(续) 其中6个状态标志:CF、PF、AF、ZF、SF、OF 3个控制标志:IF、DF、TF。 有7位空的未用。OFDFIFTFSFZFAFPFCF 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 058一、标志寄存器(Flag Register)(续)CF:进位标志(Carry Flag) 当运算的结果在最高位(8位,16位)上产生一个进位或借位时,CF=1;反之,CF=0。PF:奇偶标志(Parity Flag) 当运算结果低8位中“1”

26、的个数为偶数时,PF=1;为奇数时,PF=0。59一、标志寄存器(Flag Register)(续)AF:辅助进位标志(Auxiliary Carry Flag) 在算术运算中,当一个8位(或16位)数的低4位向高4位(即b3位向b4位)有进位或借位时,AF=1;反之,AF=0。此标志用于BCD码运算指令中。ZF:零标志(Zero Flag) 当运算结果为全“0”时,ZF=1;反之,ZF=0。60一、标志寄存器(Flag Register)(续)SF:符号标志(Sign Flag) 当运算结果的最高位为“1”时,SF=1;反之,SF=0。OF:溢出标志(Overflow Flag) 在算术运算

27、中,符号数的运算结果超出8位或(16位)符号数表达的范围,OF=1;反之,OF=0。(8位:-128+127;16位:-32768+32767) 溢出与进位是两个不同性质的标志,一个反映符号数,一个反映纯数值。61一、标志寄存器(Flag Register)(续)此外还设有3个控制标志:DF:方向标志(Direction Flag) 用于控制字符串操作指令的步进方向。 当DF=0时,表示从低址向高址以递增顺序进行串处理;当DF=1时,表示从高址向低址以递减顺序进行串处理。62一、标志寄存器(Flag Register)(续)IF:中断允许标志(Interrupt enable Flag) 当I

28、F=1时,允许中断;当IF=0时,禁止中断。 该标志可用指令STI或CLI使其置1或0。 IF标志对 NMI 信号或由内部中断(INT n)无 作用。63一、标志寄存器(Flag Register)(续)TF:陷阱或跟踪标志(Trap Flag) 当TF=1时,CPU进入单步工作方式,每执行完一条指令就自动产生一个内部中断,以便进行程序调试。当TF=0时,连续执行程序。 (没有专门的指令使TF置1或0)64二、堆栈什么是堆栈? 堆栈是一个按照后进先出(LIFO Last In First Out)的原则存取数据的部件或区域。 硬件堆栈:内部寄存器作为堆栈,工作速度快,容量不大: 软件堆栈:用内

29、存作为堆栈,工作速度慢,容量大,内存有多大,堆栈就有多大,堆栈由一个堆栈指针 SP 和一个栈区组成。65二、堆栈(续)为什么要用堆栈? 主程序与子程序,主程序调用子程序,或者子程序调用子程序,或者处理中断服务程序,CPU必须把主程序调用子程序指令的下一条指令的地址(或中断时的断点)即PC值保留下来,才能保证子程序(或中断服务程序)执行完之后正确返回到主程序继续执行。 另外,调用子程序之前的有关REG、标志位也要及时正确的保存下来。66二、堆栈(续)堆栈如何操作? 堆栈必须设有一个区域(栈区),还需一个指针(SP),指示栈在什么位置。8086与栈有关的寄存器是SS和SP。 SS:标识现行堆栈的基

30、地址; SP:标识现行堆栈的段内偏移量。 8086中的栈是“向下生成”的栈,即随着入栈数据增加,SP值减小。有些处理器或单片机还有“向上生成”的栈。67二、堆栈(续) SP值由指令MOV SP,data设定初值。 空栈时,栈顶与栈底是重合的,随着压入栈中数据增加,堆栈扩展,SP减小,SP始终指向栈顶。 堆栈操作有专门的指令 PUSH 与 POP 。 8086的入栈与出栈弹出操作每次是一个字,而不是一个字节。68二、堆栈(续)举例:若SS=1200H,SP=1000H,执行PUSH AX (设AX=1234H),看栈针与栈中的内容。 先修改栈针,再压入数据,先压入高字节,后压入低字节。分两步:

31、1. 先SP1SP,压入高位字节(即AH内容); 2. 再SP1SP,压入低位字节(即AL内容)。69二、堆栈(续) 压入堆栈操作如图: SS16+SP 12000H + 1000H 13000H 3412 低址 高址 SP=1000H SP10FFFH SP10FFEH M12FFEH12FFFH13000 HAX=12 34(2)(1)70二、堆栈(续)出栈操作与入栈操作相反: 1. 先弹出低位内容, 修改SPSP+1; 2. 再弹出高位内容,再修改SPSP+1;注:CALL与RET中保护断点与恢复断点是由指令自动完成的。71二、堆栈(续)举例:若SS=1500H,SP=1000H,执行P

32、OP BX (设栈中数据=5678H),看栈针与栈中的内容 如何变化。 弹出也分为两步: 先弹出低8位(78H BL ),修改栈针, SP+1SP ; 再弹出高8位(56H BH ),再修改栈针,SP+1SP ; 执行 POP BX 指令后,BX=5678H, SP=1002H, SS=1500H, 堆栈中的数据仍然不变。 72二、堆栈(续)弹出操作如下图: SS16+SP 15000H + 1000H 16000H 7856 低址 高址 SP=1000H SP+11002H SP+11001H M16000H16001H16002HBX=BH BL 56 78(1)(2)73第四节 8086

33、 系统的组成 74一、存储器的组织与分段存储器组织 8086有20位地址线,寻址范围1M字节(从00000HFFFFFH),每一单元都有一个唯一的物理地址,每个单元存储一个字节,任何两个相邻单元可存放一个字(word)。 80386Pentium处理器都是32位的地址,寻址范围为232=4GBytes =(4096MB)。75一、存储器的组织与分段76一、存储器的组织与分段77一、存储器的组织与分段78一、存储器的组织与分段(续)几个基本概念: 字节地址对应的单元地址; 字地址两个地址中低址作为字地址; 字符串地址低字节存放在低址单元,高字节存放在高址单元。79一、存储器的组织与分段(续)例1

34、:把5678H写入1002H单元。 78H1002H 56H1003H7856M1002H 1003H80一、存储器的组织与分段(续)例2:把字串12345678H写入1000H单元。 781000H 121003H 读:从1002H读出时,读一个字节是34, 读一个字是1234; 从1001读出一个字是3456H,但读 奇址的字时,需访问内存两次,忽略掉 78H与12H;读写字节时每次数据总线上 仍是16位,忽略掉另一个字节。 请参看P47 图2.15,8086从存储器中读、写字与字节示意图 78563412M100010011002100381一、存储器的组织与分段(续)存储器分段分段原因

35、:CPU内没有设置20位的地址寄存器,只有16位的寄存器,16位寄存器无法存放20位地址,所以把20位地址分为基地址(段)和偏移量;分别存放在两个16位寄存器中。 好处是:程序区、堆栈区和数据区可以互相隔离,方便程序的再定位。 允许段重叠:根据情况,段与段之间可以重叠,几个段可以在一个64K段内,但各段的起始地址是不同的。82一、存储器的组织与分段(续) 8086系统存储器分段示意图 83一、存储器的组织与分段(续) 存储器的实际地址就是物理地址(或绝对地址)20位;存储器的逻辑地址是段基址和16位偏移量组成。 因为段REG为16位,所以每64KByte为一段。 实际地址是由段地址左移4位加上

36、所对应的16位地址偏移量。 CPU中的BIU中有一个20位地址加法器,用来形成20位的物理地址。(段自动左移4位与偏移量相加)84一、存储器的组织与分段(续)8086物理地址的形成85一、存储器的组织与分段(续) 不同的逻辑地址可以变换成同一个物理地址,反之亦然。例如:物理地址为 25000H 逻辑地址:段基址为2000H,偏移量5000H 段基址为2100H,偏移量4000H 段基址为2200H,偏移量3000H86二、输入/输出结构 8086可访问8位I/O端口或16位I/O端口,若直接寻址方式寻I/O端口,用8位地址,可访问28=256个端口地址;若用间接寻址方式寻I/O,用16位地址,

37、可访问216=64K个端口地址;间接寻址通过DX寄存器,I/O端口不设段REG,可以认为全部端口都在同一个段内。 8086系列的处理器设有专门的I/O指令 (即IN和OUT指令)。87三、总线接口部件介绍两种常用的总线接口部件:地址锁存器和总线驱动器。下面是本教材(采用国际符号)和某些教材的逻辑门电路符号对照表88三、总线接口部件(续)地址锁存器(8282)(或74LS373) 8282(或373)是带三态输出缓冲器的8位双向锁存器。 选通信号:STB(Strobe)把输入 数据锁入锁存器。 ALESTB OE为输出允许信号,当其为低时, 数据就出现在数据线上; OE=1时,锁存器处于高阻。8

38、9三、总线接口部件(续)带三态缓冲的8位数据锁存器82828282内部结构STB:选通脉冲OE:为0时输出有效 为1时输出为高阻90三、总线接口部件(续)双向总线驱动器(总线收发器) 数据锁存不是必须的,但在较大的系统中,由于使用的存储器和I/O接口数量较多,为了增加CPU数据总线带负载的能力,一般接入总线驱动器以提高数据总线带负载之能力。91三、总线接口部件(续) 8286(或74LS245)是8位总线驱动器(双向) T是控制收发方向的输入控 制信号: T=1,AB; T=0,BA; OE=0,输出允许信号; OE=1,8086是高阻。 8286可以提供32mA驱动。92三、总线接口部件(续

39、)带三态的8位双向数据缓冲器82868286内部结构图93四、8086的两种组态最小组态: CPU提供所有的总线控制信号,以实现与MEM和I/O接口的连接。(最小组态如下图)948086最小模式95四、8086的两种组态(续)最大组态: 当MN/MX=0时,8086组成最大组态,以组成多处理器系统。在此组态下,一些系统资源由多个处理器所公用,它们被称为全局资源;另一些资源为某个处理器所专用的,称为局部或专用资源。 96四、8086的两种组态(续) 在多处理器系统中,任何时刻只能有一个处理器访问总线,采取的措施是:总线控制器(8288)(产生命令和控制时序,提供总线驱动能力) 8288对8086的三个总线状态信号( S0、S1、S2 )进行译码,以产生与多总线结构兼容的各种定时命令和控制信号。译出8种信号,111时不用(无源),还有7种作为命令信号,请参看下表。97四、8086的两种组态(续)总线状态码与输出命令对应表98四、8086的两种组态(续) (1)8288总线控制器99四、8086的两种组态(续) 8288提供超前写命令(AMWC、AIOC): 即在写周期开始之前就启动写过程,其时序与读 命令相同,在一定程度

温馨提示

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

评论

0/150

提交评论