第2章16位和32位微处理器 2.116位微处理器80868088 2232位微处理器80386
第2章 16位和32位微处理器 2.1 16位微处理器8086/8088 2.2 32位微处理器80386
210简介 8086:16位微处理器 采用单一的+5V电源和40条引脚的双列直插式封装;时钟频 率为5MHz10MHz,最快的指令执行时间为0s ■8086有16根数据线和20根地址线,可以处理8位或16位数据, 可寻址2即IMB的存储单元和64KB的ⅣO端口。 8088:准16位微处理器 设计的主要目的是为了与nte原有的8位外围接囗芯片直接 菲容。 ■8088的内部寄存器、运算器以及內部数据总线都是按16位设 计的,但外部数据总线只有8条,因此执行相同的程序, 808ξ要比8086有较多的外部存取操作而执行得较慢
2.1.0 简介 ➢ 8086:16位微处理器 ◼ 采用单一的+5V电源和40条引脚的双列直插式封装;时钟频 率为5MHz~10MHz,最快的指令执行时间为0.4µs。 ◼ 8086有16根数据线和20根地址线,可以处理8位或16位数据, 可寻址2 20即1MB的存储单元和64KB的I/O端口。 ➢ 8088:准16位微处理器 ◼ 设计的主要目的是为了与Intel原有的8位外围接口芯片直接 兼容。 ◼ 8088的内部寄存器、运算器以及内部数据总线都是按16位设 计的,但外部数据总线只有8条,因此执行相同的程序, 8088要比8086有较多的外部存取操作而执行得较慢
2118086/8088CPU的内部结构 图2.1 1总线接口部件BIU 2执行部件EU 3BIU和EU的流水线管理
2.1.1 8086/8088 CPU的内部结构 图2.1 1 总线接口部件BIU 2 执行部件EU 3 BIU和EU的流水线管理
图218086微处理器内部结构图 通用寄存器 AB AL AX 1地址 (20位) 数据丿BH"BLBX 加法器 寄存器CH CL CX DL DX SP (16位) 指针和变 BP 址寄存器Sl P ALU 数据总线 内部寄存器 8086总线 总线控 (16位)1 制电路 (16位数据总线) 暂存寄存器 (8位) ALU 控制电路T 123456 队列 总线指令队列缓冲器 (8位) 标志寄存器 执行单元(EU) 总线接口单元BIU) 图2.18086微处理器内部结构图
图2.1 8086微处理器内部结构图
1总线接口部件BIU图2 功能 负责CPU与内存或ⅣO端口传送指令或数据 访问存储器时,需要生成20位的物理地址 要不断从内存中取指令并送到指令队列 CPU执行指令时,要配合执行部件EU从指定的内 存单元或者外设端口中取数据,并将数据传送给 EU;或把执行部件EU的操作结果传送给指定的 存储器或者IO设备 组成:段客存器、指令指针寄存器、地址加法器、 指令预取队列及总线控制逻辑
1.总线接口部件BIU ➢ 功能 负责CPU与内存或I/O端口传送指令或数据。 ❖ 访问存储器时,需要生成20位的物理地址 ❖ 要不断从内存中取指令并送到指令队列 ❖ CPU执行指令时,要配合执行部件EU从指定的内 存单元或者外设端口中取数据,并将数据传送给 EU;或把执行部件EU的操作结果传送给指定的 存储器或者IO设备 ➢ 组成:段寄存器、指令指针寄存器、地址加法器、 指令预取队列及总线控制逻辑。 图2.1
1)段寄存器图21 所有寄存器都是16位的,因此,能够提供的最大地 址空间只能为64KB。 >地址总线是20位,可以寻址1MB存储器空间,所以 将存储器的空间分成若干段,每段最大为64KB 段寄存器:用来存放段的起始地址(16位)的寄存器, 设有四个段寄存器 CS代码發寄存器( Code segment register) ■DS数据段寄存器( Data Segment register) ■SSs堆栈段寄存器( Stack Segment register ES附加数据段寄存器( Extra Segment register
1)段寄存器 ➢ 所有寄存器都是16位的,因此,能够提供的最大地 址空间只能为64 KB。 ➢ 地址总线是20位,可以寻址1MB存储器空间,所以 将存储器的空间分成若干段,每段最大为64KB。 ➢ 段寄存器:用来存放段的起始地址(16位)的寄存器, 设有四个段寄存器: ◼ CS 代码段寄存器(Code Segment register) ◼ DS 数据段寄存器(Data Segment register) ◼ SS 堆栈段寄存器(Stack Segment register) ◼ ES 附加数据段寄存器(Extra Segment register) 图2.1
2)地址加法器图21 作用:根据提供的16位信息产生20位地址 16位 CS左移4位囗□ 20位 囗∏口P或偏移 已知:代码段寄存器CS存放当前代码段基地址,IP指令指针寄 存器存放了下一条要执行指令的段内偏移地址,其中CS=2000H, IP=003AH。通过组合形成的20位存储单元寻址地址为多少? 法器 口物理地址 20位
2)地址加法器 作用:根据提供的16位信息产生20位地址。 图2.1 9 CS左 移4位 20位 + 地址加法器 CS 16位 物理地址 20位 IP或偏移 地址 已知:代码段寄存器CS存放当前代码段基地址,IP指令指针寄 存器存放了下一条要执行指令的段内偏移地址,其中CS=2000H, IP=003AH。通过组合形成的20位存储单元寻址地址为多少?
3)指令预取队列图21 8086:指令预取队列为6字节 8088:指令预取队列为4字节 指令预取队列采用“先进先出”原则。 要执行的指令预先由BIU从内存取出放在队 列中,然后EU再从队列中取出指令并执行。 般情况下,EU每执行完一条指令,就可 以立即从指令队列中取指令执行,从而提高 了CPU的效率
3)指令预取队列 ➢8086:指令预取队列为6字节 ➢8088:指令预取队列为4字节 ➢指令预取队列采用“先进先出”原则。 ➢要执行的指令预先由BIU从内存取出放在队 列中,然后EU再从队列中取出指令并执行。 ➢一般情况下,EU每执行完一条指令,就可 以立即从指令队列中取指令执行,从而提高 了CPU的效率。 图2.1
4)总线控制逻辑 8086分配20条引胸线传送20位地址、16位 数据和位状态信息,这就必须要分时传送 总线控制逻辑的功能,就是以逻辑控制方 法实现上述信息的分时传送。是处理器和 外界总线联系的转接电路
4)总线控制逻辑 ➢ 8086分配20条引脚线传送20位地址、16位 数据和4位状态信息,这就必须要分时传送。 ➢ 总线控制逻辑的功能,就是以逻辑控制方 法实现上述信息的分时传送。是处理器和 外界总线联系的转接电路
2执行部件EU图2 >功能 n负责指令的译码和执行。 负责向总线接口部件BIU提供偏移地址。 n对通用寄存器和标志寄存器FR进行管理。 组成:算术逻辑单元(ALU、1个标志寄存 器、8个通用寄存器、1个数据暂存寄存器 和EU控制电路
2.执行部件EU ➢ 功能 ◼ 负责指令的译码和执行。 ◼ 负责向总线接口部件BIU提供偏移地址。 ◼ 对通用寄存器和标志寄存器FR进行管理。 ➢ 组成:算术逻辑单元(ALU) 、1个标志寄存 器、8个通用寄存器、1个数据暂存寄存器 和EU控制电路。 图2.1