Glossary

A quick, plain-English lookup for every technical word that appears in the tutorial. Use it whenever a term feels fuzzy — no shame in coming back here often.


YAML core terms

YAML — a plain-text format for storing configuration. Stands for “YAML Ain’t Markup Language”. Lesson 1

Key — the label on the left of a colon. In voltage: 1.2, the key is voltage. Lesson 2

Value — what’s on the right of a colon. In voltage: 1.2, the value is 1.2. Lesson 2

Key-value pair — a key together with its value, e.g. frequency_mhz: 100. The basic building block of YAML. Lesson 2

Scalar — a single, simple value: text, a number, or true/false. Not a list or a group. Lesson 2

String — a piece of text, usually wrapped in quotes: "TitanCore". Lesson 2

Integer — a whole number with no decimal point: 100, 25, -7. Lesson 2

Float — a number with a decimal point: 1.2, 3.14. Lesson 2

Boolean — a true/false value. YAML accepts true and false (lowercase). Lesson 2

Comment — text starting with # that the computer ignores; only humans read it. Lesson 2

Indentation — the spaces at the start of a line. YAML uses indentation to show grouping. Always spaces, never tabs. Lesson 3

Nested — placed inside something else. A block of keys indented under a parent key is nested. Lesson 3

List — an ordered series of items, each starting with a dash (-). Lesson 4

Object — a group of related key-value pairs, e.g. one chip’s complete spec. Sometimes called a “dictionary” or “mapping”. Lesson 4

Multi-line text — text that spans several lines. YAML uses | to keep line breaks and > to fold them into one line. Lesson 5

Block style — the readable, multi-line YAML format that uses indentation. Opposite of flow style. Lesson 5

Flow style — the compact one-line YAML format using […] and {…}. Valid but harder to read. Lesson 12

Anchor — a named template marker. Created with &name. Lesson 9

Alias — a reference back to an anchor. Written as *name. Lesson 9

Merge key<<: followed by an alias. Copies all key-value pairs from the anchored block into the current block. Lesson 9


Errors and validation

Syntax — the rules for how a language must be written. A “syntax error” means you broke one of those rules. Lesson 7

Validate / validation — check whether a file follows the rules. A YAML validator tells you if your file is well-formed. Lesson 8

Parse — read a file and turn it into a structure the computer can use. yaml.safe_load() parses YAML. Lesson 12

Duplicate key — using the same key twice at the same level. The second one silently overwrites the first — a common bug. Lesson 7


Coding terms (Part 4)

Script — a plain text file with instructions for the computer (e.g. run_synth.py). You can open it in any editor. Lesson 11

Terminal (also: shell, command line, console) — the text window where you type commands. Same idea as Cadence’s Tcl prompt. Lesson 11

File path — the address of a file on disk. Relative: chip.yaml. Absolute: /home/alice/chip.yaml. Lesson 11

Library — reusable code somebody else wrote. Python’s yaml library reads and writes YAML files for you. Lesson 11

pip — Python’s package installer. pip install pyyaml downloads the YAML library. Lesson 11

import — Python keyword that loads a library. import yaml makes the YAML library available in the script. Lesson 11

Function — a named piece of code you can call to do a task. yaml.safe_load(f) calls the safe_load function with f as input. Lesson 12

Argument — a value you pass into a function. In yaml.dump(data, f), data and f are arguments. Lesson 13

Dictionary (dict) — Python’s name for a collection of key-value pairs. When Python reads a YAML file, the result is a dictionary. Lesson 12

Index — a number that picks an item from a list. Lists start at 0 — team[0] is the first item, team[1] is the second. Lesson 12

Exception / error — when something goes wrong, Python raises an exception that stops the program. YAMLError and FileNotFoundError are examples. Lesson 14

try / except — Python’s way of handling exceptions gracefully instead of crashing. Lesson 14


Hardware / EDA terms (used as analogies)

SDC — Synopsys Design Constraints. A text file telling synthesis tools about clocks and timing. Conceptually similar to a YAML config — both feed parameters into a tool.

Liberty (.lib) — a text file describing standard cell timing/power. Like YAML, it’s plain text packed with key-value-style information.

Verilog/VHDL — hardware description languages. Many design teams generate per-block Verilog parameters from a central YAML config.

Testbench — verification code that exercises a design. Often configured by YAML files specifying which tests to run and with what parameters.

EDA tool — Electronic Design Automation tool (Cadence, Synopsys, Mentor). They typically read configs (YAML, Tcl, SDC) and produce reports.


Companion bundle · 5 PDFs · Free Get the full VLSI bundle — for free The complete Mastering YAML for Semiconductor book this site is built from, plus 4 Python-for-VLSI guides: CLI Python, common pitfalls, plotting, and interview prep. Download all 5 PDFs →