📜  英特尔8253-可编程间隔计时器

📅  最后修改于: 2020-12-13 15:35:48             🧑  作者: Mango


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

8253和8254之间的区别

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

8253 8254
Its operating frequency is 0 – 2.6 MHz Its operating frequency is 0 – 10 MHz
It uses N-MOS technology It uses H-MOS technology
Read-Back command is not available Read-Back command is available
Reads and writes of the same counter cannot be interleaved. Reads and writes of the same counter can be interleaved.

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上的信号选择控制字寄存器和计数器。

A1 A0 Result
0 0 Counter 0
0 1 Counter 1
1 0 Counter 2
1 1 Control Word Register
X X No Selection

控制字寄存器

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

A1 A0 RD WR CS Result
0 0 1 0 0 Write Counter 0
0 1 1 0 0 Write Counter 1
1 0 1 0 0 Write Counter 2
1 1 1 0 0 Write Control Word
0 0 0 1 0 Read Counter 0
0 1 0 1 0 Read Counter 1
1 0 0 1 0 Read Counter 2
1 1 0 1 0 No operation
X X 1 1 0 No operation
X X X X 1 No operation

专柜

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