Re: 256K RAM Pack
Posted: Thu Apr 27, 2023 9:14 am
Another update. This is really for anyone who is thinking of designing a ram pack or likes the technical aspect.
I now have a 256K ram pack that can be used to store data and can be removed and re-inserted into the organiser. It sounds like a basic feature, and it is, but it was a problem with the first design. I think I know what is going on and have to find a proper fix.
So, technical bit: I am using and active high CE on the RAM chip to power it down. VCC is attached to the CE and when it disappears (slot powered down, although there is a small current still available in that case, or, more importantly, when the datapack is removed) then the CE goes low and the RAM chip ignores all inputs and moves to a very low power mode. That all works fine. When unplugged, all inputs to the chip apart from VCC (I originally had VCC floating which was an error, it's pulled down with a 680K resistor now) which has the battery supply on it to retain the contents of the RAM. The problem is that WE is also low, which is a write, held off by CE being low. When the datapack is inserted, though, it looks like CE goes high before WE goes high and a write occurs. That's not good and the organiser sizes the pack as I think the header is corrupted. A pull up on the WE line stops that happening as a write is not driven when the datapack is inserted. With that arrangement the pack can be removed and re-inserted and no problems.
Unfortunately, the 680K resistor to WE seems to be drawing too much current for the battery and it drains too quickly. I need to revise the circuit to use some other method to hold the WE high or hold off the write. It's useful writing this sort of thing out, as I'm writing this I'm now not sure why the battery drain would be as high as it is. Anyway...
This sort of timing problem is why some hot plug devices have different length connectors as that allows timing to be set up on insertion and removal.
End of technical bit.
Andrew
I now have a 256K ram pack that can be used to store data and can be removed and re-inserted into the organiser. It sounds like a basic feature, and it is, but it was a problem with the first design. I think I know what is going on and have to find a proper fix.
So, technical bit: I am using and active high CE on the RAM chip to power it down. VCC is attached to the CE and when it disappears (slot powered down, although there is a small current still available in that case, or, more importantly, when the datapack is removed) then the CE goes low and the RAM chip ignores all inputs and moves to a very low power mode. That all works fine. When unplugged, all inputs to the chip apart from VCC (I originally had VCC floating which was an error, it's pulled down with a 680K resistor now) which has the battery supply on it to retain the contents of the RAM. The problem is that WE is also low, which is a write, held off by CE being low. When the datapack is inserted, though, it looks like CE goes high before WE goes high and a write occurs. That's not good and the organiser sizes the pack as I think the header is corrupted. A pull up on the WE line stops that happening as a write is not driven when the datapack is inserted. With that arrangement the pack can be removed and re-inserted and no problems.
Unfortunately, the 680K resistor to WE seems to be drawing too much current for the battery and it drains too quickly. I need to revise the circuit to use some other method to hold the WE high or hold off the write. It's useful writing this sort of thing out, as I'm writing this I'm now not sure why the battery drain would be as high as it is. Anyway...
This sort of timing problem is why some hot plug devices have different length connectors as that allows timing to be set up on insertion and removal.
End of technical bit.
Andrew