TEL:086-227-0113
info@gopher-tec.jp
TOP page 製品情報 FPGAソース Receiver Block for UART
Receiver Block for UART

UARTのデータ受信部分のサンプルコードです。
16段のFIFOとシフトレジスタ、そしてステートマシンで構成されます。
CPUのコンソール用というよりも、FPGAのデバッグ時に外部から設定をソフトウェアレスで変更
するためのUART、という役回りで使用されます。
キャラクチャ長5~8ビット、パリティの偶/奇/なし、データ受信を通知するFIFO内データ量閾値
1/4/8/14バイト等が外部信号によって選択可能です。

Name I/O  Description 
CLK_IN in 本モジュールの内部動作クロック入力です。
24M~133.33MHzのクロック(ただし制限あり)が接続される想定です。
詳しくは弊社の”Baud Rate Generator for UART”モジュールの資料から、
CLK_INに関する記載をご覧下さい。
RST in 非同期リセット入力です。パワーオン時、またはシステムリセット時にアサートして下さい。
CKE_RX in UART受信用クロックイネーブル入力です。
ボーレートの周期でアサートされるCLK_INに同期した信号を入力して下さい。
上記”Baud Rate Generator for UART”モジュールとセットで使用する場合は、
そのCKE_RX 出力を直接接続して下さい。
RX_EN in 受信開始のイネーブル入力です。
RS232Cの制御線(本モジュールにはありません)等を使ってフロー制御を行いたい場合は、
このポートを操作することで受信開始の制御が可能です。不要な場合はHi固定として下さい。
RX_CHAR_LEN[1:0] in 受信するキャラクタ長を設定する信号です。
00の時5ビット、01の時6ビット、10の時7ビット、11の時8ビットとなります。
RX_PAR_TYP[1:0] in キャラクタに続いて受信されるパリティビットを設置する信号です。
00または01の時パリティなし、10の時偶数パリティ、11の時奇数パリティとなります。
RX_STOP_LEN[1:0] in 本モジュールではインプリメントされていません。常に00 を入力して下さい。
RX_TRIG_LEV[1:0] in RX_TRIG_BO信号のアサート条件を設定する信号です。
00の時、受信データFIFOに1バイト以上データがあれば同信号がアサートされます。
01の時は4バイト以上、10の時は8バイト以上、11の時は14バイト以上でアサートされます。
RX_BO_STB in 受信データFIFOからキャラクタを読み出し終わる毎、1パルス分アサートして下さい。
これによって受信データFIFOのリードポインタが内部でインクリメントされます。
RX_BO_DAT[7:0] out 受信データFIFOからのデータ出力です。
RX_BO_PERR out 受信データFIFOからのデータ出力のステータスビットで、1の時パリティエラーの検出を意味
します。
RX_BO_FERR out 受信データFIFOからのデータ出力のステータスビットで、1の時フレーミングエラー検出を意味
します。
RX_BO_BREAK out 受信データFIFOからのデータ出力のステータスビットで、1の時ブレークの検出を意味します。
RX_BO_ERR_SUM out エラーサマリービットです。受信データFIFO内に、パリティエラー、フレーミングエラー、
ブレーク受信のいずれかを伴ったデータが含まれている場合に1になります。
RX_BO_FULL out 受信データFIFO内のフルフラグです。
RX_BO_TRIG out 1の時、受信データFIFO内にRX_TRIG_LEV[1:0]で設定した量のデータがあることを示します。
RX_BO_EMPTY out 受信データFIFOのエンプティフラグです。
RX_SET_OVERRUN out 受信オーバーラン(FIFOオーバーフロー)が発生した時、1パルス分アサートされます。
RX_BREAKING out 1の時、現在ブレークを受信中であることを示します。
RX_TIMEOUT out 1の時、最後に受信して以降4キャラクタ時間を超えて新たな受信もFIFOデータリードもなく、
かつ受信データFIFOにデータが残っていることを示します。
SIM in UARTのシリアル入力です。データライン上のノイズの除去機能は本モジュールに
含んでいません。
※特に注記のない限り、信号は全て正論理です。
本ソースコードはVerilog版のみとなっております。
詳細は下記の資料ダウンロードをクリックください。
ソースコード自体は当社WEBストアにて販売しております。

Receiver Block for UART
資料ダウンロード