Atmel Evaluation Kit AT91SAM9G25-EK AT91SAM9G25-EK データシート

製品コード
AT91SAM9G25-EK
ページ / 1102
334
SAM9G25 [DATASHEET]
11032C–ATARM–25-Jan-13
delta[i+1]  = (mu[i+1] * 2 - lmu[i+1]) >> 1;
/* In either case compute the discrepancy */
for (k = 0 ; k <= (lmu[i+1]>>1); k++)
{
if (k == 0)
dmu[i+1] = si[2*(i-1)+3];
/* check if one operand of the multiplier is null, its 
index is -1 */
else if (smu[i+1][k] && si[2*(i-1)+3-k])
dmu[i+1] = gf_antilog[(gf_log[smu[i+1][k]] + 
gf_log[si[2*(i-1)+3-k]])%nn] ^ dmu[i+1];
}
}
return 0;
}
27.5.3 Find the Error Position
The output of the get_sigma() procedure is a polynomial stored in the smu[NB_ERROR+1][] table.
The error position is the roots of that polynomial. The degree of this polynomial is very important
information, as it gives the number of errors. The PMERRLOC module provides a hardware
accelerator for this step.