特記事項: eri FastEthernet デバイスドライバ

第 3 章 パラメタの定義

この章では、eri デバイスドライバのパラメタとその設定方法について説明します。

ドライバのパラメタ値と定義

eri ドライバのパラメタの一覧を表 3-1 に示します。

表 3-1 eri ドライバのパラメタの状態と説明

パラメタ 

状態 

説明 

transceiver_inuse

読み取り専用 

現在の状態 

link_status

読み取り専用 

現在の状態 

link_speed

読み取り専用 

現在の状態 

link_mode

読み取り専用 

現在の状態 

ipg1

読み取り・書き込み可 

パケット間の間隔 (IPG) パラメタ 

ipg2

読み取り・書き込み可 

パケット間の間隔 (IPG) パラメタ 

pace_size

読み取り・書き込み可 

動作モードのパラメタ 

adv_autoneg_cap

読み取り・書き込み可 

動作モードのパラメタ 

adv_100fdx_cap

読み取り・書き込み可 

動作モードのパラメタ 

adv_100hdx_cap

読み取り・書き込み可 

動作モードのパラメタ 

adv_10fdx_cap

読み取り・書き込み可 

動作モードのパラメタ 

adv_10hdx_cap

読み取り・書き込み可 

動作モードのパラメタ 

autoneg_cap

読み取り専用 

ローカルトランシーバの 自動ネゴシエーション機能 

100fdx_cap

読み取り専用 

ハードウェアの ローカルトランシーバ機能 

100hdx_cap

読み取り専用 

ハードウェアの ローカルトランシーバ機能 

10fdx_cap

読み取り専用 

ハードウェアの ローカルトランシーバ機能 

10hdx_cap

読み取り専用 

ハードウェアの ローカルトランシーバ機能 

lp_autoneg_cap

読み取り専用 

接続相手の 自動ネゴシエーション機能 

lp_100fdx_cap

読み取り専用 

接続相手の機能 

lp_100hdx_cap

読み取り専用 

接続相手の機能 

lp_10fdx_cap

読み取り専用 

接続相手の機能 

lp_10hdx_cap

読み取り専用 

接続相手の機能 

instance

読み取り・書き込み可 

デバイスインスタンス 

lance_mode

読み取り・書き込み可 

パケット送信前の追加遅延 

ipg0

読み取り・書き込み可 

パケット送信前の追加遅延 

現在の状態の定義

読み取り専用のパラメタのインタフェースの動作モードと現在の状態を表 3-2 に示します。これらのパラメタには、現在の状態が定義されています。

表 3-2 現在の状態を定義する読み取り専用パラメタ

パラメタ 

説明 

値 

link_status

現在の接続状態 

0 = 切断 

1 = 接続 

link_speed

接続状態のときのみ有効 

0 = 10 Mbps 

1 = 100 Mbps 

link_mode

接続状態のときのみ有効 

0 = 半二重 

1 = 全二重 

パケット間隔 (IPG) パラメタ

RIO ASIC の Ethernet 機能ユニットは、プログラム可能なパケット間の間隔 (IPG:Inter-Packet Gap) パラメタであるipg1ipg2 に対応しています。IPG の合計値は、ipg1ipg2 の合計値になります。自動ネゴシエーションプロトコルによって接続速度が 10 Mbps に設定されている場合、IPGの合計は 9.6 マイクロ秒になります。接続速度が 100 Mbps の場合は、0.96 マイクロ秒になります。

IPG パラメタの ipg1 および ipg2 のデフォルト値と許容値を表 3-3に示します。

表 3-3 読み取り・書き込み可能なパケット間隔 (IPG) パラメタ

パラメタ 

値 (バイト時間) 

説明 

ipg1

0〜255 

ipg1 = 8 (初期化時のデフォルト値)

ipg2

0〜255 

ipg2 = 4 (初期化時のデフォルト値)

デフォルトの設定では、ipg1 が 8 バイト時間に設定され、ipg2 が 4 バイト時間に設定されます。これらはともに標準値です。バイト時間は、100 Mbps または 10 Mbps の接続速度で 1 バイトを送信するのに要する時間です。

これより長い IPG (ipg1ipg2 の合計) を使用するシステムがネットワークに存在し、それらのマシンによるネットワークへのアクセスが遅い場合は、長い IPG に一致するように他のマシンの ipg1ipg2 の値を大きくしてください。

lance_modeと ipg0 を使用したパケット送信前の追加遅延の定義

RIO ASIC の Ethernet 機能ユニットは、lance_mode という、プログラム可能なモードに対応しています。ipg0 は、lance_mode に関係するパラメタです。

lance_mode が有効(デフォルトの設定)な場合は、ipg0 パラメタを設定することによって、パケットを受信してから送信するまでの間に遅延が追加されます。ipg0 パラメタによって設定されるこの遅延は、ipg1ipg2 パラメタによって設定される遅延に追加されます。Ipg0 で追加遅延を設定することによって、衝突を減少させることができます。ただし、lance_mode を有効にしたシステムでは、ネットワーク上で時間が不足する可能性があります。

lance_mode が無効な場合は、ips0 の値は無視され、追加遅延は設定されません。この場合は、ipg1ipg2 によって設定された遅延だけが使用されます。他のシステムから大量の連続したパケットが送信され続けている場合は、lance_mode を無効にしてください。

