Funktionsweise von Computer-Chips


Ein moderner Mikroprozessor ist ein enorm kompliziertes Gebilde, und es hat jahrzehntelange Arbeit von Tausenden von Menschen genommen, um es zu bekommen, wo es heute ist. Es ist fast unmöglich, alle abzudecken, aber ich werde trotzdem versuchen. Und machen Sie sich einen Eimer Popcorn bereit – denn dies wird lang sein.

Jedem modernes System arbeitet auf der Grundlage guter Abstraktionen, d.h. einfacher Module auf der komplexere Dinge aufbauen. Meiner Meinung nach kann der moderne Prozessor in die folgenden sehr breiten Schichten unterteilt werden:

  1. Geräte (Transistoren)
  2. Schaltungen
  3. Logik-Gatter
  4. Einfache Logik-Bausteine
  5. Prozessor
  6. Software

Zunächst beginnen wir vom einen "Mittelweg" ist weder kompliziert zu verstehen, noch zu weit von einem tatsächlichen Prozessor: Logikgatters. Ein Logikgatter dauert einige Anzahl der Eingänge, von denen alle 0 oder 1 sind, und wird die wieder 0 oder 1 ist etwas Ausgabebild nach einigen Regel. Beispielsweise wird eine AND-Gate Ausgang 1 nur, wenn alle Eingänge 1 sind.

Anfangen Sie könnten jetzt, Frage mich ", aber was meinst du mit 0 und 1? Was bedeutet das in Bezug auf Strom? ". Die Antwort ist unglaublich kompliziert. Es kann bedeuten, dass ein Maß an Spannung (0 ist 0V, 1 1V), einen elektrischen Impuls (0 ist kein Impuls, 1 ist ein Puls von 1V für 1 Nanosekunde, ein Milliardstel einer Sekunde), ein Photon (0 ist kein Photon, 1 1000 Photonen), und so weiter, je nachdem, wie die Schaltung entworfen wurde. Das ist die Macht der Abstraktion. Du musst nicht wissen, was die 0 und 1 bedeutete, um Dinge, die weiter oben zu gestalten (aber Sie machen schlechte Entscheidungen weiter oben wenn Sie nicht wissen, so ist die Abstraktion natürlich nicht perfekt).

Nun, diese ganz einfache Dinge tatsächlich lassen Sie uns tun Sachen? Lassen Sie uns vorgeben, dass Sie dabei sind, Ihre eigenen Prozessor-Firma zu gründen, und Sie möchten einen einfachen Block zu machen, der zwei Zahlen, die mit diesen Toren allein hinzufügt.

"Aber festhalten," sagen Sie, "Was ist eine Zahl in Bezug auf 0 und 1? Ich kenne nur Zahlen wie 57 und 42, die Ziffern von 0-9, nicht nur 0 und 1" gemacht werden. Stimmt, aber sehen, 57 ist nur eine Darstellung der Zahl darunter, das ist wirklich 5 * 10 + 7. Sie können auch darstellen 57 1 * 2 ^ 5 + 1 * 2 ^ 4 + 1 * 2 ^ 3 + 0 * 2 ^ 2 + 0 * 2 ^ 1 + 1 * 2 ^ 0. Voila! Dort haben Sie es; 57 ist dasselbe wie 111001 in diesem neuen System. Sie können sich überzeugen, dass beliebig viele in dieser Form dargestellt werden kann.

Nun gehen wir zu den Addierer... Zunächst einmal müssen wir bauen eine "halbe Adder", oder nimmt an zwei Bits und fügt ihnen letztlich Ausgabe zwei Bits. Also, wenn die beiden Bits beide 0 sind, wird es 00, ausgeben, wenn nur einer von ihnen 1 ist, es 01 gibt und wenn beide 1 sind es 10 gibt. Lassen Sie uns denken Sie ein Bit gleichzeitig zu und das erste Bit erste. Nach einiger Zeit herausfinden wir, "Oh!" Das Bit ist 1 nur, wenn beide die Eingangsbits 1 sind. Damit wir durch ein Tor und erhalten können. "Awesome!" Jetzt haben wir die Hälfte unserer Arbeit. Nur ein Bit übrig.

