
Rev. 5.00, 09/03, page 170 of 760
7.3 Operation Descri ption
7.3.1 Flow of the User Break Operation
The flow from setting of break conditions to user break exception processing is described below:
1. The break addresses and the corresponding ASIDs are loaded in the break address registers
(BARA and BARB) and break ASID registers (BASRA and BASRB). The masked addresses
are set in the break address mask registers (BAMRA and BAMRB). The break data is set in the
break data register (BDRB). The masked data is set in the break data mask register (BDMRB).
The breaking bus conditions are set in the break bus cycle registers (BBRA an d BBRB). Three
groups of the BBRA and BBRB (CPU cycle/DMAC cycle select, instruction fetch/data access
selec t , and read/write selec t ) are each s e t. No user break wil l be generated if eve n o ne of these
groups is set with 00. The respective conditions are set in the bits of the BRCR.
2. When the break conditions are satisfied, the UBC sends a user break request to the interrupt
controller. The break type will be sent to CPU indicating the instruction fetch, pre/post
instruction break, data access break. When conditions match up, the CPU condition match
flags (SCMFC A and S CMF CB) and DMAC conditio n match fla gs (S CMFDA and SCM FDB )
for the respective channels are set.
3. The appropriate condition match flags (SCMFCA, SCMFDA, SCMFCB, and SCMFDB) can
be used to check if the set conditions match or not. The matching of the conditi ons sets flags,
but they are not reset. 0 must first be written to them bef ore they can be used again .
4. There is a chance that the data access break and its following instruction fetch break occur
around the same time, there will be o nly one break request to the CPU, but these two break
channel match flags could be both set.
7.3.2 Break on Instruction Fetch Cycle
1. When CPU/instruction fetch/read/word or longword is set in the break bus cycle registers
(BBRA/BBRB), the break condition becomes the CPU instruction fetch cycle. Whether it then
breaks before or after the execution of the instruction can then be selected with the
PCBA/PCBB bits of the break control register (BRCR) for the appropriate channel.
2. An instruction set for a break before execution breaks when it is confi rmed that the instruction
has been fetched and will be executed. This means this feature cannot be us ed o n instruc tions
fetched by overrun (instructions fetched at a branch or du r ing an inte rrupt trans i tion, but not to
be executed). When this kind of break is set for the delay slot of a delay branch instruction, the
break is generated prior to execution of the instruction that then first accepts the break.
Meanwhile, the break set for pre-instruct i on-break on del ay slot instructio n and p ost-
ins t ruct i on-break on SLEEP ins t ruction are also prohibited .