16550 UARTとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > 16550 UARTの意味・解説 

16550 UART

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/11/13 02:44 UTC 版)

ナビゲーションに移動 検索に移動

16550 UART (Universal Asynchronous Receiver/Transmitter) は、シリアル通信インタフェースを実装するために設計された集積回路である。16550はIBM PC互換のパーソナルコンピュータに、モデム、シリアルマウス、プリンタ等の周辺機器を接続するための、RS-232Cへ接続するシリアルポートを実装するためによく使われた。

最初の16550はナショナル セミコンダクター(NS、現テキサス・インスツルメンツ)が製造した。類似の品番で、NS社の最初の製品に対して様々なレベルの互換性を持ったデバイスが他のメーカから提供された。16550とIOレジスタ互換のUART機能が、IBM PC互換機のマルチファンクションI/Oカードに実装され、後にはPC互換機のマザーボードに統合されたり、チップセットに統合される様になった。

工場出荷状態のマザーボードに搭載された8250 UARTを16550に交換することは、IBM PCやXTおよび互換機のユーザが高速モデムを使用するときの、一般的なアップグレードであった。9600 bpsより高速になると、PCのシリアルポートはキャラクタを欠落せずにデータフローを制御出来ないことが判明した(PC/AT時代に一般的になった16450でも、本質的には同様であった)。1バイトの受信バッファしか持たない8250や16450を、16バイトのFIFOバッファを持つ16550に交換し、そのFIFOを有効化するためにソフトウェアにパッチを当てたり設定を変更することで、高速通信を達成することができた。

16550の主な特徴:

  • シフトレジスタを使用することで、シリアルデータをパラレルデータに、パラレルデータをシリアルデータに変換する能力。
  • 送受信のデータレートを制御するための、オンチップビットレート(ボーレート)ジェネレータ。
  • 外部のモデムを制御するためのハンドシェイク用信号線、ソフトウェアで制御可能。
  • ホストのマイクロプロセッサに対する割り込み機能。
  • 送信データ、受信データ、双方のためのオンチップのFIFOバッファ。これによりホストシステムが、UARTが生成した割り込みに、データを取りこぼすことなく応答する余裕が大きくなる。

16550のハードウェアソフトウェアのインタフェースは、以前の8250 UARTや16450 UARTと後方互換性がある。1995年に発売されたNS社による最新の版はPC16550Dとよばれている。他社製品はさらに改良されている。

PC16550D・TL16C550C・TL16C750(ともに後述)は、現在もテキサス・インスツルメンツ (TI) のサイトよりデータシートが参照できる。

16550のFIFO

以前の8250 UARTや16450 UARTの欠点は、1バイト受信する度に割り込みが発生することであった。転送速度が向上するにつれて、割り込みが高い頻度で発生することになった。より深刻なことに、受信バッファが1バイトしかないため、割り込み要求への応答が遅れると受信したバイトを読み出す前に次の受信データで上書きされる本質的な危険があった。この欠点を克服するため、16550シリーズのUARTは、割り込みトリガレベルを1,4,8,14バイトにプログラム可能な、16バイトのFIFOを組み込んだ。

不幸なことに、最初の16550にはバグがあり、このFIFOを使用できなかった。NS社はその後、この問題を修正した16550Aをリリースした。しかし、全てのメーカがこの名称を使用しなかったので、修正したチップも16550と呼ばれ続けた[1]

16550は送信FIFOも組み込んだ。この特徴は絶対的なものではない。送信で要求された割り込みへの応答が遅延しても、次のデータ転送までの間が開いて転送速度が低下するが、データの欠落は発生しない。

TI社のTL16C550C以降では、対応ソフトウェアを利用することによりオートフロー制御を利用できる。受信FIFOが一杯になる前にフロー制御 (RTS) により受信を停止する。割り込みが1,4,8バイトの場合はFIFOが空になると、14バイトではFIFOが空きができると受信を再開する。TL16C550Bまでは、NSの16550Aと同じ機能レベルである。TI社はその後、更なる高速化とFIFOを64バイトに増量したTL16C750をリリースした。16バイトFIFOモードでは、オートフロー制御を除いてTL16C550Cと同等の動作である。対応ソフトウェアで利用できる64バイトFIFOモードでは、1,16,32,56バイトで割り込みをかけられる。オートフロー制御はどちらのモードでも、また割り込みが何バイトでも、FIFOが空になるまで受信を再開しない。

関連項目

参照

  • この記事は2008年11月1日までGFDLバージョン1.3以降の再ライセンス規約に基づいていたFree On-line Dictionary of Computingにある項目の資料が元になっている。

外部リンク




英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「16550 UART」の関連用語

16550 UARTのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



16550 UARTのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの16550 UART (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS