Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


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

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

2 Organization Capabilities & performance characteristics of Principal Functional Units  (e.g. Registers, ALU, Shifters, Logic Units, …) Ways in which these components are interconnected Information flows between components Logic and means by which such information flow is controlled Choreography of FUs to realize the ISA Register Transfer Level (RTL) DescriptionSOFTWARE ISA Level FUs & Interconnect Logic Designer’s View

3 Function Units in a Computer

4 Chapter 1 — Computer Abstractions and Technology — 4 Opening the Box Capacitive multitouch LCD screen 3.8 V, 25 Watt-hour battery Computer board

5 Chapter 1 — Computer Abstractions and Technology — 5 Inside the Processor (CPU) Datapath: performs operations on data Control: sequences datapath, memory,... Cache memory  Small fast SRAM memory for immediate access to data

6 Inside the Processor Apple A5

7 Classes of Computers Desktop computers: Designed to deliver good performance to a single user at low cost usually executing 3 rd party software, usually incorporating a graphics display, a keyboard, and a mouse Servers: Used to run larger programs for multiple, simultaneous users typically accessed only via a network and that places a greater emphasis on dependability and (often) security Supercomputers: A high performance, high cost class of servers with hundreds to thousands of processors, terabytes of memory and petabytes of storage that are used for high-end scientific and engineering applications Embedded computers (processors): A computer inside another device used for running one predetermined application. Very often cost, power, and failure rate are more important than performance.

8 Growth in Embedded Processor Sales (embedded growth >> desktop growth !!!)  Where else are embedded processors found?

9 The PostPC Era

10 Embedded Processor Characteristics The largest class of computers spanning the widest range of applications and performance  Often have minimum performance requirements. Example?  Often have stringent limitations on cost. Example?  Often have stringent imitations on power consumption. Example?  Often have low tolerance for failure. Example?

11 Eight Great Ideas Design for Moore’s Law Use abstraction to simplify design Make the common case fast Performance via parallelism Performance via pipelining Performance via prediction Hierarchy of memories Dependability via redundancy

12 Below the Program Application software  Written in high-level language System software  Compiler: translates HLL code to machine code  Operating System: service code  Handling input/output  Managing memory and storage  Scheduling tasks & sharing resources Hardware  Processor, memory, I/O controllers

13 Levels of Program Code High-level language  Level of abstraction closer to problem domain  Provides for productivity and portability Assembly language  Textual representation of instructions Hardware representation  Binary digits (bits)  Encoded instructions and data Have you seen an assembly file?

14 Advantages of HLLs Higher-level languages (HLLs)  Allow the programmer to think in a more natural language and for their intended use (Fortran for scientific computation, Cobol for business programming, Lisp for symbol manipulation, Java for web programming, …)  Improve programmer productivity – more understandable code that is easier to debug and validate  Improve program maintainability  Allow programs to be independent of the computer on which they are developed (compilers and assemblers can translate HLL programs to the binary instructions of the machine)  Emergence of optimizing compilers that produce very efficient assembly code optimized for the target machine As a result, very little programming is done today at the assembler level

15 Compiler Basics High-level languages  Programmers do not think in 0 and 1s  Languages can also be specific to target applications, such as Cobol (business) or Fortran (scientific)  Applications are more concise => fewer bugs  Programs can be independent of system on which they are developed Compilers convert source code to object code Libraries simplify common tasks

16 Levels of Representation High Level Language Program Assembly Language Program Machine Language Program Control Signal Specification Compiler Assembler Machine Interpretation °°°° temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; lw $15,0($2) lw$16,4($2) sw$16,0($2) sw$15,4($2) 0000 1001 1100 0110 1010 1111 0101 1000 1010 1111 0101 1000 0000 1001 1100 0110 1100 0110 1010 1111 0101 1000 0000 1001 0101 1000 0000 1001 1100 0110 1010 1111 ALUOP[0:3] <= InstReg[9:11] & MASK

17 Execution Cycle Instruction Fetch Instruction Decode Operand Fetch Execute Result Store Next Instruction Obtain instruction from program storage Determine required actions and instruction size Locate and obtain operand data Compute result value or status Deposit results in storage for later use Determine successor instruction How to improve the performance?


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

Similar presentations


Ads by Google