I like to build circuits with 7400 series logic chips. DRAM-like is perfect because it's big, has plenty of logic, and has some challenge.
go to http://www.falstad.com/circuit/circuitjs.html and do "file>import from local file" after downloading
plain - 1.75 kB - 04/21/2017 at 17:00
I have been thinking a lot about how I would get the relay DRAM to work as I want it, and how to save parts at the same time. I originally referenced YG's https://hackaday.io/project/18757-ygrec16-ygs-16bits-relay-electric-computer/log/49877-capacitors-and-diodes project log for an idea of how to make large amounts of DRAM. This design uses TONS of diodes and theoretically does not support non-volatile storage (discussed in previous log), although I haven't tested that.
I only have maybe 60 diodes. Some are in PCBs. So, I would have to order a few hundred diodes from @Digi-Key Electronics. I don't want to spend more money on parts other than maybe more capacitors, so I decided to run a simulation of the DRAM without diodes. It worked! and it's still non-volatile in it's weird capacitor-based way.
I don't have many relays (yet), that's why I didn't actually build the circuit. It does seem in the simulation however that the diodes make the memory work worse, not better. A real circuit will tell if I need the diodes.
I think the diodes were for preventing capacitor loops. Since I am using relays to 'disable/enable' the capacitors, the loops never occur. So in theory the diodes are unneeded.
You may view the simulation here.
I have been looking at DRAM for a while. I first saw how it worked on an example circuit for this circuit simulator. I had an idea then that a semi-volatile memory could be invented. It would be like DRAM in that it uses capacitors but like EEPROM in that it would remember the data through a power cycle. I wasn't thinking about relays then, so I was having troubles with not having any energy leak too fast. Essentially this strange semi-volatile memory would only remember for a time, say, a few minutes at best. And would still need a refresh.
I happen to have some relays coming in the mail, so I thought about this idea. I think I could use relays or a mix of relays and logic chips to prevent leakage. The multiplexer and data lines would be a mix of relays and logic chips so that when power is lost no capacitor has a lead connected into the rest of the circuit. The circuit would be broken. Of course, the charge of the capacitor would die over time anyways, but it would be semi-volatile. Once powered on again the capacitors would be reconnected.
Basically I want to make semi-volatile DRAM. Kinda weird but really cool!
I came up with some schematics and ideas during dinner tonight. They include the design I already tried, a hypothetical design, and another design that for some reason doesn't work.
The schematic to the top left is a tested and working design, but is horribly inefficient as far as chip usage goes. Im looking for better designs (More about that in a moment). The one below it is practically guaranteed to work. The one to the right, for some weird reason, does not work. I used 4Mhz because it was easy just lying around.
So basically I need mass capacitor storage. Like what Yann Guidon / YGDES suggested. He suggested that I use capacitors + 2 diodes to - what it looks to me like - "address" the capacitors and write/read to the ones that are selected. I have been messing around with this but haven't had any success. Bummer because it would actually be cool to use this kind of DRAM in my #SBP-CPU (Slice Based Processor) project. I'm going to keep trying though so hopefully I can solve it and mass store data in capacitors. Sweet!
My current working design uses a buffer gate for each bit of data. A capacitor connects to the input of the buffer. A diode goes from the output of an AND gate to the capacitor, positive lead to the AND. The AND's inputs connect to the output of the bit's buffer gate and to the refresh clock. For the buffer I used 2 NOT gates, which works well. Im going to create an array of maybe 4 bytes for test. Here is an image of what I have so far: