Aux systèmes sur puce via FPGA: semaine de microélectronique numérique à Kiev - 24-29 avril 2017


Du 24 au 29 avril, une série de séminaires pour les écoliers se tiendra à Kiev, qui ne ressemblera pas à des classes ordinaires avec des processeurs intégrés que Lego / Arduino / Rasberry Pye utilisent en standard. L'objectif principal des séminaires n'est pas d'enseigner comment programmer les processeurs, mais de montrer les principes de conception des processeurs à l'intérieur. C’est comme la différence entre «apprendre à conduire une voiture» et «apprendre à concevoir un moteur». Au cours des séminaires, les étudiants utiliseront le langage de description des appareils Verilog et la synthèse logique - technologies utilisées par les développeurs de puces numériques d'Apple, de Samsung et d'autres sociétés d'électronique.

La page officielle principale du séminaire, vous y inscrire .

Pour les exercices, des cartes avec FPGA sont utilisées - des matrices d'éléments logiques avec une fonction variable (ce n'est pas un «processeur + mémoire» ordinaire). Les FPGA sont utilisés depuis longtemps pour enseigner aux étudiants comment concevoir de l'électronique à Stanford et au MIT, et plus récemment dans les universités russes et ukrainiennes. L'utilisation des FPGA pour éduquer les écoliers est une expérience à laquelle vous avez la possibilité de participer. Pour faciliter l'entrée dans Verilog et FPGA, nous allons d'abord nous engager dans des exercices avec des microcircuits avec un faible degré d'intégration sur des cartes de prototypage sans soudure. Ensuite, nous traiterons des FPGA et le dernier jour des séminaires, nous comparerons la conception des FPGA avec la programmation par microprocesseur pour l'Internet des objets.

Vous verrez enfin ce qui se passe entre le transistor et l'Arduino, dans la zone où les élèves regardent rarement!





Programme pour lycéens et juniors



Lundi 24 avril. Nous ouvrons la voie au FPGA: logique combinatoire et arithmétique binaire sur des microcircuits de faible degré d'intégration
Lieu: Espace étudiant Belka KPI

  • 16: 00-17: 00 Alexander Barabanov, KNU. De la physique à la logique.

    • Qu'est-ce que le courant, la tension et la résistance.
    • Comment fonctionne la planche à pain?
    • Exercice 1. Le premier circuit avec une batterie, une LED et une résistance. Pourquoi connecter une résistance à un circuit avec une LED.
    • Quels sont les transistors et comment les éléments logiques sont construits à partir d'eux.
    • Exercice 2. Observer le fonctionnement du transistor.

  • 17: 00-18: 00 Yuri Panchul, Imagination Technologies. Algèbre booléenne de logique, éléments logiques ET-OU-NON.

    • Exercice 3. Chaque élève reçoit une puce logique personnelle de la série CMOS 4000, avec une description technique du fabricant, avec la tâche de dessiner une table de vérité, de démontrer son travail et de décrire verbalement la fonction. Éléments logiques AND, OR, XOR, NOR, NAND avec un nombre différent d'entrées.
    • Exercice 4. Nous étudions ce que sont les résistances de rappel et pourquoi elles sont nécessaires. Ajoutez 3 boutons et résistances de traction à l'exercice.

  • 18: 00-19: 00 Arithmétique binaire, addition et multiplication.

    • Exercice 5. Chaque étudiant reçoit un additionneur CMOS 4008. Démonstration de l'additionneur sur la planche à pain.

  • 19: 00-21: 00 Exercices supplémentaires pour ceux qui ont fait face aux exercices 1-5 et ne veulent pas rentrer chez eux.

    • Exercice 6. Un indicateur à sept segments et son pilote, comme exemple de circuit combinatoire. Conclusion du résultat de l'additionneur sur l'indicateur à sept segments.




