当前位置: 移动技术网 > 科技>办公>CPU > 微机原理与接口技术复习笔记(2)——8086/8088处理器

微机原理与接口技术复习笔记(2)——8086/8088处理器

2020年08月12日  | 移动技术网科技  | 我要评论
作者:BerenCamlost目录作者:BerenCamlost第二章 8086/8088处理器2.1 内部组成结构2.1.1 BIU2.1.2 EU2.2 存储器组织结构2.2.1 存储器的分段结构2.2.2 物理地址和逻辑地址2.3 CPU引脚及其功能2.3.1 最大工作模式和最小工作模式2.3.2 控制总线引脚信号2.4 典型时序分析(背过图)2.4.1 最小模式下的读周期2.4.2 最小...

作者:BerenCamlost


第二章 8086/8088处理器

2.1 内部组成结构

1
如上图所示,8086内部由两个独立的部分构成:总线接口单元(BIU)、执行单元(EU)

2.1.1 BIU

  1. 指令队列缓冲器
    BIU使用指令队列电路来实现流水线操作,该队列为先进先出队列(FIFO),有两个指针,允许预取6个字节的指令代码。
  2. 段寄存器
    CS——代码段寄存器
    DS——数据段寄存器
    SS——堆栈段寄存器
    ES——附加段寄存器
  3. 指令指针寄存器IP
    程序运行中自动加一修正指向将原执行的下一条指令的偏移存储地址

2.1.2 EU

  1. 标志寄存器FR
    有的地方也叫做PSW
    2
CF:无符号数进行加减时,最高位产生进位或借位时置1
OF:有符号数进行运算时,产生溢出,即超出一个字节或一个字能够表示的范围时,置1。
	一个简单的判断方法是:
	OF=(最高位运算后进位状态)异或(次高位运算后进位状态);//书 p26下面
PF:低八位包含的1的个数为偶数,置1
AF:第三位向第四位有进位,置1
ZF:计算结果为0,置1
SF:符号位状态

//由程序员设定,利用STx,CLx指令
DF:串操作地址步进方向,1是从大到小,0是从小到大
IF:可屏蔽中断开关,置1为打开。进入中断后自动置0
TF:置1则CPU处于单步运行方式
  1. 通用数据寄存器
    AX、BX、CX、DX四个16位的数据寄存器,这些寄存器在某些指令中有特殊的用途,将会在第三章中介绍。
    SP、BP、SI、DI四个16位的指针和变址寄存器,SP称为堆栈指针,总是指向栈顶,BP称为基数指针,SI源变址指针,目的变址指针

2.2 存储器组织结构

2.2.1 存储器的分段结构

  • 每类段可以由多个逻辑段组成,每个逻辑段的长度不得大于64KB

64KB是由偏移地址是16位二进制决定的,寻址空间最大为216B=64KB

2.2.2 物理地址和逻辑地址

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

2.3 CPU引脚及其功能

2.3.1 最大工作模式和最小工作模式

在这里插入图片描述
如上图,括号中的引脚是最小工作模式下的,所以在最大和最小模式切换后,部分引脚的功能是有变化的

  1. 最大最小的区别
    最大模式的控制总线信号由专用的总线控制器8288产生,最小模式所有的总线控制信号都是由CPU直接产生
  2. 工作于何种模式由MN/MX’(以下,上划线统一用引脚右上角加’表示)引脚决定

2.3.2 控制总线引脚信号

  1. CLK:时钟信号输入
  2. NMI:上升沿触发,非屏蔽中断输入端
  3. INTR:高电平有效,可屏蔽中断请求输入端
  4. RD’:输出,低电平有效,读取指令
  5. WR’:输出,低电平有效,写入指令
  6. M/IO’:1:存储器操作;0:IO口操作
  7. READY:输入,高电平有效,
    1. 每个总线周期的T3状态对READY信号采样,
    2. 如果没有准备好就加入一个TW状态,
    3. 在TW末尾继续对READY采样,如果还没准备好就一直加。
  8. TEST’:输入,低电平有效
    1. 每隔5个时钟周期重复检测该信号,
    2. 当检测到该信号为低电平时,等待状态结束。
  9. RESET:输入,高电平有效,复位信号
    1. 高电平宽度至少大于4个时钟周期。
    2. 当信号有效时,CPU结束当前操作,并对CPU内的标志寄存器, IP, DS, SS, ES及指令队列清零,
    3. 而将CS设置为FFFFH, 当复位信号变为低电平时,CPU从FFFF0H处开始执行程序。
  10. BHE’/S7:BHE和A0信号组合使用来选择读取高8位(奇地址)或者低8位(偶地址)
