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
  • Sequential, FSM and Memory19
  • Datapath Synthesis14
  • Area, Power and Test14
  • Verification, ECO and Handoff15
  • Flows and Debugging15
    • Scripted Flows and Regression
      • Flows as Code
      • Parameterised Runs in Yosys
      • Logging and QoR Extraction
      • Nightly Regression and Thresholds
      • Noise Versus Real Change
    • Debugging QoR
    • Simulation-Synthesis Mismatch
  • Interview and Judgment11
Loading lesson

‹Scripted Flows and Regression
  1. Topics
  2. Logic Synthesis
  3. Flows and Debugging
  4. Scripted Flows and Regression
  5. Logging and QoR Extraction

Part 8 · Flows and Debugging · Intermediate

Logging and QoR Extraction

Log every run and extract area, slack, and power into one comparable record.

On this page

    Log everything once

    The log is the run: commands, revisions, warnings and QoR lines in one file. A number without a log is an anecdote.

    Log section

    What it records

    Header

    Command lines plus tool, library, constraint and script revisions.

    Stage echoes

    One line per stage with its input and output design names.

    Warnings

    Warning count by category; new warnings fail the nightly run.

    QoR lines

    Area, worst slack and power with units, one line each.

    Three QoR numbers

    Each run reduces to three numbers with stated units. All three are EXAMPLE measurements from a recorded run, never process data.

    Metric

    Unit here

    Read from

    Area

    Area units of course.lib

    Mapped cell areas summed over the netlist.

    Worst slack

    Picoseconds, EXAMPLE clock

    Required minus arrival on the worst path.

    Power

    EXAMPLE microwatts at stated activity

    Switching plus internal plus leakage estimates.

    Extract and compare

    Extraction copies the three numbers into one record keyed by run parameters. The calc block works one EXAMPLE record by hand.

    Diagram
    EXAMPLE record: 8-bit adder, course.lib area units, EXAMPLE clock
    required time 1000 ps, worst arrival 880 ps
    worst slack = required - arrival = 1000 - 880 = 120 ps
    area against the 4-bit record: 104 / 52 = 2, exactly double
    power against the 4-bit record: 63 vs 62, up 1 unit = 1 / 62 = 1.61%

    Common mistakes

    Common pitfall

    Copying QoR numbers into slides by hand guarantees transcription drift. Extract them with a script into one record per run and compare records, never retyped digits.

    Interview

    Likely probes: what belongs in a run log, and what one QoR record holds.

    • Revisions, stage echoes, warning counts and three QoR lines with units.

    • One record per run, keyed by parameters, holds area, worst slack and power.

    • Slack is required minus arrival; here 1000 minus 880 is 120 ps.

    Check yourself Required time is 1000 ps and worst arrival is 880 ps. What is the worst slack?

    120 ps. Slack is required minus arrival: 1000 minus 880 is 120.

    Check yourself Area doubles exactly from 52 to 104 when width doubles from 4 to 8. What does that prove?

    Only that this EXAMPLE scales linearly here. It promises nothing about other widths, structures or libraries.

    Related topics

    • Nightly regression and thresholds

    • Reading netlists and reports

    Previous

    116 / 139

    Next: Nightly Regression and Thresholds

    Up next

    Up nextNightly Regression and Thresholds

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Flows as Code
    • Noise Versus Real Change