The original IBM PC used a timer from the 8254 PIT and a channel from the 8237 DMAC in order to refresh RAM with dummy reads (and I think used NMI to signal parity errors.) I'd like to know when PC's started having dedicated memory controllers.
-
It is not the only task of a 'DRAM controller' to do DRAM memory regeneration. The more important part is to properly time DRAM cycles, generate needed control signals and properly mux row/column addresses from the cpu-presented one. Therefore, the DRAM controller existed from the very beginning (and in every machine using DRAM, not only pc), the only difference was which type of refresh it had.– lvdNov 11, 2021 at 5:56
-
@lvd Of course it does. The very grandfather of DRAM controllers, Intel's 8203, already offered independent refresh.– RaffzahnNov 11, 2021 at 6:11
-
Now, @antony, for the question, it might quite depend on your value or 'PC-compatible', as having a PC not doing refresh via TIMER/DMA is already breaking compatibility. Not sure if there's a straight answer. Having saidthat, there are several kinda to mostly compatible as early as 1981, using dedicated DRAM controllers.– RaffzahnNov 11, 2021 at 6:15
-
historyofinformation.com/detail.php?entryid=3847– Bruce AbbottNov 12, 2021 at 17:36