Saturday, October 22, 2016

What is the function of an address bus and a data bus in a microprocessor 8085?




According to computer architecture, a bus is defined as a system that
transfers data between hardware components of a computer or between two separate computers
.
System bus is a single bus that helps all major components of a computer to communicate with each other. It is made up of an address bus, data bus and a
control bus
.
Data bus and Address bus ?
The data bus carries the data to be stored, while address bus carries the location to where it should be stored.
1) Address Bus : Address bus is a part of the computer system bus that is dedicated for specifying a physical address.
--> When the computer processor needs to read or write from or to the memory, it uses the address bus to specify the physical address of the individual memory block it needs to access (the actual data is sent along the data bus).
--> More correctly, when the processor wants to write some data to the memory, it will assert the write signal, set the write address on the address bus and put the data on to the data bus.
Similarly, when the processor wants to read some data residing in the memory, it will assert the read signal and set the read address on the address bus. After receiving this signal, the memory controller will get the data from the specific memory block (after checking the address bus to get the read address) and then it will place the data of the memory block on to the data bus.
Good to know : The size of the memory that can be addressed by the system determines the width of the data bus and vice versa. For example, if the width of the address bus is 32 bits, the system can address 2^32 memory blocks (that is equal to 4GB memory space, given that one block holds 1 byte of data).
2) Data Bus : A data bus simply carries data.
Typically, the same data bus is used for both read/write operations.
--> When it is a write operation, the processor will put the data (to be written) on to the data bus.
--> When it is the read operation, the memory controller will get the data from the specific memory block and put it in to the data bus.

What is the difference between Address Bus and Data Bus?
-> Data bus is bidirectional, while address bus is unidirectional.
--> That means data travels in both directions but the addresses will travel in only one direction. The reason for this is that unlike the data, the address is always specified by the processor.
The width of the data bus is determined by the size of the individual memory block, while the width of the address bus is determined by the size of the memory that should be addressed by the system.

No comments:

Post a Comment