Krautkanal.com

Veröffentlicht am 2016-07-05 14:28:46 in /t/

/t/ 30284: Prozessorarchitektur

gojeanyn Avatar
gojeanyn:#30284

Nicht sicher, ob richtig auf /t/, aber:

Wo kann ich mich verständlich über Prozessorarchitektur informieren?
Mich interessiert von Grund auf, was denn dieser Begriff überhaupt umfasst und was dann wiederum die Teilbereiche aussagen.

Darauf gekommen bin ich bei dem Gedanken, man könne doch eigentlich einen Ein-Platinen-Computer (Himbeere z.B.) nutzen um darauf alte Computerspiele zu spielen, die Rechenleistung reicht ja theoretisch locker aus.
Als ich hier irgendwo auf KC die Idee geäußert habe, wurde mir nur ein
> x86 Architektur auf einem ARM emulieren? Viel Spaß, Bruder.
entgegengeschleudert.

Dass sich die Prozessoren uterscheiden ist mir schon bewusst aber ich habe keine Ahnung im Bezug auf was.
(Sind es wohl Sachen wie Speicheradressierung?)

Erweitere Kenntnisse in E-Technik sowie IT-Basics sind vorhanden.

Anbei die Architektur des ATmega8
Oder eignen sich Microcontroller so gar nicht, um die Architektur von durchausaus auch komplexeren Prozessoren zu verstehen?

creartinc Avatar
creartinc:#30285

Ich finde es gut, dass du das fragst:
Besorg dir einfach den Tanenbaum "Rechnerarchitektur." Mit dem Buch bist du ca 4 Wochen beschäftigt, danach weisst du aber was abgeht. Vielleicht gibt es bessere Bücher, ich hatte neben Vorlesungsskripten nur dieses Buch durchgearbeitet. Ist meiner Meinung nach aber sehr schön geschrieben (wenn es das nicht wäre, hätte ich mir ein anderes aus der Bibo geholt). Er fängt halt im Urschleim an, bei der Z1 und zeichnet dann die Entwicklung bis zu modernen CPUs nach. So dass man das als Normalsterblicher auch halbwegs nachvollziehen kann. Irgendwo in der Mitte des Buches wird auch die Entwicklung eines einfachen RISC-Prozessors durchexerziert. Es gibt auch eine sehr geile Erklärung was Mikrocode ist etcpp.
Zu deiner Idee, eine x86 Architektur auf einem ARM zu emulieren: selbstverständlich ist das machbar. Die Frage ist aber, ob das nicht schon andere für dich längst getan haben. Ich würde zum Beispiel einfach mal ausprobieren, ob ich DOSBox auf der Himbeere zum Laufen bekomme und gut ist. Das könnte unter Linux laufen. Ich glaube es gibt mittlerweile auch eine Windows-Distro extra für die Himbeere und da läuft DOSBox dann garantiert. Also wenn es dir nur darum geht Retrospiele auf der Himbeere zu spielen -- guck dir DOSBox an. Wenn du wissen willst wie Computer funktionieren, besorg dir den Tanenbaum.

Eine CPU zu emulieren ist übrigens ziemlich billig: du musst nur eine Software für den ARM schreiben (ganz normal in C), die die Maschinenbefehle des zu emulierenden Prozessors abbildet. Wie genau die Maschinenbefehle in dem zu emulierenden Prozessor umgesetzt werden, ist bis auf das Zeitverhalten egal. Kompliziert sind dann vielleicht nochmal die Schnittstellen, also wie du das Bild welches der Emulierte Prozessor berechnet hat auf den Monitor bekommst der an deinem ARM hängt. Aber das geht alles, wenn man die Mathematik dazu hat.
Ist hauptsächlich eine epische Fleißaufgabe, weil du die zu emulierende CPU ziemlich gut kennen musst. Alte Intels haben ca 256 Instruktionen, heisst du müsstest 256 Funktionen schreiben. Die meisten nicht mehr als 5 Zeilen Code lang. Und dann das ganze noch irgendwie Kapseln und Schnittstellen ranflanschen...

salleedesign Avatar
salleedesign:#30287

Bochs müsste x86 emulieren können.

michaelkoper Avatar
michaelkoper:#30288

>>30285
> Also wenn es dir nur darum geht Retrospiele auf der Himbeere zu spielen -- guck dir DOSBox an. Wenn du wissen willst wie Computer funktionieren, besorg dir den Tanenbaum.

Letzteres. Die Retrospiele waren bloß der Gedanke, der den Stein ins Rollen gebracht hat.

Danke, Nazibernd.

kosmar Avatar
kosmar:#30298

>>30285
Also PC-technisch habe ich sogar die Erfahrung gemacht dass die DOSBox unter Linux viel performanter läuft. Wenn sie es in den letzten 2 Jahren nicht zerfrickelt haben. Hatte keine Probleme Tomb Raider zu zocken. Oder Unreal, oder DOOM.

uxdiogenes Avatar
uxdiogenes:#30302

>>30298
Bernd hat am Wochenende in der Dosbox (unter Windows 7) ein Win3.11 mit Sound und Grafiktreibern installiert um ein Windows 3.11 Spiel Die total verrückte Rally zu spielen. Es hat problemlos funktioniert und war ausreichend performant. Säge da kaum Fadenrelatiert.