Die DA7 (des DRAM) wird nur von A8 und A9 der CPU versorgt, soweit klar. Nur wird einmal die Phi1 und einmal die Phi2 Phase verwendet?!
Ich verstehe schon, dass dadurch einmal die Zeile (RAS) und einmal die Spalte (CAS) adressiert wird. Nur dachte ich eigentlich immer, dass in der Phi2 Phase die Adressen der 6502 ungültig sind?? Bzw. eigentlich sogart der Bus frei ist, weil in der 8050 greigen ja die CPUs abwechselnd auf RAM zu?
6502 != 6510.
Der 6502 hat seine Adressen immer "enabled", deswegen ist in den doppel-Prozessormaschinen von Commodore auch immer ein Multiplexer oder 3-state Treiber zwischen der CPU und dem eigentlichen Bus. Der 6502 für sich gesehen geht aber etwas gemütlicher zur Sache: Währens Phi2=low ändern sich irgendwann die Adressen und werden "irgendwo in der Mitte" des Halbzyklus gültig. Sie bleiben auch gültig über den gesamten kommenden Halbzyklus, den Du als "gültig" z.B. vom C64 kennst. Die Verzögerungsschaltung generiert also ein Clock-Signal, dessen Flanke irgendwo in phi2=low liegt, aber schon im Gültigkeitsfenster der Adressen liegt (so hofft man - wie gesagt, Rotznasenstyle!). Dort irgendwo wird RAS low gezogen und später wird die CAS-Adresse angelegt. Noch später (ja, man muss wirklich warten, das kapieren Viele nicht) wird dann CAS gezogen. Oder eben nicht, denn das kann man auch als die "Select-Leitung" sehen.
Jetzt der Refresh-Trick: Da die RAS-Adresse immer angelegt wird und auch immer RAS gezogen wird, braucht man evtl. gar keine Refresh-Routine, solange die CPU immer eine ganze Page innerhalb von 4ms abspult. Und wenn's mal 5 oder 6ms werden, tut das auch nicht weh, denn die Rams aus der Zeit sind schon sehr genügsam. Die verlieren die Daten erst so schnell, wenn sie wirklich warm werden, aber bei Zimmertemperatur halten sie die Daten auch mal über 100ms.
Jens