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

  • RTL Foundations36
  • Combinational Design25
  • Sequential Design27
  • FSM & Control27
  • Timing & Clocking39
  • Reset & CDC34
  • Memory & Buses57
    • SRAM and ROM
    • Register Files
    • Valid/Ready Handshake
      • Rules That Keep Flow Control Safe
      • Skid Buffer and Pipeline Stages
      • AXI-Style Channels and Backpressure
      • Three Pipeline Stage Styles, Measured
    • AXI-Lite
    • AXI-Stream
    • Bus Integration
    • Synchronous FIFO
    • Register-Map and CSR RTL
    • Memory Reliability
    • Peripheral RTL Integration
    • Full AXI4: RTL Roadmap
  • Advanced RTL28
  • Senior & Interview76
  • Glossary and Notation
Loading lesson

←Memory & Buses
  1. Topics
  2. RTL Design
  3. Memory & Buses
  4. Valid/Ready Handshake
On this page

    Part 7 of 9Part 7 of 9/Memory & BusesIntermediate

    Valid/Ready Handshake

    One rule moves every beat: a transfer happens on a clock edge where valid and ready are both high.

    • 4topics
    • 4lessons

    Topics in this section

    1. 1Rules That Keep Flow Control Safe1 lesson
    2. 2Skid Buffer and Pipeline Stages1 lesson
    3. 3AXI-Style Channels and Backpressure1 lesson
    4. 4Three Pipeline Stage Styles, Measured1 lesson

    Every streaming interface in this part speaks one handshake. The source offers a beat with valid, the sink answers with ready, and the beat moves on a clock edge where both are high.

    Signal

    Driver

    Meaning

    valid

    Source

    The payload is meaningful this cycle.

    ready

    Sink

    The sink can take a beat this cycle.

    transfer

    Both

    valid && ready at the edge moves one beat.

    Each slot is one clock cycle. The xfer lane is valid && ready: a high slot means a beat moves at the edge that ends it.

    • Slots 0 to 2: the source offers 0xA1 and holds it while ready is low. Nothing moves.

    • Slot 3: ready rises and 0xA1 transfers once, although valid was high for four slots.

    • Slots 4 and 5: ready alone moves nothing; 0xB2 then transfers in the slot it is offered.

    Lessons in this topic

    4 lessons, about 22 min

    1. 1Rules That Keep Flow Control SafeYou can state the transfer rule and the stability rules behind it, and count beats correctly in a monitor.4 min
    2. 2Skid Buffer and Pipeline StagesYou can build a two-register skid buffer with a registered ready, and explain what happens on a push, a pop and a coincident pop and push.5 min
    3. 3AXI-Style Channels and BackpressureYou can map the five AXI channels onto valid/ready, say who drives each signal, and explain how registered ready and FIFOs keep timing closed.4 min
    4. 4Three Pipeline Stage Styles, MeasuredYou can predict throughput and latency for a pass-through stage, a plain registered slice and a skid buffer under any ready pattern, and pick the right one for a link.9 min
    Check yourself Valid is high for three cycles while ready stays low, then both are high for one cycle. How many transfers happened?

    One. Only the cycle with both high moves a beat. Count transfers, not levels.

    Likely question: “Who drives valid, who drives ready, and what must hold still while stalled?” The source drives valid and the payload, the sink drives ready, and valid plus the payload stay stable while valid is high and ready is low.

    Revision sheet

    The whole topic on one page, taken from each lesson's Remember box. Read it before an interview, or print it.

    Rules That Keep Flow Control Safe

    • A beat moves on the clock edge where valid and ready are both high. The source drives valid and the payload, and the sink drives ready.

    • Valid must not depend combinationally on ready. While valid is high and ready is low, valid and the payload stay stable.

    • Throughput is transfer events, not levels: count valid && ready edges.

    Rule of thumb: the source offers without waiting for ready, and holds the offer until the edge where ready joins it.

    Skid Buffer and Pipeline Stages

    • Two registers hold at most two beats: an output register and a skid register.

    • Ready is registered and low whenever both are full, so a push never lands in a full buffer.

    • A pop that coincides with a push passes the new beat straight to the output with no bubble.

    Rule of thumb: register the ready, and give the in-flight beat a second register to land in.

    AXI-Style Channels and Backpressure

    • Each channel has its own valid, ready and transfer event, but shared capacity and transaction dependencies can still throttle another channel.

    • A registered ready breaks the long combinational ready chain through the interconnect.

    • Size a FIFO against the round-trip latency of the ready path.

    Three Pipeline Stage Styles, Measured

    • Pass-through: full rate, 9 flops, but ready is combinational and grows by one gate per chained stage.

    • Plain registered slice: registered ready, 9 flops, but at most one word every two cycles.

    • Skid buffer: full rate and registered ready for 19 flops; under back-pressure it holds more words, so latency rises.

    Rule of thumb: if ready must be registered and the link must run at full rate, you need two data registers.

    Practise it

    • Mini project: a two-master bus with decoder, default slave and timeout

    • Practice question: Two-stage valid/ready pipeline: throughput, backpressure and skid buffers

    • Code lab: AXI stream handshake

    • Code lab: Skid buffer

    • Practice question: AXI slave interface with write data buffering

    • Interview: run a mock interview on this topic

    PreviousNext: Rules That Keep Flow Control Safe

    Up next

    Up nextRules That Keep Flow Control Safe

    Sign in to save progress

    Practice this lessonPrevious lessonReport an error

    See also

    • SRAM and ROM
    • Register Files
    • AXI-Lite
    clkvalidreadydataa1b2xfer
    One beat stalled for three cycles and then transferred, a ready with nothing offered, and a beat that moves at once: two transfers in seven cycles