QROUTER(1)

πŸ“¦
version 1.4.88 Β· 3 versions
, in ubuntu resolute, ubuntu stonking

πŸ’– 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 πŸ’€):

  1. Interactive mode. if qrouter is started without any options, a tkcon window will be opened with an interpreter where commands may be entered. main character energy fr fr.
  2. Normal batch mode. this mode activates if a tcl script is given with the -s option. it can be run with or without a graphical window. if -noc is 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
  1. Compatibility mode with qrouter 1.1. this mode activates if either of the options -c, -v, -i, -p or -g are given. this is a batch mode. lowkey retro. πŸ•°οΈ

πŸ’œ OPTIONS πŸ’œ

  • -noc β€” No console mode. no console bestie, we're being quiet here. 🀫
  • -s scriptname β€” 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:

  • -c file β€” Configuration file name (if not route.cfg).
  • -v level β€” Verbose output level.
  • -i name β€” Print route names and pitches and exit.
  • -p name β€” Specify global power bus name.
  • -g name β€” 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