chipflow_lib.steps ================== .. py:module:: chipflow_lib.steps .. autoapi-nested-parse:: Steps provide an extensible way to modify the `chipflow` command behavior for a given design Classes ------- .. autoapisummary:: chipflow_lib.steps.IOSignature chipflow_lib.steps.StepBase Package Contents ---------------- .. py:class:: IOSignature(**kwargs) Bases: :py:obj:`amaranth.lib.wiring.Signature` An :py:obj:`Amaranth Signature ` used to decorate wires that would usually be brought out onto a port on the package. This class is generally not directly used. Instead, you would typically utilize the more specific :py:obj:`InputIOSignature`, :py:obj:`OutputIOSignature`, or :py:obj:`BidirIOSignature` for defining pin interfaces. .. py:property:: direction :type: amaranth.lib.io.Direction The direction of the IO port .. py:property:: width :type: int The width of the IO port, in wires .. py:property:: invert :type: collections.abc.Iterable[bool] A tuple as wide as the IO port, with a bool for the polarity inversion for each wire .. py:property:: options :type: IOModelOptions Options set on the io port at construction .. py:class:: StepBase(config={}) Bases: :py:obj:`abc.ABC` Helper class that provides a standard way to create an ABC using inheritance. .. py:method:: build_cli_parser(parser) Build the cli parser for this step .. py:method:: run_cli(args) Called when this step's is used from `chipflow` command .. py:method:: build(*args) builds the design