Jetzt sitzen wir um noch einmal zu überdenken. Hmm, scheint diese andere etwas härter. Es ist fast wie ein oder-Gatter, aber nicht 1 Ausgang, wenn beide Eingänge 1 sind. OK, lasst uns nicht darüber nachdenken Sie diese mehr und nur nennen es eine neue Art von Tor, einem exklusiven oder Tor entscheiden.

"Mach dir keine Sorgen," sage ich, "Wir stocken einige super genial Schaltungen-Ingenieure, die solch ein Tor im Schlaf gestalten können." Jetzt wir ein Bild von unsere erstaunliche neue Schaltung zeichnen: eine halbe Addierer.

Aber jetzt können Sie sagen, "Wir können nur 1-Bit-Zahlen. Unsere Konkurrenzfirma kann Zahlen über 1 Milliarde hinzufügen. Wie tun wir das?" Die Antwort ist – Überraschung Überraschung — Abstraktionen. Sie sehen, unsere aktuelle Design können nur zwei 1-Bit-Zahlen, und der Ausgang ist eine Summe und eine "tragen", die jetzt auf die nächste höhere Bit hinzugefügt werden muss. Dies braucht die Zugabe von drei Bits, was unsere kleinen Kerl nicht möglich.

So nach ein weiterer Tag voller Kopf darüber zerbrechen, wir dies herauszufinden, werden eine gute Schaltung dazu und nennen es "voll" Addierer.

Jetzt haben wir die Zugabe macht der Welt in unseren Händen. Seht ihr, jetzt wir können nur Kette 32 dieser kleinen Kerle zusammen wie folgt und wir haben in unseren Händen ein Monster, die Zahlen mehr als 1 Mrd., in der ein Wimpernschlag hinzufügen können.

Und hier ist die gute Nachricht: Sie können nur gehen auf die bessere Tore, und Ihre Schaltung werden besser und besser. Das ist die Macht der Abstraktion.

Natürlich, wie es sich herausstellt, ist unsere Weise des Hinzufügens Dinge nicht wirklich so toll. Sie besser machen können – viel besser, in der Tat. Aber wegen unserer Freund Abstraktion kann, unabhängig von den Toren erfolgen. Wenn Ihre neuere Schaltung zweimal ist besser als das alte, und haben Sie zwei Mal schneller Tore, Sie haben eine viermal bessere Schaltung!

Das ist einer der wichtigsten Faktoren, wie wir in ein paar Jahrzehnten tausendfach besser geworden. Wir gebaut kleiner, schneller, weniger Strom verbrauchen Tore. Und wir haben herausgefunden, bessere Möglichkeiten die gleiche Berechnung zu tun. Und nach dem zusammenfügen, es funktionierte wie ein Zauber!

Wir jetzt Schufterei für ein Jahr in unserer Garage und Schaltungen, die können multiplizieren, hinzufügen, subtrahieren, dividieren, vergleichen und alle Arten von Arithmetik, alle innerhalb 1 Nanosekunde tun zu bauen. Wir machen noch eine kleine Schaltung, die "einen Wert speichern kann", (d.h. seine Ausgabe hängt was Wert darauf früher geschrieben wurde). Nennen wir es ein Flip-flop.

Aber seht ihr, eines haben alle unsere Schaltungen gemein ist, dass sie nur bei den Eingängen und den gleichen Vorgang über sie, um die Ausgabe zu tun. Was passiert, wenn ich wollte, ein anderes Mal, um hinzuzufügen oder etwas zu multiplizieren?

Wir müssen in diesem Fall nicht Bits als nur Zahlen betrachten. Lassen Sie uns versuchen Sie, die "Aktionen" selbst in den Bits repräsentieren. 0 bedeutet "hinzufügen", 1 bedeutet "Multiplizieren" lassen Sie uns sagen. Nun, lasst uns bauen Sie eine kleine Schaltung, die sieht ein bisschen wie ein "Befehl" und wählt zwischen zwei Eingängen, I0 und I1, I0 ausgibt, wenn der Befehl ist 0 und I1, wenn es 1. Dies ist ein multiplexer.

