
5- 32
MC68330 USER'S MANUAL
MOTOROLA
5.4 INSTRUCTION SET
This section describes the set of instructions provided in the CPU32 and demonstrates
their use. Descriptions of the instruction format and the operands used by instructions are
included. After a summary of the instructions by category, a detailed description of each
instruction is listed in alphabetical order. Complete programming information is provided,
as well as a description of condition code computation and an instruction format summary.
The CPU32 instructions include machine functions for all the following operations:
Data Movement
Arithmetic Operations
Logical Operations
Shifts and Rotates
Bit Manipulation
Conditionals and Branches
System Control
The large instruction set encompasses a complete range of capabilities and, combined
with the enhanced addressing modes, provides a flexible base for program development.
5.4.1 M68000 Family Compatibility
It is the philosophy of the M68000 Family that all user-mode programs can execute
unchanged on a more advanced processor and that supervisor-mode programs and
exception handlers should require only minimal alteration.
The CPU32 can be thought of as an intermediate member of the M68000 Family. Object
code from an MC68000 or MC68010 may be executed on the CPU32, and many of the
instruction and addressing mode extensions of the MC68020 are also supported.
5.4.1.1 NEW INSTRUCTIONS. Two instructions have been added to the M68000
instruction set for use in embedded control applications. These are the low-power stop
(LPSTOP) and the table lookup and interpolation (TBL) commands.
5.4.1.1.1 Low-Power Stop (LPSTOP). In applications where power consumption is a
consideration, the CPU32 can force the device into a low-power standby mode when
immediate processing is not required. The low-power mode is entered by executing the
LPSTOP instruction. The processor remains in this mode until a user-specified or higher
level interrupt, or a reset, occurs.
5.4.1.1.2 Table Lookup and Interpolation (TBL). To maximize throughput for real-time
applications, reference data is often precalculated and stored in memory for quick access.
The storage of sufficient data points can require an inordinate amount of memory. The
TBL instruction uses linear interpolation to recover intermediate values from a sample of
data points, and thus conserves memory.
When the TBL instruction is executed, the CPU32 looks up two table entries bounding the
desired result and performs a linear interpolation between them. Byte, word, and long-
word operand sizes are supported. The result can be rounded according to a round-to-
nearest algorithm or returned unrounded along with the fractional portion of the calculated
result (byte and word results only). This extra precision can be used to reduce cumulative