Page 152 - A Practical Guide from Design Planning to Manufacturing
P. 152

Computer Architecture  125

        to architectures improve performance or add new capabilities, but only if
        they are supported by new software. Very few architects would ever think
        to describe the x86 architecture as elegant or efficient, but by maintaining
        software compatibility it has become the most widely used architecture. To
        displace it, any new architecture will have to exceed x86 capabilities or
        performance by such a wide margin as to overcome the inertia of the
        established software base. Meanwhile, all the currently supported archi-
        tectures will continue to expand their capabilities to try to avoid fading into
        computer history like the VAX architecture and many others.


        Key Concepts and Terms
        64-bit addressing       Registers
        Floating point          Return
        HyperThreading (HT)     RISC and CISC
        Immediate value         SIMD
        Instruction pointer (IP)  Stack and accumulator
        Interrupt and exception  Translation lookaside buffer (TLB)
        Jump, branch, and call  Two’s complement and BCD
        Memory                  VLIW and EPIC


        Review Questions
         1. What are the differences between high-level programming languages,
            assembly code, and machine language?
         2. What are the functions of computation, data transfer, and control
            flow instructions?
         3. Describe the differences between RISC and CISC architectures.
         4. Describe the differences between VLIW and EPIC architectures.
         5. Explain the operation of jumps, branches, calls, and interrupts.
         6. What are the advantages and disadvantages of fixed instruction
            encoding length?
         7. What are the advantages and disadvantages of floating-point data
            compared to integer formats?
         8. What are the sources of software interrupts, hardware interrupts,
            and exceptions?
         9. Describe how virtual memory works and its advantages.
        10. How can SIMD instructions improve performance?
        11. [Bonus] Create a pure register instruction set architecture that con-
            tains the minimum number of instruction types needed to create a
   147   148   149   150   151   152   153   154   155   156   157