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

  • Logic Synthesis Glossary
  • Logic Synthesis Cheatsheet
  • Synthesis Foundations14
  • Logic Optimisation and Mapping20
  • Constraints and Timing15
    • SDC for Synthesis
      • Clocks and Generated Clocks
      • Uncertainty, Latency and IO Delays
      • Driving Cells, Loads and Units
      • False, Multicycle and Max-Delay Paths
      • Missing and Over-Tight Constraints
    • Delay Models and Slack
    • Timing-Driven Synthesis
  • Sequential, FSM and Memory19
  • Datapath Synthesis14
  • Area, Power and Test14
  • Verification, ECO and Handoff15
  • Flows and Debugging15
  • Interview and Judgment11
Loading lesson

‹SDC for Synthesis
  1. Topics
  2. Logic Synthesis
  3. Constraints and Timing
  4. SDC for Synthesis
  5. Clocks and Generated Clocks

Part 3 · Constraints and Timing · Intermediate

Clocks and Generated Clocks

Master and generated clocks as EXAMPLE periods, and what each tells the tool.

On this page

    Clocks set the target

    A clock constraint names a clock and states its EXAMPLE period in nanoseconds. The period is the budget every path on that clock is measured against.

    Without a clock constraint the tool has no target for the paths on that clock. Those paths are unconstrained, and the lesson on missing constraints shows why that is a risk.

    Generated clocks

    A generated clock is derived from a master clock inside the design, for example by dividing it. The concept is a source clock plus a relationship, such as divide-by-2.

    Generated-clock handling varies between tools, so state the source and the relationship explicitly. The listing below sketches the idea in tool-neutral form.

    The listing below is illustrative tool-neutral SDC and is not run by any tool.

    Diagram
    illustrative SDC sketch (not run by any tool):
    create_clock -name CLK -period 10.0 [get_ports clk]
    # generated-clock sketch: source plus relationship; exact option spelling varies between tools
    create_generated_clock -name DIV2 -source CLK -divide_by 2 [get_pins div_q]

    Periods, frequencies and units

    Frequency is one divided by the period. Both numbers below are EXAMPLE parameters with stated units.

    Diagram
    EXAMPLE parameters (not real targets): master period 10.0 ns
    frequency = 1 / period = 1 / (10.0 x 10^-9 s) = 100 x 10^6 Hz = 100 MHz
    divide-by-2 clock: period = 2 x 10.0 ns = 20.0 ns
    generated frequency = 1 / (20.0 x 10^-9 s) = 50 MHz

    Command idea

    Purpose

    create_clock

    Names the clock and states its EXAMPLE period.

    Generated-clock sketch

    Names the derived clock, its source, and the divide or multiply relationship.

    Common pitfall

    Constraining only the master clock leaves derived clocks without a target when the tool does not propagate them. Constrain each clock the design uses, or confirm in the tool how derivation is handled.

    Interview

    Likely probes: what create_clock states, and what a generated clock adds.

    • create_clock states a name and an EXAMPLE period; the period is the target.

    • A generated clock adds a source plus a divide or multiply relationship.

    • Period and frequency are inverses; 10.0 ns is 100 MHz and 20.0 ns is 50 MHz.

    Check yourself A master clock has an EXAMPLE period of 10.0 ns. What is its frequency?

    100 MHz. Frequency is 1 divided by 10.0 ns, which is 100 x 10^6 Hz.

    Check yourself A divide-by-2 clock derives from that master. What are its period and frequency?

    Period 20.0 ns and frequency 50 MHz. Doubling the period halves the frequency.

    Related topics

    • Uncertainty, Latency and IO Delays

    • Delay Models and Slack

    • See also: STA Foundations

    Previous

    37 / 139

    Next: Uncertainty, Latency and IO Delays

    Up next

    Up nextUncertainty, Latency and IO Delays

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Driving Cells, Loads and Units
    • False, Multicycle and Max-Delay Paths
    • Missing and Over-Tight Constraints