!Point¶
The !Point tag identifies either a boundary port on the block, or one of the ports on a child module. It is used in two roles:
When used within the !Connect tag, or in the
defaultslist of a !Mod tag, it can identify any port on the block or on a instantiated child block (but not select a specific instance within that port).When used within the !Initiator or !Target tags it can only identify a specific index of a port on the boundary of the block (i.e. it can identify a specific instance of a port from a !HisRef with
countgreater than 1).
Usage¶
The !Point tag can be used in two different contexts, an example of each is given below. The tag is primitive, so either mapping or sequence syntax can be used:
- Mod
name : my_mod
ports:
- !HisRef [initiators, axi4, "Initiators onto the NoC", 4, Slave]
- !HisRef [targets, axi4, "Targets from the NoC", 4, Master]
modinst:
- !ModInst [block_a, type_1, "First block", 1]
- !ModInst [block_b, type_1, "Second block", 1]
- !ModInst [block_c, type_1, "Third block", 1]
- !ModInst [block_d, type_1, "Fourth block", 1]
connections:
- !Connect
connect:
- !Point [initiators]
- !Point [init, block_a]
- !Point [init, block_b]
- !Point [init, block_c]
- !Point
name: init
mod : block_d
...
defaults:
- !Point [unused_out, block_a] # Tie-off an unused signal to supress errors
addressmap:
- !Initiator
mask: 0x1FFF
port:
- !Point [initiators, 0]
...
- !Target
offset : 0x0800
aperture: 0x1000
port :
- !Point [targets, 2] # NOTE: Second field here selects a single port within 'targets'
-
class
blade.schema.ph_point.Point(port, mod=None, name='unknown', sd='', ld='', options=[])¶ Reference to a port on a particular module, if no module name is provided then it is taken to be a port on the module in the current scope. Also used to identify a specific index of a port where count has been set > 1.
-
__init__(port, mod=None, name='unknown', sd='', ld='', options=[])¶ Initialisation for the !Point tag
- Parameters
port – The name of the port.
mod – When used within a !Connect tag, or in the defaults section of a !Mod, this identifies which !ModInst should be connected. When used within a !Initiator or !Target tag, this identifies which index of port is being referred to.
name – Optional name for the point.
sd – Short description - maximum 150 characters.
ld – Long description - maximum 150 characters.
options – List of options in the form ‘KEY=VAL’ or just ‘KEY’ if no value is required.
-
validate()¶ Check that this tag agrees with our YAML schema
-