1
64-Bit Micro-Architecture: IA-64 or x86-64?
Paul Spiteri
BSc (Hons) Software Engineering B.Sc.
Supervisor: Antony Nicol
Second Reader: Rosemary Brown
December 2003
Abstract
More and more modern applications are suffering from the limitations of 32-bit microprocessor
architectures, as they begin to be reached.
This paper examines whether there is a need to move to a 64-bit platform, and a comparison of the two
architectural choices that are currently available to fulfil 64-bit needs, with the merits and weaknesses
of each exposed.
An explanation and comparison of RISC & CISC architecture designs examines the advantages of each
and concludes RISC is now the most effective philosophy when coupled with a modern efficient program
compiler that can harness the concurrency potential of super-scalar microprocessors.
The architectures examined and compared are the new Intel IA-64 RISC architecture and AMD’s x86-
64 extension to the existing x86 CISC architecture.
Potential problems with existing software backwards-compatibility and compiler dependency are
considered.
The paper concludes that IA-64 is a sensible design which overcomes most issues raised with x86 over
its lifespan and is a worthy successor. However, the x86-64 extension by AMD also addresses some of
the original x86 flaws and modernises the design.
This allows the x86-64 to be currently superior due to its full backwards-compatibility with existing
compiled software, and easy migration support.
2
1.
Introduction
The current 32-bit generation of microprocessors have been in production in the mainstream since the
launch of the Intel 80386 CPU in 1985. There is a strong argument that the next step up to 64-bit CPUs
is necessary to continue enhancing performance.
Considering 32-bit has been in use for such a long period, and today’s architectures have little
resemblance to those original 80386 designs, this sounds a sensible suggestion. Bear in mind the 80386
is already an extension to the original 8086 16-bit