Zuerst konzentriere ich mich auf Ihre Frage:
Ist es richtig zu sagen, dass der Hauptspeicher (RAM) Teil der CPU ist?
Was scheint durch die zitierte Behauptung, dass:
Das wichtigste Hardwareelement ist die CPU (Central Processing Unit). Sie enthält den Prozessor und den Hauptspeicher.
Nein, die CPU enthält keinen Hauptspeicher.
Wikipedia definiert die CPU als:
Eine zentrale Verarbeitungseinheit (CPU) ist die elektronische Schaltung in einem Computer, die die Anweisungen eines Computerprogramms durchführt, indem sie die grundlegenden arithmetischen, logischen, Steuer- und Eingabe / Ausgabe-Operationen (E / A-Operationen) ausführt, die durch die Anweisungen spezifiziert werden. Die Computerindustrie hat den Begriff "Central Processing Unit" zumindest seit den frühen 1960er Jahren verwendet. Traditionell bezieht sich der Begriff "CPU" auf einen Prozessor, genauer gesagt auf seine Verarbeitungseinheit und Steuereinheit (CU), die diese Kernelemente eines Computers von externen Komponenten wie Hauptspeicher und E / A-Schaltung unterscheiden.
Der Prozessor ist vom Hauptspeicher getrennt. Der erste Mikroprozessor, in dem moderne CPUs ihr Erbe finden, geht auf den 1971 gegründeten Intel 4004 zurück. RAM (auch "Main Memory") ist eine Komponente außerhalb der CPU.
Hier ist ein Blockdiagramm des Nachfolger des 4004, des im April 1974 vorgestellten Intel 8080 (er ist dem im August desselben Jahres veröffentlichten Motorola 6800 sehr ähnlich ):
Beachten Sie die mit D 0-7 und A 0-15 beschrifteten Pins . Die D- Pins sind mit dem Hauptspeicher verbunden und werden verwendet, um 8-Bit-Daten gleichzeitig zum oder vom RAM zu übertragen. Damit ist der Intel 8080 ein 8-Bit-Prozessor . Die A- Pins sind ebenfalls mit dem Hauptspeicher verbunden, werden jedoch verwendet, um die Adresse im Speicher anzugeben, auf die beim nächsten Daten-Lese- / Schreibvorgang zugegriffen werden soll. Diese 16 Adressensignale ermöglichen dem Prozessor den Zugriff auf bis zu 64 KB Speicher (2 16 = 65536 = 64 KB).
Die Tatsache, dass sich der Speicher außerhalb des Prozessors befindet, wird auf Seite 263 des Buches Code von Charles Petzold (veröffentlicht von Microsoft Press) erläutert :
Der 8080 ist ein 8-Bit-Mikroprozessor, der Daten aus dem Speicher liest und Daten mit jeweils 8 Bit in den Speicher schreibt. Der Chip enthält acht Signale, die mit D 0 bis D 7 bezeichnet sind . Diese Signale sind die einzigen auf dem Chip, die sowohl Ein- als auch Ausgänge sind. Wenn der Mikroprozessor ein Byte Speicher liest, fungieren die Pins als Eingänge; Wenn der Mikroprozessor ein Byte in den Speicher schreibt, fungieren die Pins als Ausgänge. [Hervorhebung mein]
Natürlich ist ein Eingangssignal (oder Ausgangssignal) nur dann erforderlich, wenn ein Gerät an ein anderes Gerät angeschlossen wird, in diesem Fall an den Hauptspeicher.
Eine weitere Beobachtung ist, dass bei einer Integration des Hauptspeichers in die CPU der dem Computer zur Verfügung stehende Arbeitsspeicher nicht erweitert werden könnte. Im Zuge der Entwicklung integrierter Schaltungen für Computer wurde sehr früh erkannt, was teilweise auf die extrem hohen RAM-Kosten zurückzuführen ist, dass Benutzer später möglicherweise mehr Speicher hinzufügen müssen. Es wäre und bleibt eine lächerliche Idee, den Hauptspeicher in die CPU zu integrieren.
Ist es richtig zu sagen, dass die CPU RAM enthält? Oder hat es irgendwann in irgendeiner Form gemacht?
Ja, selbst frühe CPUs enthielten RAM (irgendwie).
Das heißt, wenn mit RAM RAM gemeint ist, auf das nicht sequentiell zugegriffen werden kann und das flüchtig ist, dh sein Inhalt geht verloren, wenn keine Energie mehr angelegt wird.
Auf Seite 264 des Codes finden Sie eine Beschreibung dieses "integrierten Speichers":
Neben dem Akkumulator enthält der 8080 sechs Register, die auch 8-Bit-Werte im Mikroprozessor enthalten können. Wie der Akkumulator sind die anderen sechs Register Latches; Der Prozessor kann Bytes aus dem Speicher in Register und von Registern zurück in den Speicher verschieben.
Dies ist wahrscheinlich ein Teil der Definition des Arbeitsspeichers (und keinesfalls Hauptspeicher). Es ist jedoch offensichtlich, dass die Register in einer CPU als Speicher fungieren. Sie werden beispielsweise zum zeitweiligen Speichern von Werten verwendet, während der Prozessor Berechnungen mit dem Akkumulator ausführt oder eine Adresse im Hauptspeicher speichert, um Daten in den Speicher zu lesen bzw. von dort zu lesen.
Moderne Prozessoren enthalten jetzt auch CPU-Cache . Dies ist jedoch immer noch kein Hauptspeicher. Wenn es um den Cache der CPU und den Hauptspeicher der CPU geht, wird der erste zum Speichern einer Kopie von im RAM gefundenen Auswahldaten verwendet, um die Verarbeitungszeit zu beschleunigen (aufgrund der Tatsache ist der Cache-Speicher viel schneller als der Hauptspeicher). Zu keinem Zeitpunkt verwendet die CPU ihren Cache als "permanenten" Speicherort für Daten in der Art und Weise, wie der Hauptspeicher verwendet wird.
Randnotiz:
Wie andere bereits festgestellt haben, ist der Text, der in Ihrer Frage zitiert wird, etwas mehrdeutig. Besonders das Stück, das ich früher zitiert habe:
Das wichtigste Hardwareelement ist die CPU (Central Processing Unit). Sie enthält den Prozessor und den Hauptspeicher.
Ob es sich bei dem Text um die Behauptung handelt, dass die CPU die Box ist, in der sich alle anderen "wichtigen" Komponenten befinden, oder dass es sich um den Mikroprozessor handelt, kann ich nicht sagen. Wie dem auch sei, hoffentlich hilft diese Antwort, eine Antwort auf das zu finden, was Ihrer Meinung nach Ihre Kernfrage ist: Ob der Hauptspeicher Teil der CPU ist oder nicht.