Intel 8253 - 可编程间隔定时器


Intel 8253 和 8254 是可编程间隔定时器 (PTI),专为微处理器而设计,可使用三个 16 位寄存器执行计时和计数功能。每个计数器有2个输入引脚,即时钟和门,以及1个“OUT”输出引脚。为了操作计数器,将 16 位计数加载到其寄存器中。根据命令,它开始递减计数,直到达到 0,然后生成一个可用于中断 CPU 的脉冲。

8253和8254的区别

下表区分了 8253 和 8254 的功能 -

8253 8254
其工作频率为0 - 2.6 MHz 其工作频率为0 - 10 MHz
它采用N-MOS技术 它采用H-MOS技术
回读命令不可用 回读命令可用
同一计数器的读取和写入不能交叉进行。 同一计数器的读取和写入可以交叉进行。

8253 / 54 的特点

8253/54 最突出的特点如下:

  • 它具有三个独立的16位递减计数器。

  • 它可以处理从 DC 到 10 MHz 的输入。

  • 这三个计数器可以编程为二进制或 BCD 计数。

  • 它与几乎所有微处理器兼容。

  • 8254有一个强大的命令称为READ BACK命令,它允许用户检查计数值、编程模式、当前模式和计数器的当前状态。

8254 建筑

8254 的架构如下 -

8254 建筑

8254 引脚说明

这是 8254 的引脚图 -

8254 引脚说明

上图中,有三个计数器、一个数据总线缓冲区、读/写控制逻辑和一个控制寄存器。每个计数器有两个输入信号 - CLOCK & GATE,和一个输出信号 - OUT。

数据总线缓冲器

它是一个三态、双向、8 位缓冲器,用于将 8253/54 连接到系统数据总线。它具有三个基本功能 -

  • 对 8253/54 的模式进行编程。
  • 加载计数寄存器。
  • 读取计数值。

读/写逻辑

它包括5个信号,即RD、WR、CS和地址线A 0和A 1。在外设I/O模式下,RD和WR信号分别连接到IOR和IOW。在内存映射 I/O 模式下,它们连接到 MEMR 和 MEMW。

CPU 的地址线 A 0和 A 1连接到8253/54 的线 A 0和 A 1 ,并且 CS 与解码地址相关联。根据线A 0和A 1上的信号来选择控制字寄存器和计数器。

1 一个0 结果
0 0 计数器0
0 1 柜台1
1 0 柜台2
1 1 控制字寄存器
X X 无选择

控制字寄存器

当 A 0和 A 1线处于逻辑 1 时访问该寄存器。它用于写入命令字,该命令字指定要使用的计数器、其模式以及读或写操作。下表显示了各种控制输入的结果。

1 一个0 研发 WR CS 结果
0 0 1 0 0 写计数器0
0 1 1 0 0 写计数器1
1 0 1 0 0 写计数器2
1 1 1 0 0 写控制字
0 0 0 1 0 读取计数器 0
0 1 0 1 0 读取计数器 1
1 0 0 1 0 读取计数器 2
1 1 0 1 0 无操作
X X 1 1 0 无操作
X X X X 1 无操作

柜台

每个计数器由一个 16 位递减计数器组成,可以以二进制或 BCD 方式操作。其输入和输出通过控制字寄存器中存储的模式选择进行配置。程序员可以读取三个计数器中任何一个的内容,而不会干扰正在进行的实际计数。