Part 1 answers: When is the data valid?
A receiver has to decide when to sample. Every interface answers that with one of a handful of schemes: a shared clock, no clock at all, a clock sent alongside the data, or a clock hidden inside the data transitions. Each scheme hits a different wall as distance and speed grow.
This part walks the schemes in that order, then covers the problems they create (skew, ppm offsets, clock compensation) and where the clock-domain crossing sits inside a protocol.
Choose a clocking scheme from distance, speed and pin budget.
Compute how often two nominally equal clocks slip a cycle.
Explain why serial links insert filler symbols.
Answer each in your head before opening it. If two or more feel shaky, revisit Part 0: What Is a Protocol? first.
Signals (the wires), meaning (what values stand for) and timing (when a value counts). A port list gives only the first.
Neither side can see inside the other. Anything one side relies on must be visible at the interface, or the other side cannot keep the promise and nobody can verify it.
If only the end points know enough to perform a function correctly, it must be done there. Lower layers may add it only to improve performance.
# | Lesson | Level | Status |
|---|---|---|---|
1.1 | F · Foundation | Ready | |
1.2 | F · Foundation | Ready | |
1.3 | W · Working | Ready | |
1.4 | W · Working | Ready | |
1.5 | W · Working | Ready | |
1.6 | S · Senior | Ready | |
1.7 | S · Senior | Ready | |
1.8 | P · Principal | Ready | |
1.9 | W · Working | Ready | |
— | all levels | Ready | |
— | all levels | Ready |
Every lesson in this part is ready. Work through them in order: each one sets up the problem the next one solves.
This course teaches why protocols are designed the way they are. These lessons show how to build or sign off the same ideas, so this part links to them instead of repeating them.