"Wow," sagen Sie: "jetzt brauchen wir nur einen multiplexer, zwischen den Ausgängen ein Addierer und einen Multiplikator zu wählen, und wir haben unsere Lösung!" In der Tat können wir haben viele diese Multiplexer zwischen so vielen Ausgänge wählen – dann haben wir uns eine wirklich erstaunliche Maschine.

Aber halt – wir haben eine andere Idee. Denken Sie daran, diese lustige kleine Flip Flops, die wir früher gebaut? Nun, was passiert, wenn wir eine 1024-1 multiplexer am Ausgang des 1024 Flip-flops einstecken? Jetzt haben wir, was einen 1 KBit Speicher genannt wird. Wir können ihm eine "Adresse", und es wird uns ein wenig zurück geben, die das Bit an diesem nummerierten Position gespeichert wurde. Darüber hinaus kann diese Bits jetzt entweder "Zahlen" (Daten) oder "Befehle" (Anleitung).

Hier ist die wirklich erstaunliche Sache: Wir haben alles was wir brauchen, um einen Prozessor zu bauen:

  • Zunächst einmal haben wir eine Speicher-Array MEM hält die "Befehle" (Anleitung) und "Zahlen" (Daten).
  • Zweitens haben wir eine Reihe namens "Program Counter," eine, die wir verwenden, um die Anweisung von MEM ausführen auswählen. Es wird normalerweise nur um 1 in jedem Schritt erhöht.
  • Drittens haben wir einen arithmetischen Block mit Multiplexer.
  • Viertens, generieren wir beide Eingänge zu unserem arithmetischer Block von MEM.
  • Schließlich gibt es zwei Arten von Anweisungen: Daten Anweisungen und Steuerbefehle. Jede Anweisung Daten enthält vier Dinge: zwei Adressen angeben, die zwei Zahlen zur Abholung MEM, einem Befehl sagen welche Operation durchführen und einen anderen Ort sagen, wo das Ergebnis zurück zu setzen. Die Steueranweisungen setzen einfach eine andere Adresse zurück in den "Program Counter."

Diese Sache, die Sie gerade erstellt haben nennt man eine Von-Neumann-Maschine (ja, verrückte Leute wie er dachte all das Zeug, 1945). Heutzutage sind Menschen beginnen zu Fragen, ob dies ist der beste Weg, um Dinge zu bauen, aber das ist der normale Weg baute heutzutage jeder Prozessor.

Nun, wenn ich bereits sagte, dass dies ist, wie alle Prozessoren gebaut sind, ich meinte "theoretisch" und von "theoretisch", meine ich "lassen Sie uns betrachten, dass eine Kuh ist eine Kugel" theoretisch. Sie sehen, Ihr Konkurrent CPU Kreise um Ihre grundlegende Von-Neumann-CPU ausgeführt werden kann. Sie haben nur 1000 Kbit Speicher, Ihr Konkurrent kann soviele Milliarden behandeln (Gb) oder Billionen (Tb) von Bits des Speichers. Aber jetzt können Sie sagen, kein Weg in die Hölle die Jungs können erstellen 1 Milliarde multiplexer und seine Daten innerhalb 1 Nanosekunde. Wahren. Ihr Geheimrezept ist etwas Ortschaftgenannt.

Was dies bedeutet, dass Ihr Programm normalerweise nur wenige Standorte Daten und Unterweisung Speicher gleichzeitig verwendet. Also was willst du ist einen großen Speicher, bestehend aus GB an Daten haben, dann bringen Sie in einem kleinen Teil davon – der Teil, der derzeit zu einer viel kleineren Palette (vielleicht 1 MB) verwendet wird genannt den Cache. Natürlich, jetzt haben Sie einen noch kleineren Cache unter diesen Cache, und so weiter, bis Sie etwas erreichen können, die Sie lesen oder schreiben können, in etwa die gleiche Menge an Zeit möglich eine arithmetische Berechnung.

