Open-Source Register Reference for AMD Family 17H Processors Models 00H-2Fh

Total Page:16

File Type:pdf, Size:1020Kb

Open-Source Register Reference for AMD Family 17H Processors Models 00H-2Fh 56255 Rev 3.03 - July, 2018 OSRR for AMD Family 17h processors, Models 00h-2Fh Open-Source Register Reference For AMD Family 17h Processors Models 00h-2Fh 1 56255 Rev 3.03 - July, 2018 OSRR for AMD Family 17h processors, Models 00h-2Fh Legal Notices © 2017,2018 Advanced Micro Devices, Inc. All rights reserved. The information contained herein is for informational purposes only, and is subject to change without notice. While every precaution has been taken in the preparation of this document, it may contain technical inaccuracies, omissions and typographical errors, and AMD is under no obligation to update or otherwise correct this information. Advanced Micro Devices, Inc. makes no representations or warranties with respect to the accuracy or completeness of the contents of this document, and assumes no liability of any kind, including the implied warranties of noninfringement, merchantability or fitness for particular purposes, with respect to the operation or use of AMD hardware, software or other products described herein. No license, including implied or arising by estoppel, to any intellectual property rights is granted by this document. Terms and limitations applicable to the purchase or use of AMD’s products are as set forth in a signed agreement between the parties or in AMD's Standard Terms and Conditions of Sale. Trademarks: AMD, the AMD Arrow logo, and combinations thereof are trademarks of Advanced Micro Devices, Inc. 3DNow! is a trademark of Advanced Micro Devices, Incorporated. AGESA is a trademark of Advanced Micro Devices, Incorporated. AMD Virtualization is a trademark of Advanced Micro Devices, Incorporated. MMX is a trademark of Intel Corporation. PCI Express is a registered trademark of PCI-SIG Corporation. Other product names used in this publication are for identification purposes only and may be trademarks of their respective companies. Reverse engineering or disassembly is prohibited. USE OF THIS PRODUCT IN ANY MANNER THAT COMPLIES WITH THE MPEG ACTUAL OR DE FACTO VIDEO AND/OR AUDIO STANDARDS IS EXPRESSLY PROHIBITED WITHOUT ALL NECESSARY LICENSES UNDER APPLICABLE PATENTS. SUCH LICENSES MAY BE ACQUIRED FROM VARIOUS THIRD PARTIES INCLUDING, BUT NOT LIMITED TO, IN THE MPEG PATENT PORTFOLIO, WHICH LICENSE IS AVAILABLE FROM MPEG LA, L.L.C., 6312 S. FIDDLERS GREEN CIRCLE, SUITE 400E, GREENWOOD VILLAGE, COLORADO 80111. 2 56255 Rev 3.03 - July, 2018 OSRR for AMD Family 17h processors, Models 00h-2Fh List of Chapters 1 Open Source Register Reference 2 Core Complex (CCX) 3 Machine Check Architecture 4 SMU Registers 5 Advanced Platform Management Link (APML) 6 SB Temperature Sensor Interface (SB-TSI) List of Namespaces List of Definitions Memory Map - MSR Memory Map - SMN 3 56255 Rev 3.03 - July, 2018 OSRR for AMD Family 17h processors, Models 00h-2Fh Table of Contents 1 Open Source Register Reference 1.1 Intended Audience 1.2 Reference Documents 1.2.1 Documentation Conventions 1.3 Conventions 1.3.1 Numbering 1.3.2 Arithmetic And Logical Operators 1.3.2.1 Operator Precedence and Associativity 1.3.3 Register Mnemonics 1.3.3.1 Logical Mnemonic 1.3.3.2 Physical Mnemonic 1.3.4 Register Format 1.3.4.1 A Register is a group of Register Instances 1.3.4.2 Register Physical Mnemonic, Title, and Name 1.3.4.3 Full Width Register Attributes 1.3.4.4 Register Description 1.3.4.5 Register Instance Table 1.3.4.5.1 Content Ordering in a Row 1.3.4.5.2 Multiple Instances Per Row 1.3.4.5.3 MSR Access Method 1.3.4.5.3.1 MSR Per-Thread Example 1.3.4.5.3.2 MSR Range Example 1.3.4.5.4 BAR Access Method 1.3.4.5.4.1 BAR as a Register Reference 1.3.4.5.5 PCICFG Access Method 1.3.4.5.5.1 PCICFG Bus Implied to be 00h 1.3.4.5.6 Data Port Access Method 1.3.4.6 Register Field Format 1.3.4.7 Simple Register Field Format 1.3.4.8 Complex Register Field Format 1.3.4.9 Field Name is Reserved 1.3.4.10 Field Access Type 1.3.4.10.1 Conditional Access Type Expression 1.3.4.11 Field Reset 1.3.4.12 Field Initialization 1.3.4.13 Field Check 1.3.4.14 Field Valid Values 2 Core Complex (CCX) 2.1 Processor x86 Core 2.1.1 Secure Virtual Machine Mode (SVM) 2.1.1.1 BIOS support for SVM Disable 2.1.1.1.1 Enable AMD Virtualization™ 2.1.1.1.2 Disable AMD Virtualization™ 2.1.1.1.3 Disable AMD Virtualization™, with a user supplied key 2.1.2 Effective Frequency 2.1.3 Address Space 2.1.3.1 Virtual Address Space 2.1.3.2 Physical Address Space 2.1.3.3 System Address Map 2.1.3.3.1 Memory Access to the Physical Address Space 4 56255 Rev 3.03 - July, 2018 OSRR for AMD Family 17h processors, Models 00h-2Fh 2.1.3.3.1.1 Determining Memory Type 2.1.4 Configuration Space 2.1.4.1 MMIO Configuration Coding Requirements 2.1.4.2 MMIO Configuration Ordering 2.1.4.3 Processor Configuration Space 2.1.5 PCI Configuration Legacy Access 2.1.6 Register Sharing 2.1.7 Timers 2.1.8 Interrupts 2.1.8.1 System Management Mode (SMM) 2.1.8.1.1 SMM Overview 2.1.8.1.2 Mode and Default Register Values 2.1.8.1.3 SMI Sources And Delivery 2.1.8.1.4 SMM Initial State 2.1.8.1.5 SMM Save State 2.1.8.1.6 System Management State 2.1.8.1.7 Exceptions and Interrupts in SMM 2.1.8.1.8 The Protected ASeg and TSeg Areas 2.1.8.1.9 SMM Special Cycles 2.1.8.1.10 Locking SMM 2.1.8.2 Local APIC 2.1.8.2.1 Local APIC Functional Description 2.1.8.2.1.1 Detecting and Enabling 2.1.8.2.1.2 APIC Register Space 2.1.8.2.1.3 ApicId Enumeration Requirements 2.1.8.2.1.4 Physical Destination Mode 2.1.8.2.1.5 Logical Destination Mode 2.1.8.2.1.6 Interrupt Delivery 2.1.8.2.1.7 Vectored Interrupt Handling 2.1.8.2.1.8 Interrupt Masking 2.1.8.2.1.9 Spurious Interrupts 2.1.8.2.1.10 Spurious Interrupts Caused by Timer Tick Interrupt 2.1.8.2.1.11 Lowest-Priority Interrupt Arbitration 2.1.8.2.1.12 Inter-Processor Interrupts 2.1.8.2.1.13 APIC Timer Operation 2.1.8.2.1.14 Generalized Local Vector Table 2.1.8.2.1.15 State at Reset 2.1.8.2.2 Local APIC Registers 2.1.9 CPUID Instruction 2.1.9.1 CPUID Instruction Functions 2.1.10 MSR Registers 2.1.10.1 MSRs - MSR0000_xxxx 2.1.10.2 MSRs - MSRC000_0xxx 2.1.10.2.1 MSRs - MSRC000_2xxx 2.1.10.3 MSRs - MSRC001_0xxx 2.1.10.4 MSRs - MSRC001_1xxx 2.1.11 Performance Monitor Counters 2.1.11.1 RDPMC Assignments 2.1.11.2 Large Increment per Cycle Events 2.1.11.3 Core Performance Monitor Counters 2.1.11.3.1 Floating Point (FP) Events 2.1.11.3.2 LS Events 2.1.11.3.3 IC and BP Events 5 56255 Rev 3.03 - July, 2018 OSRR for AMD Family 17h processors, Models 00h-2Fh 2.1.11.3.4 DE Events 2.1.11.3.5 EX (SC) Events 2.1.11.3.6 L2 Cache Events. 2.1.11.4 L3 Cache Performance Monitor Counters 2.1.11.4.1 L3 Cache PMC Events 2.1.12 Instruction Based Sampling (IBS) 3 Machine Check Architecture 3.1 Overview 3.2 Machine Check Architecture Extensions 3.3 Machine Check Global Registers 3.4 Machine Check Banks 3.5 Machine Check Bank Registers 3.6 Legacy MCA MSRs 3.7 Determining Bank Type 3.8 Machine Check Errors 3.9 Machine Check Initialization 3.9.1 Initialization Sequence 3.9.2 Configuration Requirements 3.10 MCA Overflow Recovery 3.11 MCA Recovery 3.12 Use of MCA Information 3.12.1 Error Management 3.12.2 Fault Management 3.13 Machine Check Error Handling 3.14 Error Codes 3.15 Error Thresholding 3.16 Error Simulation 3.17 MCA Registers 3.17.1 Decoding Error Type 3.17.2 Mapping of Banks to Blocks 3.17.3 Hardware IDs and McaType 3.17.4 MCA Banks 3.17.5 LS 3.17.6 IF 3.17.7 L2 3.17.8 DE 3.17.9 EX 3.17.10 FP 3.17.11 L3 Cache 3.17.12 CS 3.17.13 PIE 3.17.14 UMC 3.17.15 Parameter Block 4 SMU Registers 4.1 MP0 Configuration Unit Registers 4.2 Thermal (THM) 4.2.1 Registers 5 Advanced Platform Management Link (APML) 5.1 Overview 5.1.1 Definitions 5.2 SBI Bus Characteristics 5.2.1 SMBus Protocol Support 5.2.2 I2C Support 6 56255 Rev 3.03 - July, 2018 OSRR for AMD Family 17h processors, Models 00h-2Fh 5.3 SBI Processor Information 5.3.1 SBI Processor Pins 5.3.1.1 Physical Layer Characteristics 5.3.2 Processor States 5.4 SBI Protocols 5.4.1 SBI Modified Block Write-Block Read Process Call 5.4.2 SBI Error Detection and Recovery 5.4.2.1 Error Detection 5.4.2.1.1 ACK/NAK Mechanism 5.4.2.1.2 Bus Timeouts 5.4.2.2 Error Recovery 5.4.2.2.1 SBI Bus Reset 5.5 SBI Physical Interface 5.5.1 SBI SMBus Address 5.5.2 SBI Bus Timing 5.5.3 SBI Bus Electrical Parameters 5.5.4 Pass-FET Option 6 SB Temperature Sensor Interface (SB-TSI) 6.1 Overview 6.1.1 Definitions 6.2 SB-TSI Protocol 6.2.1 SB-TSI Send/Receive Byte Protocol 6.2.1.1 SB-TSI Address Pointer 6.2.2 SB-TSI Read/Write Byte Protocol 6.2.3 Alert Behavior 6.2.4 Atomic Read Mechanism 6.2.5 SB-TSI Temperature and Threshold Encodings 6.2.6 SB-TSI Temperature Offset Encoding 6.3 SB-TSI Physical Interface 6.3.1 SB-TSI SMBus Address 6.3.2 SB-TSI Bus Timing 6.3.3 SB-TSI Bus Electrical Parameters 6.3.4 Pass-FET Option 6.4 SB-TSI Registers 7 56255 Rev 3.03 - July, 2018 OSRR for AMD Family 17h processors, Models 00h-2Fh List of Figures Figure 1: Register Physical Mnemonic, Title, and Name Figure 2: Full Width Register Attributes Figure 3: Register Description Figure 4: Register Instance Table: Content Ordering in a Row Figure 5: Register Instance Table: MSR Example Figure 6: Register Instance Table: MSR Range Example Figure 7: Register Instance Table: BAR as Register Reference Figure 8: Register Instance Table: Bus Implied to be 00h Figure 9: Register Instance Table: Data Port Select Figure 10: Simple Register Field Example Figure 11: Register Field Sub-Row for {Reset,AccessType,Init,Check} Figure 12: Register Field Sub-Row for Description Figure 13: Register Field Sub-Row for Valid Value Table Figure 14: Register Field Sub-Row for Valid Bit Table Figure 15: Register Sharing Domains Figure 16: Instance Parameters
Recommended publications
  • Computer Organization and Architecture Designing for Performance Ninth Edition
    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION William Stallings Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam Cape Town Dubai London Madrid Milan Munich Paris Montréal Toronto Delhi Mexico City São Paulo Sydney Hong Kong Seoul Singapore Taipei Tokyo Editorial Director: Marcia Horton Designer: Bruce Kenselaar Executive Editor: Tracy Dunkelberger Manager, Visual Research: Karen Sanatar Associate Editor: Carole Snyder Manager, Rights and Permissions: Mike Joyce Director of Marketing: Patrice Jones Text Permission Coordinator: Jen Roach Marketing Manager: Yez Alayan Cover Art: Charles Bowman/Robert Harding Marketing Coordinator: Kathryn Ferranti Lead Media Project Manager: Daniel Sandin Marketing Assistant: Emma Snider Full-Service Project Management: Shiny Rajesh/ Director of Production: Vince O’Brien Integra Software Services Pvt. Ltd. Managing Editor: Jeff Holcomb Composition: Integra Software Services Pvt. Ltd. Production Project Manager: Kayla Smith-Tarbox Printer/Binder: Edward Brothers Production Editor: Pat Brown Cover Printer: Lehigh-Phoenix Color/Hagerstown Manufacturing Buyer: Pat Brown Text Font: Times Ten-Roman Creative Director: Jayne Conte Credits: Figure 2.14: reprinted with permission from The Computer Language Company, Inc. Figure 17.10: Buyya, Rajkumar, High-Performance Cluster Computing: Architectures and Systems, Vol I, 1st edition, ©1999. Reprinted and Electronically reproduced by permission of Pearson Education, Inc. Upper Saddle River, New Jersey, Figure 17.11: Reprinted with permission from Ethernet Alliance. Credits and acknowledgments borrowed from other sources and reproduced, with permission, in this textbook appear on the appropriate page within text. Copyright © 2013, 2010, 2006 by Pearson Education, Inc., publishing as Prentice Hall. All rights reserved. Manufactured in the United States of America.
    [Show full text]
  • Introduction to the Intel® Nios® II Soft Processor
    Introduction to the Intel® Nios® II Soft Processor For Quartus® Prime 18.1 1 Introduction This tutorial presents an introduction the Intel® Nios® II processor, which is a soft processor that can be instantiated on an Intel FPGA device. It describes the basic architecture of Nios II and its instruction set. The Nios II processor and its associated memory and peripheral components are easily instantiated by using Intel’s SOPC Builder or Platform Designer tool in conjunction with the Quartus® Prime software. A full description of the Nios II processor is provided in the Nios II Processor Reference Handbook, which is available in the literature section of the Intel web site. Introductions to the SOPC Builder and Platform Designer tools are given in the tutorials Introduction to the Intel SOPC Builder and Introduction to the Intel Platform Designer Tool, respectively. Both can be found in the University Program section of the web site. Contents: • Nios II System • Overview of Nios II Processor Features • Register Structure • Accessing Memory and I/O Devices • Addressing • Instruction Set • Assembler Directives • Example Program • Exception Processing • Cache Memory • Tightly Coupled Memory Intel Corporation - FPGA University Program 1 March 2019 ® ® INTRODUCTION TO THE INTEL NIOS II SOFT PROCESSOR For Quartus® Prime 18.1 2 Background Intel’s Nios II is a soft processor, defined in a hardware description language, which can be implemented in Intel’s FPGA devices by using the Quartus Prime CAD system. This tutorial provides a basic introduction to the Nios II processor, intended for a user who wishes to implement a Nios II based system on an Intel Development and Education board.
    [Show full text]
  • Computer Organization & Architecture Eie
    COMPUTER ORGANIZATION & ARCHITECTURE EIE 411 Course Lecturer: Engr Banji Adedayo. Reg COREN. The characteristics of different computers vary considerably from category to category. Computers for data processing activities have different features than those with scientific features. Even computers configured within the same application area have variations in design. Computer architecture is the science of integrating those components to achieve a level of functionality and performance. It is logical organization or designs of the hardware that make up the computer system. The internal organization of a digital system is defined by the sequence of micro operations it performs on the data stored in its registers. The internal structure of a MICRO-PROCESSOR is called its architecture and includes the number lay out and functionality of registers, memory cell, decoders, controllers and clocks. HISTORY OF COMPUTER HARDWARE The first use of the word ‘Computer’ was recorded in 1613, referring to a person who carried out calculation or computation. A brief History: Computer as we all know 2day had its beginning with 19th century English Mathematics Professor named Chales Babage. He designed the analytical engine and it was this design that the basic frame work of the computer of today are based on. 1st Generation 1937-1946 The first electronic digital computer was built by Dr John V. Atanasoff & Berry Cliford (ABC). In 1943 an electronic computer named colossus was built for military. 1946 – The first general purpose digital computer- the Electronic Numerical Integrator and computer (ENIAC) was built. This computer weighed 30 tons and had 18,000 vacuum tubes which were used for processing.
    [Show full text]
  • A Modular Soft Processor Core in VHDL
    A Modular Soft Processor Core in VHDL Jack Whitham 2002-2003 This is a Third Year project submitted for the degree of MEng in the Department of Computer Science at the University of York. The project will attempt to demonstrate that a modular soft processor core can be designed and implemented on an FPGA, and that the core can be optimised to run a particular embedded application using a minimal amount of FPGA space. The word count of this project (as counted by the Unix wc command after detex was run on the LaTeX source) is 33647 words. This includes all text in the main report and Appendices A, B and C. Excluding source code, the project is 70 pages in length. i Contents I. Introduction 1 1. Background and Literature 1 1.1. Soft Processor Cores . 1 1.2. A Field Programmable Gate Array . 1 1.3. VHSIC Hardware Definition Language (VHDL) . 2 1.4. The Motorola 68020 . 2 II. High-level Project Decisions 3 2. Should the design be based on an existing one? 3 3. Which processor should the soft core be based upon? 3 4. Which processor should be chosen? 3 5. Restating the aims of the project in terms of the chosen processor 4 III. Modular Processor Design Decisions 4 6. Processor Design 4 6.1. Alternatives to a complete processor implementation . 4 6.2. A real processor . 5 6.3. Instruction Decoder and Control Logic . 5 6.4. Arithmetic and Logic Unit (ALU) . 7 6.5. Register File . 7 6.6. Links between Components .
    [Show full text]
  • Assignment Solutions
    Week 1: Assignment Solutions 1. Which of the following statements are true? a. The ENIAC computer was built using mechanical relays. b. Harvard Mark1 computer was built using mechanical relays. c. PASCALINE computer could multiply and divide numbers by repeated addition and subtraction. d. Charles Babbage built his automatic computing engine in 19th century. Solution: ((b) and (c)) ENIAC was built using vacuum tubes. Charles Babbage designed his automatic computing engine but could not built it. 2. Which of the following statements are true for Moore’s law? a. Moore’s law predicts that power dissipation will double every 18 months. b. Moore’s law predicts that the number of transistors per chip will double every 18 months. c. Moore’s law predicts that the speed of VLSI circuits will double every 18 months. d. None of the above. Solution: (b) Moore’s law only predicts that number of transistors per chip will double every 18 months. 3. Which of the following generates the necessary signals required to execute an instruction in a computer? a. Arithmetic and Logic Unit b. Memory Unit c. Control Unit d. Input/Output Unit Solution: (c) Control unit acts as the nerve center of a computer and generates the necessary control signals required to execute an instruction. 4. An instruction ADD R1, A is stored at memory location 4004H. R1 is a processor register and A is a memory location with address 400CH. Each instruction is 32-bit long. What will be the values of PC, IR and MAR during execution of the instruction? a.
    [Show full text]
  • Register Are Used to Quickly Accept, Store, and Transfer Data And
    Register are used to quickly accept, store, and transfer data and instructions that are being used immediately by the CPU, there are various types of Registers those are used for various purpose. Among of the some Mostly used Registers named as AC or Accumulator, Data Register or DR, the AR or Address Register, program counter (PC), Memory Data Register (MDR) ,Index register,Memory Buffer Register. These Registers are used for performing the various Operations. While we are working on the System then these Registers are used by the CPU for Performing the Operations. When We Gives Some Input to the System then the Input will be Stored into the Registers and When the System will gives us the Results after Processing then the Result will also be from the Registers. So that they are used by the CPU for Processing the Data which is given by the User. Registers Perform:- 1) Fetch: The Fetch Operation is used for taking the instructions those are given by the user and the Instructions those are stored into the Main Memory will be fetch by using Registers. 2) Decode: The Decode Operation is used for interpreting the Instructions means the Instructions are decoded means the CPU will find out which Operation is to be performed on the Instructions. 3) Execute: The Execute Operation is performed by the CPU. And Results those are produced by the CPU are then Stored into the Memory and after that they are displayed on the user Screen. Types of Registers are as Followings 1. MAR stand for Memory Address Register This register holds the memory addresses of data and instructions.
    [Show full text]
  • IAR C/C++ Compiler Reference Guide for V850
    IAR Embedded Workbench® IAR C/C++ Compiler Reference Guide for the Renesas V850 Microcontroller Family CV850-9 COPYRIGHT NOTICE © 1998–2013 IAR Systems AB. No part of this document may be reproduced without the prior written consent of IAR Systems AB. The software described in this document is furnished under a license and may only be used or copied in accordance with the terms of such a license. DISCLAIMER The information in this document is subject to change without notice and does not represent a commitment on any part of IAR Systems. While the information contained herein is assumed to be accurate, IAR Systems assumes no responsibility for any errors or omissions. In no event shall IAR Systems, its employees, its contractors, or the authors of this document be liable for special, direct, indirect, or consequential damage, losses, costs, charges, claims, demands, claim for lost profits, fees, or expenses of any nature or kind. TRADEMARKS IAR Systems, IAR Embedded Workbench, C-SPY, visualSTATE, The Code to Success, IAR KickStart Kit, I-jet, I-scope, IAR and the logotype of IAR Systems are trademarks or registered trademarks owned by IAR Systems AB. Microsoft and Windows are registered trademarks of Microsoft Corporation. Renesas is a registered trademark of Renesas Electronics Corporation. V850 is a trademark of Renesas Electronics Corporation. Adobe and Acrobat Reader are registered trademarks of Adobe Systems Incorporated. All other product names are trademarks or registered trademarks of their respective owners. EDITION NOTICE Ninth edition: May 2013 Part number: CV850-9 This guide applies to version 4.x of IAR Embedded Workbench® for the Renesas V850 microcontroller family.
    [Show full text]
  • Mairjason2015phd.Pdf (1.650Mb)
    Power Modelling in Multicore Computing Jason Mair a thesis submitted for the degree of Doctor of Philosophy at the University of Otago, Dunedin, New Zealand. 2015 Abstract Power consumption has long been a concern for portable consumer electron- ics, but has recently become an increasing concern for larger, power-hungry systems such as servers and clusters. This concern has arisen from the asso- ciated financial cost and environmental impact, where the cost of powering and cooling a large-scale system deployment can be on the order of mil- lions of dollars a year. Such a substantial power consumption additionally contributes significant levels of greenhouse gas emissions. Therefore, software-based power management policies have been used to more effectively manage a system’s power consumption. However, man- aging power consumption requires fine-grained power values for evaluating the run-time tradeoff between power and performance. Despite hardware power meters providing a convenient and accurate source of power val- ues, they are incapable of providing the fine-grained, per-application power measurements required in power management. To meet this challenge, this thesis proposes a novel power modelling method called W-Classifier. In this method, a parameterised micro-benchmark is designed to reproduce a selection of representative, synthetic workloads for quantifying the relationship between key performance events and the cor- responding power values. Using the micro-benchmark enables W-Classifier to be application independent, which is a novel feature of the method. To improve accuracy, W-Classifier uses run-time workload classification and derives a collection of workload-specific linear functions for power estima- tion, which is another novel feature for power modelling.
    [Show full text]
  • Computer Organization and Architecture Structure
    COMPUTER ORGANIZATION AND ARCHITECTURE Computer Architecture refers to those attributes of a system that have a direct impact on the logical execution of a program. Examples: o the instruction set o the number of bits used to represent various data types o I/O mechanisms o memory addressing techniques Computer Organization refers to the operational units and their interconnections that realize the architectural specifications. Examples are things that are transparent to the programmer: o control signals o interfaces between computer and peripherals o the memory technology being used So, for example, the fact that a multiply instruction is available is a computer architecture issue. How that multiply is implemented is a computer organization issue. • Architecture is those attributes visible to the programmer o Instruction set, number of bits used for data representation, I/O mechanisms, addressing techniques. o e.g. Is there a multiply instruction? • Organization is how features are implemented o Control signals, interfaces, memory technology. o e.g. Is there a hardware multiply unit or is it done by repeated addition? • All Intel x86 family share the same basic architecture • The IBM System/370 family share the same basic architecture • This gives code compatibility o At least backwards • Organization differs between different versions STRUCTURE AND FUNCTION • Structure is the way in which components relate to each other • Function is the operation of individual components as part of the structure • All computer functions are: o Data processing: Computer must be able to process data which may take a wide variety of forms and the range of processing. o Data storage: Computer stores data either temporarily or permanently.
    [Show full text]
  • A Statistical Performance Model of the Opteron Processor
    A Statistical Performance Model of the Opteron Processor Jeanine Cook Jonathan Cook Waleed Alkohlani New Mexico State University New Mexico State University New Mexico State University Klipsch School of Electrical Department of Computer Klipsch School of Electrical and Computer Engineering Science and Computer Engineering [email protected] [email protected] [email protected] ABSTRACT m5 [11], Simics/GEMS [25], and more recently MARSSx86 [5]{ Cycle-accurate simulation is the dominant methodology for the only one supporting the popular x86 architecture. Some processor design space analysis and performance prediction. of these have not been validated against real hardware in However, with the prevalence of multi-core, multi-threaded the multi-core mode (SESC and M5), and the others that architectures, this method has become highly impractical as are validated show large errors of up to 50% [5]. All cycle- the sole means for design due to its extreme slowdowns. We accurate multi-core simulators are very slow; a few hundred have developed a statistical technique for modeling multi- thousand simulated instructions per second is the most op- core processors that is based on Monte Carlo methods. Us- timistic speed with the help of native mode execution. Fur- ing this method, processor models of contemporary archi- ther, the architectures supported by many of these simula- tectures can be developed and applied to performance pre- tors are now obsolete. diction, bottleneck detection, and limited design space anal- ysis. To date, we have accurately modeled the IBM Cell, the To address these issues and to satisfy our own desire for Intel Itanium, and the Sun Niagara 1 and Niagara 2 proces- performance models of contemporary processors, we devel- sors [34, 33, 10].
    [Show full text]
  • Power Modeling
    CHAPTER 5 POWER MODELING Jason Mair1, Zhiyi Huang1, David Eyers1, Leandro Cupertino2, Georges Da Costa2, Jean-Marc Pierson2 and Helmut Hlavacs3 1Department of Computer Science, University of Otago, New Zealand 2Institute for Research in Informatics of Toulouse (IRIT), University of Toulouse III, France 3Faculty of Computer Science, University of Vienna, Austria 5.1 Introduction Power consumption has long been a concern for portable consumer electronics, with many manufacturers explicitly seeking to maximize battery life in order to improve the usability of devices such as laptops and smart phones. However, it has recently become a concern in the domain of much larger, more power hungry systems such as servers, clusters and data centers. This new drive to improve energy efficiency is in part due to the increasing deployment of large-scale systems in more businesses and industries, which have two pri- mary motives for saving energy. Firstly, there is the traditional economic incentive for a business to reduce their operating costs, where the cost of powering and cooling a large data center can be on the order of millions of dollars [18]. Reducing the total cost of own- ership for servers could help to stimulate further deployments. As servers become more affordable, deployments will increase in businesses where concerns over lifetime costs pre- viously prevented adoption. The second motivating factor is the increasing awareness of the environmental impact—e.g. greenhouse gas emissions—caused by power production. Reducing energy consumption can help a business indirectly reduce their environmental impact, making them more clean and green. The most commonly adopted solution for reducing power consumption is a hardware- based approach, where old, inefficient hardware is replaced with newer, more energy effi- COST Action 0804, edition.
    [Show full text]
  • Processor-Organaization.Pdf
    Computer Architecture Faculty Of Computers And Information Technology Second Term 2019- 2020 Dr.Khaled Kh. Sharaf Computer Architecture Chapter 7 CENTRAL PROCESSING UNIT ORGANIZATION Computer Architecture OBJECTIVES • Overview • Processor Unit • Control Unit • CPU Structure and Function • Arithmetic and Logic Unit • Instruction Formats • Addressing Modes • Data Transfer and Manipulation • RISC and CISC Computer Architecture Overview The part of the computer that performs the bulk of data processing operations is called the Central Processing Unit (CPU) and is the central component of a digital computer. Its purpose is to interpret instruction cycles received from memory and perform arithmetic, logic and control operations with data stored in internal register, memory words and I/O interface units. A CPU is usually divided into two parts namely processor unit (Register Unit and Arithmetic Logic Unit) and control unit. Register Unit Control Unit Arithmetic logic Unit (ALU) Components of CPU Computer Architecture Processor Unit The processor unit consists of arithmetic unit, logic unit, a number of registers and internal buses that provides data path for transfer of information between register and arithmetic logic unit. The block diagram of processor unit is shown in figure where all registers are connected through common buses. The registers communicate each other not only for direct data transfer but also while performing various micro-operations. Here two sets of multiplexers select register which perform input data for ALU. A decoder selects destination register by enabling its load input. The function select in ALU determines the particular operation that to be performed. Processor Unit Computer Architecture Processor Unit For an example to perform the operation: R3 = R1 + R2 1.
    [Show full text]