
W53322/W53342
Publication Release Date: March 1999
- 7 -
Revision A2
16384
address
20 bits
16K * 20 bits
3FFFH
:
This area can be used to store both
instruction code and look table data
and look-up table.
0000H
0004H
0008H
000CH
0018H
001CH
0020H
0014H
0010H
Reset start
DIV
TM 0
RC
RD
reserved
MELODY
TM 1
SPEECH
:
Figure 1. Program Memory Organization
2. Look-Up Table Pointer Register(LUP3, LUP2, LUP1, LUP0 and LUC)
The LUPC (Look-up table address Pointer Counter) symbol in the instruction set is used to access data in the 16K ROM
space. It includes 5 registers LUP3 (Look-Up table Pointer), LUP2, LUP1, LUP0, and LUC(Look-Up table data Counter) .
LUP3~LUP0 store the 14 bits ROM address to access any data in the 16K word ROM, and each ROM word 20 bit is
separated as 5 nibbles that LUC counts from 0 to 4 cyclical. The instruction MOV LUPn, ACC can write LUPC initial
address pointer of look-up table, and reset LUC register to 0. So the following equation is described.
LUPC=LUPC.13~LUPC.0 + LUC.3~LUC.0
LUPC.13~LUPC.0 from 0000~3FFFH is used as word address of 16K ROM and LUC uses to select which nibble of the
word data and counts from 0 to 4 cyclical. When LUPC is incresased by 1 LUC is firstly increase by 1 , and LUP0 will be
inreased by 1 while LUC is counted from 4 to 0. The LUP1 is increased by 1 if LUP0 is counted from F to 0, then LUP3,
LUP2 will follow the same rule of LUP1. The LUC will be increased by 1 automatically while symbol @LUPC++ is used.
All registers LUP3~LUP0 can read/write by user, but LUC register is reald only. At initial reset, all registers is 0000B.
X
X
LUP2
LUP3
LUP.13 LUP.12 LUP.11 LUP.10 LUP.9 LUP.8
LUP1
2
LUP.5
LUP.4
LUP.6
LUP.7
LUP0
LUP.3 LUP.2
LUP.1 LUP.0
0
1
3
2
0
1
3
2
0
1
3
2
0
1
3
2
LUC
LUC.3 LUC.2
LUC.1 LUC.0
0
1
3