Hardware > Hardware (Classic 16-/32-Bit)
FYI: Was ein "twisted" IDE-Kabel wirklich bringt...
czietz:
Hallo,
es gibt ja von Pera Putnik (ppera) ein IDE-Interface mit verdrehtem Kabel, d.h. obere und untere Datenbushälfte getauscht. (Siehe: http://atari.8bitchip.info/idepc.htm) Das erlaubt einen schnelleren Zugriff auf DOS-formatierte Medien.
EmuTOS unterstützt diese Art von IDE-Interface ohne zusätzliche Treiber (aber nach Neukompilierung). Nun kam gestern auf der EmuTOS-Mailingliste die Frage auf, ob dieses "getwistete" Kabel den Aufwand überhaupt Wert ist bzw. welchen Geschwindigkeitsvorteil es bringt.
Ich habe nun meinen STfm mit IDE-SD-Karten-Leser testweise auf ein normales IDE-Interface (nicht getwistet, d.h. Belegung wie Falcon) umgebaut, um vergleichen zu können. Mit dem Benchmark HOW_FAST der ST-Computer habe ich dann jeweils Lese- und Schreibgeschwindigkeit gemessen. HOW_FAST benutzt GEMDOS-Funktionen, um Dateien verschiedener Größe zu schreiben und zu lesen und spiegelt damit die Performance wieder, die auch andere Programme bei Verwendung des jeweiligen Laufwerks sehen würden.
Ich denke, die Resultate sprechen für sich: Mit aktuellem EmuTOS ist die Lesegeschwindigkeit bei getwistetem IDE-Kabel ca. 3 Mal so hoch!
Gast160608:
Das sieht doch nach einem Bytes-Swap-Effekt aus
- oder kannst Du den sicher ausschließen?
tuxie:
Das ist normales byteswap, Bei der einen Methode liest er ein Word und bei der anderen Methode 2 Bytes einzeln, was zur Folge hat das bei der einen einmal lesen und einmal schreiben und bei der anderen sind es zwei mal lesen und zweimal schreiben. Nimm mal zum messen xferrate von anodyne das ist viel genauer.
Gast120501:
Wäre es nicht schneller, auch bei Byteswap ein 16 Bit Wort zu lesen und dann im RAM den Byteswap durchzuführen? Würde immerhin einen IDE-Handshake-Vorgang einsparen.
czietz:
--- Zitat von: ari.tao am Mi 07.12.2016, 01:22:20 ---Das sieht doch nach einem Bytes-Swap-Effekt aus
- oder kannst Du den sicher ausschließen?
--- Ende Zitat ---
Hä? Natürlich ist das der Byte-Swap, den Du dort siehst. Das ist doch gerade Sinn dieses "twisted" Kabels, dass man den Byte-Swap dann nicht mehr in Software machen muss.
--- Zitat von: tuxie am Mi 07.12.2016, 06:03:55 ---Das ist normales byteswap, Bei der einen Methode liest er ein Word und bei der anderen Methode 2 Bytes einzeln, was zur Folge hat das bei der einen einmal lesen und einmal schreiben und bei der anderen sind es zwei mal lesen und zweimal schreiben.
--- Ende Zitat ---
...und...
--- Zitat von: 1ST1 am Mi 07.12.2016, 07:31:43 ---Wäre es nicht schneller, auch bei Byteswap ein 16 Bit Wort zu lesen und dann im RAM den Byteswap durchzuführen? Würde immerhin einen IDE-Handshake-Vorgang einsparen.
--- Ende Zitat ---
Es werden in beiden Fällen immer 32 Bit (= 4 Byte) am Stück vom IDE-Interface gelesen -- und der Byte-Swap dann im CPU-Register durchgeführt. Schneller lässt sich auf der CPU nicht mehr "swappen". Die Anzahl an Lese- bzw. Schreibvorgängen auf dem IDE-Interface ist identisch. Alleine das "Byte-Swappen" kostet massiv Performance.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln