Intel 8253-프로그래밍 가능 간격 타이머
Intel 8253 및 8254는 마이크로 프로세서가 3 개의 16 비트 레지스터를 사용하여 타이밍 및 카운팅 기능을 수행하도록 설계된 PTI (Programmable Interval Timer)입니다. 각 카운터에는 클럭 및 게이트와 같은 2 개의 입력 핀과 "OUT"출력용 1 개의 핀이 있습니다. 카운터를 작동하기 위해 16 비트 카운트가 레지스터에로드됩니다. 명령시 0에 도달 할 때까지 카운트를 줄이기 시작하고 CPU를 중단하는 데 사용할 수있는 펄스를 생성합니다.
8253과 8254의 차이점
다음 표는 8253과 8254의 기능을 구분합니다.
8253 | 8254 |
---|---|
작동 주파수는 0 ~ 2.6MHz입니다. | 작동 주파수는 0 ~ 10MHz입니다. |
N-MOS 기술을 사용합니다. | H-MOS 기술을 사용합니다. |
Read-Back 명령을 사용할 수 없습니다. | Read-Back 명령을 사용할 수 있습니다. |
동일한 카운터의 읽기 및 쓰기는 인터리브 될 수 없습니다. | 동일한 카운터의 읽기 및 쓰기를 인터리브 할 수 있습니다. |
8253/54의 특징
8253/54의 가장 두드러진 특징은 다음과 같습니다.
3 개의 독립적 인 16 비트 다운 카운터가 있습니다.
DC에서 10MHz까지의 입력을 처리 할 수 있습니다.
이 세 카운터는 바이너리 또는 BCD 카운트로 프로그래밍 할 수 있습니다.
거의 모든 마이크로 프로세서와 호환됩니다.
8254에는 READ BACK 명령이라는 강력한 명령이있어 사용자가 카운트 값, 프로그래밍 된 모드, 현재 모드 및 카운터의 현재 상태를 확인할 수 있습니다.
8254 아키텍처
8254의 아키텍처는 다음과 같습니다.
8254 핀 설명
다음은 8254의 핀 다이어그램입니다.
위 그림에는 세 개의 카운터, 데이터 버스 버퍼, 읽기 / 쓰기 제어 로직 및 제어 레지스터가 있습니다. 각 카운터에는 두 개의 입력 신호 (CLOCK & GATE)와 하나의 출력 신호 (OUT)가 있습니다.
데이터 버스 버퍼
이것은 3 상태, 양방향, 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 의 신호에 따라 선택됩니다 .
A 1 | A 0 | 결과 |
---|---|---|
0 | 0 | 카운터 0 |
0 | 1 | 카운터 1 |
1 | 0 | 카운터 2 |
1 | 1 | 제어 워드 레지스터 |
엑스 | 엑스 | 선택 없음 |
제어 워드 레지스터
이 레지스터는 라인 A 0 및 A 1 이 논리 1에 있을 때 액세스됩니다 . 사용할 카운터, 해당 모드 및 읽기 또는 쓰기 작업을 지정하는 명령 단어를 쓰는 데 사용됩니다. 다음 표는 다양한 제어 입력에 대한 결과를 보여줍니다.
A 1 | A 0 | RD | 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 | 작동하지 않음 |
엑스 | 엑스 | 1 | 1 | 0 | 작동하지 않음 |
엑스 | 엑스 | 엑스 | 엑스 | 1 | 작동하지 않음 |
카운터
각 카운터는 바이너리 또는 BCD로 작동 할 수있는 단일 16 비트 다운 카운터로 구성됩니다. 입력 및 출력은 제어 워드 레지스터에 저장된 모드 선택에 의해 구성됩니다. 프로그래머는 처리중인 실제 카운트를 방해하지 않고 세 카운터 중 하나의 내용을 읽을 수 있습니다.