2017-06-14 16:32 — asano
カテゴリー:
今回はIntelのペリフェラルICの中でも知名度の低い8256を取り上げてみたいと思います。
これはIntelのP8256AH、Multifunction Universal Asynchronous Receiver-Transmitter (MUART)と呼ばれているものです。
付近の番号には8251 USART, 8253/8254 PIT, 8255 PPI, 8257 DMAC, 8259 PICと有名なデバイスが多い中、この8256 MUARTはあまり知られていません。私も今回調べて初めて知ったくらいです。
機能はMUARTの名称から多機能UARTを想像しますが、実際はUART, パラレルI/O, カウンタ/タイマ, 割り込みコントローラを一つにしたようなものです。どことなくZ80 KIOや6522 VIAに似ている気がします。
UARTは1チャンネルしかありませんが、ボーレートジェネレータを内蔵しており、50,75,100,110,150,200,300,...,19200といったよく使われる(た)ものを選択できます(CLKは1.024×(1, 2, 3, 5)MHzのいずれかの必要があります)。キャラクタ長は7, 8だけでなく5, 6から選べ、ストップビット長も0.75, 1, 1.5, 2から選べます。
パラレルI/Oは8ビットポートが2つあり、ポート2はハンドシェイクによる入出力が可能です。ポート1は左記のハンドシェイク信号やカウンタ/タイマなどとの共有ピンになっています。
カウンタ/タイマは8ビット長のものが5チャンネルですが、16ビット長1チャンネルと8ビット長3チャンネルや16ビット長2チャンネルと8ビット長1チャンネルとして使用することも可能です。外部ピンが限られているので8253/8254のような自由な使い方はできそうにありません。
割り込みは内部のUART・カウンタ/タイマから7レベル外部から1レベルの合計8レベルを扱えます。必要に応じて他のMUARTや8259へのカスケード接続も可能になっています。INTAへの応答では8085モードではRST命令を8086/8088モードでは40H~47Hの割り込みベクタを送出します。
このように結構面白そうなデバイスなのですが、アドレス・データがマルチプレクスバスになっていること、割り込み応答の仕組みが8085/8086/8088ベッタリなことから、他のプロセッサに使用するのは面倒そうです。この手の複合デバイスは小規模システムを少ないデバイスで実現するのがメリットで、複雑な外部回路で接続するのは本末転倒でしょう。
せっかく見つけたのですが、使う機会は少なそうです。
最初の写真ではマーキングが見づらいので真上からの写真も載せておきます。
コメントを追加