微机——8086CPU

写在前面

期末整理重点,留档自用复习

第一章 8086CPU

物理地址计算

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

堆栈

堆栈范围 SS:0000H~SS:(SP-1)

初始SP指向堆栈底

PUSH:SP=SP-2

POP:SP=SP+2

存储器分体结构

8086访问存储器时,既要能传送一个字,又要能传送一个字节。因此把16位的存储器分成两个8位的存储体来处理。

  • 奇地址体(高位)~BHE
  • 偶地址体(低位) A0

选择引脚低电平有效

~BHE A0 使用数据线
0 0 D15 ~ D0
0 1 D15 ~ D8
1 0 D7 ~ D0
1 1 无效

存取操作时,都是从偶地址体开始。

因此存取一个字时,若从偶地址开始,进行一次操作;若从奇地址开始,进行两次操作。

从奇地址开始存取时,对地址所在的偶地址读两次,分别取高位和低位,舍弃其他位。

所以无论是从奇地址还是从偶地址开始,都是读取偶地址体开始。

image-20211224151336945

每个存储体512K字节,共1MB

最小模式

最小模式包括1片8254、3片8282、2片8286、一个8086cpu

8284

时钟发生器,连接CLK、READY、RESET,产生时钟信号,同步READY和RESET信号

8282

锁存器,实现时分复用,先把地址锁存进8282,此时可以空出总线去存取数据,需要时再将地址输出

~STB:下降沿触发,有ALE给信号,锁存允许

~OE=0, 开启三态门,向外输出,常接地

Q:为什么3片8282

A:因为A19 ~ A16 +~BHE + AD15 ~ AD0共21位,8282是8位,所以需要3片

8286

数据收发器,可以双向传输数据

DIR(T):传输方向,接DT/~R发送/接收,

  • T=1:A→B
  • T=0:A←B

~OE:接 ~DEN,数据使能端

AD15 ~ AD0

image-20211224155710426

读存储器/写存储器/读IO/写IO时各引脚的值?

读写总线周期

总线周期:CPU访问一次存储器或IO的时间成为总线周期,一个总线周期分为4各时钟周期

T1:8282锁存地址

  • A19 ~ A16 +~BHE + AD15 ~ AD0 地址输出
  • ALE 下降沿锁存
  • M/~IO 选中存储器或IO
  • DT/~R 发送/接收数据

T2:8286准备

  • AD15 ~ AD0高阻态浮空,准备传输数据
  • ~DEN 下降变低电平
  • ~RD/ ~WR 下降变低电平

T3:8286传输数据

  • 等待READY=1(准备好后开始传输)
  • AD15 ~ AD0输出/输入数据

T4:结束

  • 维持半个周期,后半个周期,各信号复位,数据从数据总线上撤出
  • 结束。
image-20211224162122982

最大模式

最大模式与最小模式的区别是CPU不直接控制8282和8286,因此最大模式下,有8288总线控制器用来向8282和8286发出信号;8289总线裁决器,用来判断哪些信号由CPU发出哪些信号由8288发出

posted @ 2022-03-02 19:59  KUMORI  阅读(782)  评论(0编辑  收藏  举报