Dieser Satz hat es für mich in sich "Dies ist eine wichtige Forschung darüber, wie Hardware funktioniert"
Ich habe von der gesamten Mikroelektronik gelinde gesagt keine Ahnung. Ich habe bis heute nicht verstanden, wie man mit 0 und 1 logische Operationen aufbauen kann, die Grundrechenarten verstehen. Ich müsste mir wohl mal in Ruhe die mechanischen Rechner von Zuse anschauen und verstehen. Noch weniger weiß ich, wie Chips aufgebaut sind. Ich erinnere mich nur an die Aussagen eines Mitbewohners, der Mikroelektronik als Vertiefungsfach in Elektrotechnik hatte, der meinte, dass die letzte komplett von Hand konstruierte CPU der 386er war und inzwischen alle CPUs von Programmen selber optimiert werden. Ähnliches kenne ich von heutigen CAD Programmen, die auf Knopfdruck Konstruktionen "optimieren". Wie und warum bleibt dem Anwender in der Regel verborgen.
Das ist eigentlich vom Grundprinzip nicht sonderlich kompliziert, aus Transistoren kann man Logikgatter bauen, die man dann wieder zu komplexeren Strukturen wie z.B. Addier zusammenschalten kann.
Algorithmen wie CORDIC sind in dem Zusammenhang vielleicht ganz interessant zu Erwähnen, damit lässt sich alles was du z.B. in einem Taschenrechner (oder Navigationsrechner in deinem Überschall-Atombomber
) brauchst, mit wenig Schaltungsaufwand erschlagen.
Die Komplexität im digitalen Design wird durch viele Abstraktionsebenen beherrschbar, auf der Transistorebene kommen die Logikgatter-Modelle (für Simulation und Verifikation) oft vom Halbleiterfertiger.
Man versucht heutzutage, die digitalen Designs auf eine möglichst hohen Abstraktionsebene zu beschreiben, z.B. mit VHDL/Verilog oder SystemC, woraus dann die weniger Abstrakten Ebenen Schritt für Schritt synthetisiert und simuliert werden, bis man beim eigentlichen Layout des Chips (ASIC) oder BIT-File (FPGA) angekommen ist.
Das heisst aber nicht, dass man deshalb die Hardware nicht versteht.
Der übliche Entwurfsablauf im Digitalbereich wie folgt:
Auf System- bzw. algorithmischer Ebene wird eine Verhaltenssimulation durchgeführt und per High-Level-Synthese
ein Register-Transfer-Modell erstellt.
Davon ausgehend kann man auf die Gatter-Ebene gehen und unter Berücksichtigungen der physikalischen Realisierung nach einem Place and Route-Schritt Timing-Simulationen/Analyse durchführen.
Natürlich finden während der Synthese Optimierungen statt, aber die Vorstellung von "Wir wissen gar nicht was wir tun" ist sehr irreführend und falsch.
Analog läuft übrigens aber nach wie vor alles von Hand, dort wird die Schaltung auf Transistor-Ebene entworfen, inkl. der Dimensionen der Transistoren.
Allerdings hat ein moderner Opamp auch nicht mehr als 50-100 Transistoren.
Wenn ich aus diesen Opamps dann einen ADC baue, greife ich auch hier schlussendlich wieder auf (selbst entworfene, statt vom Halbleiterfertiger) Bausteine zurück.