If the stack is overflow, the first Program Counter save in the stack will be lost.
Device
Stack Levels
BS83B08-3
BS83B12-3
BS83B16-3
BS83B16G-3
4
BS83C24-3
8
Arithmetic and Logic Unit
-
ALU
The arithmetic-logic unit or ALU is a critical area of the microcontroller that carries out arithmetic and
logic operations of the instruction set. Connected to the main microcontroller data bus, the ALU
receives related instruction codes and performs the required arithmetic or logical operations after
which the result will be placed in the specified register. As these ALU calculation or operations may
result in carry, borrow or other status changes, the status register will be correspondingly updated to
reflect these changes. The ALU supports the following functions:
·
Arithmetic operations: ADD, ADDM, ADC, ADCM, SUB, SUBM, SBC, SBCM, DAA
·
Logic operations: AND, OR, XOR, ANDM, ORM, XORM, CPL, CPLA
·
Rotation RRA, RR, RRCA, RRC, RLA, RL, RLCA, RLC
·
Increment and Decrement INCA, INC, DECA, DEC
·
Branch decision, JMP, SZ, SZA, SNZ, SIZ, SDZ, SIZA, SDZA, CALL, RET, RETI
Flash Program Memory
The Program Memory is the location where the user code or program is stored. For this device series
the Program Memory is Flash type, which means it can be programmed and re-programmed a large
number of times, allowing the user the convenience of code modification on the same device. By using
the appropriate programming tools, these Flash devices offer users the flexibility to conveniently
debug and develop their applications while also offering a means of field programming and updating.
Structure
The Program Memory has a capacity of 2K
´
15 or 4K
´
16 bits. The Program Memory is addressed by
the Program Counter and also contains data, table information and interrupt entries. Table data, which
can be setup in any location within the Program Memory, is addressed by a separate table pointer
register.
Device
Capacity
BS83B08-3
BS83B12-3
BS83B16-3
BS83B16G-3
2K
´
15
BS83C24-3
4K
´
16
Rev. 1.50
20
April 28, 2020
BS83B08-3/B12-3/B16-3/B16G-3/C24-3
8-Bit Touch Key Flash MCU
P r o g r a m C o u n t e r
S t a c k L e v e l 1
S t a c k L e v e l 2
S t a c k L e v e l 8
P r o g r a m
M e m o r y
T o p o f S t a c k
S t a c k
P o i n t e r
B o t t o m o f S t a c k
0 0 0 4 H
0 0 2 0 H
I n t e r r u p t
V e c t o r
1 5 b i t s
0 7 F F H
0 0 0 0 H
R e s e t
0 0 0 4 H
0 0 2 C H
I n t e r r u p t
V e c t o r
1 6 b i t s
0 F F F H
0 0 0 0 H
R e s e t
B S 8 3 B 0 8 - 3
B S 8 3 B 1 2 - 3
B S 8 3 B 1 6 - 3
B S 8 3 C 2 4 - 3
Flash Program Memory Structure