Expand description

Traits for representation of circuit-level netlists.

A netlist represents the connections of electrical components (here called ‘circuits’) such as standard-cells or macro blocks. Each of the circuits can be composed of instances of other circuits (recursion is not allowed). A circuit serves as a template for circuit instances. The circuit defines ‘pins’ which represent the electrical connectors to the circuit. Pins can be connected electrically by ‘nets’ which represent an electrical potential like a metal wire. Nets are local to a circuit.

The way a netlist can be accessed and modified is defined by the following two traits:

  • NetlistBase defines basic functions for accessing and traversing a netlist.
  • NetlistEdit defines basic functions for building and modifying a netlist.

The Chip data structure implements the both traits.

Modules

The type of a pin is specified by a signal direction.

Input and output interface definitions for netlists.

The prelude helps to import most commonly used modules.

Traits for netlist data types.

Utility functions for dealing with netlists.