INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

Size: px
Start display at page:

Download "INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing"

Transcription

1 UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version English Lecture 22 Title: and Extended Summary: architectures - Application Specific Instruction-set Processors (ASIPs); extensions - Instruction Set Architecture (ISA) extensions. 2010/2011 Nuno.Roma@ist.utl.pt

2 for Embedded Computing and Extended Prof. Nuno Roma ACE 2010/11 - DEI-IST 1 / 54 Previous Class In the previous class... Microcontrollers Smart-Cards Prof. Nuno Roma ACE 2010/11 - DEI-IST 2 / 54

3 Road Map Prof. Nuno Roma ACE 2010/11 - DEI-IST 3 / 54 Summary Today: architectures: Application Specific Instruction-set Processors (ASIPs) extensions: Instruction Set Architecture (ISA) extensions Prof. Nuno Roma ACE 2010/11 - DEI-IST 4 / 54

4 and Extended architectures: Implemented by adapting already existing cores (Ex: Leon, MIPS, etc.); The main objective is to optimize a very specific application; Fulfilled through dedicated processors (ASIPs); Somewhat flexible, but not much! to architectures: Try to optimize a wider diversity of applications; Defined by the manufacturers when they plan a new architecture; Included, at production time, in the new processors; Implemented using Instruction Set Architecture (ISA) extensions; Little flexibility. Prof. Nuno Roma ACE 2010/11 - DEI-IST 5 / 54 Prof. Nuno Roma ACE 2010/11 - DEI-IST 6 / 54

5 Introduction Prof. Nuno Roma ACE 2010/11 - DEI-IST 7 / 54 Introduction Once upon a time... Prof. Nuno Roma ACE 2010/11 - DEI-IST 8 / 54

6 Introduction Data Encryption Standard (DES) Prof. Nuno Roma ACE 2010/11 - DEI-IST 9 / 54 Introduction The SW engineer very proudly presented Prof. Nuno Roma ACE 2010/11 - DEI-IST 10 / 54

7 Introduction The HW engineer laughed Prof. Nuno Roma ACE 2010/11 - DEI-IST 11 / 54 Introduction The HW engineer presented Prof. Nuno Roma ACE 2010/11 - DEI-IST 12 / 54

8 Introduction The SW engineer laughed Prof. Nuno Roma ACE 2010/11 - DEI-IST 13 / 54 Introduction Realizing that they each had something the other wanted Prof. Nuno Roma ACE 2010/11 - DEI-IST 14 / 54

9 Introduction They decided to work together Prof. Nuno Roma ACE 2010/11 - DEI-IST 15 / 54 Introduction and improved the SW solution by 70x Prof. Nuno Roma ACE 2010/11 - DEI-IST 16 / 54

10 Introduction When the boss asked how, the SW engineer said: Prof. Nuno Roma ACE 2010/11 - DEI-IST 17 / 54 Introduction and the HW engineer said: Prof. Nuno Roma ACE 2010/11 - DEI-IST 18 / 54

11 Introduction Together, they had the best of both world Prof. Nuno Roma ACE 2010/11 - DEI-IST 19 / 54 Introduction The boss was very happy Prof. Nuno Roma ACE 2010/11 - DEI-IST 20 / 54

12 Introduction And they worked together happily ever after Prof. Nuno Roma ACE 2010/11 - DEI-IST 21 / 54 Motivation Characteristics of embedded systems: The project is focused on cost minimization; Great production volumes; Rapid evolution of the supporting technology; Very short Time-to-Market. Objective - design architectures that offer: Support for several applications of the same type; Possibility to evolve together with the application; Design and implement in a very short period; Low cost. Prof. Nuno Roma ACE 2010/11 - DEI-IST 22 / 54

13 Motivation Two possible approaches: I - Programmed application using microprocessors, thus offering a great capacity to adapt to the target application: General Purpose Processors (GPPs); Digital Signal Processors (DSPs); Microcontrollers. Prof. Nuno Roma ACE 2010/11 - DEI-IST 23 / 54 Motivation Two possible approaches: II - systems specifically designed for the targeted application, by making use of dedicated integrated circuits - ASICs: Application Specific Integrated Circuits: The engineer fully designs and implements the circuit, targeting the intended application; The efficiency is maximized: Great design effort; Long design cycles; The solution is usually not flexible, offering a very limited capability to be re-used in other applications. Prof. Nuno Roma ACE 2010/11 - DEI-IST 24 / 54

14 Motivation Several systems have tried to incorporate the advantages of these two approaches, by combining the flexibility of a microprocessor with the efficiency of a high performance ASIC to execute the most complex tasks. ASIP: Application-Specific Instruction-set Processor Prof. Nuno Roma ACE 2010/11 - DEI-IST 25 / 54 Motivation Embedded systems: great variety of adopted solutions... Prof. Nuno Roma ACE 2010/11 - DEI-IST 26 / 54

15 What is an ASIP? ASIP: Application-Specific Instruction-set Processor Architecture particularly adapted for specific sets of applications (e.g.: audio, control, encryption, etc.) Characteristics: Greater development costs; Much greater performance, with lower energy consumption (more efficient) than general purpose processors; Much more flexible than ASICs. Prof. Nuno Roma ACE 2010/11 - DEI-IST 27 / 54 What is an ASIP? Comparison between: GPP vs. ASIP vs. ASIC: GPP ASIP ASIC Performance Low High Very High Flexibility Very High Good Low HW Design Effort None Big Very Big SW Design Effort Little Big None Energy Consumption High Medium Low Re-Usage Excellent Great Little Market Very Large Large Small Cost Medium (SW) High (SW+HW) Very High (HW) Prof. Nuno Roma ACE 2010/11 - DEI-IST 28 / 54

