1 / 45

ACOE301 – Computer Architecture II

ACOE301 – Computer Architecture II. Useful Information. Instructor: Lecturer K. Tatas Office hours : Mo5, Tu3, We6-8, Fri5 E-mail: com.tk@fit.ac.cy http://staff.fit.ac.cy/com.tk Prerequisites: ACOE201 Lectures/week: 3 + 1 (Lab) ECTS: 5 (x25 h) = 125h

mick
Download Presentation

ACOE301 – Computer Architecture II

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. ACOE301 – Computer Architecture II

  2. Useful Information • Instructor: Lecturer K. Tatas • Office hours : Mo5, Tu3, We6-8, Fri5 • E-mail: com.tk@fit.ac.cy • http://staff.fit.ac.cy/com.tk • Prerequisites: ACOE201 • Lectures/week: 3 + 1 (Lab) • ECTS: 5 (x25 h) = 125h • Evaluation: 60% Final exam – 20% Labs/Quizzes – 20% midterm/assignment • Enrollment key: ACOE301_FALL12 ACOE301 - Computer Architecture II - Frederick University

  3. Course Objectives • Introduce students to computer architecture and organization with emphasis on • performance metrics and cost, • instruction set architectures, • RISC processor design, • Pipelining • memory hierarchy. ACOE301 - Computer Architecture II - Frederick University

  4. Course Outcomes • By the end of this course students should be able to: • Understand the computer architecture and organization of modern processors. • Further advance their knowledge in designing computer architecture systems using Assembly, C/C++ and VHDL. ACOE301 - Computer Architecture II - Frederick University

  5. Course Description • Introduction to Computer Architecture: • Organisation and abstraction of a computer. • ISAs. • Emerging computer architecture technologies. • Processor, caches, memory and  I/O devices. • Instruction Set Architecture (ISA): • Specifications, classes, registers, memory addressing and addressing modes. • The complete MIPS architecture and in-depth analysis. ACOE301 - Computer Architecture II - Frederick University

  6. Course Description • RISC Processor Design: • Full ALU design of the MIPS processor. • Multiplication and division algorithms in hardware. • Single-cycle, multi-cycle datapath and controller design. • Performance Metrics: • Measuring performance and metrics. • Improve performance, clock cycles, CPI, instructions count, MIPS, MOPS, MFLOPs. • Benchmarks. Amdahl's Law. ACOE301 - Computer Architecture II - Frederick University

  7. Course Description • Pipelining: • Single-cycle, Multi-cycle versus Pipeline. • Structural, data and control hazards. • Forwarding. • Exceptions. • MIPS R3000 pipeline and design of a pipelined processor. • Loop unrolling in scalar and superscalar computer systems. • Software pipelining. • Memory Hierarchy: • Locality and memory hierarchy. • SRAM and DRAM. • Memory organization. • Advanced cache memory. • Virtual memory. • Protection. Translation Lookaside Buffer (TLB). ACOE301 - Computer Architecture II - Frederick University

  8. Textbook and References • Paterson, Hennessy, Computer Organisation and Design: the Hardware/Software Interface, Morgan Kaufman, 2003. • M. Mano, C. R. Kime, Logic and Computer Design Fundamentals, Prentice Hall, 2004 • J. P. Hayes, Computer Architecture and Organization, 3Ed, McGraw Hill., 1998 ACOE301 - Computer Architecture II - Frederick University

  9. The task of the computer designer • Determine whatattributes are important for a new machine, then design a machine to maximizeperformance while staying within cost and power constraints. • This task has manyaspects • instruction set design • functional organization • logic design • implementation. • integrated circuit design • Packaging • Power • cooling • Optimizing the design requires familiaritywith a very wide range of technologies: • Compilers • operating systems • logic design • packaging. ACOE301 - Computer Architecture II - Frederick University

  10. Basic Terminology • instruction set architecturerefers to is the part of the processor that is visible to the programmer or compiler writer. The instruction set architecture serves as the boundary betweenthe software and hardware • Hardwareis used to refer to the specifics of a machine • detailed logic design • Implementation/packaging technology • Often aline of machines contains machines with identical instruction set architecturesand nearly identical organizations, but they differ in the detailed hardware implementation. • For example, the Pentium II and Celeron are nearly identical, but offerdifferent clock rates and different memory systems, • In this course the wordcomputer architectureis intended tocover all three aspects of computer design • instruction set architecture • Organization • hardware ACOE301 - Computer Architecture II - Frederick University

  11. HISTORICAL PERSPECTIVE • 1st generation: 1945 - 1955 • Tubes, punchcards • 2nd generation: 1955 - 1965 • transistors • 3rd generation: 1965 – 1980 • Integrated circuits • 4th generation: 1980 – • PCs and workstations ACOE301 - Computer Architecture II - Frederick University

  12. 1st generation (1945-1955) • Programming was done in machine language • No operating system • Programming and maintenance done by one group of people ACOE301 - Computer Architecture II - Frederick University

  13. ENIAC – The first electronic computer (1946) 18,000 tubes 300 Tn 170 KWatt ACOE301 - Computer Architecture II - Frederick University

  14. 2nd generation (1955-1965) • Transistor-based • Fairly reliable • Clear distinction between designers, manufacturers, users, programmers, and support personnel. • Only afforded by governments, universities or large companies (millions $) ACOE301 - Computer Architecture II - Frederick University

  15. 2nd generation (1955-1965) • Program was first written on paper (FORTRAN) and then punched into cards • Cards were then delivered to the user. • Mostly used for scientific and technical calculations • Solving differential equations ACOE301 - Computer Architecture II - Frederick University

  16. 3rd generation (1965-1980) • IC-based operation • IBM develops compatible systems • Tradeoffs in performance, memory, I/O etc). • Greater MHz/$ ACOE301 - Computer Architecture II - Frederick University

  17. 4th generation (1980-1990) • LSI-based PCs • Significantly cheaper • User-friendly software • 2 dominant operating systems: • MS DOS: IBM PC(8088, 80286, 80386, 80486) • UNIX: RISC workstations ACOE301 - Computer Architecture II - Frederick University

  18. 5th generation (1990-) • PC networks • Network operating systems • Each machine runs its own operating system • Users don’t care where their programs are being executed ACOE301 - Computer Architecture II - Frederick University

  19. Famous quotes • “Future computers may weigh less than 1,5 tn”, (1949) • “I believe there is a world market for five computers”, T. Watson, IBM CEO (1943) • “There is no particular reason why someone would want a computer at home”, K. Oslon, president of DEC(1974) • “640Κbytesof memory should be enough for anybody”, B. Gates, president of Microsoft (1981) ACOE301 - Computer Architecture II - Frederick University

  20. ACOE301 - Computer Architecture II - Frederick University

  21. ACOE301 - Computer Architecture II - Frederick University

  22. ACOE301 - Computer Architecture II - Frederick University

  23. ACOE301 - Computer Architecture II - Frederick University

  24. ACOE301 - Computer Architecture II - Frederick University

  25. ACOE301 - Computer Architecture II - Frederick University

  26. Microprocessor Technologies(Orthogonal) • VLSI technology • Computer Architecture • Compiler technology ACOE301 - Computer Architecture II - Frederick University

  27. ACOE301 - Computer Architecture II - Frederick University

  28. Moore’s Law ACOE301 - Computer Architecture II - Frederick University

  29. Intel 4004 Micro-Processor ACOE301 - Computer Architecture II - Frederick University

  30. ACOE301 - Computer Architecture II - Frederick University

  31. ACOE301 - Computer Architecture II - Frederick University

  32. ACOE301 - Computer Architecture II - Frederick University

  33. ACOE301 - Computer Architecture II - Frederick University

  34. Recent advances ACOE301 - Computer Architecture II - Frederick University

  35. RF Chip MEMS Processor Memory Battery The Future: 3D ICs • 3D integration: One chip DNA Chip Image Sensor ACOE301 - Computer Architecture II - Frederick University

  36. Computer Architecture ACOE301 - Computer Architecture II - Frederick University

  37. RISC vs. CISC • Complex instruction set computer (CISC): • Large instruction set; • Complex operations; • Complex addressing modes; • Complex hardware, long execution time; • Minimum number of instructions needed for a given task; • Easy to program, simpler compiler. • Reduced instruction set computer (RISC): • Small instruction set; • Simple instructions to allow for fast execution (fewer steps); • Large number of registers; • Only read/write (load/store) instructions should access the main memory, one MM access per instruction; • Simple addressing modes to allow for fast address computation; • Fixed-length instructions with few formats and aligned fields to allow for fast instruction decoding; • increased compiler complexity and compiling time; • simpler and faster hardware implementation,pipelined architecture. ACOE301 - Computer Architecture II - Frederick University

  38. RISC vs. CISC example • CISC (M68000) • Add the content of MM location pointed to by A3 to the component of an array starting at MM address 100. The index number of the component is in A2. The content of A3 is then automatically incremented by 1. • RISC (MIPS) ACOE301 - Computer Architecture II - Frederick University

  39. Memory Architecture • Von Neumann: Common memory for data and instructions • Harvard: Separate data and instruction memories ACOE301 - Computer Architecture II - Frederick University

  40. Von Neumann Memory Architecture memory address CPU PC 200 data ADD r5,r1,r3 ADD r5,r1,r3 IR 200 ACOE301 - Computer Architecture II - Frederick University

  41. Harvard Memory Architecture address CPU data memory PC data address program memory data ACOE301 - Computer Architecture II - Frederick University

  42. Pipelining • Dividing the processing task into stages, which are executed in parallel ACOE301 - Computer Architecture II - Frederick University

  43. Application-Specific Processors • Processors optimized for a specific application domain • DSP processors • Multiplier/accumulator in ALU, Harvard memory architecture • Multimedia processors • Image processing/video hardware accelerators ACOE301 - Computer Architecture II - Frederick University

  44. Assembler/Compiler technologies • Increased productivity by using high-level languages • For critical tasks and embedded systems, assembly is commonly used ACOE301 - Computer Architecture II - Frederick University

  45. References • Weste, Harris, CMOS VLSI Design: A Circuits and Systems Perspective • Patterson, Hennessy - Computer Organization and Design; The Hardware-Software Interface, 2E (Morgan Kaufman, 1997) • Fundamentals Of Computer Organization And Architecture (2005) Wiley ACOE301 - Computer Architecture II - Frederick University

More Related