64 - Bit Processor - Computer Architecture & Organisation (CAO) - Computer

64 - bit Processor

The central processing unit (CPU) or processor is the brain of a computer. It performs the system's calculating and control operations. When we refer to an N-bit processor, it means the processor's arithmetic logic unit (ALU), internal registers and most instructions are designed to operate on N-bit binary words.

Main components of a CPU

  • ALU (Arithmetic Logic Unit)
  • Registers (general purpose and special purpose)
  • Control Unit (instruction fetch/decode and control signalling)
  • Bus interfaces (data, address and control buses)
  • Cache memory (levels of fast on-chip memory)
  • Floating-point unit (for floating-point arithmetic, may be separate or integrated)
Main components of a CPU

Characteristics of a 64-bit processor

  • A 64-bit processor has a 64-bit ALU, 64-bit registers and 64-bit data paths (buses) where implemented.
  • A 64-bit register allows addressing up to \(2^{64}\) bytes of logical address space.
  • Commercial 64-bit processors appeared in the early 1990s; many modern desktop and server CPUs from vendors such as AMD and Intel implement 64-bit architectures.
Characteristics of a 64-bit processor

Internal architecture

The internal architecture of a microprocessor defines how its logic is organised and how operations are scheduled and executed. The functions performed by a microprocessor can be classified by their initiator and purpose.

Classification of operations

  • Microprocessor-initiated operations: operations initiated by the CPU such as instruction fetches, memory reads/writes, and I/O reads/writes.
  • Internal operations: operations that manipulate data inside the CPU, for example storing values in registers, performing arithmetic/logical operations, condition testing, and stack operations.
  • Externally-initiated operations: operations begun by external devices or signals such as interrupts, reset, ready/wait signalling and DMA requests.

The block diagram of a modern 64-bit microprocessor typically contains the following major parts.

  • General register unit
  • Control and decode unit
  • Bus unit and cache memory unit
  • Floating-point register unit
  • Issue ports (for superscalar/parallel instruction issue)
Classification of operations

Architecture elements specific to 64-bit processors

  • Addressing modes
  • General purpose registers (GPR)
  • Instruction modal behaviour (non-modal and modal instructions)
  • New instructions added to support 64-bit data and address operations
  • New immediate instruction encodings

Addressing modes

Addressing mode determines the effective width of addresses and the operating environment of the processor (for example 24-bit, 32-bit or 64-bit mode). Processors typically provide status or mode bits in a program status word (PSW) or similar control register to select the addressing mode.

  • Two PSW bits may be reserved to designate the addressing mode.
  • Example mapping of addressing mode bits:
    • 00 = 24-bit mode
    • 01 = 32-bit mode
    • 11 = 64-bit mode

General purpose registers (GPR)

How a register is treated depends on the current addressing mode.

  • In 64-bit mode, general purpose registers are treated as 64-bit entities for address generation and data operations.
  • In 32-bit or 24-bit modes, the same physical register may be used with only the lower 32 or 24 bits active for address generation and compatibility with legacy software.
General purpose registers (GPR)

New instructions added for 64-bit support

  • Load Reversed - LRV, LRVR
  • Multiply Logical - ML, MLR
  • Divide Logical - DL, DLR
  • Add Logical with Carry - ALC
  • Subtract Logical with Borrow - SLB
  • Store Reversed - STRV
  • Rotate Left Single Logical - RLL

New immediate instructions

  • Load Logical Immediate
  • Insert Logical Immediate
  • AND Immediate
  • OR Immediate
  • Test Under Mask (high/low variants)

Comparison: 64-bit versus 32-bit processors

  • Data path width: A 32-bit processor typically has 32 data lines; a 64-bit processor has 64 data lines where supported, allowing handling of wider words per cycle.
  • Addressable memory: A 32-bit address space can address up to \(2^{32}\) distinct addresses (about 4 × 10^9 bytes ≈ 4 GB). A 64-bit address space can address up to \(2^{64}\) bytes of memory (a very large address space, commonly expressed in exabytes).
  • Performance: 64-bit processors can be faster for applications that benefit from wider registers and wider data transfers because they process more data per clock cycle and can use additional registers.
  • Backward compatibility: Most 64-bit processors can run 32-bit software, often with performance equal to or better than on native 32-bit hardware; however, driver and OS support must be 64-bit to make full use of the extended features.
