I have a homebuilt home control system based on an 80c51FA processor. I recently had a memory failure on it. It currently uses 32K x 8 bit mmemories, sharing the space for code and variables. I would like to replace the 2 memories with one128k x 8 bit memory.
It has been a long time since I did much hardware design. I am trying to figure out how I can connect one 128k byte memory to map to 64 KB of program and 64 KB of data memory, which would mean I need to select half the chip depending on whether I am reading program code or data. Looking at the hardware manual, I don't see an easy way to do this, as it seems that the RD\\ or PSEN\\ are normally used to access data or program memory, and I need a high address bit to differentiate them.
The chip only handles a 64 KB address space. I would jumper the program memory to be data memory while I loaded the program, then switch the jumper back.
Can anyone offer me any suggestions of how to do this? I would really like to increase the available space in both memories. I have one 32 pin memory socket and one 28 pin socket available with a fair amount of flexibility of signals to the high address and chip select bits.