chipflow.packaging.pins
Pin dataclasses and types for package definitions.
This module contains the fundamental building blocks for defining physical pin assignments and power/signal groupings in IC packages.
Classes
Type of power pin (power or ground) |
|
Wire names in a JTAG interface |
|
Type of port |
|
A matched pair of power pins, with optional notation of the voltage range. |
|
Pins for a JTAG interface. |
|
Essential pins for bringing up an IC, always in fixed locations. |
Module Contents
- class chipflow.packaging.pins.PowerType
Bases:
enum.StrEnumType of power pin (power or ground)
- class chipflow.packaging.pins.JTAGWire
Bases:
enum.StrEnumWire names in a JTAG interface
- class chipflow.packaging.pins.PortType
Bases:
enum.StrEnumType of port
- class chipflow.packaging.pins.PowerPins
Bases:
Generic[Pin]A matched pair of power pins, with optional notation of the voltage range.
- Attributes:
power: The power (VDD) pin ground: The ground (VSS) pin voltage: Optional voltage range or specific voltage name: Optional name for this power domain
- to_set()
Convert power pins to a set
- Return type:
Set[Pin]
- class chipflow.packaging.pins.JTAGPins
Bases:
Generic[Pin]Pins for a JTAG interface.
- Attributes:
trst: Test Reset pin tck: Test Clock pin tms: Test Mode Select pin tdi: Test Data In pin tdo: Test Data Out pin
- to_set()
Convert JTAG pins to a set
- Return type:
Set[Pin]
- class chipflow.packaging.pins.BringupPins
Bases:
Generic[Pin]Essential pins for bringing up an IC, always in fixed locations.
These pins are used for initial testing and debug of the IC.
- Attributes:
core_power: List of core power pin pairs core_clock: Core clock input pin core_reset: Core reset input pin core_heartbeat: Heartbeat output pin (for liveness testing) core_jtag: Optional JTAG interface pins
- to_set()
Convert all bringup pins to a set
- Return type:
Set[Pin]