
30
TSPC603R
2125A
–
HIREL
–
04/02
Cache coherency is enforced by on-chip bus snooping logic. Since the 603r
’
s data
cache tags are single ported, a simultaneous load or store and snoop access represent
a resource contention. The snoop access is given first access to the tags. The load or
store then occurs on the clock following snoop.
Figure 14.
Data Cache Organization
Exception Model
The following subsections describe the PowerPC exception model and the 603r imple-
mentation, respectively.
PowerPC Exception Model
The PowerPC exception mechanism allows the processor to change to supervisor state
as a result of external singles, errors, or unusual conditions arising in the execution of
instructions, and differ from the arithmetic exceptions defined by the IEEE for float-
ing-point operations. When exceptions occur, information about the state of the
processor is saved to certain registers and the processor begins execution at an
address (exception vector) predetermined for each exception. Processing of exceptions
occurs in supervisor mode.
Although multiple exception conditions can map to a single exception vector, a more
specific condition may be determined by examining a register associated with the
exception - for example, the DSISR and the FPSCR. Additionally, some exception con-
ditions can be explicitly enable or disabled by software.
The PowerPC architecture requires that exceptions be handled in program order; there-
fore, although a particular implementation may recognize exception conditions out of
order, they are presented strictly in order. When an instruction-caused exception is rec-
ognized, any unexecuted instructions that appear earlier in the instruction stream,
including any that have not yet entered the execute state, are required to complete
before the exception is taken. Any exceptions caused by those instructions are handled
first. Likewise, exceptions that are asynchronous and precise are recognized when they
occur, but are not handled until the instruction currently in the completion state success-
fully completes execution or generates an exception, and the completed store queue is
emptied.
Unless a catastrophic event causes a system reset or machine check exception, only
one exception is handled at a time. If, for example, a single instruction encounters multi-
ple exception conditions, those conditions are encountered sequentially.