PPCSync

Syntax

#include <revolution/base/PPCArch.h>

void PPCSync ( void );

Arguments

None.

Return Values

None.

Description

The PPCSync function essentially executes a standard PowerPC sync instruction. However, under the Revolution system, several special steps are required to use sync. This function capsulizes these steps.

The PPCSync function disables interrupts, enables address broadcasting, and executes a sync instruction. Interrupts are then restored to their prior state, and address broadcasting is disabled.

The PPCSync function flushes all I/O traffic being reserved by the CPU for main memory. This is required when applications demand that memory be updated appropriately. For example, you may need to call the PPCSync function before the graphics processor accesses data to confirm that the data actually exists in main memory after data used by the graphics processor is flushed from the cache.( (See DCFlushRangeNoSync or DCStoreRangeNoSync)

Be aware that DMA transfers into and out of the locked cache are not affected by the PPCSync function. You should use the locked cache queue operations to ensure that DMA operations have completed.

The PPCSync function takes a significant amount of time, so indiscriminate use of this function may adversely affect performance.

See Also

Cache Functions, DCFlushRangeNoSync, DCStoreRangeNoSync

Revision History

2006/03/01 Initial version.


CONFIDENTIAL