16 ASIP Design OBJECTIVE: Given a particular set of applications, conceive a micro-architecture that best adapts to such applications: Set of dedicated instructions (ISA extension); Design of dedicated functional units; It is necessary to re-compile the application SW by considering these extensions/optimizations, in order to take the maximum advantage of the ASIP. The processor micro-architecture is now a project parameter!!! Prof. Nuno Roma ACE 2010/11 - DEI-IST 29 / 54 ASIP Design Design phases of an ASIP: Prof. Nuno Roma ACE 2010/11 - DEI-IST 30 / 54

17 ASIP Design Design phases of an ASIP: I - Original application: The application is programmed in C/C++; Great amount of code; Only a small code section is responsible for most processing time. II - Software manipulation: Simulation, profiling and analysis of the original software execution; Identification of the most critical code segments. Prof. Nuno Roma ACE 2010/11 - DEI-IST 31 / 54 ASIP Design Design phases of an ASIP: III - Architecture adaptation: A GPP core (e.g.: RISC) is adopted as the base architecture; The original instruction set is extended with new dedicated instructions to increase the application performance and reduce the energy consumption; The new instructions are implemented with dedicated functional units and integrated in the original processor: Inclusion of the unit in the original datapath (implies some changes in the decoding unit); Inclusion of the unit as a co-processor (invocation with load/store instructions). Prof. Nuno Roma ACE 2010/11 - DEI-IST 32 / 54

18 ASIP Design Design phases of an ASIP: III - Architecture adaptation (cont.): The critical code sections are re-encoded and replaced by sections that are implemented using the new dedicated instructions; The compiler is adapted in order to support the extended set of instructions. IV - Evaluation of the new architecture: Performance analysis of the modified architecture: Execution cycles; Clock frequency; Energy consumption. Prof. Nuno Roma ACE 2010/11 - DEI-IST 33 / 54 Example of an ASIP AMEP: Adaptive H.264/AVC Motion Estimation Processor for Mobile and Battery Supplied Devices PC M U X 0 Σ 1 RAM (Firmware) M U X M U X Instruction Decoding R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 R16 R17 R18 R19 R20 R21 R22 R23 R24 R25 R26 R27 R28 R29 R30 R31... Negative Zero SADU AGU M U X M U X... MB SA MEM MEM AGU ASR Σ SADU ALU M U X M U X... Opcode Mnemonic Instruction Category LD Memory data transfer opcode t J Control opcode cc - address 010 MOVR Register data transfer opcode Rd - Rs 011 MOVC Register data transfer opcode t Rd constant 100 SAD16 Graphics opcode - Rd Rs1 Rs2 101 DIV2 Arithmetic opcode - Rd Rs ADD Arithmetic opcode - Rd Rs1 Rs2 111 SUB Arithmetic opcode - Rd Rs1 Rs2 Prof. Nuno Roma ACE 2010/11 - DEI-IST 34 / 54

19 Example of an ASIP AMEP: Adaptive H.264/AVC Motion Estimation Processor for Mobile and Battery Supplied Devices Speed-up: 1,2 1 ARM ASIP MB proc time [ms] 0,8 0,6 0,4 0,2 0 Bream Carphone Foreman Mobile Table-Tennis Prof. Nuno Roma ACE 2010/11 - DEI-IST 35 / 54 Other ASIP examples Other application examples of ASIPs: Encryption / Decryption; Communications: Modulation; Networks; Signal processing: Fast Fourier Transform (FFT); Convolution; Video coding: Discrete Cosine Transform (DCT); Motion estimation; Entropy encoding (VLC, CABAC, etc.); etc., etc., etc.... Prof. Nuno Roma ACE 2010/11 - DEI-IST 36 / 54

20 Prof. Nuno Roma ACE 2010/11 - DEI-IST 37 / 54 Instruction Set Architecture Instruction Set Architecture (ISA): Interface between the hardware and the software; Specifies: Instructions; Addressing modes; Registers. CISC vs RISC: In the beginning... there was CISC: The low-level programming model (Assembly) used to be the most often adopted; Scarce memory space. After the introduction of RISCs, in the 1970 s: Simple instructions; Pipelining. Prof. Nuno Roma ACE 2010/11 - DEI-IST 38 / 54

21 ISA Objectives: Increase the processors performance and efficiency; Include new useful instructions for specific application domains; Optimize frequently used (semi-)complex operations; Solution: Single Instruction, Multiple Data (SIMD) Examples: Matrices manipulations; Image and video processing, etc. Prof. Nuno Roma ACE 2010/11 - DEI-IST 39 / 54 Single Instruction, Multiple Data (SIMD) The human perception limitations do not allow us to take full advantage of the huge precision levels offered by current processors (64-bits, 128-bits); To avoid wasting the computational resources offered by the ALUs (64-bits, 128-bits) whenever the processed data have lower dynamic range (8-bits, 16-bits), several ISA extensions have been proposed that allow the simultaneous processing of several lower-precision operands: Single-Instruction Multiple-Data (SIMD) Example: A0 A1 A2 A3 A4 A5 A6 A7 + B0 B1 B2 B3 B4 B5 B6 B7 = A0+B0 A1+B1 A2+B2 A3+B3 A4+B4 A5+B5 A6+B6 A7+B7 Prof. Nuno Roma ACE 2010/11 - DEI-IST 40 / 54

22 Single Instruction, Multiple Data (SIMD) Examples: Prof. Nuno Roma ACE 2010/11 - DEI-IST 41 / 54 MMX: Matrix Math Extentions Introduced by Intel, in 1997; Acceleration of multimedia applications; 8 new 64-bit SIMD registers: MM0 to MM7; Packed Data Types: Prof. Nuno Roma ACE 2010/11 - DEI-IST 42 / 54

