Microprocessor Systems I

Microprocessor Systems I

TALLINN UNIVERSITY of TECHNOLOGY Department of Computer Engineering MICROPROCESSOR SYSTEMS I Microprocessor Systems Architecture IAY 0021 Lecture Notes Arvo Toomsalu Tallinn 1 © Arvo Toomsalu All rights reserved, except as permitted under the Estonian Copyright Act. Contents 1. Microprocessor System's Architecture 3 2. Performance Measuring 16 3. Amdahl's Law 28 4. Microprocessors Taxonomy 31 5. Memory-Storage Devices 39 6. Associative Memory 55 7. Virtual Memory System 61 8. Cache Memory System 71 9. Input-output System 90 10. Input-output System Controllers 112 10.1. Graphics Processor** 116 10.2. Transputer** 123 11. Microprocessor System's Performance 126 12. Instruction Fetch and Execution Principles 132 13. Instruction Pipelining 139 14. Superscalar Processor Fundamentals 172 15. RISC Architecture** 220 16. Modern Superscalar Architecture 231 17. VLIW Architecture 249 18. Processor Architecture Development Trends 266 19. Development Trends in Technology 272 20. Dual- and Multicore Processors 282 21. Computer Architecture Formulas 286 22. Glossary 287 23. Acronyms 293 2 MICROPROCESSOR SYSTEM ARCHITECTURE System Description (AIR Principle) System Description SYSTEM Levels ( MPS) I Architecture [ A] Level WHAT ? System extraordinariness, singularity (some quality of a thing by which it is distinguished from all, or most, others). Specific software/hardware interface , which includes: Instruction set; Memory management and protection; Interrupts; Floating-point standard, etc. Architecture development life-cycle Development Speed V A1 A2 Time 0 t ABC A1, A2 – different architectures of a system 3 Forces on the microprocessor system (computer) architecture are: 1. Applications; 2. Technology; 3. Operating systems; 4. Programming languages; 5. History. Architecture is the iterative searching of the possible designs at all levels of microprocessor system. II Implementation [I] Level HOW ? Logical structure , organization or microarchitecture . Number and location functions; Pipeline configuration; I/O system organization; Location and configuration of caches, etc. ► Microprocessor Families III Realization [R] Level WHICH and WHERE ? Architecture versus Microarchitecture Architecture is used to describe an abstract requirement specification . It refers to the instruction set, registers, and memory data-resident structures that are public to a programmer . Microarchitecture is used to describe the specific composition of elements that realizes architecture in a specific design . It refers to an implementation of (micro)processor architecture in silicon. 4 Intel EPIC IXA Architecture Explicitly Instruction set definition Internet Parallel IA-32 and compatibility Exchange Instruction Architecture Computing Microarchitecture Hardware implementation maintaining instruction set P5 P6 NetBurst Mobile compatibility with high-level architecture Pentium Pro Pentium 4 Realization Pentium Pentium II Pentium D Pentium M Implementation of microarchitecture in microprocessor Pentium III Xeon AIR principle uses only three system description levels, but for more precise description there is used more description levels, as for: 1. Processor-memory level , at which architecture of a microprocessor system is described . 2. Instruction set level , at which the function of each instruction is described . 3. Register transfer level ( RTL ), at which the system’s hardware structure is described in details. 4. Logic gate level , at which the hardware components are described as standard logic elements and flip-flops. 5. Circuit level, at which the hardware components internal structure is opened and they described by active (transistors) and passive elements. 6. Integrated circuit masks level, at which the silicon structures and their layout , that used to implements the system components, are shown. Moving from the first description level to the last, we can see how the behavior of the microprocessor system is transformed into the real hardware and software structure. 5 Architecture Taxonomies Classical Architectures Princeton or von Neumann Architecture Characteristic features : 1. Integral processing unit; 2. United data and instructions memory; 3. United bus between CPU and memory; 4. Centralized control; 5. Low-level programming languages; 6. Memory linear addressing. Harvard Architecture 6 Characteristic features : 1. Instruction and data memories occupy different address spaces; 2. Instruction and data memories have separate buses to the CPU ( A); 3. Instruction and data memories can be implemented in different ways. Modified Harvard Architecture and Flynn`s Classification A pure Harvard architecture has the disadvantage that mechanisms must be provided to separately load the program to be executed into instruction memory and data to data memory. Modern Harvard architecture computers often use a read-only technology for the instruction memory and read-write technology for the data memory . This allows the computer to begin execution of a pre-loaded program as soon as power is applied. The Modified Harvard Architecture is relegated to niche applications – microcontrollers and digital signal processors. The principal advantage of the Harvard architecture – simultaneous access to instruction and data memories has been nullified by modern cache systems. Multi-microprocessor system - a system that use more than one microprocessor to perform a desired application. Multiprocessor systems were designed for at least one of two reasons : 1. Speed-up program; 2. Fault tolerance. The classification of computer architectures based on notions of instruction and data streams or Michael Flynn`s (1972)) classification. Flynn`s classification stresses the architectural relationship at the memory-processor level . Other architectural levels are overlooked. Single Data Stream SISD MISD Multiple Data SIMD => Data Level Parallelism Streams SIMD MIMD MIMD => Thread Level Parallelism Single Multiple Instruction Instruction Stream Streams Flynn-Johnson Classification 7 Instruction Set Architecture In the past, the term computer architecture referred only to instruction set design. The term instruction set architecture ( ISA ) refers to the actual programmer-visible instruction set . ISA enables different implementations of the same architecture but it may prevent using new innovations . Classification instruction set architectures (by J. L. Hennessy & D. A. Patterson) 1. Register-memory architecture 2. Register-register or load-store architecture 3. Accumulator architecture 4. Stack architecture (5). Memory-memory architecture RGF RGF from memory ALU ALU Register-memory architecture Register-register/load architecture Stack top RGF RGF from memory ALU ALU Accumulator architecture Stack architecture 8 Architectures Taxonomy by Milutinovic (1989) 1. Control -driven ( control-flow ) architectures The instruction sequence guides the processing activity. a. Reduced instruction set computers ( RISC ); b. Complex instruction set computers ( CISC ); c. High-level language architectures ( HLL ). 2. Data-driven ( data-flow ) architectures The processing activity is controlled by the readiness of data (experimental). 3. Demand-driven ( reduction ) architectures An instruction is enabled for execution when its results are required as operands for another instruction that has been already enabled for execution (experimental). Architecture Standardization and Open-system Concept An open-system is a collection interfaces , protocols , and data formats that are based on the commonly available, universally accepted standards providing software portability, system interaction, and scalability. o Portability is a property of a source code program to be executed on different hardware platforms under different operating systems. o System interaction is the ability of systems to exchange information automatically, recognizing the format and semantics of data. o Scalability is a property of a program to be executed using different resources with the efficiency rate being proportional to the resources available. Summary Comparison Different ISA Structures Number of Maximum number memory accesses of operands allowed Architecture Examples 0 3 register-register Alpha, Power PC 1 2 register-memory IBM 360/370, Intel 80x86 2 2 memory-memory VAX 3 3 memory-memory VAX 9 Advantages and Disadvantages Different ISA Structures Architecture Advantages Disadvantages 1. Simple, fixed-length 1. Higher instruction count than instruction decoding. architectures with memory register-register 2. Simple code generation references in instructions. (0,3)* model. 2. More instructions, lower 3. Instructions take similar instruction density - larger number of clocks to execute. programs. 1. Operands are not equivalent 1. Data can be accessed since a source operand in a without a separate load binary operation is destroyed. register-memory instruction first. 2. Encoding a register number (1,2) 2. Instruction format tends to and a memory address in each be easy to encode and offers instruction may restrict the good density. number of registers. 3. Clock per instruction varies by operand location. 1. Large variation in instruction Most compact, and doesn't size. memory-memory waste registers for 2. Large variation in work per (2,2) or (3,3) temporaries. instruction. 3. Memory accesses create memory bottleneck. 4. Not used. • In the notation ( m,n ) means m memory operands and n total operands. 10 Operating System Management Functions Operating system (OS) controls the execution of programs on a processor and manages

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    296 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us