Hallo Leute, bin dabei den Computer zu verstehen, vor ein paar tagen habe ich hier auch gepostet und tolle Antworten bekommen die mir sehr weitergeholfen haben, allerdings bin ich jetzt wieder stecken geblieben. Genauer beim Prozessor und dem Chipsatz. Ich weiß das der Prozessor mit der North-Bridge über den Front-Side-Bus verbunden ist. Habe mich auch über den FSB informiert auf vielen Seiten, verstehe es aber trotzdem nicht so gut. Ich lese andaernd das der FSB ein schneller Bus ist, also schneller als die anderen auf der Mainboard. Jetzt meine Frage. Ein Bus sind ja mehrere Leitungen zB. 32, also 32 Bit. Wie kann der dann schneller sein als andere Busse die vielleicht auch 32 Leitungen haben? Bus ist ja eine normale Leitung nur halt mehrere parallel, wie kann dann ein paar Leitungen schneller sein als manch andere ? Was ist an dem FSB anders als bei den PCI Bus zum Beispiel? --- Eine weiter Frage ist aufgetreten bei der Southbridge, habe auf der skizze die unten im link ist gesehen das von der Southbridge eine Interrupt-Leitung zum Prozessor geht. Für was ist diese gut ? Link: http://www.elektronik-kompendium.de/sites/com/0403311.htm (Gleich das erste Bild) --- Dritte Frage geht im allgemeinen um das Bussystem, und zwar habe ich folgenden Abschnitt im Net gelesen: Damit die Daten nicht unkontrolliert über diese Leitungen zwischen den Komponenten herumschwirren, gibt es drei verschiedene Busarten pro Verbindung, den Datenbus, Steuerbus und Adressenbus... Also wenn ich jetzt einen Bus habe mit 8 Leitungen zum Beispiel für 8 Bits, heisst das dann das jede Leitung wieder in 3 kleineren Leitungen unterteilt ist ? --- Ich entschuldige mich für die warscheinlich dummen Fragen aber ich komme einfach nicht weiter, ich finde niergends eine Antwort auf diesen Fragen. Liebe Grüße Wolfgang
Adress und Steuerleitungen sind zusätzlich zu den Datenleitungen und zwar für alle zusammen.
Wolfgang Wolfi schrieb: > Ich weiß das der Prozessor mit der North-Bridge über den Front-Side-Bus > verbunden ist. War er früher. Ist er nicht mehr, da es heute in den PCs meistens keinen Frontside-Bus mehr gibt. > mehrere parallel, wie kann dann ein paar Leitungen schneller sein als > manch andere ? Durchsatz = Breite mal Taktfrequenz. An beiden kann man drehen. > Was ist an dem FSB anders als bei den PCI Bus zum Beispiel? Als es den FSB noch gab war das Speicherinterface in der Northbridge und der musste viel schneller angebunden werden, als PCI zulässt. Also war der FSB viel schneller als PCI. > skizze die unten im link ist gesehen das von der Southbridge eine > Interrupt-Leitung zum Prozessor geht. Für was ist diese gut ? http://www.mikrocontroller.net/articles/Interrupt > drei verschiedene Busarten pro Verbindung, den Datenbus, Steuerbus und > Adressenbus... Au weh, das ist Material aus der Einführung in Rechnerarchitektur. Nicht unnütz, aber auf heutige PC-Komponenten kaum noch anwendbar. > Also wenn ich jetzt einen Bus habe mit 8 Leitungen zum Beispiel für 8 > Bits, heisst das dann das jede Leitung wieder in 3 kleineren Leitungen > unterteilt ist ? Nein. Aber um das zu verstehen solltest bei eben so einer Einführung in allgemeine Rechnerarchitektur weiter machen und erst dann in die Tiefen moderner PCs eintauchen.
Ich habe andauernd ein Flachbandkabel im Kopf :) Also Wenn man ein Flachbandkabel für 8 Bit in die hand nimmt dann sind das keine 8 Leitungen sondern 8 DatenLeitungen + 8 Steuerleitungen+8 Adressleitungen ? MFG
Eher 8 Datenleitungen und 16 Adressleitungen und ein paar Steuerleitungen. Anno 6502 vor 3 Jahrzehnten.
Versuche bitte nächstes mal einen Passenderen Betreff zu wählen! Falls dich wirklich "PC" interessieren, kann ich dir das Buch "Structured Computer Organization" ISBN 978-0130959904 empfehlen, das gibt es bestimmt irgendwo bei euch in einer Bibliothek.
Zur Abschreckung, also weshalb du bitte nicht mit PCs anfängst um Rechner zu verstehen. So sehen Busse von PCs des letzten Jahrzehnts beispielsweise aus: http://en.wikipedia.org/wiki/HyperTransport. Sowas hat mehr Ähnlichkeit mit einem SATA-Interface oder mit 10Gbit-Ethernet als mit klassischen Bussen der Marke Adress-, Daten- und Steuerbus.
Ich will erst mal die älteren PC´s verstehen :) Und wieso gibt es keinen FSB mehr, und was "war" das Speicherinterface in der Northbridge ? A. K. schrieb: > Eher 8 Datenleitungen und 16 Adressleitungen und ein paar > Steuerleitungen Wieso 16 Adressleitungen, und wie viel sind ein "paar" Datenleitungen ? MFG
Wolfgang Wolfi schrieb: > Ich will erst mal die älteren PC´s verstehen :) Dir wär schon sehr geholfen, wenn du erst einmal die Grundlagen von Rechnerarchitektur verstehst. Selbst der allererste IBM PC ist da als Beispiel schon suboptimal, weil zu kompliziert aufgebaut. Gugel mal nach "Rechnerarchitektur" oder "Einführung in ..." und hangel dich da durch. Oder orientiere dich ganz klassisch an abgeholzten Wäldern, zu finden in Bibliotheken, Buchhandlungen, ... Du fängst ja auch nicht an, die Funktion einer Zeigeruhr zu analysieren, wenn du noch nicht nicht einmal verstanden hast, was ein Zahnrad ist. Oder warum beim Auto die Räder rund statt eckig sind.
Ich will ja nicht alles sooo genau wissen, ich will nur wissen wie ein 8 Bit flachbandkabel aussieht also mit den Adressleitungen Steuerleitungen und Datenleitungen. Ich stell mir das als Flachbandkabel einfach vor, wie viel Drähte hat so ein 8 Bit Flachbandkabel zum Beispiel ? Und meine zweite Frage war ja nur, was bringt sich der Interrupt von Southbridge zum Prozessor, also was muss man machen (in der Praxis am PC) damit die Southbridge so einen Interrupt auslöst am Prozessor. So genau will ich das ganze nicht wissen, ins kleinste Detail zu gehen will ich gar nicht. Die Frage wegen dem FSB hast du mir schön beantwortet, wieso der "schneller" ist als der PCI Bus zum Beispiel. MFG
Wolfgang Wolfi schrieb: > wie viel Drähte hat so ein 8 Bit Flachbandkabel zum Beispiel ? Es gibt keine 8-Bit Flachbandkabel, weil man Kabel nicht in Bits misst. Und man kann 8 Bits über ein Kabel nacheinander oder nebeneinander übertragen. Und wieviele Leitungen man dafür benötigt, hängt davon ab, was man damit machen will. Bei einem Drucker ist das anders als bei Hauptspeicher. > Southbridge zum Prozessor, also was muss man machen (in der Praxis am > PC) damit die Southbridge so einen Interrupt auslöst am Prozessor. So eine Southbridge enthält allerlei Kram, wie etwa einen Interrupt-Controller, ein paar serielle Schnittstellen und parallele aller Art usw. Die Schnittstellen melden sich beim Interrupt-Controller und der beim Prozessor, und zwar dann wenn sie der Ansicht sind, es gäbe Grund dazu.
Wolfgang Wolfi schrieb: > Ich will ja nicht alles sooo genau wissen, Klar, aber der Trigger bei mir waren Fragen wie > Flachbandkabel für 8 Bit in die hand nimmt dann sind das keine 8 > Leitungen sondern 8 DatenLeitungen + 8 Steuerleitungen+8 Adressleitungen und > Wieso 16 Adressleitungen denn das zeigt fehlendes Grundlagenwissen der elementarsten Art, ohne das du keinen Schritt weiter kommst. Es zeigt, dass man bei Adam und Eva anfangen muss, weil du nicht einmal weisst, was Adress-, Daten und Steuerleitungen überhaupt sind.
A. K. schrieb: > Es zeigt, dass man bei Adam und Eva anfangen muss, weil du nicht einmal > weisst, was Adress-, Daten und Steuerleitungen überhaupt sind. Jepp A.K. hat recht, das ist als wenn du den Unterschied zwischen einem Zwei und einem Viertaktmotor wissen willst, das Ganze noch sowohl für Diesel als auch Benziner, du aber noch nicht mal weisst was eine Kurbelwelle, ein Zylinder oder ein Kolben ist. Du musst schon von vorne anfangen.
Bitte beantworte mir die Frage von den 16 Adressleitungen damit meine grundlegende Lücke aufgefüllt wird :) Ich stelle mir ein Flachbandkabel (http://www.google.at/imgres?q=flachbandkabel&num=10&um=1&hl=de&lr=lang_de&biw=1280&bih=709&tbs=lr:lang_1de&tbm=isch&tbnid=RvRXUuB0xxc3xM:&imgrefurl=http://en.wikipedia.org/wiki/File:Flachbandkabel.jpg&docid=NtP7HdARKl82gM&w=703&h=483&ei=odWFTqWHDpSzhAeCkqTlDA&zoom=1&iact=rc&dur=348&sqi=2&page=1&tbnh=121&tbnw=176&start=0&ndsp=18&ved=1t:429,r:2,s:0&tx=9&ty=77) vor weil ich es mir schöner bildlich vortellen kann. Ich denke mir das so ein Kabel das selbe ist wie Leitungen die parallel verlaufen auf dem Mainboard. Und so stelle ich mir auch den FSB zum Beispiel vor, nur halt als Kupferleitungen auf den Board oben. Und sagen wir mal das sind 8 Datenleitungen , wie viele Adressleitungen gibt es und wie viele Steuerleitungen ?
PS: Ich weiß auch was das für Leitungen sind, für was sie gebraucht werden usw.
Nur weil ich nicht alles ins Detail kenne müsst ihr mir keine Antwort geben, schreibt es mir so auf wie ihr es einen Profi erklären würdet, ich schaue dann alleine weiter. Für was gibts dann so ein Forum wenn man warscheinlich bei jedem der sich nicht sooo gut auskennt gleich immer so unnötige Antworten gibt. Oder wie der Moderator Names "rufus" sich die Zeit nimmt um so etwas schwachsinniges als Antwort zu schreiben. Mich interessiert das ganze echt wirklich und ich will nicht alles bis ins Detail wissen, das habe ich schon 1 oder 2 mal sicher erwähnt. Will nur wissen für was etwas gut ist, sei es eine Leitung oder ein Chip oder so. Danke trotzdem für die Antworten A.K :)
Wolfgang Wolfi schrieb: > Bitte beantworte mir die Frage von den 16 Adressleitungen damit meine > grundlegende Lücke aufgefüllt wird :) Weil der erwähnte 6502 64KiB Speicher adressieren konnte und man dafür eben 16 Leitungen benötigt.
Wolfgang Wolfi schrieb: > Mich interessiert das ganze echt wirklich Das wird auch nicht beweifelt. Nur der Weg wird kritisiert, du fängst an der falschen Stelle an.
Ich kann meinen Vorrednern nur zustimmen. Wenn du einen PC verstehen willst, mußt du beim Urschleim anfangen. Was macht die CPU, wozu sind RAM und ROM da, wozu I/O-Bausteine und so weiter. Moderne PCs sind viel zu komplex aufgebaut, um als Anfänger durchzusteigen. Mein erster Computer war ein Einplatinenrechner auf Basis des Z80. Da gab es eine CPU, ein paar Speicherbausteine und ein paar Bausteine für die Ein-/Ausgabe. Alle diese Komponenten waren noch über einen gemeinsamen Bus verbunden und arbeiteten mit dem gleichen Takt. Das Z80-System ist minimalistisch aufgebaut und dadurch relativ einfach zu verstehen. Auch wenn der Z80 in die Computer-Steinzeit gehört, die aktuellen PCs arbeiten immer noch nach exakt den gleichen Grundprinzipien. Weil die Komponenten in einem modernen Rechner aber längst nicht mehr gleich schnell sind, machte sich das Zwischenschalten von Bridges und neueren Bussen erforderlich. Mein Tip wäre, dich mit der Technik des Z80 zu befassen, denn der ist der x86-Architektur sehr ähnlich und leicht zu begreifen. Der weitere Weg ist dann geebnet.
Ok das verstehe ich. Aber überhaupt gibt es pro Verbindung eine Datenleitung eine Steuerleitung und eine Adressleitung oder ? Das ist meine Frage, gibt es wirklich pro Verbindung 3 unterschiedliche Leitungen, eine für adresse eine als steuerleitung und auf einer werden die daten herumgeschickt. Stimmt das so ?
@ Icke Icke ®. schrieb: > Wenn du einen PC verstehen > willst, mußt du beim Urschleim anfangen. Was macht die CPU, wozu sind > RAM und ROM da, wozu I/O-Bausteine und so weiter. Das verstehe ich ja, ich bin hier in diesem Thread mit der Frage vom FSB gekommen und von den Bussystem, ob es pro verbindung echt 3 Leitungen gibt. Und iergendwie ist da herausgekommen das ich von 0 anfangen muss um es zu verstehen :S
Wolfgang Wolfi schrieb: > Ok das verstehe ich. > Aber überhaupt gibt es pro Verbindung eine Datenleitung eine > Steuerleitung und eine Adressleitung oder ? > > Das ist meine Frage, gibt es wirklich pro Verbindung 3 unterschiedliche > Leitungen, eine für adresse eine als steuerleitung und auf einer werden > die daten herumgeschickt. > > Stimmt das so ? nein eben nicht das kommt ganz auf das bussysten und standard an, wieviele leitungen welchen types in welchem bus eingesetzt werden... hör bitte auf die anderen leute und besorg dir grundlagenbücher! im übertragenen sinne bist du wie ein schüler der 1ten klasse dem man ohne +/- rechnen mal eben komplexe differentialrechnung erklären solll - das geht so nicht..
A. K. schrieb: > Nein. Wieso lese ich dann was anderes ? Damit die Daten nicht unkontrolliert über diese Leitungen zwischen den Komponenten herumschwirren, gibt es drei verschiedene Busarten pro Verbindung, den Datenbus, Steuerbus und Adressenbus... Habe ich da eine falsche Seite gefunden wo falsches drinsteht ?
Wolfgang Wolfi schrieb: > Und iergendwie ist da herausgekommen das ich von 0 anfangen muss um es > zu verstehen :S Ja, und das solltest du endlich einsehen. Um einen Vergleich zu ziehen: Es macht keinen Sinn, einem Fahrschüler die Technik des Driftens zu erklären, wenn der noch nicht mal weiß, wozu Gas, Bremse und Kupplung da sind. Verstehst?
Der Witz beim Bus liegt darin, dass die Leitungen gemeinsam benutzt werden. Du kannst z.B. 2 RAM bausteine mit je 8 Bit an den selben Datenbus hängen. Welches RAM nun angesprochen wird, hängt davon ab welche Adresse am Adressbus anliegt. Was das RAM nun gerade macht, hängt auch vom Signal an den Steuerleitungen ab, etwas ob die CPU gerade lesen oder schreiben will.
Wolfgang Wolfi schrieb: > Damit die Daten nicht unkontrolliert > über diese Leitungen zwischen den Komponenten herumschwirren, gibt es > drei verschiedene Busarten pro Verbindung, den Datenbus, Steuerbus und > Adressenbus... Das "pro Verbindung" stimmt nicht. Bei einem einfachen System dieser Struktur gibt es für alle Verbindungen innerhalb des Rechners nur diesen einen einzigen Bus.
Genau das wollte ich hören :D Und als Adressleitung und Steuerleitung werden zusätzlich zu den 8 Leitungen für die 8 Bits noch ein paar verwendet , oder ? MFG
Hallo Leute, wieso ist die Festplatte mit SATA-Anschluss schneller als die mit dem ATA also den parallelen Anschluss? Ich dachte mir immer das parallel schneller als seriel ist, das verstehe ich jetzt nicht so ganz ? Danke im Vorhinen
Bei der parallelen Datenübertragung bekommt man mit zunehmender Taktrate immer mehr Probleme mit den unterschiedlichen Leitungslängen der einzelnen Adern. Stell dir vor, 40 Leiterbahnen machen auf der Platine einen Richtungswechsel um 90°. Dann hat die innere Leiterbahn schon einen wesentlich kürzeren Weg, als die äußere. Bei mehreren GHz Takt können das schon ganz ordentliche Teile der Periodendauer werden. Somit muss man das ganze wieder synchronisieren/warten bis alles "angekommen" ist. Der Aufwand des Layouts/der Synchronisation wird irgendwann so hoch, dass es lohnenswerter ist, die Daten seriell zu Übertragen. Das bedingt zwar eine wesentlich höhere Taktrate, ist im Endeffekt aber leichter zu handlen. Gruß Björn
@Wolfgang Wolfi: Es gibt einige Bücher, die so etwas detailiert behandeln. "ARM Rechnerarchitekturen für System-On-Chip-Design" fand ich recht gut. Das ist zwar keine PC-Technik, aber das Prinzip ist das gleiche.
@ Wolfgang Wolfi (Gast) Beispiel: "Ein Chip (Southbridge, AVR, PIC ... oder so) schreibt Daten in einen S-RAM Baustein der 1 Mega Byte groß ist." 1 MB = 1024kByte = 1048576 Byte = 8388608 Bit Wenn du den einen Megabyte zu dem S-RAM Chip schicken möchtest könnte man das so machen dass man 8388608 Leitungen an dem Chip hat und dann hat man noch eine Leitung mit der man dem S-RAM sagt "Hey nimm mir mal die Daten ab". Wenn du aber nicht so viele Leitungen über dein Board legen kannst (teuer, unübersichtlich) dann könntest du z.B. 8 Leitungen nehmen. Ein Byte besteht genau aus 8 Bit. Ich kann das also auch mit 8 Daten und einer Steuerleitung machen, muss jetzt aber 1048576 mal die 8 Bit dort anlegen und dem Chip sagen dass er sie übernehmen soll. Adressierung: Das Verfahren oben geht so nicht wirklich, du brauchst da noch eine zusätzliche Steuerleitung damit man dem S-RAM sagen kann dass wir beim nullten Byte anfangen wollen. Besser ist es aber eine bestimmte Stelle im S-RAM anspringen zu können. z.B. in der Mitte, beim 512-ten Kilobyte. Um 1MByt zu adressieren, bei 8 Bit pro Adresse brauchen wir 20 Adressleitungen. ln(1048576) / ln(2) = 20 2 hoch 20 = 1048576 Man kann die Daten aber auch seriell hineinschieben, dazu braucht man dann aber etwas mehr Logik im Chip. Es gibt S-RAM der über SPI ansteuerbar ist, das sind nur 3 Leitungen. Innen drin ist aber wieder alles parallel (direkt im Chip).
Hallo Leute, habe ne Frage zum Steuerbus, bin wieder auf 2 unterschiedliche Antworten gekommen und weiß nicht welche von denen beiden die richtige ist. Steuerbus--> Wenn Prozessor mit einer Komponente Daten austauschen will, dann schickt er über den Steuerbus entweder ein Lese oder ein Schreibbefehl. Zum Beispiel bei einem Word-Dokument. Man schickt über steuerbus mal hin das er lesen will, danach ändert man etwas um und beim speicher schickt der Prozessor einen Schreibbefehl hin. Zweite Antwort zum Steuerbus: Steuerbus kümmert sich um die Ansteuerung der Pheripherie-Anschlüsse.Die Breite des Steuerbusses ist schließlich relevant dafür, mit welchen Arten von Peripherieanschlüssen ein Prozessor überhaupt umgehen kann. Der erste Satz mit dem Ansteuern da meint er als Peripherie zum Beispiel den Arbeitsspeicher oder? Den zweiten Satz verstehe ich nicht? Was wird damit gemeint ? danke im Vorhinein, Gruß
Wolfgang Wolfi schrieb: > Den zweiten Satz verstehe ich nicht? Ich auch nicht, d.h. ich verstehe in diesem Zusammenhang die ganze zweite Antwort nicht. Bleib bei der ersten Erklärung, die passt.
Grob gesagt hat eine CPU 3 Sorten von Anschlüssen: -Datenbus -Adressbus -Steuerleitungen Der 2. Satz: Die Steuerleitungen sind notwendig, damit die CPU sich mit den Rest unterhalten kann also z.B. lesen oder schreiben Beim Urgestein Z80 gut zu lesen http://datasheets.chipdb.org/Zilog/Z80/z80.pdf
Hallo Leute, Beim lernen habe ich, das was ich nicht verstanden habe, einmal gesammelt um gleich mehrere Fragen zu stellen, und nicht dauernd ins Forum zu posten :) ---------- Frage 1 : Wieso gibt es eigentlich in einem Prozessor Speicher-Register, wenn es sowieso schon L-Caches gibt ? --------- Frage 2 : Wieso gibt es bei Festplaten inzwischen auch Caches ? ---------- Frage 3 : War mit dem Netzteil beschäftigt und habe eine Seite gefunden wo gezeigt wird welche Spannungen zum Beispiel verwendet werden auf dem Mainboard. Bin auf das gestossen: + 3,3 V Laufwerkselektronik von S-ATA-Laufwerken Prozessor Arbeitsspeicher Chipsatz Grafikkarten + 5 V Laufwerkselektronik Prozessor (AT-kompatible) Arbeitsspeicher (AT-kompatible) Chipsatz Erweiterungskarten (PCI, ISA) Was bedeutet hier das AT-Kompatibel ? -------- Frage 4 : Stimmt das das die L-Caches dazu da sind, um Daten zwischenzuspeichern die gebraucht werden um ein Prozess zu beenden ? Es würde mehr Zeit in Anspruch nehmen wenn man dauernd auf den Arbeitsspeicher zugreifen würde. Aber kommt das nicht auf das selbe wenn der Arbeitsspeicher die Daten in das Cache spielt und der Prozessor dann die Daten vom Cache nimmt, oder wenn der Prozessor gleich direkt die Daten vom Arbeitsspeicher nimmt. Weil der Arbeitsspeicher braucht ja auch Zeit um die Daten in das Cache zu spielen, also kommt es auf das selbe. Ob er jetzt Zeit vergeugt bis er es ins Cache reinspielt, oder ohne Cache direkt zum Proozessor ? ------- Frage 5: Das Steuerwerk hat die Aufgabe, wenn ein Befehl ausgeführt werden soll, das er Daten aus dem RAM holt oder Daten wieder reinschreibt, das er Befehle die er vom RAM bekommt dekodiert und dann an das Rechenwerk schickt. So habe ich es verstanden, stimmt das das man Befehle vom Arbeitsspeicher bekommt ? -------- Frage 6: Aufbau einer Grafikkarte Grafik-Chip Bios-Baustein Speicherbausteine RAMDAC Mit Grafikchip ist der Grafikprozessor gemeint ? ------- Frage 7 : Lese andauernd von Befehlsregistern die es in einem Prozessor gibt, und von Speicher-Registern? Im Befehlreigster steht zum Beispiel ein Befehle für die ALU ? Was steht dann in den anderen Registern? Ich glaube ich kann nicht zwischen Daten und Befehlen unterscheiden, was sind zum Beipiel Daten für den Prozessor ? Habe mir bereits ein Buch bestellt "Structured Computer Organization", aber mich interessieren die Antworten sehr :) Ich Danke euch für jede Antwort im Vorhinein Liebe Grüße Wolfgang
Wolfgang Wolfi schrieb: > Frage 1 : Wieso gibt es eigentlich in einem Prozessor Speicher-Register, > wenn es sowieso schon L-Caches gibt ? Was sollen L-Caches sein? Ich kenne I-Caches, D-Caches und L0,1,2,3-Caches aber keine L-Caches. > Frage 2 : Wieso gibt es bei Festplaten inzwischen auch Caches ? Weil es geht. Pufferspeicher hatten die schon lange, ungefähr seit es das SCSI-Interface gibt. Der Übergang von Pufferspeicher zu Caches ist fliessend. Weil die Disk auch weiterrotiert, wenn die gewünschten Daten schon unterwegs zum Hauptspeicher sind, kann man den Rest der Spur auch genausogut auf Verdacht ebenfalls in den Puffer/Cache einlesen, sofern grad nichts wichtigeres ansteht. Vielleicht kommt ja kurz drauf eine Leseoperation dafür. > Frage 4 : Stimmt das das die L-Caches dazu da sind, um Daten > zwischenzuspeichern die gebraucht werden um ein Prozess zu beenden ? Caches und Prozesse sind Begriffe, die meistens in keinem Zusammenhang zueinander stehen. > Mit Grafikchip ist der Grafikprozessor gemeint ? Wobei das nicht immer ein Grafikprozessor ist. In Schemata einfacher Architekturen hat der nur Aufgabe, den RAM-Inhalt zum Bildschirm zu transportieren, nicht mehr. > Was steht dann in den anderen Registern? Daten, Adresse, Zustände.
Vielleicht hilft dir das: http://en.wikipedia.org/wiki/Memory_hierarchy http://de.wikipedia.org/wiki/Speicherhierarchie
Danke für die schnelle Antwort. A. K. schrieb: > Was sollen L-Caches sein? Damit meinte ich Level-1 Cache, Level-2 Cache und Level-3 Cache. Meine Frage war, wieso gibt es Speicherregister innerhalb eines Prozessors, wenn es ja sowieso diese Caches gibt ? Wieso gibt es nun einen Cache bei einer Festplatte, wieso wird er verwendet ? Wolfgang Wolfi schrieb: > Das Steuerwerk hat die Aufgabe, wenn ein Befehl ausgeführt > werden soll, das er Daten aus dem RAM holt oder Daten wieder > reinschreibt, das er Befehle die er vom RAM bekommt dekodiert und dann > an das Rechenwerk schickt. So habe ich es verstanden, stimmt das das man > Befehle vom Arbeitsspeicher bekommt ? MFG
Wolfgang Wolfi schrieb: > Meine Frage war, wieso gibt es Speicherregister innerhalb eines > Prozessors, wenn es ja sowieso diese Caches gibt ? Siehe eben genannte Wikipedia-Links. Die englische Version ist besser. > Wieso gibt es nun einen Cache bei einer Festplatte, wieso wird er > verwendet ? Hatte ich soeben beschrieben, als Edit, also schau nochmal rein.
> Frage 1 : Wieso gibt es eigentlich in einem Prozessor Speicher-Register, > wenn es sowieso schon L-Caches gibt ? In die CPU-Register werden meist Daten geladen, die schnell in der CPU gebraucht werden Der Cache ist schneller als externe Speicher > --------- > Frage 2 : Wieso gibt es bei Festplaten inzwischen auch Caches ? Weil der mechanische Zugiff ewig lange braucht gegenüber den im Halbleiter-Cache zwischengespeicherten Daten. http://de.wikipedia.org/wiki/Festplatte > ---------- > Frage 3 : > Prozessor (AT-kompatible) Ursprung war der IBM-PC als Standard Wiki weiß alles! http://de.wikipedia.org/wiki/IBM_PC_AT > > -------- > Frage 4 : > selbe. Ob er jetzt Zeit vergeugt bis er es ins Cache reinspielt, oder > ohne Cache direkt zum Proozessor ? Im Cache werden Daten auch proaktiv geholt, wenn der Verdacht besteht, daß sie bald gebraucht werden oder in der Nähe sind. > ------- > Frage 5: Das Steuerwerk hat die Aufgabe, wenn ein Befehl ausgeführt > werden soll, das er Daten aus dem RAM holt oder Daten wieder > reinschreibt, das er Befehle die er vom RAM bekommt dekodiert und dann > an das Rechenwerk schickt. So habe ich es verstanden, stimmt das das man > Befehle vom Arbeitsspeicher bekommt ? Irgendwo müssen ja die Befehle gespeichert sein, die zum Programm gehören. Früher waren sie auf Lochband oder eingetippt, heute kommen sie meist von der HD in den RAM. > -------- > Frage 6: > Mit Grafikchip ist der Grafikprozessor gemeint ? Wenn einer drauf ist ja. > ------- > Frage 7 : Lese andauernd von Befehlsregistern die es in einem Prozessor > gibt, und von Speicher-Registern? > Im Befehlreigster steht zum Beispiel ein Befehle für die ALU ? > Was steht dann in den anderen Registern? > Ich glaube ich kann nicht zwischen Daten und Befehlen unterscheiden, was > sind zum Beipiel Daten für den Prozessor ? Daten sind Dein Name und Deine Schuhgröße. Befehle sind z.B.: Lade Register IX mit in Inhalt von Speicheradresse 4711 Den Rest weiß die Wiki Deines Vertrauens.
A. K. schrieb: > Weil die Disk auch weiterrotiert, wenn die gewünschten Daten schon > unterwegs zum Hauptspeicher sind, kann man den Rest der Spur auch > genausogut auf Verdacht ebenfalls in den Puffer/Cache einlesen, sofern > grad nichts wichtigeres ansteht. Vielleicht kommt ja kurz drauf eine > Leseoperation dafür. Ich habe mir gedacht, dass wenn auf der Festplatte was draufgeschrieben werden soll, speichert man es als erster in dem Cache Speicher weil der schnell ist. Danach kann der Prozesor andere Arbeiten machen, während dann die Daten vom Cache in die Festplatte transportiert werden. Könnte das so stimmen ? ----- Habe gelesen das der Prozessor immer, bevor er Daten aus dem Arbeitsspeicher holt, mal den Level 1 cache prüft dann den 3er und dann den dreier. Sollte in den Caches jetzt nicht die gewünschten Daten drin stehen dann holt er sie aus dem Arbeitsspeicher. Das ist ja dann sozusagen ein kleiner Zeitverlust oder ? Oder stimmt das ganze nicht so wie ich es verstanden habe ? ---- Wenn der Prozessor sagen wir mal Daten von der Harddisk braucht, schickt er einen Befehl zur Harddisk zum lesen, diese Daten gelangen dann in dem Arbeitsspeicher und erst dann werden sie verarbeitet, oder holt er sie gleich von der Festplatte und verarbeitet sie ? MFG
Wolfgang Wolfi schrieb: > Könnte das so stimmen ? Ja, aber das beschreibt die Funktion als Pufferspeicher. Wobei der Transfer von Arbeitsspeicher in diesen Pufferspeicher heute nicht von der CPU durchgeführt wird. Der Disk-Controller zieht sich die Daten direkt aus dem Arbeitsspeicher. Die CPU kann also weiterarbeiten. > holt er sie aus dem Arbeitsspeicher. Das ist ja dann sozusagen ein > kleiner Zeitverlust oder ? Zeitverlust, wenn er in den vorherigen Levels nicht fündig wird. Zeitgewinn wenn doch. > Wenn der Prozessor sagen wir mal Daten von der Harddisk braucht, schickt > er einen Befehl zur Harddisk zum lesen, diese Daten gelangen dann in dem > Arbeitsspeicher und erst dann werden sie verarbeitet Korrekt.
Wolfgang Wolfi schrieb: > Sollte in den Caches jetzt nicht die gewünschten Daten drin stehen dann > holt er sie aus dem Arbeitsspeicher. Das ist ja dann sozusagen ein > kleiner Zeitverlust oder ? Mach mal folgende Rechnung auf, mit eher beispielhaften als realen Zahlen und 2 Cache-Levels: 90% der Speicherzugriffe werden vom L1-Cache bedient, Dauer: 3 Takte. Weitere 8% werden vom L2-Cache bedient, Dauer 10 Takte. Der Rest geht ins DRAM, Dauer 100 Takte. Wie gross ist die mittlere Zugriffszeit? Wie verändert sich dieser Wert, wenn du einen Cache-Level weglässt?
Aber der L1-Cache ist ja sehr klein gegenüber den anderen. Da frag ich mich wie klein solche Daten sind die fast immer platz finde im L1-Cache ?x
Wolfgang Wolfi schrieb: > Aber der L1-Cache ist ja sehr klein gegenüber den anderen. Da frag ich > mich wie klein solche Daten sind die fast immer platz finde im L1-Cache > ?x AMDs der bisherigen Generationen: 64KB L1-Cache für Daten, 64KB L1-Cache für Code. Da passt schon was rein. 2 einfache Beispiele: Dass Schleifen was den Code angeht ziemlich Cache-freundlich sind dürfte hoffentlich sofort einleuchten. Da sind schon Caches mit 256 Bytes sehr hilfreich. Exzellenter Kandidat für Datencaches, auch recht kleine, ist beispielsweise der Stack. Da gehts dauernd rauf und runter in einem eher begrenztem Bereich.
Ja ok wenn man sich das auf der zunge zeerhehn lässt,ist das gar nicht so wenig, mir sind im kopf MBytes,GBytes. Fatum fand ich die 6u4 kN so wenig :) Hab noch ne Frage zum BIOS. also ich weiss das das yBios bnach dem einschalten des pc's ausgeführt wird und zum Beispiel überprjft ob ne Gr Grafikkarte vorhanden ist,ob der Atbeitsspeicher vorhanden ist und ob die beiden funktionieren.. . Aber ich hab gelesen dads das BIOS in den Arbeitsspeicher gespielt wird,direkt nach dem einschalten,und der Prozessor macht das dann alles,also die überprüfung Was ist aber wenn das RAM kaputt ist,da wird ja das bios gar nicht mal ausgeführt,oder? Weil es ja kaputt ist. MFG
Wolfgang Wolfi schrieb: > Hab noch ne Frage zum BIOS. also ich weiss das das yBios bnach dem > einschalten des pc's ausgeführt wird und zum Beispiel überprjft ob ne Gr > Grafikkarte vorhanden ist,ob der Atbeitsspeicher vorhanden ist und ob > die beiden funktionieren. Korrekt. >. . Aber ich hab gelesen dads das BIOS in den > Arbeitsspeicher gespielt wird,direkt nach dem einschalten,und der > Prozessor macht das dann alles,also die überprüfung Was ist aber wenn > das RAM kaputt ist,da wird ja das bios gar nicht mal ausgeführt,oder? > Weil es ja kaputt ist. Eine Frage der richtigen Reihenfolge. Das RAM muss ohnehin erst konfiguriert werden, also welche Bank wo sitzt, wieviele Takte wofür verbraten werden usw. Dieser Code läuft natürlich direkt aus dem Flash-ROM, wo denn auch sonst. Erst wenn zumindest das RAM fürs BIOS gesichert zur Verfügung steht kann kopiert werden, was übrigens das BIOS selbst durchführt.
Der einzige Nachteil im Net ist das man Seiten findet wo was anderes steht :/ Kanns kaum erwarten das Buch zu bekommen, da kann ich mir dann sicher sein das das was drin steht tatsächlich auch stimmt. Weiters danke ich dir auch das du dir die Zeit nimmst, mir Antworten zu geben. Zwei Fragen habe ich noch: --- Es würde mehr Zeit in Anspruch nehmen wenn man dauernd auf den Arbeitsspeicher zugreifen würde daher gibt es ja die Caches. Aber kommt das nicht auf das selbe wenn der Arbeitsspeicher die Daten in das Cache spielt und der Prozessor dann die Daten vom Cache nimmt, oder wenn der Prozessor gleich direkt die Daten vom Arbeitsspeicher nimmt. Weil der Arbeitsspeicher braucht ja auch Zeit um die Daten in das Cache zu spielen, also kommt es auf das selbe. Ob er jetzt Zeit vergeugt bis er es ins Cache reinspielt, oder ohne Cache direkt zum Prozessor ? Die Frage stelle ich mir immer, gibt es da auch so einen Disk-Controller der nebenbei die Daten in den Cache spielt und der Prozessor ungestört weiterlaufen kann? --- Wieso ladet der Prozessor Daten von der Festplatte in den Arbeitsspeicher, und verarbeitet sie dann ? Wieso kann er das nicht direkt machen ? Passiert das dann eigentlich immer, wenn der Prozessor zum Beispiel Daten von der Soundkarte benötigt, spielt er diese auch als erstes in das RAM und verarbeitet sie dann oder nicht ? Liebe Grüße
Sag mal Wolfi, Du willst aber nicht auf naive Art austesten wie geduldig die Freunde hier im Forum sind, oder?
Nein das sicher nicht, mich interessiert das alles, finde aber fast immer mehrere Antworten wenn ich das Net durchforste.
Wolfgang Wolfi schrieb: > oder wenn der > Prozessor gleich direkt die Daten vom Arbeitsspeicher nimmt. Ich hatte oben ein Rechenbeispiel präsentiert. Wie wärs, wenn du das mal durchrechnest. Also wieviele Takte ein Zugriff im Mittel mit Caches dauert und ohne. Dann hast du die Antwort. Aber ich weiss, Fragen ist einfacher. > Die Frage stelle ich mir immer, gibt es da auch so einen Disk-Controller > der nebenbei die Daten in den Cache spielt und der Prozessor ungestört > weiterlaufen kann? Nicht in den Prozessor-Cache. Wenn dort Speicherbruchstücke drinstehen sollten, an die der Disk-Controller grad ins RAM schreibt, dann werden die im Gegenteil aus dem Cache sogar herausgeworfen. > Passiert das dann eigentlich immer, wenn der Prozessor zum Beispiel > Daten von der Soundkarte benötigt, spielt er diese auch als erstes in > das RAM und verarbeitet sie dann oder nicht ? Über den Daumen gepeilt ja.
> Wieso ladet der Prozessor Daten von der Festplatte in den > Arbeitsspeicher, und verarbeitet sie dann ? Wieso kann er das nicht > direkt machen ? Könnte er, aber es gibt ein paar Gründe, die dagegen sprechen: (1) Dein C-Program sagt read(file, memory, length) liest also von Platte in den Speicher. Andernfalls müsste dein C Programm unter Umgehung des Betriebssysteme und NTFS-Filesystems direkt den Plattencontroller ansprechen, die Platte selber organisieren und du müsstest es bei jedem Wechsel des Plattencontrollers neu programmieren. (2) Diese Transferoperation geschieht ohne Zutun des Prozessors im Hintergrund. Der Plattencontroller greift direkt auf den Speicher zu, grad wie die CPU auch. Die CPU kann also während dieses Transfers andere Jobs erledigen und muss nicht auf die Platte warten. Wieder ein paar Zahlen, jeweils Grössenordnung Maximalwert. Real aufgrund der Zugriffszeit darunter: - Transferrate DRAM: 10GB/s bei einem Modul, - Transferrate SATA-Disk: 0.1GB/s. Dir CPU würde also ziemlich viel Däumchen drehen, bis die Bytes in aller Gemütsruhe eines nach dem anderen bei ihr eintrudeln. Eine Zeit, die sie sinnvoller anders verbringen kann (hoffentlich).
A. K. schrieb: > Ich hatte oben ein Rechenbeispiel präsentiert. Wie wärs, wenn du das mal > durchrechnest. Also wieviele Takte ein Zugriff im Mittel mit Caches > dauert und ohne. Dann hast du die Antwort. Das war eine andere Frage oben, dort fragte ich ob es einen Zeitverlust gibt weil der Prozessor als erstes die Caches durchforstet und erst danach ins RAM geht. Wenn die Daten in den Caches sind, dann hat er einen Zeitgewinn, wenn nicht dann einen Verlust. Hier ist die Frage, wieso ist es schneller das der Arbeitsspeicher als erster in das Cache schreibt und der Prozessor dann die Daten aus den Caches holt, als wenn der Prozessor direkt aus dem Arbeitsspeicher die Daten holt. Weil obs da einen Zeitverlust gibt von RAM zu Prozessor, oder einen von RAM zu Cache und dann zum prozessor,ist ja gleich? MFG
Wolfgang Wolfi schrieb: > Hier ist die Frage, wieso ist es schneller das der Arbeitsspeicher als > erster in das Cache schreibt und der Prozessor dann die Daten aus den > Caches holt, als wenn der Prozessor direkt aus dem Arbeitsspeicher die > Daten holt. Mit dieser Frage geifst du zielsicher direkt in Tiefen der konkreten Implementierungen einzelner CPUs. In Details, die für dich wohl noch etwas früh sind. Und die ausserhalb der Hersteller von CPUs oft nicht einmal genau bekannt sind. Was du im Internet lesen kannst sind allgemeine Schemata, die stets vereinfacht sind, manchmal auch überholt, die aber Grundwissen vermitteln. In der Realität konkreter Implementierungen wirds dann "etwas" komplexer. Hier also: Falsche Grundannahme. Das muss nämlich keineswegs so sequentiell ablaufen wie du es hier beschreibst, d.h. Daten, die aus dem Hauptspeicher eintrudeln, können je nach exakter Arbeitsweise des Prozessors auch gleichzeitig in einen Cache geschrieben werden und parallel dazu an ihm vorbei den nächstnäheren Cache-Level erreichen. Zudem muss die Reihenfolge keineswegs RAM=>L3=>L2=>L1 heissen. So ist bei AMDs K7-K10 Prozessoren der L2-Cache ein sogenannter Victim-Cache, d.h. es wird nie aus Speicher oder L3-Cache (so vorhanden) in den L2-Cache geschrieben, sondern die Daten wandern daran vorbei direkt in den L1-Cache und gleichzeitig auch zu dem diese Bytes anfordernden Befehl. Bei diesen CPUs landen nur Daten in L2, die aus L1 verdrängt wurden.
Wolfgang Wolfi schrieb: > wieso ist es schneller das der Arbeitsspeicher als > erster in das Cache schreibt und der Prozessor dann die Daten aus den > Caches holt, als wenn der Prozessor direkt aus dem Arbeitsspeicher die > Daten holt. Weil das Interface (der Speicherbus) zwischen CPU und Cache schneller arbeitet als das Interface zwischen CPU und Arbeitsspeicher.
Ja aber wenn das Interface zwischen Cache und Arbeitsspeicher auch langsam ist dann kommts ja auf das selbe, finde ich.
Wolfgang Wolfi schrieb: > Ja aber wenn das Interface zwischen Cache und Arbeitsspeicher auch > langsam ist dann kommts ja auf das selbe, finde ich. Versuchst du grad Intel beizubringen, wie man Prozessoren baut?
Wolfgang Wolfi schrieb: > Ja aber wenn das Interface zwischen Cache und Arbeitsspeicher auch > langsam ist dann kommts ja auf das selbe, finde ich. Tja, dann lies Dir nochmal ganz genau durch, wie ein Cache funktioniert, dann wirst Du feststellen können, daß Du daneben liegst. Überhaupt: Lies doch einfach mal was von den diversen Dingen bis zum Ende durch, was Dir hier von allen möglichen äußerst geduldigen Menschen beschrieben wird, und spring nicht immer von einem Thema zum anderen und wieder zurück.
Wolfgang Wolfi schrieb: > Ja aber wenn das Interface zwischen Cache und Arbeitsspeicher auch > langsam ist dann kommts ja auf das selbe, finde ich. Aber nicht, wenn du mehrmals auf die Daten im Cache zugreifen kannst. Z.B. bei Berechnungen in einer Schleife: Da werden die Daten am Anfang in den Cache geladen, dann wird damit gerechnet und am Ende werden die Daten dann aus dem Cache wieder in den Arbeitsspeicher geschrieben.
Wartet ab, schon morgen bastelt Wolfi seine erste CPU, die AMD und Intel überholt.
Hi Freunde, ist schon der Brüller .... Hab mir alles durchgelesen und auch was gelernt ... also PC-mäßig ... Andererseits ... mir kommt es so vor, daß es die "Versteckte Kamera" jetzt auch in anderer Form gibt :-)
toriwen schrieb: > Andererseits ... mir kommt es so vor, daß es die "Versteckte Kamera" > jetzt auch in anderer Form gibt :-) Ich nehme an, die wurdest als Genie geboren und warst nie jung. Im Unterschied zu Wolfi.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.