here is a report about the use of early-mid 1970s 4k x 1 DRAMs in the Apple-1.
Most of us are using later 4k x 1 DRAMs produce towards the end of the 1970s or later, such as the ones I furnished with my famous kits (now sold out). Typical examples are:
Motorola MCM4027AC3 Date codes 7927, ...
Mostek MK4027N-4 Date codes 7935, ...
Intersil MK4027J-3 Date codes 7948,8017 ...
It was found that the former needed all the "reliability mods" with the extra bypass capacitors and the six damping resistors, Mostek often was happy with only the damping resistors, and on some PCBs / builds, the Intersil ones needed no reliability mods at all.
A while ago I had the opportunity to acquire a S-100 bus board with 16k Bytes of DRAM, built by Processor Technology, with a (c) 1977 on the PCB, and using white ceramic Intel C2104-6 DRAMs with date codes like 7545 (45 week of 1975 !) or 7601 (1st week of 1976 !). Alas, the date codes are in the bottom, while the markings on the top don't give a clue:
I found out when I desoldered the DRAMs. One out of 32 was dead, probably the reason why this memory card had been put away and then was forgotten. Otherwise it may have ended up in a landfill together with the rest of the S-100 system.
This was the opportunity for me to get my hands on earlier, slower 4k x 1 DRAMs which were of the same vintage as the Mostek MK4096N-11 with date codes 7601,7620,... seen in the Apple-1 originals. These MK4096, like the Intel C2104 were 1st generation 4kbit DRAMs, while all the other ones listed above are 2nd generation 4kbit DRAMs, with revised circuitry and the next process node, and hence, much faster then the 1st generation. After the 2nd generation 4k DRAMs came out, which were faster, had a smaller die size, higher yields, and lower price, the 1st generation DRAMs quickly went the way of the dinosaur, and this is why they are so hard to find nowadays. The 2nd generation 4kbit DRAMs soldiered on and were still in production in the early 1980s, despite 16 kbit and 64 kbit DRAMs soon replaced them in new computer designs.
For me, the curious point was whether the Apple-1 would work with these 2104 DRAMs, so I rigged one of my fourteen Apple-1 as a test bench:
The timing resistor on the 74123 was replaced. If you ever try this, use a a series connected 5kOhm fixed resistor and a 20kOhm trim pot:
Finally, the Wozmon PROMs were replaced with my diagnostic PROMs which contain a powerful DRAM test, and the 6502 was replaced with an early MOS Technology one which is the slowest 6502 I have. All others are "A" or "C" types rated for more than 2 MHz operation, and these have a more relaxed timing when running in the Apple-1. Note that in the Apple-1, the address bus setup time does not matter for this experiment, but the data bus setup time does. If a faster 6502 is used, then the read data may come a bit later, allowing for a slower DRAM.
I then let the machine run and by turning the trim pot, I tested the operating margins for the 74123 oneshot timing (logic high time Th on 74123 pin #12 measured by oscilloscope):
Th < 420ns: DRAM NO GO
420ns <= Th <= 530ns: DRAM GO
Th > 530ns: DRAM NO GO
The "GO/NO GO" decision was based on occurence of the first, rare DRAM errors. So 420ns and 530ns are the points where the DRAM operation gets wonky.
Now, calculate the "center" of the DRAM GO range, which is the mean: (420ns + 530ns) / 2 = 475ns
In the Apple-1 "Processor Section" schematic of the Apple-1 manual, Woz specifies 480ns as the target. Compare to the 475ns result above.
This experiment proves several things:
1. The DRAM timing in the Apple-1 has been chosen carefully and is optimum for these slow 1st generation DRAMs.
2. Any trouble with DRAM errors in the Apple-1 does no come from circuit design mistakes.
3. Woz is a competent digital designer (the "genius" label never applies for mundane timing calculations).
Years ago, when trying to find out why my first Apple-1 clone I just had built did not work, I did some hand calculations on the whole DRAM timing and using datasheet values for these old parts and an 1 MHz 6502, I arrived at an optimum oneshot setting that was very close to the 480ns specified by Woz.
So both the experiment on the actual hardware and the theoretical calculations prove that the 480ns is a good choice to run mid 1970s DRAMs on an Apple-1.
Of course, this quick and crude experiment was only done on one specimen of Apple-1, and the exact speed of my "slow" 6502 is unknown, all I know it's an honest 1 MHz type which does not run at 2 MHz, tried in an OSI Superboard II which had the 2 MHz mod. If I wanted to spend more time on this, I could repeat this experiment with my other thirteen Apple-1 clones, but as far as I'm concerned, all I wanted to find out if these 1975/76 Intel 2104-6 (which are one of the slower speed grades of this type) can run reliably on an Apple-1 without changing the oneshot timing.
The bottom line is, they should just drop into the sockets and all is fine.
Comments invited ! I could write more anecdotes about early 4k DRAMs, but not in this post.
- Uncle Bernie