Freescale MC68060, MC68LC060, MC68EC060 User Manual

M68060 User’s Manual
Including the
MC68060,
MC68LC060,
and
MC68EC060
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, 1994
µ
68K FAX-IT
Documentation Comments
FAX 512-891-8593—Documentation Comments Only
The Motorola High-End Technical Publications 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 ref­erence by the page number, paragraph number, figure number, table number, and line num­ber if needed.
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
M68060 USER’S MANUAL
iii
iv
Sales Offices —
Field Applications Engineering Available Through All Sales Offices
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
Philadelphia/Horsham (215) 957-4100
TENNESSEE , Knoxville (615) 690-5593 TEXAS , Austin (512) 873-2000 TEXAS , Houston (800) 343-2692 TEXAS , Plano (214) 516-5100 VIRGINIA , Richmond (804) 285-2100 WASHINGTON , Bellevue (206) 454-4160
Seattle Access (206) 622-9960
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
Car Phone 358(49)211501
FRANCE , Paris/Vanves 33(1)40 955 900
CANADA
INTERNATIONAL
GERMANY , Langenhagen/ Hanover 49(511)789911 GERMANY , Munich 49 89 92103-0 GERMANY , Nuremberg 49 911 64-3044 GERMANY , Sindelfingen 49 7031 69 910 GERMANY , Wiesbaden 49 611 761921 HONG KONG , Kwai Fong 852-4808333
Tai Po 852-6668333
INDIA , Bangalore (91-812)627094 ISRAEL , Tel Aviv 972(3)753-8222 ITALY , Milan 39(2)82201 JAPAN , Aizu 81(241)272231 JAPAN , Atsugi 81(0462)23-0761 JAPAN , Kumagaya 81(0485)26-2600 JAPAN , Kyushu 81(092)771-4212 JAPAN , Mito 81(0292)26-2340 JAPAN , Nagoya 81(052)232-1621 JAPAN , Osaka 81(06)305-1801 JAPAN, Sendai 81(22)268-4333 JAPAN, JAPAN, JAPAN KOREA , Pusan 82(51)4635-035 KOREA , Seoul 82(2)554-5188
MALAYSIA , Penang 60(4)374514 MEXICO , Mexico City 52(5)282-2864 MEXICO , Guadalajara 52(36)21-8977
Marketing 52(36)21-9023 Customer Service 52(36)669-9160
NETHERLANDS , Best (31)49988 612 11 PUERTO RICO , San Juan (809)793-2170 SINGAPORE SPAIN , Madrid 34(1)457-8204
or 34(1)457-8254
SWEDEN , Solna 46(8)734-8800 SWITZERLAND , Geneva 41(22)7991111 SWITZERLAND , Zurich 41(1)730 4074 TAlWAN , Taipei 886(2)717-7089 THAILAND , Bangkok (66-2)254-4910 UNITED KINGDOM , Aylesbury 44(296)395-252
COLORADO , Grand Junction
Cheryl Lee Whltely (303) 243-9658
KANSAS , Wichita
Melinda Shores/Kelly Greiving (316) 838 0190
NEVADA , Reno
Galena Technology Group (702) 746 0642
NEW MEXICO , Albuquerque
S&S Technologies, lnc. (505) 298-7177
UTAH , Salt Lake City
Utah Component Sales, Inc. (801) 561-5099
WASHINGTON , Spokane
Doug Kenley (509) 924-2322
ARGENTINA , Buenos Aires
Argonics, S.A. (541) 343-1787 Elmo Semiconductor (818) 768-7400
Minco Technology Labs Inc. (512) 834-2022 Semi Dice Inc. (310) 594-4631
Tachikawa 81(0425)23-6700 Tokyo 81(03)3440-3311
, Yokohama 81(045)472-2751
(65)2945438
FULL LINE REPRESENTATIVES
HYBRID COMPONENTS RESELLERS
M68060 USER’S MANUAL
MOTOROLA

PREFACE

The complete documentation package for the MC68060, MC68LC060, and MC68EC060 (collectively called M68060) consists of the M68060UM/AD, the M68000PM/AD,
Manual
32-bit microprocessors. The complete instruction set for the M68000 family.
The introduction of this manual includes general information concerning the MC68060 and summarizes the differences among the M68060 family devices. Additionally, appendices provide detailed information on how these M68060 derivatives operate differently from the MC68060.
When reading this manual, disregard information concerning the floating-point unit in refer­ence to the MC68LC060, and disregard information concerning the floating-point unit and memory management unit in reference to the MC68EC060.
describes the capabilities, operation, and programming of the M68060 superscalar
M68000 Family Programmer’s Reference Manual
M68000 Family Programmer’s Reference Manual
M68060 User’s Manual
. The
M68060 User’s
contains the
, and
The organization of this manual is as follows:
Section 1 Introduction Section 2 Signal Description Section 3 Integer Unit Section 4 Memory Management Unit Section 5 Caches Section 6 Floating-Point Unit Section 7 Bus Operation Section 8 Exception Processing Section 9 IEEE 1149.1 Test (JTAG) and Debug Pipe Control Modes Section 10 Instruction Timings Section 11 Applications Section 12 Electrical and Thermal Characteristics Section 13 Ordering Information and Mechanical Data Appendix A MC68LC060 Appendix B MC68EC060 Appendix C MC68060 Software Package Appendix D M68060 Instructions
MOTOROLA
M68060 USER’S MANUAL
v
MC68060 ACRONYM LIST
AGU—address generation unit ALU—arithmetic logic unit ATC—address translation cache BUSCR—bus control register CACR—cache control register CCR—condition code register CM—cache mode CPU—central processing unit DFC—destination function code DTTx—data transparent translation register DRAM—dynamic random access memory FPIAR—floating-point instruction address register FPCR—floating-point control register FPSP—floating-point software package FPSR—floating-point status register FPU—floating-point unit FP7–FP0—floating-point data registers 7–0 FSLW—fault status long word IEE—integer execute unit IFP—instruction fetch pipeline IFU—instruction fetch unit IPU—instruction pipe unit ISP—interrupt stack pointer ITTR—instruction transparent translation register IU—integer unit JTAG—Joint Test Action Group MMU—memory management unit
MOTOROLA
M68060 USER’S MANUAL
vii
MC68060 Acronym List
MMUSR—memory management unit status register M68060SP—M68060 software package NANs—not-a-numbers NOP—no operation OEP—operand execution pipeline OPU—operand pipe unit PC—program counter PCR—processor configuration register PGI—page index field PI—pointer index field PLL—phase-locked loop pOEP—primary operand execution pipeline RI—root index field SFC—source function code SNAN—signaling not-a-number sOEP—secondary operand execution pipeline SP—stack pointer SR—status register SRP—supervisor root pointer register SSP—supervisor stack pointer TAP—test access port TCR—translation control register TTL—transistor-transistor logic TTR—transparent translation register UPA—user page attribute URP—user root pointer register USP—user stack pointer VBR—vector base register VLSI—very large-scale integration
viii
M68060 USER’S MANUAL
MOTOROLA

TABLE OF CONTENTS

