- PVSM.RU - https://www.pvsm.ru -

Детей недостаточно учить только питону и ардуине

Детей недостаточно учить только питону и ардуине. Нужно еще и цифровой схемотехнике, причем не на симуляторе, так как он для ребенка неубедителен, а на микросхемах малой степени интеграции, лучше которых для иллюстрации функции D-триггера никто с 1968 года ничего не придумал.

Но учить канонично по книжкам 1970-х [1] не обязательно. Например, ну зачем ребенку руками собирать генератор тактового сигнала на микросхеме 555, если его теорию он все равно не поймет, а для понимания функции D-триггера понимание работы генератора нерелевантно? Генератор на 555 можно купить уже собранным на AliExpress.

Также можно заменить батарейку на 9 вольт на питание от USB на 5 вольт; поставить толерантные к 5 вольтам светодиоды, не требующие дополнительных резисторов и поставить кнопочки, не требующие подтягивающих резисторов. В результате все сведется к самой сути - логическим элементам и D-триггерам, откуда уже можно переходить на ПЛИС / FPGA. Вот сравните схему сдвигового регистра. Что вы по этому поводу думаете?

Было:

Детей недостаточно учить только питону и ардуине - 1

Стало:

Детей недостаточно учить только питону и ардуине - 2

Таким макаром можно учить не только:

  1. логическим элементам И, ИЛИ, НЕ

  2. D-триггеру

  3. сдвиговому регистру

  4. счетчику

  5. драйверу 7-сегментного индикатора

но еще и:

  1. мультиплексорам разной ширины с разным количеством каналов: 8, 4, 2

  2. декодерам

  3. приоритетным энкодерам

  4. сумматорам на основе cmos 4008

  5. компараторам

  6. побитовым сумматорам

  7. итд

Интересно что я использую на интервью задачку написать на верилоге побитовый сумматор с переносом с valid и ready [2], и куча студентов американских вузом пишут их с ошибками (это после того как их родители потратили на их обучение сотни тысяч долларов - вообще сумасшедший дом).

Ну короче подготовленных таким образом детей можно переводить на платы ПЛИС, например вот такую, которую я недавно описал [3] и обсудил ее с товарищами из Бразилии, Швейцарии и КНР [4]:

Детей недостаточно учить только питону и ардуине - 3

UPD: Спросили чем недостаточно Ардуино. Поясняю:

Никакое количество програмирования Ардуино не научит, как спроектировать сам чип Ардуино, примерно как курсы по вождению автомобиля не научат, как конструировать его двигатель.

Микроконтроллер, в том числе в Ардуино - это частный случай того, что можно сделать в хардвере. Микроконтроллер - это просто схема которая вынимает из памяти поток команд, переваривает их, меняет свое состояние и сигналы к внешним устройствам.

Вот как я обычно показываю разницу между програмированием микроконтроллера и дизайном на языке описания аппаратуры:

Детей недостаточно учить только питону и ардуине - 4
Детей недостаточно учить только питону и ардуине - 5
Детей недостаточно учить только питону и ардуине - 6

Автор: Юрий Панчул / Yuri Panchul

Источник [5]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/verilog/392462

Ссылки в тексте:

[1] канонично по книжкам 1970-х: https://www.dropbox.com/scl/fi/gndykza5nhfn9kuedxyta/TronixBook2.pdf?rlkey=hppondttbkvgs6qjlkf8w5lg0&st=fccriice&dl=0

[2] задачку написать на верилоге побитовый сумматор с переносом с valid и ready: https://github.com/yuri-panchul/systemverilog-homework/blob/main/02_sequential_basics/02_04_serial_adder_with_vld.sv

[3] недавно описал: https://verilog-meetup.com/2024/06/21/a-new-platform-for-fpga-seminars-based-on-gowin-tang-nano-9k-adding-sound-graphics-and-microarchitecture-labs/

[4] обсудил ее с товарищами из Бразилии, Швейцарии и КНР: https://verilog-meetup.com/2024/06/26/can-gowin-beat-xilinx-and-altera-in-the-educational-market/

[5] Источник: https://habr.com/ru/articles/825564/?utm_source=habrahabr&utm_medium=rss&utm_campaign=825564