Vom 24. bis 29. April findet in Kiew eine Reihe von Seminaren für Schulkinder statt, die nicht wie normale Klassen mit eingebauten Prozessoren aussehen, die Lego / Arduino / Rasberry Pye standardmäßig verwenden. Das Hauptaugenmerk der Seminare liegt nicht darauf, das Programmieren von Prozessoren zu lehren, sondern die Prinzipien des internen Aufbaus von Prozessoren aufzuzeigen. Es ist wie der Unterschied zwischen "Lehren, wie man ein Auto fährt" und "Lehren, wie man einen Motor konstruiert". Bei den Seminaren werden die Studenten die Verilog-Gerätebeschreibungssprache und die logische Synthese verwenden - Technologien, die von Entwicklern digitaler Chips bei Apple, Samsung und anderen Elektronikunternehmen verwendet werden.
Die offizielle Hauptseite des Seminars,
Anmeldung dort .
Für Übungen werden Karten mit FPGAs verwendet - Matrizen logischer Elemente mit variabler Funktion (dies ist kein gewöhnlicher „Prozessor + Speicher“). FPGAs werden seit langem verwendet, um Studenten das Entwerfen von Elektronik an Stanford und MIT sowie in jüngerer Zeit an russischen und ukrainischen Universitäten beizubringen. Die Verwendung von FPGAs zur Erziehung von Schulkindern ist ein Experiment, an dem Sie teilnehmen können. Um den Einstieg in Verilog und FPGAs zu erleichtern, werden wir zunächst Übungen mit Mikroschaltungen mit geringem Integrationsgrad auf lötfreien Prototyping-Boards durchführen. Dann werden wir uns mit FPGAs befassen und am letzten Tag der Seminare das FPGA-Design mit der Mikroprozessorprogrammierung für das Internet der Dinge vergleichen.
Sie werden endlich sehen, was zwischen dem Transistor und Arduino passiert, in dem Bereich, in dem Studenten selten hinschauen!

