Alpha AXP Architecture Dr. Richard L. Sites Digital Technical Journal Volume 4, Number 4 Special Issue 1992 Oliver Hampton Friday, January 31, 2003.

Slides:



Advertisements
Similar presentations
CH10 Instruction Sets: Characteristics and Functions
Advertisements

Computer Organization and Architecture
ISA Issues; Performance Considerations. Testing / System Verilog: ECE385.
INSTRUCTION SET ARCHITECTURES
Some Other Instruction Set Architectures. Overview Alpha SPARC i386.
Microprocessors General Features To be Examined For Each Chip Jan 24 th, 2002.
Computer Organization and Architecture
Computer Organization and Architecture
Instruction Set Architecture & Design
COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) Lecturer: Hui Wu Session.
By Tien Phung CS 147 Dr. Sin-Min Lee. High-level Languages Assembly Languages Machine Languages.
S. Barua – CPSC 440 CHAPTER 2 INSTRUCTIONS: LANGUAGE OF THE COMPUTER Goals – To get familiar with.
Microprocessors Introduction to RISC Mar 19th, 2002.
What is an instruction set?
1 RISC Machines l RISC system »instruction –standard, fixed instruction format –single-cycle execution of most instructions –memory access is available.
Unit -II CPU Organization By- Mr. S. S. Hire. CPU organization.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Hao Ji.
CS402 PPP # 2 MIPS BASIC INFORMATION By George Koutsogiannakis 1.
Group 5 Alain J. Percial Paula A. Ortiz Francis X. Ruiz.
CSE378 MIPS ISA1 MIPS History MIPS is a computer family –R2000/R3000 (32-bit); R4000/4400 (64-bit); R8000; R10000 (64-bit) etc. MIPS originated as a Stanford.
SUPERSCALAR EXECUTION. two-way superscalar The DLW-2 has two ALUs, so it’s able to execute two arithmetic instructions in parallel (hence the term two-way.
1 Layers of Computer Science, ISA and uArch Alexander Titov 20 September 2014.
Simultaneous Multithreading: Maximizing On-Chip Parallelism Presented By: Daron Shrode Shey Liggett.
Alpha AXP Architecture Dr. Richard L. Sites Dr. Richard L. Sites Digital Technical Journal Digital Technical Journal Volume 4, Number 4 Volume 4, Number.
Data Representation By- Mr. S. S. Hire. Data Representation.
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CS-334: Computer.
Computer Organization and Design Computer Abstractions and Technology
Chapter 8 CPU and Memory: Design, Implementation, and Enhancement The Architecture of Computer Hardware and Systems Software: An Information Technology.
1 Instruction Set Architecture (ISA) Alexander Titov 10/20/2012.
Chapter Six Sun SPARC Architecture. SPARC Processor The name SPARC stands for Scalable Processor Architecture SPARC architecture follows the RISC design.
Instruction Set Architecture The portion of the machine visible to the programmer Issues: Internal storage model Addressing modes Operations Operands Encoding.
VAX-11/780 A VIRTUAL ADDRESS EXTENSION TO THE DEC PDP-11 FAMILY VAX-11/780 A VIRTUAL ADDRESS EXTENSION TO THE DEC PDP-11 FAMILY W.D.STRECKER W.D.STRECKER.
Computer Architecture and Organization
Ted Pedersen – CS 3011 – Chapter 10 1 A brief history of computer architectures CISC – complex instruction set computing –Intel x86, VAX –Evolved from.
A summary of TOY. 4 Main Components Data Processor Control Processor Memory Input/Output Device.
Computer Architecture EKT 422
DEC Alpha Course : CS 420 Student : Narith Kun Instructor : Dr. Chi-cheng Lin Date : April 26, 2010.
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /08/2013 Lecture 10: MIPS Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER SCIENCE CENTRAL STATE.
1 A single-cycle MIPS processor  An instruction set architecture is an interface that defines the hardware operations which are available to software.
Dr Mohamed Menacer College of Computer Science and Engineering, Taibah University CE-321: Computer.
Chapter 1 Introduction.  Architecture is those attributes visible to the programmer ◦ Instruction set, number of bits used for data representation, I/O.
Group # 3 Jorge Chavez Henry Diaz Janty Ghazi German Montenegro.
Sun Microsystems’ UltraSPARC-IIi a Stunt-Free Presentation by Christine Munson Amanda Peters Carl Sadler.
Instruction Sets: Characteristics and Functions  Software and Hardware interface Machine Instruction Characteristics Types of Operands Types of Operations.
Pirouz Bazargan SabetDecember 2003 Effective Implementation of a 32-bit RISC Processor Pirouz Bazargan Sabet University of Paris 6 - LIP6 - ASIM
CSC 221 Computer Organization and Assembly Language Lecture 06: Machine Instruction Characteristics.
ALPHA 21164PC. Alpha 21164PC High-performance alternative to a Windows NT Personal Computer.
ECE 371 Microprocessors Chapter 10 Alpha Processor Architecture Herbert G. Mayer, PSU Status 10/1/2015 For use at CCUT Fall 2015 Created by Jessica Bare.
William Stallings Computer Organization and Architecture 8th Edition
Chapter 9 a Instruction Level Parallelism and Superscalar Processors
CS170 Computer Organization and Architecture I
Text Book Computer Organization and Architecture: Designing for Performance, 7th Ed., 2006, William Stallings, Prentice-Hall International, Inc.
Computer Architecture
Computer Architecture
What is Computer Architecture?
Introduction to Microprocessor Programming
What is Computer Architecture?
What is Computer Architecture?
CSE378 Introduction to Machine Organization
Part I Data Representation and 8086 Microprocessors
Presentation transcript:

Alpha AXP Architecture Dr. Richard L. Sites Digital Technical Journal Volume 4, Number 4 Special Issue 1992 Oliver Hampton Friday, January 31, 2003

DEC Alpha AXP Learning Objectives Multiple Instruction Issue and Superscalar Alpha Multiprocessor implementation 32-bit and 64-bit data type register representation and memory load/store Alpha Instruction Set

Dr. Richard L. Sites Employment  IBM  Hewlett-Packard  Burroughs  Digital Equipment Corporation (1980) significant contributor to the Alpha AXP architecture Education  B.S. in Mathematics form MIT  Ph.D. in Computer Science from Stanford University  Post-doctoral work at the University of North Carolina (computer architecture)

DEC Alpha AXP Overview Designed for speed 64-bit Load/Store RISC architecture Two sets of 64-bit registers  32 integer registers (R31 = 0 th )  32 floating point registers (F31 = 0 th ) All instructions are fixed length → 32 bits Memory operations → Reads or Writes

DEC Alpha AXP Design Goals High Performance  The Guinness Book of Records (October 1992) listed the Alpha as the world’s fastest single-chip microprocessor Longevity  Twenty-five years before Alpha computers → 1000 times faster  Twenty-five years after Alpha → Alpha 1000 times faster Clock rates 10 times faster Multiple instruction issue (superscalar) ≈ 10 new instruction every clock cycle Multiple processor systems ≈ 10 processors sharing memory

Design Goals Continued Capability to run VMS and UNIX OS  First Alpha DECchip ran OpenVMS AXP, DEC OSF/1 AXP, and Windows NT  PALcode: Hardware ↔ OS interface handler Sets state of machine before first instruction Mediates access to hardware resources Easy migration form VAX and MIPS architectures

Superscalar & Multiple Instruction Issue Envisioned as parallel pipelines MII definition: “starting more than one instruction at once” Alpha MII implementation eliminated  Condition codes MII instructions do not compete for status register  Branch delay slots  Suppressed/Skipped instructions Problems with tandem suppression  Arithmetic Exceptions (Over and Underflow) TRAPB may be used to report such exceptions

Multiprocessing Atomic update of Shared-memory  Mutual Exclusion Requires instruction sequence  Load-locked → in-register modify → store- conditional → test  if no interrupts, no exceptions, no interfering write, then store-conditional stores the modified result and test reports success, else repeat No strict read/write ordering  VAX avoids pipelined writes to preserve strict write ordering and avoid out-of-order writes

Alpha Register Data Representation Data Types (32-bit and 64-bit)  Integer  IEEE floating point  VAX floating point 64-bit Data Types32-bit Data Types (1)(2)(3)(6)(5)(4)

Alpha Memory Load/Store No instructions operate directly on memory, data manipulation done between 64-bit registers Memory access  (1) Reads = Load instruction  (2) Writes = Store instruction ← → ← ← → → 32-bit store 32-bit load

Alpha Memory Continued Byte order  Little-endian: byte zero is the low byte of an integer  Big-endian: byte zero is the high byte of an integer Virtual addressing  Full 64-bits (DECchip only used 43-bits) Paging  DECchip used 8KB pages  Expandable to 64KB pages

Alpha Instructions Four Types  Operate  Memory  Branch  CALL_PAL (TRAPB & PALcode group) 6-bit opcode zero to three 5-bit registers (RA, RB, RC)  RA = universal  RB = only read, never written  RC = destination, never read

Operate Instructions Operate  All operate instructions are three-operand, and register-to-register  RC ← RA operate RB  Integer operations may substitute 8-bit unsigned literal instead of RB  Integer: add, subtract, multiply, compare  Floating-point: add, subtract, multiply, compare, convert  Logical: and, or, xor, and-not, or-not, xor-not

Operate Instruction Examples Add Quadword (integer arithmetic)  ADDQ R6, R31, R7 R6 contains 64-bit representation of three base 10 R31 is always equal to zero R7 contains 64-bit answer to 3+0=3 Compare Equal (logical compare)  CMPEQ R31, 3, R0 R0 contains answer to 0 == 3 → 0

Memory Instructions Load & Store  RA: register to be loaded/stored If RA is unaligned a byte-manipulation instruction is requited  RB: base register  16-bit displacement  RB added to 64-bit sign-extended 16-bit displacement to obtain virtual address which maps to the physical address where RA is stored to, or loaded from

Memory Instruction Example Explicit Load of an Unaligned Quadword using Little-endian LDQ_U: Load Unaligned Quadword EXTQL: Extract Quadword Low EXTQH: Extract Quadword High

Branch Instruction RA is used in conditional branching to determine true/false Displacement is left sifted by two and sign extended to 64-bits so that it may be added to the Program Counter (PC)

Alpha AXP Comes Full Circle Compaq purchased DEC and Tandem  Compaq server groups supported Alpha, MIPS, and Pentium Xeon June 2001, Compaq announced the end of Alpha  Alpha processor development cancelled after 2003  Alpha-based system development cancelled after 2004 Alpha software teams at Compaq slated to target Intel’s Itanium

Alpha AXP Questions Is it possible to design longevity into a processor? What instruction code feature does Alpha utilize to run multiple operating systems? What is the Alpha instruction sequence that implements atomic updated on shared memory? Load-locked → in-register modify → store-conditional → test State one of the design exceptions that Alpha implemented to support Multiple Instruction Issue. (1) Condition codes, (2) Branch delay slots, (3) Suppressed/Skipped instructions, (4) Arithmetic Exceptions

References Sites, R.L., “Alpha AXP Architecture”, Digital Technical Journal, Vol.4, No.4, Meng, X., “The DEC Alpha AXP – A Case Study”, Notes/master/node93.html Notes/master/node93.html Rusling, D.A., “The Alpha AXP Processor”, node140.html node140.html Leibson, S., “So Long Alpha”, dit15_24.html dit15_24.html