Cómo pasamos la Escuela de Invierno "Sistemas Embebidos Digitales" en Krasnoyarsk

imagen

Del 7 al 9 de noviembre, se llevó a cabo la Primera Escuela de Invierno "Sistemas Embebidos Digitales" en el Instituto de Tecnologías Espaciales y de Información de la Universidad Federal de Siberia. Los participantes de la escuela eran estudiantes y estudiantes graduados de la Universidad Federal de Siberia.

Mi nombre es Alina, y trabajo duro, desarrollando los sistemas integrados de control de misión crítica para la tecnología espacial. También soy un estudiante graduado del Departamento de Ingeniería Informática de la Universidad Federal de Siberia. Me encanta aprender cosas nuevas, por lo tanto, habiendo aprendido que una escuela sobre los fundamentos de los circuitos digitales, la arquitectura y el uso de Verilog se llevará a cabo en Novosibirsk del 2 al 5 de octubre, me inscribí de inmediato allí. Dos colegas me acompañaron: Boris Dudkin y Dmitry Vlasov, que incluso era asistente en la escuela. El programa fue interesante y rico, me gustó tanto la escuela que al final le hice una pregunta a nuestro maestro Stanislav Zhelnio ( SparF ): ¿cómo dirigir una escuela similar en Krasnoyarsk? Stanislav respondió sin dudar que nosotros mismos podríamos organizarlo y llevarlo a cabo.

Durante la organización de la escuela, nos dimos cuenta de que para la Universidad Federal de Siberia y la empresa donde trabajamos, estas actividades conjuntas, aunque es una tarea nueva pero no difícil. La escuela tiene un nombre de "Krasnoyarsk": la primera escuela regional de invierno "Digital Embedded Systems".

Día 1


El día de la inauguración, se me presentó la oportunidad de transmitir. Aquí es de lo que hablé primero:

• Idioma para la descripción del hardware y por qué es necesario
• ¿Qué es FPGA?
• Conceptos básicos de la lógica combinacional.
• Elementos lógicos básicos y su descripción en Verilog.
• Entorno de prueba (Testbench)
• Verificación del funcionamiento del circuito combinacional utilizando un simulador (Modelsim)
• Diseño del circuito de síntesis, Intel Quartus GUI
• ¿Para qué se sintetiza el esquema de combinación cuando se implementa en FPGA?
• Programando un tablero de depuración
• Verificación del proyecto en el tablero de depuración
• Fundamentos de Makefile y trabajo en modo no proyecto
• Multiplexor y métodos para su descripción en Verilog HDL
• Demultiplexor y métodos para su descripción en Verilog HDL
• Estudio de caso: trabajar con indicadores de 7 segmentos.
• Compilación condicional en Verilog HDL

imagen

Absolutamente diferentes estudiantes participaron en el trabajo de la escuela, había estudiantes de pregrado y estudiantes de pregrado y posgrado. Por lo tanto, se prestó especial atención a lo básico. Al principio, los oyentes comentaron el material enviado con las palabras "lo hicimos durante 3 semestres", "todo es simple aquí", "podemos hacer un cuarto" y como "nadamos, lo sabemos", pero después de recibir la primera tarea práctica los chicos se involucraron y desde entonces comenzaron los comentarios y preguntas en el caso

Día 2


El segundo día, el narrador fue Boris Dudkin, un ingeniero de software que escribe proyectos reales para FPGA y ASIC. Esto es de lo que habló:

• Circuitos combinados y tiempo de propagación de la señal.
• Reloj y circuitos en serie.
• Varios tipos de tareas en Verilog HDL
• D-trigger y su implementación en Verilog en varias variaciones: restablecimientos asíncronos y síncronos, puerto de permiso de escritura
• ¿Para qué se sintetiza el circuito secuencial cuando se implementa en base a FPGA?
• Registrarse y su implementación
• Counter y su implementación
• Disciplina dinámica y estática.
• Metaestabilidad y sincronizador
• Pestillo no deseado, consecuencias y formas de evitar
• Máquinas de estados finitos (Mura y Miles)
• Presentación de la máquina en forma de diagramas de transición.
• Implementación de la máquina en Verilog HDL
• Enfoque general para el diseño de autómatas complejos.
• Implementación paso a paso del módulo de interfaz del sensor de distancia ultrasónico en Verilog

imagen

También el día 2 emitimos una tarea para trabajo independiente:

  • Implementación del módulo de interfaz de teclado 4x4 para FPGA
  • Implementación de calculadora FPGA

Aquí ya se podía escuchar cómo crujían los cerebros de los chicos. Hubo preguntas, hubo alegría a los ojos de los primeros resultados, hubo exclamaciones molestas de que el circuito no funcionó como debería.

Día 3


Al tercer día, toda la diversión comenzó, en mi opinión. Este día fue impartido por Dmitry Vlasov, un ingeniero que se graduó de una universidad solo en 2018. Dmitry ya participó en 3 escuelas similares. La primera vez (en Tomsk) participó, la segunda (en Novosibirsk) ayudó, y ahora en Krasnoyarsk Dmitry habló sobre la implementación del procesador schoolMIPS. El día 3 tuvimos:

