dr. siming liu spring 2016 computer science and engineering university of nevada, reno session 2...
DESCRIPTION
Function Units in a ComputerTRANSCRIPT
![Page 1: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/1.jpg)
DR. SIMING LIUSPRING 2016
COMPUTER SCIENCE AND ENGINEERINGUNIVERSITY OF NEVADA, RENO
Session 2 Computer Organization
![Page 2: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/2.jpg)
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) Description
SOFTWARE
ISA Level
FUs & Interconnect
Logic Designer’s View
![Page 3: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/3.jpg)
Function Units in a Computer
![Page 4: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/4.jpg)
Chapter 1 — Computer Abstractions and Technology — 4
Opening the BoxCapacitive multitouch LCD screen
3.8 V, 25 Watt-hour battery
Computer board
![Page 5: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/5.jpg)
Chapter 1 — Computer Abstractions and Technology — 5
Inside the Processor (CPU)
Datapath: performs operations on dataControl: sequences datapath, memory, ...Cache memory
Small fast SRAM memory for immediate access to data
![Page 6: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/6.jpg)
Inside the Processor
Apple A5
![Page 7: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/7.jpg)
Classes of Computers
• Desktop computers: Designed to deliver good performance to a single user at low cost usually executing 3rd 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.
![Page 8: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/8.jpg)
Growth in Embedded Processor Sales
(embedded growth >> desktop growth !!!)
Where else are embedded processors found?
![Page 9: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/9.jpg)
The PostPC Era
![Page 10: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/10.jpg)
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?
![Page 11: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/11.jpg)
Eight Great Ideas
Design for Moore’s LawUse abstraction to simplify designMake the common case fastPerformance via parallelismPerformance via pipeliningPerformance via predictionHierarchy of memoriesDependability via redundancy
![Page 12: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/12.jpg)
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
resourcesHardware
Processor, memory, I/O controllers
![Page 13: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/13.jpg)
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?
![Page 14: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/14.jpg)
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
![Page 15: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/15.jpg)
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 developedCompilers convert source code to object codeLibraries simplify common tasks
![Page 16: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/16.jpg)
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 10001010 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
![Page 17: DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization](https://reader035.vdocuments.us/reader035/viewer/2022062413/5a4d1b317f8b9ab05999b4d8/html5/thumbnails/17.jpg)
Execution Cycle
InstructionFetch
InstructionDecode
OperandFetch
Execute
ResultStore
NextInstruction
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?