Mardi 25 avril. Ajouter de la mémoire: logique séquentielle sur les microcircuits avec un faible degré d'intégration.

  • 16: 00-16: 30 Yuri Panchul. La logique séquentielle est ce qui rend un ordinateur «intelligent», il lui donne de la mémoire et la possibilité de répéter les opérations.
  • 16: 30-17: 00 Yuri Panchul et instructeurs en KPI.

    • Qu'est-ce qu'un déclencheur D.
    • Exercice 7. Nous connectons le générateur d'horloge basé sur le temporisateur 555 dans la bascule D et examinons le fonctionnement du circuit compilé.

  • 17: 00-19: 00 Éléments plus complexes de la logique séquentielle.

    • Exercice 8. Registre à décalage et lumières mobiles.
    • Exercice 9. Contrer avec une conclusion d'un état sur l'indicateur à sept segments.

  • 19: 00-21: 00 Eugene Korotky, KPI. Exercices supplémentaires pour ceux qui ont terminé les exercices 6-8 et ne veulent pas rentrer chez eux.

    • Exercice 10. Nous examinons le générateur d'horloge basé sur la minuterie à puce 555. On observe comment la période de la fréquence d'horloge varie en fonction des résistances des résistances et de la capacité du condensateur.




Mercredi 26 avril. Logique combinatoire et arithmétique binaire sur Verilog et FPGA.
Lieu: Espace étudiant Belka KPI.

  • 16: 00-16: 30 Yuri Panchul, ainsi que des instructeurs du KPI, KNU. Introduction rapide au langage de description matérielle Verilog et à l'utilisation de la synthèse logique pour les FPGA / FPGA. Nous considérons uniquement la logique combinatoire.
  • 16: 30-17: 00 Instructeurs de KPI, KNU. Logique Raman sur Verilog.

    • Exercice 11. Répétez l'exercice 2 (éléments logiques) sur le FPGA à l'aide de la carte Digilent CMOD A7 35T: Module FPGA Artix-7 à découper.
    • Exercice 12. Nous affichons les premières lettres de notre nom et de notre prénom sur un indicateur à sept segments, en basculant entre elles à l'aide du bouton.
    • Exercice 13. Répétez l'exercice 3 (additionneur) sur le FPGA. Le résultat est affiché sur un indicateur à sept segments.

  • 19: 00-21: 00. Exercices supplémentaires pour ceux qui maîtrisent les exercices 9-11 et ne veulent pas rentrer chez eux.

    • Exercice 14. La hiérarchie des modules. Construction de multiplexeurs avec sous-modules.
    • Exercice 15. Modélisation du code Verilog sans FPGA. Nous créons un environnement pour vérifier le fonctionnement du circuit décrit dans Verilog. Nous utilisons le simulateur Icarus Verilog pour la modélisation et le programme GTKWave pour visualiser les diagrammes de temps.

Exemple de code dans le langage de description du matériel Verilog, qui est traduit (synthétisé) dans un circuit:

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 

Jeudi 27 avril. Logique séquentielle et machines à états sur Verilog et FPGA.
Lieu: Espace étudiant Belka KPI.

  • 16: 00-17: 00. Yuri Panchul. Logique séquentielle sur Verilog, machines à états, concept de méthodologie RTL (niveau de transmission des registres), retards de propagation du signal et restrictions sur la synthèse des circuits numériques, détermination de la fréquence d'horloge maximale possible d'un circuit numérique.
  • 17: 00-19: 00. Instructeurs de KPI, KNU. Logique séquentielle sur Verilog.

    • Exercice 16. Contrer avec une conclusion d'un état sur l'indicateur à sept segments. Implémentation de l'exercice 9 sur le FPGA.
    • Exercice 17. Registre à décalage et lumières mobiles. Implémentation de l'exercice 8 sur le FPGA.
    • Exercice 18. Génération de sons de différentes fréquences et leurs superpositions.

  • 19: 00-21: 00. Exercices supplémentaires pour ceux qui ont fait face aux exercices 17-18 et qui souhaitent travailler.

    • Exercice 19. «Un escargot sourit»: un exemple de machine à états finis.
    • Exercice 20. Construire un convoyeur arithmétique. Nous utilisons le simulateur Icarus Verilog pour configurer des circuits séquentiels.




