Skip to content
DenseChip
Learn
PracticeCode labInterview

DenseChip

Navigate

Menu

LearnPracticeCode labInterview

Tools

All toolsSV editorCode repoResume
DenseChip

Practice, courses, and chip-design tools in one focused workspace.

LearnPracticeCode labInterviewToolsLearning paths

© 2026 DenseChip

AboutRoadmapCareersInternshipsFAQContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Course
  • Reading Paths
  • Concept Map
  • How to Read the Diagrams
  • Part 0: What Is a Protocol?10
  • Part 1: Timing and Clocking11
  • Part 2: Encoding and Framing12
  • Part 3: Handshakes13
  • Part 4: Flow Control17
  • Part 5: Transactions19
  • Part 6: Concurrency and Performance17
  • Part 7: Ordering13
  • Part 8: Sharing and Arbitration12
  • Part 9: Deadlock and Liveness13
  • Part 10: Reliability and Recovery20
    • Error Models
    • Parity
    • Hamming Distance
    • CRC
    • ECC and SECDED
    • Forward Error Correction
    • Error Responses
    • Poison and Containment
    • ACK and NAK
    • Sequence Numbers
    • Replay Buffers
    • Go-Back-N or Selective Repeat
    • Idempotency and Safe Replay
    • Link-Level or End-to-End Protection
    • Error Classes and Reporting
    • Recovery and Degradation
    • Interface Protection and Safety
    • The Reliability Budget
    • Protocols Compared: Reliability and Recovery
    • Drills: Reliability and Recovery
  • Part 11: Bring-Up and Link Management10
  • Part 12: Power8
  • Part 13: Shared State and Coherence9
  • Part 14: Security and Isolation7
  • Part 15: Specifying and Verifying11
  • Part 16: Protocols Dissected17
  • Part 17: Capstones5
  • Part 18: Interview Preparation6
Loading lesson

←Part 10: Reliability and Recovery
  1. Topics
  2. First Principles of Hardware Protocols
  3. Part 10: Reliability and Recovery
  4. Protocols Compared: Reliability and Recovery
On this page

    Part 10 of 18, lesson 19 of 20Part 10 of 18/Reliability and Recovery/Lesson 19 of 20All levels

    Protocols Compared: Reliability and Recovery

    How PCI Express, Ethernet, AXI, DRAM and DCLink detect, correct and recover from errors: checks, FEC, acknowledgements, replay, poison and reporting.

    Read across for one protocol; read down to see how differently the same error is caught and recovered.

    Reliability, side by side

    PCI Express

    Ethernet (+TCP)

    AXI

    DRAM

    DCLink

    Detection on the wire

    32-bit LCRC per TLP per link

    CRC-32 per frame

    None in the base protocol

    ECC on the data bus

    CRC-8 per packet

    Correction

    FEC from Gen6 (in flits)

    Reed-Solomon FEC on 25G+ lanes

    —

    SECDED (or stronger)

    —

    Recovery

    ACK/NAK, 12-bit sequence numbers, go-back-N replay, replay timer

    Drop bad frames; TCP retransmits end to end

    Error responses to the requester

    Correct, or report uncorrectable

    ACK/NAK, 8-bit sequence, go-back-N (step 9)

    End-to-end check

    Optional 32-bit ECRC

    TCP checksum

    —

    ECC travels with the data

    —

    Bad data marking

    Poisoned TLP (EP bit)

    —

    —

    Poison in caches and fabrics

    —

    Error reporting

    Correctable, non-fatal, fatal; AER logging

    Counters (FCS errors, FEC statistics)

    SLVERR, DECERR

    Corrected-error counters, machine checks

    CPL status ERR

    Degradation

    Retrain, lower speed or width

    Re-establish link

    —

    Spare rows, page retirement (system)

    —

    What the table shows

    • Fast serial links detect per link and replay locally; FEC joins when the raw error rate rises.

    • On-chip buses mostly report rather than recover: errors are rare and the requester decides.

    • Storage corrects in place, because it has no sender to ask.

    • End-to-end checks and poison close the gaps that per-link checks leave inside devices.

    Where each idea is explained

    • 10.4 CRC

    • 10.5 ECC and SECDED

    • 10.6 Forward Error Correction

    • 10.9 ACK and NAK

    • 10.11 Replay Buffers

    • 10.8 Poison and Containment

    • 10.14 Link-Level or End-to-End Protection

    For any link, list each error type in its error model and name both the mechanism that recovers it and the one that reports it.

    Next: Drills: Reliability and Recovery. Interview questions, a whiteboard exercise and a ten-question checkpoint for Part 10.

    Related topics

    • Part 10 overview: Reliability and Recovery

    • Course hub

    Previous

    160 / 234

    Next: Drills: Reliability and Recovery

    Up next

    Up nextDrills: Reliability and Recovery

    Sign in to save progress

    Practice this lessonPrevious lessonReport an error

    See also

    • Error Models
    • Parity
    • Hamming Distance