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

Computer Architecture  97

        ever sold commercially, but they inspired a new wave of architectures
        referred to by the name of the Berkeley project as Reduce Instruction
        Set Computers (RISC).
          Sun (with direct help from Patterson) created Scalable Processor
                             ®
        Architecture (SPARC ), and Hewlett Packard created the Precision
        Architecture RISC (PA-RISC). IBM created the POWER TM  architecture,
        which was later slightly modified to become the PowerPC architecture
        now used in Macintosh computers. The fundamental difference between
        Macintosh and PC software is that programs written for the Macintosh
        are written in the PowerPC architecture and PC programs are written
        in the x86 architecture. SPARC, PA-RISC, and PowerPC are all con-
        sidered RISC architectures. Computer architects still debate their merits
        compared to earlier architectures like VAX and x86, which are called
        Complex Instruction Set Computers (CISC) in comparison.
          Java is a high-level programming language created by Sun in 1995.
        To make it easier to run programs written in Java on any computer, Sun
        defined the Java Virtual Machine (JVM) architecture. This was a vir-
        tual architecture because there was not any processor that actually
        could run JVM code directly. However, translating Java code that had
        already been compiled for a “virtual” processor was far simpler and
        faster than translating directly from a high-level programming lan-
        guage like Java. This allows JVM code to be used by Web sites accessed
        by machines with many different architectures, as long as each machine
        has its own translation program. Sun created the first physical imple-
        mentation of a JVM processor in 1997.
          In 2001, Intel began shipping the Itanium processor, which supported
        a new architecture called Explicitly Parallel Instruction Computing
        (EPIC). This architecture was designed to allow software to make more
        performance optimizations and to use 64-bit addresses to allow access
        to more memory. Since then, both AMD and Intel have added architectural
        extensions to their x86 processors to support 64-bit memory addressing.
          It is not really possible to compare the performance of different archi-
                                                                    ®
        tectures independent of their implementations. The Pentium and
        Pentium 4 processors support the same architecture, but have dramat-
        ically different performance. Ultimately processor microarchitecture
        and fabrication technologies will have the largest impact on perform-
        ance, but the architecture can make it easier or harder to achieve high
        performance for different applications. In creating a new architecture
        or adding an extension to an existing architecture, designers must bal-
        ance the impact to software and hardware. As a bridge from software
        to hardware, a good architecture will allow efficient bug-free creation
        of software while also being easily implemented in high-performance
        hardware. In the end, because software applications and hardware
        implementations are always changing, there is no “perfect” architecture.
   119   120   121   122   123   124   125   126   127   128   129