23 MMX: Matrix Math Extentions Shares the same registers with the floating-point unit; 57 new SIMD instructions; Only operates with integers. Prof. Nuno Roma ACE 2010/11 - DEI-IST 43 / 54 MMX: Matrix Math Extentions Examples: PADD PMADDWD Prof. Nuno Roma ACE 2010/11 - DEI-IST 44 / 54

24 3DNow! Developed by AMD, in 1998; Emergence of 3D games; AMD K6 processor presented an unsatisfactory performance with floating-point operations; Objective: Expand MMX to floating-point operations; 3DNow! includes 21 new instructions: Floating-point and fixed-point SIMD operations; Switching between the MMX modes and floating-point; Data prefetching into L1 cache. Enhanced 3DNow!: 24 additional instructions. 3DNow! Professional: Merge between the 3DNow! extension and the Intel SSE extension. Prof. Nuno Roma ACE 2010/11 - DEI-IST 45 / 54 SSE: Streaming SIMD Developed by Intel, with the introduction of Pentium III, in 1997; Acceleration of 3D multimedia and floating-point applications; 8 new 128-bit registers (XMM0 to XMM7), independent of MMX registers; Floating-point Packed Data Types; 70 new instructions: Floating-point operations; Integer operations; Memory management. Prof. Nuno Roma ACE 2010/11 - DEI-IST 46 / 54

25 SSE2: Streaming SIMD Developed by Intel, with Pentium IV, in 2001; Acceleration of multimedia applications (3D graphics, video and audio encoding (MPEG)); Extension of MMX operations; Introduce XMM registers; Floating-point registers become exclusive to the FPU; 144 new instructions: Format conversion; Cache control; Example: CLFLUSH - flushes the addressed position from all levels of the cache hierarchy. Prof. Nuno Roma ACE 2010/11 - DEI-IST 47 / 54 (S)SSE3: Streaming SIMD Developed by Intel, in 2004; Incremental evolution, when compared with the SSE extension; 13 new instructions: Operations over complex numbers; Application: signal processing (FFT); Horizontal operations - act over the several packed elements of the same register; Application: vectorial processing; Thread optimization operations: Application: Hyper-Threading. SSSE3: Supplemental Streaming SIMD 16 new horizontal instructions. Prof. Nuno Roma ACE 2010/11 - DEI-IST 48 / 54

26 SSE4: Streaming SIMD Developed in 2006, with Intel Core e AMD K10 processors; 47 new instructions: Multimedia operations; Web servers operations; Text/string processing operations; Search operations; Data-mining operations; Compression operations; etc. Prof. Nuno Roma ACE 2010/11 - DEI-IST 49 / 54 SSE5: Streaming SIMD Proposed by AMD, available in 2011; 170 new instructions: 3-operand operations; Application: Video coding (DCT) and encryption (AES). Prof. Nuno Roma ACE 2010/11 - DEI-IST 50 / 54

27 AVX: Advanced Vector Proposed by Intel, available in 2011; End of the SSE extensions generation; Updates 200 instructions; Proposes 100 new instructions; 256-bits registers. Prof. Nuno Roma ACE 2010/11 - DEI-IST 51 / 54 Current Situation Very wide set of available instructions; Approximation to the old CISC architecture paradigm; Applications: Cryptography; Virtualization: Security; Memory protection; Video coding: Motion estimation; Discrete Cosine Transform (DCT); etc., etc., etc. Prof. Nuno Roma ACE 2010/11 - DEI-IST 52 / 54

28 Prof. Nuno Roma ACE 2010/11 - DEI-IST 53 / 54 Digital input/output: Memory mapped / Input & Output Pooling Interruptions Timers: Real-time clocks Watchdog timers Actuators and control signal generators: Pulse Width Modulators (PWM) Signal acquisition and conversion: Digital-to-Analog Converters (DAC) Analog-to-Digital Converters (ADC) Digital input and output Prof. Nuno Roma ACE 2010/11 - DEI-IST 54 / 54

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 05

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 04

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 03 Title: Processor

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 07

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 06

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 12

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 11

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 21

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 16

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 14

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 17

More information

Processing Unit CS206T

Processing Unit CS206T Processing Unit CS206T Microprocessors The density of elements on processor chips continued to rise More and more elements were placed on each chip so that fewer and fewer chips were needed to construct

More information

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Architectures for Embedded Computing MEIC-A, MEIC-T, MERC Lecture Slides Version 3.0 - English Lecture 09

More information

Computer System Architecture

Computer System Architecture CSC 203 1.5 Computer System Architecture Budditha Hettige Department of Statistics and Computer Science University of Sri Jayewardenepura Microprocessors 2011 Budditha Hettige 2 Processor Instructions

More information

Microprocessors, Lecture 1: Introduction to Microprocessors

