All Topics  
Address bus

 

   Email Print
   Bookmark   Link






 

Address bus



 
 
An address bus is a computer bus
Computer bus

In computer architecture, a bus is a subsystem that transfers data between computer components inside a computer or between computers. Each bus defines its set of connectors to physically plug devices, cards or cables together....
 (a series of lines connecting two or more devices) that is used to specify a physical address
Memory address

In computer science, a memory address is an identifier for a computer memory location, at which a computer program or a hardware device can store a piece of data and later retrieve it....
. When a processor
Central processing unit

A central processing unit is an electronic circuit that can execute computer programs. This broad definition can easily be applied to many early computers that existed long before the term "CPU" ever came into widespread usage....
 or DMA
Direct memory access

Direct memory access is a feature of modern computers and microprocessors that allows certain hardware subsystems within the computer to access system Computer storage for reading and/or writing independently of the central processing unit....
-enabled device needs to read or write to a memory location, it specifies that memory location on the address bus (the value to be read or written is sent on the data bus). The width of the address bus determines the amount of memory a system can address. For example, a system with a 32-bit address bus can address 232 (4,294,967,296) bytes, or 4GiB
Gibibyte

Gibibyte is a unit of Computer data storage, abbreviated GiB.The gibibyte is closely related to the gigabyte, which can either be a synonym for gibibyte, or refer to 109 bytes = 1,000,000,000 bytes, depending on context ....
, of memory.

As of early 2009, most desktop computers are 32-bit.






Discussion
Ask a question about 'Address bus'
Start a new discussion about 'Address bus'
Answer questions from other users
Full Discussion Forum



Encyclopedia


An address bus is a computer bus
Computer bus

In computer architecture, a bus is a subsystem that transfers data between computer components inside a computer or between computers. Each bus defines its set of connectors to physically plug devices, cards or cables together....
 (a series of lines connecting two or more devices) that is used to specify a physical address
Memory address

In computer science, a memory address is an identifier for a computer memory location, at which a computer program or a hardware device can store a piece of data and later retrieve it....
. When a processor
Central processing unit

A central processing unit is an electronic circuit that can execute computer programs. This broad definition can easily be applied to many early computers that existed long before the term "CPU" ever came into widespread usage....
 or DMA
Direct memory access

Direct memory access is a feature of modern computers and microprocessors that allows certain hardware subsystems within the computer to access system Computer storage for reading and/or writing independently of the central processing unit....
-enabled device needs to read or write to a memory location, it specifies that memory location on the address bus (the value to be read or written is sent on the data bus). The width of the address bus determines the amount of memory a system can address. For example, a system with a 32-bit address bus can address 232 (4,294,967,296) bytes, or 4GiB
Gibibyte

Gibibyte is a unit of Computer data storage, abbreviated GiB.The gibibyte is closely related to the gigabyte, which can either be a synonym for gibibyte, or refer to 109 bytes = 1,000,000,000 bytes, depending on context ....
, of memory.

As of early 2009, most desktop computers are 32-bit. All modern processors are 64-bit, but the operating systems (which must also support 64-bit addresses) most commonly used are 32-bit. Slowly 64-bit operating systems are starting to become mainstream, and these greatly increase the amount of memory that can be addressed by the system. In theory a 64-bit address bus can address 264 memory locations; 16 exabyte
Exabyte

An exabyte is a unit of information or computer storage equal to one quintillion bytes. It is commonly abbreviated EB. When used with byte multiples, the SI prefix may indicate a power of either 1000 or 1024, so the exact number may be either:...
s, or 17.2 billion gigabytes. In practice current processors (and current versions of Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
) are artificially limited to much less than this (typically 48-bits).

Implementation

Early processors used a wire for each bit of the address width. For example, a 16-bit address bus had 16 physical wires making up the bus. As the bus becomes wider, this approach becomes less convenient and more expensive to implement. Instead, most modern systems make the address bus faster than the data bus, and send the address in two parts. For example a 32-bit address bus can be implemented by using 16 wires and sending the first half of the memory address, immediately followed by the second half.

Examples

Accessing an individual byte frequently requires reading or writing the full bus width (a word) at once. In these instances, the least significant bits of the address bus may not even be implemented—it is instead the responsibility of the controlling device to isolate the individual byte required from the complete word transmitted. This is the case, for instance, with the VESA Local Bus
VESA Local Bus

The VESA Local Bus was mostly used in personal computers. VESA Local Bus worked alongside the Industry Standard Architecture bus; it acted as a high-speed conduit for memory-mapped I/O and Direct memory access, while the ISA bus handled interrupts and port-mapped I/O....
, which lacks the two least significant bits, limiting this bus to aligned
Data structure alignment

Data structure alignment is the way data is arranged and accessed in computer memory. It consists of two separate but related issues: data alignment and data structure padding....
 32-bit transfers.

Historically, there are also examples of computers which were only able to address larger words, such as 36 or 48 bits long.

See also

  • Memory address
    Memory address

    In computer science, a memory address is an identifier for a computer memory location, at which a computer program or a hardware device can store a piece of data and later retrieve it....