B.3.6. checkForGrant()

Call checkForGrant() from the masters to retrieve the value of hgnt. The timing of checkForGrant() is such that if it is called in cycle n, it gets the value of hgnt that has been calculated by the AHB_casi component during its update() phase of cycle n–1. This the value must be used to identify if the master will own the bus in cycle n+1.

Caution

The master must include the status of hready when evaluating hgnt.

AHB_casi_TSPort::checkForGrant(uint64_t addr)
{
    CASIGrant grant;
    UNUSEDARG(addr);
    owner->doUpdate = true;
    grant = (owner->signals.hgrant == portID) ? 
                     CASI_GRANT_OK : CASI_GRANT_DENIED;
    return grant;
}
Copyright © 2007 ARM Limited. All rights reserved.ARM DUI 0359B
Non-Confidential