Programm für Schüler und JugendlicheMontag, 24. April. Wir beginnen den Weg zum FPGA: kombinatorische Logik und binäre Arithmetik auf Mikroschaltungen mit geringem IntegrationsgradOrt: Belka KPI Student Space
- 16: 00-17: 00 Alexander Barabanov, KNU. Von der Physik zur Logik.
- Was ist Strom, Spannung und Widerstand.
- Wie funktioniert das Steckbrett?
- Übung 1. Der erste Stromkreis mit Batterie, LED und Widerstand. Warum einen Widerstand an einen Stromkreis mit einer LED anschließen?
- Was sind Transistoren und wie werden logische Elemente daraus aufgebaut?
- Übung 2. Beobachtung des Betriebs des Transistors.
- 17: 00-18: 00 Yuri Panchul, Imagination Technologies. Boolesche Algebra von Logik, logischen Elementen UND-ODER-NICHT.
- Übung 3. Jeder Schüler erhält einen persönlichen Logikchip der CMOS 4000-Serie mit einer technischen Beschreibung des Herstellers mit der Aufgabe, eine Wahrheitstabelle zu zeichnen, seine Arbeit zu demonstrieren und die Funktion mündlich zu beschreiben. Logikelemente AND, OR, XOR, NOR, NAND mit einer anderen Anzahl von Eingängen.
- Übung 4. Wir untersuchen, was Pull-up-Widerstände sind und warum sie benötigt werden. Fügen Sie der Übung 3 Tasten und Pull-up-Widerstände hinzu.
- 18: 00-19: 00 Binäre Arithmetik, Addition und Multiplikation.
- Übung 5. Jeder Schüler erhält einen Addierer CMOS 4008. Demonstration des Addierers auf dem Steckbrett.
- 19: 00-21: 00 Zusätzliche Übungen für diejenigen, die mit den Übungen 1-5 fertig wurden und nicht nach Hause gehen möchten.
- Aufgabe 6. Ein Sieben-Segment-Indikator und sein Treiber als Beispiel für eine kombinatorische Schaltung. Schlussfolgerung des Ergebnisses des Addierers zum Sieben-Segment-Indikator.
Dienstag, 25. April. Speicher hinzufügen: Sequentielle Logik auf Mikroschaltungen mit geringem Integrationsgrad.- 16: 00-16: 30 Yuri Panchul. Sequentielle Logik macht einen Computer „intelligent“, gibt ihm Speicher und die Möglichkeit, Vorgänge zu wiederholen.
- 16: 30-17: 00 Yuri Panchul und Instruktoren im KPI.
- Was ist ein D-Trigger?
- Aufgabe 7. Wir schließen den Taktgenerator basierend auf dem 555-Timer im D-Flip-Flop an und untersuchen den Betrieb der kompilierten Schaltung.
- 17: 00-19: 00 Komplexere Elemente der sequentiellen Logik.
- Übung 8. Schieberegister und Moving Lights.
- Aufgabe 9. Zähler mit einer Schlussfolgerung eines Zustands auf dem Sieben-Segment-Indikator.
- 19: 00-21: 00 Eugene Korotky, KPI. Zusätzliche Übungen für diejenigen, die die Übungen 6-8 abgeschlossen haben und nicht nach Hause gehen möchten.
- Übung 10. Wir untersuchen den Taktgenerator basierend auf dem 555-Chip-Timer. Wir beobachten, wie sich die Periode der Taktfrequenz in Abhängigkeit von den Widerständen der Widerstände und der Kapazität des Kondensators ändert.
Mittwoch, 26. April. Kombinationslogik und binäre Arithmetik auf Verilog und FPGA.Ort: Studentenraum Belka KPI.
- 16: 00-16: 30 Yuri Panchul sowie Instruktoren des KPI, KNU. Schnelle Einführung in die Verilog-Hardwarebeschreibungssprache und die Verwendung der logischen Synthese für FPGAs / FPGAs. Wir betrachten nur kombinatorische Logik.
- 16: 30-17: 00 Instruktoren von KPI, KNU. Raman-Logik auf Verilog.
- Übung 11. Wiederholen Sie Übung 2 (logische Elemente) auf dem FPGA mit der Karte Digilent CMOD A7 35T: Breadboardable Artix-7 FPGA-Modul.
- Übung 12. Wir zeigen die ersten Buchstaben unseres Vor- und Nachnamens auf einem Sieben-Segment-Indikator an und wechseln mit der Taste zwischen ihnen.
- Übung 13. Wiederholen Sie Übung 3 (Addierer) auf dem FPGA. Das Ergebnis wird auf einem Sieben-Segment-Indikator angezeigt.
- 19: 00-21: 00. Zusätzliche Übungen für diejenigen, die die Übungen 9-11 gemeistert haben und nicht nach Hause gehen möchten.
- Übung 14. Die Hierarchie der Module. Aufbau von Multiplexern mit Submodulen.
- Übung 15. Modellieren von Verilog-Code ohne FPGA. Wir erstellen eine Umgebung zur Überprüfung des Betriebs der in Verilog beschriebenen Schaltung. Wir verwenden den Icarus Verilog-Simulator zum Modellieren und das GTKWave-Programm zum Anzeigen von Zeitdiagrammen.
Beispielcode in der Verilog-Hardwarebeschreibungssprache, der in eine Schaltung übersetzt (synthetisiert) wird:
module counter ( input clock, input reset_n, output reg [31:0] count ); always @(posedge clock or negedge reset_n) begin if (! reset_n) count <= 32'b0; else count <= count + 32'b1; end endmodule //---------------------------------------------------------------------------- module seven_segment_display_driver ( input [3:0] number, output reg [6:0] abcdefg ); // abcdefg dp // 7 6 4 2 1 9 10 5 7- // 7 6 5 4 3 2 1 pio // --a-- // | | // fb // | | // --g-- // | | // ec // | | // --d-- always @* case (number) 4'h0: abcdefg = 7'b1111110; 4'h1: abcdefg = 7'b0110000; 4'h2: abcdefg = 7'b1101101; 4'h3: abcdefg = 7'b1111001; 4'h4: abcdefg = 7'b0110011; 4'h5: abcdefg = 7'b1011011; 4'h6: abcdefg = 7'b1011111; 4'h7: abcdefg = 7'b1110000; 4'h8: abcdefg = 7'b1111111; 4'h9: abcdefg = 7'b1111011; 4'ha: abcdefg = 7'b1110111; 4'hb: abcdefg = 7'b0011111; 4'hc: abcdefg = 7'b1001110; 4'hd: abcdefg = 7'b0111101; 4'he: abcdefg = 7'b1001111; 4'hf: abcdefg = 7'b1000111; endcase endmodule //---------------------------------------------------------------------------- module top ( input CLK, // 12 MHz inout [48:1] pio // GPIO, General-Purpose Input/Output ); wire reset_n = ! pio [8]; wire [31:0] count; counter counter_i ( .clock ( CLK ), .reset_n ( reset_n ), .count ( count ) ); seven_segment_display_driver display_driver_i ( .number ( count [26:23] ), .abcdefg ( pio [ 7: 1] ) ); endmodule
Donnerstag, 27. April. Sequentielle Logik- und Zustandsautomaten auf Verilog und FPGA.Ort: Studentenraum Belka KPI.
- 16: 00-17: 00. Yuri Panchul. Sequentielle Logik auf Verilog, Zustandsautomaten, das Konzept der RTL-Methodik (Registerübertragungspegel), Signalausbreitungsverzögerungen und Einschränkungen bei der Synthese digitaler Schaltungen zur Bestimmung der maximal möglichen Taktfrequenz einer digitalen Schaltung.
- 17: 00-19: 00. Ausbilder von KPI, KNU. Sequentielle Logik auf Verilog.
- Übung 16. Zähler mit einer Schlussfolgerung eines Zustands auf dem Sieben-Segment-Indikator. Übung 9 auf dem FPGA implementieren.
- Übung 17. Schieberegister und Moving Lights. Übung 8 auf dem FPGA implementieren.
- Übung 18. Erzeugung von Tönen verschiedener Frequenzen und ihrer Überlagerungen.
- 19: 00-21: 00. Zusätzliche Übungen für diejenigen, die mit den Übungen 17-18 fertig wurden und daran arbeiten möchten.
- Übung 19. „Eine Schnecke lächelt“: Ein Beispiel für eine endliche Zustandsmaschine.
- Übung 20. Aufbau eines Rechenförderers. Wir verwenden den Icarus Verilog-Simulator, um sequentielle Schaltungen einzurichten.
Freitag, 28. April. Vergleich des Schaltungsdesigns mit der Programmierung eingebetteter Mikroprozessoren.Ort: Studentenraum Belka KPI.
- 16: 00-16: 30. Yuri Panchul. Wie sich die Programmierung von der Schaltung unterscheidet. Die von Neumann-Maschine ist ein Sonderfall elektronischer Schaltungen. Programme wie eine Anweisungskette für eine von Neumann-Maschine. Übersicht über den in MediaTek MT7688 und Microchip PIC32MZ verwendeten Mikroprozessorkern.
- 16: 30-19: 00 Eugene Korotky. Beispiel: LinkIt Smart 7688 Internet of Things-Plattform mit MediaTek MT7688.
- Übung 21. blinkt eine LED mit einem Python-Programm.
- Übung 22. Liest Daten vom Digilent PMOD ALS-Umgebungslichtsensor unter Verwendung des SPI-Protokolls.
- Übung 23. Einführung in das Konzept der Interrupts.
- 19: 00-21: 00. Zusätzliche Übungen für diejenigen, die die Übungen auf dem LinkIt Smart 7688 beherrschen und weiterarbeiten möchten. Beispiel: Mikrochip PIC32 Mikrocontroller.
- Übung 24. blinkt eine LED mit einem C-Programm.
- Übung 25. Liest Daten vom Digilent PMOD ALS-Lichtsensor unter Verwendung des SPI-Protokolls.
- Übung 26. Entladen des Hauptprogramms mit Interrupts. Unterbrechungen vom Timer lösen eine SPI-Transaktion aus, Unterbrechungen vom SPI signalisieren den Empfang eines Pakets.
Samstag, 29. April. HackathonOrt: Nationale Universität „Kyiv-Mohyla Academy“
- Projekte mit Mikroschaltungen mit geringem Integrationsgrad: „Bodenfeuchtedetektor“, „Polizeisirene“
- Projekte mit FPGAs: Schnittstellen für Sensoren, Zustandsautomaten vom Typ „Code Lock“
- Projekte mit Mikrocontrollern und eingebetteten Mikroprozessoren für das Internet der Dinge: Verbindung mit Sensoren und Aktoren
Programm für GrundschülerApril Intensiv "Einführung in die Elektronik"Montag, 24. April. Vertrautheit mit den Grundlagen: Ohmsches Gesetz, passive elektronische Elemente (Widerstände und Kondensatoren)
Veranstaltungsort: Büro von Radiomag Ukraine LLC, Chokolovsky Boulevard, 42-A
Zeit: 17: 00-19: 00 Uhr
Dozent: Sergey Chenash
- Was ist Strom, Spannung und Widerstand, Ohmsches Gesetz
- Wie ist das Steckbrett
- So arbeiten Sie mit einem Multimeter
- Widerstände und ihre Anwendung
- Kondensator als elektrischer Ladungsspeicher und seine Anwendung
Dienstag, 25. April. Aktive elektronische Komponenten: Struktur und Funktionsprinzipien von Dioden und Transistoren
Veranstaltungsort: Büro von Radiomag Ukraine LLC, Chokolovsky Boulevard, 42-A
Zeit: 17: 00-19: 00 Uhr
Dozent: Sergey Chenash
- Eigenschaften von Halbleitern, Struktur des pn-Übergangs
- Wie Dioden und ihre Klassifizierung funktionieren
- Funktionsprinzipien von Transistoren und deren Anwendung
Donnerstag, 27. April. Untersuchungen der Elemente der Optoelektronik: LEDs, Fotowiderstände, Fototransistoren, Optokoppler
Veranstaltungsort: Büro von Radiomag Ukraine LLC, Chokolovsky Boulevard, 42-A
Zeit: 17: 00-19: 00 Uhr
Dozent: Sergey Chenash
- Elemente der Optoelektronik, Funktions- und Anwendungsprinzipien
Freitag, 28. April. Vorstellung des NE555-Chips
Veranstaltungsort: Büro von Radiomag Ukraine LLC, Chokolovsky Boulevard, 42-A
Zeit: 17: 00-19: 00 Uhr
Dozent: Sergey Chenash
- Was sind Mikroschaltungen und ihre Klassifizierung
- Arten von Signalen in der Elektronik
- Vertrautheit mit dem NE555-Chip, wodurch ein Generator entsteht
- Arbeiten mit einem Oszilloskop
Samstag, 29. April. Bonus Löten
Veranstaltungsort: Büro von Radiomag Ukraine LLC, Chokolovsky Boulevard, 42-A
Zeit: 11: 00-12: 30 Uhr

Wir sehen uns auf den Seminaren!
- Offenes Labor für Elektronik Lampa und Studentenraum Belka, Nationale Technische Universität der Ukraine "Kiewer Polytechnisches Institut nach Igor Sikorsky benannt"
- Kyiv National Taras Shevchenko University
- Nationale Universität "Kyiv-Mohyla Academy"
- Kleine Akademie der Wissenschaften der Ukraine
- LLC "Radiomag der Ukraine"
- Imaginationstechnologien
Die offizielle Hauptseite des Seminars,
Anmeldung dort .