3.2.3 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++.

About PVBusDecoder

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

Name Protocol Type Description
pvbus_m_range PVBus 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.
pvbus_s PVBus Slave Accepts incoming transactions. Connect this port to a bus master, or to the output of another bus decoder.
Non-ConfidentialPDF file icon PDF version100964_1110_00_en
Copyright © 2014–2020 Arm Limited or its affiliates. All rights reserved.