Renesas HD6417641 用户手册

下载
页码 1036
Section 2   CPU 
Rev. 4.00  Sep. 14, 2005  Page 82 of 982 
REJ09B0023-0400 
 
2.6.2 
Added CPU System Control Instructions 
The new instructions in this class are treated as part of the CPU core functions, and therefore all 
the added instructions have a 16-bit code length. All the additional instructions belong to the 
system control instruction group. Table 2.25 summarizes the added system instructions. New 
control registers—RS, RE, and MOD—have been added to the CPU core to support loop control 
and modulo addressing functions, and LDC and STS type instructions have been provided for 
these registers. 
The DSP engine's DSR, A0, X0, X1, Y0, and Y1 registers are treated as system registers such as 
MACH and MACL, and therefore STS and LDS instructions are supported for these registers. As 
digital signal processing operations usually employ a multi-level nested-loop structure, DSP 
performance can be improved by means of a zero-overhead loop control function. SETRC type 
instructions are provided to set the repeat count in the RC field in SR[27:16]. When an immediate 
operand type SETRC instruction is executed, the 8-bit immediate operand data is set in SR[23:16], 
and 0 is set in the remaining bits, SR[27:24]. When a register operand type SETRC instruction is 
executed, Rn[11:0] is set in SR[27:16]. The start address and end address of the repeat loop are set 
in the RS register and RE register. There are two ways of setting the addresses: by using an LDC 
type instruction, or by using the LDRS and LDRE instructions. 
Table 2.25  Added CPU System Control Instructions 
 
Instruction 
 
Instruction Code 
 
Operation 
Execution 
States 
 
T Bit 
SETRC #imm 
10000010iiiiiiii 
imm
 → RC (of SR) 
 
SETRC Rn 
0100nnnn00010100 
Rn[11:0] 
→ R C (of SR) 
 
LDRS @(disp,PC) 
10001100dddddddd 
(disp
 × 2 + PC) → RS 1 
 
LDRE @(disp,PC) 
10001110dddddddd 
(disp
 × 2 + PC) → RE 1 
 
STC MOD,Rn 
0000nnnn01010010 
MOD
 → Rn 1 
 
STC RS,Rn 
0000nnnn01100010 
RS
 → Rn 1 
 
STC RE,Rn 
0000nnnn01110010 
RE
 → Rn 1 
 
STS DSR,Rn 
0000nnnn01101010 
DSR
 → Rn 1 
 
STS A0,Rn 
0000nnnn01111010 
A0
 → Rn 1 
 
STS X0,Rn 
0000nnnn10001010 
X0
 → Rn 1 
 
STS X1,Rn 
0000nnnn10011010 
X1
 → Rn 1 
 
STS Y0,Rn 
0000nnnn10101010 
Y0
 → Rn 1 
 
STS Y1,Rn 
0000nnnn10111010 
Y1
 → Rn 1