Compaq Ecqd2Kcte Users Manual
ECQD2KCTE to the manual 52e4d84c-3254-4af0-8d11-4ce82b84b182
2015-02-03
: Compaq Compaq-Ecqd2Kcte-Users-Manual-468121 compaq-ecqd2kcte-users-manual-468121 compaq pdf
Open the PDF directly: View PDF
Page Count: 371 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- Table of Contents
- 1 Introduction
- 2 Basic Architecture
- 3 Instruction Formats
- 4 Instruction Descriptions
- 5 System Architecture and Programming Implications
- 6 Common PALcode Architecture
- 7 Console Subsystem Overview
- 8 Input/Output Overview
- 9 OpenVMS Alpha
- 10 Digital UNIX
- 11 Windows NT Alpha
- A Software Considerations
- B IEEE Floating-Point Conformance
- C Instruction Summary
- D Registered System and Processor Identifiers
- E Waivers and Implementation-Dependent Functionality
- Figures
- Tables
- Preface
- Introduction
- 1.1 The Alpha Approach to RISC Architecture
- 1.2 Data Format Overview
- 1.3 Instruction Format Overview
- 1.4 Instruction Overview
- 1.5 Instruction Set Characteristics
- 1.6 Terminology and Conventions
- 1.6.1 Numbering
- 1.6.2 Security Holes
- 1.6.3 UNPREDICTABLE and UNDEFINED
- 1.6.4 Ranges and Extents
- 1.6.5 ALIGNED and UNALIGNED
- 1.6.6 Must Be Zero (MBZ)
- 1.6.7 Read As Zero (RAZ)
- 1.6.8 Should Be Zero (SBZ)
- 1.6.9 Ignore (IGN)
- 1.6.10 Implementation Dependent (IMP)
- 1.6.11 Illustration Conventions
- 1.6.12 Macro Code Example Conventions
- Basic Architecture
- 2.1 Addressing
- 2.2 Data Types
- 2.3 Big-Endian Addressing Support
- Instruction Formats
- Instruction Descriptions
- 4.1 Instruction Set Overview
- 4.2 Memory Integer Load/Store Instructions
- 4.2.1 Load Address
- 4.2.2 Load Memory Data into Integer Register
- 4.2.3 Load Unaligned Memory Data into Integer Register
- 4.2.4 Load Memory Data into Integer Register Locked
- 4.2.5 Store Integer Register Data into Memory Conditional
- 4.2.6 Store Integer Register Data into Memory
- 4.2.7 Store Unaligned Integer Register Data into Memory
- 4.3 Control Instructions
- 4.4 Integer Arithmetic Instructions
- 4.4.1 Longword Add
- 4.4.2 Scaled Longword Add
- 4.4.3 Quadword Add
- 4.4.4 Scaled Quadword Add
- 4.4.5 Integer Signed Compare
- 4.4.6 Integer Unsigned Compare
- 4.4.7 Count Leading Zero
- 4.4.8 Count Population
- 4.4.9 Count Trailing Zero
- 4.4.10 Longword Multiply
- 4.4.11 Quadword Multiply
- 4.4.12 Unsigned Quadword Multiply High
- 4.4.13 Longword Subtract
- 4.4.14 Scaled Longword Subtract
- 4.4.15 Quadword Subtract
- 4.4.16 Scaled Quadword Subtract
- 4.5 Logical and Shift Instructions
- 4.6 Byte Manipulation Instructions
- 4.7 Floating-Point Instructions
- 4.7.1 Single-Precision Operations
- 4.7.2 Subsets and Faults
- 4.7.3 Definitions
- 4.7.4 Encodings
- 4.7.5 Rounding Modes
- 4.7.6 Computational Models
- 4.7.7 Trapping Modes
- 4.7.7.1 VAX Trapping Modes
- 4.7.7.2 IEEE Trapping Modes
- 4.7.7.3 Arithmetic Trap Completion
- 4.7.7.4 Invalid Operation (INV) Arithmetic Trap
- 4.7.7.5 Division by Zero (DZE) Arithmetic Trap
- 4.7.7.6 Overflow (OVF) Arithmetic Trap
- 4.7.7.7 Underflow (UNF) Arithmetic Trap
- 4.7.7.8 Inexact Result (INE) Arithmetic Trap
- 4.7.7.9 Integer Overflow (IOV) Arithmetic Trap
- 4.7.7.10 IEEE Floating-Point Trap Disable Bits
- 4.7.7.11 IEEE Denormal Control Bits
- 4.7.8 Floating-Point Control Register (FPCR)
- 4.7.9 Floating-Point Instruction Function Field Format
- 4.7.10 IEEE Standard
- 4.8 Memory Format Floating-Point Instructions
- 4.9 Branch Format Floating-Point Instructions
- 4.10 Floating-Point Operate Format Instructions
- 4.10.1 Copy Sign
- 4.10.2 Convert Integer to Integer
- 4.10.3 Floating-Point Conditional Move
- 4.10.4 Move from/to Floating-Point Control Register
- 4.10.5 VAX Floating Add
- 4.10.6 IEEE Floating Add
- 4.10.7 VAX Floating Compare
- 4.10.8 IEEE Floating Compare
- 4.10.9 Convert VAX Floating to Integer
- 4.10.10 Convert Integer to VAX Floating
- 4.10.11 Convert VAX Floating to VAX Floating
- 4.10.12 Convert IEEE Floating to Integer
- 4.10.13 Convert Integer to IEEE Floating
- 4.10.14 Convert IEEE S_Floating to IEEE T_Floating
- 4.10.15 Convert IEEE T_Floating to IEEE S_Floating
- 4.10.16 VAX Floating Divide
- 4.10.17 IEEE Floating Divide
- 4.10.18 Floating-Point Register to Integer Register Move
- 4.10.19 Integer Register to Floating-Point Register Move
- 4.10.20 VAX Floating Multiply
- 4.10.21 IEEE Floating Multiply
- 4.10.22 VAX Floating Square Root
- 4.10.23 IEEE Floating Square Root
- 4.10.24 VAX Floating Subtract
- 4.10.25 IEEE Floating Subtract
- 4.11 Miscellaneous Instructions
- 4.12 VAX Compatibility Instructions
- 4.13 Multimedia (Graphics and Video) Support
- System Architecture and Programming Implications
- 5.1 Introduction
- 5.2 Physical Address Space Characteristics
- 5.3 Translation Buffers and Virtual Caches
- 5.4 Caches and Write Buffers
- 5.5 Data Sharing
- 5.6 Read/Write Ordering
- 5.6.1 Alpha Shared Memory Model
- 5.6.1.1 Architectural Definition of Processor Issue Sequence
- 5.6.1.2 Definition of Before and After
- 5.6.1.3 Definition of Processor Issue Constraints
- 5.6.1.4 Definition of Location Access Constraints
- 5.6.1.5 Definition of Visibility
- 5.6.1.6 Definition of Storage
- 5.6.1.7 Definition of Dependence Constraint
- 5.6.1.8 Definition of Load-Locked and Store-Conditional
- 5.6.1.9 Timeliness
- 5.6.2 Litmus Tests
- 5.6.2.1 Litmus Test 1 (Impossible Sequence)
- 5.6.2.2 Litmus Test 2 (Impossible Sequence)
- 5.6.2.3 Litmus Test 3 (Impossible Sequence)
- 5.6.2.4 Litmus Test 4 (Sequence Okay)
- 5.6.2.5 Litmus Test 5 (Sequence Okay)
- 5.6.2.6 Litmus Test 6 (Sequence Okay)
- 5.6.2.7 Litmus Test 7 (Impossible Sequence)
- 5.6.2.8 Litmus Test 8 (Impossible Sequence)
- 5.6.2.9 Litmus Test 9 (Impossible Sequence)
- 5.6.2.10 Litmus Test 10 (Sequence Okay)
- 5.6.2.11 Litmus Test 11 (Impossible Sequence)
- 5.6.3 Implied Barriers
- 5.6.4 Implications for Software
- 5.6.4.1 Single Processor Data Stream
- 5.6.4.2 Single Processor Instruction Stream
- 5.6.4.3 Multiprocessor Data Stream (Including Single Processor with DMA I/O)
- 5.6.4.4 Multiprocessor Instruction Stream (Including Single Processor with DMA I/O)
- 5.6.4.5 Multiprocessor Context Switch
- 5.6.4.6 Multiprocessor Send/Receive Interrupt
- 5.6.4.7 Implications for Memory Mapped I/O
- 5.6.4.8 Multiple Processors Writing to a Single I/O Device
- 5.6.5 Implications for Hardware
- 5.6.1 Alpha Shared Memory Model
- 5.7 Arithmetic Traps
- Common PALcode Architecture
- Console Subsystem Overview
- Input/Output Overview
- OpenVMS Alpha
- Digital UNIX
- Windows NT Alpha
- Software Considerations
- A.1 Hardware-Software Compact
- A.2 Instruction-Stream Considerations
- A.3 Data-Stream Considerations
- A.4 Code Sequences
- A.5 Timing Considerations: Atomic Sequences
- IEEE Floating-Point Conformance
- Instruction Summary
- C.1 Common Architecture Instruction Summary
- C.2 IEEE Floating-Point Instructions
- C.3 VAX Floating-Point Instructions
- C.4 Independent Floating-Point Instructions
- C.5 Opcode Summary
- C.6 Common Architecture Opcodes in Numerical Order
- C.7 OpenVMS Alpha PALcode Instruction Summary
- C.8 DIGITAL UNIX PALcode Instruction Summary
- C.9 Windows NT Alpha Instruction Summary
- C.10 PALcode Opcodes in Numerical Order
- C.11 Required PALcode Opcodes
- C.12 Opcodes Reserved to PALcode
- C.13 Opcodes Reserved to Compaq
- C.14 Unused Function Code Behavior
- C.15 ASCII Character Set
- Registered System and Processor Identifiers
- Waivers and Implementation-Dependent Functionality
- Index