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
    • Synthesis Flow Overview
      • What Synthesis Does
      • The Five Flow Stages
      • Why Constraints Change the Netlist
      • A Small Design Through Yosys
      • Concepts, Not Commands
    • Synthesizable RTL and Inference
    • Reading Netlists and Reports
  • Logic Optimisation and Mapping20
  • Constraints and Timing15
  • Sequential, FSM and Memory19
  • Datapath Synthesis14
  • Area, Power and Test14
  • Verification, ECO and Handoff15
  • Flows and Debugging15
  • Interview and Judgment11
Loading lesson

‹Synthesis Flow Overview
  1. Topics
  2. Logic Synthesis
  3. Synthesis Foundations
  4. Synthesis Flow Overview
  5. What Synthesis Does

Part 1 · Synthesis Foundations · Intermediate

What Synthesis Does

Inputs and outputs of synthesis, where it sits in the flow, and area in library units.

On this page

    Inputs and outputs

    Synthesis reads three things: the RTL, the constraints, and the cell library. It writes two things: the gate-level netlist and the reports that describe it.

    Side

    Item

    Role

    In

    RTL

    Behaviour to implement; function must be preserved.

    In

    Constraints

    Targets to meet; these steer every choice.

    In

    Cell library

    Cells to build from; nothing else may appear.

    Out

    Gate-level netlist

    Chosen cells and wiring implementing the RTL.

    Out

    Reports

    Counts, area, and timing of the chosen netlist.

    Change any input and the output may change. That is expected behaviour, not tool noise.

    Where synthesis sits

    Synthesis sits between design entry and the physical flow. RTL enters from above, and the netlist leaves toward placement with its reports.

    Synthesis between RTL and the physical flow.
    Synthesis converts RTL to a netlist for the physical flow, with reports alongside.

    Area in library units

    Area is reported in library units of the teaching library course.lib. One unit is not a process dimension; it only compares cells inside this course.

    Cell

    Area (library units)

    INV

    1

    NAND2, NOR2

    2

    AND2, OR2

    3

    MUX2

    5

    DFF

    8

    The example below adds one small count by hand. The Python lesson later checks the same sum in code.

    Diagram
    EXAMPLE counts with course.lib areas, in library units
    counts: 5 NAND2, 2 INV, 1 DFF
    area = 5 x 2 + 2 x 1 + 1 x 8 = 10 + 2 + 8 = 20 library units
    shares: NAND2 10 / 20 = 50%, INV 2 / 20 = 10%, DFF 8 / 20 = 40%
    50 + 10 + 40 = 100

    Common pitfall

    Quoting area without naming the library invites misreading. Always say library units of course.lib, never a process figure.

    Interview

    Likely probes: the three inputs and two outputs, and where synthesis sits.

    • RTL, constraints, and the library enter; the netlist and reports leave.

    • Synthesis sits between RTL and the physical flow.

    • Area here means library units of course.lib, not a process number.

    Check yourself A colleague changes only the constraints and reruns synthesis. The netlist differs. Is that a bug?

    No. Constraints steer the choice of cells and structure, so a different target legitimately gives a different netlist for the same RTL.

    Check yourself A netlist uses 5 NAND2, 2 INV, and 1 DFF from course.lib. What is its area, and in what units?

    20 library units: 5 x 2 + 2 x 1 + 1 x 8. The units are library units of the teaching library course.lib.

    Related topics

    • The five flow stages

    • Synthesizable RTL and Inference

    • Reading Netlists and Reports

    Previous

    3 / 139

    Next: The Five Flow Stages

    Up next

    Up nextThe Five Flow Stages

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Why Constraints Change the Netlist
    • A Small Design Through Yosys
    • Concepts, Not Commands