CAN CRC mit VHDL berechnen und testen

Gast #744489
Lesenswert?
• ▲
▼
Hallo

Ich versuche gerade die CAN CRC Berechnung mit VHDL zu realisieren! Habe 
mir dazu eine Lösung auf opencores.org angesehen und mir daraus eine 
procedure erstelle welcherich die Daten übergebe und wleche mir nacher 
den crc zurückgeben sollte!

  begin
    crc_next_v  := crc_next;
    crc_tmp_v   := crc_tmp;
    crc_xhdl1_v := crc_xhdl1;
    crc_next_v  := data XOR crc_xhdl1_v(14) ;
    crc_tmp_v   := crc_xhdl1_v(13 DOWNTO 0) & '0';
    if (crc_next_v = '1') then
      crc_xhdl1_v := crc_tmp_v xor "100010110011001";
    else
      crc_xhdl1_v := crc_tmp_v ;
    end if;
    crc_next  <= crc_next_v;
    crc_tmp  <= crc_tmp_v;
    crc_xhdl1 <= crc_xhdl1_v;
  end;

Jetzt liefert er mir zwar einen wert zurück nur wie finde ich jetzt in 
der simulation heraus ob der wert stimmt!?

Gibt es vielleicht irgendein tool oder einen rechner wo man die 
nachricht eingibt und er das dann rechnet!?

MFG Fresh
Gast #748791
Lesenswert?
• ▲
▼
Hallo

Ich benutze eh Modelsim und er schckt mir pakete samt crc auch richtig 
weg aber er zeigt mir ja nicht an ob die crc summer richtig ist. Dachte 
da es da vielleicht einen crc Rechner gibt der mir aus gegeben SOF 
Identifier, control und Daten die crc berechnet!

Aber ich finde sowas nicht im Internet!

MFG Fresh
Gast #749005
Lesenswert?
• ▲
▼
Hallo

Habe auch noch ne andere Frage! ich habe eine serielle Schnittstelle für 
euine Baudrate von 460,8kbit/s erstellt. Dabei wird der eingang der 
Seriellen Schnittstelle mit der 8-fachen Baudrate abgetastet! Wenn ich 
in Modelsim eine Nachricht mit einer Bitzeit von 2,17us schicke 
funktioniert es einwandfrei. Auf der Hardware habe ich mir als kleine 
Hilfe die empfangenen 8 Bit auf den Leds ausgeben lassen und da kommt es 
nicht richtig an! Ich schicke mit realterm zum Beispiel 0x45 als Number 
und er zeigt gar nichts an! wenn ich 0xff schicke kommt nur 0xFE an usw.

Weis da vielleicht irgendwer ne Lösung!

MFG fresh

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren