4.4.3. ADDRESS arguments

A protocol is a bus protocol if it enables a single master port to connect to multiple slave ports and the selection of the slave port is determined by the address of the access.

The simulator must inspect the address of the access to determine the destination slave. The address is specified as a parameter of the protocol behavior and must be annotated with the ADDRESS keyword as shown in Example 4.2:

Example 4.2. Using the ADDRESS keyword

protocol MyBusProtocol
       // declare some user defined types we would like to use
        #include "TransactionMode.h"

   slave behavior read(ADDRESS uint32_t addr): uint8_t;
   slave behavior write(ADDRESS uint32_t addr, uint8_t data);
   slave behavior setMode(const TransactionMode *mode);

The following rules apply to use of the ADDRESS keyword:

Copyright © 2007-2010 ARM Limited. All rights reserved.ARM DUI 0372I