2017-04-16 1 views
0

Ich bin nur neugierig, wie Daten physikalisch über Logikgatter übertragen werden. Hat beispielsweise das Pixel auf meinem Monitor, das um 684 Pixel nach unten und 327 Pixel nach rechts verschoben ist, eine bestimmte Menge oder einen bestimmten Pfad von Transistoren in der GPU, die sich nur darum kümmern, dieses Pixel mit der richtigen Farbe zu füllen? Oder ist es zufälliger?Anordnung von Logikgattern auf einem IC?

+0

auch, sind Transistorfunktionen behoben? d.h. würde ein Transistor, der für eine Eingabe in ein UND-Logikgatter verwendet wird, immer eine Eingabe für dieses Logikgatter sein? – PFost

Antwort

0

Hier ist eine Zellbibliothek en.wikipedia.org/wiki/Standard_cell, die beim Erstellen eines Chips für eine bestimmte Gießerei verwendet wird, ähnlich wie ein Befehlssatz, der beim Kompilieren verwendet wird. Der Maschinencode für Arm unterscheidet sich von x86, aber derselbe Code kann für beide kompiliert werden (wenn Sie natürlich einen Compiler für diese Sprache haben). Es gibt also eine Liste von Standardfunktionen (und, oder, usw. plus kompliziertere), für die Sie Ihren Verilog/VHDL kompilieren. Eine bestimmte Zelle ist fest verdrahtet. Es besteht eine enge Beziehung zwischen der Zellbibliothek und der Gießerei und dem verwendeten Verfahren (28 nm, 22 nm, 14 nm usw.). Grundsätzlich müssen Sie den Chip eine dünne Schicht auf einmal unter Verwendung eines fotografischen Prozesses aufbauen, die spezifischen Halbleiter und andere Faktoren für ein bestimmtes Gerät können sich von anderen unterscheiden, so dass die 28nm-Technologie möglicherweise anders als 14nm ist ein UND-Gatter anders aufzubauen, also eine andere Zellbibliothek. Und das bedeutet nicht notwendigerweise, dass es nur eine UND-Gatter-Zelle für einen bestimmten Prozess in einer bestimmten Gießerei gibt, es ist möglich, dass mehr als eine entwickelt wurde.

so weit hat Pixel und Video funktioniert, gibt es einen Speicher irgendwo, in der Regel auf der Grafikkarte selbst. Je nach Bildschirmgröße, Anzahl der Farben usw. kann dieser Speicher unterschiedlich organisiert werden. Außerdem können mehrere Bilder verwendet werden, um ein Flimmern zu vermeiden und eine höhere Bildrate bereitzustellen. Wenn Sie also ein Bild mit der Adresse 0x000000 in diesem Speicher haben, extrahiert die Grafikkarte die Pixeldaten ab dieser Adresse, während die Software das nächste Bild mit 0x100000 erzeugt.

Wenn die Frames auf der Grundlage der Bildrate gewechselt werden, wechselt die Logik möglicherweise zur Anzeige des Bilds mit 0x100000, während die Software 0x000000 ändert. Für einen bestimmten Videomodus könnten also die ersten drei Bytes im Speicher bei einem bekannten Offset die Pixeldaten für das 0,0-Koordinatenpixel sein, dann die nächsten drei für 1,0 und so weiter. Für eine Zahl wie 684 könnten sie die zweite Linie bei Offset 684 * 3 beginnen, aber sie könnten die zweite bei 0x400 beginnen.

Wie auch immer, für einen bestimmten Modus ist der OFFSET in einem Frame des Videospeichers für ein bestimmtes Pixel gleich, solange sich die Moduseinstellungen nicht ändern. Die Grafikkarte hat aufgrund der Regeln der verwendeten Schnittstelle (vga, HDMI oder Schnittstellen, die zum Beispiel für ein Telefon lcd spezifisch sind) eine Logik, die diesen Speicher liest und die richtigen Impulse oder das analoge Pegelsignal für jedes Pixel erzeugt.

Verwandte Themen