Chapter 1 Hardware Structure
Note
1. For the HT49R30A-1/HT49C30-1/HT49C30L, N=4, i.e. 4 levels of stack available.
2. For the HT49R50A-1/HT49C50-1/HT49C50L, N=6, i.e. 6 levels of stack available.
3. For the HT49R70A-1/HT49C70-1/HT49C70L, HT49RU80/HT49CU80,
N=16, i.e. 16 levels of stack available.
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 opera-
tions may result in carry, borrow or other status changes, the status register will be correspond-
ingly 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
Program Memory
The Program Memory is the location where the user code or program is stored. For
microcontrollers, two types of Program Memory are usually supplied. The first type is the One-
Time Programmable (OTP) Memory where users can program their application code into the de-
vice. Devices with OTP memory are denoted by having an
²R²
within their device name. By using
the appropriate programming tools, OTP devices offer users the flexibility to freely develop their
applications which may be useful during debug or for products requiring frequent upgrades or pro-
gram changes. OTP devices are also applicable for use in applications that require low or medium
volume production runs. The other type of memory is the mask ROM memory, denoted by having
a
²C²
within the device name. These devices offer the most cost effective solutions for high vol-
ume products.
Organization
The Program Memory has a capacity of 2K by 14 to 16K by 16 bits depending upon which device
is selected. 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. In the case of the
HT49RU80/HT49CU80 devices, the Program Memory is divided into two Banks, Bank 0 and Bank
1, each with a capacity of 8K. The Program Memory Bank is selected by controlling Bit 5 of the
Bank Pointer. Clearing this bit selects Bank 0 while setting the bit selects Bank 1. Care must be ex-
ercised when using the Bank Pointer as it is also used to control the Data Memory Bank Pointer.
25
Home Index Bookmark Pages Text
Previous Next
Pages: Home Index