AMD64
From open-encyclopedia.com - the free encyclopedia.
The AMD64 is a 64-bit processor architecture invented by AMD. It is a superset of the x86 architecture, which it natively supports. The x86-64 Instruction set is currently used in AMD's Athlon 64, Athlon 64-FX, and Opteron Processors.
Intel has also announced it will copy the x86-64 architecture in it's newer processor lines, rebranding it EMT64.
| Contents |
Architecture overview
TODO: write about the AMD64 architecture. New instructions, capabilities, register sizes, etc.
- NX Bit The NX Bit is a processor feature that prevents certain kinds of malicious software known as worms from taking control of a computer via a software attack known as a buffer overflow. NX or "No Execute" (previously called DEP, or Data Execution Protection)is available as a Software Option for Those running Windows XP Service Pack 2, or Windows Server 2003 Service Pack 1, on an Existing 32-Bit Processor, such as Intel's Northwood Core Pentium 4's, Intel's Early Prescott Core Pentium 4's, as well as AMD's own Athlon XP. In this 32-Bit Software NX mode, the option can be turned off. However, if the End User uses a 64-Bit Processor that supports the NX Bit (Such as Intel's newer Prescott Core, their newer Xeon Processors, and AMD's Athlon 64, Athlon 64-FX, and Opteron Processors), then the option cannot completely be turned off.
There are two versions of the A64 aside from the socket 754 (older) and socket 939 (newer). In addition, the older versions of A64 use 130 nm transistors while the newest A64's use 90 nm transistors. Because of this AMD has been able to shrink the die size while still maintaining low heat output. One test has shown a 90 nm processor being overclocked to 1.45 times its stock speed. The A64 is also available for Socket 940, but this requires EEC registered memory.
All processors based on the AMD64 architecture feature either a single or dual channel memory controller "on-die" - a feature not seen before in mainstream CPUs. This feature is useful as it vastly reduces the latency between the CPU and main memory - there is no longer a "northbridge" having to negotiate access, and the on-die controller runs at the same clock rate as the CPU itself.
Due to the larger width for address space, the AMD64 architecture can address up to 256 terabytes of memory. Future implementations of the AMD64 architecture may provide up to 2 exabytes of available memory.
Operating modes
| Operating Mode | Operating System Required | Application Recompile Required | Default Address Size | Default Operand Size | Register Extensions | Typical GPR Width | |
| Long Mode | 64-bit Mode | New 64-bit OS | yes | 64 | 32 | yes | 64 |
| Compatibility Mode | no | 32 | no | 32 | |||
| 16 | 16 | 16 | |||||
| Legacy Mode | Protected Mode | Legacy 32-bit OS | no | 32 | 32 | no | 32 |
| 16 | 16 | ||||||
| Virtual-8086 Mode | 16 | 16 | 16 | ||||
| Real Mode | Legacy 16-bit OS | ||||||
Operating Mode Explanation
Long Mode is a combination of a 64-Bit Mode, and a 32-Bit Compatability Mode, and is used by 64-Bit Operating Systems, such as Windows XP Professional x64 Edition. This is the big benefit of using x86-64, as there is no performance penalty for executing x86 Code, unlike Intel's IA-64, using in their Itanium and Itanium 2 Processors. Using Long Mode, the 64-Bit OS can run 32-Bit applications, and 64-Bit applications simultaniously. Also, x86-64 also includes native support for running 16-Bit x86 applications. However, 64-Bit Operating Systems, like Windows XP Professional x64 Edition, have explicitly left out 16-Bit program support, due to the problems in getting 16-Bit x86 code to run via their WoW64 Emulator.
Legacy Mode is the mode used by 16-Bit Operating Systems, like MS-DOS, and 32-Bit Operating Systems, such as Windows XP. In this mode, only 16-Bit or 32-Bit code can be executed. 64-Bit programs, like the GUI setup program for Windows XP Professional x64 Edition, will not run.
AMD64 market analysis
AMD64 represents a break with AMD's past behavior of following Intel's standards, but follows Intel's earlier behavior of extending the x86 architecture, from the 16-bit 8086 to the 32-bit 80386 and beyond, without ever removing backwards compatibility. The AMD64 architecture extends the 32-bit x86 architecture (IA-32) by adding 64-bit registers, with full 32-bit and 16-bit compatibility modes for earlier software. Even the 64-bit mode is largely backward-compatible, allowing existing tools targeting x86 (eg. compilers) to be retargeted to AMD64 with minimal effort. The AMD64 architecture also features the NX bit.
Implementations
The following processors implement the AMD64 architecture:
- AMD K8
- AMD Athlon 64
- AMD Athlon 64 FX
- AMD Opteron
- AMD K9
- (dual core AMD K8 based processors)
- EM64T
- Intel Xeon (some models since 'Nocona')
- Intel Pentium 4 (some models since 'Prescott')
See also
- NX
- EM64T (Intel's implementation of the AMD64 architecture)
- IA-32e (yet another name for Intel's implementation)
- AMD K8
- AMD K9
- AMD K10
- x86-64
External links
- AMD's technical documentation for the AMD64 architecture
- Free AMD64 documentation on CD-ROM (US, Canada only), and download format
- xBitLabs article about AMD's move to 90nm
de:AMD64
es:AMD64
fr:AMD64
hu:AMD64
ja:AMD64
nl:AMD64
zh:AMD64