Sun Microsystems, Inc.
www.sun.com
Submit comments about this document at: http://www.sun.com/hwdocs/feedback
OpenSPARC
™
T1 Microarchitecture
Specification
Part No. 819-6650-11
February 2009, Revision B
Please
Recycle
Copyright © 2008 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, California 95054, U.S.A. All rights reserved.
Sun Microsystems, Inc. has intellectual property rights relating to technology embodied in the product that is described in this document. In
particular, and without limitation, these intellectual property rights may include one or more of the U.S. patents listed at
http://www.sun.com/patents and one or more additional patents or pending patent applications in the U.S. and in other countries.
U.S. Government Rights - Commercial software. Government users are subject to the Sun Microsystems, Inc. standard license agreement and
applicable provisions of the FAR and its supplements.
Use is subject to license terms.
This distribution may include materials developed by third parties.
Sun, Sun Microsystems, the Sun logo, Solaris, OpenSPARC T1 and UltraSPARC are trademarks or registered trademarks of Sun Microsystems,
Inc. in the U.S. and other countries.
All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other
countries. Products bearing SPARC trademarks are based upon architecture developed by Sun Microsystems, Inc.
UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd.
The Adobe logo is a registered trademark of Adobe Systems, Incorporated.
Products covered by and information contained in this service manual are controlled by U.S. Export Control laws and may be subject to the
export or import laws in other countries. Nuclear, missile, chemical biological weapons or nuclear maritime end uses or end users, whether
direct or indirect, are strictly prohibited. Export or reexport to countries subject to U.S. embargo or to entities identified on U.S. export exclusion
lists, including, but not limited to, the denied persons and specially designated nationals lists is strictly prohibited.
DOCUMENTATION IS PROVIDED "AS IS" AND ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT,
ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD TO BE LEGALLY INVALID.
Copyright © 2008 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, California 95054, Etats-Unis. Tous droits réservés.
Sun Microsystems, Inc. détient les droits de propriété intellectuels relatifs à la technologie incorporée dans le produit qui est décrit dans ce
document. En particulier, et ce sans limitation, ces droits de propriété intellectuelle peuvent inclure un ou plus des brevets américains listés à
l’adresse http://www.sun.com/patents et un ou les brevets supplémentaires ou les applications de brevet en attente aux Etats - Unis et dans les
autres pays.
L’utilisation est soumise aux termes de la Licence.
Cette distribution peut comprendre des composants développés par des tierces parties.
Sun, Sun Microsystems, le logo Sun, Solaris, OpenSPARC T1 et UltraSPARC sont des marques de fabrique ou des marques déposées de Sun
Microsystems, Inc. aux Etats-Unis et dans d’autres pays.
Toutes les marques SPARC sont utilisées sous licence et sont des marques de fabrique ou des marques déposées de SPARC International, Inc.
aux Etats-Unis et dans d’autres pays. Les produits portant les marques SPARC sont basés sur une architecture développée par Sun
Microsystems, Inc.
UNIX est une marque déposée aux Etats-Unis et dans d’autres pays et licenciée exlusivement par X/Open Company, Ltd.
Le logo Adobe. est une marque déposée de Adobe Systems, Incorporated.
Les produits qui font l’objet de ce manuel d’entretien et les informations qu’il contient sont regis par la legislation americaine en matiere de
controle des exportations et peuvent etre soumis au droit d’autres pays dans le domaine des exportations et importations. Les utilisations
finales, ou utilisateurs finaux, pour des armes nucleaires, des missiles, des armes biologiques et chimiques ou du nucleaire maritime,
directement ou indirectement, sont strictement interdites. Les exportations ou reexportations vers des pays sous embargo des Etats-Unis, ou
vers des entites figurant sur les listes d’exclusion d’exportation americaines, y compris, mais de maniere non exclusive, la liste de personnes qui
font objet d’un ordre de ne pas participer, d’une facon directe ou indirecte, aux exportations des produits ou des services qui sont regi par la
legislation americaine en matiere de controle des exportations et la liste de ressortissants specifiquement designes, sont rigoureusement
interdites.
LA DOCUMENTATION EST FOURNIE "EN L’ETAT" ET TOUTES AUTRES CONDITIONS, DECLARATIONS ET GARANTIES EXPRESSES
OU TACITES SONT FORMELLEMENT EXCLUES, DANS LA MESURE AUTORISEE PAR LA LOI APPLICABLE, Y COMPRIS NOTAMMENT
TOUTE GARANTIE IMPLICITE RELATIVE A LA QUALITE MARCHANDE, A L’APTITUDE A UNE UTILISATION PARTICULIERE OU A
L’ABSENCE DE CONTREFACON.
iii
Contents
Preface xxiii
1. OpenSPARC T1 Overview 1–1
1.1 Introducing the OpenSPARC T1 Processor 1–1
1.2 Functional Description 1–2
1.3 OpenSPARC T1 Components 1–4
1.3.1 SPARC Core 1–4
1.3.1.1 Instruction Fetch Unit 1–6
1.3.1.2 Execution Unit 1–6
1.3.1.3 Load/Store Unit 1–6
1.3.1.4 Floating-Point Frontend Unit 1–7
1.3.1.5 Trap Logic Unit 1–7
1.3.1.6 Stream Processing Unit 1–8
1.3.2 CPU-Cache Crossbar 1–8
1.3.3 Floating-Point Unit 1–9
1.3.4 L2-Cache 1–10
1.3.5 DRAM Controller 1–11
1.3.6 I/O Bridge 1–11
1.3.7 J-Bus Interface 1–11
1.3.8 Serial System Interface 1–12
iv OpenSPARC T1 Microarchitecture Specification • February 2009
1.3.9 Electronic Fuse 1–12
2. SPARC Core 2–1
2.1 SPARC Core Overview and Terminology 2–2
2.2 SPARC Core I/O Signal List 2–5
2.3 Instruction Fetch Unit 2–6
2.3.1 SPARC Core Pipeline 2–7
2.3.2 Instruction Fetch 2–9
2.3.3 Instruction Registers and Program Counter Registers 2–9
2.3.4 Level 1 Instruction Cache 2–10
2.3.5 I-Cache Fill Path 2–11
2.3.6 Alternate Space Identifier Accesses, I-Cache Line Invalidations,
and Built-In Self-Test Accesses to the I-Cache 2–12
2.3.7 I-Cache Miss Path 2–12
2.3.8 Windowed Integer Register File 2–14
2.3.9 Instruction Table Lookaside Buffer 2–16
2.3.10 Thread Selection Policy 2–16
2.3.11 Thread States 2–17
2.3.12 Thread Scheduling 2–19
2.3.13 Rollback Mechanism 2–20
2.3.14 Instruction Decode 2–21
2.3.15 Instruction Fetch Unit Interrupt Handling 2–21
2.3.16 Error Checking and Logging 2–22
2.4 Load Store Unit 2–22
2.4.1 LSU Pipeline 2–23
2.4.2 Data Flow 2–23
2.4.3 Level 1 Data Cache (D-Cache) 2–24
2.4.4 Data Translation Lookaside Buffer 2–25
2.4.5 Store Buffer 2–26
Contents v
2.4.6 Load Miss Queue 2–27
2.4.7 Processor to Crossbar Interface Arbiter 2–27
2.4.8 Data Fill Queue 2–28
2.4.9 ASI Queue and Bypass Queue 2–28
2.4.10 Alternate Space Identifier Handling in the Load Store Unit 2–29
2.4.11 Support for Atomic Instructions (CAS, SWAP, LDSTUB) 2–29
2.4.12 Support for MEMBAR Instructions 2–30
2.4.13 Core-to-Core Interrupt Support 2–30
2.4.14 Flush Instruction Support 2–30
2.4.15 Prefetch Instruction Support 2–31
2.4.16 Floating-Point BLK-LD and BLK-ST Instructions Support 2–31
2.4.17 Integer BLK-INIT Loads and Stores Support 2–32
2.4.18 STRM Load and STRM Store Instruction Support 2–32
2.4.19 Test Access Port Controller Accesses and Forward Packets
Support 2–32
2.4.20 SPARC Core Pipeline Flush Support 2–33
2.4.21 LSU Error Handling 2–33
2.5 Execution Unit 2–34
2.6 Floating-Point Frontend Unit 2–36
2.6.1 Functional Description of the FFU 2–36
2.6.2 Floating-Point Register File 2–37
2.6.3 FFU Control (FFU_CTL) 2–37
2.6.4 FFU Data-Path (FFU_DP) 2–38
2.6.5 FFU VIS (FFU_DP) 2–38
2.7 Multiplier Unit 2–38
2.7.1 Functional Description of the MUL 2–38
2.8 Stream Processing Unit 2–39
2.8.1 ASI Registers for the SPU 2–39
2.8.2 Data Flow of Modular Arithmetic Operations 2–41
评论0