Presentation is loading. Please wait.

Presentation is loading. Please wait.

DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.

Similar presentations


Presentation on theme: "DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization."— Presentation transcript:

1 DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization

2 Session 1 – Course Contents Overview  Overview of computer technologies  Instruction set architecture (ISA)  ISA design considerations  RISC vs CISC  Performance evaluation Assembly and machine language  Instructions, Register  Flow of control, Addressing mode Computer Arithmetic  Number presentation  Addition, subtraction, multiplication, and division Processor  Arithmetic logic unit (ALU)  Floating-point numbers and their arithmetic implementation  Pipelining, Hazards, Pipelined processor design Memory  Hierarchy, principles, structure, and performance of caches Storage, I/O, and Parallel

3 Introduction This course is all about how computers work But what do we mean by a computer?  Different types: desktop, servers, embedded devices  Different uses: automobile, graphics, finance  Different manufacturers: Intel, AMD, Apple, IBM, HP, Dell,…  Different underlying technologies and different costs Best way to learn:  Focus on a specific instance and learn how it works  While learning general principles and historical perspectives

4 Why learn computer organization? You want to call yourself a “computer engineer” You want to build software people use (performance) You need to make a purchasing decision Both Hardware and Software affect performance  Algorithm determines number of source level statements  Language/Compiler/Architecture determine machine instructions  Chapter 2, 3  Processor/Memory determine how fast instructions are executed  Chapter 4, 5  I/O and multiple cores determine overall system performance  Chapter 6, 7

5 Organization of a Computer Five classic components  Control  Datapath  Memory  Input  Output The BIG Picture

6 What is a computer? Components:  Input (mouse, keyboard)  Output (monitor, printer)  Memory (DRAM, SRAM, Disk Drives, DVD)  Processor Our primary focus: the processor (datapath and control)  Implemented using billions of transistors  Impossible to understand by looking at each transistor  We need … Abstraction! An abstraction omits unneeded detail, helps us cope with complexity.

7 How do computers work? Need to understand abstractions such as:  Application software  System software  Assembly language  Machine language  Architectural issues  Arithmetic, logic  Boolean logic, 1 and 0  Transistors used to build logic gate  Semiconductors/Silicon used to build transistors  Properties of atoms and electrons So much to learn!

8 Computer Architecture Instruction Set Architecture Application Operation System Compiler ProcessorI/O System Logic Design Circuit Design Layout Computer Architecture Hardware Implementation Memory Assembler

9 Instruction Set: a Critical Interface instruction set software hardware

10 Instruction Set Architecture (ISA) ISA – the abstract interface between the hardware and the lowest level software that encompasses all the information necessary to write a machine language program, including instructions, registers, memory access, I/O.  Enables implementations of varying cost and performance to run identical software

11 Instruction Set Architecture “... 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 flows and controls, the logic design, and the physical implementation.” – Amdahl, Blaauw, and Brooks, 1964SOFTWARE ISA includes  Organization of storage  Data types  Encoding and representing instructions  Instruction Set  Modes of addressing data items  Program visible exception handling

12 Instruction Set Architecture A very important abstraction  Interface between hardware and low-level software  Standardizes instructions, machine language  Advantage: different implementations of the same architecture  Disadvantage: sometimes prevents using new innovations Common instruction set architectures:  x86, PowerPC, MIPS, SPARC, ARM and others

13 Case Study: MIPS ISA Instruction Categories  Load/Store  Arithmetic  Jump and Branch  Floating Point  Memory Management  Special R0 - R31 PC Hi Lo OPrsrtrdsafunctOPrsrtimmediateOPJump target 3 Instruction types, 32 bits wide


Download ppt "DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization."

Similar presentations


Ads by Google