Vendredi 28 avril. Comparaison de la conception des circuits avec la programmation intégrée des microprocesseurs.
Lieu: Espace étudiant Belka KPI.

  • 16: 00-16: 30. Yuri Panchul. En quoi la programmation diffère des circuits. La machine von Neumann est un cas particulier des circuits électroniques. Des programmes comme une chaîne d'instructions pour une machine von Neumann. Présentation du cœur de microprocesseur utilisé dans MediaTek MT7688 et Microchip PIC32MZ.
  • 16: 30-19: 00 Eugene Korotky. Exemple: plateforme Internet des objets LinkIt Smart 7688 optimisée par MediaTek MT7688.

    • L'exercice 21. fait clignoter une LED à l'aide d'un programme Python.
    • Exercice 22. Lit les données du capteur de lumière ambiante Digilent PMOD ALS à l'aide du protocole SPI.
    • Exercice 23. Introduction au concept d'interruptions.

  • 19: 00-21: 00. Exercices supplémentaires pour ceux qui ont maîtrisé les exercices sur le LinkIt Smart 7688 et qui souhaitent continuer à travailler. Exemple: microcontrôleur Microchip PIC32.

    • L'exercice 24. fait clignoter une LED à l'aide d'un programme C.
    • Exercice 25. Lit les données du capteur de lumière Digilent PMOD ALS à l'aide du protocole SPI.
    • Exercice 26. Déchargement du programme principal à l'aide d'interruptions. Les interruptions du temporisateur déclenchent une transaction SPI; les interruptions du SPI signalent la réception d'un paquet.



Samedi 29 avril. Hackathon
Lieu: Université nationale «Kyiv-Mohyla Academy»

  • Projets avec microcircuits à faible degré d'intégration: «Détecteur d'humidité du sol», «Sirène de police»
  • Projets avec FPGA: interfaces pour capteurs, machines à états de type «code lock»
  • Projets avec microcontrôleurs et microprocesseurs embarqués pour l'Internet des objets: connexion avec capteurs et actionneurs



Programme pour les élèves du primaire

Avril "Introduction à l'électronique" intensive
Lundi 24 avril. Familiarité avec les bases: loi d'Ohm, éléments électroniques passifs (résistances et condensateurs)
Lieu: Bureau de Radiomag Ukraine LLC, boulevard Chokolovsky, 42-A
Heure: 17: 00-19: 00
Conférencier: Sergey Chenash

  • Qu'est-ce que le courant, la tension et la résistance, la loi d'Ohm
  • Comment est la planche à pain
  • Comment travailler avec un multimètre
  • Résistances et leur application
  • Condensateur en tant que dispositif de stockage de charges électriques et son application

Mardi 25 avril. Composants électroniques actifs: structure et principes de fonctionnement des diodes et transistors
Lieu: Bureau de Radiomag Ukraine LLC, boulevard Chokolovsky, 42-A
Heure: 17: 00-19: 00
Conférencier: Sergey Chenash

  • Caractéristiques des semi-conducteurs, structure de la jonction pn
  • Fonctionnement des diodes et de leur classification
  • Principes de fonctionnement des transistors et leur application

Jeudi 27 avril. Etudes des éléments de l'optoélectronique: LED, photorésistances, phototransistors, optocoupleurs
Lieu: Bureau de Radiomag Ukraine LLC, boulevard Chokolovsky, 42-A
Heure: 17: 00-19: 00
Conférencier: Sergey Chenash

  • Éléments d'optoélectronique, principes de fonctionnement et d'application

Vendredi 28 avril. Présentation de la puce NE555
Lieu: Bureau de Radiomag Ukraine LLC, boulevard Chokolovsky, 42-A
Heure: 17: 00-19: 00
Conférencier: Sergey Chenash

  • Que sont les microcircuits et leur classification
  • Types de signaux dans l'électronique
  • Familiarité avec la puce NE555, création d'un générateur
  • Travailler avec un oscilloscope

Samedi 29 avril. Soudure bonus
Lieu: Bureau de Radiomag Ukraine LLC, boulevard Chokolovsky, 42-A
Heure: 11: 00-12: 30



Rendez-vous aux séminaires!

  • Laboratoire ouvert d'électronique Lampa et espace étudiant Belka, Université technique nationale d'Ukraine "Institut polytechnique de Kiev du nom d'Igor Sikorsky"
  • Université nationale Taras Shevchenko de Kiev
  • Université nationale "Kyiv-Mohyla Academy"
  • Petite Académie des Sciences d'Ukraine
  • LLC "Radiomag d'Ukraine"
  • Technologies d'imagination

La page officielle principale du séminaire, vous y inscrire .

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


All Articles