Microprocessors, Lecture 1: Introduction to Microprocessors Microprocessors, Lecture 1: Introduction to Microprocessors Computing Systems General-purpose standalone systems (سيستم ھای نھفته ( systems Embedded 2 General-purpose standalone systems Stand-alone computer

More information

ECE 486/586. Computer Architecture. Lecture # 7

ECE 486/586. Computer Architecture. Lecture # 7 ECE 486/586 Computer Architecture Lecture # 7 Spring 2015 Portland State University Lecture Topics Instruction Set Principles Instruction Encoding Role of Compilers The MIPS Architecture Reference: Appendix

More information

Storage I/O Summary. Lecture 16: Multimedia and DSP Architectures

Storage I/O Summary. Lecture 16: Multimedia and DSP Architectures Storage I/O Summary Storage devices Storage I/O Performance Measures» Throughput» Response time I/O Benchmarks» Scaling to track technological change» Throughput with restricted response time is normal

More information

Ali Karimpour Associate Professor Ferdowsi University of Mashhad

Ali Karimpour Associate Professor Ferdowsi University of Mashhad AUTOMATIC CONTROL SYSTEMS Ali Karimpour Associate Professor Ferdowsi University of Mashhad Main reference: Christopher T. Kilian, (2001), Modern Control Technology: Components and Systems Publisher: Delmar

More information

CSEE 3827: Fundamentals of Computer Systems

CSEE 3827: Fundamentals of Computer Systems CSEE 3827: Fundamentals of Computer Systems Lecture 15 April 1, 2009 martha@cs.columbia.edu and the rest of the semester Source code (e.g., *.java, *.c) (software) Compiler MIPS instruction set architecture

More information

Computer Architecture. Fall Dongkun Shin, SKKU

Computer Architecture. Fall Dongkun Shin, SKKU Computer Architecture Fall 2018 1 Syllabus Instructors: Dongkun Shin Office : Room 85470 E-mail : dongkun@skku.edu Office Hours: Wed. 15:00-17:30 or by appointment Lecture notes nyx.skku.ac.kr Courses

More information

Fundamentals of Computer Design

Fundamentals of Computer Design CS359: Computer Architecture Fundamentals of Computer Design Yanyan Shen Department of Computer Science and Engineering 1 Defining Computer Architecture Agenda Introduction Classes of Computers 1.3 Defining

More information

Advance CPU Design. MMX technology. Computer Architectures. Tien-Fu Chen. National Chung Cheng Univ. ! Basic concepts

Advance CPU Design. MMX technology. Computer Architectures. Tien-Fu Chen. National Chung Cheng Univ. ! Basic concepts Computer Architectures Advance CPU Design Tien-Fu Chen National Chung Cheng Univ. Adv CPU-0 MMX technology! Basic concepts " small native data types " compute-intensive operations " a lot of inherent parallelism

More information

Ali Karimpour Associate Professor Ferdowsi University of Mashhad

Ali Karimpour Associate Professor Ferdowsi University of Mashhad AUTOMATIC CONTROL SYSTEMS Ali Karimpour Associate Professor Ferdowsi University of Mashhad Main reference: Christopher T. Kilian, (2001), Modern Control Technology: Components and Systems Publisher: Delmar

More information

Computer Organization + DIGITAL DESIGN

Computer Organization + DIGITAL DESIGN Computer Organization + DIGITAL DESIGN SUKHENDU DAS www.cse.iitm.ac.in/~sdas in/~sdas sdas@iitm.ac.in Computer Level Hierarchy Program Execution Translation: The entire high level program is translated

More information

Dan Stafford, Justine Bonnot

Dan Stafford, Justine Bonnot Dan Stafford, Justine Bonnot Background Applications Timeline MMX 3DNow! Streaming SIMD Extension SSE SSE2 SSE3 and SSSE3 SSE4 Advanced Vector Extension AVX AVX2 AVX-512 Compiling with x86 Vector Processing

More information

Intel released new technology call P6P

Intel released new technology call P6P P6 and IA-64 8086 released on 1978 Pentium release on 1993 8086 has upgrade by Pipeline, Super scalar, Clock frequency, Cache and so on But 8086 has limit, Hard to improve efficiency Intel released new

More information

EJEMPLOS DE ARQUITECTURAS

EJEMPLOS DE ARQUITECTURAS Maestría en Electrónica Arquitectura de Computadoras Unidad 4 EJEMPLOS DE ARQUITECTURAS M. C. Felipe Santiago Espinosa Marzo/2017 ARM & MIPS Similarities ARM: the most popular embedded core Similar basic

More information

Understanding Sources of Inefficiency in General-Purpose Chips

Understanding Sources of Inefficiency in General-Purpose Chips Understanding Sources of Inefficiency in General-Purpose Chips Rehan Hameed Wajahat Qadeer Megan Wachs Omid Azizi Alex Solomatnikov Benjamin Lee Stephen Richardson Christos Kozyrakis Mark Horowitz GP Processors

More information

Design and Optimization of Geometry Acceleration for Portable 3D Graphics

Design and Optimization of Geometry Acceleration for Portable 3D Graphics M.S. Thesis Design and Optimization of Geometry Acceleration for Portable 3D Graphics Ju-ho Sohn 2002.12.20 oratory Department of Electrical Engineering and Computer Science Korea Advanced Institute of

More information

ECE 486/586. Computer Architecture. Lecture # 8

ECE 486/586. Computer Architecture. Lecture # 8 ECE 486/586 Computer Architecture Lecture # 8 Spring 2015 Portland State University Lecture Topics Instruction Set Principles MIPS Control flow instructions Dealing with constants IA-32 Fallacies and Pitfalls

More information

ECE 471 Embedded Systems Lecture 2

ECE 471 Embedded Systems Lecture 2 ECE 471 Embedded Systems Lecture 2 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 7 September 2018 Announcements Reminder: The class notes are posted to the website. HW#1 will

More information

Lecture Topics. Branch Condition Options. Branch Conditions ECE 486/586. Computer Architecture. Lecture # 8. Instruction Set Principles.

Lecture Topics. Branch Condition Options. Branch Conditions ECE 486/586. Computer Architecture. Lecture # 8. Instruction Set Principles. ECE 486/586 Computer Architecture Lecture # 8 Spring 2015 Portland State University Instruction Set Principles MIPS Control flow instructions Dealing with constants IA-32 Fallacies and Pitfalls Reference:

More information

Computer Hardware Requirements for Real-Time Applications

Computer Hardware Requirements for Real-Time Applications Lecture (4) Computer Hardware Requirements for Real-Time Applications Prof. Kasim M. Al-Aubidy Computer Engineering Department Philadelphia University Real-Time Systems, Prof. Kasim Al-Aubidy 1 Lecture

More information

Embedded Systems Design (630414) Lecture 1 Introduction to Embedded Systems Prof. Kasim M. Al-Aubidy Computer Eng. Dept.

Embedded Systems Design (630414) Lecture 1 Introduction to Embedded Systems Prof. Kasim M. Al-Aubidy Computer Eng. Dept. Embedded Systems Design (630414) Lecture 1 Introduction to Embedded Systems Prof. Kasim M. Al-Aubidy Computer Eng. Dept. Definition of an E.S. It is a system whose principal function is not computational,

More information

Assembly Language for Intel-Based Computers, 4 th Edition. Chapter 2: IA-32 Processor Architecture. Chapter Overview.

Assembly Language for Intel-Based Computers, 4 th Edition. Chapter 2: IA-32 Processor Architecture. Chapter Overview. Assembly Language for Intel-Based Computers, 4 th Edition Kip R. Irvine Chapter 2: IA-32 Processor Architecture Slides prepared by Kip R. Irvine Revision date: 09/25/2002 Chapter corrections (Web) Printing

More information

Lecture 4: RISC Computers

Lecture 4: RISC Computers Lecture 4: RISC Computers Introduction Program execution features RISC characteristics RISC vs. CICS Zebo Peng, IDA, LiTH 1 Introduction Reduced Instruction Set Computer (RISC) is an important innovation

More information

ECE 471 Embedded Systems Lecture 2

ECE 471 Embedded Systems Lecture 2 ECE 471 Embedded Systems Lecture 2 Vince Weaver http://www.eece.maine.edu/~vweaver vincent.weaver@maine.edu 3 September 2015 Announcements HW#1 will be posted today, due next Thursday. I will send out

More information

Universität Dortmund. ARM Architecture

Universität Dortmund. ARM Architecture ARM Architecture The RISC Philosophy Original RISC design (e.g. MIPS) aims for high performance through o reduced number of instruction classes o large general-purpose register set o load-store architecture

More information

Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers

Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers Lecture (4) Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers Prof. Kasim M. Al-Aubidy Philadelphia University-Jordan DERTS-MSc, 2015 Prof. Kasim Al-Aubidy 1 Lecture Outline:

More information

Advanced processor designs

Advanced processor designs Advanced processor designs We ve only scratched the surface of CPU design. Today we ll briefly introduce some of the big ideas and big words behind modern processors by looking at two example CPUs. The

More information

Advanced Computer Architecture

Advanced Computer Architecture Advanced Computer Architecture Chapter 1 Introduction into the Sequential and Pipeline Instruction Execution Martin Milata What is a Processors Architecture Instruction Set Architecture (ISA) Describes

More information

Computer Systems Laboratory Sungkyunkwan University

Computer Systems Laboratory Sungkyunkwan University ARM & IA-32 Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu ARM (1) ARM & MIPS similarities ARM: the most popular embedded core Similar basic set

More information

Computer Architecture Dr. Charles Kim Howard University

Computer Architecture Dr. Charles Kim Howard University EECE416 Microcomputer Fundamentals Computer Architecture Dr. Charles Kim Howard University 1 Computer Architecture Computer Architecture Art of selecting and interconnecting hardware components to create

More information

Chapter 4. The Processor

Chapter 4. The Processor Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware 4.1 Introduction We will examine two MIPS implementations

More information

( ZIH ) Center for Information Services and High Performance Computing. Overvi ew over the x86 Processor Architecture

( ZIH ) Center for Information Services and High Performance Computing. Overvi ew over the x86 Processor Architecture ( ZIH ) Center for Information Services and High Performance Computing Overvi ew over the x86 Processor Architecture Daniel Molka Ulf Markwardt Daniel.Molka@tu-dresden.de ulf.markwardt@tu-dresden.de Outline

More information

CPS104 Computer Organization Lecture 1. CPS104: Computer Organization. Meat of the Course. Robert Wagner

CPS104 Computer Organization Lecture 1. CPS104: Computer Organization. Meat of the Course. Robert Wagner CPS104 Computer Organization Lecture 1 Robert Wagner Slides available on: http://www.cs.duke.edu/~raw/cps104/lectures 1 CPS104: Computer Organization Instructor: Robert Wagner Office: LSRC D336, 660-6536

More information

Next Generation Technology from Intel Intel Pentium 4 Processor

Next Generation Technology from Intel Intel Pentium 4 Processor Next Generation Technology from Intel Intel Pentium 4 Processor 1 The Intel Pentium 4 Processor Platform Intel s highest performance processor for desktop PCs Targeted at consumer enthusiasts and business

More information

CISC 360. Computer Architecture. Seth Morecraft Course Web Site:

CISC 360. Computer Architecture. Seth Morecraft Course Web Site: CISC 360 Computer Architecture Seth Morecraft (morecraf@udel.edu) Course Web Site: http://www.eecis.udel.edu/~morecraf/cisc360 Overview Intro to Computer Architecture About the Course Organization

More information

Basic Computer Architecture

Basic Computer Architecture Basic Computer Architecture CSCE 496/896: Embedded Systems Witawas Srisa-an Review of Computer Architecture Credit: Most of the slides are made by Prof. Wayne Wolf who is the author of the textbook. I

More information

ECE 571 Advanced Microprocessor-Based Design Lecture 4

ECE 571 Advanced Microprocessor-Based Design Lecture 4 ECE 571 Advanced Microprocessor-Based Design Lecture 4 Vince Weaver http://www.eece.maine.edu/~vweaver vincent.weaver@maine.edu 28 January 2016 Homework #1 was due Announcements Homework #2 will be posted

More information

Math 230 Assembly Programming (AKA Computer Organization) Spring MIPS Intro

Math 230 Assembly Programming (AKA Computer Organization) Spring MIPS Intro Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 MIPS Intro Adapted from slides developed for: Mary J. Irwin PSU CSE331 Dave Patterson s UCB CS152 M230 L09.1 Smith Spring 2008 MIPS

More information

EC 413 Computer Organization

EC 413 Computer Organization EC 413 Computer Organization Review I Prof. Michel A. Kinsy Computing: The Art of Abstraction Application Algorithm Programming Language Operating System/Virtual Machine Instruction Set Architecture (ISA)

More information

CPS104 Computer Organization Lecture 1

CPS104 Computer Organization Lecture 1 CPS104 Computer Organization Lecture 1 Robert Wagner Slides available on: http://www.cs.duke.edu/~raw/cps104/lectures 1 CPS104: Computer Organization Instructor: Robert Wagner Office: LSRC D336, 660-6536

More information

EC 513 Computer Architecture

EC 513 Computer Architecture EC 513 Computer Architecture Complex Pipelining: Superscalar Prof. Michel A. Kinsy Summary Concepts Von Neumann architecture = stored-program computer architecture Self-Modifying Code Princeton architecture

More information

General Purpose Processors

General Purpose Processors Calcolatori Elettronici e Sistemi Operativi Specifications Device that executes a program General Purpose Processors Program list of instructions Instructions are stored in an external memory Stored program

More information

Lecture 4: RISC Computers

Lecture 4: RISC Computers Lecture 4: RISC Computers Introduction Program execution features RISC characteristics RISC vs. CICS Zebo Peng, IDA, LiTH 1 Introduction Reduced Instruction Set Computer (RISC) represents an important

More information

NISC Application and Advantages

NISC Application and Advantages NISC Application and Advantages Daniel D. Gajski Mehrdad Reshadi Center for Embedded Computer Systems University of California, Irvine Irvine, CA 92697-3425, USA {gajski, reshadi}@cecs.uci.edu CECS Technical

More information

Hardware Design I Chap. 10 Design of microprocessor

Hardware Design I Chap. 10 Design of microprocessor Hardware Design I Chap. 0 Design of microprocessor E-mail: shimada@is.naist.jp Outline What is microprocessor? Microprocessor from sequential machine viewpoint Microprocessor and Neumann computer Memory

More information

SA-1500: A 300 MHz RISC CPU with Attached Media Processor*

SA-1500: A 300 MHz RISC CPU with Attached Media Processor* and Bridges Division SA-1500: A 300 MHz RISC CPU with Attached Media Processor* Prashant P. Gandhi, Ph.D. and Bridges Division Computing Enhancement Group Intel Corporation Santa Clara, CA 95052 Prashant.Gandhi@intel.com

More information

Chapter 2 Logic Gates and Introduction to Computer Architecture

Chapter 2 Logic Gates and Introduction to Computer Architecture Chapter 2 Logic Gates and Introduction to Computer Architecture 2.1 Introduction The basic components of an Integrated Circuit (IC) is logic gates which made of transistors, in digital system there are

More information

Chapter 06: Instruction Pipelining and Parallel Processing. Lesson 14: Example of the Pipelined CISC and RISC Processors

Chapter 06: Instruction Pipelining and Parallel Processing. Lesson 14: Example of the Pipelined CISC and RISC Processors Chapter 06: Instruction Pipelining and Parallel Processing Lesson 14: Example of the Pipelined CISC and RISC Processors 1 Objective To understand pipelines and parallel pipelines in CISC and RISC Processors

More information

REAL TIME DIGITAL SIGNAL PROCESSING

REAL TIME DIGITAL SIGNAL PROCESSING REAL TIME DIGITAL SIGNAL PROCESSING UTN - FRBA 2011 www.electron.frba.utn.edu.ar/dplab Introduction Why Digital? A brief comparison with analog. Advantages Flexibility. Easily modifiable and upgradeable.

More information

In this tutorial, we will discuss the architecture, pin diagram and other key concepts of microprocessors.

In this tutorial, we will discuss the architecture, pin diagram and other key concepts of microprocessors. About the Tutorial A microprocessor is a controlling unit of a micro-computer, fabricated on a small chip capable of performing Arithmetic Logical Unit (ALU) operations and communicating with the other

More information

3.1 Description of Microprocessor. 3.2 History of Microprocessor

3.1 Description of Microprocessor. 3.2 History of Microprocessor 3.0 MAIN CONTENT 3.1 Description of Microprocessor The brain or engine of the PC is the processor (sometimes called microprocessor), or central processing unit (CPU). The CPU performs the system s calculating

More information

Media Instructions, Coprocessors, and Hardware Accelerators. Overview

Media Instructions, Coprocessors, and Hardware Accelerators. Overview Media Instructions, Coprocessors, and Hardware Accelerators Steven P. Smith SoC Design EE382V Fall 2009 EE382 System-on-Chip Design Coprocessors, etc. SPS-1 University of Texas at Austin Overview SoCs

More information

Computer System Architecture

Computer System Architecture CSC 203 1.5 Computer System Architecture Department of Statistics and Computer Science University of Sri Jayewardenepura Instruction Set Architecture (ISA) Level 2 Introduction 3 Instruction Set Architecture

More information

Chapter 2. OS Overview

Chapter 2. OS Overview Operating System Chapter 2. OS Overview Lynn Choi School of Electrical Engineering Class Information Lecturer Prof. Lynn Choi, School of Electrical Eng. Phone: 3290-3249, Kong-Hak-Kwan 411, lchoi@korea.ac.kr,

More information

Intel s MMX. Why MMX?

Intel s MMX. Why MMX? Intel s MMX Dr. Richard Enbody CSE 820 Why MMX? Make the Common Case Fast Multimedia and Communication consume significant computing resources. Providing specific hardware support makes sense. 1 Goals

More information

CS 101, Mock Computer Architecture

CS 101, Mock Computer Architecture CS 101, Mock Computer Architecture Computer organization and architecture refers to the actual hardware used to construct the computer, and the way that the hardware operates both physically and logically

More information

Embedded Systems. 7. System Components

Embedded Systems. 7. System Components Embedded Systems 7. System Components Lothar Thiele 7-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic

More information

Real instruction set architectures. Part 2: a representative sample

Real instruction set architectures. Part 2: a representative sample Real instruction set architectures Part 2: a representative sample Some historical architectures VAX: Digital s line of midsize computers, dominant in academia in the 70s and 80s Characteristics: Variable-length

More information

Computer Architecture

Computer Architecture Computer Architecture Lecture 3: ISA Tradeoffs Dr. Ahmed Sallam Suez Canal University Based on original slides by Prof. Onur Mutlu Application Space Dream, and they will appear 2 Design Point A set of

More information

Materials: 1. Projectable Version of Diagrams 2. MIPS Simulation 3. Code for Lab 5 - part 1 to demonstrate using microprogramming

Materials: 1. Projectable Version of Diagrams 2. MIPS Simulation 3. Code for Lab 5 - part 1 to demonstrate using microprogramming CS311 Lecture: CPU Control: Hardwired control and Microprogrammed Control Last revised October 18, 2007 Objectives: 1. To explain the concept of a control word 2. To show how control words can be generated

More information

Instruction Set Architecture (ISA)

Instruction Set Architecture (ISA) Instruction Set Architecture (ISA)... the attributes of a [computing] system as seen by the programmer, i.e. the conceptual structure and functional behavior, as distinct from the organization of the data

More information

Computer Architecture

Computer Architecture Computer Architecture Slide Sets WS 2013/2014 Prof. Dr. Uwe Brinkschulte M.Sc. Benjamin Betting Part 3 Fundamentals in Computer Architecture Computer Architecture Part 3 page 1 of 55 Prof. Dr. Uwe Brinkschulte,

More information

ENGN1640: Design of Computing Systems Topic 06: Advanced Processor Design

ENGN1640: Design of Computing Systems Topic 06: Advanced Processor Design ENGN1640: Design of Computing Systems Topic 06: Advanced Processor Design Professor Sherief Reda http://scale.engin.brown.edu Electrical Sciences and Computer Engineering School of Engineering Brown University

More information

Several Common Compiler Strategies. Instruction scheduling Loop unrolling Static Branch Prediction Software Pipelining

Several Common Compiler Strategies. Instruction scheduling Loop unrolling Static Branch Prediction Software Pipelining Several Common Compiler Strategies Instruction scheduling Loop unrolling Static Branch Prediction Software Pipelining Basic Instruction Scheduling Reschedule the order of the instructions to reduce the

More information

EMBEDDED SYSTEM BASICS AND APPLICATION

EMBEDDED SYSTEM BASICS AND APPLICATION EMBEDDED SYSTEM BASICS AND APPLICATION Dr.Syed Ajmal IIT- Robotics TOPICS TO BE DISCUSSED System Embedded System Components Classifications Processors Other Hardware Software Applications 2 INTRODUCTION

More information

EE382V: System-on-a-Chip (SoC) Design

EE382V: System-on-a-Chip (SoC) Design EE382V: System-on-a-Chip (SoC) Design Lecture 10 Task Partitioning Sources: Prof. Margarida Jacome, UT Austin Prof. Lothar Thiele, ETH Zürich Andreas Gerstlauer Electrical and Computer Engineering University

More information

04 - DSP Architecture and Microarchitecture

04 - DSP Architecture and Microarchitecture September 11, 2015 Memory indirect addressing (continued from last lecture) ; Reality check: Data hazards! ; Assembler code v3: repeat 256,endloop load r0,dm1[dm0[ptr0++]] store DM0[ptr1++],r0 endloop:

More information

Embedded Computation

Embedded Computation Embedded Computation What is an Embedded Processor? Any device that includes a programmable computer, but is not itself a general-purpose computer [W. Wolf, 2000]. Commonly found in cell phones, automobiles,

More information

The Processor: Instruction-Level Parallelism

The Processor: Instruction-Level Parallelism The Processor: Instruction-Level Parallelism Computer Organization Architectures for Embedded Computing Tuesday 21 October 14 Many slides adapted from: Computer Organization and Design, Patterson & Hennessy

More information

COE608: Computer Organization and Architecture

COE608: Computer Organization and Architecture Add on Instruction Set Architecture COE608: Computer Organization and Architecture Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrical and Computer Engineering Ryerson University Overview More

More information

ELC4438: Embedded System Design Embedded Processor

ELC4438: Embedded System Design Embedded Processor ELC4438: Embedded System Design Embedded Processor Liang Dong Electrical and Computer Engineering Baylor University 1. Processor Architecture General PC Von Neumann Architecture a.k.a. Princeton Architecture

More information

Lecture Topics. Announcements. Today: The MIPS ISA (P&H ) Next: continued. Milestone #1 (due 1/26) Milestone #2 (due 2/2)

Lecture Topics. Announcements. Today: The MIPS ISA (P&H ) Next: continued. Milestone #1 (due 1/26) Milestone #2 (due 2/2) Lecture Topics Today: The MIPS ISA (P&H 2.1-2.14) Next: continued 1 Announcements Milestone #1 (due 1/26) Milestone #2 (due 2/2) Milestone #3 (due 2/9) 2 1 Evolution of Computing Machinery To understand

More information

Lecture 4: Instruction Set Architecture

Lecture 4: Instruction Set Architecture Lecture 4: Instruction Set Architecture ISA types, register usage, memory addressing, endian and alignment, quantitative evaluation Reading: Textbook (5 th edition) Appendix A Appendix B (4 th edition)

More information

Computer Architecture

Computer Architecture Computer Architecture Mehran Rezaei m.rezaei@eng.ui.ac.ir Welcome Office Hours: TBA Office: Eng-Building, Last Floor, Room 344 Tel: 0313 793 4533 Course Web Site: eng.ui.ac.ir/~m.rezaei/architecture/index.html

More information

INTEL Architectures GOPALAKRISHNAN IYER FALL 2009 ELEC : Computer Architecture and Design

INTEL Architectures GOPALAKRISHNAN IYER FALL 2009 ELEC : Computer Architecture and Design INTEL Architectures GOPALAKRISHNAN IYER FALL 2009 GBI0001@AUBURN.EDU ELEC 6200-001: Computer Architecture and Design Silicon Technology Moore s law Moore's Law describes a long-term trend in the history

More information

IA-32 Architecture COE 205. Computer Organization and Assembly Language. Computer Engineering Department

IA-32 Architecture COE 205. Computer Organization and Assembly Language. Computer Engineering Department IA-32 Architecture COE 205 Computer Organization and Assembly Language Computer Engineering Department King Fahd University of Petroleum and Minerals Presentation Outline Basic Computer Organization Intel

More information

Choosing a Micro for an Embedded System Application

Choosing a Micro for an Embedded System Application Choosing a Micro for an Embedded System Application Dr. Manuel Jiménez DSP Slides: Luis Francisco UPRM - Spring 2010 Outline MCU Vs. CPU Vs. DSP Selection Factors Embedded Peripherals Sample Architectures

More information

ASSEMBLY LANGUAGE MACHINE ORGANIZATION

ASSEMBLY LANGUAGE MACHINE ORGANIZATION ASSEMBLY LANGUAGE MACHINE ORGANIZATION CHAPTER 3 1 Sub-topics The topic will cover: Microprocessor architecture CPU processing methods Pipelining Superscalar RISC Multiprocessing Instruction Cycle Instruction

More information

Computer Architecture

Computer Architecture Computer Architecture Lecture 3: ISA Tradeoffs Dr. Ahmed Sallam Suez Canal University Spring 2015 Based on original slides by Prof. Onur Mutlu Design Point A set of design considerations and their importance

More information

Hardware/Software Codesign

Hardware/Software Codesign Hardware/Software Codesign SS 2016 Prof. Dr. Christian Plessl High-Performance IT Systems group University of Paderborn Version 2.2.0 2016-04-08 how to design a "digital TV set top box" Motivating Example

More information

Chapter 4. Chapter 4 Objectives

Chapter 4. Chapter 4 Objectives Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.

More information

Embedded Systems. 8. Hardware Components. Lothar Thiele. Computer Engineering and Networks Laboratory

Embedded Systems. 8. Hardware Components. Lothar Thiele. Computer Engineering and Networks Laboratory Embedded Systems 8. Hardware Components Lothar Thiele Computer Engineering and Networks Laboratory Do you Remember? 8 2 8 3 High Level Physical View 8 4 High Level Physical View 8 5 Implementation Alternatives

More information

Lecture 8: RISC & Parallel Computers. Parallel computers

Lecture 8: RISC & Parallel Computers. Parallel computers Lecture 8: RISC & Parallel Computers RISC vs CISC computers Parallel computers Final remarks Zebo Peng, IDA, LiTH 1 Introduction Reduced Instruction Set Computer (RISC) is an important innovation in computer

More information

Inside Intel Core Microarchitecture By Gabriel Torres on April 12, 2006 Page 1 of 7

Inside Intel Core Microarchitecture By Gabriel Torres on April 12, 2006 Page 1 of 7 http://www.hardwaresecrets.com/printpage/313/1 31-10-2007 18:21 1 of 1 By Gabriel Torres on April 12, 2006 Page 1 of 7 AMD Athlon Black Edition Dual-core 5000+ Premium Performance Great Value. Do you Dare?

More information

Final Lecture. A few minutes to wrap up and add some perspective

Final Lecture. A few minutes to wrap up and add some perspective Final Lecture A few minutes to wrap up and add some perspective 1 2 Instant replay The quarter was split into roughly three parts and a coda. The 1st part covered instruction set architectures the connection

More information

55:132/22C:160, HPCA Spring 2011

55:132/22C:160, HPCA Spring 2011 55:132/22C:160, HPCA Spring 2011 Second Lecture Slide Set Instruction Set Architecture Instruction Set Architecture ISA, the boundary between software and hardware Specifies the logical machine that is

More information

SWAR: MMX, SSE, SSE 2 Multiplatform Programming

SWAR: MMX, SSE, SSE 2 Multiplatform Programming SWAR: MMX, SSE, SSE 2 Multiplatform Programming Relatore: dott. Matteo Roffilli roffilli@csr.unibo.it 1 What s SWAR? SWAR = SIMD Within A Register SIMD = Single Instruction Multiple Data MMX,SSE,SSE2,Power3DNow

More information