Intel8253-プログラマブルインターバルタイマー

Intel 8253および8254は、マイクロプロセッサが3つの16ビットレジスタを使用してタイミングおよびカウント機能を実行するために設計されたプログラマブルインターバルタイマー(PTI)です。各カウンタには、クロックとゲートの2つの入力ピンと、「OUT」出力用の1つのピンがあります。カウンタを操作するために、16ビットカウントがそのレジスタにロードされます。コマンドで、0に達するまでカウントをデクリメントし始め、次にCPUに割り込むために使用できるパルスを生成します。

8253と8254の違い

次の表は、8253と8254の機能を区別しています。

8253 8254
その動作周波数は0〜2.6MHzです その動作周波数は0〜10MHzです
N-MOSテクノロジーを使用しています H-MOSテクノロジーを使用しています
リードバックコマンドは使用できません リードバックコマンドが使用可能です
同じカウンタの読み取りと書き込みをインターリーブすることはできません。 同じカウンタの読み取りと書き込みをインターリーブできます。

8253/54の特徴

8253/54の最も顕著な特徴は次のとおりです-

  • 3つの独立した16ビットダウンカウンターがあります。

  • DCから10MHzまでの入力を処理できます。

  • これらの3つのカウンターは、バイナリカウントまたはBCDカウントのいずれかにプログラムできます。

  • ほとんどすべてのマイクロプロセッサと互換性があります。

  • 8254には、READ BACKコマンドと呼ばれる強力なコマンドがあります。これにより、ユーザーは、カウント値、プログラムされたモード、現在のモード、およびカウンターの現在のステータスを確認できます。

8254アーキテクチャ

8254のアーキテクチャは次のようになります-

8254ピンの説明

これが8254のピン配列です-

上の図では、3つのカウンター、データバスバッファー、読み取り/書き込み制御ロジック、および制御レジスタがあります。各カウンタには、2つの入力信号(CLOCK&GATE)と1つの出力信号(OUT)があります。

データバスバッファ

これは、8253/54をシステムデータバスにインターフェイスするために使用される、トライステート、双方向、8ビットのバッファです。それは3つの基本的な機能を持っています-

  • 8253/54のモードのプログラミング。
  • カウントレジスタをロードしています。
  • カウント値の読み取り。

読み取り/書き込みロジック

それは5つの信号、すなわちRD、WR、CS、およびアドレス線A含む0&A 1。周辺I / Oモードでは、RD信号とWR信号はそれぞれIORとIOWに接続されます。メモリマップドI / Oモードでは、これらはMEMRおよびMEMWに接続されます。

アドレスラインA 0&A 1 CPUのは、ラインAに接続されている0とA 1 54分の8253の、および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ビットダウンカウンタで構成されています。その入力と出力は、制御ワードレジスタに格納されているモードの選択によって構成されます。プログラマーは、処理中の実際のカウントを妨げることなく、3つのカウンターのいずれかの内容を読み取ることができます。