QROUTER(1)
π QROUTER(1) β bestie edition π
okay so first things first: this is the manual page for qrouter, section 1 of the manual, and it is so much cooler than it sounds. buckle up π
β¨ NAME β¨
qrouter β a multi-level, over-the-cell maze router. yes that's the whole vibe. π¦
πΈ SYNOPSIS πΈ
qrouter [-noc] [-s scriptname] [options] [design_name]
π DESCRIPTION π
so this page is the quick-and-dirty intro to the qrouter command, no cap.
qrouter is the tool that generates metal layers and vias so that a netlist gets physically connected together in a VLSI fabrication technology. it's a maze router, which honestly also goes by "over-the-cell" router or "sea-of-gates" router, iykyk. and the way that it's different from a channel router?? it starts with a description of placed standard cells β usually packed together at minimum spacing β and then it places metal routes over those standard cells. over the cell, literally in the name bestie. π
it uses the open standard LEF and DEF formats for both file input and file output. it grabs the cell definitions from a LEF file, analyzes the geometry for each cell to figure out contact points and route obstructions, then reads the cell placement, pin placement, and netlist from a DEF file, does the detailed route, and writes out an annotated DEF file. iconic pipeline honestly. β¨
π«Ά USAGE π«Ά
qrouter can run be run in several ways (that's the original wording and i love it, keeping it π):
- Interactive mode. if
qrouteris started without any options, atkconwindow will be opened with an interpreter where commands may be entered. main character energy fr fr. - Normal batch mode. this mode activates if a tcl script is given with the
-soption. it can be run with or without a graphical window. if-nocis given, no graphical window will appear. π
Run without graphical window:
qrouter -noc -s routescript.tcl
Run with a graphical window showing the layout while it is routing:
qrouter -s routescript.tcl
- Compatibility mode with qrouter 1.1. this mode activates if either of the options
-c,-v,-i,-por-gare given. this is a batch mode. lowkey retro. π°οΈ
π OPTIONS π
-nocβ No console mode. no console bestie, we're being quiet here. π€«-sscriptnameβ Run scriptname. that's it, that's the job. run it. π«
π§ COMPATIBILITY MODE π§
these ones are the qrouter 1.1 gang, only live when you use them:
-cfileβ Configuration file name (if notroute.cfg).-vlevelβ Verbose output level.-inameβ Print route names and pitches and exit.-pnameβ Specify global power bus name.-gnameβ Specify global ground bus name.
π INPUT π
the input files for qrouter is (yes, "is" β original grammar, we respect it π) an unrouted or partly routed .def file containing the layout, plus a .cfg file containing the tcl script used to do the routing. and heads up: the .cfg file also needs to specify a .lef file describing the technology. don't forget it, bestie, or nothing's happening. π
π OUTPUT π
qrouter will output the fully routed .def file (if successful routing β note the if, we don't manifest here, we report π«Ά). this may then later be converted to a GDSII file using tools such as magic. slay.
ngl, the "if successful routing" is doing a lot of heavy lifting in that sentence. routing that fails just... doesn't give you the file. that's it, that's the deal. π
β SEE ALSO β
π AUTHOR π
qrouter was written by Tim Edwards <tim@opencircuitdesign.com>.
this manual page was written by Ruben Undheim <ruben.undheim@gmail.com>, for the Debian project (and may be used by others).
and that's the whole page bestie!! π¦ no cap, you now know everything this manpage knows. this iconic little doc is dated 11 February 2026, and it lives in QROUTER(1) β go route something cute π β¨π
π¦ where this page comes from
- ubuntu resolute: qrouter 1.4.88-2build1 Β· GPL-2.0-only
- ubuntu stonking: qrouter 1.4.88-2build1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms