地址分段机制
- 存储器分段机制
- 8086 CPU 的20位地址线,可以寻址 1MB(2 的 20 次方) 物理地址,及地址范围 00000 H ~ FFFFF H 与内存单元 一一对应,称为存储单元的物理地址。
- 但8086 CUP 内部寄存器为 16 位,如何利用16位寄存器表示 20 位的地址,为了解决这个问题
- 8086 采用分段管理,将1MB 的存储空间分为若干个逻辑段,每个段 <= 64KB
- 将段起始的高 16 位称为 段地址(段基地址)
- 段内存储单元相对于段起始位置地址的偏移量称为当前端的偏移地址,这种地址的表达方法称为逻辑地址。
- 物理地址的形成
- 物理地址 = 段地址 * 10 H + 偏移地址
- 或者 物理地址 = 段地址左移4位 + 偏移地址
#总线周期
- 主频 : CPU 的工作频率
- 时钟周期:一个时钟脉冲的时间, 也叫一个T状态,主频的倒数,最小的周期
- 8086 CUP 的主频为 5 MHz ,时钟周期为 200ns (主频的倒数)
- 总线周期: CUP 通过总线对存储器或外设 I/O 接口进行一次访问的时间
- 周期 = 频率的 倒数 , 周期 与 频率相互为倒数
- 1000 HZ = 1 K HZ ,1000 000 = 1 MHZ
- HZ 与 S (秒) 相对应
- 1 s = 1000 ms = 1000 000 us = 1000 000 000 ns
- 一个总线周期 正常情况下由 4 个时钟周期(T1 ~ T4) 组成
- 访问存储器或 I / O ,的过程是先 根据地址找到存储单元 或 接口 , 让后在 传输数据
- T1 : CPU 送出 20 位地址信息,并且 BHE 低电平有效(地址位 20,所以要高八位有效) , ALE 地址锁存信号有效
- T2 : CUP 撤销地址信息,使 高四位成为高阻状态(数据 是 16 位 , 所以要使高 4位 变成高阻状态便于传输数据), 为数据传输做准备,高 4 位输出的是总线周期状态信息
- T3 : 如果存储器 或 IO 接口能够立即响应 CPU , 直接进行 数据传输 , 如果 没能直接相映 在 T3 后插入一个 Tw 周期, 直到检测到 READY = 1 是, 实现数据的传输
- T4 : 总线上的数据信息消失,总线周期结束
- Tw 等待周期 : 存储器或外设能够立即相应CPU . 总线周期 可以包含等待周期,.
- Ti 空闲周期 : 一个总线周期后, 不立即进行限一个总线周期,总线处于空闲状态
#中断向量表
0000 ~ 003FF H :1 KB 空间用于存放中断向量表可存放 256 个 中断服务程序入口地址,每个地址占 4 个 字节
- 起动地址
FFFF0 H 起动地址,一般用来存放一条无条件转移指令,转到系统初始化程序