Finishing and outputs
Each card shows a command to explain. A missed card returns later in the round and starts the schedule over. A card answered correctly moves up the schedule and next appears after 1, 3, 7, then 21 days. Keys 1 to 4 choose an option, h shows a hint, and Enter moves on. A hint keeps the card where it is on the schedule. An ordering card is answered by clicking its items in order, and one wrong click ends it. Time values are in nanoseconds. Progress is stored in this browser.
All 10 cards in this section, with answers
-
export FILL_CELLS = FILLCELL_X1 FILLCELL_X2 FILLCELL_X4Names the cells used to fill the gaps between placed cells.
Hint: Ask what happens if the variable is left empty.
A filler carries the supply rails and the well layers across a gap, so the rows stay legal to manufacture. If the variable is unset or empty, the flow skips filler insertion altogether. Metal fill is the separate
USE_FILL. OpenROAD-flow-scripts reference -
export USE_FILL = 1Turns on metal fill, which evens out each layer's density.
Hint: Compare it with FILL_CELLS: one fills rows, the other fills layers.
Dummy metal shapes are added where a layer is too empty. Manufacturing needs each layer's metal density inside a band, or polishing leaves an uneven surface. Metal fill adds unconnected shapes where a layer is too empty, following the rules in
FILL_CONFIG. It is off by default because it is slow and enlarges the layout. OpenROAD-flow-scripts reference -
export PWR_NETS_VOLTAGES = VDD 1.1 export GND_NETS_VOLTAGES = VSS 0.0Gives the supply voltages that the drop analysis solves against.
Hint: Ask which analysis needs to know a voltage, rather than just a net name.
The analysis pushes current through the grid's resistance and reports how far the local voltage falls below these values.
IR_DROP_LAYERsays which layer the result is reported on. OpenROAD-flow-scripts reference -
export IR_DROP_LAYER = metal1Chooses the layer whose voltage drop is reported.
Hint: The drop is worst furthest from the source. Ask where that is in the stack.
The analysis solves the whole grid, but the number that matters is what the cells see, and they connect on the lowest layer. Reporting there shows the worst case. OpenROAD-flow-scripts reference
-
export GDS_ALLOW_EMPTY = sram.*Allows macros matching that pattern to have no layout of their own.
Hint: The value is a pattern, and the stage is the one that merges layouts.
Merging normally fails if a macro has no layout, which catches a missing file. The pattern makes that deliberate, for a macro whose layout comes later or is supplied by the foundry. OpenROAD-flow-scripts reference
-
export SEAL_GDS = sky130_seal_ring.gdsAdds a seal ring layout around the design in the final merge.
Hint: A ring placed around the outside of the die, once the design is done.
A seal ring is a metal barrier around the die edge that protects the circuit from the cracks and moisture that dicing can introduce. It is foundry-supplied and merged in at the end. OpenROAD-flow-scripts reference
-
export CDL_FILE = $(PLATFORM_DIR)/cdl/sc.cdlGives the cells' own subcircuits for the netlist that is written.
Hint: Ask what the flow's own netlist output is missing for this check.
Without them the netlist would name cells it never defines. The flow writes a netlist for layout-versus-schematic checking, and that netlist has to include the standard cells' transistor-level contents. This file supplies them, as the
-mastersargument ofwrite_cdl. OpenROAD-flow-scripts reference -
export KLAYOUT_TECH_FILE = $(PLATFORM_DIR)/KLayout/tech.lytMaps the flow's layer names onto the layout format's numbers.
Hint: Two formats describe the same layers with different names and numbers.
LEF (Library Exchange Format) and DEF (Design Exchange Format) name layers; a layout file identifies them by number and datatype. The mapping lets the flow write the final layout and lets KLayout read it back with the right layers. OpenROAD-flow-scripts reference
-
export RCX_RULES = $(PLATFORM_DIR)/rcx_patterns.rulesGives the model that extraction turns routed geometry into parasitics with.
Hint: Extraction has to turn geometry into numbers from somewhere.
The rules file is built once per process from field-solver runs over test patterns. Extraction measures each wire's geometry and neighbours and looks the values up in it, which is what sign-off timing uses. OpenROAD-flow-scripts reference
-
export CORNER = BCPicks which process, voltage, and temperature library set is used.
Hint: It selects among libraries that the platform already ships.
A platform that ships several characterizations, such as best case, typical, and worst case, selects one this way. It is available on the ASAP7 and GF180 platforms;
CORNERSis the separate variable for analyzing several at once. OpenROAD-flow-scripts reference