Eine weitere starke Idee, die Sie tun können, nennt man aus der Auftragsbearbeitung. Das Konzept dahinter lässt sich durch das folgende Programm, X berechnet = (A+B)*(C+D).

  1. Add A und B und bewahren Sie es an U
  2. Fügen Sie C und D hinzu und speichern Sie es in V
  3. U und V zu multiplizieren und in X gespeichert

Auf die übliche Weise werden Sie es nur tun, sequentiell, gehen eine Anweisung nach der anderen und schlichten Ausführung in 3 Schritten. Aber wenn Sie zwei Kreuzottern in Ihrem System haben, Sie können Anweisungen 1 und 2 parallel laufen, und dann in 2 Schritten erfolgen. Ihr habt so viel wie möglich jeden Schritt ausführen und Ihre Ausführung schneller zu beenden.

Denken Sie zurück in die Zeit, als alles, was Sie wußte, war, eine einfache und-Gatter. Diese Sache baute Sie scheint so fremd aus. Aber es ist wirklich nur Schichten über Schichten von Blöcken und Wiederverwendung von einer einfachen Block um eine komplexere Block zu bauen. Das ist die Kernidee: A CPU ist gebaut nur durch das Ausbessern miteinander teilen, das ist durch das Ausbessern gemeinsam kleinere Teile. Am Ende wenn Sie nur auf die Sache starren, aber es sieht folgendermaßen aus:

Das sind natürlich nur die Grundlagen. Was sagen Sie über ist die gleichwertige Ofresponding, "wie eine F1-Auto funktioniert?" mit "Es hat Räder und eine Lenkung, die Räder und einen Motor auf die Räder laufen führt". Wahrlich, entwirft und baut eine CPU ist eines der Wunder der modernen Technologie, der eine große Anzahl von ingenieurwissenschaftlichen Disziplinen (einschließlich z. B. Quanten-Physik, Metallurgie, Photonik etc.) beinhaltet. So, jetzt wollen wir versuchen, ein wenig mehr ins Detail zu erhalten.

Herstellung

Eines der erstaunliche Kunststücke der Technik wurde die Fähigkeit zum Erstellen und verbinden von Milliarden von winzigen Transistoren, jeweils weniger als 100 nm (ja das Nano, d. h. ein Milliardstel eines Meters) breit, in einem genauen Muster definiert durch die Schaltung und die CPU-Architekten – und machen es noch unglaublich billig. Es ist klar, dass das Erstellen und verbinden wie eine riesige Anzahl von Transistoren eins nach dem anderen von hand praktisch unmöglich ist, oder sogar durch irgendeine Form der Mechanik, wirklich.

Um das zu überwinden, wir fertigen Chips mit einer Methode namens Photolithographie, und es ist der Grund für den extrem niedrigen Preis von Prozessoren im Vergleich zu ihrer Komplexität. Die Idee ist ähnlich wie eine analoge Foto "entwickelt werden" zur (wenn jemand diejenigen erinnert). Zuerst werde ich beschreiben, wie erstelle ich eine Muster von Siliciumoxid auf Silizium (Dies ist bei Toren von Transistoren verwendet). Zuerst wird eine Schicht aus Siliziumoxid auf dem Silikon hinterlegt. Dann wird ein Photoresist Material oben drauf aufgetragen. Dieses Material ist empfindlich gegen Licht, aber ist resistent gegen "Radierung". Die Umkehrung des Musters zu erstellenden erfolgt ebenfalls in Form einer "Maske" durch das UV-Licht auf den Fotolack leuchtete ist. Doch wirft dann die Frage auf wie die Maske in erster Linie erstellt wurde.

Hier ist die Magie der Photolithographie: die Maske ist tatsächlich viel größer als die Größe des Musters geätzt werden. Das Licht schien durch die Maske konzentriert sich einfach durch eine Linse, um die richtige Größe, wenn es auf dem Silikon fällt. Sobald das Licht der Fotolack wechselt, ist es durch eine Explosion von Plasma, so dass nur das gewünschte Muster auf Siliziumoxid weggeätzt.

Erstellen Sie eine Metallschicht, folgt auf der anderen Seite ein ähnliches Verfahren. Aber jetzt ist die Umkehrung des Musters auf SiO2 geätzt und Metall lagert sich dann auf den "Furchen", erstellt von der SiO2.

