820 likes | 1.03k Views
第 3 章 微处理器. 学习目标. 掌握 微机典型模式的基本工作原理 ; 理解 微机中央处理单元的结构组成、引脚信号、总线时序和工作方式 。. 微处理器( MPU: Micro Processing Unit ),微型化的中央处理器。 中央处理器 (CPU:Central Processing Unit) 。 不加区分,都用 CPU 表示。 8086 是高性能的第三代微处理器, 16 位 , 内部包含约 29,000 个晶体管。. 准 16 位微处理器 8088 。 8088 的内部寄存器、内部运算部件以及内部操作 : 16 bit;
E N D
第3章微处理器 学习目标 掌握微机典型模式的基本工作原理; 理解微机中央处理单元的结构组成、引脚信号、总线时序和工作方式。
微处理器(MPU: Micro Processing Unit),微型化的中央处理器。 • 中央处理器(CPU:Central Processing Unit)。 • 不加区分,都用CPU表示。 • 8086是高性能的第三代微处理器,16位,内部包含约29,000个晶体管。
准16位微处理器8088。 • 8088的内部寄存器、内部运算部件以及内部操作:16 bit; 对外的数据总线:8 bit。
3.1 8086/8088 CPU结构 • 3.2 8086/8088 CPU的引脚信号和工作模式 • 3.3 8086/8088主要操作功能 • 3.4 微处理器的发展
3.1 8086/8088 CPU结构 • 8086的编程结构 • 所谓编程结构,就是指从程序员和使用者的角度看到的结构,当然, 这种结构与CPU内部的物理结构和实际布局是有区别的。 • 从功能上,8086分为两部分, 总线接口部件BIU (Bus Interface Unit) 执行部件EU (Execution Unit)
20位 8086CPU结构图 通用寄存器 AH AL 地址加法器 BH BL 16位 CH CL CS DH DL DS SP 专用寄存器 SS BP ES I/O控制电路 IP DI 内部寄存器 SI 外总线 运算寄存器 1 2 3 4 5 6 执行部分控制电路 8位 指令队列缓冲器 ALU 标志 执行部件 EU 总线接口部件 BIU
1. 执行部件 • 2. 总线接口技术 • 3.“流水线”结构 • 4. 通用寄存器的用法 • 5. 标志寄存器 • 6. 存储器结构
1、执行部件EU • 执行部件的功能就是负责指令的执行。 • 从编程结构图可见,执行部件由下列几个部分组成: • 4个通用寄存器,即AX、BX、CX、DX; • 4个专用寄存器; • 标志寄存器; • 算术逻辑单元ALU。
AX:累加器。使用频度最高,用于算术、逻辑运算以及与外设传送信息等。AX:累加器。使用频度最高,用于算术、逻辑运算以及与外设传送信息等。 • BX:基址寄存器。常用于存放存储器地址。 • CX:计数器。一般作为循环或串操作等指令中的隐含计数器。 • DX:数据寄存器。常用来存放双字数据的高16位,或存放外设端口地址。 • SI:源变址寄存器,DI:目的变址寄存器,在字符串操作中,SI和DI都具有自动增量或减量的功能。 • SP:堆栈指针寄存器,用于存放当前堆栈段中栈顶的偏移地址; • BP:基址指针寄存器,用于存放堆栈段中某一存储单元的偏移地址。
2、总线接口部件 (BIU) • 功能:负责与存储器、I/O端口传送数据。
总线接口部件由下列各部分组成: (1)4个段地址寄存器; CS——16位的代码段寄存器; DS——16位的数据段寄存器; ES——16位的扩展段寄存器; SS——16位的堆栈段寄存器;
(2)16位的指令指针寄存器IP; 16位的IP总是保存着下一次将要从主存中取出指令的偏移地址,其值为该指令到所在段首址的字节距离 (3)20位的地址加法器; (4)6字节的指令队列缓冲器。
3、“流水线”结构 • 总线接口部件BIU和执行部件EU的动作管理: • 每当8086的指令队列中有2个空字节,BIU就会自动把指令取到指令队列中。 • 而同时EU从指令队列取出一条指令,并用几个时钟周期去分析、执行指令。 • 当指令队列已满,而且EU对BIU又无总线访问请求时,BIU便进入空闲状态。 4.在执行转移、调用和返回指令时,指令队列中的原有内容被自动清除。
4、通用寄存器的用法 • 通用寄存器组包括AX,BX,CX,DX。 主要用来保存算术或逻辑运算的操作数、中间运算结果。 • 它们既可以作为一个16位的寄存器使用,也可以分别作为两个8位的寄存器使用。
5.标志寄存器 • Flag Register 16位标志寄存器用来保存在一条指令执行之后,CPU所处状态的信息及运算结果的特征。
标志寄存器 16位寄存器,其中有7位未用。 1-低8位有偶数个1 0-低8位有奇数个1 D0 D15 OF DF IF TF SF ZF AF PF CF 方向标志 单步中断 符号标志 零标志 半进借位标志 奇偶标志 进借位标志 条件标志 控制标志 溢出标志 中断允许 1-结果为0 0-结果不为0 1-有进、借位 0-无进、借位 1-低4位向高4位有进、借位 0-低4位向高4位无进、借位
1.条件标志 (1)进位标志CF (2)零标志ZF (3)符号标志SF (4)溢出标志 OF (5)奇偶标志 PF :运算结果中有偶数个1,置1 (6)辅助进位标志AF:D3到D4的进/借位
2.控制标志 • (1)方向标志DF:=1,地址递减。 • (2)中断允许标志IF: =1,中断允许。 • (3)追踪标志TF:=1,单步执行。
6.存储器结构 • BIU根据16位偏移地址及16位段地址,通过地址加法器产生20位物理地址,用20位物理地址对存储器进行读写操作,亦可对I/O接口进行读写操作。
8086存储器的分段结构 • 8086CPU把1M字节的存储器空间划分为任意的一些存储段, 一个存储段是存储器中可独立寻址的一个逻辑单位,也称逻辑段,每个段的长度为64K字节。
逻辑地址与物理地址 • 实际地址,也称物理地址,规定了1M字节存储体中某个具体单元的地址 (它是00000H至FFFFFH之间的某个地址值),它由CPU访问存储器时使用。 • 逻辑地址在程序中使用,它由两部分组成:段基址和偏移量。 • CPU访问存储器时,先要形成20位的物理地址。
【例1】各独立段的分配情况示例。 • 设CS=B000H、DS=1CDEH、SS=4200H、ES=0150H,它们分别为代码段、数据段、堆栈段和附加段的段地址。自每个段首址开始,各段均占64KB的范围,各段之间互不重叠。如图1所示。
【例2】各段相互重叠情况示例。 • 设CS=0200H、DS=0400H、SS=0480H,代码段、数据段和堆栈段的物理首地址分别为02000H、04000H和04800H。其中代码段占8KB地址空间,数据段占2KB,堆栈段占256B。 如图2所示。
3.2 8086/8088 CPU的引脚信号和工作模式 • 1.8086的工作模式 • 2.引脚信号和功能 • 3.最小工作模式 • 4. 最大工作模式
1、8086的工作模式 • 最小模式,就是在系统中只有8086一个CPU, 而所有的总线控制信号都由8086直接产生,因此系统中的总线控制电路被减到最少。 • 最大模式是相对最小模式而言的, 系统中有两个或多个微处理器, 其中有一个是主处理器8086,其它的处理器称为协处理器。
2、8086CPU的引脚信号 • 8086CPU: 双列直插式的封装形式,40条引脚。 • 部分引脚具有双重功能:采用分时复用的地址/数据总线。 • 引脚33用于确定配置方式,最小模式/最大模式。
8086/8088 4039383736353433323130292827262524232221 VCC(5V) GND 0102030405060708091011121314151617181920 1.数据和地址引脚 2.读写控制引脚 3.中断请求和响应引脚 4.总线请求和响应引脚 5.其他引脚 AD15/A15 AD14/A14 A16/S3 AD13/A13 A17/S4 AD12/A12 A18/S5 AD11/A11 AD10/A10 A19/S6 /BHE/S7 AD9/A9 MN//MX AD8/A8 /RD AD7 HOLD(/RQ//GT0) AD6 AD5 HLDA(/RQ//GT1) /WR(/LOCK) AD4 M//IO(/S2) AD3 DT//R(/S1) AD2 /DEN(/S0) AD1 ALE(QS0) AD0 /INTA(QS1) NMI /TEST INTR READY CLK RESET GND
/BHE/S7: 高8位数据总线允许/状态复用引脚。 在总线周期的T1状态,此引脚输出/BHE信号,表示高8位数据线D15-D8上的数据有效。
存储器的组织 8086系统中,1M字节分为2个512K的存储体,一个 存储体中的地址都是偶数地址,叫偶体,另一个都是奇 数地址,叫做奇体。 图 存储体与总线的连接
操作 A0 使用的数据线 存取规则字 0 0 AD15-AD0 传送偶地址的一个字节 1 0 AD7-AD0 传送奇地址的一个字节 0 1 AD15-AD8 存取非规则字 0 1 AD15-AD8(第一个总线周期) 1 0 AD7-AD0(第二个总线周期) • 指出当前使用的数据总线--- 和A0