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

  • 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 Foundations
  1. Topics
  2. Logic Synthesis
  3. Synthesis Foundations
  4. Synthesis Flow Overview

Part 1 of 9Part 1 of 9/Synthesis FoundationsIntermediate

Synthesis Flow Overview

What logic synthesis does and where it sits: RTL and constraints in, netlist and reports out.

  • 5topics
  • 5lessons

Synthesis is where RTL stops being text and starts being a priced, timed object. Without the five-stage model, every report looks like magic numbers and every constraint change looks like tool noise.

After this lesson you can: name the three inputs and two outputs of synthesis, place each Yosys pass in its stage, read a mapped report, trace each cell family to its stage, and predict what a tighter target changes.

Logic synthesis turns RTL, constraints, and a cell library into a gate-level netlist plus reports. The same RTL gives different netlists under different constraints, as the constraints lesson proves on a recorded sweep; the other lessons vary the RTL or the flow instead, and each quotes its own recording.

Term

Meaning

RTL

The register-transfer description of what the design does each clock cycle.

Constraints

Timing and electrical targets the implementation must meet, such as the clock period.

Cell library

The available gates and flops with their area and timing, here the teaching library course.lib.

Netlist

The chosen cells and their wiring: the implementation carried forward.

Reports

Cell counts, area by cell type, and timing figures describing the chosen netlist.

Flowchart with five numbered boxes in order: read loads RTL, elaborate builds word-level cells, optimise shrinks word-level cells and lowers them to generic gates, map covers with library cells, report gives counts area and timing.
The five synthesis stages in teaching order: read, elaborate, optimise, map, and report.

After this topic you can read a synthesis run the way a tool reports it: name the stage each cell family belongs to, explain why the mapped netlist differs from the generic one, and predict what a tighter constraint would change before rerunning anything. A concrete example from the first lesson: the 4-bit saturating adder maps to 20 library cells at area 58 library units of course.lib, reaching 635 ps against a 1000 ps target. The lessons below build that reading skill in order, one recorded design at a time.

Lesson

What it covers

What synthesis does

Inputs, outputs, flow position, and area in library units.

The five flow stages

Read, elaborate, optimise, map, and report, with a recorded stop after each.

Why constraints change the netlist

One RTL under five delay targets: a recorded sweep of cell sizes, area, and delay.

A small design through Yosys

A real Yosys flow on one design, with assertions pinning robust mapped facts.

Concepts, not commands

Why commercial tools match these concepts with different command names.

Check yourself What are the three inputs and two outputs of logic synthesis?

Inputs: RTL, constraints, and the cell library. Outputs: the gate-level netlist and its reports.

Carry one sentence per lesson: synthesis maps RTL plus constraints to a netlist and reports, the flow runs read then elaborate then optimise then map then report, constraints steer the choice, Yosys shows each stage plainly, and other tools share the concepts with different commands.

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

  • Read, elaborate, optimise, map, report: lowering finishes optimisation, covering is mapping.

  • Area exists only after mapping, in library units of the named library.

Rule of thumb: name the library before you quote an area, and the stage before you quote a count.

How this was checked

This hub page is orientation with one cited recording: the saturating adder from the first lesson maps to 20 library cells at area 58 library units of course.lib, reaching 635 ps against a 1000 ps target. The flowchart shows the teaching stage order and the lesson table points at recorded runs. The teaching libraries (course.lib and friends) are fictional with illustrative numbers, so absolute areas are teaching units; the stage boundaries are the point. Yosys 0.69+post throughout the topic.

  • Interview: run a mock interview on this topic

PreviousNext: What Synthesis Does

Up next

Up nextWhat Synthesis Does

Sign in to save progress

Practice this lessonPrevious lessonReport an error

See also

  • Synthesizable RTL and Inference
  • Reading Netlists and Reports