BHE’ A0 操作 数据引脚
0 0 从偶地址开始读写一个字(16位) AD15~AD0
1 0 从偶地址单元或端口读写一个字节(8位) AD7~AD0
0 1 从奇地址单元或端口读写一个字节(8位) AD15~AD8
0 1 从奇地址单元开始读写一个字(16位)(在第一个总线周期,将低8位数据送至AD15~AD8, AD15~AD8
1 0 在第二个总线周期,将高8位数据送至AD7~AD0。在CPU内部进行调整 AD7~AD0
  1. INTA’:输出,低电平有效
    当外设向CPU申请可屏蔽中断INTR,CPU如果允许中断,则连续发出两个负脉冲给外设。第一个负脉冲通知外设已受理中断;外设在第二个负脉冲时向数据总线上发送中断类型码。
    3
  2. ALE:输出,高电平有效,地址数据复用线的地址选择
  3. DEN’:输出,低电平有效,地址数据复用线的数据选择
  4. DT/R’:数据收发方向控制端,1:发送;0:接受
  5. HOLD:输入,高电平有效,看下面
  6. HLDA:输出,高电平有效
    其他模块向8086发送占用总线的请求HOLD信号,如果CPU允许让出总线,当前周期结束后,将总线浮空,同时发出HLDA信号。

2.4 典型时序分析(背过图)

2.4.1 最小模式下的读周期

4

  1. T1:地址上线,ALE下降沿锁存地址信号
  2. T2:AD0~AD15为高阻,为输入数据作准备;A19 ~A16变为S3 ~S7;注意DEN’的状态和数据信号不一致
  3. T3: D15~D0到数据总线,CPU获得数据。
  4. T4: 数据消失,控制信号复位,为下一个总线周期做准备
  5. 如果在T3状态,READY为低电平,则在T3后插入Tw,控制信号及数据信号不变

2.4.2 最小模式下的写周期

5

  1. T1:地址A0~A19上线,ALE : 下降沿锁存地址
  2. T2: A19~A16变为S3 ~S7;DEN’有效,打开数据总线;D15 ~D0由CPU送至数据总线

2.5 典型例题

(1)指令队列的作用是_________。
A) 暂存操作数地址 B) 暂存操作数
C) 暂存指令地址 D) 暂存预取指令

(2)8086CPU经加电复位后,执行第一条指令的地址是(FFFF0H)。

(3)在T2、T3、Tw、T4状态时,S6为_______,表示8086/8088当前连在总线上。
【答案】:低电平

(4)某微处理器的主频为20MHz,由2个时钟周期组成一个机器周期,设平均3个机器周期可完成一条指令,其时钟周期和平均运算速度分别为________________。
【答案】:50ns,3.33MHz
【解析】:时钟周期即1/CLK=1/20M=50ns;平均运算速度即完成指令的频率,即CLK/(2*3)=3.33MHz

(5)在8086的数据操作中,与总线宽度有关的控制信号是______。
A)LOCK B) HLDA C) WR及RD D) BHE
【解析】:BHE‘是高8位数据总线允许信号

(6) 8086CPU可访问的存储器的空间为1MB,实际上分奇数存储体和偶数存储体两部分,对于奇数存储体的选择信号是________,对于偶数存储体的选择信号是_______,对于每个存储体内的存储单元的选择信号是___________。
【答案】:BHE’,A0,A1~A19

2.6 勘误

  1. 2.3.2节第10点,表格中第二行第二列原先为1,现在已经改成0.

本文地址:https://blog.csdn.net/weixin_43830248/article/details/85957812

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网