Information About64-bit |
|
64-bit CPUs have existed in Supercomputers since the 1960s and in RISC -based Workstations and Server s since the early 1990s. In 2003 they were introduced to the (previously 32-bit ) mainstream Personal Computer arena, in the form of the X86-64 and 64-bit PowerPC processor architectures. A CPU that is 64-bit internally might have external Data Bus es or Address Bus es with a different size, either larger or smaller; the term "64-bit" is often used to describe the size of these buses as well. For instance, many current machines with 32-bit processors use 64-bit buses (e.g. the original Pentium and later CPUs), and may occasionally be referred to as "64-bit" for this reason. Likewise, some 16-bit processors (for instance, the MC68000 ) were referred to as 16-/32-bit processors as they had 16-bit busses, but had some internal 32-bit capabilities. The term may also refer to the size of an instruction in the computer's Instruction Set or to any other item of data (e.g. 64-bit Double-precision Floating-point quantities are common). Without further qualification, "64-bit" computer architecture generally has integer Registers that are 64 bits wide, which allows it to support (both internally and externally) 64-bit "chunks" of integer data. ARCHITECTURAL IMPLICATIONS Registers in a processor are generally divided into three groups: integer, floating point, and other. In all common general purpose processors, only the integer registers are capable of storing pointer values (that is, an address of some data in memory). The non-integer registers cannot be used to store pointers for the purpose of reading or writing to memory, and therefore cannot be used to bypass any memory restrictions imposed by the size of the integer registers. Nearly all common general purpose processors (with the notable exception of most ARM and 32-bit MIPS implementations) have integrated floating point hardware, which may or may not use 64-bit registers to hold data for processing. For example, the X86 architecture includes the X87 floating-point instructions which use 8 80-bit registers in a stack configuration; later revisions of x86, and the X86-64 architecture, also include SSE instructions, which use 8 128-bit wide registers (16 registers in x86-64). By contrast, the 64-bit Alpha family of processors defines 32 64-bit wide floating point registers in addition to its 32 64-bit wide integer registers. MEMORY LIMITATIONS Most CPUs are currently (as of 2005) designed so that the contents of a single integer register can store the s. However, by the early 1990s, the continual reductions in the cost of memory led to installations with quantities of RAM approaching 4 gigabytes, and the use of virtual memory spaces exceeding the 4-gigabyte ceiling became desirable for handling certain types of problems. In response, a number of companies began releasing new families of chips with 64-bit architectures, initially for Supercomputer s and high-end Workstation and Server machines. 64-bit computing has gradually drifted down to the personal computer desktop, with some models in Apple 's Macintosh lines switching to PowerPC 970 processors (termed "G5" by Apple) in 2003 and to 64-bit EM64T processors in 2006, and with x86-64 processors becoming common in high-end PC s. The emergence of the 64-bit architecture effectively increases the memory ceiling to 264 addresses, equivalent to 17,179,869,184 gigabytes or 16 Exabyte s of RAM. To put this in perspective, in the days when 4 MiB of main memory was commonplace, the maximum memory ceiling of 232 addresses was about 1,000 times larger than typical memory configurations. Today, when 1 GiB of main memory is common, the ceiling of 264 addresses is about ten billion times larger, i.e. ten million times more headroom. Most 64-bit consumer PCs on the market today have an artificial limit on the amount of memory they can recognize, because physical constraints make it highly unlikely that one will need support for the full 16 exabyte capacity. Apple's Mac Pro, for example, can be physically configured with up to 16 gigabytes of memory, and as such there is no need for support beyond that amount. A recent Linux Kernel (version 2.6.16) can be compiled with support for up to 64 gigabytes of memory. 64-BIT PROCESSOR TIMELINE
|
|
|