sh6631a SinoWealth Micro-Electronics Corp. Ltd, sh6631a Datasheet - Page 3

no-image

sh6631a

Manufacturer Part Number
sh6631a
Description
Mask 4-bit Microcontroller
Manufacturer
SinoWealth Micro-Electronics Corp. Ltd
Datasheet
Functional Description
1. CPU
The CPU contains the following function blocks: Program
Counter,
Accumulator, Table Branch Register, Data Pointer (INX,
DPH, DPM, and DPL), and Stack.
1.1. PC (Program Counter)
The Program Counter is used to address the 1K program
ROM. It consists of 12-bits: Page Register (PC11) , and
Ripple Carry Counter (PC10, PC9, PC8, PC7, PC6, PC5,
PC4, PC3, PC2, PC1, PC0).
The program counter normally increases by one (+1) with
every execution of an instruction except in the following
cases:
(1) When executing a jump instruction (such as JMP, BA0,
(2) When executing a subroutine call instruction (CALL) ;
(3) When an interrupt occurs;
(4) When the chip is at the INITIAL RESET mode.
The program counter is loaded with data corresponding to
each instruction.
1.2. ALU and CY
ALU performs arithmetic and logic operations. The ALU
provides the following functions:
Binary addition/subtraction (ADC, SBC, ADD, SUB, ADI,
SBI)
Decimal adjustment for addition/subtraction (DAA, DAS)
Logic operations (AND, EOR, OR, ANDIM, EORIM, ORIM)
2. ROM
The SH6631A can address 1024 X 16 bit of program area from $000 to $3FF.
Vector Address Area ($000 to $004)
The program is sequentially executed. There is an area address $000 through $004 that is reserved for a special interrupt
service routine such as starting vector address.
BC);
Address
$000H
$001H
$002H
$003H
$004H
Arithmetic
Logic
Instruction
NOP
NOP
JMP
JMP
JMP
Unit
(ALU),
Carry
Flag,
3
Jump to TIMER0
Jump to RESET
Jump to PBC
Decision (BA0, BA1, BA2, BA3, BAZ, BC)
Logic Shift (SHR)
The Carry Flag (CY) holds the ALU overflow, which the
arithmetic operation generates. During an interrupt service
or call instruction, the carry flag is pushed into the stack and
restored back from the stack by the RTNI instruction. It is
unaffected by the RTNW instruction.
1.3. Accumulator
Accumulator is a 4-bit register holding the results of the
arithmetic logic unit. In conjunction with ALU, data is
transferred between the accumulator and system register, or
data memory can be performed.
1.4. Stack
A group of registers used to save the contents of CY & PC
(11-0) sequentially with each subroutine call or interrupt. It is
organized 13 bits × 4 levels. The MSB is saved for CY. 4
levels are the maximum allowed for subroutine calls and
interrupts.
The contents of Stack are returned sequentially to the PC
with the return instructions (RTNI/RTNW). Stack is operated
on a first-in, last-out basis. This 4-level nesting includes both
subroutine calls and interrupts requests. Note that program
execution may enter an abnormal state if the number of calls
and interrupt requests exceeds 4, and the bottom of stack
will be shifted out.
Reserved
Reserved
Remarks
SH6631A

Related parts for sh6631a