Module libreda_db::netlist
source · 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
- ID of an arc (net segment). The arc is defined by two terminals (pin or pin instance).
- 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. - Generalization of pins and pin instances.
- Traits for netlist data types.
- Utility functions for dealing with netlists.