GRAAL(1)

πŸ“¦ version 5.1.1-unstable-2025-02, in nixos 26.05, nixpkgs unstable

πŸŽ€ GRAAL(1) β€” ALLIANCE Reference Manual πŸŽ€

okay bestie, welcome to the GRAAL(1) page from the ALLIANCE Reference Manual! This is the manual for graal, the symbolic layout editor, and we're gonna walk through it together. No cap, it's giving classic CAD-girl energy πŸ’…βœ¨

✨ NAME ✨

graal β€” symbolic layout editor. That's the whole vibe: it edits symbolic layouts. πŸ¦‹

πŸ“œ SYNOPSIS πŸ“œ

Here's the literal way you call it:

graal [-l file_name] [-scale n] [-debug] [-xor] [-install]
      [-force]

🌍 ORIGIN 🌍

This software belongs to the ALLIANCE CAD SYSTEM, developed by the ASIM team at the LIP6 laboratory of Université Pierre et Marie CURIE, in Paris, France. 🌸

πŸ’… DESCRIPTION πŸ’…

Graal is a hierarchical symbolic layout editor. All functionalities can be accessed through different menus β€” yes, the menu era is real. Among them there's a design rule checker that performs verifications inside a user-defined window. Graal works under Motif and X11r6. 🫢

When you enter Graal, the main window appears and shows 7 different menus on the top bar. These menus can be entered by simply clicking on the mouse left button. The main window is sensitive to the mouse, and the mouse wheel can be used for scrolling up and down, left and right when Shift is pressed during wheel movement, and zooming in and out when Ctrl is pressed while turning the wheel. Iconic behavior, honestly. πŸŒ€

Below is the description of graal's menus. πŸ—‚οΈ

πŸ—‚οΈ File

  • New β€” clean the entire window and save the current cell.
  • Open β€” load an already existing cell.
  • Save β€” save the current cell.
  • Save as β€” rename and save the current cell.
  • Quit β€” quit graal.

✏️ Edit

  • Undo β€” undo the previous action.
  • Copy β€” copy a selected object.
  • Move β€” move a selected object.
  • Delete β€” delete a selected object.
  • Stretch β€” stretch a selected object (transistor or segment length).
  • Modify β€” modify the characteristics of an object (name, width, etc...).
  • Identify β€” identify a selected object.
  • Search β€” search an object according to its type.

πŸͺŸ Window

This menu allows the user to perform the same actions as the previous Edit menu, but not on an object β€” on a group of objects belonging to a defined window. The two opposite corners of the window are set by clicking on the mouse left button. Bestie, it's like Edit but with a window selection. πŸͺ„

🧱 Create

  • Instance β€” add a new instance in the current cell.
  • Abutmentbox β€” define the abutment box of the current cell.
  • Segment β€” add segments.
  • Via β€” add vias or contacts.
  • Connector β€” add connectors.
  • Transistor β€” add transistors.
  • Reference β€” add references.

πŸ‘€ View

  • Zoom β€” perform zoom in, zoom out, center, fit, refresh on figure.
  • Layer β€” select types of layers displayed.
  • Map β€” show cursor position in the entire figure.
  • Arrows β€” show arrows for moving at the grid step.
  • Grid β€” set the X,Y step of the grid if displayed.

πŸ› οΈ Tools

  • Equi β€” highlight all objects electrically connected to a given object.
  • Flat β€” virtual hierarchy flattening of an instance (display all visible objects inside a given instance).
  • UnFlat β€” undo the virtual flattening of an instance (done before with the Flat command).
  • Peek β€” virtual hierarchy flattening (display all visible objects inside a given window).
  • UnPeek β€” undo the virtual flattening of a window (done before with the Peek command).
  • Druc β€” call the design rule checker in a given window.
  • RealFlat β€” real hierarchy flattening of instances included in a window.
⚠️ RealFlat warning, bestie: this command can not be undone, and should be used very carefully. Like, fr fr, be careful. πŸ’€
  • Hierarchy β€” navigate into the current figure hierarchy.
  • Load Error β€” load a real layout file and superpose it to the current figure.
  • Message β€” display the last error messages.

βš™οΈ Setup

  • Save or load a user-defined configuration of default displayed menus.

🌱 ENVIRONMENT VARIABLES 🌱

These env vars are the backstage crew for Graal:

  • MBK_CATA_LIB β€” indicates the path to the read-only libraries to be used.
  • MBK_WORK_LIB β€” indicates the path to the read/write directory for the session.
  • MBK_IN_PH β€” indicates the file format to be used for the leaf cells.
  • MBK_OUT_PH β€” indicates the file format to be used for the generated figures.
  • GRAAL_TECHNO_NAME (optional) β€” indicates the path to the techno name file used by Graal.
  • RDS_TECHNO_NAME (optional) β€” indicates the path to the RDS configuration file used by Graal.

πŸ‘€ SEE ALSO πŸ‘€

go read these too, bestie:

  • mbk(1)
  • MBK_CATA_LIB(1)
  • MBK_IN_PH(1)
  • MBK_OUT_PH(1)
  • RDS_TECHNO_NAME(1)

πŸ› BUG REPORT πŸ›

This tool is under development at the ASIM department of the LIP6 laboratory. We need your feedback to improve documentation and tools β€” so if something's weird, tell them, okay? 🫢


πŸ’– That's the GRAAL(1) page, bestie! Source/version: ASIM/LIP6 Β· GRAAL(1) Β· Date: October 1, 1997. Slay. πŸŽ€
πŸ“¦ where this page comes from