Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » U880 Refresh register » Themenansicht

Autor Thread - Seiten: -1-
000
02.12.2021, 14:08 Uhr
PIC18F2550

Avatar von PIC18F2550

Hallo wie verhält sich das R register beim beschreiben und Lesen.

Mich interressiert hauptsächlich das 8. Bit, die anderen 7 sind mir bekannt.

? beim schreiben wird es ignoriert
? beim lesen steht es auf 0/1/das was beim letzten schreiben gesetzt war.

Danke.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
02.12.2021, 21:38 Uhr
FL



Hallo PIC,

das 8.Bit des Refresh-Registers kann ebenfalls geschrieben und gelesen werden.
Es ist nur beim Zählen außen vor.

Gruß
Frank.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
02.12.2021, 21:55 Uhr
jde

Avatar von jde

Das R-Register habe ich früher in meinem CP/M BIOS in einer CTC Interrupt Routine wegen dem 8-Bit DRAM Refresh geändert. Ich hatte in meinem System 256k RAMs für die RAM Disk die brauchten 8-Bit Refresh.

rfsh: ei ; 8 Bit Refresh Routine
push af
ld a,r
xor 80h
ld r,a
pop af
reti



Gruß
Jonny

Dieser Beitrag wurde am 02.12.2021 um 22:05 Uhr von jde editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
03.12.2021, 08:47 Uhr
PIC18F2550

Avatar von PIC18F2550

Hab es in einer Z80 Doku gefunden.

beim lesen steht es auf 0/1/das was beim letzten schreiben gesetzt war.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
03.12.2021, 09:20 Uhr
Bert



So, wie ich das verstanden habe, wird das IR-Register ähnlich gehandhabt, wie PC, der Program Counter.
Für das Inkrementieren und Dekrementieren gibt es eine eigene Logikeinheit.

Der I-Teil (Interrupt) darf nicht geändert werden und es war offensichtlich einfacher den Carry-Lock-Ahead-Adder zwischen Bit 7 und Bit 8 zu unterbrechen.

Wer noch was für lange verschneite Winterabende sucht, wir hier zum Thema fündig:

Registerimplementierung des Z80
http://www.righto.com/2014/10/how-z80s-registers-are-implemented-down.html

Die INC/DEC-Logik im Detail:
http://www.righto.com/2013/11/the-z-80s-16-bit-incrementdecrement.html


In der Refresh-Phase wird das komplette IR-Register auf den Adressbus gelegt. Man kann das Bit 8 im R-Register also als zusätzliches Flag verwenden, oder - wie beschrieben - den Refresh per Software/CTC auf 8-Bit aufbohren.
Ich könnte mir auch vorstellen, das es bei FPGA-Nachbauten und Emulatoren hier zu Unstimmigkeiten kommt.

@PIC: Hübsche Frage übrigens. Wie bist Du da drauf gekommen?

Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
03.12.2021, 10:31 Uhr
PIC18F2550

Avatar von PIC18F2550

Emulator auf P2
Der läuft schon muss nur noch etwas umstrukturiert werden.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
03.12.2021, 18:41 Uhr
maleuma




Zitat:
jde schrieb
Das R-Register habe ich früher in meinem CP/M BIOS in einer CTC Interrupt Routine wegen dem 8-Bit DRAM Refresh geändert. Ich hatte in meinem System 256k RAMs für die RAM Disk die brauchten 8-Bit Refresh.

rfsh: ei ; 8 Bit Refresh Routine
push af
ld a,r
xor 80h
ld r,a
pop af
reti


Das finde ich gewagt. Zum einen wird hier beim Befehl LR R,A ein veralteter Wert in die 7 Bit des R-Registers zurück geschrieben. Zum anderen wird das 8. Bit nicht durch normales Hochzählen des 8-Bit-Inhaltes realisiert, sondern nach einer bestimmten Zeit einfach gewechselt. Da muss die CTC mit einer Zeitkonstante programmiert werden, welche in etwa den passenden Zeitpunkt erwischt.

Aber vermutlich sind die Refresh-Zeiten nicht so kritisch, dass es hier Probleme gibt. Viele dRAM's halten ja sogar ganz ohne Refresh den Inhalt eine ganze Weile.
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
03.12.2021, 23:13 Uhr
PIC18F2550

Avatar von PIC18F2550

Hallo maleuma,

der interupt wurde von eine CTC ausgeführt deren Zählereingang auf dem Refreshsignal andeschlossen ist.

128x/RFSH --> INT
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
04.12.2021, 01:02 Uhr
jde

Avatar von jde

@pic18
Das RFSH Signal an den CTC Eingang zu legen ist eine gute Idee. Bin ich damals nicht drauf gekommen. Aber das mit den Refresh ist total unkritisch. Ich habe nie einen Datenverlust auf der 512k RAM Floppy bemerkt. Im Schaltplan den ich angehängt hatte ist nicht der letzte Stand sondern nur der mit 256 K RAM Floppy dokumentiert. Habe ich gerade bemerkt als ich noch mal die CPU rausgezogen habe um die CTC Beschaltung zu prüfen.
CTC Kanal 2 ist programmiert mit B7 80. Also Timer Mode mit Vorteiler 256 und Zählwert 128. CPU Takt ist 4MHz.
... übrigens der Rechner läuft heute noch so!

Dieser Beitrag wurde am 04.12.2021 um 01:02 Uhr von jde editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
04.12.2021, 09:53 Uhr
maleuma




Zitat:
PIC18F2550 schrieb
der interupt wurde von eine CTC ausgeführt deren Zählereingang auf dem Refreshsignal andeschlossen ist.

128x/RFSH --> INT


Das klingt plausibel, war aber am Schaltplan nicht erkennbar. Da ist kein CTC mit drauf.
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
04.12.2021, 11:00 Uhr
jde

Avatar von jde

CTC ist auf der rechten Seite im Schaltplan (Foto) über der Bestückung oder 2. Seite in der PDF Datei.



Dieser Beitrag wurde am 04.12.2021 um 11:31 Uhr von jde editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
04.12.2021, 11:57 Uhr
maleuma



Sorry, die 2. Seite hatte ich übersehen. Da geht aber trotzdem kein RFSH an die CTC?
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
04.12.2021, 12:15 Uhr
jde

Avatar von jde

Nein RFSH geht nicht an die CTC, habe ich ja in 008 geschrieben dass ich damals nicht auf die Idee gekommen bin.
Die Idee war von PIC18F2550.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
04.12.2021, 14:38 Uhr
PIC18F2550

Avatar von PIC18F2550

Schieb mir nicht alles in die Schuhe.
Ich habe das auch bloß geklaut.
Es gab auch noch eine variante mit LS074. (RFSH & A6)
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek