New Advances in Micro-Processors and computer architectures

Similar documents
Evolution of ISAs. Instruction set architectures have changed over computer generations with changes in the

Microprocessor Architecture Dr. Charles Kim Howard University

CISC Attributes. E.g. Pentium is considered a modern CISC processor

Typical Processor Execution Cycle

Introduction to Microprocessor

Chapter 13 Reduced Instruction Set Computers

Reduced Instruction Set Computer

ARSITEKTUR SISTEM KOMPUTER. Wayan Suparta, PhD 17 April 2018

Evolution of Computers & Microprocessors. Dr. Cahit Karakuş

Chapter 2 Lecture 1 Computer Systems Organization

CPE/EE 421 Microcomputers

Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model

Alex Milenkovich 1. CPE/EE 421 Microcomputers. CPE/EE 421 Microcomputers U A H U A H U A H. Instructor: Dr Aleksandar Milenkovic Lecture Notes S01

SYSTEM BUS AND MOCROPROCESSORS HISTORY

RISC & Superscalar. COMP 212 Computer Organization & Architecture. COMP 212 Fall Lecture 12. Instruction Pipeline no hazard.

Introduction to Microcontrollers

CS 5803 Introduction to High Performance Computer Architecture: RISC vs. CISC. A.R. Hurson 323 Computer Science Building, Missouri S&T

Instruction Set Architectures. Part 1

Chapter 2: Instructions How we talk to the computer

Computer Architecture Dr. Charles Kim Howard University

CS Computer Architecture

Lecture 4: RISC Computers

Computer Architecture

From CISC to RISC. CISC Creates the Anti CISC Revolution. RISC "Philosophy" CISC Limitations

William Stallings Computer Organization and Architecture. Chapter 12 Reduced Instruction Set Computers

Lecture 4: RISC Computers

CISC / RISC. Complex / Reduced Instruction Set Computers

Alex Milenkovich 1 CPE 323. CPE 323 Introduction to Embedded Computer Systems: Introduction. Instructor: Dr Aleksandar Milenkovic Lecture Notes

Von Neumann architecture. The first computers used a single fixed program (like a numeric calculator).

ASSEMBLY LANGUAGE MACHINE ORGANIZATION

Chapter 5:: Target Machine Architecture (cont.)

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

PREPARED BY S.RAVINDRAKUMAR, SENIOR ASSISTANT PROFESSOR/ECE,CHETTINAD COLLEGE OF ENGINEERING AND TECHNOLOGY Page 1

Computer Architecture!


RISC, CISC, and ISA Variations

EKT 303 WEEK Pearson Education, Inc., Hoboken, NJ. All rights reserved.

Chapter 1: Introduction to the Microprocessor and Computer 1 1 A HISTORICAL BACKGROUND

Instruction Set Principles and Examples. Appendix B

ECE232: Hardware Organization and Design

HP PA-8000 RISC CPU. A High Performance Out-of-Order Processor

Cycles Per Instruction For This Microprocessor

RISC Processors and Parallel Processing. Section and 3.3.6

Computer System Architecture

CHAPTER 5 A Closer Look at Instruction Set Architectures

Chapter 2 Logic Gates and Introduction to Computer Architecture

Overview. EE 4504 Computer Organization. This section. Items to be discussed. Section 9 RISC Architectures. Reading: Text, Chapter 12

Figure 1-1. A multilevel machine.

These actions may use different parts of the CPU. Pipelining is when the parts run simultaneously on different instructions.

CSEE 3827: Fundamentals of Computer Systems

Modern Computer Architecture (Processor Design) Prof. Dan Connors

1DT157 Digitalteknik och datorarkitekt. Digital technology and computer architecture, 5p

General Purpose Processors

Hakim Weatherspoon CS 3410 Computer Science Cornell University

CN310 Microprocessor Systems Design

A Comparison of Microprocessor Architectures

Computer Architecture

SAE5C Computer Organization and Architecture. Unit : I - V

EECE416 :Microcomputer Fundamentals and Design ( Microcomputer & Microprocessor ) COMPUTER HISTORY

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

