Exceptions
MPC885 PowerQUICC Family Reference Manual, Rev. 2
Freescale Semiconductor
6-19
Note:
The following are time point explanations.
A—At time point A the excepting instruction dispatches and begins executing. Previously dispatched instructions are
proceeding through the pipeline.
B—The excepting instruction has executed and reached CQ0; previous instructions have finished execution without generating
exceptions. The exception is recognized and between B and D (between 3 and 10 cycles) the effects of any instructions after
the one that generated the interrupt are cancelled and the instructions are flushed. If the instruction had not generated an
exception, it would have been retired.
C—The core fetches the first instructions of the exception handler if the exception handler is external. It is 5 cycles if it is in the
instruction cache and no-show mode is on.
D—All state has been restored. During the interval between D and E, the machine is saving context information in the SRR0
and SRR1 registers, disabling exceptions, placing the machine in privileged mode, and fetching instructions of the exception
handler. The interval between D and E requires at least one clock. The time between C and E depends on the memory system
and the time it takes to fetch the first instruction of the exception handler. For full completion queue restore time, it is no less
than two clocks.
E—The MSR and instruction pointer of the executing process have been saved and control has been transferred to the
exception handler routine. Exception handler instructions that have been fetched can be dispatched.
6.1.7
Partially Completed Instructions
Partially completed instructions can be reexecuted after the exception is handled. This precise exception
model can simplify exception processing because software does not have to save the machine’s internal
states, unwind the pipelines, or cleanly terminate the faulting instruction stream and reverse the process to
resume execution of the faulting stream.
Table 6-19. Exception Latency
Time Point
Fetch
Issue
Instruction Complete
Kill Pipeline
A Faulting
instruction
issue
B
Instruction complete and all
previous instructions complete
C
Start fetch handler
Kill pipeline
D (at least 3
clocks after B)
E
First instruction of handler
dispatched
Table 6-20. Before and After Exceptions
Exception Type
Instruction Type
Before/After
Contents of SRR0
Hard reset (caused by HRESET or SRESET)
Any
NA
Undefined
System reset
Any
Before
Next instruction to execute
Machine check
Any
Before
Faulting instruction
TLB miss/error
1
Any
Before
Faulting fetch or load/store
Other noninstruction-related exceptions
Any
Before
Next instruction to execute
Alignment Load/store
Before
Faulting
instruction
Privileged instruction
Any privileged
instruction
Before
Faulting instruction
Summary of Contents for PowerQUICC MPC870
Page 98: ...MPC885 PowerQUICC Family Reference Manual Rev 2 I 4 Freescale Semiconductor ...
Page 118: ...MPC885 Overview MPC885 PowerQUICC Family Reference Manual Rev 2 1 20 Freescale Semiconductor ...
Page 158: ...The MPC8xx Core MPC885 PowerQUICC Family Reference Manual Rev 2 3 18 Freescale Semiconductor ...
Page 288: ...MPC885 PowerQUICC Family Reference Manual Rev 2 III 4 Freescale Semiconductor ...
Page 554: ...MPC885 PowerQUICC Family Reference Manual Rev 2 V 6 Freescale Semiconductor ...
Page 1090: ...UTOPIA Interface MPC885 PowerQUICC Family Reference Manual Rev 2 43 8 Freescale Semiconductor ...
Page 1312: ...Byte Ordering MPC885 PowerQUICC Family Reference Manual Rev 2 A 8 Freescale Semiconductor ...
Page 1336: ...MPC885 PowerQUICC Family Reference Manual Rev 2 D 16 Freescale Semiconductor ...
Page 1358: ...MPC885 PowerQUICC Family Reference Manual Rev 2 D 38 Freescale Semiconductor ...
Page 1370: ...MPC880 MPC885 PowerQUICC Family Reference Manual Rev 2 E 4 Freescale Semiconductor ...
Page 1386: ...Revision History MPC885 PowerQUICC Family Reference Manual Rev 2 I 2 Freescale Semiconductor ...