I would like to know the difference between CRC calculation in CAN physical layer vs CRC calculation in the application layer. How does the CRC calculation in these layers affect the ASIL (Automobile Safety Integrity Level) ratings of a message?

  • 1
    \$\begingroup\$ The hardware CRC you get for "free"; the CAN controllers will calculate that CRC on both ends and indicate if an error has occurred. You don't lose any message payload capacity. "Software CRC" would be taking your message data, calculating an additional CRC on top of that, and potentially including it along with the message traffic. This does add overhead to the system, but you could argue it adds another layer of error-correction and detection to your system. But, what error would clobber your message data in such a way that only the protocol CRC catches it? \$\endgroup\$ – Krunal Desai Jun 17 '19 at 23:31
  • \$\begingroup\$ The physical hardware is not the same as the physical layer in the OSI model. \$\endgroup\$ – Tony Stewart EE75 Jun 18 '19 at 3:33
  • \$\begingroup\$ and CRC could be performed in H/W or S/W but is generally faster in H/W. But there are variations in implementation for different reliability factors. can-cia.org/can-knowledge/can/crc \$\endgroup\$ – Tony Stewart EE75 Jun 18 '19 at 3:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.