1 / 16

Introduction to Computer Architecture

Introduction to Computer Architecture. Everything should be as simple as possible--but not simpler. Use and Distribution Notice. Possession of any of these files implies understanding and agreement to this policy.

chuck
Télécharger la présentation

Introduction to Computer Architecture

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. Introduction toComputer Architecture Everything should be as simple as possible--but not simpler.

  2. Use and Distribution Notice • Possession of any of these files implies understanding and agreement to this policy. • The slides are provided for the use of students enrolled in Jeff Six's Computer Architecture class (CMSC 411) at the University of Maryland Baltimore County. They are the creation of Mr. Six and he reserves all rights as to the slides. These slides are not to be modified or redistributed in any way. All of these slides may only be used by students for the purpose of reviewing the material covered in lecture. Any other use, including but not limited to, the modification of any slides or the sale of any slides or material, in whole or in part, is expressly prohibited. • Most of the material in these slides, including the examples, is derived from Computer Organization and Design, Second Edition. Credit is hereby given to the authors of this textbook for much of the content. This content is used here for the purpose of presenting this material in CMSC 411, which uses this textbook.

  3. The Definitions • What is “architecture?” • “The art or science or building...the art or practice of designing and building structures...” (Webster 9th New College Dictionary) • “including plan, design, construction and decorative treatment...” (American College Dictionary) • What is “computer architecture?” • “...by architecture, we mean the structure of the modules as they are organized in a computer system...” (H. Stone, 1987) • “The architecture of a computer is the interface between the machine and the software” (Andris Padges, Architect of the IBM 360/370)

  4. Motivating Factors • Drastic improvements in technology at incredible speed… • Processor • logic capacity increases over 30% per year • clock rate increases over 20% per year • Memory • DRAM capacity increases over 60% per year • Memory speed increases about 10% per year • Cost per bit gets cheaper by about 25% per year • Disk • Capacity increases about 60% per year • What was a mainframe 20 years ago is now a system-on-a-chip, a couple of square millimeters in size. • If land transportation advanced at this speed, you could go from NYC to LA in under five seconds in your car.

  5. Growth in Hardware Densities

  6. Design Analysis Design and Analysis: Hand-in-Hand • In computer architecture, design and analysis go hand-in-hand. Analysis (study of current, past, and future designs) is vital to being a good designer. Being a good designer is, likewise, vital to effectively analyzing designs. • This is a never ending process – new ideas come out all of the time and must be realized and then evaluated if innovation is ever to take place.

  7. Two Major Topic Areas • We can divide computer architecture into two principle topic areas: • Instruction Set Architecture • Machine Organization • Let’s look at these in a little bit of detail… Computer Architecture Instruction Set Architecture Machine Organization

  8. Instruction Set Architectures • An instruction set architecture (ISA) has been defined as: the attributes of a [computing] system as seen by the programmer, i.e. the conceptual structure and functional behavior, as distinct from the organization of the data flows and controls the logic design, and the physical implementation. (Amdahl, Blaaw, and Brooks, 1964) • An ISA includes such decisions as: • Data Types & Structures (Encodings & Representations) • Instruction Set • Instruction Formats • Modes of Addressing and Accessing Data Items and Instructions • Exceptional Conditions

  9. Instruction Set Architectures • The instruction set can be seen as the interface between software and hardware – it abstracts the hardware and hides the underlying complexity and implementation details from the software. • Example ISAs include… • Intel IA-32 (x86) • Intel IA-64 • DEC Alpha • MIPS • Sparc (and UltraSparc) • For example, a software developer (or a compiler) develops software for an ISA, say IA-32. The actual underlying hardware does not matter and can differ from system to system – as long as the ISA is the same. (this is why the same binary will run on a Pentium and a Pentium 4, which are VERY different under the hood!)

  10. Registers (35 of them) R0 - R31 PC HI LO opcode rs rd sa funct rt rs rt opcode immediate value opcode jump or branch target Example: The MIPS R3000 ISA • Six major types of instructions • Load / Store • Computational • Jump and Branch • Floating Point • Memory Management • Special • Three instruction formats – all are 32 bits wide…

  11. Machine Organization • Machine organization refers to the implementation details about how the hardware actually works… • Capabilities & performance characteristics of principal functional units (such as registers, ALU, shifters, logic units and so forth) • Interconnections of these components • Information flows between components • Logic and means by which such information flow is controlled • The combination of FUs to realize the ISA • Register Transfer Level (RTL) Description

  12. MBus Module SuperSPARC Floating-point Unit L2 $ CC DRAM Controller Integer Unit MBus MBus control M-S Adapter L64852 Inst Cache Ref MMU Data Cache STDIO SBus serial kbd SCSI Store Buffer SBus DMA mouse Ethernet audio RTC Bus Interface SBus Cards Boot PROM Floppy Example: The TI SuperSPARC

  13. General Organization • Every component of every computer ever built can be categorized into one of five major groups. • The design of any system is governed by the cost, size, and capabilities of each component. A typical design plan is to spend 25% of the total cost on the processor, 25% of the total cost on the memory, and 50% of the total cost on the devices.

  14. Applications Operating System Compiler Firmware Instruction Set Architecture Instruction Set Processor I/O System Datapath and Control Digital Design Circuit Design Layout Abstraction: A Central Theme • Computer architecture’s central theme is the coordination of many levels of abstraction.

  15. How We Will Study Computer Architecture • We will study computer architecture by starting at the basics and building up. • We will talk about the hardware design process throughout our discussion of computer architecture, including designing some of the components we talk about in class using a Hardware Description Language (HDL). • The goal is to study computer architecture through a good mix of theory, practical examples, and actually doing design, simulation, and verification.

  16. Our Case Studies • The classic microprocessor design that is used in the study of computer architecture is MIPS (it was designed by the authors of our book!). • Although this is the primary design we will use in our study, we will also discuss other, different, designs including the PowerPC and Intel IA-32/x86 architectures. • MIPS is a relatively old design – it is simple and avoids a lot of the complex hardware present in other architectures (which makes it a good study). • Hopefully this will provide a good balance and allow you to see different design approaches that designers have taken to solve problems.

More Related