Wie wir die Winterschule "Digital Embedded Systems" in Krasnojarsk verbracht haben

Bild

Vom 7. bis 9. November fand am Institut für Weltraum- und Informationstechnologien der Sibirischen Bundesuniversität die erste Winterschule „Digital Embedded Systems“ statt. Die Schüler waren Studenten und Doktoranden der Sibirischen Bundesuniversität.

Mein Name ist Alina und ich arbeite hart daran, die eingebetteten unternehmenskritischen Steuerungssysteme für die Weltraumtechnologie zu entwickeln. Ich bin auch ein Doktorand der Fakultät für Computertechnik an der Sibirischen Bundesuniversität. Ich liebe es, neue Dinge zu lernen. Nachdem ich erfahren habe, dass vom 2. bis 5. Oktober in Nowosibirsk eine Schule über die Grundlagen digitaler Schaltkreise, Architektur und Verwendung von Verilog stattfinden wird, habe ich mich sofort dort angemeldet. Zwei Kollegen sind mit mir dorthin gegangen - Boris Dudkin und Dmitry Vlasov, der sogar Assistent der Schule war. Das Programm war interessant und reichhaltig, ich mochte die Schule so sehr, dass ich am Ende unserem Lehrer Stanislav Zhelnio ( SparF ) eine Frage stellte : Wie leite ich eine ähnliche Schule in Krasnojarsk? Stanislav antwortete ohne zu zögern, dass wir es selbst organisieren und durchführen könnten.

Während der Organisation der Schule haben wir festgestellt, dass für die Sibirische Bundesuniversität und das Unternehmen, in dem wir arbeiten, solche gemeinsamen Aktivitäten eine neue, aber nicht schwierige Aufgabe sind. Die Schule trägt den Namen „Krasnojarsk“ - die erste regionale Winterschule „Digital Embedded Systems“.

Tag 1


Am Eröffnungstag wurde mir die Möglichkeit zur Ausstrahlung geboten. Hier ist, worüber ich zuerst gesprochen habe:

• Sprache für die Hardwarebeschreibung und warum sie benötigt wird
• Was ist FPGA?
• Grundlagen der kombinatorischen Logik
• Grundlegende logische Elemente und ihre Beschreibung in Verilog
• Testumgebung (Testbench)
• Überprüfen des Betriebs der Kombinationsschaltung mit einem Simulator (Modelsim)
• Design der Syntheseschaltung, Intel Quartus GUI
• Wofür wird das Kombinationsschema synthetisiert, wenn es auf FPGAs implementiert wird?
• Programmieren einer Debug-Karte
• Überprüfung des Projekts auf dem Debugboard
• Grundlagen von Makefile und Arbeiten im Nicht-Projektmodus
• Multiplexer und Methoden zur Beschreibung in Verilog HDL
• Demultiplexer und Methoden zur Beschreibung in Verilog HDL
• Fallstudie: Arbeiten mit 7-Segment-Indikatoren
• Bedingte Kompilierung in Verilog HDL

Bild

An der Arbeit der Schule nahmen völlig unterschiedliche Schüler teil, es gab Studenten sowie Studenten und Doktoranden. Daher wurde besonders auf die Grundlagen geachtet. Zuerst kommentierten die Zuhörer das eingereichte Material mit den Worten „wir haben es für 3 Semester gemacht“, „hier ist alles einfach“, „wir können Quartus machen“ und wie „geschwommen, wir wissen“, aber nach Erhalt der ersten praktischen Aufgabe mischten sich die Jungs ein und seitdem begannen Kommentare und Fragen in dem Fall.

Tag 2


Am zweiten Tag war der Geschichtenerzähler Boris Dudkin, ein Software-Ingenieur, der echte Projekte für FPGA und ASIC schreibt. Hier ist, worüber er sprach:

