CMSC 132- 1 Computer Architecture.pdf

Full Transcript

CMSC 132: Computer Architecture Computer Architecture Reginald Neil C. Recario {[email protected]} Institute of Computer Science University of the Philippines Los Baños Outline The UPLB ICS Course Ladder for CMSC 132 Computer Architecture in a nutshell A C...

CMSC 132: Computer Architecture Computer Architecture Reginald Neil C. Recario {[email protected]} Institute of Computer Science University of the Philippines Los Baños Outline The UPLB ICS Course Ladder for CMSC 132 Computer Architecture in a nutshell A Crash Course in Computer History What is Computer Architecture? 2 Outline What is Instruction Set Architecture /ISA? The Von Neumann Architecture References 3 Learning Outcomes At the end of the topic discussion, the student will be able to: Explain the relevance of CMSC 132 as a required course in BSCS Define what Computer Architecture is Define what Instruction Set Architecture (ISA) is Enumerate the dimensions of ISA Explain each of the dimensions of ISA Explain the Von Neumann Architecture The UPLB ICS Course Ladder for CMSC 132 5 The UPLB ICS Course Ladder for CMSC 132 CMSC 123 Stacks, Queues, Stacks, Queues, Hash tables, Hash etc. etc. tables, The UPLB ICS Course Ladder for CMSC 132 CMSC CMSC 123 130 Combinational circuits, Sequential circuits, etc. The UPLB ICS Course Ladder for CMSC 132 CMSC CMSC CMSC 123 130 131 Stacks, Queues, Assembly programming, Hash tables, etc. Microinstructions, etc. The UPLB ICS Course Ladder for CMSC 132 CMSC CMSC CMSC CMSC 123 130 131 132 Stacks, Queues, You are currently Hash tables, etc. taking this The UPLB ICS Course Ladder for CMSC 132 CMSC CMSC CMSC CMSC 123 130 131 132 Stacks, Queues, Hash tables, etc. 123 + 130 + 131 + everything 132 Computer Architecture in a nutshell 11 Computer Architecture in a Nutshell Any sophisticated application Physics Computer Architecture in a Nutshell DotA Any sophisticated application Electric signals Physics Computer Architecture in a Nutshell DotA Any sophisticated application Some layers of abstraction Electric signals Physics Computer Architecture in a Nutshell Some concerns: How are commands/instructions represented? Computer Architecture in a Nutshell Some concerns: What commands/instructions are included? Computer Architecture in a Nutshell Some concerns: How much memory is needed? Computer Architecture in a Nutshell Some concerns: What is the priority: speed, efficiency or cost? Computer Architecture in a Nutshell ALL OF THESE ARE CONCERNS WE WILL TALK IN THIS COURSE! We formally welcome you to CMSC 132! ☺ A Crash Course in Computer History 20 A Crash Course in Computer History Electronic computers as we know them today began in around 1940’s -1950s Source: https://upload.wikimedia.org/wikipedia/commons/thumb/6/6c/ENIAC_Penn1.jpg/220px-ENIAC_Penn1.jpg A Crash Course in Computer History Electronic computers as we know them today began in around 1940’s -1950s ENIAC, anyone? Source: https://upload.wikimedia.org/wikipedia/commons/thumb/6/6c/ENIAC_Penn1.jpg/220px-ENIAC_Penn1.jpg A Crash Course in Computer History ◉Computers were done for some specific purpose contrary to a general purpose computer we understand today. ◉Decrypting/Encrypting messages ◉Numeric computing ◉Business computation A Crash Course in Computer History ◉“Controlling” electric currents from “least” to “most” fashionable way Sources: http://www.parts-express.com/Data/Default/Images/Catalog/Original/072-820_HR_0.jpg http://www.bbc.co.uk/staticarchive/8dc8d062055afa560657abd7d9adfa986e85de81.gif https://upload.wikimedia.org/wikipedia/commons/9/97/Integrated_Circuit.jpg A Crash Course in Computer History Vacuum Tube A Crash Course in Computer History Transistor A Crash Course in Computer History Integrated Circuit A Crash Course in Computer History Vacuum Tube ◉Diodes, triodes, etc. ◉Vacuum tubes are (1) unreliable, (2) has high electric consumption, and (3) gives off too much heat A Crash Course in Computer History Transistor ◉less power consumption ◉smaller compared with vacuum tubes ◉greater reliability compared with vacuum tubes A Crash Course in Computer History Integrated Circuit ◉smaller and lighter compared with transistors ◉more reliable compared with transistors A Crash Course in Computer History According to our literature… 1960s – mainframes 1970s – minicomputers A Crash Course in Computer History 1980s – desktop computers 1990s – emergence of Internet and WWW, first successful handheld digital computing devices and high performance digital consumer electronics What is Computer Architecture? 33 What is Computer Architecture? ◉Coined by IBM in 1964 for the use with the IBM 360. Source: http://www-03.ibm.com/ibm/history/ibm100/images/icp/T114212C01873C04/us__en_us__ibm100__system_360__360genrl__620x350.jpg What is Computer Architecture? Used by Amdahl, Blaauw and Brooks used the term to refer to the programmer-visible portion of the instruction set. Machines with same architecture must be able to run the same software What is Computer Architecture? Defined architecture as “the structure of a computer that a machine language programmer must understand to write a correct (timing independent) program for that machine”. What is Computer Architecture? Those who design computers must be proficient in computer architecture. What is Computer Architecture? (1) Determine what attributes of a new computer are important What is Computer Architecture? (2) Design the computer to maximize efficiency and performance considering power, availability and cost What is Computer Architecture? (3) Define what instructions are supported, how much memory used, etc. (ISA) What is Instruction Set Architecture /ISA? 41 What is Instruction Set Architecture/ ISA? The “actual programmer-visible instruction set” What is Instruction Set Architecture/ ISA? Boundary between the hardware and the software More like an interface between the two Definition of memory mapping What is Instruction Set Architecture/ ISA? Defines what instructions can be understood by the processor What is Instruction Set Architecture/ ISA? Source: Daniel A. Jiménez. "CS 5513: Computer Architecture Lecture 1: Introduction". The University of Texas at San Antonio What is Instruction Set Architecture/ ISA? Properties of a good abstraction Lasts through many generations (portability) Used in many different ways (generality) Provides convenient functionality to higher levels Permits an efficient implementation at lower levels Source: Daniel A. Jiménez. "CS 5513: Computer Architecture Lecture 1: Introduction". The University of Texas at San Antonio What is Instruction Set Architecture/ ISA? Seven dimensions of ISA Class of ISA Memory addressing Addressing modes Types and sizes of operands Operations Control flow instruction Encoding an ISA What is Instruction Set Architecture/ ISA? Class of ISA General-purpose vs special-purpose register architectures Mostly general-purpose Example: 80x86 has 16 general-purpose registers and 16 that can hold floating point data What is Instruction Set Architecture/ ISA? Memory Addressing (1/2) Virtually all desktop and server computers, including the 80x86 and MIPS, use byte addressing to access memory operands What is Instruction Set Architecture/ ISA? Memory Addressing (2/2) Some (e.g., ARM, MIPS) require to be aligned. An access to an object of size s bytes at byte address A is aligned if A mod s = 0. Aligned operands are generally faster. What is Instruction Set Architecture/ ISA? Addressing Modes (1/2) Specify the address of a memory object, registers and constant operands Sample: Immediate, Register and Displacement What is Instruction Set Architecture/ ISA? Addressing Modes (2/2) Sample: Immediate (e.g., add R1, 5) Register (e.g., add R1, R2) Displacement (e.g., add R1, 100(R2)) What is Instruction Set Architecture/ ISA? Types and sizes of operands 8-bit (ASCII character), 16-bit (Unicode character or half word), 32-bit (integer or word), 64-bit (double word or long integer), and IEEE 754 floating point in 32-bit (single precision) and 64-bit (double precision). What is Instruction Set Architecture/ ISA? Operands The general categories of operations are data transfer, arithmetic, logical, control, and floating point. What is Instruction Set Architecture/ ISA? Control flow instructions support for conditional branches, unconditional jumps, procedure calls, and returns. Example: BE, BNE What is Instruction Set Architecture/ ISA? Encoding an ISA There are two basic choices on encoding: fixed length and variable length. Variable length instructions can take less space compared with fixed-length. The Von Neumann Architecture 57 The Von Neumann Architecture Proposed by John von Neumann American-Hungarian Design architecture for an electronic digital computer The Von Neumann Architecture Contains Central Processing Unit Memory Unit Storage I/O The Von Neumann Architecture Source: https://upload.wikimedia.org/wikipedia/commons/e/e5/Von_Neumann_Architecture.svg References 61 References Computer Architecture: A Quantitative Approach http://www.tomshardware.com/reviews/upgrade-repair- pc,3000-2.html

Use Quizgecko on...
Browser
Browser