• Conceptos básicos de la canalización.
• Arquitectura y microarquitectura.
• Fundamentos de los programas de escritura en ensamblador MIPS
• Trabajar con el simulador MARS (MIPS)
• Diseño del procesador de ciclo único más simple en el ejemplo de schoolMIPS
• Ruta de datos y dispositivo de control
• Compilar el programa, iniciando el procesador en el simulador y en la placa de depuración
• Trabajo independiente. Agregar soporte para nuevas instrucciones al procesador

imagen

Materiales


  • Todos los materiales del curso (diapositivas, guiones, fuentes, literatura) están disponibles en línea ( github , materiales adicionales ). Las diapositivas están diseñadas en un estilo dudoso, cuando hay mucho texto en ellas, con la esperanza de que esto haga que sea más fácil familiarizarse con los materiales fuera de línea.
  • Se realizaron tareas prácticas e independientes en las placas base Terasic DE10-Lite con Intel MAX10 FPGA a bordo.
  • El libro "Circuitos digitales y arquitectura informática", que está disponible de forma gratuita en formato electrónico ( enlace ), o se puede comprar en papel ( enlace ). Es fácil de leer, se lleva como ficción. Tiene un umbral de entrada bajo: no se necesitan conocimientos especiales para comenzar a leerlo. Recientemente, se ha lanzado una adición en la arquitectura ARM ( enlace ); Hay ejemplos de código disponibles para el libro, así como diapositivas (versiones en inglés y ruso) que puede usar para crear su propio curso ( enlace ).

Agradecimientos


  • Gracias a Stanislav Zhelnio ( SparF ) y Yuri Panchul ( YuriPanchul ), quienes apoyaron nuestros intentos, nos ayudaron con consejos, enviaron juntas de depuración y, en general, nos animaron en todas las formas posibles de llevar a cabo este evento.
  • Por separado, quiero señalar los sistemas de información satelital de la empresa que llevan el nombre del académico M.F. Reshetnyova. Mis colegas y yo estamos trabajando allí y las más altas autoridades de la organización, así como nuestro liderazgo directo, nos apoyaron en nuestro esfuerzo y nos ayudaron de todas las formas posibles.
  • El organizador del evento de la Universidad Federal de Siberia es Oleg Vladimirovich Nepomnyashchy, quien, siendo el jefe del departamento que nos hospeda, estableció momentos burocráticos en la universidad. Además, las clases se llevaron a cabo en el laboratorio RoboLab, que se implementó como parte del proyecto APPLE, en el que Oleg Vladimirovich es el coordinador. Sirotinina Natalya Yuryevna, profesora asistente, directora de NUL "Microprocessor Systems", contratista del proyecto APPLE, también nos ayudó mucho con la escuela. Y Anton Khantimirov, Asistente, NUL "Sistemas de microprocesador", Ejecutor del proyecto APPLE.
  • ¡Muchas gracias a mis colegas Dmitry Vlasov y Boris Dudkin por aceptar ayudarme y viajar todos los días desde Zheleznogorsk a Krasnoyarsk y viceversa!
  • Bueno, gracias a los estudiantes también! Nos agradaste y fuimos ingeniosos y divertidos. Ven a trabajar a nosotros cuando te gradúes.

Revisiones escolares


Alexander Kalashnikov:

Durante estos tres días, se realizó una breve excursión al mundo de FPGA. La complejidad creció cada vez más, pero surgió un deleite verdaderamente infantil cuando todo salió bien. La imagen del mundo se reconstruye cuando aprende sobre procesos paralelos que ocurren en FPGA. "Tocando" la microarquitectura, incluso logré agregar mi propio equipo, luego mi primer código de ensamblador ... Esta escuela fue una gran oportunidad para hacer nuevos conocidos, ganar experiencia en la comunicación con personas realmente interesantes que pudieron encender una chispa. Espero que no se desvanezca y se convierta en un incendio. Gracias
Svetlana Leshchenko:

Muchas gracias por una experiencia tan interesante y enorme. De hecho, fue interesante escuchar exactamente los comentarios y la experiencia de los trabajadores de producción, porque nuestros maestros son en su mayoría teóricos. Es por eso que nunca hemos usado, por ejemplo, Visual Code, que resultó ser muy conveniente.

Como revisión, solo puedo decir que en esta escuela aprendí mucho y espero continuar con mis estudios. Sus clases realmente me dieron interés en la programación para FPGA.
Anton Khantimirov:

Impresiones positivas de la escuela, trataré de adoptar lo más posible para mi trabajo.
Tales inmersiones son útiles para comprender varios aspectos no evidentes del desarrollo.
Muchas gracias a los organizadores.
Goreva Veronica:

Me gustó todo, gracias a su equipo por el trabajo realizado, sería genial tener esos maestros en nuestro instituto.
P.S. APPLE - Currículos aplicados en exploración espacial y sistemas robóticos inteligentes. Programas de capacitación aplicados en exploración espacial y sistemas robóticos inteligentes. Este es un proyecto internacional cuyas tareas incluyen:

  • modernización de los planes de estudio existentes en el área objetivo, teniendo en cuenta los requisitos del proceso de Bolonia y en función de las mejores prácticas de las principales universidades europeas;
  • integración en el proceso educativo de desarrollos metodológicos de socios del consorcio europeo;
  • creación de un laboratorio de formación para sistemas robóticos espaciales inteligentes RoboLab;
  • formación del profesorado;
  • cooperación activa en actividades científicas y prácticas en el campo aplicado objetivo.

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


All Articles