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
    • Common-Clock Interfaces
    • Asynchronous Serial and Oversampling
    • Source-Synchronous Clocks and Strobes
    • Embedded Clocks and Clock Recovery
    • Skew and Deskew
    • Clock Relationships
    • Elastic Buffers and Clock Compensation
    • Self-Timed Handshakes
    • Crossing at the Interface
    • Protocols Compared: Timing and Clocking
    • Drills: Timing and Clocking
  • 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
  • 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

‹First Principles of Hardware Protocols
  1. Topics
  2. First Principles of Hardware Protocols
  3. Part 1: Timing and Clocking

Part 1 · Timing and Clocking · All levels

Part 1: Timing and Clocking

When is the data valid? Choose a clocking scheme from distance, speed and pin budget.

  • 11topics
  • 11lessons
On this page

    Part 1 answers: When is the data valid?

    Where Part 1 sits among the fifteen questions of the course.

    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.

    After this part you can

    • 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.

    Warm-up: three questions from Part 0

    Answer each in your head before opening it. If two or more feel shaky, revisit Part 0: What Is a Protocol? first.

    Check yourself Name the three layers every protocol specification defines.

    Signals (the wires), meaning (what values stand for) and timing (when a value counts). A port list gives only the first.

    Check yourself Why does a protocol have to be checkable on the wires alone?

    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.

    Check yourself What does the end-to-end argument say about where a guarantee should live?

    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.

    Lessons

    #

    Lesson

    Level

    Status

    1.1

    Common-Clock Interfaces

    F · Foundation

    Ready

    1.2

    Asynchronous Serial and Oversampling

    F · Foundation

    Ready

    1.3

    Source-Synchronous Clocks and Strobes

    W · Working

    Ready

    1.4

    Embedded Clocks and Clock Recovery

    W · Working

    Ready

    1.5

    Skew and Deskew

    W · Working

    Ready

    1.6

    Clock Relationships

    S · Senior

    Ready

    1.7

    Elastic Buffers and Clock Compensation

    S · Senior

    Ready

    1.8

    Self-Timed Handshakes

    P · Principal

    Ready

    1.9

    Crossing at the Interface

    W · Working

    Ready

    —

    Protocols compared

    all levels

    Ready

    —

    Drills and checkpoint

    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.

    Where other courses go deeper

    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.

    • CDC & RDC: Handshake Protocols Across Domains

    • RTL: Source-Synchronous Interfaces

    Related topics

    • Course hub

    • Previous: Part 0 · What Is a Protocol?

    • Next: Part 2 · Encoding and Framing

    PreviousNext: Common-Clock Interfaces

    Up next

    Up nextCommon-Clock Interfaces

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • How to Use This Course
    • Reading Paths
    • Concept Map