Electronic – Microprocessor 8085

8085memorymicroprocessorregister

What is the need of enabling 8 bit register in memory using address bus to read data from it?Enabling is required to write data into register and after that to read can't we just provide read signal to output tri-state buffer to read data.Because after writing data if we disable the enable signal the D flipflop is in memory state and we can acess that memorized output by providing read signal to tri state buffer.

Best Answer

If you just use the read (RD) signal to enable the buffer, without a separate enable signal, then that buffer will respond on every address that the CPU reads from. Since you will also have some memory devices connected the bus, both the memory device and the buffer will respond at the same time and cause a bus collision, where the data on the bus is corrupted. The separate enable signal is generated by "decoding" the address bus so that the buffer will only respond on one address that is not used by the memory devices.

Also, be aware that the 8085 normally doesn't use memory mapped IO. It has special IN and OUT instructions to read from IO mapped IO. In effect these I/O devices are in a separate address space to the rest of the memory. If the tri-state buffer is the only I/O device that you have on your system it may be possible to use it without fully decoding an address, but you will still need to generate the enable signal for it from the read (RD), write (WR) and IO/M signals.