Ld.a [%Rb], %Rs - Epson S1C17 Series Manual

Cmos 16-bit single chip microcontroller
Hide thumbs Also See for S1C17 Series:
Table of Contents

Advertisement

7 DETAILS OF INSTRUCTIONS

ld.a [%rb], %rs

Function
32-bit data transfer
Standard)
Extension 1) A[rb + imm13](23:0) ← rs(23:0), A[rb + imm13](31:24) ← 0
Extension 2) A[rb + imm24](23:0) ← rs(23:0), A[rb + imm24](31:24) ← 0
15 14 13 12 11 10
Code
0
0
1
|
|
IL
IE
C
Flag
|
|
Mode
Src: Register direct %rs = %r0 to %r7
Dst: Register indirect %rb = %r0 to %r7
CLK
One cycle (two cycles when the ext instruction is used
Description
(1) Standard
ld.a
The content of the rs register (24-bit data) is transferred to the specified memory location. The
rb register contains the memory address to be accessed. This instruction writes 32-bit data with
the eight high-order bits set to 0 in the memory.
(2) Extension 1
ext
ld.a
The e x t instruction changes the addressing mode to register indirect addressing with
displacement. As a result, the content of the rs register is transferred to the address indicated
by the content of the rb register with the 13-bit immediate imm13 added. The content of the rb
register is not altered.
(3) Extension 2
ext
ext
ld.a
The addressing mode changes to register indirect addressing with displacement, so the content
of the rs register is transferred to the address indicated by the content of the rb register with the
24-bit immediate imm24 added. The content of the rb register is not altered.
(4) Delayed slot instruction
This instruction may be executed as a delayed slot instruction by writing it directly after
a branch instruction with the "d" bit. In this case, extension of the immediate by the ext
instruction cannot be performed.
Caution
The rb register and the displacement must specify a 32-bit boundary address (two least significant
bits = 0). Specifying other address causes an address misaligned interrupt. Note, however, that the
data transfer is performed by setting the two least significant bits of the address to 0.
7-78
A[rb](23:0) ← rs(23:0), A[rb](31:24) ← 0
9
8
7
6
|
|
0
0
1
r s
0
|
|
|
|
|
V
Z
N
|
|
|
[%rb],%rs
; memory address = rb
imm13
[%rb],%rs
; memory address = rb + imm13
imm11
; imm11(10:0) = imm24(23:13)
imm13
; = imm24(12:0)
[%rb],%rs
; memory address = rb + imm24
Seiko Epson Corporation
5
4
3
2
1
0
|
0
1
1
r b
|
|
|
|
|
S1C17 CORE MANUAL
(REV. 1.2)

Advertisement

Table of Contents
loading

Table of Contents