Der Abgang eines Elektronikingenieurs von Apple sorgte bei Aktienspekulanten für Aufsehen. Wie werde ich wie er?

Am 29. März trat ein Ingenieur namens Gerard Williams III von Apple zurück. Diese Nachricht wurde sofort von CNET und drei Dutzend anderen Veröffentlichungen auf der ganzen Welt veröffentlicht, nicht nur technisch, sondern auch finanziell. Was hat dieser Ingenieur getan, dass sein Abgang bei Aktienspekulanten Aufregung hervorrief? Er hatte 9 Jahre lang Prozessoren im Apple iPhone entworfen, zuvor 12 Jahre in ARM, zuvor DSP in Texas Instruments und zuvor FPGA-Schaltungen in Intel. An allen Orten verwendete er Designtechnologie auf der Ebene der Registerübertragungen unter Verwendung von Verilog- und VHDL-Hardwarebeschreibungssprachen.

Beispiele näher an Russland? Auf dem rechten Foto: Ilya Neganov, ein 25-jähriger Moskauer, hat 2011 ein Harris & Harris-Buch (dessen neueste Version hier oder hier heruntergeladen werden kann) aufgenommen, einen einfachen Prozessor entworfen, arbeitet jetzt bei Apple, entwirft auf einer GPU veril, fliegt am Wochenende in einem Flugzeug. Im Folgenden finden Sie einige Jungvermählten aus St. Petersburg, die die Kamera- und FPGA-Bildverarbeitung mit einer Kamera entworfen und beim Innovate FPGA-Wettbewerb einen Preis erhalten haben. Sie verbrachten ihre Flitterwochen in Intels Hauptquartier in Santa Clara. Als nächstes Kameraden aus Kiew, von denen zwei beim Innovate FPGA European Finale Bronze gewannen. Und schließlich zwei Schulkinder aus den Klassen 5 und 9, die ihre ersten Übungen mit Mikroschaltungen mit geringem Integrationsgrad auf dem Steckbrett machen und dann mit den Übungen auf Veril und FPGA fortfahren.

Dies sind fünf Punkte auf dem Weg vom Schüler zu Gerard Williams dem Dritten. Die Flugbahn ist ziemlich schwer, da die anfängliche Barriere für den Einstieg in das Design digitaler Mikroschaltungen höher ist als für den Einstieg in die Programmierung. In diesem Beitrag werden wir darüber sprechen, wie der erste Abschnitt der Flugbahn für russische und andere Studenten erleichtert werden kann.



In diesen zwei Wochen hält eine Gruppe von Kollegen von RUSNANO, Wave Computing, MIET, IVA Technologies, HSE MIEM, Amperka und dem Verlag DMK-Press die folgende Veranstaltung ab: Zunächst absolvieren die Studenten einen theoretischen Online-Kurs (Teile vom Transistor bis zur Mikroschaltung , die logische Seite des Digitalen) Schaltkreise “ , „ Die physikalische Seite digitaler Schaltkreise “ ), auf denen sie die sogenannte RTL2GDSII-Route kennenlernen - eine Gruppe von Technologien, mit denen Ingenieure in Elektronikunternehmen Chips entwerfen. Dann führen wir praktische Kurse mit rekonfigurierbaren FPGA-Logikschaltungen durch . Auf diese Weise unterrichtet er beispielsweise MIT im Kurs 6.111, aber wir versuchen es in einer sehr einfachen Form für Schüler vom Typ Olympiade.

Der theoretische Kurs ist wichtig, um keine Zeit mit einem praktischen Kurs zur Erklärung der Designtheorie auf der Ebene der Registerübertragungen zu verbringen, sondern einfach drei Abende und zwei Stunden mit FPGA-Karten zu spielen, die Sie dann mitnehmen können. Ein theoretischer Kurs verknüpft FPGA-Übungen mit Massenprodukten, die ASIC-Chips verwenden.

Der praktische Kurs wird ein weiteres Experiment sein (die vorherigen wurden von verschiedenen Lehrern in Nischni Nowgorod, Kiew, Alma-Ata, Kasachstan, Minsk, Nowosibirsk, Tomsk und Irkutsk durchgeführt), um herauszufinden, wie man Übungen mit Verilog und FPGA für Anfänger interessant und nützlich macht.

