|
Introduction The
question of why we need 64-bit computing is often asked but rarely answered in
a satisfactory manner. There are good reasons for the confusion surrounding the
question.That is why first of all; let's look through the list of users who need
64 addressing and 64-bit calculations today: oUsers of CAD, designing systems,
simulators do need RAM over 4 GB. Although there are ways to avoid this limitation
(for example, Intel PAE), it impacts the performance. Thus, the Xeon processors
support the 36bit addressing mode where they can address up to 64GB RAM. The
idea of this support is that the RAM is divided into segments, and an address
consists of the numbers of segment and locations inside the segment. This approach
causes almost 30% performance loss in operations with memory. Besides, programming
is much simpler and more convenient for a flat memory model in the 64bit address
space - due to the large address space a location has a simple address processed
at one pass. A lot of design offices use quite expensive workstations on the RISC
processors where the 64bit addressing and large memory sizes are used for a long
time already. oUsers of data bases. Any
big company has a huge data base, and extension of the maximum memory size and
possibility to address data directly in the data base is very costly. Although
in the special modes the 32bit architecture IA32 can address up to 64GB memory,
a transition to the flat memory model in the 64bit space is much more advantageous
in terms of speed and ease of programming. oScientific calculations. Memory size,
a flat memory model and no limitation for processed data are the key factors here.
Besides, some algorithms in the 64bit representation have a much simpler form.
oCryptography and safety ensuring applications get a great benefit from 64bit
integer calculations.
The labels "16-bit," "32-bit"
or "64-bit," when applied to a microprocessor, characterize the processor's
data stream. Although you may have heard the term "64-bit code," this
designates code that operates on 64-bit data. In more specific terms, the labels
"64-bit," 32-bit," etc. designate the number of bits that each
of the processor's general-purpose registers (GPRs) can hold. So when someone
uses the term "64-bit processor," what they mean is "a processor
with GPRs that store 64-bit numbers." And in the same vein, a "64-bit
instruction" is an instruction that operates on 64-bit numbers. In the diagram
above black boxes are code, white boxes are data, and gray boxes are results.
The instruction and code "sizes" are not to be taken literally, since
they're intended to convey a general feel for what it means to "widen"
a processor from 32 bits to 64 bits.
Not
all the data either in memory, the cache, or the registers is 64-bit data. Rather,
the data sizes are mixed, with 64 bits being the widest. Note that in the 64-bit
CPU pictured above, the width of the code stream has not changed; the same-sized
opcode could theoretically represent an instruction that operates on 32-bit numbers
or an instruction that operates on 64-bit numbers, depending on what the opcode's
default data size is. On the other hand, the width of the data stream has doubled.
In order to accommodate the wider data stream, the sizes of the processor's registers
and the sizes of the internal data paths that feed those registers must be doubled.
Now
let's take a look at two programming models, one for a 32-bit processor and another
for a 64-bit The registers in the 64-bit CPU pictured above are twice as wide
as those in the 32- bit CPU, but the size of the instruction register (IR) that
holds the currently executing instruction is the same in both processors. Again,
the data stream has doubled in size, but the instruction stream has not. Finally,
the program counter (PC) has also doubled in size.
For the simple processor
pictured above, the two types of data that it can process are integer data and
address data. Ultimately, addresses are really just integers that designate a
memory address, so address data is just a special type of integer data. Hence,
both data types are stored in the GPRs and both integer and address calculations
are done by the ALU.Many modern processors support two additional data types:
floating-point data and vector data. Each of these two data types has its own
set of registers and its own execution unit(s).
You may also like this : Sniffer for detecting lost mobiles, Mobile Phone Cloning, Nano Cars Into The Robotics , Mind-Reading Computer, Intelligent Speed Adaptation , Global Wireless E-Voting , E-Cash Payment System , Cyborgs, Brain Fingerprinting , Biometrics in SECURE e-transaction , X- Internet , Surface Computer, Green Cloud , Digital Jewelry , Brain Gate , Palm Vein Technology , 5 Pen PC Technology , iDEN , Hi-Fi, Packet Sniffers, Brain Chips , Phishing , Pill Camera, Blue Brain , Biometric Voting System , 3D Television , 3D password, Gi-Fi , Graphical Password Authentication, 4G Broadband , Finger Tracking , Eye Movement-Based Human Computer Interaction Techniques , Ethical Hacking, Secure ATM by Image Processing , Dynamic Languages ,In-Vehicle Networking , Plastic Memory , Protein Memory , Setting up a LAN using Linux , UMTS , Money Pad, The Future Wallet , Low Power UART Design , SPECT , Buffer overflow attack , Hurd , Intel Centrino Mobile Technology , MPEG Video Compression , Survivable Networks Systems , Self Organizing Maps , Mobile IP,IT Seminar Reports, PPT and PDF.
|
<<back |