6と7のリビジョン間の差分
2018-12-12 07:14:11時点のリビジョン6
サイズ: 2684
編集者: TakanoriKono
コメント:
2018-12-12 07:17:48時点のリビジョン7
サイズ: 2880
編集者: TakanoriKono
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 18: 行 18:
データ・タイプ 内部レジスタ(一例なので使いやすいように決めて下さい。)
|| '''バイト順''' || '''意味''' || '''内容''' || '''ソフトウェアからのR/W''' || '''回路ブロックからのR/W''' ||
|| 0 || コマンド・タイプ || 下の表のとおり || W || - ||
|| 1 || DELAY || Delay値1+Delay値2 || R/W || R/W ||
|| 2 || BERT_PRESET_N0 || BERTでテストするビット数(下位の数字) || R/W || W ||
|| 3 || BERT_PRESET_N1 || BERTでテストするビット数(上位の数字) || R/W || W ||
|| 4 || BERT_N0 || BERTでテストしたビット数(下位の数字) || R || W ||
|| 5 || BERT_N1 || BERTでテストしたビット数(上位の数字) || R || W ||
|| 6 || BERT_E0 || BERTでのエラービット数(下位の数字) || R || W ||
|| 7 || BERT_E1 || BERTでのエラービット数(上位の数字) || R || W ||

コマンド・タイプ
行 29: 行 40:
内部レジスタ(一例なので使いやすいように決めて下さい。)
|| '''バイト順''' || '''意味''' || '''内容''' || '''ソフトウェアからのR/W''' || '''回路ブロックからのR/W''' ||
|| 0 || コマンド || W || - ||
|| 1 || DELAY || Delay値1+Delay値2 || R/W || R/W ||
|| 2 || BERT_PRESET_N0 || BERTでテストするビット数(下位の数字) || R/W || W ||
|| 3 || BERT_PRESET_N1 || BERTでテストするビット数(上位の数字) || R/W || W ||
|| 4 || BERT_N0 || BERTでテストしたビット数(下位の数字) || R || W ||
|| 5 || BERT_N1 || BERTでテストしたビット数(上位の数字) || R || W ||
|| 6 || BERT_E0 || BERTでのエラービット数(下位の数字) || R || W ||
|| 7 || BERT_E1 || BERTでのエラービット数(上位の数字) || R || W ||
==== 回路への要求 ====
PCからパケットを受け取ったら、コマンド・タイプに応じて処理を適切に内容を処理する。

通信のための簡単なデータフォーマット

ソフトウェアとデジタル回路、またはソフトウェアの異なるプロセス間で通信する際の利用できるアプリケーション・レベルでの簡単なデータフォーマットについて説明する。 データ通信にはシリアル通信、TCP/IP, PCIe, USB等様々な規格があるが、ここで導入するのはこれらに変わるものではなく、これらに乗っかったアプリケーション・データのフォーマットについてである。データは1バイト単位とする。

フォーマット

バイト順

意味

内容

0

先頭文字

'M'

先頭バイトを示す目印

1

データ長

4以上の整数

パケット全体のバイト数

2

データ・タイプ

整数

アプリケーション毎に決める任意の値

3

予備バイト

0

予備

4~N-1

データの中身

アプリケーションによる

個別のアプリケーション例

NexysVideoによるFEI4との通信

内部レジスタ(一例なので使いやすいように決めて下さい。)

バイト順

意味

内容

ソフトウェアからのR/W

 回路ブロックからのR/W

0

コマンド・タイプ

下の表のとおり

W

-

1

DELAY

Delay値1+Delay値2

R/W

R/W

2

BERT_PRESET_N0

BERTでテストするビット数(下位の数字)

R/W

W

3

BERT_PRESET_N1

BERTでテストするビット数(上位の数字)

R/W

W

4

BERT_N0

BERTでテストしたビット数(下位の数字)

R

W

5

BERT_N1

BERTでテストしたビット数(上位の数字)

R

W

6

BERT_E0

BERTでのエラービット数(下位の数字)

R

W

7

BERT_E1

BERTでのエラービット数(上位の数字)

R

W

コマンド・タイプ

役割

データの内容

1

echo

任意のデータ

2

レジスタへの書き込み

アドレス(1 byte)+データ(4 bytes)

3

レジスタからの読み出し

アドレス(1 byte)

4

フロントエンドへのコマンド送信

FEI4へ送るコマンド列

5

IDELAYにDelay値を設定

無し。値は事前にレジスタに書き込んでおく。

6

BERT開始

無し

7

BERT終了

無し

複数バイトのデータを送る場合、バイト列の並びはbig endianとする。

回路への要求

PCからパケットを受け取ったら、コマンド・タイプに応じて処理を適切に内容を処理する。

SimpleMessageFormat (最終更新日時 2019-01-13 07:28:54 更新者 TakanoriKono)