Section 1
Introduction
1.1 Differences Among M68060 Family Members..............................................1-3
1.1.1 MC68LC060................................................................................................1-3
1.1.2 MC68EC060...............................................................................................1-3
1.1.2.1 Address Translation Differences ..............................................................1-3
1.1.2.2 Instruction Differences..............................................................................1-3
1.2 Features........................................................................................................1-4
1.3 Architecture...................................................................................................1-4
1.4 Processor Overview......................................................................................1-5
1.4.1 Functional Blocks........................................................................................1-5
1.4.2 Integer Unit.................................................................................................1-7
1.4.2.1 Instruction Fetch Unit................................................................................1-7
1.4.2.2 Integer Unit...............................................................................................1-8
1.4.2.3 Floating-Point Unit....................................................................................1-8
1.4.2.4 Memory Units ...........................................................................................1-9
1.4.2.5 Address Translation Caches ....................................................................1-9
1.4.2.6 Instruction and Data Caches ....................................................................1-9
1.4.2.6.1 Cache Organization..............................................................................1-10
1.4.2.6.2 Cache Coherency.................................................................................1-10
1.4.3 Bus Controller...........................................................................................1-10
1.5 Processing States.......................................................................................1-10
1.6 Programming Model....................................................................................1-11
1.7 Data Format Summary................................................................................1-14
1.8 Addressing Capabilities Summary..............................................................1-14
1.9 Instruction Set Overview.............................................................................1-15
1.10 Notational Conventions...............................................................................1-21
Section 2
Signal Description
2.1 Address and Control Signals ........................................................................2-3
2.1.1 Address Bus (A31–A0)...............................................................................2-3
2.1.2 Cycle Long-Word Address (CLA
) ...............................................................2-4
2.2 Data Bus (D31–D0).......................................................................................2-4
2.3 Transfer Attribute Signals .............................................................................2-4
2.3.1 Transfer Cycle Type (TT1, TT0).................................................................2-4
2.3.2 Transfer Cycle Modifier (TM2–TM0)...........................................................2-4
2.3.3 Transfer Line Number (TLN1, TLN0)..........................................................2-5
2.3.4 User-Programmable Page Attributes (UPA1, UPA0)..................................2-5
2.3.5 Read/Write (R/W
MOTOROLA
) .......................................................................................2-6
M68060 USER’S MANUAL
ix
x
Table of Contents
2.3.6 Transfer Size (SIZ1, SIZ0)..........................................................................2-6
2.3.7 Bus Lock (LOCK
2.3.8 Bus Lock End (LOCKE
2.3.9 Cache Inhibit Out (CIOUT
2.3.10 Byte Select Lines (BS3
)........................................................................................ 2-6
)..............................................................................2-6
)......................................................................... 2-7
–BS0).....................................................................2-7
2.4 Master Transfer Control Signals................................................................... 2-7
2.4.1 Transfer Start (TS
2.4.2 Transfer in Progress (TIP
2.4.3 Starting Termination Acknowledge Signal Sampling (SAS
)...................................................................................... 2-8
).......................................................................... 2-8
)....................... 2-8
2.5 Slave Transfer Control Signals..................................................................... 2-8
2.5.1 Transfer Acknowledge (TA
2.5.2 Transfer Retry Acknowledge (TRA
)........................................................................2-8
)............................................................ 2-8
2.5.3 Transfer Error Acknowledge (TEA) ............................................................2-9
2.5.4 Transfer Burst Inhibit (TBI
2.5.5 Transfer Cache Inhibit (TCI
2.6 Snoop Control (SNOOP
)......................................................................... 2-9
)....................................................................... 2-9
) ..............................................................................2-9
2.7 Arbitration Signals....................................................................................... 2-10
2.7.1 Bus Request (BR
2.7.2 Bus Grant (BG
2.7.3 Bus Grant Relinquish Control (BGR
2.7.4 Bus Tenure Termination (BTT
2.7.5 Bus Busy (BB
)..................................................................................... 2-10
).........................................................................................2-10
)........................................................2-10
).................................................................2-10
)..........................................................................................2-11
2.8 Processor Control Signals.......................................................................... 2-11
2.8.1 Cache Disable (CDIS
2.8.2 MMU Disable (MDIS
2.8.3 Reset In (RSTI
)......................................................................................... 2-12
2.8.4 Reset Out (RSTO
).............................................................................. 2-11
)................................................................................ 2-12
).................................................................................... 2-12
2.9 Interrupt Control Signals............................................................................. 2-12
2.9.1 Interrupt Priority Level (IPL2
2.9.2 Interrupt Pending Status (IPEND
2.9.3 Autovector (AVEC
)................................................................................... 2-13
–IPL0)..........................................................2-12
) ............................................................2-12
2.10 Status and Clock Signals............................................................................2-13
2.10.1 Processor Status (PST4–PST0)...............................................................2-13
2.10.2 MC68060 Processor Clock (CLK) ............................................................2-14
2.10.3 Clock Enable (CLKEN
)............................................................................. 2-14
2.11 Test Signals................................................................................................2-15
2.11.1 JTAG Enable (JTAG
)................................................................................ 2-15
2.11.2 Test Clock (TCK)...................................................................................... 2-15
2.11.3 Test Mode Select (TMS)........................................................................... 2-15
2.11.4 Test Data In (TDI).....................................................................................2-16
2.11.5 Test Data Out (TDO)................................................................................ 2-16
2.11.6 Test Reset (TRST) ...................................................................................2-16
2.12 Thermal Sensing Pins (THERM1, THERM0)..............................................2-16
2.13 Power Supply Connections.........................................................................2-16
2.14 Signal Summary .........................................................................................2-16
M68060 USER’S MANUAL
MOTOROLA
Table of Contents
Section 3
Integer Unit
3.1 Integer Unit Execution Pipelines...................................................................3-1
3.2 Integer Unit Register Description..................................................................3-2
3.2.1 Integer Unit User Programming Model.......................................................3-2
3.2.1.1 Data Registers (D7–D0) ...........................................................................3-2
3.2.1.2 Address Registers (A6–A0)......................................................................3-2
3.2.1.3 User Stack Pointer (A7)............................................................................3-2
3.2.1.4 Program Counter......................................................................................3-3
3.2.1.5 Condition Code Register ..........................................................................3-3
3.2.2 Integer Unit Supervisor Programming Model..............................................3-3
3.2.2.1 Supervisor Stack Pointer..........................................................................3-4
3.2.2.2 Status Register.........................................................................................3-4
3.2.2.3 Vector Base Register................................................................................3-4
3.2.2.4 Alternate Function Code Registers...........................................................3-5
3.2.2.5 Processor Configuration Register.............................................................3-5
Section 4
Memory Management Unit
4.1 Memory Management Programming Model..................................................4-3
4.1.1 User and Supervisor Root Pointer Registers..............................................4-3
4.1.2 Translation Control Register.......................................................................4-4
4.1.3 Transparent Translation Registers .............................................................4-6
4.2 Logical Address Translation..........................................................................4-7
4.2.1 Translation Tables......................................................................................4-7
4.2.2 Descriptors................................................................................................4-12
4.2.2.1 Table Descriptors....................................................................................4-12
4.2.2.2 Page Descriptors....................................................................................4-12
4.2.2.3 Descriptor Field Definitions.....................................................................4-13
4.2.3 Translation Table Example.......................................................................4-15
4.2.4 Variations in Translation Table Structure..................................................4-16
4.2.4.1 Indirect Action.........................................................................................4-16
4.2.4.2 Table Sharing Between Tasks................................................................4-17
4.2.4.3 Table Paging ..........................................................................................4-17
4.2.4.4 Dynamically Allocated Tables.................................................................4-17
4.2.5 Table Search Accesses............................................................................4-19
4.2.6 Address Translation Protection.................................................................4-20
4.2.6.1 Supervisor and User Translation Tables ................................................4-21
4.2.6.2 Supervisor Only......................................................................................4-22
4.2.6.3 Write Protect...........................................................................................4-22
4.3 Address Translation Caches.......................................................................4-24
4.4 Transparent Translation..............................................................................4-27
4.5 Address Translation Summary....................................................................4-28
4.6 RSTI
4.6.1 Effect of RSTI
and MDIS Effect on the MMU............................................................4-28
on the MMUs.....................................................................4-28
MOTOROLA
M68060 USER’S MANUAL
xi
Table of Contents
4.6.2 Effect of MDIS on Address Translation .................................................... 4-30
4.7 MMU Instructions........................................................................................4-30
4.7.1 MOVEC ....................................................................................................4-30
4.7.2 PFLUSH ...................................................................................................4-30
4.7.3 PLPA ........................................................................................................4-30
Section 5
Caches
5.1 Cache Operation........................................................................................... 5-1
5.2 Cache Control Register ................................................................................5-5
5.3 Cache Management .....................................................................................5-6
5.4 Caching Modes.............................................................................................5-7
5.4.1 Cachable Accesses.................................................................................... 5-7
5.4.1.1 Writethrough Mode...................................................................................5-7
5.4.1.2 Copyback Mode .......................................................................................5-8
5.4.2 Cache-Inhibited Accesses.......................................................................... 5-8
5.4.3 Special Accesses .......................................................................................5-9
5.5 Cache Protocol.............................................................................................5-9
5.5.1 Read Miss...................................................................................................5-9
5.5.2 Write Miss...................................................................................................5-9
5.5.3 Read Hit......................................................................................................5-9
5.5.4 Write Hit....................................................................................................5-10
5.6 Cache Coherency....................................................................................... 5-10
5.7 Memory Accesses for Cache Maintenance................................................ 5-11
5.7.1 Cache Filling.............................................................................................5-11
5.7.2 Cache Pushes..........................................................................................5-13
5.8 Push Buffer................................................................................................. 5-13
5.9 Store Buffer................................................................................................. 5-13
5.10 Push Buffer and Store Buffer Bus Operation..............................................5-14
5.11 Branch Cache.............................................................................................5-14
5.12 Cache Operation Summary ........................................................................ 5-15
5.12.1 Instruction Cache...................................................................................... 5-15
5.12.2 Data Cache............................................................................................... 5-16
Section 6
Floating-Point Unit
6.1 Floating-Point User Programming Model...................................................... 6-2
6.1.1 Floating-Point Data Registers (FP7–FP0).................................................. 6-3
6.1.2 Floating-Point Control Register (FPCR).....................................................6-3
6.1.2.1 Exception Enable Byte ............................................................................. 6-3
6.1.2.2 Mode Control Byte.................................................................................... 6-3
6.1.3 Floating-Point Status Register (FPSR).......................................................6-4
6.1.3.1 Floating-Point Condition Code Byte ......................................................... 6-5
6.1.3.2 Quotient Byte............................................................................................ 6-5
6.1.3.3 Exception Status Byte .............................................................................. 6-5
xii
M68060 USER’S MANUAL
MOTOROLA
Table of Contents
6.1.3.4 Accrued Exception Byte ...........................................................................6-6
6.1.4 Floating-Point Instruction Address Register (FPIAR) .................................6-7
6.2 Floating-Point Data Formats and Data Types...............................................6-7
6.3 Computational Accuracy.............................................................................6-11
6.3.1 Intermediate Result...................................................................................6-12
6.3.2 Rounding the Result.................................................................................6-13
6.4 Postprocessing Operation...........................................................................6-15
6.4.1 Underflow, Round, and Overflow..............................................................6-15
6.4.2 Conditional Testing...................................................................................6-16
6.5 Floating-Point Exceptions...........................................................................6-19
6.5.1 Unimplemented Floating-Point Instructions..............................................6-19
6.5.2 Unsupported Floating-Point Data Types...................................................6-21
6.5.3 Unimplemented Effective Address Exception...........................................6-22
6.6 Floating-Point Arithmetic Exceptions..........................................................6-22
6.6.1 Branch/Set on Unordered (BSUN)............................................................6-24
6.6.1.1 Trap Disabled Results (FPCR BSUN Bit Cleared) .................................6-24
6.6.1.2 Trap Enabled Results (FPCR BSUN Bit Set) .........................................6-24
6.6.2 Signaling Not-a-Number (SNAN)..............................................................6-25
6.6.2.1 Trap Disabled Results (FPCR SNAN Bit Cleared) .................................6-25
6.6.2.2 Trap Enabled Results (FPCR SNAN Bit Set) .........................................6-26
6.6.3 Operand Error...........................................................................................6-26
6.6.3.1 Trap Disabled Results (FPCR OPERR Bit Cleared)...............................6-27
6.6.3.2 Trap Enabled Results (FPCR OPERR Bit Set).......................................6-27
6.6.4 Overflow....................................................................................................6-28
6.6.4.1 Trap Disabled Results (FPCR OVFL Bit Cleared)..................................6-29
6.6.4.2 Trap Enabled Results (FPCR OVFL Bit Set)..........................................6-29
6.6.5 Underflow..................................................................................................6-30
6.6.5.1 Trap Disabled Results (FPCR UNFL Bit Cleared)..................................6-31
6.6.5.2 Trap Enabled Results (FPCR UNFL Bit Set)..........................................6-31
6.6.6 Divide-by-Zero..........................................................................................6-32
6.6.6.1 Trap Disabled Results (FPCR DZ Bit Cleared).......................................6-33
6.6.6.2 Trap Enabled Results (FPCR DZ Bit Set)...............................................6-33
6.6.7 Inexact Result...........................................................................................6-33
6.6.7.1 Trap Disabled Results (FPCR INEX1 Bit and INEX2 Bit Cleared...........6-34
6.6.7.2 Trap Enabled Results (Either FPCR INEX1 Bit or INEX2 Bit Set)..........6-34
6.7 Floating-Point State Frames.......................................................................6-35
Section 7
Bus Operation
7.1 Bus Characteristics.......................................................................................7-1
7.2 Full-, Half-, and Quarter-Speed Bus Operation and BCLK...........................7-3
7.3 Acknowledge Termination Ignore State Capability.......................................7-4
7.4 Bus Control Register.....................................................................................7-4
7.5 Data Transfer Mechanism.............................................................................7-5
7.6 Misaligned Operands....................................................................................7-9
MOTOROLA
M68060 USER’S MANUAL
xiii
Table of Contents
7.7 Processor Data Transfers...........................................................................7-12
7.7.1 Byte, Word, and Long-Word Read Transfer Cycles.................................7-12
7.7.2 Line Read Transfer...................................................................................7-15
7.7.3 Byte, Word, and Long-Word Write Cycles................................................7-20
7.7.4 Line Write Cycles.....................................................................................7-25
7.7.5 Locked Read-Modify-Write Cycles..........................................................7-28
7.7.6 Emulating CAS2 and CAS Misaligned......................................................7-31
7.7.7 Using CLA
to Increment A3 and A2.......................................................... 7-32
7.8 Acknowledge Cycles................................................................................... 7-32
7.8.1 Interrupt Acknowledge Cycles................................................................. 7-32
7.8.1.1 Interrupt Acknowledge Cycle (Terminated Normally).............................7-35
7.8.1.2 Autovector Interrupt Acknowledge Cycle ...............................................7-35
7.8.1.3 Spurious Interrupt Acknowledge Cycle ..................................................7-35
7.8.2 Breakpoint Acknowledge Cycle................................................................ 7-36
7.8.2.1 LPSTOP Broadcast Cycle......................................................................7-38
7.9 Bus Exception Control Cycles ....................................................................7-46
7.9.1 Bus Errors.................................................................................................7-46
7.9.2 Retry Operation........................................................................................7-48
7.9.3 Double Bus Fault...................................................................................... 7-51
7.10 Bus Synchronization...................................................................................7-52
7.11 Bus Arbitration ............................................................................................ 7-52
7.11.1 MC68040-Arbitration Protocol (BB Protocol)............................................7-53
7.11.2 MC68060-Arbitration Protocol (BTT Protocol)..........................................7-58
7.11.3 External Arbiter Considerations................................................................7-65
7.12 Bus Snooping Operation............................................................................7-68
7.13 Reset Operation.........................................................................................7-71
7.14 Special Modes of Operation .......................................................................7-74
7.14.1 Acknowledge Termination Ignore State Capability...................................7-74
7.14.2 Acknowledge Termination Protocol.......................................................... 7-76
7.14.3 Extra Data Write Hold Time Mode............................................................7-76
Section 8
Exception Processing
8.1 Exception Processing Overview...................................................................8-1
8.2 Integer Unit Exceptions................................................................................. 8-4
8.2.1 Access Error Exception..............................................................................8-5
8.2.2 Address Error Exception.............................................................................8-7
8.2.3 Instruction Trap Exception..........................................................................8-7
8.2.4 Illegal Instruction and Unimplemented Instruction Exceptions...................8-8
8.2.5 Privilege Violation Exception....................................................................8-10
8.2.6 Trace Exception........................................................................................8-10
8.2.7 Format Error Exception ............................................................................8-11
8.2.8 Breakpoint Instruction Exception.............................................................. 8-11
8.2.9 Interrupt Exception ...................................................................................8-12
8.2.10 Reset Exception .......................................................................................8-14
xiv
M68060 USER’S MANUAL
MOTOROLA
Table of Contents
8.3 Exception Priorities.....................................................................................8-17
8.4 Return from Exceptions ..............................................................................8-19
8.4.1 Four-Word Stack Frame (Format $0) .......................................................8-19
8.4.2 Six-Word Stack Frame (Format $2)..........................................................8-20
8.4.3 Floating-Point Post-Instruction Stack Frame (Format $3) ........................8-20
8.4.4 Eight-Word Stack Frame (Format $4).......................................................8-21
8.4.4.1 Program Counter (PC)............................................................................8-21
8.4.4.2 Fault Address .........................................................................................8-22
8.4.4.3 Fault Status Long Word (FSLW).............................................................8-22
8.4.5 Recovering from an Access Error.............................................................8-25
8.4.6 Bus Errors and Pending Memory Writes .................................................8-27
8.4.7 Branch Prediction Error ............................................................................8-29
Section 9
IEEE 1149.1 Test (JTAG) and Debug Pipe Control Modes
9.1 IEEE 1149.1 Test Access Port (Normal JTAG) Mode ..................................9-1
9.1.1 Overview.....................................................................................................9-2
9.1.2 JTAG Instruction Shift Register ..................................................................9-3
9.1.2.1 EXTEST....................................................................................................9-4
9.1.2.2 LPSAMPLE...............................................................................................9-5
9.1.2.3 Private Instructions...................................................................................9-5
9.1.2.4 SAMPLE/PRELOAD.................................................................................9-5
9.1.2.5 IDCODE....................................................................................................9-5
9.1.2.6 CLAMP .....................................................................................................9-6
9.1.2.7 HIGHZ.......................................................................................................9-6
9.1.2.8 BYPASS ...................................................................................................9-6
9.1.3 JTAG Test Data Registers..........................................................................9-7
9.1.3.1 Idcode Register ........................................................................................9-7
9.1.3.2 Boundary Scan Register...........................................................................9-7
9.1.3.3 Bypass Register .....................................................................................9-15
9.1.4 Restrictions...............................................................................................9-15
9.1.5 Disabling the IEEE 1149.1 Standard Operation .......................................9-15
9.1.6 Motorola MC68060 BSDL Description......................................................9-17
9.2 Debug Pipe Control Mode...........................................................................9-24
9.2.1 Debug Command Interface.......................................................................9-25
9.2.2 Debug Pipe Control Mode Commands.....................................................9-27
9.2.3 Emulator Mode .........................................................................................9-31
9.3 Switching between JTAG and Debug Pipe ControlModes of Operation.....9-33
Section 10
Instruction Execution Timing
10.1 Superscalar Operand Execution Pipelines .................................................10-1
10.1.1 Dispatch Test 1: sOEP Opword and Required
Extension Words Are Valid.......................................................................10-2
10.1.2 Dispatch Test 2: Instruction Classification................................................10-2
MOTOROLA
M68060 USER’S MANUAL
xv
Table of Contents
10.1.3 Dispatch Test 3: Allowable Effective Addressing Mode in the sOEP.......10-8
10.1.4 Dispatch Test 4: Allowable Operand Data Memory Reference................ 10-8
10.1.5 Dispatch Test 5: No Register Conflicts on sOEP.AGU Resources ..........10-8
10.1.6 Dispatch Test 6: No Register Conflicts on sOEP.IEE Resources ............10-9
10.2 Timing Assumptions .................................................................................10-10
10.3 Cache and ATC Performance Degradation Times ................................... 10-12
10.3.1 Instruction ATC Miss ..............................................................................10-12
10.3.2 Data ATC Miss .......................................................................................10-13
10.3.3 Instruction Cache Miss...........................................................................10-13
10.3.4 Data Cache Miss....................................................................................10-13
10.4 Effective Address Calculation Times ........................................................ 10-14
10.5 Move Instruction Execution Times............................................................10-14
10.6 Standard Instruction Execution Times......................................................10-16
10.7 Immediate Instruction Execution Times....................................................10-17
10.8 Single-Operand Instruction Execution Times ...........................................10-18
10.9 Shift/Rotate Execution Times ...................................................................10-19
10.10 Bit Manipulation and Bit Field Execution Times........................................ 10-19
10.11 Branch Instruction Execution Times.........................................................10-21
10.12 LEA, PEA, and MOVEM Execution Times................................................ 10-22
10.13 Multiprecision Instruction Execution Times............................................... 10-22
10.14 Status Register, MOVES, and Miscellaneous
Instruction Execution Times...................................................................... 10-22
10.15 FPU Instruction Execution Times .............................................................10-24
10.16 Exception Processing Times ....................................................................10-26
Section 11
Applications Information
11.1 Guidelines for Porting Software to the MC68060 .......................................11-1
11.1.1 User Code ................................................................................................11-1
11.1.2 Supervisor Code.......................................................................................11-1
11.1.2.1 Initialization Code (Reset Exception Handler)........................................11-2
11.1.2.1.1 Processor Configuration Register (PCR) (MOVEC of PCR)................11-2
11.1.2.1.2 Default Transparent Translation Register (MOVEC of TCR) ............... 11-2
11.1.2.1.3 MC68060 Software Package (M68060SP). ......................................... 11-2
11.1.2.1.4 Cache Control Register (CACR) (MOVEC of CACR)..........................11-3
11.1.2.1.5 Resource Checking (Access Error Handler) ........................................ 11-3
11.1.2.2 Virtual Memory Software........................................................................11-3
11.1.2.2.1 Translation Control Register (MOVEC of TCR)....................................11-3
11.1.2.2.2 Descriptors in Cacheable Copyback Pages Prohibited........................11-4
11.1.2.2.3 Page and Descriptor Faults (Access Error Handler)............................11-4
11.1.2.2.4 PTEST, MOVEC of MMUSR, and PLPA..............................................11-4
11.1.2.3 Context Switch Interrupt Handlers.......................................................... 11-5
11.1.2.4 Trace Handlers.......................................................................................11-5
11.1.2.5 I/O Device Driver Software.....................................................................11-5
11.1.3 Precise Vs. Imprecise Exception Mode.................................................... 11-6
xvi
M68060 USER’S MANUAL
MOTOROLA
Table of Contents
11.1.4 Other Considerations................................................................................11-6
11.2 Using an MC68060 in an Existing MC68040 System .................................11-6
11.2.1 Power Considerations...............................................................................11-6
11.2.1.1 DC to DC Voltage Conversion................................................................11-6
11.2.1.1.1 Linear Voltage Regulator Solution........................................................11-7
11.2.1.1.2 Switching Regulator Solution................................................................11-7
11.2.1.2 Input Signals During Power-Up Requirement.......................................11-11
11.2.2 Output Hold Time Differences ................................................................11-11
11.2.3 Bus Arbitration........................................................................................11-13
11.2.4 Snooping.................................................................................................11-13
11.2.5 Special Modes........................................................................................11-13
11.2.6 Clocking..................................................................................................11-14
11.2.7 PSTx Encoding.......................................................................................11-14
11.2.8 Miscellaneous Pullup Resistors..............................................................11-15
11.3 Example DRAM Access............................................................................11-15
11.4 Thermal Management..............................................................................11-17
11.5 Support Devices.......................................................................................11-20
Section 12
Electrical and Thermal Characteristics
12.1 Maximum Ratings .......................................................................................12-1
12.2 Thermal Characteristics..............................................................................12-1
12.3 Power Dissipation .......................................................................................12-1
12.4 DC Electrical Specifications (Vcc = 3.3 Vdc ± 5%).....................................12-2
12.5 Clock Input Specifications (Vcc = 3.3 Vdc ± 5%)........................................12-3
12.6 Output AC Timing Specifications (Vcc = 3.3 Vdc ± 5%).............................12-4
12.7 Input AC Timing Specifications (Vcc = 3.3 Vdc ± 5%)................................12-6
Section 13
Ordering Information and Mechanical Data
13.1 Ordering Information...................................................................................13-1
13.2 Pin Assignments .........................................................................................13-1
13.2.1 MC68060, MC68LC060, and MC68EC060 Pin Grid Array (RC Suffix) ....13-2
13.2.2 MC68060, MC68LC060, and MC68EC060 Quad Flat Pack (FE Suffix)...13-3
13.3 Mechanical Data .........................................................................................13-4
Appendix A
MC68LC060
Appendix B
MC68EC060
B.1 Address Translation Differences...................................................................B-1
B.2 Instruction Differences..................................................................................B-1
MOTOROLA
M68060 USER’S MANUAL
xvii
Table of Contents
Appendix C
MC68060 Software Package
C.1 Module Format..............................................................................................C-2
C.2 Unimplemented Integer Instructions.............................................................C-4
C.2.1 Integer Emulation Results ..........................................................................C-5
C.2.2 Module 1: Unimplemented Integer Instruction Exception
(MC68060ISP)............................................................................................C-5
C.2.2.1 Unimplemented Integer Instruction Exception Module Entry Points ........C-6
C.2.2.2 Unimplemented Integer Instruction Exception Module Call-Outs.............C-6
C.2.2.3 CAS Misaligned Address and CAS2
Emulation-Related Call-Outs and Entry Points ........................................C-6
C.2.3 Module 2: Unimplemented Integer Instruction Library (MC68060ILSP).....C-9
C.3 Floating-Point Emulation Package (MC68060FPSP) .................................C-11
C.3.1 Floating-Point Emulation Results .............................................................C-13
C.3.2 Module 3: Full Floating-Point Kernel ........................................................C-14
C.3.2.1 Full Floating-Point Kernel Module Entry Points......................................C-14
C.3.2.2 Full Floating-Point Kernel Module Call-Outs..........................................C-14
C.3.2.2.1 The F-Line Exception Call-Outs...........................................................C-14
C.3.2.2.2 System-Supplied Floating-Point Arithmetic
Exception Handler Call-Outs................................................................C-15
C.3.2.2.3 Exception-Related Call-Outs...............................................................C-15
C.3.2.2.4 Exit Point Call-Outs..............................................................................C-15
C.3.2.3 Bypassing Module-Supplied Floating-Point Arithmetic Handlers...........C-15
C.3.2.3.1 Overflow/Underflow..............................................................................C-16
C.3.2.3.2 Signalling Not-A-Number, Operand Error.............................................C-17
C.3.2.3.3 Inexact Exception.................................................................................C-18
C.3.2.3.4 Divide-by-Zero Exception.....................................................................C-19
C.3.2.3.5 Branch/Set on Unordered Exception....................................................C-19
C.3.2.4 Exceptions During Emulation.................................................................C-20
C.3.2.4.1 Trap-Disabled Operation......................................................................C-20
C.3.2.4.2 Trap-Enabled Operation.......................................................................C-21
C.3.3 Module 4: Partial Floating-Point Kernel....................................................C-21
C.3.4 Module 5: Floating-Point Library (M68060FPLSP)...................................C-22
C.4 Operating System Dependencies...............................................................C-23
C.4.1 Instruction and Data Fetches....................................................................C-23
C.4.2 Instructions Not Recommended...............................................................C-26
C.5 Installation Notes ........................................................................................C-27
C.5.1 Installing the Library Modules...................................................................C-27
C.5.2 Installing the Kernel Modules ...................................................................C-27
C.5.3 Release Notes and Module Offset Assignments......................................C-28
C.5.4 AESOP Electronic Bulletin Board.............................................................C-29
xviii
Appendix D
MC68060 Instructions
M68060 USER’S MANUAL
MOTOROLA

LIST OF ILLUSTRATIONS

1-1 MC68060 Block Diagram ...................................................................................1-6
1-2 Programming Model.........................................................................................1-12
2-1 Functional Signal Groups...................................................................................2-3
3-1 MC68060 Integer Unit Pipeline ..........................................................................3-1
3-2 Integer Unit User Programming Model...............................................................3-2
3-3 Integer Unit Supervisor Programming Model.....................................................3-3
3-4 Status Register...................................................................................................3-4
3-5 Processor Configuration Register ......................................................................3-5
4-1 Memory Management Unit.................................................................................4-2
4-2 Memory Management Programming Model.......................................................4-3
4-3 URP and SRP Register Formats........................................................................4-3
4-4 Translation Control Register Format..................................................................4-4
4-5 Transparent Translation Register Format ..........................................................4-6
4-6 Translation Table Structure................................................................................4-8
4-7 Logical Address Format .....................................................................................4-8
4-8 Detailed Flowchart of Table Search Operation ................................................4-10
4-9 Detailed Flowchart of Descriptor Fetch Operation ...........................................4-11
4-10 Table Descriptor Formats.................................................................................4-12
4-11 Page Descriptor Formats .................................................................................4-12
4-12 Example Translation Table...............................................................................4-15
4-13 Translation Table Using Indirect Descriptors ...................................................4-16
4-14 Translation Table Using Shared Tables...........................................................4-18
4-15 Translation Table with Nonresident Tables......................................................4-19
4-16 Translation Table Structure for Two Tasks ......................................................4-21
4-17 Logical Address Map with Shared Supervisor and User Address Spaces.......4-22
4-18 Translation Table Using S-Bit and W-Bit To Set Protection.............................4-23
4-19 ATC Organization.............................................................................................4-24
4-20 ATC Entry and Tag Fields................................................................................4-25
4-21 Address Translation Flowchart.........................................................................4-29
5-1 MC68060 Instruction and Data Caches .............................................................5-2
5-2 Instruction Cache Line Format...........................................................................5-2
5-3 Data Cache Line Format....................................................................................5-2
5-4 Caching Operation .............................................................................................5-3
5-5 Cache Control Register......................................................................................5-5
5-6 Instruction Cache Line State Diagram..............................................................5-16
5-7 Data Cache Line State Diagrams.....................................................................5-18
6-1 Floating-Point Unit Block Diagram .....................................................................6-2
6-2 Floating-Point User Programming Model...........................................................6-3
6-3 Floating-Point Control Register Format..............................................................6-4
MOTOROLA
M68060 USER’S MANUAL
xix
xx
List of Illustrations
6-4 Floating-Point Condition Code (FPSR)..............................................................6-5
6-5 Floating-Point Quotient Byte (FPSR).................................................................6-5
6-6 Floating-Point Exception Status Byte (FPSR)....................................................6-6
6-7 Floating-Point Accrued Exception Byte (FPSR).................................................6-6
6-8 Intermediate Result Format.............................................................................. 6-12
6-9 Rounding Algorithm Flowchart......................................................................... 6-14
6-10 Floating-Point State Frame..............................................................................6-35
6-11 Status Word Contents...................................................................................... 6-36
7-1 Signal Relationships to Clocks...........................................................................7-2
7-2 Full-Speed Clock................................................................................................7-2
7-3 Half-Speed Clock...............................................................................................7-2
7-4 Quarter-Speed Clock .........................................................................................7-3
7-5 Bus Control Register Format.............................................................................. 7-4
7-6 Internal Operand Representation.......................................................................7-5
7-7 Data Multiplexing................................................................................................ 7-6
7-8 Byte Select Signal Generation and PAL Equation.............................................7-8
7-9 Example of a Misaligned Long-Word Transfer.................................................7-10
7-10 Example of Misaligned Word Transfer............................................................. 7-10
7-11 Misaligned Long-Word Read Bus Cycle Timing............................................... 7-11
7-12 Byte, Word, and Long-Word Read Cycle Flowchart ........................................7-13
7-13 Byte, Word, and Long-Word Read Bus Cycle Timing...................................... 7-14
7-14 Line Read Cycle Flowchart..............................................................................7-17
7-15 Line Read Transfer Timing............................................................................... 7-18
7-16 Burst-Inhibited Line Read Cycle Flowchart...................................................... 7-20
7-17 Burst-Inhibited Line Read Bus Cycle Timing.................................................... 7-21
7-18 Byte, Word, and Long-Word Write Transfer Flowchart....................................7-22
7-19 Long-Word Write Bus Cycle Timing................................................................. 7-23
7-20 Line Write Cycle Flowchart ..............................................................................7-26
7-21 Line Write Burst-Inhibited Cycle Flowchart......................................................7-27
7-22 Line Write Bus Cycle Timing............................................................................ 7-28
7-23 Locked Bus Cycle for TAS Instruction Timing..................................................7-30
7-24 Using CLA
in a High-Speed DRAM Design .....................................................7-33
7-25 Interrupt Pending Procedure............................................................................ 7-33
7-26 Assertion of IPEND
..........................................................................................7-34
7-27 Interrupt Acknowledge Cycle Flowchart...........................................................7-36
7-28 Interrupt Acknowledge Bus Cycle Timing ........................................................7-37
7-29 Autovector Interrupt Acknowledge Bus Cycle Timing......................................7-38
7-30 Breakpoint Interrupt Acknowledge Cycle Flowchart......................................... 7-39
7-31 Breakpoint Interrupt Acknowledge Bus Cycle Timing......................................7-40
7-32 LPSTOP Broadcast Cycle Flowchart...............................................................7-41
7-33 LPSTOP Broadcast Bus Cycle Timing, BG Negated....................................... 7-42
7-34 LPSTOP Broadcast Bus Cycle Timing, BG Asserted ......................................7-43
7-35 Exiting LPSTOP Mode Flowchart..................................................................... 7-44
7-36 Exiting LPSTOP Mode Timing Diagram...........................................................7-45
7-37 Word Write Access Bus Cycle Terminated with TEA
Timing........................... 7-48
M68060 USER’S MANUAL
MOTOROLA
List of Illustrations
7-38 Line Read Access Bus Cycle Terminated with TEA Timing.............................7-49
7-39 Retry Read Bus Cycle Timing..........................................................................7-50
7-40 Line Write Retry Bus Cycle Timing...................................................................7-51
7-41 MC68040-Arbitration Protocol State Diagram..................................................7-57
7-42 MC68060-Arbitration Protocol State Diagram..................................................7-64
7-43 Processor Bus Request Timing........................................................................7-67
7-44 Arbitration During Relinquish and Retry Timing...............................................7-68
7-45 Implicit Bus Ownership Arbitration Timing........................................................7-69
7-46 Effect of BGR
on Locked Sequences...............................................................7-70
7-47 Snooped Bus Cycle..........................................................................................7-71
7-48 Initial Power-On Reset Timing..........................................................................7-72
7-49 Normal Reset Timing........................................................................................7-73
7-50 Data Bus Usage During Reset.........................................................................7-74
7-51 Acknowledge Termination Ignore State Example ............................................7-75
7-52 Extra Data Write Hold Example........................................................................7-77
8-1 General Exception Processing Flowchart ..........................................................8-2
8-2 General Form of Exception Stack Frame...........................................................8-3
8-3 Interrupt Recognition Examples.......................................................................8-13
8-4 Interrupt Exception Processing Flowchart........................................................8-15
8-5 Reset Exception Processing Flowchart............................................................8-16
8-6 Fault Status Long-Word Format.......................................................................8-22
9-1 JTAG Test Logic Block Diagram........................................................................9-3
9-2 JTAG Idcode Register Format............................................................................9-7
9-3 Output Pin Cell (O.Pin).......................................................................................9-8
9-4 Observe-Only Input Pin Cell (I.Obs)...................................................................9-8
9-5 Input Pin Cell (I.Pin) ...........................................................................................9-9
9-6 Output Control Cell (IO.Ctl)................................................................................9-9
9-7 General Arrangement of Bidirectional Pin Cells...............................................9-10
9-8 JTAG Bypass Register.....................................................................................9-15
9-9 Circuit Disabling IEEE Standard 1149.1...........................................................9-16
9-10 Debug Command Interface Schematic ............................................................9-25
9-11 Interface Timing................................................................................................9-26
9-12 Transition from JTAG to Debug Mode Timing Diagram...................................9-34
9-13 Transition from Debug to JTAG Mode Timing Diagram...................................9-35
11-1 Linear Voltage Regulator Solution....................................................................11-7
11-2 LTC1147 Voltage Regulator Solution...............................................................11-8
11-3 LTC1148 Voltage Regulator Solution...............................................................11-9
11-4 MAX767 Voltage Regulator Solution..............................................................11-10
11-5 MC68040 Address Hold Time........................................................................11-11
11-6 MC68060 Address Hold Time........................................................................11-12
11-7 MC68060 Address Hold Time Fix ..................................................................11-12
11-8 Simple CLK Generation..................................................................................11-14
11-9 Generic CLK Generation................................................................................11-14
11-10 MC68040 BCLK to CLKEN
Relationship........................................................11-15
11-11 DRAM Timing Analysis...................................................................................11-15
MOTOROLA
M68060 USER’S MANUAL
xxi
List of Illustrations
12-12 Clock Input Timing Diagram.............................................................................12-3
12-13 Drive Levels and Test Points for AC Specifications......................................... 12-7
12-14 Reset Configuration Timing.............................................................................. 12-8
12-15 Read/Write Timing ...........................................................................................12-9
12-16 Bus Arbitration Timing....................................................................................12-10
12-17 Bus Arbitration Timing (Continued)................................................................ 12-11
12-18 CLA
Timing ....................................................................................................12-12
12-19 Snoop Timing................................................................................................. 12-13
12-20 Other Signals Timing...................................................................................... 12-14
13-1 PGA Package Dimensions (RC Suffix)............................................................13-4
13-2 QFP Package Dimensions (FE Suffix)............................................................. 13-5
C-1 Call-Out Dispatch Table Example......................................................................C-2
C-2 Example Pseudo-Assembly File ........................................................................C-3
C-3 Module Call-In, Call-Out Example......................................................................C-4
C-4 CAS and CAS2 Call-Outs and Entry Points.......................................................C-9
C-5 C-Code Representation of Integer Library Routines........................................C-10
C-6 MUL Instruction Call Example..........................................................................C-11
C-7 CMP2 Instruction Call Example .......................................................................C-11
C-8 SNAN/OPERR Exception Handler Pseudo-Code............................................C-18
C-9 Disabled vs. Enabled Exception Actions..........................................................C-20
C-10 _mem_read Pseudo-Code...............................................................................C-23
C-11 Register Usage of {i,d}mem_{read,write}_{b,w,l}.............................................C-25
C-12 Vector Table and M68060SP Relationship......................................................C-28
xxii
M68060 USER’S MANUAL
MOTOROLA

LIST OF TABLES

1-1 Data Formats....................................................................................................1-14
1-2 Effective Addressing Modes.............................................................................1-15
1-3 Instruction Set Summary..................................................................................1-16
1-4 Notational Conventions....................................................................................1-21
2-1 Signal Index........................................................................................................2-1
2-2 Transfer-Type Encoding.....................................................................................2-4
2-3 Normal and MOVE16 Access TMx Encoding.....................................................2-5
2-4 Alternate Access TMx Encoding ........................................................................2-5
2-5 SIZx Encoding....................................................................................................2-6
2-6 Data Bus Byte Select Signals.............................................................................2-7
2-7 PSTx Encoding.................................................................................................2-14
2-8 Signal Summary...............................................................................................2-17
4-1 Updating U-Bit and M-Bit for Page Descriptors................................................4-20
4-2 SFC and DFC Values.......................................................................................4-20
5-1 TLNx Encoding.................................................................................................5-11
5-2 Instruction Cache Line State Transitions..........................................................5-15
5-3 Data Cache Line State Transitions...................................................................5-18
6-1 RND Encoding....................................................................................................6-4
6-2 PREC Encoding .................................................................................................6-4
6-3 MC68060 FPU Data Formats and Data Types ..................................................6-7
6-4 Single-Precision Real Format Summary............................................................6-8
6-5 Double-Precision Real Format Summary...........................................................6-9
6-6 Extended-Precision Real Format Summary.....................................................6-10
6-7 Packed Decimal Real Format Summary..........................................................6-11
6-8 Floating-Point Condition Code Encoding .........................................................6-16
6-9 Floating-Point Conditional Tests ......................................................................6-18
6-10 Floating-Point Exception Vectors.....................................................................6-19
6-11 Unimplemented Instructions.............................................................................6-20
6-12 Possible Operand Errors Exceptions ...............................................................6-27
6-13 Overflow Rounding Mode Values.....................................................................6-29
6-14 Underflow Rounding Mode Values...................................................................6-31
6-15 Possible Divide-by-Zero Exceptions.................................................................6-33
6-16 Rounding Mode Values....................................................................................6-34
7-1 Data Bus Requirements for Read and Write Cycles..........................................7-7
7-2 Summary of Access Types vs. Bus Signal Encoding.........................................7-9
7-3 Memory Alignment Influence on Noncachable and
Writethrough Bus Cycles..................................................................................7-12
7-4 Interrupt Acknowledge Termination Summary.................................................7-34
7-5 Termination Result Summary...........................................................................7-46
7-6 MC68040-Arbitration Protocol Transition Conditions.......................................7-55
MOTOROLA
M68060 USER’S MANUAL
xxiii
List of Tables
7-7 MC68040-Arbitration Protocol State Description .............................................7-56
7-8 MC68060-Arbitration Protocol State Transition Conditions.............................. 7-62
7-9 MC68060-Arbitration Protocol State Description .............................................7-63
7-10 Special Mode vs. IPLx
Signals.........................................................................7-74
8-1 Exception Vector Assignments ..........................................................................8-4
8-2 Interrupt Levels and Mask Values....................................................................8-12
8-3 Exception Priority Groups ................................................................................8-17
9-1 JTAG States.......................................................................................................9-2
9-2 JTAG Instructions............................................................................................... 9-4
9-3 Boundary Scan Bit Definitions.......................................................................... 9-10
9-4 Debug Command Interface Pins...................................................................... 9-25
9-5 Command Summary........................................................................................9-28
10-1 Superscalar OEP Dispatch Test Algorithm......................................................10-4
10-2 MC68060 Superscalar Classification of M680x0 Integer Instructions..............10-4
10-3 Superscalar Classification of M680x0 Privileged Instructions..........................10-7
10-4 Superscalar Classification of M680x0 Floating-Point Instructions ...................10-7
10-5 Effective Address Calculation Times.............................................................. 10-14
10-6 Move Byte and Word Execution Times.......................................................... 10-15
10-7 Move Long Execution Times..........................................................................10-15
10-8 MOVE16 Execution Times............................................................................. 10-15
10-9 Standard Instruction Execution Time.............................................................10-16
10-10 Immediate Instruction Execution Times.........................................................10-17
10-11 Single-Operand Instruction Execution Times.................................................10-18
10-12 Clear (CLR) Execution Times ........................................................................10-18
10-13 Shift/Rotate Execution Times.........................................................................10-19
10-14 Bit Manipulation (Dynamic Bit Count) Execution Times.................................10-19
10-15 Bit Manipulation (Static Bit Count) Execution Times......................................10-20
10-16 Bit Field Execution Times............................................................................... 10-20
10-17 Branch Execution Times................................................................................10-21
10-18 JMP, JSR Execution Times............................................................................ 10-21
10-19 Return Instruction Execution Times...............................................................10-21
10-20 LEA, PEA, and MOVEM Instruction Execution Times ...................................10-22
10-21 Multiprecision Instruction Execution Times.................................................... 10-22
10-22 Status Register (SR) Instruction Execution Times......................................... 10-23
10-23 MOVES Execution Times............................................................................... 10-23
10-24 Miscellaneous Instruction Execution Times...................................................10-23
10-25 Floating-Point Instruction Execution Times....................................................10-24
10-26 Exception Processing Times..........................................................................10-26
11-1 With Heat Sink, No Air Flow...........................................................................11-18
11-2 With Heat Sink, with Air Flow......................................................................... 11-18
11-3 No Heat Sink.................................................................................................. 11-19
11-4 Support Devices and Products....................................................................... 11-20
C-1 Call-Out Dispatch Table and Module Size.........................................................C-4
C-2 FPU Comparison..............................................................................................C-12
C-3 Unimplemented Instructions.............................................................................C-13
xxiv
M68060 USER’S MANUAL
MOTOROLA
List of Tables
C-4 Unimplemented Data Formats and Data Types.............................................. C-13
C-5 UNIX Operating System Calls......................................................................... C-23
C-6 Instructions Not Handled by the M68060SP ................................................... C-26
C-7 Files Provided in an M68060SP Release........................................................ C-27
D-1 M68000 Family Instruction Set and Processor Cross-Reference ..................... D-1
D-2 M68000 Family Instruction Set.......................................................................... D-6
D-3 Exception Vector Assignments for the M68000 Family................................... D-10
MOTOROLA
M68060 USER’S MANUAL
xxv
List of Tables
xxvi
M68060 USER’S MANUAL
MOTOROLA
SECTION 1 INTRODUCTION
The superscalar MC68060 represents a new line of Motorola microprocessor products. The first generation of the M68060 product line consists of the MC68060, MC68LC060, and MC68EC060. All three microprocessors offer superscalar integer performance of over 100 MIPS at 66 MHz. The MC68060 comes fully equipped with both a floating-point unit (FPU) and a memory management unit (MMU) for high-performance embedded control and desk­top applications. For cost-sensitive embedded control and desktop applications where an MMU is required, but the additional cost of a FPU is not justified, the MC68LC060 offers high-performance at a low cost. Specifically designed for low-cost embedded control appli­cations, the MC68EC060 eliminates both the FPU and MMU, permitting designers to lever­age MC68060 performance while avoiding the cost of unnecessary features. Throughout this product brief, all references to the MC68060 also refer to the MC68LC060 and the MC68EC060, unless otherwise noted.
Leveraging many of the same performance enhancements used by RISC designs as well as providing innovative architectural techniques, the MC68060 harnesses new levels of per­formance for the M68000 family. Incorporating 2.5 million transistors on a single piece of sil­icon, the MC68060 employs a deep pipeline, dual issue superscalar execution, a branch cache, a high-performance floating-point unit (MC68060 only), eight Kbytes each of on-chip instruction and data caches, and dual on-chip demand paging MMUs (MC68060 and MC68LC060 only). The MC68060 allows simultaneous execution of two integer instructions (or an integer and a float instruction) and one branch instruction during each clock.
The MC68060 features a full internal Harvard architecture. The instruction and data caches are designed to support concurrent instruction fetch, operand read and operand write refer­ences on every clock. Separate 8-Kbyte instruction and 8-Kbyte data caches can be frozen to prevent allocation over time-critical code or data. The independent nature of the caches allows instruction stream fetches, data-stream fetches, and external accesses to occur simultaneously with instruction execution. The operand data cache is four-way banked to permit simultaneous read and write access each clock.
A very high bandwidth internal memory system coupled with the compact nature of the M68000 family code allows the MC68060 to achieve extremely high levels of performance, even when operating from low-cost memory such as a 32-bit wide dynamic random access memory system.
Instructions are fetched from the internal cache or external memory by a four-stage instruc­tion fetch pipeline. The MC68060 variable-length instruction system is internally decoded into a fixed-length representation and channeled into an instruction buffer. The instruction buffer acts as a FIFO which provides a decoupling mechanism between the instruction fetch
MOTOROLA
M68060 USER’S MANUAL
1-1
Introduction
unit and the operand execution units. Fixed format instructions are dispatched to dual four­stage pipelined RISC operand execution engines where they are then executed.
The branch cache also plays a major role in achieving the high performance levels of the MC68060. It has been implemented such that most branches are executed in zero cycles. Using a technique known as branch folding, the branch cache allows the instruction fetch pipeline to detect and change the instruction prefetch stream before the change of flow affects the instruction execution engines, minimizing the need for pipeline refill.
In addition to substantial cost and performance benefits, the MC68060 also offers advan­tages in power consumption and power management. The MC68060 automatically mini­mizes power dissipation by using a fully-static design, dynamic power management, and low-voltage operation. It automatically powers-down internal functional blocks that are not needed on a clock-by-clock basis. Explicitly the MC68060 power consumption can be con­trolled from the operating system. Although the MC68060 operates at a lower operating volt­age, it directly interfaces to both 3-V and 5-V peripherals and logic.
Complete code compatibility with the M68000 family allows the designer to draw on existing code and past experience to bring products to market quickly. There is also a broad base of established development tools, including real-time kernels, operating systems, languages, and applications, to assist in product design. The functionality provided by the MC68060 makes it the ideal choice for a range of high-performance embedded applications and com­puting applications. With M68000 family code compatibility, the MC68060 provides a range of upgrade opportunities to virtually any existing MC68040 application.
1-2
M68060 USER’S MANUAL
MOTOROLA
Introduction

1.1 DIFFERENCES AMONG M68060 FAMILY MEMBERS

Because the functionality of individual M68060 family members are similar, this manual is organized so that the reader will take the following differences into account while reading the rest of this manual. Unless otherwise noted, all references to MC68060, with the excep­tion of the differences outlined below, will apply to the MC68060, MC68LC060, and MC68EC060. The following paragraphs describe how the MC68LC060 and the MC68EC060 differ from the MC68060.

1.1.1 MC68LC060

The MC68LC060 is a derivative of the MC68060. The MC68LC060 has the same execution unit and MMU as the MC68060, but has no FPU. The MC68LC060 is 100% pin compatible with the MC68060. Disregard all information concerning the FPU when reading this manual. The following difference exists between the MC68LC060 and the MC68060:
• The MC68LC060 does not contain an FPU. When floating-point instructions are encountered, a floating-point disabled exception is taken.

1.1.2 MC68EC060

The MC68EC060 is a derivative of the MC68060. The MC68EC060 has the same execution unit as the MC68060, but has no FPU or paged MMU, which embedded control applications generally do not require. Disregard information concerning the FPU and MMU when reading this manual. The MC68EC060 is pin compatible with the MC68060. The following differ­ences exist between the MC68EC060 and the MC68060:
• The MC68EC060 does not contain an FPU. When floating-point instructions are encountered, a floating-point disabled exception is taken.
• The MDIS purposes only.
1.1.2.1 ADDRESS TRANSLATION DIFFERENCES. Although the MC68EC060 has no
paged MMU, the four transparent translation registers (ITT0, ITT1, DTT0, and DTT1) and the default transparent translation (defined by certain bits in the translation control register (TCR)) operate normally and can still be used to assign cache modes and supervisor and write protection for given address ranges. All addresses can be mapped by the four trans­parent translation registers (TTRs) and the default transparent translation.
1.1.2.2 INSTRUCTION DIFFERENCES. The PFLUSH and PLPA instructions, the supervi-
sor root pointer (SRP) and user root pointer (URP) registers, and the E- and P-bits of the TCR are not supported by the MC68EC060 and must not be used. Use of these instructions and registers in the MC68EC060 exhibits poor programming practice since no useful results can be achieved. Any functional anomalies that may result from their use will require system software modification (to remove offending instructions) to achieve proper operation.
pin name has been changed to the JS0 pin and is included for boundary scan
The PLPA instruction operates normally except that when an address misses in the four TTRs, instead of performing a table search operation, the access cache mode and write pro­tection properties are defined by the default transparent translation bits in the TCR. The address register contents are never changed since all addresses are always transparently
MOTOROLA
M68060 USER’S MANUAL
1-3
Introduction
translated. The PLPA instruction can only generate an access error exception only on super­visor or write protection violation cases. The PFLUSH instruction operates as a virtual NOP instruction.
When the MOVEC instruction is used to access the SRP and URP registers and the E- and P-bits in the TCR, no exceptions are reported. However, those bits are undefined for the MC68EC060 and must not be used.

1.2 FEATURES

The main features of the MC68060 are as follows:
• 1.6–1.7 Times the MC68040 Performance at the Same Clock Rate with Existing Com­pliers. 3.2–3.4 Times the Performance of a 25 MHZ MC68040.
• Harvard Architecture with Independent, Decoupled Fetch and Execution Pipelines.
• Branch Prediction Logic with a 256-Entry, 4-Way Set-Associative, Virtual-Mapped Branch Cache for Improved Branch Instruction Performance.
• A Superscalar Pipeline and Dual Integer Execution Units Achieving Simultaneous, but not Out-of-Order Instruction Execution.
• An IEEE Standard, MC68040- and MC68881-/MC68882-Compatible FPU.
• An MC68040-Compatible Paged Memory Management Unit with Dual 64-Entry Address Translation Caches
• Dual 8-Kbyte Caches (Instruction Cache and Data Cache)
• A Flexible, High-Bandwidth Synchronous Bus Interface
• User Object-Code Compatible with All Earlier M68000 Microprocessors

1.3 ARCHITECTURE

The instruction fetch unit (IFU) is a four-stage pipeline for prefetching instructions. The dual operand execution pipelines (OEPs) (named primary” (pOEP) and secondary (sOEP)) are four-stage pipelines for decoding the instructions, fetching the required operand(s), and then performing the actual execution of the instructions. Since the IFU and OEP are decoupled by a first-in-first-out (FIFO) instruction buffer, the IFU is able to prefetch instructions in advance of their actual use by the OEPs.
The MC68060 is designed to maximize the OEP’s efficiency through the use of a supersca­lar pipeline architecture. This architectural advance improves processor performance dra­matically by exploiting instruction-level parallelism. The term superscalar denotes the ability to detect, dispatch, execute, and return results from more than one instruction during each machine cycle from an otherwise conventional instruction stream.
As a result, multiple instructions may be executed in a single machine cycle. Since the dual OEPs perform in a lock-step mode of operation, the multiple instruction execution is per­formed simultaneously, but not out-of-order. The net effect is a software-invisible pipeline architecture capable of sustained execution rates of < 1 machine cycle per instruction of the M68000 instruction set.
1-4
M68060 USER’S MANUAL
MOTOROLA
Introduction
Architectural highlights of the MC68060 include:
• Four-Stage Instruction Fetch Unit (IFU) — 64-Entry Instruction Address Translation Cache (ATC), Organized as 4-Way Set-
Associative, for Fast Virtual-to-Physical Address Translations — 8- Kbyte, 4-Way Set-Associative, Physically-Mapped Instruction Cache —256-Entry, 4-Way Set-Associative, Virtually-Mapped Branch Cache, Which Predicts
the Direction of Branches Based on Their Past Execution History —96-Byte FIFO Instruction Buffer to Allow Decoupling of the IFP and OEPs
• Four-Stage Execution Pipelines Featuring Primary Pipeline (pOEP), Secondary Pipe­line (sOEP), and Register File (RGF) Containing Program-Visible General Registers — 64-Entry Operand Data ATC, Organized as 4-Way Set-Associative, for Fast Virtual-
to-Physical Address Translations — 8- Kbyte, 4-Way Set-Associative, Physically-Mapped Operand Data Cache — The Operand Data Cache Is Organized in a Banked Structure to Allow Simultaneous
Read/Write Accesses — Integer Execute Engines Optimized to Perform Most Instruction Executions in a
Single Machine Cycle —Floating-Point Execute Engine, with Floating-Point Register File, Optimized for Per-
formance with Extended-Precision-Wide Internal Datapaths. —Four-Entry Store Buffer and One-Entry Push Buffer That Provide the Performance
Feature of Decoupling the Processor Pipeline from External Memory for Certain
Cache Modes of Operation.
This pipeline architecture supports extremely high data transfer rates within the MC68060 processor. The on-chip instruction and operand data caches provide 600 MBytes/sec @ 50 MHz to the pipelines, while the integer execute engines can support sustained transfer rates of 1.2 GBytes/sec.

1.4 PROCESSOR OVERVIEW

The following paragraphs provide a general description of the MC68060.

1.4.1 Functional Blocks

Figure 1-1 illustrates a simplified block diagram of the MC68060.
MOTOROLA
M68060 USER’S MANUAL
1-5
Introduction
The architecture of the MC68060 processor is implemented in the following major blocks:
• Execution Unit —Instruction Fetch Unit —Integer Unit —FPU
• Memory Units —Instruction Memory Unit
• Instruction ATC
• Instruction Cache
• Instruction Cache Controller
—Data Memory Unit
• Data ATC
• Data Cache
• Data Cache Controller
• Bus Controller
These major units execute concurrently to maximize sustained performance. Note that the caches reside on separate buses allowing concurrent instruction fetch, data read, and data write operations (internal Harvard architecture).
EXECUTION UNIT
FLOATING-
POINT
UNIT
OC
EA
FETCH
EXECUTE
FP
EX
INSTRUCTION FETCH UNIT
BRANCH
CACHE
INSTRUCTION
BUFFER
pOEP sOEP
DECODE
CALCULATE
FETCH
EXECUTE
DATA AVAILABLE
WRITE-BACK
DS DS
EA
OC OC
EA
EX
INT
INTEGER UNIT
IA
CALCULATE
INSTRUCTION
FETCH EARLY
DECODE
DECODE
EA
CALCULATE
EA
FETCH
INT
EXECUTE
AGAG
EX
IB
IAG
IC
IED
DA
WB
INSTRUCTION
ATC
INSTRUCTION CONTROLLER
INSTRUCTION MEMORY UNIT
CONTROLLER
DATA
ATC
DATA MEMORY UNIT
CACHE
DATA
CACHE
INSTRUCTION
CACHE
DATA
CACHE
B U S
C O N T R O L L E R
ADDRESS
DATA
CONTROL
1-6
OPERAND DATA BUS
Figure 1-1. MC68060 Block Diagram
M68060 USER’S MANUAL
MOTOROLA
Loading...
+ 386 hidden pages