DataPortInterface class

An interface to a simple memory that only needs enable, address, and data.

Can be used for either read or write direction by grouping signals using DataPortGroup.

Inheritance
Implementers

Constructors

DataPortInterface(int dataWidth, int addrWidth)
Constructs a new interface of specified dataWidth and addrWidth for interacting with a memory in either the read or write direction.

Properties

addr Logic
The "address" bit for a request when en is high.
no setter
addrWidth int
The width of addresses in the memory.
final
data Logic
The data sent or received with the associated request.
no setter
dataWidth int
The width of data in the memory.
final
en Logic
The "enable" bit for this interface, enabling a request.
no setter
hashCode int
The hash code for this object.
no setterinherited
ports Map<String, Logic>
Maps from the Interface's defined port name to an instance of a Port.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

clone() DataPortInterface
Makes a copy of this Interface with matching configuration.
conditionalDriveOther(Interface<DataPortGroup> other, Iterable<DataPortGroup> tags) Conditional
Makes this conditionally drive interface signals tagged with tags on other.
inherited
conditionalReceiveOther(Interface<DataPortGroup> other, Iterable<DataPortGroup> tags) Conditional
Makes this signals tagged with tags be driven conditionally by other.
inherited
connectIO(Module module, Interface srcInterface, {Iterable<DataPortGroup>? inputTags, Iterable<DataPortGroup>? outputTags, String uniquify(String original)?}) → void
Connects module's inputs and outputs up to srcInterface and this Interface.
inherited
driveOther(Interface<DataPortGroup> other, Iterable<DataPortGroup> tags) → void
Makes this drive interface signals tagged with tags on other.
inherited
getPorts([Iterable<DataPortGroup>? tags]) Map<String, Logic>
Returns all interface ports associated with the provided tags as a Map from the port name to the Logic port.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
port(String name) Logic
Accesses a port named name.
inherited
receiveOther(Interface<DataPortGroup> other, Iterable<DataPortGroup> tags) → void
Makes this signals tagged with tags be driven by other.
inherited
setPorts(List<Logic> ports, [Iterable<DataPortGroup>? tags]) → void
Adds a collection of ports to this Interface, each associated with all of tags.
inherited
toString() String
A string representation of this object.
inherited
tryPort(String name) Logic?
Provides the port named name if it exists, otherwise null.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited