|Home > Fast Models components > Bus components > PVBusDecoder|
A PVBusDecoder allows bus transactions to be routed to one of many slaves, based on the address given in the transaction. This model is written in C++.
Each slave connection is associated with a specific address range on the
pvbus_m_range port. In LISA+, the syntax for this is:
decoder.pvbus_m_range[start..end] = slave.pvbus
The values for
start (inclusive) and
end (inclusive) must specify a 4KB-aligned region of a multiple of 4K bytes. You can specify an address range for the slave, where the decoder remaps addresses into the appropriate range. The default address range for a slave is [0-(
sizeOfMasterRange – 1)].
Table 3-40 Ports
||Master||Specifies the address range for the bus master. The range must be 4KB aligned and a multiple of 4KB in size. If the address range is larger than the size of the slave device, the slave is aliased.|
||Slave||Accepts incoming transactions. Connect this port to a bus master, or to the output of another bus decoder.|