Motorola reserves the right to make changes without further notice to any products herein. Motorola makes no warranty, representation or guarantee regarding
the suitability of its products for any particular purpose, nor does Motorola assume any liability arising out of the application or use of any product or circuit, and
specifically disclaims any and all liability, including without limitation consequential or incidental damages. "Typical" parameters can and do vary in different
applications. All operating parameters, including "Typicals" must be validated for each customer application by customer's technical experts. Motorola does not
convey any license under its patent rights nor the rights of others. Motorola products are not designed, intended, or authorized for use as components in systems
intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the failure of the Motorola
product could create a situation where personal injury or death may occur. Should Buyer purchase or use Motorola products for any such unintended or
unauthorized application, Buyer shall indemnify and hold Motorola and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims,
costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such
unintended or unauthorized use, even if such claim alleges that Motorola was negligent regarding the design or manufacture of the part. Motorola and are
registered trademarks of Motorola, Inc. Motorola, Inc. is an Equal Opportunity/Affirmative Action Employer.
MOTOROLA, 1995
For More Information On This Product,
Go to: www.freescale.com
µ
nc...
, I
Freescale Semiconductor, Inc.
68K FAX-IT
Documentation Comments
FAX 512-891-8593—Documentation Comments Only
The Motorola High-Performance Embedded Systems Technical Communications Department provides a fax number for you to submit any questions or comments about this document or how to order other documents. We welcome your suggestions for improving our
documentation. Please do not fax technical questions.
Please provide the part number and revision number (located in upper right-hand corner of
the cover) and the title of the document. When referring to items in the manual, please reference by the page number, paragraph number, figure number, table number, and line number if needed.
or
emiconduct
eescale S
Fr
When sending a fax, please provide your name, company, fax number, and phone number
including area code.
Applications and Technical Information
For questions or comments pertaining to technical information, questions, and applications,
please contact one of the following sales offices nearest you.
MOTOROLA
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
iii
iv
Freescale Semiconductor, Inc.
— Sales Offices —
Field Applications Engineering Available Through All Sales Offices
nc...
, I
or
emiconduct
eescale S
Fr
ALABAMA , Huntsville(205) 464-6800
UNITED STATES
ARIZONA , Tempe (602) 897-5056
CALIFORNIA , Agoura Hills(818) 706-1929
CALIFORNIA , Los Angeles(310) 417-8848
CALIFORNIA , Irvine (714) 753-7360
CALIFORNIA , Rosevllle (916) 922-7152
CALIFORNIA , San Diego (619) 541-2163
CALIFORNIA , Sunnyvale (408) 749-0510
COLORADO , Colorado Springs(719) 599-7497
COLORADO , Denver(303) 337-3434
CONNECTICUT , Wallingford(203) 949-4100
FLORIDA , Maitland(407) 628-2636
FLORIDA , Pompano Beach/
Fort Lauderdale(305) 486-9776
FLORIDA , Clearwater(813) 538-7750
GEORGlA , Atlanta(404) 729-7100
IDAHO , Boise(208) 323-9413
ILLINOIS , Chicago/Hoffman Estates(708) 490-9500
INDlANA , Fort Wayne(219) 436-5818
INDIANA , Indianapolis (317) 571-0400
INDIANA , Kokomo (317) 457-6634
IOWA , Cedar Rapids(319) 373-1328
KANSAS , Kansas City/Mission (913) 451-8555
MARYLAND , Columbia (410) 381-1570
MASSACHUSETTS , Marborough(508) 481-8100
MASSACHUSETTS , Woburn (617) 932-9700
MICHIGAN , Detroit(313) 347-6800
MINNESOTA , Minnetonka (612) 932-1500
MISSOURI , St. Louis(314) 275-7380
NEW JERSEY , Fairfield (201) 808-2400
NEW YORK , Fairport(716) 425-4000
NEW YORK , Hauppauge(516) 361-7000
NEW YORK , Poughkeepsie/Fishkill(914) 473-8102
NORTH CAROLINA , Raleigh(919) 870-4355
OHIO , Cleveland (216) 349-3100
OHIO , Columbus/Worthington(614) 431-8492
OHIO , Dayton (513) 495-6800
OKLAHOMA , Tulsa(800) 544-9496
OREGON , Portland (503) 641-3681
PENNSYLVANIA , Colmar(215) 997-1020
WISCONSIN , Milwaukee/Brookfield(414) 792-0122
BRITISH COLUMBIA , Vancouver(604) 293-7605
ONTARIO , Toronto (416) 497-8181
ONTARIO , Ottawa(613) 226-3491
QUEBEC , Montreal (514) 731-6881
AUSTRALIA , Melbourne(61-3)887-0711
AUSTRALIA , Sydney(61(2)906-3855
BRAZIL , Sao Paulo 55(11)815-4200
CHINA , Beijing 86 505-2180
FINLAND , Helsinki 358-0-35161191
INDIA , Bangalore (91-812)627094
ISRAEL , Tel Aviv972(3)753-8222
ITALY , Milan39(2)82201
JAPAN , Aizu 81(241)272231
JAPAN , Atsugi 81(0462)23-0761
JAPAN , Kumagaya81(0485)26-2600
JAPAN , Kyushu81(092)771-4212
JAPAN , Mito81(0292)26-2340
JAPAN , Nagoya81(052)232-1621
JAPAN , Osaka81(06)305-1801
JAPAN, Sendai 81(22)268-4333
JAPAN,
JAPAN,
JAPAN
KOREA , Pusan82(51)4635-035
KOREA , Seoul82(2)554-5188
This document contains a summary of the use and operation of the SCM68000 microprocessor core (also referred to as the EC000 core)
specifications. Refer to the
(M68000UM/AD) for detailed information on the operation of the instruction set, addressing
modes, and bus architecture for this core.
The SCM68000 is a core implementation of the MC68000 32-bit microprocessor and is
designed to be used as part of the FlexCore Program. In the FlexCore program, high-volume
manufacturers can create their own integrated microprocessor containing a core processor,
such as the SCM68000, and their own proprietary technology. A FlexCore integrated processor allows significant reductions in component count, power consumption, board space,
and cost while yielding much higher system reliability and performance.
The main features of the SCM68000 include:
• Low-Power HCMOS Implementation Requires Only 15 mA at 3.3 V
• 32-Bit Performance for 16-Bit Applications—2.7 MIPS at 16 MHz
• Statically Selectable 8-Bit or 16-Bit Data Bus Operation
• 32-Bit Address Bus Directly Addresses up to 4 Gbytes of Address Space
• Static Operation Provides Almost Zero Power Consumption During Idle Periods
• Sixteen General-Purpose 32-Bit Data and Address Registers
• Fifty-Six Powerful Instruction Types That Support High-Level Programming Languages
• Fourteen Addressing Modes and Five Main Data Types Allow Compact, Efficient Code
• Seven Priority Level Interrupt Control
M68000 8-/16-/32-Bit Microprocessor User’s Manual
1
and a detailed set of timing and electrical
Fr
• Special Core Interfacing Signals
• Emulation Support Signals Including Pipeline Refill, Processor Status, and Interrupt
Pending Signals
• Both 3.3-V and 5-V Operation
The SCM68000 has a statically selectable 8-bit or 16-bit data bus. The address bus is 32bits wide and may be used as either a 24-bit address bus as on the MC68000 microprocessors, or as a 32-bit address bus to fully support the internal architecture. The 32-bit address
1.
The SCM68000 is the name of the Verilog model for the EC000 core. The remainder of this section
will refer to the EC000 core as only the SCM68000.
MOTOROLA
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
1-1
Overview
bus allows direct addressing of up to 4 Gbytes. Logic can be added to implement dynamic
bus sizing.
The SCM68000 is upward code compatible with all other members of the M68000 microprocessor family. Any user-mode programs using the SCM68000 instruction set will run
unchanged on any MC680x0, MC68EC0x0, or MC683xx processor. This is possible
because the user programming model is identical for all processors and the instruction sets,
addressing modes, and data types for the SCM68000 are proper subsets of the complete
architecture.
The SCM68000 also includes some functions not found on the standard MC68000 and
MC68EC000 microprocessors such as the processor status, pipeline refill, and interrupt
pending signals. These signals permit emulation support and facilitate interfacing between
the SCM68000 and on-chip logic.
Freescale Semiconductor, Inc.
1.1 FLEXCORE INTEGRATED PROCESSORS
nc...
, I
or
emiconduct
eescale S
Fr
FlexCore allows designers of high-volume digital systems and third-party technology providers to place their proprietary circuitry on chip with a Motorola microprocessor. By using FlexCore, a designer can reduce the total system cost, component count, and power
consumption while providing higher performance and greater reliability. Up to 100,000 gates
or more of custom logic, memory, and peripheral modules can be added to a core processor
to produce the most cost-effective solution for a designer's system. The core processors
provide special power-management features such as 5 V, 3.3 V, and static operation. The
68000 Family of core processors offers the designer a range of performance from 3 to 12
million instructions per second (MIPS) (to be extended to 100 MIPS) while maintaining complete code compatibility throughout the Family. The 68000 processors have a proven architecture with a broad base of application and system software support, including real-time
kernels, operating systems, and compilers, in addition to a wide range of tools to support
software development. In the future, additional processing architectures will be included in
the FlexCore program, including PowerPC
1 shows a typical die layout for a FlexCore integrated processor.
Complete product lines can be created using FlexCore by implementing one base design
using a variety of core processors. Designers already familiar with 68000 Family design can
easily migrate to FlexCore processors as the core processors use the same bus interfaces
found on the standard 68000 Family members. Additionally, many peripheral modules and
memory elements are available for integration. Motorola has developed a complete design
system to put into the hands of the customer that includes both a broad cell-based library
and effective computer-aided design (CAD) tools. By building on Motorola's proven 68000
microprocessor architecture and superior manufacturing capabilities, FlexCore offers
designers the best path to higher system integration.
and digital signal processing (DSP). Figure 1-
1-2
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Overview
nc...
, I
or
CUSTOMER-DESIGNED
LOGIC
SPECIAL-FUNCTION
BLOCK/
MEMORY BLOCK
SPECIAL-FUNCTION
BLOCK/
MEMORY BLOCK
68000 FAMILY
PROCESSOR
Figure 1-1. FlexCore Integrated Processor Typical Die Layout
FlexCore custom processors are ideal for:
• High-volume users of 8-, 16-, and 32-bit integrated solutions requiring higher system
performance whose needs are not met by standard 68300 Family devices.
• Designers of high-volume applications who need to reduce cost, space, and/or power
consumption.
• Third-party technology providers who want to deliver their proprietary application-specific technology to a worldwide marketplace.
emiconduct
To develop a solution that best suits system requirements in the shortest time frame, integrated processor design is performed by the designer using a methodology created, tested,
and documented by Motorola. The resulting netlist is then laid out by Motorola, verified, and
fabricated in silicon. This enables FlexCore integrated processors to be produced quickly
and cost-effectively, with the resulting device containing all features needed for the system.
To implement the application-specific logic, the designer uses Motorola's standard cell
library. This library offers an extensive range of design elements, memory configurations,
eescale S
and an expanding array of peripheral modules. Each cell in the library has been designed
for optimum size and performance. The added flexibility of high-speed, high-density cells
Fr
allows the designer to achieve the most cost-effective solution while satisfying critical timing
requirements. The standard cell library has been thoroughly characterized and maintained
to ensure a smooth transition from a simulated design to working silicon. A custom part may
also become a standard product if both Motorola and the customer desire to do so. Standard
products are sold on the open market, allowing costs to be spread over additional units,
resulting in lower component prices for high-volume users.
Third-party technology providers can use the same methodology to combine their application-specific systems expertise with a core processor. The resulting device is manufactured
by Motorola and can be delivered to the marketplace through either the technologist’s or
Motorola’s marketing and sales channels.
MOTOROLA
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
1-3
Overview
Freescale Semiconductor, Inc.
1.1.1 FlexCore Advantages
Developers face tough challenges in reducing product cost. By incorporating user-designed
logic and Motorola-supplied functions into a single FlexCore processor, a system designer
can realize significant savings in cost, power consumption, board space, and pin count. The
equivalent functionality can easily require 20 separate components. Each component might
have 16–64 pins, totaling over 350 connections. Each connection is a candidate for a bad
solder joint or misrouted trace. Each component is another part to qualify, purchase, inventory, and maintain. Each component requires a share of the printed circuit board. Each component draws power—often to drive large buffers and circuit board traces to get signals to
another chip. Each component must be individually placed and attached to a printed circuit
board. The signals between the core processor unit and a peripheral might not be compatible nor run from the same clock, requiring time delays or other special design considerations.
In a FlexCore integrated processor, the major functions and glue logic are all properly connected internally, timed with the same clock, and fully tested. Only essential signals are
nc...
, I
brought out to pins. The processor is assembled in a surface-mount package for the smallest possible footprint.
or
emiconduct
eescale S
Fr
1.1.2 FlexCore Module Types
The three types of FlexCore modules are:
• Hard Module
—Not alterable
—Laid out
—Has a tech file
—Has a defined test scheme
• Soft Module
—Netlist
—Not alterable other than by clock tree insertion
—Not laid out
—Has a defined test scheme
—Simulation test fixture
• Parameterizable
—Alterable via insertion of predefined parameters
—Behavioral model
—Definition of parameters defines test scheme
—Customer selects parameter values and Motorola synthesizes the design
The SCM68000 core processor is available as a hard module.
1-4
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
nc...
, I
or
Freescale Semiconductor, Inc.
Overview
1.2 DEVELOPMENT CYCLE
There are several steps that must be followed in order to create a FlexCore integrated microprocessor with an SCM68000. Figure 1-2 illustrates the standard cell design flow and the
tools required to complete each step. These steps include:
• Convert Design to Standard Cells Design—Begin by implementing the required system
functions with an SCM68000, peripherals, memory blocks, and cells from the Motorola
standard cell library.
• Capture Design on Workstation—Use the engineering workstation to capture the logic
schematic of cells and their interconnections.
• Logic Synthesis—The structural level description of the design is mapped to a more efficient structural description, which is accomplished by converting the Boolean equations for the design to a two-level sum of products representation and minimized.
• Generate Test Patterns—The stimulus and test patterns for the design are generated
for the functional simulation.
• Functional Simulation—Ensure that the logic of the schematic is functionally sound by
using Verilog, the encrypted C models and synthesis models provided by Motorola. No
timing information is yet associated with the simulations, and all propagation delays are
preset to 1 ns.
emiconduct
eescale S
Fr
• Calculate Node Delays— Motorola software (mdaDecal) calculates the estimated propagation delays of each node in the circuit. The design software estimates delays based
on the fanout, drive characteristics, and estimated interconnect capacitances of the
netlist and reveals potential timing problems.
• Path Delay Analysis—With path delay information from the Veritime software, the delays between the clocked elements of the circuit can be determined, and the critical
paths that limit the clock rate can be identified. Checking for setup, hold, and pulsewidth violations can also be accomplished.
• Perform Real-Time Simulation—The real-time simulation is run to verify full functionality
using the estimated propagation delays calculated by the design tools.
• Extract Test Vectors—The simulator records the input/output patterns generated during
the real-time simulation. The test vectors that Motorola will use to test the prototypes
are derived from these patterns.
• Automatic Place & Route—The circuit’s physical layout is created from the netlist using
automatic place and route software.
• Interconnect Analysis—After the cells are placed and routed, the interconnect capacitances are extracted. These capacitances replace those estimated earlier during the
calculation of the node delays.
• Re-Simulate—The circuit is re-simulated with Verilog to ensure no problems have arisen due to a change in load conditions. If changes have occurred or the simulation is different in any way, the test vectors must also be extracted again.
MOTOROLA
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
1-5
Overview
Freescale Semiconductor, Inc.
nc...
, I
or
SYNTHESIS MODULES
LOGIC SYNTHESIS
(SYNOPSYS)
ENCRYPTED C
MODULES
GENERATE TEST PATTERNS
(STL/SYNOPSYS)
FUNCTIONAL SIMULATION
(VERILOG)
CALCULATE NODE DELAYS
(mdaDECAL)
PATH DELAY ANALYSIS
(VERITIME)
PERFORM REAL-TIME
SIMULATION
(VERILOG)
CONVERT DESIGN TO
STANDARD CELLS
CAPTURE DESIGN ON
WORKSTATION
(COMPOSER, VERILOG
HDL, VHDL)
PERFORM FAULT GRADING
(VERIFAULT)
emiconduct
eescale S
Fr
EXTRACT TEST VECTORS
(Summit Design)
AUTOMATIC PLACE & ROUTE
INTERCONNECT ANALYSIS
(mdaDECAL)
RE-SIMULATE
(VERILOG)
PATTERN, MASK AND
WAFER GENERATION
ASSEMBLY / TEST
NETLIST COMPARISON
(LVS)
1-6
MOTOROLACUSTOMER
Figure 1-2. Standard Cell Design Flow
EC000 CORE PROCESSOR USER’S MANUAL
SHIP TESTED PROTOTYPES
For More Information On This Product,
Go to: www.freescale.com
FINAL TEST PROGRAM
MOTOROLA
nc...
, I
or
emiconduct
eescale S
Fr
Freescale Semiconductor, Inc.
Overview
1.3 PROGRAMMING MODEL
The SCM68000 programming model is illustrated in Figure 1-3. It is separated into two
modes of access: user and supervisor. The user mode provides the execution environment
for the majority of application programs. The supervisor mode, which allows some additional
instructions and privileges, is used by the operating system and other system software.
Detailed information about the programming model can be found in the
grammer's Reference Manual
3116 158 70
3116 15
31
(M68000PM/AD).
(a) USER PROGRAMMING MODEL
D0
D1
D2
D3
EIGHT
DATA
D4
REGISTERS
D5
D6
D7
0
A0
A1
A2
SEVEN
A3
ADDRESS
REGISTERS
A4
A5
A6
A7
USER STACK
(USP) POINTER
0
70
PC
CCR
PROGRAM
COUNTER
CONDITION CODE
REGISTER
M68000 Family Pro-
MOTOROLA
3116 150
158 70
CCR
(b) SUPERVISOR PROGRAMMING MODEL
Figure 1-3. Programming Model
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
A7'
SUPERVISOR STACK
(SSP)
POINTER
STATUS REGISTER
SR
1-7
Overview
Freescale Semiconductor, Inc.
The user mode (see Figure 1-3(a)) provides access to 16 32-bit general-purpose registers
(D0–D7, A0–A7), a 32-bit program counter, and an 8-bit condition code register. The first
eight registers (D0–D7) are used as data registers for byte (8-bit), word (16-bit), and longword (32-bit) operations. The second set of seven registers (A0–A6) and the user stack
pointer (A7/USP) can be used as software stack pointers and base address registers. In
addition, the address registers can be used for word and long-word operations. All of the 16
registers can be used as index registers.
The supervisor mode (see Figure 1-3(b)) provides access to two supplementary registers,
the status register (high-order byte) and the supervisor stack pointer (A7'/SSP). The status
register (SR) (see Figure 1-4) contains the interrupt mask (eight levels available) and the
following condition codes: overflow (V), zero (Z), negative (N), carry (C), and extend (X).
Additional status bits indicate whether the SCM68000 is in the trace (T) mode and/or in the
supervisor (S) state. Bits 5, 6, 7, 11, 12, and 14 are undefined and reserved for future expansion.
nc...
, I
SYSTEM BYTEUSER BYTE
or
emiconduct
eescale S
Fr
TRACE MODE
SUPERVISOR
STATE
INTERRUPT
MASK
151310840
S
T
III
210
XNZVC
Figure 1-4. Status Register
EXTEND
NEGATIVE
ZERO
OVERFLOW
CARRY
CONDITION
CODES
1-8
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Overview
1.4 DATA TYPES AND ADDRESSING MODES
Detailed information about the data types and addressing modes can be found in the
M68000 Family Programmer's Reference Manual
ports the five basic data types of the M68000 family:
1. Bit
2. Binary-Coded-Decimal (BCD) Digit (4 Bits)
3. Byte (8 Bits)
4. Word (16 Bits)
5. Long Word (32 Bits)
In addition, the instruction set supports operations on other data formats such as memory
addresses, status word, data, etc.
The SCM68000 also supports the basic addressing modes of the M68000 family. The register indirect addressing modes support postincrementing, predecrementing, offsetting, and
nc...
, I
indexing capabilities. The program counter relative mode also supports indexing and offsetting. Table 1-1 lists a summary of the data addressing modes for the SCM68000.
(M68000PM/AD). The SCM68000 sup-
or
emiconduct
eescale S
Fr
Table 1-1. Data Addressing Modes
Addressing Modes
Register Direct Addressing
Data Register Direct
Address Register Direct
Absolute Data Addressing
Absolute Short
Absolute Long
Program Counter Relative Addressing
Relative with Offset
Relative with Index and Offset
Register Indirect Addressing
Register Indirect
Postincrement Register Indirect
Predecrement Register Indirect
Register Indirect with Offset
Indexed Register Indirect with Offset
Immediate Data Addressing
Immediate
Quick Immediate
Implied Addressing
Implied Register
NOTES:
EA=Effective Address
Dn=Data Register
An=Address Register
( )=Contents of
PC= Program Counter
d8=8-Bit Offset (Displacement)
d
=16-Bit Offset (Displacement)
16
N=1 for byte, 2 for word, and 4 for long word. If An is the stack pointer and the
←
Xn=Address or Data Register Used as Index Register
SR=Status Register
USP=User Stack Pointer
SSP=Supervisor Stack Pointer
(xxx)=Absolute Address
operand size is byte, N = 2 to keep the stack pointer on a word boundary.
=Replaces
EA = Dn
EA = An
EA = (Next Word)
EA = (Next Two Words)
EA = (PC) + d
EA = (PC) + d8
EA = (An)
EA = (An), An ← An + N
An ← An – N, EA = (An)
EA = (An) + d
EA = (An) + (Xn) + d8
DATA = Next Word(s)
Inherent Data
EA = SR, USP, SSP, PCSR, USP, SSP, PC
GenerationSyntax
Dn
An
(xxx).W
(xxx).L
16
16
(d16,PC)
(d8,PC,Xn)
(An)
(An)+
–(An)
(d16,An)
(d8,An,Xn)
#<data>
MOTOROLA
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
1-9
Overview
Freescale Semiconductor, Inc.
1.5 DATA ORGANIZATION
The eight data registers support data operands of 1, 8, 16, or 32 bits. The seven address
registers and the active stack pointer support address operands of 32 bits.
1.5.1 Data Registers
Each data register is 32 bits wide. Byte operands occupy the low-order 8 bits, word operands, the low-order 16 bits, and long-word operands, the entire 32 bits. The least significant
bit is addressed as bit zero; the most significant bit is addressed as bit 31.
When a data register is used as either a source or a destination operand, only the appropriate low-order portion is changed; the remaining high-order portion is neither used nor
changed. For example, if 8 bits are to be moved into a data register, bits 0 through 7 will be
modified and bits 8 through 31 will not be changed.
1.5.2 Address Registers
nc...
, I
or
emiconduct
eescale S
Fr
Each address register (and the stack pointer) is 32 bits wide and holds a full 32-bit address.
Address registers do not support byte-sized operands. Therefore, when an address register
is used as a source operand, either the low-order word or the entire long-word operand is
used, depending upon the operation size. When an address register is used as the destination operand, the entire register is affected, regardless of the operation size. If the operation
size is word, operands are sign-extended to 32 bits before the operation is performed.
1.5.3 Data Organization In Memory
Bytes are individually addressable. As shown in Figure 1-5, the high-order byte of a word
has the same address as the word. The low-order byte has an odd address, one count
higher. Instructions and multibyte data are accessed only on word (even byte) boundaries.
If a long-word operand is located at address n (n even), then the second word of that operand is located at address n+2.
1570141312111098654321
ADDRESS
$000000
BYTE 000000BYTE 000001
$000002
BYTE 000002BYTE 000003
WORD 0
WORD 1
1-10
$FFFFFE
BYTE FFFFFEBYTE FFFFFF
WORD 7FFFFF
Figure 1-5. Word Organization in Memory
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
The data types supported by the SCM68000 are bit data, integer data of 8, 16, and 32 bits,
32-bit addresses, and binary-coded-decimal data. Each data type is stored in memory as
shown in Figure 1-6.
Overview
1.6 INSTRUCTION SET SUMMARY
Table 1-2 lists the notational conventions used throughout this manual unless otherwise
specified. Table 1-3 lists the SCM68000 instruction set by opcode. In the syntax descriptions, the left operand is the source operand, and the right operand is the destination operand.
nc...
, I
or
emiconduct
eescale S
Fr
MOTOROLA
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
1-11
Overview
Freescale Semiconductor, Inc.
nc...
, I
or
emiconduct
eescale S
Fr
BIT DATA:
INTEGER DATA:
MSB
n
n + 2
MSB
n
n + 2
n + 4
MSB
n
n + 2
n + 4
n + 6
n + 8
n + 10
ADDRESSES:
MSB
n
n + 2
n + 4
n + 6
n + 8
n + 10
MSB = MOST SIGNIFICANT BIT
LSB = LEAST SIGNIFICANT BIT
1 BYTE = 8 BITS
7
1 BYTE = 8 BITS
89101112131415
7
BYTE 0
BYTE 2BYTE 3
LSB
1 WORD = 16 BITS
89101112131415
7
WORD 0
WORD 1
WORD 2
1 LONG WORD = 32 BITS
89101112131415
7
HIGH ORDER
LONG WORD 0
LOW ORDER
LONG WORD 1
LONG WORD 2
1 ADDRESS = 32 BITS
89101112131415
7
HIGH ORDER
ADDRESS 0
LOW ORDER
ADDRESS 1
ADDRESS 2
BYTE 1
LSB
LSB
LSB
0123456
0123456
n + 1
n + 3
0123456
0123456
0123456
1-12
DECIMAL DATA:
MSDLSD
MSD = MOST SIGNIFICANT DIGIT
LSD = LEAST SIGNIFICANT DIGIT
BCD 0BCD 1
BCD 4BCD 5
2 BINARY CODED DECIMAL DIGITS = 1 BYTE
Figure 1-6. Data Organization in Memory
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
89101112131415
7
BCD 2BCD 3
BCD 6BCD 7
0123456
MOTOROLA
nc...
, I
or
emiconduct
eescale S
Fr
≠
×
÷
Λ
⊕
→
↔
Overview
Freescale Semiconductor, Inc.
Table 1-2. Notational Conventions
Single- and Double-Operand Operations
Not equal.
+Arithmetic addition or postincrement indicator.
–Arithmetic subtraction or predecrement indicator.
Arithmetic multiplication.
Arithmetic division or conjunction symbol.
~Invert; operand is logically complemented.
Logical AND
VLogical OR
Logical exclusive OR
Source operand is moved to destination operand.
Two operands are exchanged.
<Relational test; true if source operand is less than destination operand.
>Relational test; true if source operand is greater than destination operand.
<operand>Data used as an operand.
<operand> testedOperand is compared to zero and the condition codes are set appropriately.
<operand> sign-ex-
tended <operand>
<operand> shifted by
<count>
<operand> rotated by
<count>
bit number of <oper-
and>
TRAP
STOPEnter the stopped state, waiting for interrupts.
<operand>
If <condition>
then <operations>
else <operations>
#<xxx> or #<data>
10
An
Ax, AySource and destination address registers, respectively.
DnAny Data Register n (example: D5 is data register 5)
Dx, DySource and destination data registers, respectively.
RnAny Address or Data Register
Rx, RyAny source and destination registers, respectively.
XnIndex Register—An, Dn, or suppressed.
<fmt>
( )Identifies an indirect address in a register.
[ ]Identifies an indirect address in memory.
d
n
CCR
PCProgram Counter
SRStatus Register
All bits of the upper portion are made equal to the high-order bit of the lower portion.
The source operand is shifted by the number of count.
The source operand is rotated by the number of count.
Selects a single bit of the operand.
Other Operations
1 → S-bit of SR;
SSP – 4 → SSP; PC → (SSP); SSP – 2 → SSP;
SR → (SSP); Vector Address → PC
The operand is BCD; operations are performed in decimal.
Test the condition. If true, the operations after “then” are performed. If the condition is false and
the optional “else” clause is present, the operations after “else” are performed. If the condition
is false and "else" is omitted, the instruction performs no operation. Refer to the Bcc instruction
description as an example.
Register Specification
Any Address Register n (example: A3 is address register 3)
Data Format and Type
Operand Data Format: Byte (B), Word (W), Long (L)
Subfields and Qualifiers
Immediate data following the instruction word(s).
Displacement Value, n Bits Wide (example: d16 is a 16-bit displacement).
Register Names
Condition Code Register (lower byte of status register)
1-13
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
nc...
, I
or
emiconduct
eescale S
Fr
Overview
Freescale Semiconductor, Inc.
Table 1-2. Notational Conventions (Continued)
Register Codes
C
ccCondition Codes from CCR
NNegative Bit in CCR
UUndefined, Reserved for Motorola Use
VOverflow Bit in CCR
XExtend Bit in CCR
ZZero Bit in CCR
SP
SSPSupervisor (Master or Interrupt) Stack Pointer
USPUser Stack Pointer
Destination Tested → Condition Codes; 1 → bit 7 of
1 → S-bit of SR;
SSP – 4 → SSP; PC → (SSP); SSP – 2 → SSP;
SR → (SSP); Vector Address → PC
then Source V SR → SR
then Assert RESETOB Line
then (SP) → SR; SP + 2 → SP; (SP) → PC;
SP + 4 → SP;
restore state and deallocate stack according to (SP)
– Source
10
then 1s → Destination
then Immediate Data → SR; STOP
Destination
– X → Destination
10
ORI # <data>,SR
RESET
ROd Dx,Dy
ROd # <data>,Dy
ROd Í
ROXd Dx,Dy
ROXd # <data>,Dy
ROXd Í
RTE
RTR
SBCD Dx,Dy
SBCD –(Ax),–(Ay)
Scc <ea>
STOP # <data>
SUB <ea>,Dn
SUB Dn,<ea>
SUBX Dx,Dy
SUBX –(Ax),–(Ay)
TAS <ea>
TRAP # <vector>
1-16EC000 CORE PROCESSOR USER’S MANUALMOTOROLA
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
SECTION 2
SIGNAL DESCRIPTION
nc...
, I
or
emiconduct
This section contains descriptions of the SCM68000 (EC000 core)
The input and output signals are shown in Figure 2-1. Table 2-1 lists the pins, signal names,
type, and whether they are three-stateable. The following paragraphs provide brief descriptions of the signals and references (where applicable) to other paragraphs that contain more
information about the signals.
NOTE
The terms
manual to avoid confusion when describing a mixture of "activelow" and "active-high" signals. The term
used to indicate that a signal is active or true, independently of
whether that level is represented by a high or low voltage. The
negate
term
tive or false.
assertion
or
negation
and
negation
is used to indicate that a signal is inac-
are used extensively in this
assert
1
input and output signals.
or
assertion
is
2.1 ADDRESS BUS (A31–A0)
This 32-bit, unidirectional, three-state bus is capable of addressing 4 Gbytes of address
space. This bus provides the address for bus operation during all cycles except interrupt
acknowledge cycles. During interrupt acknowledge cycles, address lines A1, A2, and A3
provide the level number of the interrupt being acknowledged, and address lines A31–A4
and A0 are driven to a logic high.
eescale S
Fr
2.2 DATA BUS (D15–D0)
This 16-bit, bidirectional, three-state bus is the general-purpose data-path. The data bus
transfers and accepts data in either word or byte length if the SCM68000 is operating in the
16-bit mode. If the SCM68000 is operating in the 8-bit mode, it drives the entire bus during
writes, but only the lower eight bits (D7–D0) contain valid data. In the 8-bit mode, the
SCM68000 ignores the data on data lines D15–D8 during read cycles. During an interrupt
acknowledge cycle, the external device supplies the vector number on data lines D7–D0.
2.3 CLOCK (CLKI, CLKO)
The CLKI input is internally buffered for development of the internal clocks needed by the
SCM68000. This clock signal is a constant-frequency square wave that requires no stretching or shaping. The clock signal must conform to minimum and maximum pulse-width times
1.
The SCM68000 is the name of the Verilog model for the EC000 core. The remainder of this section will
refer to the EC000 core as only the SCM68000.
MOTOROLA
EC000 CORE PROCESSOR USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
2-1
Loading...
+ 115 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.