メモリのエラー検出及び訂正にECCを利用している。
データバス幅2^nビットに対して冗長ビットがn+2ビット必要なとき,128ビットのデータバス幅に必要な冗長ビットは何ビットか。
正答3
解説
正解は3です。
ECC(Error Correcting Code:誤り訂正符号)メモリでは、データに冗長ビットを付加して誤りを検出・訂正します。
問題文の条件「データバス幅2^nビットに対して冗長ビットn+2ビット」に当てはめて計算します。
【計算】
128=2^7なので、n=7です。
冗長ビット=n+2=7+2=9ビットです。
【選択肢別解説】
1:× 7ビットはnの値そのもので、+2を加えていないので誤りです。
2:× 8ビットはn+1に相当し、条件のn+2と合いません。
3:○ 128ビット=2^7ビットなので、7+2=9ビットが必要です。
4:× 10ビットはn+3に相当し、条件より1ビット多いので誤りです。
【ポイント】
メモリのECCでは、1ビット誤りの訂正と2ビット誤りの検出ができるハミング符号の拡張が広く使われます。
例えば64ビット(2^6)のデータでは、同じ式で8ビットの冗長ビットになります。