atari-home.de - Foren

Hardware => Hardware (Classic 16-/32-Bit) => Thema gestartet von: czietz am So 05.01.2020, 13:45:47

Titel: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: czietz am So 05.01.2020, 13:45:47
Lasst uns ein kleines Sonntagsrätsel spielen.  :)

Ich habe kürzlich herausgefunden, dass die ersten 16 MiB TT-RAM viel schneller sein können als die zweiten 16 MiB (in meinem TT mit insgesamt 32 MiB) -- und auch warum. Details und Testprogramm hier:
http://atari-forum.com/viewtopic.php?f=16&t=38138&p=390410

Was meint Ihr, ist der Grund?
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: Gaga am So 05.01.2020, 20:11:51
Vorweg: ich weiß es nicht.

Der Zugriff ab 16MB ist ca. 3,6 mal langsamer als bei den ersten 16 MB. So deute ich Dein Zahlenwerk.

Kann es sein, dass die MMU ab 16MB Waitstates oder Refreshes macht?
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: mfro am So 05.01.2020, 20:51:39
Cache ist an?
Wird aber ausgetrickst, weil die Zugriffe nicht aufsteigend sind?
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: czietz am So 05.01.2020, 21:25:07
Ja, Cache ist eingeschaltet; der Datencache nützt aber aufgrund der Reihenfolge der Zugriffe nichts, wie Du auch schon gesehen hast. (Nur der I-Cache hilft bei der Codeausführung, weil die Schleife vermutlich komplett hinein passt.)
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: czietz am Mo 06.01.2020, 08:05:56
Und die Auflösung: http://atari-forum.com/viewtopic.php?f=16&t=38138&p=390489#p390489
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: mfro am Mo 06.01.2020, 10:17:17
Ahja. Die MMU muß die Zugriffe auf die "geraden" 16-MB-Pages auf den MMU-Tree leiten, weil sie sonst keinen Supervisor-Speicherschutz in den untersten 16 MB (die sie "aufdröseln" muss) realisieren kann.

Logisch, eigentlich ;)

Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: Thorsten Otto am Mo 06.01.2020, 10:20:12
Mit Speicherschutz hat das nix zu tun. Die TTRs werden nur benutzt, um die I/O Addressen sowohl unter $FFFFxxxx als auch unter $00FFxxxx ansprechen zu können.
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: guest4215 am Mo 06.01.2020, 10:51:26
Was ich nicht ansatzweise verstanden habe ist, warum es für den Speicherbereich 32-48MB wieder schnell ist und insgesamt alle 16MB wechselt.
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: mfro am Mo 06.01.2020, 11:13:21
Mit Speicherschutz hat das nix zu tun. Die TTRs werden nur benutzt, um die I/O Addressen sowohl unter $FFFFxxxx als auch unter $00FFxxxx ansprechen zu können.

Das stimmt. Die MMU-Tables setzen nur das Mapping und ob gecached wird oder nicht.

Nichtsdestotrotz sorgt das Ummappen der I/O-Areas natürlich auch für deren SV-Protection.
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: czietz am Mo 06.01.2020, 11:42:13
Was ich nicht ansatzweise verstanden habe ist, warum es für den Speicherbereich 32-48MB wieder schnell ist und insgesamt alle 16MB wechselt.

Weil das Transparent Translation Register alle Zugriffe mit Adressbit 24 = 1 an den Translation Tables vorbei leitet.
Titel: Re: Sonntagsrätsel: TT-RAM-Geschwindigkeitsunterschiede
Beitrag von: Thorsten Otto am Mo 06.01.2020, 13:56:16
Nichtsdestotrotz sorgt das Ummappen der I/O-Areas natürlich auch für deren SV-Protection.

Nein, auch nicht. Die untersten 3Bits in den TTRs sind in TOS gesetzt, damit wird der Function-Code (ob SV oder nicht) ignoriert.