naps.vendor package
Subpackages
- naps.vendor.generic package
- naps.vendor.lattice_ecp5 package
- naps.vendor.lattice_machxo2 package
- naps.vendor.xilinx_s7 package
Submodules
naps.vendor.instance_helper module
- class naps.vendor.instance_helper.HelperedInstance(*args, src_loc_at=0, **kwargs)
Bases:
Elaboratable
- elaborate(platform)
- naps.vendor.instance_helper.InstanceHelper(source_files, instance_name)
- exception naps.vendor.instance_helper.PortNotFoundException
Bases:
Exception
- class naps.vendor.instance_helper.SignalProxy(ports, path='')
Bases:
ValueCastable
- as_value()
Convert :py:`self` to a value-like object.
This method is called by the Amaranth language to convert :py:`self` to a concrete
Value
. It will usually return aValue
object, but it may also return another value-like object to delegate its functionality.This method must be idempotent: when called twice on the same object, the result must be exactly the same.
This method may also be called by code that is not a part of the Amaranth language.
Returns
Any other object recognized by
Value.cast()
.Raises
- Exception
When the conversion cannot be done. This exception must be propagated by callers, either directly or as a cause of another exception.
It is recommended that, in cases where this method raises an exception, the
shape()
method also raises an exception.
- eq(other)
- shape()
Compute the shape of :py:`self`.
This method is not called by the Amaranth language itself; whenever it needs to discover the shape of a value-castable object, it calls
self.as_value().shape()
. However, that method must return aShape
, andValueCastable
subclasses may have a richer representation of their shape provided by an instance of aShapeCastable
subclass. This method may return such a representation.This method must be idempotent: when called twice on the same object, the result must be exactly the same.
The following condition must hold:
Shape.cast(self.shape()) == Value.cast(self).shape()
Returns
A shape-like object.
Raises
- Exception
When the conversion cannot be done. This exception must be propagated by callers, either directly or as a cause of another exception.
It is recommended that, in cases where this method raises an exception, the
as_value()
method also raises an exception.
- property used_ports
naps.vendor.platform_agnostic_elaboratable module
- class naps.vendor.platform_agnostic_elaboratable.ImplementationMarkerMetaclass(name, bases, namespace, /, **kwargs)
Bases:
ABCMeta
- property implementation
- class naps.vendor.platform_agnostic_elaboratable.PlatformAgnosticElaboratable(*args, src_loc_at=0, **kwargs)
Bases:
Elaboratable
A helper to write Platform agnostic code. Searches in the vendor directories for the real elaboratable.
- elaborate(platform)
- exception naps.vendor.platform_agnostic_elaboratable.PlatformNotSupportedError
Bases:
ValueError
- exception naps.vendor.platform_agnostic_elaboratable.PrimitiveNotSupportedByPlatformError
Bases:
ValueError