Einzelnen Beitrag anzeigen
  #2  
Alt 06.03.2012, 16:20
Benutzerbild von Solwac
Solwac Solwac ist offline
Revelation
 
Registriert seit: 18.07.2010
Land:
Beiträge: 782
Abgegebene Danke: 189
Erhielt 338 Danke für 216 Beiträge
Aktivitäten Langlebigkeit
0/20 15/20
Heute Beiträge
0/3 ssssss782
AW: 16/32 Bit: Woher kommt der Geschwindigkeitsvorteil?

Du hast recht, es dürfte nur sehr wenig Stellen in einem klassischen Programm (also ohne Bitboards) geben, bei denen 32 Bit einen direkten Vorteil bringen.

Wenn jetzt aber der 68020 bei gleichem Takt ungefähr doppelt so schnell wie ein 68000 ist und dies auch noch bei Programmen ohne besondere Optimierung funktioniert, dann steckt da was anderes dahinter:
  • Der 68020 ist jünger, der Microcode konnte so noch etwas optimiert werden. Ein logisch identischer Befehl wird so im Schnitt etwas schneller abgearbeitet. Ganz extrem bei Multiplikation und Division.
  • Der 68020 hat einen kleinen Cache, wodurch kleine Schleifen ohne Speicherzugriffe abgearbeitet werden. Der 68000 war hier immer von der Geschwindigkeit des Speichers abhängig.
  • Ein weiterer Effekt des Cachings ist die teilweise Parallelisierung von Befehlen (Pipelining), d.h. mit dem nächsten Befehl kann schon begonnen werden bevor der aktuelle beendet ist.
  • Der Speicher ist über einen doppelt so breiten Datenbus angeschlossen. Dadurch sind Befehlsblöcke mit großem Datendurchsatz (z.B. das Verschieben oder Sortieren von Daten im Speicher) schneller als beim 68000.

Die zusätzlichen Befehle des 68020 sind dagegen kaum von Nutzen. Zum einen verhindern sie die einfache Übertragung auf den preiswerteren 68000 und zum anderen sind sie nur schwer zu programmieren und debuggen. Sie sind einfach zu komplex geworden.

Matthias
Mit Zitat antworten
Folgende 4 Benutzer sagen Danke zu Solwac für den nützlichen Beitrag:
Endspielgott (07.03.2012), Robert (06.03.2012), Supergrobi (06.03.2012), Theo (11.03.2012)