Сонары, роботы и чем флейта лучше гитары
Несколько лет назад мне довелось посетить университет Харви-Мадд, в котором работали Дэвид Харрис и Сара Харрис, авторы известного учебника «Цифровая схемотехника и архитектура компьютера». Cлучайно зашел в комнату, в которой сидела группа студентов и лежало нечто, напоминающее торпеду. Выяснилось, что это подводный робот, а студенты работают над общением этого робота с рыбами с помощью сонара (так я перевел для себя «IVER AUV for Sonar Mapping and Fish-Robot Interaction Modeling Projects»), и даже получили пару грантов на полмиллиона долларов.
Но чтобы студенты могли сделать что-нибудь полезное в обработке сигнала от сонара, им нужно знать кучу математики из области, которая в Америке называется DSP, а в России — ЦОС, или Цифровая Обработка Сигналов. Потом, в своих поездках по России я выяснил, что российские студенты в ЦОС тоже не лыком шиты. Оказалось, что студентов давно учат ЦОС в МЭИ, МИРЭА, МИЭТ и других вузах, которые сейчас участвуют в Школе Синтеза Цифровых Схем.
Любого, кто пытается найти информацию в интернете по словам «ЦОС для чайников», тут же отпугивает смесь из интегралов, комплексных чисел и тригонометрии.
А когда это все смешивается с проектированием железа на ПЛИС, замес получается совсем крутой — нужно не только понять всю эту математику, но еще и обсчитывать ее, конструируя нестандартные вычислительные устройства, которые принимают поток данных быстрее, чем это может делать микропроцессор:
Причем данные в ЦОС приходят не только от сонара, но и от радара, да и просто звук от микрофона и видео из камеры. Для всех этих видов данных тоже уместно делать быстрые преобразования Фурье, чтобы представить их как комбинацию из гармоник.
Объяснять ЦОС на Школе Синтеза Цифровых Схем собираются только после Нового Года, но первое упоминание цифровых фильтров появилось уже в прошлую субботу, на занятии по конвейерам обработки данных на уровне регистровых передач. Занятие вел преподаватель зеленоградского университета МИЭТ Евгений Примаков:
До введения ЦОС полезно познакомится с обработкой звука более рабоче-крестьянскими методами, например мерять частоты, определяя аппаратными счетчиками количество тактов между переходами уровня с микрофона определенного порога. Так мы уже делали в предыдущих сезонах Школы Синтеза, с преподавателем флейты из Омска Марией Беличенко. Вот на фотографии Мария обучает выпускника МФТИ Виталия Павленко играть на блокфлейте, чтобы тот мог тестировать распознавание мелодий аппаратным блоком. Это происходило на семинаре LaLambda в Грузии прошлым летом:
Да, распознавание мелодий, а не только нот. Это делается с помощью конечных автоматов, реализуемых без участия процессора, с помощью синтеза аппаратной схемы из кода на языке описания аппаратуры SystemVerilog.
Почему именно флейта, а не скажем гитара? Согласно преподавателю МИРЭА Семену Москаленко, одного из ведущих на Школе Синтеза, звук флейты менее «лохматый», чем звук гитары, и при этом он не такая холодная синусоида, как звук из синтезатора в телефоне:
То есть какую-то фильтрацию все-таки делать нужно, хоть и не такую сложную как с ЦОС. Для этого студенты уже на следущем занятии 11 ноября получат платформу для экспериментов, которая состоит из платы ПЛИС (Школа поддерживает много плат от Intel FPGA, Xilinx, GoWin и Lattice), микрофонов, а также усилителей для генерации звука.
Нововведением Школы этого сезона является то, что играть на флейте будет не только Мария Беличенко. Так как она одна, а университетов, участвующих в Школе — уже двадцать (недавно присоединился МФТИ). Поэтому Мария проведет 7 ноября в 17:00 по московскому времени мастер-класс по извлечению звука с помощью блок-флейт для участников Школы, которые в свою очередь будут играть во время занятия 11 ноября другим участникам. Ссылка на мастер-класс будет разослана и помещена в телеграм-канал для зарегистрировавшихся на Школе.
В отличие от поперечной флейты Бёма, профессиональная версия которой может стоить миллион рублей, а студенческая сто тысяч, блокфлейта стоит на три порядка дешевле — тысячу рублей плюс-минус. При этом блокфлейта не игрушка, это настоящий инструмент, для которого написаны концерты и сюиты. Мария рекомендует блокфлейту Yamaha YRS-23 Soprano Recorder, German Fingering, хотя и другие блокфлейты должны работать. Впрочем, вы можете начать с блокфлейты, а потом перейти на флейту Бёма. Вот ваш покорный слуга исполняет песню «Лунная река» с Марией дуэтом:
Короче, присоединяйтесь, сначала 7 ноября на мастер-класс по блокфлейте для ПЛИС, потом 11 ноября к классу по ПЛИС для блокфлейты, потом 18 ноября к классу по генерации звука на ПЛИС (плата может начать подпевать блокфлейте), а потом в следущем году к занятиям по Цифровой Обработке Сигналов — ЦОС.