インターフェース・バス規格

PCI Expressのデータリンク層が、伝送中のビットの誤りに対して行うこととして正しいものはどれか。

  1. A誤りがあっても何もせず、ソフトウェアが気づくまでそのまま使う
  2. B誤りが見つかったら、その機器の電源を切る
  3. CパケットにCRCを付けて誤りを検出し、誤りがあれば受け取れなかったことを知らせて送り直させる
答えと解説を見る

正解:C. パケットにCRCを付けて誤りを検出し、誤りがあれば受け取れなかったことを知らせて送り直させる

データリンク層は、各パケットに通し番号とCRC(巡回冗長検査)の符号を付けて送ります。受け側はCRCを確かめ、正しければACK、誤りがあればNAKを返し、送り側は確認が取れるまでパケットを手元に残しておいて、NAKを受けたら送り直します。この仕組みのおかげで、物理層でまれにビットの誤りが起きても、上の層やソフトウェアには正しいデータが届きます。

  • A. データリンク層で誤りを見つけて直します。
  • B. 電源を切るようなことはしません。
  • C. 正しい。ACKとNAKによる再送の仕組みです。
この分野を解く 分野ページへ

インターフェース・バス規格のほかの問題

  1. PCI Expressの機器のレジスタやメモリを、CPUから読み書きできるようにするしくみとして正しいものはどれか。
  2. PCI Expressで使われるMSI(メッセージシグナル割り込み)の特徴として正しいものはどれか。
  3. インターフェースの性能を表す「帯域」と「遅延(レイテンシ)」の違いとして正しいものはどれか。
  4. 帯域10 GB/s、遅延1 µsの接続で、64バイトのデータを1回送るのにかかる時間に最も近いものはどれか(時間=遅延+データ量÷帯域とする)。
  5. 機器との間で小さなデータを1つずつ何千回もやり取りするプログラムを速くする方法として、最も効果的なものはどれか。