Lohnt es sich, Übungen mit FPGAs mit Mikroschaltungen mit geringem Integrationsgrad zu machen? Zu diesem Thema gibt es unterschiedliche Meinungen: Ilya Kudryavtsev, Dekan der Samara-Universität, ist der Ansicht, dass es sich nicht lohnt. Es ist besser, 2019 sofort die neueste Technologie zu geben, als das alte CMOS 4000 auf einem Steckbrett, das vor 50 Jahren relevant war. Stanislav Zhelnio, ein Neurochip-Konstrukteur bei IVA Technologies, glaubt, dass es sich lohnt, weil die Studenten FPGAs ansonsten als einen anderen Mikrocontroller wie Arduino wahrnehmen, aber einfach mit einer seltsamen Programmiersprache Verilog. Tatsächlich sollte ein Schüler oder Schüler sofort klar erkennen, dass der Verilog das Schema und nicht das Programm (die Befehlskette) beschreibt, und Übungen mit dem CMOS 4000 helfen dabei, das richtige Bild im Gehirn zu finden.

Wenn Sie auf Verilog schreiben, als wäre es ein Programm, keine Schaltung, dann funktioniert der Code auf dem Simulator, wird aber nicht synthetisiert, und selbst wenn er synthetisiert wird, erhalten Sie ein verrücktes Schema (in Bezug auf Timing oder Größe).

Daher sieht einer der Ansätze folgendermaßen aus: Entwerfen einer Schaltung auf Mikroschaltungen mit geringem Integrationsgrad (Zähler, Schieberegister, Addierer, Decoder), Wiederholen auf einer Veril, Synthetisieren und Registrieren im FPGA.

Einige sagen: Warum nicht mit der Maus auf dem Bildschirm ein Diagramm für das FPGA zeichnen (schematische Eingabe) und es in das FPGA eingeben, bevor Sie Übungen auf dem Veril machen? Der Mausansatz hat drei Nachteile:

  1. Es erfordert Lernsoftware, die länger dauert, als nur Komponenten in ein Steckbrett zu stecken.
  2. Die Erfahrung mit einer durchgebrannten LED oder einem schwebenden Eingang ohne Pull-up-Widerstand auf einem Steckbrett ist wertvoller als eine sterile Erfahrung in einem schematischen Eintrag.
  3. Designer digitaler Logik haben seit Anfang der neunziger Jahre keinen schematischen Eintrag mehr verwendet, jeder schreibt über Veril, manchmal über VHDL.

Ja, CMOS 4000 und 74XX waren in den 1970er Jahren veraltet. Sie wurden durch PAL, GAL, PLD und dann integrierte Chips ersetzt. Daher wurden sie in den 1970er Jahren in Bechern für Kinder verwendet, und in den 1980er Jahren gerieten sie aus der Mode, weil sie keine Löhne mehr für ihre Fähigkeit zahlten, sie zu verwenden, aber seitdem hat niemand mehr herausgefunden, wie beispielsweise die D-Trigger-Funktion deutlicher demonstriert werden kann Als Vorläufer von FPGA / FPGA können sie angewendet werden. MIT macht dasselbe - siehe Labor Nr. 1 hier .

Nach Übungen mit Mikroschaltungen mit einem geringen Integrationsgrad und ihren Entsprechungen auf einem Veril auf dem FPGA können Sie die Aufgaben komplizieren und auf einem FPGA das tun, was Dutzende, Hunderte oder Tausende von Mikroschaltungen mit einem geringen Integrationsgrad erforderlich waren, worauf ich später noch eingehen werde.

Hier ist ein Beispiel für eine kombinatorische Logik, einen Prioritätscodierer, auf Mikroschaltungen mit einem geringen Integrationsgrad:


Und so sieht dieser Prioritätscodierer in der Verilog-Hardwarebeschreibungssprache aus:

module priority_encoder
(
    input      [2:0] in,
    output reg [1:0] out
);

    always @*
    begin
        casez (in)
            3'b1??  : out = 2'd1;
            3'b01?  : out = 2'd2;
            3'b001  : out = 2'd3;
            default : out = 2'd0;
        endcase
    end

endmodule

, , :


:



-:


, SPI, I2C, UART , , , VGA. FPGA :

, .


VGA , .



— 7- , , 4x4, ( ), ( ).

- c , , Hacker's Delight.

, , . schoolMIPS.


- 17-19 . , — RUSNANO USA. , 3000 Sand Hill Road -. - Apple, Google Amazon.


- . , RTL2GDSII, , , , .

Source: https://habr.com/ru/post/de446798/


All Articles