• Kombinationsschaltungen und Signalausbreitungszeit
• Takt- und Reihenschaltungen
• Verschiedene Arten von Zuweisungen in Verilog HDL
• D-Trigger und seine Implementierung in Verilog in verschiedenen Varianten: asynchrones und synchrones Zurücksetzen, Schreibberechtigungsport
• Wofür wird die sequentielle Schaltung bei der Implementierung auf Basis von FPGA synthetisiert?
• Register und dessen Umsetzung
• Zähler und seine Implementierung
• Dynamische und statische Disziplin
• Metastabilität und Synchronisation
• Unerwünschte Verriegelung, Konsequenzen und Möglichkeiten zur Vermeidung
• Finite-State-Maschinen (Mura und Miles)
• Darstellung der Maschine in Form von Übergangsdiagrammen
• Implementierung der Maschine in Verilog HDL
• Allgemeiner Ansatz zum Entwurf komplexer Automaten
• Schrittweise Implementierung des Schnittstellenmoduls des Ultraschall-Abstandssensors auf Verilog

Bild

Ebenfalls am zweiten Tag haben wir eine Aufgabe für selbständiges Arbeiten herausgegeben:

  • Implementierung eines 4x4-Tastaturschnittstellenmoduls fĂĽr FPGA
  • Implementierung des FPGA-Rechners

Hier konnte man schon hören, wie das Gehirn der Jungs knarrte. Es gab Fragen, es gab Freude in den Augen der ersten Ergebnisse, es gab nervige Ausrufe, dass die Schaltung nicht so funktionierte, wie sie sollte.

Tag 3


Am dritten Tag begann meiner Meinung nach der ganze Spaß. Dieser Tag wurde von Dmitry Vlasov unterrichtet, einem Ingenieur, der erst 2018 sein Studium an einer Universität abgeschlossen hatte. Dmitry hat bereits an 3 ähnlichen Schulen teilgenommen. Das erste Mal (in Tomsk) war er Teilnehmer, das zweite Mal (in Nowosibirsk) assistierte er, und jetzt sprach Dmitry in Krasnojarsk über die Implementierung des schoolMIPS-Prozessors. Am dritten Tag hatten wir:

• Grundlagen des Pipelining
• Architektur und Mikroarchitektur
• Grundlagen zum Schreiben von Programmen in MIPS Assembler
• Arbeiten Sie mit dem MARS-Simulator (MIPS).
• Entwerfen des einfachsten Einzelzyklus-Prozessors am Beispiel von schoolMIPS
• Datenpfad und Steuergerät
• Kompilieren Sie das Programm, starten Sie den Prozessor im Simulator und auf der Debug-Karte
• Selbstständige Arbeit. Hinzufügen von Unterstützung für neue Anweisungen zum Prozessor

Bild

Material


  • Alle Kursmaterialien (Folien, Skripte, Quellen, Literatur) sind online verfĂĽgbar ( Github , zusätzliche Materialien ). Folien werden in einem zweifelhaften Stil gestaltet, wenn viel Text darauf ist, in der Hoffnung, dass dies das Kennenlernen von Offline-Materialien erleichtert.
  • Praktische und unabhängige Aufgaben wurden auf Terasic DE10-Lite-Motherboards mit Intel MAX10 FPGA an Bord ausgefĂĽhrt.
  • Das Buch "Digitale Schaltkreise und Computerarchitektur" ist kostenlos in elektronischer Form erhältlich ( Link ) oder in Papierform erhältlich ( Link ). Es ist leicht zu lesen, trägt als Fiktion. Es hat eine niedrige Einstiegsschwelle - einige spezielle Kenntnisse sind nicht erforderlich, um mit dem Lesen zu beginnen. KĂĽrzlich wurde eine Erweiterung der ARM-Architektur veröffentlicht ( Link ). FĂĽr das Buch stehen Codebeispiele sowie Folien (englische und russische Version) zur VerfĂĽgung, mit denen Sie Ihren eigenen Kurs erstellen können ( Link ).

