У вас для каждого бита в байте, который приходит за такт, будут меняться коэффициенты полинома для скремблера и кодера (т.е. 8 раз такт) .
Как пример приведу часть vhdl кода расчета синдромов для однобитного и 8-ми битного БЧХ декодера
Однобитный:
Код
if(clk'event and clk='1')then -один такт
if counter = 0 then
for i in 0 to 7 loop
s(i*2+1):= (v & datain1);
end loop;
else
for i in 0 to 7 loop
s(i*2+1):= (v & datain1) xor gf_mult_2053(s(i*2+1),alfa(i*2+1));
end loop;
end if;
end if;
Восьмибитный:
Код
if(clk'event and clk='1')then -один такт
for k in 0 to 7 loop
if counter = 0 and k = 0 then
for i in 0 to t-1 loop
s(i*2+1):= (v & datain1(k));
end loop;
else
for i in 0 to t-1 loop
s(i*2+1):= (v & datain1(k)) xor gf_mult_2053(s(i*2+1),alfa(i*2+1));
end loop;
end if;
end loop;
end if;
Сообщение отредактировал Gold777 - Sep 21 2012, 17:13