PI/T

MC68230はMC68000シリーズにパラレル入出力とタイマ機能を付加するために開発されたLSIで、Parallel Interface/Timer (PI/T)の名称が与えられています。

MC68230

パラレルインターフェースはダブルバッファ構造で凝った使い方ができるようになっていたりとか、まぁ工夫のあとはありますが、パラレルインターフェースとタイマ部分の割り込み応答信号の扱いに注意が必要であるとかありました。
PI/Tのデータバスは8 bit幅で、MC68000などの16 bitバスには上位バイトか下位バイトのどちらかのデータバスに接続するようになっています。データレジスタや設定用レジスタといったレジスタ類は23 Byte分も内蔵されていますが、プログラムからは8 bit単位でアクセスするだけでなく、MOVEP命令ひとつで16 bitや32 bitのデータをまとめて読み書きできるようになっています。実際にはMC68000のマイクロプログラムで順番に8 bitずつアクセスすることになるのですが。たとえばタイマのカウントレジスタは24 bitが有効ですが、32 bitデータとしてMOVEP命令でアクセスする場合の最上位バイトに相当する部分にはレジスタが割り当てられていず、書き込まれるデータは無視され、読み出し時には0が出力されます。その結果、MOVEP.L命令でMC68000の32 bitレジスタとデータ転送を行うことが簡単に可能です。
PA, PB, PCの8 bitパラレルポートがあり、PAとPBにはそれぞれ2本のハンドシェーク信号が用意されているので、単純に入出力ポートとして使用すると最大28本の入出力端子を利用可能です(ただしハンドシェーク信号の2本だけは入力専用)。ただし、PCポートのうちのPC2からPC7までの6本は、タイマ機能用信号や割り込み関係の信号と兼用となっています。ハンドシェーク転送時に割り込みを発生させることも、MC68450などと組み合わせてDMAでデータ転送を行うことも可能です。
タイマは24 bitのタイマが1チャネル内蔵されていて、周期的割り込みや単発の割り込み、方形波出力など、いくつかのモードにプログラム可能となっています。

Return to IC Collection