Danksagung


  • Dank an Stanislav Zhelnio ( SparF ) und Yuri Panchul ( YuriPanchul ), die unsere Versuche unterstĂĽtzten, mit Ratschlägen halfen, Debugging-Boards schickten und uns generell auf jede mögliche Weise ermutigten, diese Veranstaltung durchzufĂĽhren.
  • Separat möchte ich die Enterprise Enterprise Satellite Systems erwähnen, die nach dem Akademiker M.F. Reshetnyova. Meine Kollegen und ich arbeiten dort und die höchsten Autoritäten der Organisation sowie unsere direkte FĂĽhrung haben uns bei unseren BemĂĽhungen unterstĂĽtzt und auf jede erdenkliche Weise geholfen.
  • Organisator der Veranstaltung der Sibirischen Bundesuniversität ist Oleg Vladimirovich Nepomnyashchy, der als Leiter der Abteilung, die uns beherbergt, bĂĽrokratische Momente an der Universität erledigt hat. DarĂĽber hinaus wurden Kurse im RoboLab-Labor abgehalten, das im Rahmen des APPLE-Projekts eingesetzt wurde, bei dem Oleg Vladimirovich als Koordinator fungiert. Sirotinina Natalya Yuryevna, Assistenzprofessorin, Leiterin des NUL „Microprocessor Systems“, APPLE-Projektauftragnehmer, hat uns auch bei der Schule sehr geholfen. Und Anton Khantimirov, Assistent von NUL „Microprocessor Systems“, APPLE Project Executor.
  • Vielen Dank an meine Kollegen Dmitry Vlasov und Boris Dudkin, die sich bereit erklärt haben, mir zu helfen und jeden Tag von Zheleznogorsk nach Krasnojarsk und zurĂĽck zu fahren!
  • Danke auch an die SchĂĽler! Wir mochten dich und waren schlagfertig und lustig. Kommen Sie zu uns, um zu arbeiten, wenn Sie Ihren Abschluss machen.

Schulbesprechungen


Alexander Kalaschnikow:

Während dieser drei Tage wurde ein kurzer Ausflug in die Welt des FPGA durchgeführt. Die Komplexität nahm zunehmend zu, aber eine wahrhaft kindliche Freude entstand, als alles klappte. Das Bild der Welt wird wiederhergestellt, wenn Sie mehr über parallele Prozesse in FPGAs erfahren. Als ich die Mikroarchitektur „berührte“, schaffte ich es sogar, mein eigenes Team und dann meinen ersten Assembler-Code hinzuzufügen ... Diese Schule war eine großartige Gelegenheit, neue Bekanntschaften zu schließen und Erfahrungen in der Kommunikation mit wirklich interessanten Menschen zu sammeln, die einen Funken entzünden konnten. Ich hoffe, es verblasst nicht und entwickelt sich zu einem Feuer. Vielen Dank!
Svetlana Leshchenko:

Vielen Dank für diese interessante und große Erfahrung. Tatsächlich war es interessant, genau die Kommentare und Erfahrungen der Produktionsmitarbeiter zu hören, da unsere Lehrer hauptsächlich Theoretiker sind. Aus diesem Grund haben wir beispielsweise noch nie Visual Code verwendet, was sich als sehr praktisch herausstellte.

Als RĂĽckblick kann ich nur sagen, dass ich an dieser Schule viel gelernt habe und hoffe, weitere Studien fortzusetzen. Ihre Kurse haben mich wirklich interessiert an der Programmierung fĂĽr FPGAs.
Anton Khantimirov:

Positive Eindrücke von der Schule, ich werde versuchen, so viel wie möglich für meine Arbeit zu übernehmen.
Solche Tauchgänge sind nützlich, um verschiedene nicht offensichtliche Aspekte der Entwicklung zu verstehen.
Vielen Dank an die Organisatoren.
Goreva Veronica:

Ich mochte alles, dank Ihres Teams für die geleistete Arbeit wäre es cool, solche Lehrer an unserem Institut zu haben.
P.S. APPLE - Angewandte Lehrpläne in der Weltraumforschung und intelligente Robotersysteme. Angewandte Trainingsprogramme in Weltraumforschung und intelligenten Robotersystemen. Dies ist ein internationales Projekt, dessen Aufgaben Folgendes umfassen:

  • Modernisierung bestehender Lehrpläne im Zielgebiet unter BerĂĽcksichtigung der Anforderungen des Bologna-Prozesses und auf der Grundlage bewährter Verfahren fĂĽhrender europäischer Universitäten;
  • Integration methodischer Entwicklungen europäischer Konsortialpartner in den Bildungsprozess;
  • Schaffung eines Trainingslabors fĂĽr Robotersysteme fĂĽr Weltraumanwendungen RoboLab;
  • Lehrerausbildung;
  • aktive Zusammenarbeit bei wissenschaftlichen und praktischen Aktivitäten im Zielbereich.

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


All Articles