First page Back Continue Last page Overview Graphics
Step 3. Partition the Address Lines
Address lines corresponding to values within the address space of the chip should be connected to the chip address pins directly.
Address lines corresponding to values outside the address space should be connected to the address decoding circuit.
Assigning starting addresses that are integer multiples of chip addressable space simplifies decoding.
Otherwise, some lines must be connected to both the chip and the decoding circuit.
Assigning the starting address to be an integer multiple of the chip addressable space makes a clean separation of address information into two groups. For example, if the chip has a size of 4K and the starting address of that chip is an integer multiple of 4K such as 8K, 24k, etc., only the lower 12 bits of the address bus change value for all addresses in the chip and bit 12 and above are constant.
How should we deal with those address bits that does not change for a given memory chip? We can use these bits to support chip selection. We have learned that each data line can accept the signal from only one chip at each time. For example, the 6 constant bits in EEPROM addresses can be used as the input of a circuit such that the EEPROM chip is selected only when an address on the address bus is between (and including) the starting address and ending address of the EEPROM. In other words, we can make a digital circuit that enables the EEPROM chip only when the left most 6 bits in the address equal 001000.
If the starting address of a chip is not an integer multiple of the size of the chip, some address bit must be connected to both the address pins of the memory chip and also connected to the address decoding circuit for that chip.