POWER® Instruction Set Architecture(ISA): Openpower Profile Revision 1.0.0 (2016-02-17) Copyright © 2016 Openpower Foundation
Total Page:16
File Type:pdf, Size:1020Kb
www.openpowerfoundation.org POWER® Instruction Set February 17, 2016 Revision 1.0.0 Architecture(ISA) POWER® Instruction Set Architecture(ISA): OpenPOWER Profile Revision 1.0.0 (2016-02-17) Copyright © 2016 OpenPOWER Foundation All capitalized terms in the following text have the meanings assigned to them in the OpenPOWER Intellectual Property Rights Poli- cy (the "OpenPOWER IPR Policy"). The full Policy may be found at the OpenPOWER website or are available upon request. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise ex- plain it or assist in its implementation may be prepared, copied, published, and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this section are included on all such copies and derivative works. Howev- er, this document itself may not be modified in any way, including by removing the copyright notice or references to OpenPOWER, except as needed for the purpose of developing any document or deliverable produced by an OpenPOWER Work Group (in which case the rules applicable to copyrights, as set forth in the OpenPOWER IPR Policy, must be followed) or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by OpenPOWER or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis AND TO THE MAXIMUM EXTENT PERMIT- TED BY APPLICABLE LAW, THE OpenPOWER Foundation AS WELL AS THE AUTHORS AND DEVELOPERS OF THIS STAN- DARDS FINAL DELIVERABLE OR OTHER DOCUMENT HEREBY DISCLAIM ALL OTHER WARRANTIES AND CONDITIONS, EITHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES, DUTIES OR CONDITIONS OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR PURPOSE, OF ACCURACY OR COMPLETENESS OF RESPONSES, OF RESULTS, OF WORKMANLIKE EFFORT, OF LACK OF VIRUSES, OF LACK OF NEGLIGENCE OR NON- INFRINGEMENT. OpenPOWER, the OpenPOWER logo, and openpowerfoundation.org are trademarks or registered trademarks of OpenPOWER Foundation, Inc., registered in many jurisdictions worldwide. Other company, product, and service names may be trademarks or ser- vice marks of others. Workgroup Specification OpenPOWER Foundation ii Standard Track POWER® Instruction Set February 17, 2016 Revision 1.0.0 Architecture(ISA) Table of Contents Preface ........................................................................................................................................... v 1. Conventions ....................................................................................................................... v 2. Document change history ................................................................................................... v 1. Introduction ................................................................................................................................ 1 1.1. Conformance to this Specification ................................................................................... 1 2. Architecture Specifics ................................................................................................................. 2 A. OpenPOWER Foundation overview ........................................................................................... 4 A.1. Foundation documentation .............................................................................................. 4 A.2. Technical resources ........................................................................................................ 4 A.3. Contact the foundation .................................................................................................... 5 Workgroup Specification OpenPOWER Foundation iii Standard Track POWER® Instruction Set February 17, 2016 Revision 1.0.0 Architecture(ISA) List of Tables 2.1. Platform Support Requirements .............................................................................................. 2 Workgroup Specification OpenPOWER Foundation iv Standard Track POWER® Instruction Set February 17, 2016 Revision 1.0.0 Architecture(ISA) Preface 1. Conventions The OpenPOWER Foundation documentation uses several typesetting conventions. Notices Notices take these forms: Note A handy tip or reminder. Important Something you must be aware of before proceeding. Warning Critical information about the risk of data loss or security issues. Command prompts $ prompt Any user, including the root user, can run commands that are prefixed with the $ prompt. # prompt The root user must run commands that are prefixed with the # prompt. You can also prefix these commands with the sudo command, if available, to run them. 2. Document change history This version of the guide replaces and obsoletes all earlier versions. The following table describes the most recent changes: Revision Date Summary of Changes January 13, 2015 • 1.0.0 Workgroup Specification • Updated markings and rev # October 26, 2015 • V0.92 Public Review Draft Removed duplicate lines in table 2.1 • V0.91 Public Review Draft Corrected spelling error in title • V0.9 Public Review Draft Conversion to OpenPOWER template Workgroup Specification OpenPOWER Foundation v Standard Track POWER® Instruction Set February 17, 2016 Revision 1.0.0 Architecture(ISA) 1. Introduction The purpose of the OpenPOWER Instruction Set Architecture (ISA) Profile specification is to de- scribe the categories of the POWER ISA Version 2.07 B that are required in the OpenPOWER chip architecture for IBM® POWER8™ systems. This document is an OpenPOWER Foundation Standards Track Work Product, and is intended to progress through these steps: • Work Group Specification Draft • Work Group Specification Public Review Draft • Work Group Specification • Candidate OpenPOWER Standard • OpenPOWER Standard • Approved Errata 1.1. Conformance to this Specification Any implementation of this specification must adhere to the following set of numbered conformance clauses to claim conformance to this specification (or any optional portion of it): • Must implement required categories defined in this specification • Optionally may implement optional categories defined in this specification. Workgroup Specification OpenPOWER Foundation 1 Standard Track POWER® Instruction Set February 17, 2016 Revision 1.0.0 Architecture(ISA) 2. Architecture Specifics This chapter describes applicable architecture specifics as they apply to IBM® POWER8® systems. The architecture is structured as a collection of categories. Each category is comprised of facilities and/or instructions that together provide a unit of functionality. The Server and Embedded categories are referred to as “special” because all implementations must support at least one of these cate- gories. Each special category, when taken together with the Base category, is referred to as an “en- vironment”, and provides the minimum functionality required to develop operating systems and appli- cations. The platform support requirements are documented in Table 2.1, “Platform Support Require- ments” [2] An “x” indicates that the category is required. For the OpenPOWER ISA Profile, the last column indicates the required and optional categories. Each implementation is expected to devise a consistent way to self-identify its capabilities. For ex- ample, a register or set of registers, or some sort of informational header in the chip’s register space, can be used. This document does not propose a way to do this. Table 2.1. Platform Support Requirements Catagory Server Embedded OpenPOWER ISA Profile Base X X X (required) Server X X (required) Embedded X Alternate Time Base Cache Specification Decimal Floating-Point X X (required) Decorated Storage Elemental Memory Barriers Embedded.Cache Debug Embedded.Cache Initialization Embedded.Device Control Embedded.Enhanced Debug Embedded.External PID Embedded.Hypervisor Embedded.Hypervisor.LRAT Embedded.Little-Endian Embedded.Page Table Embedded.Performance Monitor Embedded.Processor Control Embedded.Cache Locking Embedded.Multi-Threading Embedded.Multi-Threading.Thread Management Embedded.TLB Write Conditional External Control External Proxy Floating-Point X X (required) Floating-Point.Record X X (required) Legacy Move Assist Workgroup Specification OpenPOWER Foundation 2 Standard Track POWER® Instruction Set February 17, 2016 Revision 1.0.0 Architecture(ISA) Catagory Server Embedded OpenPOWER ISA Profile Legacy Integer Multiply-Accumulate Load/Store Quadword X X (required) Memory Coherence X X (required) Move Assist X X (required) Processor Compatibility X X (required) Signal Processing Engine SPE.Embedded Float Scalar Double SPE.Embedded Float Scalar Single SPE.Embedded Float Vector Store Conditional Page Mobility X X (required) Stream X X (required) Strong Access Order X X (required) Trace X X (required) Transactional Memory X X (required) Variable Length Encoding Vector X X (required) Vector.Little-Endian X X (required) Vector.AES X X (required) Vector.SHA2 X X (required) Vector-Scalar Extension X X (required) Wait 64-bit X X (required) Workgroup Specification OpenPOWER Foundation 3 Standard Track POWER® Instruction Set February 17, 2016 Revision 1.0.0 Architecture(ISA) Appendix A. OpenPOWER Foundation overview The OpenPOWER Foundation was founded in 2013 as an open technical membership organization that will enable data centers to rethink their approach to technology. Member companies are enabled to customize POWER CPU processors and