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

AboutContactPrivacyTerms
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. Error Models

Part 10 · Reliability and Recovery · Foundation (F)

Error Models

What can go wrong between sender and receiver: flipped bits, bursts, stuck bits, and lost, duplicated or reordered messages. Bit error rate as a concept, and why the error model decides which protection a protocol needs.

On this page

    Note

    Level: Foundation (F) · Answers: What if bits go wrong?

    Before this: A Protocol Is a Contract

    A team protects an on-chip bus with parity and a chip-to-chip link with nothing, reasoning that the bus is long and the link is short. In the lab, the bus never shows an error and the link corrupts a word every few minutes. The link was short, but it crossed a connector, ran at 16 Gb/s, and shared a board with a switching power supply. The team protected against the errors they imagined, not the ones the channel produced.

    What kinds of errors does a link actually see, and how do you describe them well enough to choose a protection?

    The obvious answer, and why it breaks

    The obvious picture of an error is a single flipped bit, now and then, independent of everything else. Some channels behave like that. Many do not: noise arrives in bursts that flip several neighbouring bits; a broken wire flips the same bit every time; a buffer overflow loses a whole message; a retry duplicates one; a multi-path fabric reorders them. A protection designed for single random flips can miss all of these.

    The idea: an error model

    Error

    What happens

    Typical cause

    Needs

    Random bit flip

    One bit inverted, independently of others

    Thermal noise, jitter at the sampling point

    Parity, CRC, ECC

    Burst

    Several nearby bits wrong together

    Crosstalk, a supply glitch, a lost lock in the receiver

    CRC (detects bursts up to its width), interleaved or symbol-based FEC

    Stuck bit

    One bit always 0 or always 1

    A broken wire or pin, a manufacturing defect

    Codes that detect it plus a recovery such as dropping the lane

    Lost message

    A whole packet never arrives

    Overflow, a dropped packet after a failed check

    Sequence numbers and timeouts

    Duplicated message

    The same packet arrives twice

    A retry after an acknowledgement was lost

    Sequence numbers, idempotency (lesson 10.13)

    Reordered messages

    Packets arrive out of order

    Multiple paths, adaptive routing

    Sequence numbers, reorder buffers

    Soft error in storage

    A bit in a memory or register flips while stored

    Particle strikes

    ECC on memories

    An error model says which of these a channel can produce and how often. Each protection in this part targets a part of the model, and the protocol is only as strong as its weakest uncovered case.

    Bit error rate

    The bit error rate (BER) is the fraction of bits received wrong, measured over a long time. It turns "rarely" into a number that can be budgeted:

    Diagram
    Link at 32 Gb/s with BER 1e-12:
      bit errors per second  = 32e9 x 1e-12   = 0.032   (one every ~31 s)
    Same link with BER 1e-15:                 = 3.2e-5   (one every ~8.7 hours)
    A 1 GB/s on-chip bus with BER 1e-20:      = 8e-11    (one every ~400 years)

    Fast serial links have BERs in the range where errors happen every few seconds to hours, so they need error detection and recovery as a matter of routine. Short on-chip wires are usually far better, which is why many on-chip buses have no protection at all, while their memories still need ECC against soft errors.

    How real links describe their error model

    Link

    Errors it plans for

    PCI Express

    Random and burst bit errors on each link, handled by a CRC per packet and replay (lesson 10.11); from Gen6, also forward error correction (lesson 10.6).

    Ethernet

    Bit errors detected by a CRC-32 per frame; bad frames are dropped and higher layers recover (lesson 10.14); fast links add Reed-Solomon FEC.

    DRAM

    Soft errors in stored bits, handled by ECC on the memory interface.

    What breaks

    The opening link (illustrative) had a BER around 1e-13 in the lab: about one error every five minutes at its speed. With no CRC, those errors reached the application as silent data corruption. Adding a CRC and replay, as every high-speed link protocol does, turned each error into an invisible retry costing a few hundred nanoseconds.

    Why this matters

    Senior lens. Before choosing any protection, write the error model: which error types the channel can produce, with rough rates, including bursts, stuck bits and lost or duplicated messages. Then map each one to the mechanism that handles it and the mechanism that reports it. Any error type without both is where silent corruption or a hang will come from.

    Interview

    Asked: "What kinds of errors does a link see?"

    Weak answer: Bit flips.

    Strong answer: Random single-bit flips from noise, bursts of several bits from crosstalk or a glitch, stuck bits from a broken wire, and at the message level, lost, duplicated and reordered packets from overflows, retries and multiple paths. Storage adds soft errors. Each needs different handling: CRC catches bursts up to its width, ECC corrects stored bits, sequence numbers catch loss and duplication, timeouts catch silence. I'd start from the bit error rate and the error types to budget detection and recovery.

    Follow-ups: (1) Why is a burst harder than a single flip? (2) How often does a 1e-12 BER link see an error?

    Check yourself A link runs at 10 Gb/s with BER 1e-12. Roughly how often does it see a bit error?

    10e9 × 1e-12 = 0.01 per second: about once every 100 seconds.

    Check yourself Which error types do sequence numbers address that CRCs do not?

    Lost, duplicated and reordered messages: a CRC checks the contents of a packet that arrives, not whether packets are missing or repeated.

    Key takeaways

    • Errors include random flips, bursts, stuck bits, soft errors in storage, and lost, duplicated or reordered messages.

    • The bit error rate turns "rarely" into a rate you can budget: fast links see errors every few seconds to hours.

    • Write the error model first, then map each error type to a mechanism that handles it and one that reports it.

    Keep going

    Next: Lesson 10.2, Parity. One extra bit that detects any odd number of flipped bits, and what it misses.

    Related topics

    • Part 10 overview: Reliability and Recovery

    Previous

    142 / 234

    Next: Parity

    Up next

    Up nextParity

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Hamming Distance
    • CRC
    • ECC and SECDED