インテルのみ表示可能 — GUID: iga1404408596694
Ixiasoft
インテルのみ表示可能 — GUID: iga1404408596694
Ixiasoft
10.2.11. ハードウェア自動フロー制御
ハードウェア・ベースの自動フロー制御では、モデム・コントロール/ステータス・グループの2つの信号 (cts_nおよびrts_n) を使用します。ハードウェア自動フロー制御が無効になっている場合、これらの信号は、Modem Statusレジスター (cts_n) を直接駆動する、もしくはModem Controlレジスター (rts_n) によって駆動されます。
自動フロー制御が有効になっている場合、これらの信号は、他方にある別のUARTとともにフロー制御の役割を果たします。
cts_n入力がアクティブ (Low状態) になると、TX FIFOは送信バッファーにデータを送信することができます。cts_nが非アクティブ (High状態) になると、TX FIFOは送信バッファーへのデータの送信を停止します。cts_nは、別のUARTのrts_n出力に接続することが想定されています。
rts_n出力は、RX FIFOが空になるとアクティブ (Low状態) になり、反対側のUARTにデータに対する準備が整っていることを通知します。rts_n出力は、RX FIFOがレベルに到達すると非アクティブ (High状態) になり、反対側のUARTにFIFOがフルに近づいているため、送信を停止する必要があることを通知します。
UARTロジック内の遅延により、cts_nがアクティブLowでサンプリングされた後、さらに1文字を送信することが可能です。同じ理由により、RX FIFOでは、rts_nのアサート後、さらに最大1文字に対応します (これは、RX FIFOのトリガーレベルが、真にフルになるまでに最低でも2エントリーあるために可能です)。これらはどちらも、UART間のオーバーフロー/アンダーフローを防ぐために行われます。