# Select signals for memory mapped into common address space

I just got a hobby of studying this topic and it is quite intriguing. In one of the books, I came up with the following question:

A computing hardware is to be designed with a processor generating 32bit address for memory. It requires 2GB of RAM, 128MB of EPROM and 1MB of EEPROM, and these are mapped in the memory address space as follows.

EEPROM: 0 to (1M–1) EPROM: 128M to (256M–1) RAM: 2G to (4G–1).

Write the Boolean expressions for the signals EEPROM Select, EPROM Select, RAM Select.

I couldn't find any solution to this and there is hardly any resource on the internet too.

So can anyone explain me, how we write the Boolean expression for such questions? I am aware of boolean logic to logic gates, but I am unable to make anything out of this question.

• Please credit the source of all copied material. – D.W. Apr 5 at 7:05
• Don't use images as main content of your post. This makes your question impossible to search and inaccessible to the visually impaired; we don't like that. Please transcribe text and mathematics. – D.W. Apr 5 at 7:05

Let's call the memory address $$x$$. Thus $$x$$ is composed of bits $$x_0,\ldots,x_{31}$$, where $$x_0$$ is the LSB and $$x_{31}$$ is the MSB.
A memory address belongs to the EEPROM mapped area if it is in the range $$0,\ldots,2^{20}-1$$. You can check that this is equivalent to the condition $$x_{20} = \cdots = x_{31} = 0$$, which you can translate into a Boolean expression for "EEPROM Select".