Der Grund, warum dies so sparsam ist, weil sobald Sie die "Maske" haben, können Sie sehr große Anzahl von Chips daraus erstellen. So zwar eine Maske ziemlich teuer (einige Millionen $), seine Kosten viele Chips, gliedert sich in die macht jeder Chip sehr billig (keine Wortspiel).

Arten von Erinnerungen

Wie ich bereits sagte, können Sie eine Erinnerung erstellen, indem Sie Flip-flops auf Multiplexer. Das ist jedoch keine besonders effiziente Möglichkeit Dinge zu tun. Ein Flip-flop verbraucht ca. 15-20 Transistoren. Allerdings in der Praxis gibt es zwei Arten von Speicherstrukturen: Statisches RAM (oder SRAM kurz), die verwendet 6 Transistoren pro Bit, und dynamischen RAM (oder DRAM kurz), die nur ein Transistor und einem Kondensator pro Bit verwendet. Ein statisches RAM ist im Wesentlichen zwei nicht Tore in einer Schleife wie folgt verbunden.

Klar, gibt es zwei mögliche Zustände für A und B, A = 1, B = 0 oder A = 0, B = 1. Die Idee ist, einige externe Spannung zu schieben die Schleife in einem Staat oder anderen gelten, dann ist die "gespeicherte" Biss, und dann lesen Sie einfach die Spannung bei A oder B, um "das bisschen lesen".

Auf der anderen Seite dynamische RAM oder DRAM, ist sogar noch simpel und sieht etwa wie folgt aus.

In diesem Entwurf, der Transistor wirkt einfach als Schalter zum Speichern von Ladung im Kondensator, in welchem Fall es als 1, ansonsten 0 gelesen wird. Allerdings verliert die Ladung im Kondensator aus der Transistor jeder so oft. So gelesen und in festen Intervallen neu geschrieben werden muss, und das ist, warum es heißt dynamisches RAM.

Die Caches in einem Chip sind in der Regel SRAM, da sie schneller sind. Die wichtigsten Erinnerungen in einem Computer sind jedoch in der Regel DRAM, da sie viel kleiner sind und damit eine größere Menge an Arbeitsspeicher in einem einzigen Chip passen.

[Weiterführende Literatur: Static random access memory, Dynamic random access memory, Addierer (Elektronik), Von-Neumann-Architektur, CPU-Cache, Photolithographie, Out-of-Order Execution, Arche | Intel® Core™ i7-3960 X Prozessor Extreme Edition (15 M-Cache, bis zu 3,90 GHz)]

Bild: Shutterstock/Volodymyr Wladár

Wie funktioniert ein Computerchip? erschien ursprünglich auf Quora. Folgen Sie Quora auf Facebook Twitter, , und Google +.

Diese Antwort wurde leicht bearbeitet, für Grammatik und Klarheit.

Verwandte Artikel

3D Computer-Chips könnten 1.000 Mal schneller als bestehende

ST. LOUIS – Eine neue Methode der entwerfen und Erstellen von Computer-Chips könnte zu sehr schnellen Verarbeitung mindestens 1.000 Mal schneller als die beste vorhandene Chips in der Lage sind, sagen Forscher. Die neue Methode, die stützt sich auf Materi...

Russland ist ein (langsam) Computer-Chip von seinen ganz eigenen Gebäude.

Während Russland Flotten von Panzern und Kampfflugzeugen zu sein eigen nennen kann, gibt es ein wichtiges Produkt es noch stützt sich auf die westliche Welt für: Computer-Chips. Aber dank der Einführung des Elbrus - 4 C, der 2006-Intel Pentium-Chip hat en...

Beam Me Up: Bits von Informationen teleportiert über Computer-Chip

Die Quantenmechanik erlaubt für einige sehr seltsame Dinge, wie die Teleportation von Informationen und Computern, die selbst die härtesten Codes brechen kann. Vor kurzem haben Wissenschaftler an der Eidgenössischen Technischen Hochschule (ETH) Zürich ein...

Graphene Computer Chips Run auf Licht statt Strom