The Single Cycle Processor

COMPUTER STRUCTURE AND ORGANIZATION

IT 252 Computer Organization and Architecture. Introduction. Chia-Chi Teng

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

Chapter 1. Introduction To Computer Systems

ELC4438: Embedded System Design Embedded Processor

COMPUTER ORGANIZATION & ARCHITECTURE

Performance Characteristics. i960 CA SuperScalar Microprocessor

Real instruction set architectures. Part 2: a representative sample

Memory Systems IRAM. Principle of IRAM

How What When Why CSC3501 FALL07 CSC3501 FALL07. Louisiana State University 1- Introduction - 1. Louisiana State University 1- Introduction - 2

Basic Concepts COE 205. Computer Organization and Assembly Language Dr. Aiman El-Maleh

Modern Computer Architecture

Lecture 3 Machine Language. Instructions: Instruction Execution cycle. Speaking computer before voice recognition interfaces

1. Microprocessor Architectures. 1.1 Intel 1.2 Motorola

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

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

EECE416 :Microcomputer Fundamentals and Design ( Microcomputer & Microprocessor ) COMPUTER HISTORY. Computers and Microprocessors

CHAPTER 5 A Closer Look at Instruction Set Architectures

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

Computer Architecture

Computer Systems Architecture

Lecture 9: More ILP. Today: limits of ILP, case studies, boosting ILP (Sections )

1.3 Data processing; data storage; data movement; and control.

Chapter 4. The Processor

4. Hardware Platform: Real-Time Requirements

Advanced Computer Architecture

This course provides an overview of the SH-2 32-bit RISC CPU core used in the popular SH-2 series microcontrollers

CPE300: Digital System Architecture and Design

ELCT 912: Advanced Embedded Systems

ECE 341. Lecture # 15

Computer Architecture

Instruction Set Architecture (ISA)

Computer Organization

Topics/Assignments. Class 10: Big Picture. What s Coming Next? Perspectives. So Far Mostly Programmer Perspective. Where are We? Where are We Going?

Multiple Instruction Issue. Superscalars

Page 1. Structure of von Nuemann machine. Instruction Set - the type of Instructions

MIPS16: High-density MIPS for the Embedded Market 1. Kevin D. KISSELL Silicon Graphics MIPS Group

Processing Unit CS206T

Advanced issues in pipelining

Transcription:

New Advances in Micro-Processors and computer architectures Prof. (Dr.) K.R. Chowdhary, Director SETG Email: kr.chowdhary@jietjodhpur.com Jodhpur Institute of Engineering and Technology, SETG August 27, 2015 kr chowdhary Microprocessors 1/ 23

Micro-processors Evolved from Transistors and ICs Icon of the Informations Age Used in fastest computers to simple electronics toys Well over 1 billion transistors in a micro-processor. kr chowdhary Microprocessors 2/ 23

Earliest applications µp has pushed the technology of today Desire for every increasing performance led to rapid improvement in technology This enabled more complex micro-processors, fabrication processes, design methodology Earliest MPs filled the needs of embedded applications The history of µps can be divided into five stages: 1 The birth of the microprocessor, 2 The first microcomputers, 3 A leading role for the microprocessor, 4 The promise of reduced instruction set computer (RISC), and 5 Microprocessors after yr 2000. kr chowdhary Microprocessors 3/ 23

The birth of the microprocessor 4004 - first commercially available microprocessor In 1968, Moore and Noyce left Fairchild to form Intel Corporation. Intel s history was forever changed by the development of the 4004 for the Busicom calculator company (1971) 8008, 200 khz, 60,000 instructions / sec, 3,500 transistors, 14-bit address, Dec. 1971 kr chowdhary Microprocessors 4/ 23

4004 The chip set consisted of four chip types: the 4001 ROM, the 4002 random access memory (RAM) register memory, the 4003 I/O shift register, and 4004 central processing unit (CPU). kr chowdhary Microprocessors 5/ 23

