@Nitesh Singh 2
I think the below statement you made is wrong.
On a 32bit machine, the maximum amount of memory is around 4GB
The maximum amount of memory actually depends on the address bus size. We always address words. We also call each word as a cell.
Word size = 32 bits in a 32-bit machine and data bus has 32 lines to carry 32 bits of data.
Word size = 64-bits in a 64-bit machine and data bus has 64 lines to carry 64 bits of data.
Ex: Say I have a 32-bit machine and 8 GB RAM. That means we will have $\frac{8GB}{32 bits}$ = $\frac{2^{33}B}{2^{2}B}$ = $2^{31}$ words.
So, the address bus will need to have 31 lines to carry 31 bit address.
In question it has been given:
A 32-bit wide main memory unit with a capacity of 1GB is built using 256 M $\times$ 4-bit DRAM chips.
It means that word width = 32 bits. Number of such 32 bit words that can fit in 1GB RAM = $\frac{2^{30}Bytes}{32 bits} = \frac{2^{30}}{2^{2}} = 2^{28}$ words. Therefore we will need 28-bits to address each word in this RAM.
256 M $\times$ 4-bit, this means that there are 256 M cells each of which contains a word of 4-bit length. Size of such D-RAM chip = 256 M $\times$ 4-bit = $2^{30}$ bits = $2^{27}$ Bytes.
Now we need to build a RAM of size 1GB = $2^{30}$Bytes using D-RAM chip of size 256 M $\times$ 4-bit = $2^{27}$ Bytes.
Clearly we will need 8 such 256 M $\times$ 4-bit D-RAM chips.