追加遅延は、ipg0 パラメタに 0 〜 31 の値を設定することによって設定することができます。これは、ニブル時間で表した遅延です。ニブル時間は、接続上で 4 ビットを送信するために必要な時間です。接続速度が 10 Mbps の場合、ニブル時間は 400 ナノ秒となります。接続速度が 100 Mbps の場合は、40 ナノ秒となります。

たとえば、接続の速度が 10 Mbps で、ipg0 を 20 ニブル時間に設定した場合、追加遅延は 20 × 400 ナノ秒で 8000 ナノ秒になります。接続速度が 100 Mbps で、ipg0 を 30 ニブル時間に設定した場合は、30 × 40 ナノ秒で 1200 ナノ秒になります。

lance_modeipg0のパラメタの定義を表 3-4に示します。

表 3-4 lance_modeipg0 パラメタの定義

パラメタ 

値 

説明 

lance_mode

lance_mode 無効

lance_mode 有効 (デフォルト)

ipg0

0〜31* 

パケット送信前に IPG を追加 (1 パケット受信後) 

* デフォルト値は 16 ニブル時間です。10 Mbps の場合は 6.4 マイクロ秒、100 Mbps の場合は 0.64 マイクロ秒になります。 

動作モードのパラメタ

動作モードのパラメタとそのデフォルト値を表 3-5 に示します。

表 3-5 動作モードのパラメタ

パラメタ 

説明 

値 

adv_autoneg_cap

ハードウェアが通知するローカルトランシーバの機能 

0 = 強制モード 

1 = 自動ネゴシエーション (デフォルト) 

adv_100fdx_cap*

ハードウェアが通知するローカルトランシーバの機能 (読み取り・書き込みパラメタ) 

0 = 100 Mbps、全二重不可 

1 = 100 Mbps、全二重可 (デフォルト) 

adv_100hdx_cap*

ハードウェアが通知するローカルトランシーバの機能 (読み取り・書き込みパラメタ) 

0 = 100 Mbps、半二重不 

1 = 100 Mbps、全二重可 (デフォルト) 

adv_10fdx_cap*

ハードウェアが通知するローカルトランシーバの機能 (読み取り・書き込みパラメタ) 

0 = 10 Mbps、全二重不可 

1 = 10 Mbps、全二重可 (デフォルト) 

adv_10hdx_cap*

ハードウェアが通知するローカルトランシーバの機能 (読み取り・書き込みパラメタ) 

0 = 10 Mbps、半二重不可 

1 = 10 Mbps、半二重可 (デフォルト) 

* これらのパラメタの優先順位は、値の高いものから順に adv_100fdx_capadv_100hdx_capadv_10fdx_capadv_10hdx_cap となります。

送信可能な連続パケット数の定義

pace_size パラメタ (表 3-6 を参照) は、一度に送信することができる連続パケットの最大数を定義します。pace_size の値が 0 の場合は、送信することができる連続パケットの数に制限はありません。

表 3-6 連続パケットの送信制限

パラメタ 

値 

説明 

pace_size

1〜255 

 

一度に送信できる連続パケット数 

 

一度に送信できる連続パケット数の制限なし (デフォルト) 

トランシーバの機能の報告

読み取り専用トランシーバの機能を表 3-7 に示します。これらのパラメタは、ハードウェアの機能を定義します。ローカルトランシーバはこれらの機能のすべてに対応します。

表 3-7 トランシーバの機能を示す読み取り専用パラメタ

パラメタ 

説明 

値 

autoneg_cap

ハードウェアのローカルトランシーバ機能 

0 = 自動ネゴシエーション不可 

1 = 自動ネゴシエーション可 

100fdx_cap

ハードウェアのローカルトランシーバ機能 (起動時に初期化) 

0 = 100 Mbps、全二重不可 

1 = 100 Mbps、全二重可 

100hdx_cap

ハードウェアのローカルトランシーバ機能 (起動時に初期化) 

0 = 100 Mbps、半二重不可 

1 = 100 Mbps、半二重可 

10fdx_cap

ハードウェアのローカルトランシーバ機能 (起動時に初期化) 

0 = 10 Mbps、全二重不可 

1 = 10 Mbps、全二重可 

10hdx_cap

ハードウェアのローカルトランシーバ機能 (起動時に初期化) 

0 = 10 Mbps、半二重不可 

1 = 10 Mbps、半二重可 

接続相手の機能の報告

接続相手の機能を示す読み取り専用パラメタを表 3-8 に示します。

表 3-8 接続相手の機能を示す読み取り専用パラメタ

パラメタ 

値 

説明 

lp_autoneg_cap

0= 

1= 

自動ネゴシエーション不可 

自動ネゴシエーション可 

lp_100fdx_cap

0= 

1= 

100 Mbps、全二重送信不可 

100 Mbps、全二重送信可 

lp_100hdx_cap

0= 

1= 

100 Mbps、半二重送信不可 

100 Mbps、半二重送信可 

lp_10fdx_cap

0= 

1= 

10 Mbps、全二重送信不可 

10 Mbps、全二重送信可 

lp_10hdx_cap

0= 

1= 

10 Mbps、半二重送信不可 

10 Mbps、半二重送信可 

接続相手が自動ネゴシエーションを行うことができない場合 (lp_autoneg_cap が 0 の場合) は、パラメタの値は 0 となり、表 3-8 の情報は適用されません。

接続相手が自動ネゴシエーションを行うことができる場合 (lp_autoneg_cap が 1 の場合) は、自動ネゴシエーションを使用して接続相手の機能を調べることによって、動作速度と動作モードの情報を表示することができます。