Ищу пример программы или нормально описаный алгоритм подсчета CRC7 для MMC.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено derun 27 декабря 2004 г. 18:37

Для тех кто тоже интересуется
По поводу ссылки на 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