1 / 29

Computer Views

Computer Views. Computer Architecture CS 215. Some terms. K (kilo) = 2 10 = 1,024 M (mega) = 2 20 = 1,048,576 G (giga) = 2 30 = 1,073,741,824 T (tera) = 2 40 = ???. Viewpoints. User Programmer Architect Logic Designer. User’s View. Often called end-user

aglaia
Download Presentation

Computer Views

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer Views Computer ArchitectureCS 215

  2. Some terms • K (kilo) = 210 = 1,024 • M (mega) = 220 = 1,048,576 • G (giga) = 230 = 1,073,741,824 • T (tera) = 240 = ???

  3. Viewpoints • User • Programmer • Architect • Logic Designer

  4. User’s View • Often called end-user • Does not see implementation, only end results

  5. Programmer’s View • Functional behavior of a computer as viewed by a programmer • Instruction Set Architecture (ISA) • Functional units • Data type sizes, operations, etc.

  6. Instruction Classes • Data movement • Arithmetic/Logic • Control flow

  7. More terms • Machine state • Contents of all registers and machine memory • Procedure calls • Used to implement functions • Machine interrupts • Unexpected interruptions to normal execution • Exceptions • Internal problems with normal execution

  8. Architect’s View • Structural relationships that are not visible to the programmer • Driven by performance needs & csot constraints • Interfaces, clock frequency, memory, etc.

  9. Logic Designer’s View • Works in both Boolean logic and implementation • Concerned with … • Design correctness • Constraints • Ex. Fan-in and Fan-out • Uses various design and analysis tools

  10. Von Neumann Model Memory Unit • Input Unit • Provides instructions and data to system Input Unit Arithemtic and Logical Unit (ALU) Output Unit Control Unit

  11. Von Neumann Model Memory Unit • Output Unit • Returns data from system Input Unit Arithemtic and Logical Unit (ALU) Output Unit Control Unit

  12. Von Neumann Model Memory Unit • Memory • Storage for instructions and data Input Unit Arithemtic and Logical Unit (ALU) Output Unit Control Unit

  13. Von Neumann Model Memory Unit • ALU • Processes data Input Unit Arithemtic and Logical Unit (ALU) Output Unit Control Unit

  14. Von Neumann Model Memory Unit • Control Unit • Directs processing Input Unit Arithemtic and Logical Unit (ALU) Output Unit Control Unit

  15. Von Neumann Model Memory Unit • CPU • ALU and Control Unit combined CPU Input Unit Arithemtic and Logical Unit (ALU) Output Unit Control Unit

  16. System Bus Model • Streamlined version of von Nuemann model • Data Bus • Address Bus • Control Bus • Power Bus (optional) CPU (ALU, Registers, & Control) Memory Input & Output (I/O) Data Bus Address Bus System Bus Control Bus

  17. System Bus Model • Data Bus • Carries the information being transmitted • Sometimes implemented as data-in and data-out buses CPU (ALU, Registers, & Control) Memory Input & Output (I/O) Data Bus Address Bus System Bus Control Bus

  18. System Bus Model • Address Bus • Identifies where the information is being sent • “Memory” address identifies read/write location CPU (ALU, Registers, & Control) Memory Input & Output (I/O) Data Bus Address Bus System Bus Control Bus

  19. System Bus Model • Control Bus • Describes aspects of how the information is being sent, & in what manner CPU (ALU, Registers, & Control) Memory Input & Output (I/O) Data Bus Address Bus System Bus Control Bus

  20. Machine Levels User or Application Program Level • Each level represents an abstraction of the computer • Levels are kept relatively independent from one another • Can allow for upward compatibility High-Level Language Level Assembly Language / Machine Code Level Control Level Functional Unit Level Logic Gates Transistors & Wires

  21. User or Application Program Level User or Application Program Level • User interacts with computer High-Level Language Level Assembly Language / Machine Code Level Control Level Functional Unit Level Logic Gates Transistors & Wires

  22. High-Level Language Level User or Application Program Level • Compiler maps data types and instructions to actual computer hardware • Can be recompiled in different environments • Source code compatibility High-Level Language Level Assembly Language / Machine Code Level Control Level Functional Unit Level Logic Gates Transistors & Wires

  23. Assembly Language / Machine Code Level User or Application Program Level • Language of the computer • Instruction sets • Assembler substitutes instruction codes for mnemonics • Different hardware can support same instruction set High-Level Language Level Assembly Language / Machine Code Level Control Level Functional Unit Level Logic Gates Transistors & Wires

  24. Control Level User or Application Program Level • Effects register transfers • Control signals transfer data from register to register • Hardwired Vs. Microprogram control • firmware • microcontroller High-Level Language Level Assembly Language / Machine Code Level Control Level Functional Unit Level Logic Gates Transistors & Wires

  25. Functional Unit Level User or Application Program Level • Internal CPU registers • ALU • Computer’s main memory High-Level Language Level Assembly Language / Machine Code Level Control Level Functional Unit Level Logic Gates Transistors & Wires

  26. Logic Gates, Transistors & Wires User or Application Program Level • The hardware! • (More on this later) High-Level Language Level Assembly Language / Machine Code Level Control Level Functional Unit Level Logic Gates Transistors & Wires

  27. Question? User or Application Program Level • Which levels map to which views? High-Level Language Level Assembly Language / Machine Code Level Control Level Functional Unit Level Logic Gates Transistors & Wires

  28. Machine Levels • Floating point emulation • Due to insufficient resources • Floating point instructions are trapped • Replaced with machine code to imitate floating point instructions • Emulation Vs. Math coprocessor

  29. Typical Computer System • Input • Keyboard • Output • Monitor • Storage • Floppy disk, hard disk, CD-ROM, etc. • Motherboard • CPU, RAM, expansion slots, bus, etc.

More Related