8080: 1972, 6800: 1974 8080: More instructions, 64 K address bus, 8-bit IO 8080: 6000 transistors, 6800: 4000 Transistors Z80: outperformed 080 8086, 68000 8086: Supported wide variety of 8-bit peripheral 68000: it did not IBM got right to manufacture 8086, hence used in PCs kr chowdhary Microprocessors 6/ 23

Software for a New Industry It was not MS-DOS, but unix and C led the advancement of next gen. micro-processors 1981: IBM brought PC with 8088, 64K RAM 1984: PC with GUI, using 68000 Early in 1980 C, UNIX gave rise to a new architecture: RISC kr chowdhary Microprocessors 7/ 23

16-bit, 32-bit, and early RISC MP Need to be compatible with 8-bit softwares extending memory beyond 64 k 8086 supported pipeline of instructions Each segment of 16K, 16 segments 68000: Fetched one more 16-bit words, 32-bit addr and data registers 68010: Support for virtual memory 68020: Pipe-line overlapped fetch and execute cycles On-chip 256 byte instruction cache kr chowdhary Microprocessors 8/ 23

Beginning of RISC Early 1980s: stage was set in academia for next phase of micro-processor evolution RISC movement began in reaction to the complexity of a minicomputer architecture (VAX from DEC) Unlike contemporary and earlier complex instruction set computer (CISC) processors, the RISC projects endorsed fixed-length, 32-bit instructions, no memory-to-memory instructions (RISC used a load/store architecture), kr chowdhary Microprocessors 9/ 23

Beginning of RISC... large, general-purpose register files, and pipelining. RISC projects formalized a fundamental performance metric for computer architectures: 1 The amount of CPU time required to execute a given task. 2 Expressed by: CPU time = instruction count x clock cycles per instruction (CPI) x clock cycle time. 3 A typical CISC had three or four, while RISCs approached the goal of achieving one cycle per instruction kr chowdhary Microprocessors 10/ 23

Beginning of RISC... The VAX, IBM 370, and other CISC architectures were characterized by a small subset of frequently used instructions, with many other instructions rarely used The project teams at Berkeley and Stanford extensively analyzed the instruction usage characteristics of compiled programs. They found that most applications had surprising commonality in their instruction execution and data access patterns kr chowdhary Microprocessors 11/ 23

Beginning of RISC... From this analysis, the Berkeley group designed RISC I and II based on a large register file, divided into overlapping windows for the stack frames used by the compiler. The RISC processors led in introducing pipelining in microprocessors, with a two-stage pipeline for RISC I and a three-stage pipeline for RISC II. The RISC I/II ideas found later commercial application in Sun s SPARC* architecture. kr chowdhary Microprocessors 12/ 23

Beginning of RISC... The Berkeley team recognized the need to tailor the architecture to the compiler and to tune the compiler to the needs of the hardware. The notion of using the compiler to address the problem of branch latency (branch delay slots) was used at both Berkeley and Stanford. These projects were among the first attempts to treat the compiler and microprocessor as a single system, trading hardware for compiler complexity. At Stanford, the microprocessor without interlocking pipe stages (MIPS) project took optimizing compiler technology further. kr chowdhary Microprocessors 13/ 23

The Promise of RISC first commercial RISC CPU (MIPS* R2000) in 1986. The workstation manufacturers abandoned Motorola 68K CPUs in favor of their own RISC CPUs. With the threat of RISC, even Intel and Motorola designed their own RISC processors, while continuing to supply their flagship CISC processors in increasing volumes to the cost-sensitive PC market, which required compatibility. The RISC processors, on the other hand, were targeted at the performance-oriented UNIX workstation market, where price was secondary. This set the stage for the battle between price and performance. kr chowdhary Microprocessors 14/ 23

Architectural Features Pipelines deepened from the simple overlap of fetch, decode, and execute stages (characteristic of the Intel 80386 and Motorola 68030 CPUs) to over five stages (typical of the RISC CPUs) (1.fetch, 2.decode & read reg. file, 3.execute of calcu. addr., 4.load/store operands, 5.write register file). Data and instruction caches were incorporated on chip, along with memory management and cache-control functions. FPUs were also integrated by the late 1980s. The push to integrate was more pronounced in the CISC processors. kr chowdhary Microprocessors 15/ 23