Dank der Verbesserungen in der Faseroptik die meisten Informationen, die Sie an einem bestimmten Tag verbrauchen wird durch Licht transportiert. Sehr ineffizient, jedoch die meisten Computer-Chips brauchen Strom zu bedienen und Wissenschaftler noch nicht...

Idiocracy, 10 Prozent Gehirn Mythos, Funktionsweise von Times Square und mehr

Es wurde eine wilde hier bei Gizmodo. Wir eine ganze Reihe von Gadgets, schaute auf die Neugestaltung des United States Postal Service geprüft und bekam einen Blick hinter die Kulissen wie die Zeichen, die Times Square Leuchten, funktionieren. Lass uns pr...

Diese Computer-Chip kann wie ein menschliches Gehirn vorstellen.

IBMs neuesten gehirnähnliche Computer-Chip kann nicht "schlauer als ein Fünftklässler" sein, aber es kann Millionen von Neuronen des Gehirns zu simulieren und komplexe Aufgaben mit sehr wenig Energie. Forscher für die Computer-Hardware-Riesen ha...

Diese Computer-Chip werden in 5 Sekunden selbst zerstören.

Selbstzerstörung in 3... 2... 1. Boom! Eine neue Technologie können Computer-Chips, die sich selbst zerstören, wenn aus der Ferne ausgelöst. Die neue Methode verwendet Computer von Silizium-Wafern angebracht zu einem Stück aus gehärtetem Glas, das zerbric...

Computer-Chips aus Holz können wir jetzt machen.

Wir sind einen Schritt näher an biologisch abbaubaren Gadgets. Diese Computer-Chips werden fast ausschließlich aus Holz hergestellt. Wissenschaftler an der University of Wisconsin, Madison zusammen mit dem US Department of Agriculture Forest Products Labo...

Funktionsweise von Tsunamis

Ein großen Erdbeben in Chile über Nacht hat einen Tsunami in den Pazifischen Ozean, ausgesandt aufgefordert eine Tsunami Uhr entlang der Küsten von Kalifornien und Teilen von Alaska und eine Tsunami-Warnung für Hawaii. Eine Uhr ist eine warnende Aussage,...

Eine schnelle Auffrischung ihrer Kenntnisse zur Funktionsweise der Computer-Speicher

RAM, DRAM, SRAM, SSD, HDD. Die Sprache der Computer-Speicher, wie die meisten anderen Komponenten von Computern und Smartphones, ist eine Sammlung von Buchstabensuppe. So kann es schwierig sein, Ihr Gehirn um was genau wickeln Sie diese Sammlung von Buchs...

Stanford errichtet eine neue Art von Computer, dass Verwendungen Tropfen Wasser

Dunking Ihren Laptop in einen Eimer mit Wasser, während es ausgeführt wird, ist so ziemlich das Schlimmste, was können Sie es tun. Aber Forscher an der Stanford University, unter der Leitung von Dozent Manu Prakash, entwickelten eine neue Art von Computer...

Gehirnzellen fusioniert mit Computer-Chip

Die Grenze zwischen lebenden Organismen und Maschinen hat gerade eine ganze Menge unschärfer geworden. Europäische Forscher entwickelten "Neuro-Chips" in dem lebenden, die Gehirn Zellen und Silizium-Schaltungen aneinander gekoppelt sind. Die Ver...

Modell-Städte von Computer-Teile gemacht

Italienischer Künstler Franco Recchia baut komplexe Miniatur Stadtansichten aus ausrangierten Computer-Teile, Gehäuse, Leiterplatten und elektronische Bauteile. Die Skulpturen sind auf Ausstellung in der Agora Gallery in New York City bis Juli 2011. [via...

Was A Guy In seine Tasche von Kartoffel-Chips gefunden wird... Komische unerwartete

Ein kräftiger Beutel mit Cheddar und Sauerrahm mit Rüschen ist mein Go-to-Behandlung auf Diät Cheat Tag. Es gibt etwas über diese besondere Tasche von Chips, die sie süchtig macht, halten mich wieder für mehr (und vom Sellerie). Aber wenn ich was dieser b...