Ldc/Stc; Figure 8-3 Ldc/Stc Cycle Timing - ARM ARM926EJ-S Technical Reference Manual

Table of Contents

Advertisement

Coprocessor Interface
8.2

LDC/STC

Fetch
Coprocessor
pipeline
CLK
CPINSTR[31:0]
LDC
nCPMREQ
CPPASS
CPLATECANCEL
CHSDE[1:0]
CHSEX[1:0]
CPDOUT[31:0]
LDC
CPDIN[31:0]
STC
8-4
The cycle timing for this operation is shown in Figure 8-3.
Execute
Decode
(GO)
GO
GO
In Figure 8-3 four words of data are transferred. The number of words transferred is
determined by how the coprocessor drives the CHSDE[1:0] and CHSEX[1:0] buses.
As with all other instructions, the ARM9EJ-S core performs the main decode off the
rising edge of the clock during the Decode stage. From this, the core commits to
executing the instruction and so performs an instruction fetch. The coprocessor
instruction pipeline keeps in step with the ARM9EJ-S core by monitoring nCPMREQ.
nCPMREQ is an active LOW signal that indicates if the ARM9EJ-S pipeline has
advanced. CPINSTR is updated with the fetched instruction in the next cycle. This
means that the instruction currently on CPINSTR must enter the Decode stage of the
coprocessor pipeline, and that the instruction in the Decode stage of the coprocessor
pipeline must enter its Execute stage.
During the Execute stage, the condition codes are combined with the flags to determine
if the instruction executes or not. The output CPPASS is asserted HIGH if the
instruction in the Execute stage of the coprocessor pipeline:
is a coprocessor instruction
has passed its condition codes.
Copyright © 2001-2003 ARM Limited. All rights reserved.
Execute
Execute
Execute
(GO)
(GO)
GO
LAST
Memory
(LAST)
Ignored

Figure 8-3 LDC/STC cycle timing

ARM DDI0198D
Write

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents