A computer consists of many registers and data paths, which are used for transferring the data from one register to another register. Consider that separate wires are used for linking registers, than the huge number of wires in the circuit will create a mess and increase the complexity of the system.
This issue is resolved by using common bus system in which, the information is transferred in multiple configuration register. In a bus structure, common lines are used where; each line is used for transferring each bit of the binary data at a time.
In Computer architecture, Bus System can be of following two types:
Parallel Bus: A parallel Bus contains several lines each for individual bits to get transferred simultaneously at a time. This technique is eventually fast but is risky for some extent.
Serial Bus: Serial Bus is relatively thin. Lines of transfer are relatively limited. It is slower than a parallel bus but is secure enough.
A parallel Bus can be created using MULTIPLEXERs. Several Multiplexers are connected in such a way that the output lines of all Multiplexers constitute the different lines of the Parallel Bus.
3-state Buffer Gate: A 3-state Buffer Gate is nothing but a simple Buffer Gate with an extra input. This extra input adds an extra state to the Buffer Gate Truth-Table. Consider the following diagram:\
A Serial Bus can be created using Decoders and 3-state Buffer gates. Several 3-state buffer gates are connected with each output of a Decoder. Logic behind using 3-state buffer Gates is to avoid chaos on the single line carrying several data back to back.
Memory transfers simply mean to a transfer from a specific location of memory to a register. However a memory transfer can be either ways. It can work either from Memory to Register or from Register to Memory.
Memory Read Operation: A memory read operation first searches for a location in the memory and then transfers the value located at that location to a register. Ex.:
Memory Write Operation: A memory write operation simply extracts data from a register and transfers it to a memory location. Ex.: