贵州电子信息职业技术学院实训中心电工电子与控制 · 虚拟仿真
元件 + 指南esc

程序计数器(8 位)

使用 数字逻辑实验舱的 8 位程序计数器保持、递增或同步加载地址。RST 为异步输入;OE(输出使能) 控制 A0–A7 三态输出。

概述

本地实验舱 程序计数器存储一个 8 位地址。时钟上升沿可装载新地址或递增当前地址,独立的输出使能则控制其三态地址输出。

本地实验舱 的确切实现

方向 索引 引脚 作用
输入 0–7 D0–D7 并行装载使用的地址;D0 为最低有效位(LSB)。
输入 8 CLK(时钟) 上升沿时钟。
输入 9 LD(装载) 高电平有效的同步装载使能。
输入 10 RST 高电平有效的异步复位。
输入 11 INC 高电平有效的同步递增使能。
输入 12 OE 高电平有效的输出使能。
输出 0–7 A0–A7 使能时输出存储地址;A0 为 LSB(最低有效位)。

存储行为

条件 事件后的存储地址
RST = 1 立即为 0x00
RST = 0,CLK 上升沿,LD = 1 D0–D7
RST = 0,CLK 上升沿,LD = 0,INC = 1 (address + 1) mod 256
其他情况 原地址

RST 优先于两种时钟驱动操作。在上升沿,LD 优先于 INC。

输出行为

  • 存储地址初始为 0x00。新插入元件时,OE 为 LOW(低电平),因此 A0–A7 初始为 Z。
  • OE 不影响装载、递增、复位或存储地址。
  • 该元件不会自动递增;INC 必须在上升沿为 HIGH(高电平)。
  • 计数器覆盖完整的 0x00–0xFF 范围,没有进位输出。

CPU(中央处理器) 中的用途

程序计数器可在取指期间驱动存储器地址总线。跳转控制可将目标地址置于 D0–D7 并激活 LD;顺序执行控制可激活 INC。

运行时参考

端子 方向
D0 输入
D1 输入
D2 输入
D3 输入
D4 输入
D5 输入
D6 输入
D7 输入
CLK 输入
LD 输入
RST 输入
INC 输入
OE 输入
A0 输出
A1 输出
A2 输出
A3 输出
A4 输出
A5 输出
A6 输出
A7 输出

新放置元件的输出初始状态按上方输出端子顺序排列为:ZZZZZZZZ。四态符号为 0、1、X(主动驱动的未知态)和 Z(高阻态)。默认传播延迟:2 ns(仿真时间)。

学习路径

常见问题

什么是程序计数器?

D0–D7 提供待加载值。每个 CLK 上升沿,若 LD=1,则加载该值;否则若 INC=1,则按模 256 递增。高电平有效的 RST 会立即清零已存储的地址。

PC(程序计数器) 如何实现跳转?

控制电路使 LD 有效,并在上升沿到来时将分支目标地址置于 D0–D7。OE 仅决定 A0–A7 是否驱动地址总线,不改变已存储的值。

进阶课程