– Codeword = Dataword with Check Sequence Appended Can be thought of a pseudo-random number based on dataword value.– Check Sequence: the result of the CRC or checksum calculation – Dataword: the data you want to protect (can be any size from bits to GBytes) Compute check sequence when data is transmitted or stored.System level effects & cross-layer interactionsĬhecksums and CRCs Protect Data Integrity.Mapping to functional criticality levels (summary).– Commonly used CRC approaches and their performance – Commonly used checksums and their performance – Overview of “error detection concepts for poets” – Motivation – most folk wisdom about CRCs & Checksums is incorrect – Extensive experience with aviation computing systems – Fault tolerant system architectures & development process Brendan Hall – Industry Practices & Criticality Mapping.– Extensive data communications experience for aviation – Ultra-dependable systems research & security – Engineering Fellow, Honeywell Laboratories (MN) Kevin Driscoll – Industry Practices & Criticality Mapping.– Industry experience with transportation applications – Embedded systems research, emphasizing dependability & safety – Professor at Carnegie Mellon University (PA) Philip Koopman – CRC/Checksum Evaluation.This presentation does not constitute FAA policy. Represent the views of the funding agency. The findings and conclusions in this presentation are those of the author(s) and do not necessarily Hughes Technical Center, Aviation Researchĭivision, Atlantic City International Airport, New Jersey 08405. This work was supported by the Federal Aviation Administration, Aircraft Certification Service, andĪssistant Administration for NextGen, William J. He is a senior member of IEEE, senior member of the ACM, and a member of IFIP WG 10.4 on Dependable Computing and Fault Tolerance.ĭata Integrity Techniques: Aviation Best Practices for CRC & Checksum Error DetectionĬarnegie Mellon Kevin Driscoll, Brendan Hall He has affiliations with both the Carnegie Mellon Electrical & Computer Engineering Department (ECE) and the National Robotics Engineering Center (NREC). In addition to a variety of academic publications and two dozen patents, he has authored the book Better Embedded System Software based on lessons learned from more than a hundred design reviews of industry software. Previously, he was a US Navy submarine officer, an embedded CPU architect for Harris Semiconductor, and an embedded system researcher at United Technologies. Philip Koopman is a professor at Carnegie Mellon University, with research interests in the areas of software robustness, embedded networking, dependable embedded computer systems, and autonomous vehicle safety. Some key research findings that are discussed include: a well-chosen CRC is usually dramatically better than a checksum for relatively little additional computational cost you can usually do a lot better than “standard” CRC (especially CRC-32) Hamming Distance at the target payload length is the predominant selection criterion of interest and it is important to avoid bit encoding approaches that undermine CRC effectiveness.ĭr. This talk will covers the following areas: checksum and CRC theory with an emphasis on intuitive understanding rather than heavy math why using a standard or widely used CRC can be suboptimal (or worse) how to pick a good checksum/CRC the key parameters that affect the error detection capability of a checksum/CRC CRC pitfalls illustrated via examples from Controller Area Network and ARINC-825 an example CRC selection process for achieving a required level of functional criticality and a “seven deadly sins” list for CRC/checksum use. However, recent work has been able to exhaustively explore the CRC design space and identify optimal selection criteria based on key system characteristics. More than 50 years since the invention of the CRC, the proper use of these error detection codes is still hampered by a combination of misleading folklore, sub-optimality of standard approaches, general inaccessibility of research results, and the occasional typographical error in key reference materials. This talk includes both a tutorial and explanation of research results on the proper use of Cyclic Redundancy codes (CRCs) and checksums in an aviation context. Philip Koopman, Carnegie Mellon University
0 Comments
Leave a Reply. |