Answer each question out loud before opening it. If you miss more than three in the checkpoint, revisit the lessons linked at the end.
Any even number of flipped bits; and it cannot correct.
Detect 3, or correct 1 and detect 2 (SECDED).
An r-bit CRC catches every burst up to r bits; sums are fooled by cancelling errors.
Syndrome plus overall parity: non-zero syndrome with bad parity is single; with good parity, double.
PAM4 raised the raw error rate so much that replay alone would cost too much; FEC fixes most errors in place, with CRC and replay behind it.
NAKs recover corruption in one short round trip; the timer covers total loss.
Go-back-N: W ≤ 2^n − 1; selective repeat: W ≤ 2^(n−1).
LCRC protects each link and is regenerated; ECRC protects the whole path, including inside switches.
Task. Design the error handling for a 64 Gb/s chip-to-chip link carrying 256-byte packets, raw BER 1e-12, replay round trip 400 ns, in a fleet of 10 million links. State detection, recovery, sequence numbers, buffering and reporting.
Detection: a 32-bit CRC per packet (a 16-bit CRC would let too many errors through across 10 million links). Errors: 64e9 × 1e-12 = 0.064 per second per link, one every ~16 s; replay with ACK/NAK and go-back-N is ample, costing 0.064 × 400 ns of link time per second, negligible. Window: bandwidth × ACK round trip = 64e9 / (280 × 8) × 400 ns ≈ 11 packets; design for 64 outstanding, so 7-bit sequence numbers for go-back-N and a 64-packet replay buffer (about 18 KB). A replay timer above the worst-case round trip. Reporting: count corrected errors (replays), interrupt on a rising rate; a replay counter that rolls over triggers retraining, with lane dropping or a lower speed as degraded modes; uncorrectable conditions reported as fatal for the link. Undetected budget: with CRC-32, pessimistically ~0.064 × 2⁻³² per second per link × 1e7 links × 3.15e7 s ≈ 4,700 per year across the fleet; the realistic figure is far lower (CRC-32 catches every single-bit error and short burst), but if the requirement is near zero, add an end-to-end check on the path.
Bursts, stuck bits, lost, duplicated or reordered messages, soft errors in storage.
0.016: about one a minute.
5.
Detection of every burst of 16 bits or fewer.
Target error: the target exists but could not do it; decode error: no target owns the address.
The transaction completes, but whoever consumes the data gets an error; nothing hangs and nothing spreads silently.
The far receiver discards duplicates by sequence number, so the target sees each request once.
At high packet error rates, a few percent and above.
Count and log them; interrupt on a rising rate.
Retrain at the next supported narrower width, typically x4, at half the bandwidth, and report the degraded state.