Architectural Features... The RISC CPUs, which attempted to execute one instruction per cycle, relied on large, fast caches. All these architectural features were enabled by the predictable advance of IC technology. For example, the number of transistors increased from 275K in the Intel 80386DX to 1.2M in the Intel 80486DX. kr chowdhary Microprocessors 16/ 23

Architectural Features The Intel 80386 and the Motorola 68030 (introduced in 1987) were considered to be second-generation CISC processors with limited pipelining. The 80386 provided a fully binary-compatible upgrade to Intel s first-generation processors (the 8086, 80186, and 80286). The new base+index+displacement addressing mode allowed the full 32-bit memory space to be easily addressed, a great improvement over the 64-KB segment limitation of the previous generation. Internally, it had a Harvard architecture (separate buses for fetching data and instructions) with separate 256-byte caches. Both the 80386 and the 68030 had three-stage pipelines and were clocked at 20 MHz. kr chowdhary Microprocessors 17/ 23

RISC CPUs The new commercial RISC CPUs were similar to the design established by Berkeley RISC and Stanford MIPS. Instructions are all 32 bits wide. Register files typically had thirty-two 32-bit general-purpose registers. The opcodes provided only the basic instructions. The only instructions that accessed memory and the memory-mapped I/O space were load and store instructions, hence the name load/store architecture. Memory was addressed by register plus displacement or register plus register. kr chowdhary Microprocessors 18/ 23

RISC CPUs... The number of addressing modes was fewer than previous CISC CPUs and few data types were supported. The typical RISC CPU had a five-stage pipeline. Each stage of the pipeline performed its processing in one clock, taking inputs, stored in registers, from the previous stage and storing its results in registers to be processed by the next stage. In the absence of branches, assuming all instructions and data were in cache, and all instructions took only one clock to execute, the pipeline remained full and proceeded without stalling, yielding an ideal CPI of one. kr chowdhary Microprocessors 19/ 23

RISC CPUs... Note that the goal of the processor designer and compiler writer is to prevent stalls as much as possible. Decoding was also simplified compared to the CISC CPUs, by having fewer opcodes and eliminating complex instructions. Sun Microsystems developed the SPARC architecture based on Berkeley RISC for its own workstations The unique feature of SPARC was the windowed register file, which reduced memory traffic caused by saving and restoring registers on procedure calls. Many others as RISC: Alpha (DEC), HP, MIPS, SUN. kr chowdhary Microprocessors 20/ 23

Future Directions The expected performance enhancements delivered by microprocessors may slow down in the future because of problems associated with IC technology, computer architecture, and market forces. The shrinking line widths of the next-generation ICs will require new lithographic techniques to draw finer lines. Thus far, the intrinsic delay of the transistor itself has been reduced to enable commensurate increases in clock speed. kr chowdhary Microprocessors 21/ 23

Future Directions Limitations in exploiting parallelism must also be overcome. Applications need to be written in a manner that exposes more parallelism. This is already under way with multi-threading. Advances in compilers will find parallelism across larger sections of a program than previously possible. Due to limitation of further increase in clock rate, multi-core processors arrived, to realize the parallelism. However, the software development lacked: no parallel programming languages, no parallel compilers, hence the resource utilization lacked! kr chowdhary Microprocessors 22/ 23

Future Directions Future lies with multi-cores, and parallel compilers, parallel programming languages. C to CETUS source-to-source compilers. C to Cuda compilers kr chowdhary Microprocessors 23/ 23

Some Questions How to implement calls without stack? What is difference between Hardwired and Micro-controlled control design? Why parallel programming is important? What is (DDM) Data driven multi-threading? What is language for hardware design? What is branch prediction? What is cache coherence? Simulators for teaching architectures: gnusim8085, pdp8 simulator, kr chowdhary Microprocessors 24/ 23