AHB UART Lite
AHB UART Liteは、UART通信を行うためのモジュールです。 このモジュールはコンソール出力など簡易なシリアルデータの送受信を行うことを目的としているため、フロー制御を行う機能は持っていません。
レジスタ詳細
AHB UARTコアは、システムに 7個実装されています。 このうち 6個は、標準イメージにおいて、ユーザーが設計する Mission Bus Systemに実装されています。
| IP Core | Base Address | Comment |
|---|---|---|
UART Lite (Console I/F) |
0x4F01_0000 |
|
UART Lite 1 |
0x5000_0000 |
Implemented in Mission Bus System |
UART Lite 2 |
0x5001_0000 |
Implemented in Mission Bus System |
UART Lite 3 |
0x5002_0000 |
Implemented in Mission Bus System |
UART Lite 4 |
0x5003_0000 |
Implemented in Mission Bus System |
UART Lite 5 |
0x5004_0000 |
Implemented in Mission Bus System |
UART Lite 6 |
0x5005_0000 |
Implemented in Mission Bus System |
| Offset | Symbol | Register | Initial |
|---|---|---|---|
0x0000 |
UARTL_RXFIFOR |
Rx FIFO Register |
0x00000000 |
0x0004 |
UARTL_TXFIFOR |
Tx FIFO Register |
0x00000000 |
0x0008 |
UARTL_STATR |
Status Register |
0x00000004 |
0x000C |
UARTL_CTRLR |
Control Register |
0x00000000 |
0x0010 |
UARTL_UBRSR |
UART Baudrate Setting Register |
0x000001A0 |
0xF000 |
UARTL_VER |
AHB UART Lite IP Version Register |
- |
Rx FIFO Register (Offset 0x0000)
Rx FIFO Registerは、UARTの受信データを読み出すためのレジスタです。
Rx FIFOは受信したデータを 1 Byte単位で最大 16エントリまで格納できます。
| bit | Symbol | Field | Description | R/W |
|---|---|---|---|---|
31:8 |
- |
Reserved |
Reserved |
- |
7:0 |
RXDATA |
UART Rx Data |
受信したデータを Rx FIFOから読み出すためのレジスタです。 |
RO |
Tx FIFO Register (Offset 0x0004)
Tx FIFO Registerは、UARTの送信データを書き込むためのレジスタです。
書き込みデータは Tx FIFOに格納され、書き込み後直ちに送信を開始します。 Tx FIFOは送信するデータを 1 Byte単位で最大 16エントリまで格納できます。
| bit | Symbol | Field | Description | R/W |
|---|---|---|---|---|
31:8 |
- |
Reserved |
Reserved |
- |
7:0 |
TXDATA |
UART Tx Data |
送信データを Tx FIFOに書き込むためのレジスタです。 |
WO |
Status Register (Offset 0x0008)
Status Registerは、AHB UART Liteの Errorや FIFOのステータスを確認するためのレジスタです。
Control Registerの INTENACTLが "1"にセットされている時、RXFIFOVALビット・TXFIFOEMPビット・RXUNDERRUNERRビット・TXOVERRUNERRビットのいずれかが "0"から "1"に変化するたびに CPUに対しエッジ割り込みが出力されます。
| bit | Symbol | Field | Description | R/W |
|---|---|---|---|---|
31:10 |
- |
Reserved |
Reserved |
- |
9 |
TXOVERRUNERR |
Tx FIFO Overrun Error |
Tx FIFOが Fullの時に Tx FIFO Registerに書き込んだことにより Tx FIFOで Overrunエラーが発生したことを示すビットです。このビットは 読み出すとクリアされます。 |
RC |
8 |
RXUNDERRUNERR |
Rx FIFO Underrun Error |
Rx FIFOが Emptyの時に Rx FIFO Registerを読み出したことにより Rx FIFOで Underrunエラーが発生したことを示すビットです。このビットは 読み出すとクリアされます。 |
RC |
7 |
PRTYERR |
Parity Error |
受信したUARTフレームでParityエラーが発生したことを示すビットです。このビットは読み出すとクリアされます。 |
RC |
6 |
FRAMEERR |
Frame Error |
受信したUARTフレームで Frameエラーが発生したことを示すビットです。このビットは 読み出すとクリアされます。 |
RC |
5 |
RXOVERRUNERR |
Rx FIFO Overrun Error |
Rx FIFOが Fullの時に UART受信したことにより Rx FIFOで Overrunエラーが発生したことを示すビットです。このビットは 読み出すとクリアされます。 |
RC |
4 |
INTENAMON |
Int Enabled Monitor |
割り込み通知ステータスを示します。Control Registerの INTENACTLが "1"にセットされている時、このビットは "1"になります。 |
RO |
3 |
TXFIFOFULL |
Tx FIFO Full |
Tx FIFOのFull状態を示します。 |
RO |
2 |
TXFIFOEMP |
Tx FIFO Empty |
Tx FIFOのEmpty状態を示します。 |
RO |
1 |
RXFIFOFULL |
Rx FIFO Full |
Rx FIFOのFull状態を示します。 |
RO |
0 |
RXFIFOVAL |
Rx FIFO Valid Data |
Rx FIFOの有効データ格納状態を示します。 |
RO |
Control Register (Offset 0x000C)
Control Registerは、Tx FIFO/Rx FIFOのリセット制御と割り込み通知の設定を行うためのレジスタです。
| bit | Symbol | Field | Description | R/W |
|---|---|---|---|---|
31:5 |
- |
Reserved |
Reserved |
- |
4 |
INTENACTL |
Int Enable Control |
AUB UART Liteの割り込み通知の有無を設定します。 |
WO |
3:2 |
- |
Reserved |
Reserved |
- |
1 |
RXFIFORST |
Reset Rx FIFO |
このビットは Rx FIFOをクリアするためのビットです。このビットに1を書き込むと Rx FIFOをリセットします。 |
WO |
0 |
TXFIFORST |
Reset Tx FIFO |
このビットは Tx FIFOをクリアするためのビットです。このビットに1を書き込むと Tx FIFOをリセットします。 |
WO |
UART Baudrate Setting Register (Offset 0x0010)
UART Baudrate Setting Registerは、UART通信のボーレートを設定するためのレジスタです。
この設定では、UARTの 1ビットの幅がシステムクロックの何サイクルで生成するかを設定します。 そのため、System Register.System Clock Control Registerの CLKMODEの設定を変更し、システムクロックの周波数が変わると設定しなおす必要があります。
レジスタの設定値はシステムクロックの周期と、設定するボーレートから以下のように計算することができます。
| bit | Symbol | Field | Description | R/W |
|---|---|---|---|---|
15:0 |
UDIVSET |
UART Divider Setting |
UART通信のボーレートを設定するためのフィールドです。 |
R/W |
AHB UART Lite IP Version Register (Offset: 0xF000)
AHB UART Lite IPのバージョン管理用レジスタです。
| bit | Symbol | Field | Description | R/W |
|---|---|---|---|---|
31:24 |
MAJVER |
AHB UART Lite IP Major Version |
AHB UART LiteコアのMajor Versionです。 |
RO |
23:16 |
MINVER |
AHB UART Lite IP Minor Version |
AHB UART LiteコアのMinor Versionです。 |
RO |
15:0 |
PATVER |
AHB UART Lite IP Patch Version |
AHB UART LiteコアのPatch Versionです。 |
RO |