|
Для тех кто тоже интересуется
По поводу ссылки на 761 странице:
Алгоритм приведенный для VHDL на
http://www.easics.com/webtools/crctool
-- polynomial: (0 3 7)
-- data width: 8
-- convention: the first serial data bit is D(7)
function nextCRC7_D8
( Data: unsigned(7 downto 0);
CRC: unsigned(6 downto 0) )
return unsigned is
variable D: unsigned(7 downto 0);
variable C: unsigned(6 downto 0);
variable NewCRC: unsigned(6 downto 0);
begin
D := Data;
C := CRC;
NewCRC(0) := D(7) xor D(4) xor D(0) xor C(3) xor C(6);
NewCRC(1) := D(5) xor D(1) xor C(0) xor C(4);
NewCRC(2) := D(6) xor D(2) xor C(1) xor C(5);
NewCRC(3) := D(4) xor D(3) xor D(0) xor C(2) xor C(3);
NewCRC(4) := D(5) xor D(4) xor D(1) xor C(0) xor C(3) xor C(4);
NewCRC(5) := D(6) xor D(5) xor D(2) xor C(1) xor C(4) xor C(5);
NewCRC(6) := D(7) xor D(6) xor D(3) xor C(2) xor C(5) xor C(6);
return NewCRC;
end nextCRC7_D8;
дает почему-то не такой результат как в контрольном
примере для команды CMD0.
Есть еще такая ссылочка но там тоже как-то мутно
http://www.avr1.org/pipermail/avr-gcc-list/2003-April/004237.html
Но результат совпадает с тем что на VHDL.
E-mail: info@telesys.ru