Alias-Free Oscillator Synchronization via Additive Synthesis
Жёсткая синхронизация осцилляторов даёт выразительный тембр, но обычный разрыв фазы порождает широкополосные составляющие и наложение спектра. Авторы заменяют разрыв пересчётом спектра периодической волны и последующим аддитивным синтезом, причём доводят идею до микросхемы HASY на 512 гармоник.
Метод. Исходная периодическая форма задаётся коэффициентами ряда Фурье. При изменении отношения частот движок спектрального передискретизирования строит коэффициенты синхронизированной формы, после чего банк комплексных осцилляторов суммирует гармоники. Один и тот же тракт поддерживает жёсткую, зеркальную и импульсную синхронизацию; 32 параллельных вычислительных столбца обрабатывают до 512 коэффициентов.
Результаты. Микросхема в техпроцессе TSMC 65 нм занимает 6 мм² и работает с 24-разрядным звуком 96 кГц. Один спектральный пересчёт занимает 8240 тактов, около 42 мкс при 196,6 МГц; новые параметры можно получать каждые пять звуковых отсчётов, то есть с частотой 19,2 кГц. Максимальная измеренная частота составляет 250 МГц, потребление при 200 МГц — 242 мВт. Для отношения частот P>1 фиксированная арифметика сохраняет SINAD выше 41 дБ.
Ограничения. Изготовленная версия содержит ошибки в управлении и конфигурации, поэтому проверены лишь исправно работающие режимы, а полная переработка ещё продолжается. 97% площади ячеек занимает спектральный пересчёт, реализован только один голос, а при P<1 SINAD падает из-за ограничения входного спектра 512 коэффициентами. Очень быстрая модуляция между пересчётами всё ещё может создавать побочные составляющие.
Фишка из статьи. Аппаратное сравнение показывает цену универсального спектрального пересчёта: HASY быстрее прежнего BFO, но крупнее, прожорливее и пока синтезирует вдвое меньше гармоник и голосов.
| Микросхема | Площадь | Мощность | Голоса | Гармоники | Макс. частота |
|---|---|---|---|---|---|
| HASY | 6 мм² | 242 мВт | 1 | 512 | 250 МГц |
| BFO | 3 мм² | 178 мВт | 2 | 1024 | 154 МГц |
Как это читать: результат интересен не как безусловная победа над предшественником, а как доказательство работы общего алгоритма в реальном времени. Главный инженерный вопрос теперь — уменьшить дорогой блок пересчёта и устранить ошибки управления, сохранив частоту обновления.