Interface Definition

Topwrap uses interface definition files for its parsing functionality.

These are used to match a given set of signals that appear in the HDL source with signals in the interface definition.

InterfaceDefinition is defined as a marshmallow_dataclass.dataclass - this enables loading the YAML structure into Python objects and performs validation (that the YAML is in the correct format) and typechecking (that the loaded values are of the correct types).

class InterfaceDefinition(name: str, port_prefix: str, signals: ~topwrap.interface.InterfaceDefinitionSignals = <factory>)

Interface described in YAML interface definition file

__init__(name: str, port_prefix: str, signals: ~topwrap.interface.InterfaceDefinitionSignals = <factory>)
Schema

alias of InterfaceDefinition

get_interface_by_name(name: str) InterfaceDefinition | None

Retrieve interface definition by its name

Returns:

InterfaceDefinition object, or None if there’s no such interface


Last update: 2024-12-10