Comparison: 64-bit versus 32-bit processors
AdvantagesDisadvantages
Can address far more physical and virtual memory than 32-bit systems, enabling large-memory applications and databases.Compatibility can be an issue: some legacy 32-bit drivers or low-level software require 32-bit support or translation.
Often provides more general purpose registers and wider registers, improving compiler optimisation and execution speed for suitable workloads.A 64-bit operating system requires 64-bit device drivers; without them, some hardware may not function correctly.
Higher throughput for integer and pointer operations in many applications; better performance for memory-intensive and scientific workloads.Potentially higher cost for hardware and increased memory usage for pointers and some data structures, which can increase footprint for applications not benefiting from 64-bit widths.

Practical considerations and applications

  • 64-bit processors are standard in modern servers, desktops and many mobile devices where the operating system and applications take advantage of the extended address space and register set.
  • Operating systems must provide 64-bit kernels and appropriate drivers to use the full capabilities of 64-bit processors.
  • Compilers and toolchains provide both 32-bit and 64-bit code generation; for performance-critical applications, recompiling for 64-bit can yield measurable benefits.
  • Legacy software compatibility is usually preserved through mixed-mode execution environments, but careful testing is required when migrating systems.

Summary

In summary, a 64-bit processor extends the CPU datapath, registers and addressing to 64 bits, enabling vastly larger addressable memory, additional registers and potential performance improvements for suitable workloads. Adoption requires appropriate operating system and driver support, and while there are compatibility and cost considerations, the advantages for servers, scientific computing and large-memory applications make 64-bit architectures the standard for modern computing.

The document 64 - Bit Processor is a part of the Computer Science Engineering (CSE) Course Computer Architecture & Organisation (CAO).
All you need of Computer Science Engineering (CSE) at this link: Computer Science Engineering (CSE)

FAQs on 64 - Bit Processor

1. What is a 64-bit processor?
Ans. A 64-bit processor refers to a central processing unit (CPU) that can handle 64 bits of data in a single instruction. It allows the processor to access larger amounts of memory and perform more complex calculations compared to a 32-bit processor.
2. How does a 64-bit processor differ from a 32-bit processor?
Ans. A 64-bit processor can handle larger amounts of data, support more memory, and perform more complex calculations compared to a 32-bit processor. It offers improved performance and efficiency, especially for applications that require high memory usage or involve complex computations.
3. What are the advantages of using a 64-bit processor?
Ans. Some advantages of using a 64-bit processor include: - Increased memory capacity: A 64-bit processor can access and utilize larger amounts of memory compared to a 32-bit processor. - Improved performance: It can handle more complex calculations, resulting in faster processing speeds for tasks such as gaming, video editing, and scientific simulations. - Better multitasking capabilities: With a larger memory capacity, a 64-bit processor can handle multiple programs running simultaneously without significant performance degradation.
4. Can a 64-bit processor run 32-bit software?
Ans. Yes, a 64-bit processor can run 32-bit software. Most modern 64-bit processors support a mode called "compatibility mode" that allows them to run 32-bit applications without any issues. However, running software specifically designed for a 64-bit architecture can provide better performance and take full advantage of the processor's capabilities.
5. How do I determine if my computer has a 64-bit processor?
Ans. To determine if your computer has a 64-bit processor, you can follow these steps: 1. On Windows: Right-click on "My Computer" or "This PC" and select "Properties." Look for the system type, which will indicate whether your operating system is 32-bit or 64-bit. 2. On macOS: Click on the Apple menu and select "About This Mac." Under the "Overview" tab, check the "Processor" field to see if it mentions a 64-bit processor. 3. On Linux: Open a terminal and type the command "uname -a" to display system information. Look for "x86_64" or "amd64" in the output, indicating a 64-bit processor.
Explore Courses for Computer Science Engineering (CSE) exam
Get EduRev Notes directly in your Google search
Related Searches
64 - Bit Processor, Objective type Questions, practice quizzes, pdf , 64 - Bit Processor, shortcuts and tricks, MCQs, Viva Questions, past year papers, study material, 64 - Bit Processor, Sample Paper, Exam, ppt, Semester Notes, mock tests for examination, Previous Year Questions with Solutions, Free, video lectures, Important questions, Summary, Extra Questions;