УДК 681.8 : 681.3
А. И. Кузнецов, H. H. Михайлова
системотехника компьютерных
музыкальных синтезаторов
История возникновения
и возможности электронных
музыкальных синтезаторов
Быстрое развитие электроники в на-
ши дни приводит к появлению прин-
ципиально новых средств синтеза в
обработки звуковых сигналов. Исто-
рически первым электронным музы-
кальным инструментом следует, по-
видимому, считать терменвокс, соз-
данный Л. С, Терменом в 1920 году
в Ленинградском физико-техническом
институте [1]. Терменвокс представ-
лял собой генератор, частота которо-
го зависела от емкости конденсатора,
образованного руками исполнителя и
специальной сферической поверхно-
стью. Хотя терменвокс успешно ис-
пользовался при исполнении музы-
кальных произведений, он не полу-
чил распространения.
Начало широкого применения элек-
троники для синтеза музыкальных зву-
ков может быть датировано 1934 го-
дом [2], когда Лоуренс Хаммонд по-
лучил патент на электрический орган,
представляющий собой набор генера-
торов с фиксированной частотой,
управляемых от органной клавиату-
ры. Коммерческий вариант электро-
органа был представлен в 1939 году
на выставке в Нью-Йорке. Вскоре по-
сле этого на специально организован-
ном прослушивании группа экспер-
тов не смогла отличить звучание ор-
гана Хаммонда от звучания духового
органа. Электронные инструменты,
построенные по принципу электроор-
гана, выпускаются и в настоящее
время, однако с точки зрения темы
данного обзора важно, что развитие
электрооргйнов стимулировало созда-
ние электронных синтезаторов,
Первые электронные синтезаторы
сложных по своей тембровой и вре-
менной структуре звуков представля-
ли собой специализированные анало-
говые машины и были предназначе-
ны в основном не для исполнитель-
ских целей, а для экспериментов, на-
правленных на совершенствование
электроорганов и для академических
исследований в области электроаку-
стики.
Развитие технологии интегральных
аналоговых схем позволило со вре-
менем реализовать отработанные с
помощью этих синтезаторов методы
в сравнительно доступных как в от-
ношении управляемости, так и в от-
ношении стоимости исполнительских
синтезаторов. Пионером в этой обла-
сти считается Роберт Муг, выпустив-
ший в 1964 году первый такой син-
тезатор. Его схемотехнической осно-
вой был управляемый напряжением
генератор (осциллятор) на трех опе-
рационных усилителях [2, 3], кото-
рый одновременно генерирует сигна-
лы прямоугольной, пилообразной и
синусоидальной формы. Такой гене-
ратор в настоящее время известен как
генератор Муга. Различные вариан-
ты соединения таких генераторов и
суммирования их выходных сигналов
(ЧМ-аддитивный метод синтеза) поз-
волили получить широкую палитру
новых «электронных» звуков. Синте-
заторы Муга и сейчас находят при-
менение. Применение в них микро-
процессорных средств существенно
упростило управление и повысило
функциональные возможности,
Естественным развитием аналого-
вых синтезаторов стал переход к циф-
ровым осцилляторам, способным гене-
рировать сигналы произвольной
формы. Форма генерируемого сигнала
хранится в ПЗУ или ОЗУ, а сам ос-
циллятор может быть реализован ап-
паратно или программно. Возмож-
ность использования большого числа
осцилляторов (порядка десяти), кото-
рые имеют независимое управление
частотой и огибающей амплитуды,
для синтеза каждого голоса музы-
кального инструмента позволяет гово-
рить о переходе на качественно но-
вый по сравнению с аналоговыми син-
тезаторами уровень. Дальнейшее со-
вершенствование таких синтезаторов
в настоящее время происходит по
двум направлениям: первое —приме-
нение СБИС и на их основе удешев-
ление простейших моделей; второе —
развитие методов синтеза и доведе-
ние качества звука до звучания аку-
стических инструментов.
В 1978 году австралийской фир-
мой FAIRLIGHT |4] был создан циф-
ровой музыкальный инструмент, в
котором в отличие от попыток син-
теза натурального сигнала в реальном
масштабе времени был впервые реа-
лизован иной подход, получивший в
зарубежной литературе название
«sampling», Он состоит в том, что
для синтеза звука используются ра-
нее сгенерированные не в реальном
времени фрагменты, или просто оци-
фрованные фрагменты натуральных
звуков [5—7]. В отечественной лите-
ратуре пока нет подходящего терми-
на для этого метода, и мы будем
пользоваться термином «непосредст-
венное кодирование». Кодируются
обычно фрагменты начала звука
(фаза атаки), конца (фаза спада),
которые при исполнении воспроизво-
дятся без изменений, и стационарной
фазы, которая при воспроизведении
зацикливается на время нажатия кла-
виши.
В современных компьютерных син-
тезаторах ЧМ-аддитивный метод и
метод прямого кодирования получи-
ли дальнейшее развитие. Так, метод
прямого кодирования используется
практически во всех последних моде-
лях ритм-синтезаторов, В качестве
примера рассмотрим возможности од-
ного из наиболее мощных синтезато-
ров — FAIRLIGHT SERIES III вы-
пуска 1985 года [6, 7]. Так же, как
и в предыдущих моделях компьютер-
ных музыкальных синтезаторов
(KMC) этой фирмы в нем использу-
ется метод непосредственного коди-
рования. При частоте квантования
выходного сигнала до 48 кГц имеет-
ся шестнадцать независимых аналого-
вых выходов с динамическим диапазо-
ном 16 бит. На каждый из этих вы-
ходов можно «подключить» до 80 го-
лосов инструмента. Оперативная па-
мять синтезатора при этом составля-
ет 80 Мбайт, Встроенный секвенсор
позволяет запоминать восьмидесяти-
голосую партитуру и затем автомати-
чески проигрывать произведение.
Твердый диск емкостью до 60 Мбайт
используется для хранения программ
и записи синтезированных звуков.
На нем можно запомнить музыкаль-
ный фрагмент длительностью до се-
ми минут,
В качестве голосов инструмента
могут использоваться любые нату-
ральные звуки, а также звуки, «скон-
струированные» композитором. Для
этой цели KMC оснащен средствами
графического отображения и прог-
раммами анализа и синтеза звуков не
в реальном масштабе времени. Изве-
стны и KMC, представляющие собой
автоматизированные рабочие места
музыканта, оснащенные аппаратными
и программными средствами для на-
писания и редактирования нотных
текстов (с автоматизацией рутинных
операций при композиции музыки),
развитой системой синтеза звуковых
сигналов, средствами записи и иссле-
дования натуральных звуковых сигна-
лов, интерфейсами для связи и управ-
ления другими KMC и электронными
инструментами, а также средствами
телекоммуникации [8, 9],
Создание таких сложных в техни-
ческом и идейном плане систем ста-
ло возможным благодаря работам,
проводившимся в последнее десяти-
летие в трех взаимосвязанных на-
правлениях. Первое —это непосредст-
венные исследования в области ком-
пьютерного синтеза музыки, прово-
дившиеся в семидесятые годы в ря-
де исследовательских центров: BELL
LABORATORIES [10—15], IRCAM
(L'INSTITUTE DE RESERCHE AT
COORDINATION ACOUSTIQ/MU-
SIC) [16]; CENTER FOR COMPU-
TER RESEARCH IN MUSIC AND
ACOUSTICS, STANFORD UNIVER-
SITY [17]; COMPUTER AUDIO RE-
SEARCH LABORATORY [18] и дру-
гих. Второе — непрерывное совершен-
ствование и усложнение традицион-
ных синтезаторов и электроорганов,
использование в них микропроцессор-
ной техники и специализированных
БИС. Наиболее известным в нашей
стране представителем этого направ-
ления является японская фирма
YAMAHA [19, 20]. Третье —рабо-
ты в области студийной цифровой
звукотехники. KMC можно рассматри-
вать и как многофункциональный, ав-
томатизированный музыкальный инст-
румент, и как простейшую персональ-
ную цифровую студию звукозаписи.
Из всего множества вопросов, свя-
занных с компьютерным синтезом му-
зыки, далее будут рассмотрены основ-
ные принципы построения аппаратных
средств KMC и особенности методов
синтеза музыки. Из двух наиболее
распространенных в настоящее время
методов синтеза ЧМ-аддитивного и
непосредственного кодирования, пер-
вый ориентирован на использование
спецпроцессоров с максимально воз-
можным быстродействием, а второй,
при существенно менее жестких тре-
бованиях к быстродействию,— на ис-
пользование больших банков опера-
тивной памяти. Ниже рассматрива-
ются в основном KMC, ориентиро-
ванные на ЧМ-аддитивный синтез.
ЧМ-аддитивный метод синтеза му-
зыки
Подробно ЧМ-аддитивный и неко-
торые другие методы синтеза описа-
ны в переведенном на русский язык
обзоре [21]. В самом общем виде
ЧМ-метод описывается выражением:
S = 2A(J, I) XFUN[F(J, I)];
F(J, I)=F(J,I—l)+[WO(J) +
-fWT(J, I)+WM(J, I)],
где I—номер отсчета сигнала; J — ин-
декс суммирования; S — выходной
сигнал синтезатора; FUN — периоди-
ческие составляющие выходного сиг-
нала; WO — частота, определяющая
текущее значение фазы; WM — часто-
та модуляции; WT — медленное сме-
щение основной частоты; A(J, I) —
Рис. 1. Логическая схема обобщенно-
го цифрового осциллятора
Рис. 1. Логическая схема обобщенно-
го цифрового осциллятора
амплитуды. Все изменяющиеся во
времени параметры обычно аппрок-
симируются кусочко-линейными функ-
циями. Структура оператора (осцил-
лятора) приведена на рис, 1, От-
дельный осциллятор может исполь-
зоваться как самостоятельный голос
в KMC, однако чаще их суммируют
между собой для получения более
богатой гармонической и временной
структуры сигнала — аддитивный син-
тез. Возможно и такое соединение ос-
цилляторов, когда &ыход одного из
них подается на вход другого — ЧМ-
синтез. В качестве FUN может ис-
пользоваться любая периодическая
функция, однако на практике чаще
всего сигнал синтезируется на основе
синусоидальных функций. Так, для
качественного воспроизведения зву-
ков натуральных инструментов ме-
тодом аддитивного синтеза необхо-
димо использовать не менее шест-
надцати синусоидальных осциллято-
ров [10]. Большинство звуков из ар-
сенала современной эстрадной музы-
ки синтезируется ЧМ-аддитивным ме-
тодом с помощью всего четырех ос-
цилляторов [19, 20]. Речь идет о
синтезе одного голоса инструмента.
При увеличении числа голосов уве-
личивается и объем вычислений. В
KMC обычно исполнитель имеет воз-
можность управлять числом голосов
и распределением осцилляторов по
голосам,
Уровни обработки информации при
музыкальном синтезе
Обратимся теперь к процессу син-
теза (рис. 2, 3). На его «вершине»
находится музыкант, который или
создает нотную запись, или исполня-
ет музыкальное произведение, напри-
мер, используя традиционную клавиа-
туру. В результате обработки нотной
записи или выхода клавиатуры сис-
темой синтеза в реальном времени
вырабатывается поток информации* В
Рис. 2. Логические уровни обработки
данных в процессе компьютерного
синтеза музыки
Рис. 2. Логические уровни обработки
данных в процессе компьютерного
синтеза музыки
Рис. 3. Уровни аппаратной обработ-
ки в процессе компьютерного синтеза
музыки
Рис. 3. Уровни аппаратной обработ-
ки в процессе компьютерного синтеза
музыки
простейшем случае это данные о час-
тотах, амплитудах и длительностях
отдельных голосов инструмента. В
дальнейшем любое изменение в этом
потоке мы будем называть событием.
В настоящее время используются
клавиатуры в основном двух типов.
Первые вырабатывают информацию
о нажатии клавиши и ее номере
(частоте). Более сложные клавиату-
ры моделируют механическую форте-
пьянную клавиатуру — они вырабаты-
вают сигнал, пропорциональный ско-
рости нажатия клавиши.
Для стандартизации электронно-
музыкальной аппаратуры на этом
уровне обмена информацией в 1984
году принято соглашение MIDI [22],
которого в настоящее время придер-
живаются шестнадцать ведущих
фирм-производителей электронных ин-
струментов. MIDI регламентирует ап-
паратную часть интерфейса и прото-
кол обмена. С аппаратной точки зре-
ния это последовательный асинхрон-
ный интерфейс со скоростью обмена
32 кБод. Существенно, что макси-
мальная задержка передачи инфор-
мации от клавиатуры при исполь-
зовании MIDI составляет около
10 мс*
Кроме непосредственного исполне-
ния KMC дает возможность сначала
создать нотную запись на внешнем
запоминающем устройстве (секвенсо-
ре), а уже затем автоматически ис-
полнить музыкальное произведение.
Для создания нотной записи может
быть использована клавиатура и
специальные редактиоуюшие програм-
мы. Обмен информацией между сек-
венсором и самим синтезатором так-
же осуществляется в большинстве
случаев в соответствии с MIDI.
С точки зрения аппаратной реали-
зации, обслуживание обмена инфор-
мацией на этом уровне не представ-
ляет сложностей. Интерфейс MIDI
может быть обеспечен практически
любым 8-разрядным микропроцессо-
ром общего назначения.
Задача следующего уровня обра-
ботки — выработка управляющей ин-
формации для отдельных осциллято-
ров или голосов. Это тот уровень,
на котором происходит преобразова-
ние описаний событий в описание
синтезируемого звука, поэтому в
дальнейшем мы будем называть его
моделью музыкального инструмента.
На рис. 4 показана заимствованная
из обзора [21] реализация звука
кларнета. Она состоит из трех основ-
ных фаз: атаки, стационарной и спа-
да. С точки зрения управления ос-
цилляторами стационарная фаза ха-
рактеризуется постоянными или мед-
ленно изменяющимися значениями оги-
бающей амплитуды и частоты ос-
циллятора. В фазах атаки и спа-
да эти изменения существенно бо-
лее интенсивны. Обычно эти огиба-
ющие аппроксимируются кусочно-ли-
нейными функциями. Для качествен-
ного воспроизведения звука акусти-
ческого инструмента достаточно
иметь около десяти сегментов ку-
Рис. 4. Пример отдельно звучащего
тона кларнета: форма огибающей,
сигнала, форма сигнала
Рис. 4. Пример отдельно звучащего
тона кларнета: форма огибающей,
сигнала, форма сигнала
Рис. 5. Пример сегментации огибаю-
щей сигнала: в электрофортепиано; в
синтезаторах фирмы YAMAHA
Рис. 5. Пример сегментации огибаю-
щей сигнала: в электрофортепиано; в
синтезаторах фирмы YAMAHA
сочно-линейных функций огибающих,
большая часть из которых приходит-
ся на фазу атаки. В более простых
случаях используют четыре-пять сег-
ментов [20] (рис. 5).
Описание огибающей представлено
тремя параметрами на каждый сег-
мент: начальным значением, коэффи-
циентом наклона (инкрементом), ко-
нечным значением или длительностью.
Учитывая, что при качественном син-
тезе одного голоса необходимо не
менее шестнадцати осцилляторов, воз-
можна ситуация, когда модель долж-
на в ответ нз входное событие вы-
дать последовательность из шестнад-
цати описаний осцилляторов, каждое
из которых состоит из трех парамет-
ров, описывающих сегменты огибаю-
щих амплитуды, трех параметров
огибающей частоты и одного-двух уп-
равляющих слов (например, для вы-
бора функции FUN)—всего 128 па-
раметров. Поскольку на эту опера-
цию отводится порядка 10 мс, то на
один параметр приходится соответст-
венно порядка 100 мкс. Такой под-
счет недостаточно корректен, посколь-
ку параметры осцилляторов, соответ-
ствующих данному голосу, или даже
разным голосам одного инструмента,
взаимосвязаны, поэтому все же уда-
ется реализовать управление много-
голосым инструментом с использова-
нием относительно дешевых микро-
процессорных средств широкого при-
менения: Z-80 (23|, 6502 24]; М6809
И!-
Тем не менее модель инструмента
все же является достаточно узким
местом, поэтому создатели KMC ста-
раются использовать для ее реализа-
ции более мощные вычислительные
средства. В современных моделях
KMC это универсальные или специ-
ализированные компьютеры на основе
М68000 125, 26). МикроЭВМ типа
«Электроника 60» обеспечивают пол-
ное управление тридцатью двумя ос-
цилляторами [17, 23, 27], что экви-
валентно двум голосам при модели-
ровании акустических инструментов
ЧМ аддитивным методом. В одном
из наиболее мощных KMC — Synclai-
vier может одновременно генериро-
ваться 32 ЧМ-аддитивных голоса (на
основе 128 осцилляторов) и 32 голо-
са методом непосредственного кодиро-
вания [8, 9J.
Программное обеспечение для гене-
рации нотного текста и модели инст-
румента не входит в круг вопросов,
рассматриваемых в данном обзоре.
Хотелось бы только проиллюстриро-
вать уровень требований, предъявляе-
мых к модели Известно [2], что
спектральные и временные характери-
стики акустических инструментов за-
висят от высоты звука и техники
звукоизвлечения. Так, концертный
рояль генерирует около 4,5 тыс. раз-
личимых на слух тембров.
Хорошая модель инструмента дол-
жна формироваль в соответствии с
поступающими на вход событиями
описание сигнала, выбирая по опре-
деленным правилам один из тембров.
В связи с этим может возникнуть
вопрос о необходимости моделирова-
ния звучания акустических инстру-
ментов. Если даже не принимать во
внимание коммерческую ситуацию, ко-
торая складывается в пользу KMC,
то просто для того, чтобы KMC на-
шли признание у профессиональных
музыкантов и заняли свое место в
ряду традиционных музыкальных ин-
струментов, они должны предостав-
лять не меньшие выразительные сред-
ства, чем акустические инструменты.
Можно сказать, что возможность мо-
делирования звучания натуральных
инструментов является своеобразным
тестом на «профессиональную при-
годность» KMC.
Функционирование модели и ее
связь со следующим уровнем обра-
ботки — звуковым процессором — по-
рождает и несколько проблем схе-
мотехнического плана. Во-первых, од-
нопроцессорная реализация модели
инструмента может успешно управ-
лять не более, чем тридцатью двумя
осцилляторами В том случае, когда
требуется большее число осциллято-
ров, необходимо либо уменьшать чис-
ло управляемых параметров и часто-
ту квантования выходного сигнала,
как это делается в коммерческих сис-
темах, либо распараллеливать модель
на несколько процессоров. Забегая
вперед, отметим, что и звуковой про-
цессор на частоте квантования
50 кГц в состоянии отрабатывать до
тридцати двух осцилляторов [15, 29],
поэтому здесь и лежит граница, раз-
деляющая однопроцессорные ]15] и
многопроцессорные [31] системы.
Если рассматривать пару процессо-
ров модели — звуковой процессор
(ЗП), то здесь возникают две труд-
ности: первая — обеспечение синхро-
низации модели и звукового процес-
сора и вторая — быстрая загрузка
данных из процессора модели в ЗП,
не вызывающая искажений выходного
сигнала. Синхронизация обычно осу-
ществляется следующим образом
[17]: процессор модели в ответ на
событие, полученное с клавиатуры
или в результате обработки нотного
текста, загружает в ЗП данные о на-
чальных сегментах огибающих ампли-
туды и частоты осцилляторов и за-
пускает процесс генерации звукрвого
сигнала.
Звуковой процессор вычисляет зна-
чение огибающих частот и амплитуд
осцилляторов и значения отсчетов
звукового сигнала. Когда огибающая
достигает указанного конечного зна-
чения, ЗП формирует запрос в про-
цессор модели, на основании которо-
го последний должен выставить пара-
метры нового сегмента. На фазе ата-
ки сигнала длительность сегмента ку-
сочно-линейной функции огибающей
может составлять величину порядка
10 мс, т. е. через 10 мс после начала
генерации звука могут появиться за-
просы от ряда или (в худшем слу-
чае) от всех осцилляторов. На об-
новление параметров осцилляторов
будет затрачено время, сопоставимое
с длительностью сегмента. Следует
отметить, что этот пример рассматри-
вает случай пиковой нагрузки на ин-
терфейс, «модель—звуковой процес-
сор». Средняя же скорость передачи
информации составляет около 1000 па-
раметров/с [17] на 32 осциллятора.
Подразумевается, что синтез звука в
ЗП, а следовательно, и вычисление
всех параметров модели и всех зна-
чений осцилляторов происходит каж-
дый раз заново. Такой подход ис-
пользуется в основном в уникальных
исследовательских системах. На ос-
новании имеющейся информации о
коммерческих KMC можно предпо-
ложить, что р них используются раз-
личные способы сокращения необхо-
димых вычислительных ресурсов
[2, 4—9, 19, 20 30], одним из кото-
рых является метод непосредственно-
го кодирования.
На аппаратном уровне обмен ин-
формацией между процессором моде-
ли и звуковым процессором происхо-
дит по схеме, приведенной на рис. 6.
В самых простых системах звуковой
процессор является устройством на
магистрали управляющего компью-
тера и принимает от него команды и
данные [27, 28]. Запросы от осцил-
ляторов осуществляют систему пре-
рываний. В более производительных
системах внутренняя память ЗП на-
ходится в адресном пространстве уп-
равляющего компьютера [15|, что по-
зволяет существенно повысить ско-
рость обмена. Оба варианта органи-
зации связи могут быть реализова-
ны с использованием любой микро-
процессорной магистрали, например
Q-bus [15] или S-100 [27], Для
демпфирования пиковой нагрузки на
интерфейс в наиболее мощных систе-
мах применяется промежуточная бу-
ферная память типа FIFO. В этом
случае процессор модели последова
тельно помещает в буфер данные, а
ЗП берет их оттуда по мере надоб-
ности. Запрос на обслуживание ос-
циллятора в первую очередь направ-
ляется в буфер, а если он пуст, то в
процессор модели (29, 31, 32].
Особенности архитектуры звуковых
процессоров
В системах музыкального синтеза
ЗП осуществляет вычисление осцил-
ляторных функций и на Их основе —
синтез звукового сигнала, а в более
универсальных системах — фильтра-
цию сигнала, реверберацию, регист-
рацию натуральных звуков для их
последующего использования.
Различают ЗП, предназначенные
для студийных и исполнительских
целей [23, 24. 31]. И те и другие
могут работать в реальном масшта-
бе времени, однако для первых необ-
ходим дополнительный объем вычи-
слений и гибкость программирования,
связанные с редактированием звуко-
вых «текстов» к большим разнообра-
зием функций ЗП. Соответственно
различаются и потоки данных ~ как
внутри ЗП, так и извне. Для студий-
ных применений, где принят диапазон
частот звукового сигнала до 20 кГц,
стандартные частоты квантования
составляют 44,056; 48 и 50 кГц Объем
поступающих на вход ЗП данных мо-
жет составлять около 15 Мбит/с на
звуковой канал |29].
В исполнительских устройствах по-
ток данных меньше — около
250 Кбит/с, однако помимо этого сис-
тема должна одновременно с испол-
нением отрабатывать изменения в ха-
рактере вычислений. В исполнитель-
ских системах частота квантования
выходного сигнала обычно составля-
ет не 50 кГц. а 32 кГц и менее.
Для синтеза естественных звуков
обычно требуется генерация не бо-
лее 32 осцилляторов на звуковой ка-
нал. Для реализации каждого ос-
циллятора (см. рис. 1) необходимо
около 10 арифметических операций
и 10 операций обращения к памяти
данных, которые сопровождаются 20
пересылками Частоте квантования
50 кГц соответствует вычисление
функции одного осциллятора за вре-
мя порядка 0,5 мке и, следователь-
но, — быстродействие процессора на
уровне 20 млн. операций/с. Совре-
менная элементная база (ТТЛШ-мик-
ропроцессоры и быстродействующие
ЗУ статистического типа) и техноло-
гически е возможности позволяют реа-
лизовать быстродействие на уровне
10 млн. операций/с при скоростях
передачи информации в пределах од-
ной платы до 20 млн. обменов/с.
Дальнейшее повышение быстродейст-
вия хотя и возможно, но связано
с существенными технологическими
трудностями и переходом к исполь-
зованию ЭСЛ-микросхем. Поэтому
при реализации ЗП для повышения
быстродействия используют методы
распараллеливания вычислений и ор-
ганизацию поточного режима обра-
ботки.
Организация параллельных вычи-
слений с требуемой производитель-
ностью возможна на основе функци-
ональной независимости следующих
видов информации:
Циклические программы
(программа работы ЗП), состоящие
из последовательности микроинструк-
ций, не изменяющихся в процессе вы-
полнения вычислений.
Обычно один цикл работы прог-
раммы выполняется за один период
отсчета звукового сигнала. При бы-
стродействии ЗП до 20 млн. опера-
ций/с длина программы не может
превышать нескольких сотен инст-
рукций. В большинстве ЗП система
команд не включает в себя опера-
ций условных переходов, функции
которых выполняют условно испол-
няемые операции. Это позволяет за
счет некоторой потери гибкости уп-
ростить часть схемы ЗП, управляю-
щую последовательностью исполне-
ния команд и обеспечить полную
синхронность работы ЗП. Физически
ЗУ команд (ЗУКОМ) может быть
реализовано в виде ЗУПВ, загружае-
мого из управляющего компьютера,
ПЗУ или агшарагно.
Сверхоперативная инфор-
мация — частоты и фазы осцилля-
торов (в случае аддитивного синте-
за), весовые коэффициенты цифро-
вых фильтров, часы реального вре-
мени и т. п. Эта информация наи-
более часто используется в процессе
вычисления и требует оперативного
доступа. Обращение к ней произво-
дится по фиксированным для данной
программы адресам, поэтому для ее
хранения используются сверхопера-
тивные ЗУ (СОЗУ), построенные на
основе быстродействующих БИС ста-
тической памяти небольшой емко-
сти (до 4 Колов), для адресации ко-
торых выделяется часть поля инст-
рукции.
Информация о форме сиг-
нала включает в себя значения от-
счетов сигнала при его обработке,
например в цифровых фильтрах и
ревербераторах, или описание фор-
мы синтезируемого звукового сигна-
ла, Для хранения этой информации
требуется память существенно боль-
шего объема, Так, для реализации
алгоритмов реверберации необходи-
мая задержка сигнала составляет до
0,5 с, что соответствует объему па-
мяти формы сигнала ЗУФС—32 Кслов
[33], В процессоре одного из самых
простых синтезаторов [15] описание
формы сигнала содержится в ПЗУ
объемом 12 Кслов, В KMC, построен-
ных по принципу прямого кодирова-
ния, объем памяти формы сигнала до-
стигает десяти и более мегабайт [26],
Доступ к этой информации осуществ-
ляется в соответствии с адресами,
вычисляемыми в процессе выполне-
ния программы, например текущая
фаза осциллятора фактически являет-
ся адресом ЗУ формы сигнала, Сред-
няя частота обращения к ней — один-
два раза за время вычисления одно-
го осциллятора, что значительно ни-
же, чем при обращении к СОЗУ, по-
этому оно обычно выполняется на
микросхемах ОЗУ динамического ти-
па или в простейших синтезаторах
на ПЗУ,
Вспомогательная инфор-
мация для применяемых алгорит-
мов, Обычно в синтезаторах опера-
ции вычисления функций выполняют-
ся с использованием таблиц и мето-
дов интерполяции [10, 21], Это поз-
воляет существенно повысить ско-
рость выполнения операций при не-
котором уменьшении точности. Таб-
лицы содержатся в ПЗУ емкостью
16 64 Кслов, адресуемого анало-
гично ЗУФС.
Размещение этих данных в незави-
симых ЗУ позволяет за один такт
осуществить доступ к ЗУКОМ,
СОЗУ, ЗУФС и таблицам,
Если обратиться к алгоритму от-
дельного осциллятора (см. рис. 1), то
видно, что вычисления, необходимые
Для его реализации, распадаются на
группы. Первая — вычисление кусоч-
но-линейных функций приращения
частоты и амплитуды, значения фазы
и амплитуды осциллятора. Для это-
го требуются в основном операции
целочисленного сложения, которые
могут исполняться с помощью обыч-
ного АЛУ, Вторая — формирование
на основе текущего значения фазы
осциллятора адреса ЗУФС В про-
стейших ЗП адрес ЗУФС тождест-
вен значению фазы. Однако в более
универсальных системах, где в од-
ном устройстве памяти может содер-
жаться информация о нескольких
сигналах, возникает необходимость в
преобразовании логического адреса,
вычисляемого в АЛ У, в физический
адрес ЗУФС. Такое преобразование
может выполняться независимо от
основных вычислений, поэтому ряд
ЗП содержит контроллер адресов
ЗУФС. На него могут быть частич-
но переложены и вычисления фазы
сигнала при аддитивном синтезе.
Третья группа вычислений связана
с обработкой выбранной из ЗУФС ин-
формации: масштабированием, сум-
мированием с выходами других ос-
цилляторов и (или) фильтров. Наи-
более распространенным вариантом
организации этих вычислений являет-
ся использование БИС перемножите-
лей-аккумуляторов.
Основные элементы ЗП и их пара-
метры, достижимые при использова-
нии современной отечественной эле-
ментной базы, приведены в таблице.
Звуковой процессор DMX-1000 и сис-
тема* LUCASFILM
Процессор DMX-1000 [27] разрабо-
тан для реализации ЧМ-аддитивного
алгоритма синтеза и может рассмат-
риваться как один из наиболее про-
стых ЗП (рис. 7), Процессор имеет
микропрограммное управление, один
уровень поточной обработки инфор-
мации, обеспечивается интерфейсами
к LSI-11/23 или S-100. Основной эле-
ментной базой, определяющей его
Архитектура ЗП
Тип 14 Организация связей в соот-
ветствии с основным алгоритмом ра-
боты ЗП, например ЧМ-аддитивным4
В этом случае удается добиться наи-
более высокой производительности.
Тип 2. Построение процессоров с
регулярной (магистральной) архитек-
турой и высокой степенью распарал-
леленности вычислений.
Тип, 3. Создание модульного ЗП
на основе быстродействующей маги-
страли обмена данными. Такой под-
ход не получил дальнейшего разви-
тия, так как, используя современную
элементную базу, можно разместить
достаточно мощный ЗП на одной
плате,
С точки зрения авторов предпочти-
тельнее ЗП с регулярной структурой,
поэтому ниже мы рассмотрим два
примера именно таких процессоров,
производительность, являются БИС
серии АМ29ХХ (ТТЛШ-разрядно-мо-
дульные БИС),
Арифметическая часть DMX-1000
представлена 16-разрядным РАЛУ
(четыре 4-разрядные секции 2901, со-
держание АЛУ и шестнадцать реги-
стров) и 16-разрядной БИС перемно-
жителя-аккумулятора. Умножение
осуществляется над 16-разрядными
числами с получением 32-разрядного
результата. Машинный цикл состав-
ляет 200 не* Частота квантования
звукового сигнала — 19 ... 50 кГц,
Процессор DMX-1000 при частоте
квантования 19,3 кГц может отрабо-
тать 24 простые осциллятор ные
функции, 16 осцилляторных функций
с управлением огибающей, 8 частот-
но-модулированных голосов, 20 филь-
тров первого порядка, 10 фильтров
второго порядка, 30 генераторов
белого шума, а также их различные
комбинации.
Работа процессора полностью син-
хронна и управляется одним гори-
зонтальным 32-разрядным микроко-
дом. Каждая микроинструкция ини-
циализирует выполнение нескольких
операций,
Программа работы ЗП находится
в ЗУ объемом 256 32-разрядных слов.
Система команд не содержит коман-
ды безусловного или условного пере-
ходов. Процессор имеет сверхопера-
тивную память для хранения кон-
стант, коэффициентов для умножения
и адресной информации, а также
формы сигнала, необходимой для
доступа в память. Сверхоперативное
ЗУ адресуется от части кода микро-
инструкции.
В отличие от большинства ЗП
DMX-1000 не вырабатывают запросов
на обслуживание. Обмен инициализи-
руется со стороны компьютера более
высокого уровня и осуществляется
байтовыми сообщениями. Процессор
может выполнять всего пять команд
управляющего компьютера: прекраще-
ние выполнения программы для пе-
резагрузки памяти микроинструкций
и памяти данных; выполнение одной
микрокоманды; пуск выполнения про-
граммы; загрузка одного слова в
ЗУ формы сигнала; загрузка одного
слова в сверхоперативную память.
Со стороны DMX-1000 обмен поддер-
живается микропрограммно и осуще-
ствляется в начале каждого нового
цикла выполнения программы. Таким
образом, ЗП может воспринять одну
команду компьютера за один интер-
вал отсчета выходного сигнала. Та-
кая организация обмена значительно
упрощает аппаратную часть ЗП, но
усложняет оперативное управление
кусочно-линейной функцией огибаю-
щей.
Процессор разрабатывался как
коммерческий вариант ЗП и ориен-
тирован на использование в звуковых
студиях и исполнительских музыкаль-
ных инструментах для тех случаев,
когда интенсивный обмен между
ЗП и более высокими уровнями об-
работки не является необходимым.
На основе DMX-1000 и микроЭВМ
LSI-И создана коммерческая цифро-
вая звуковая система DMX-1010
[28]. Примером компьютерной систе-
мы синтеза и обработки с макси-
мальными возможностями может слу-
жить система LUCASFILM, разрабо-
танная на одноименной кинофирме
[29, 31] (рис. 8). Она может исполь-
зоваться при озвучивании фильмов
для документирования, обработки и
микширования информации, а так-
же для анализа, синтеза и обработ-
ки музыкальных звуков любой слож-
ности. В своей максимальной конфи-
гурации она обеспечивает выполнение
в цифровом виде всего круга работ,
связанных с созданием шестиканаль-
ного звукового сопровождения пол-
нометражного художественного ки-
нофильма.
Система содержит управляющий
компьютер, построенный на основе
микропроцессора 68000 фирмы Mo-
torola и ОЗУ емкостью 1 Мбайт.
Комплектуется жестким диском типа
«винчестер», графическим дисплеем
высокого разрешения, системой обра-
ботки звуковых сигналов и консоль-
ными системами, которые служат ин-
терфейсом между оператором (инже-
нером звукозаписи композитором, му-
зыкантом-исполнителем) и обрабаты-
вающей частью системы (рис. 9).
Для композиторов и музыкантов-
исполнителей такой интерфейс может
быть представлен в виде традици-
онной музыкальной клавиатуры в со-
четании с управляющими органами в
виде переключателей и различного
типа потенциометров.
Консольный компьютер, выполнен-
ный, как и управляющий, на основе
микропроцессора 68000, направляет в
систему поток управляющих пара-
метров и данных или считывает те-
кущие значения обрабатываемых сиг-
налов. Управление обменом осуще-
ствляется аппаратно посредством
контроллера, который располагает че-
тырьмя магистралями внутри систе-
мы и несколькими — для обмена с
консольными системами*
Система содержит до восьми ЗП,
Управление на уровне контроллер —
ЗП осуществляется посредством двух
24-разрядных магистралей: 1) S-bus
для передачи данных в АЦП (ЦАП)
и другие ЗП; 2) UPDATE-bus — для
обмена управляющей информацией.
Одна система при частоте кванто-
вания 50 кГц позволяет управлять 64
акустическими каналами (АЦП/ЦАП),
При такой частоте максимальное чис-
ло каналов, подключаемое к одному
ЗП, не превышает восьми. За счет
снижения частоты квантования до
35 кГц число каналов может быть
увеличено до 12 (на каждый ЗП)„
Каждый ЗП при тактовой частоте
20 МГц делает около 18 миллионов
24-битовых целых умножений-сло-
жений в секунду, параллельно обме-
ниваясь с дисками и ЦАП (АЦП) со
скоростью около 6,4 млн. бит/с и от-
рабатывая управляющую информа-
цию (изменения в микрокоде и содер-
жимом памяти), поступающую с кон-
сольных процессоров.
Архитектура одного ЗП (см. рнс,
9) содержит две 24-разрядные вход-
ные магистрали A-bus а В-bus, объе-
диняющие все входы блоков, а так-
же двухвходовые регистры при каж-
дом из них, которые позволяют, ис-
пользуя два 16-входовых мультиплек-
сора, осуществить любую необходи-
мую коммутацию всех блоков. Все
операции в устройстве выполняются
синхронно (каждые 50 не считывает-
ся следующая микроинструкция) в
последовательно (счетчик микроко-
манд инкрементируется, начиная от
нуля до установленной величины и
затем возвращается в нуль) под
управлением горизонтального 96-би-
тового микрокода, Емкость зу
команд составляет 4К микроинструк-
ций.
Принятие решений осуществляется
путем условного выполнения микро-
инструкций с учетом результата вы-
полнения операции логическим бло-
ком. Основные вычислительные опе-
рации над данными выполняются в
многофункциональном блоке аккуму-
лятора перемножителя, который пред-
ставлен 24X24 битовым со знаком
или без знака перемножителем и 48-
битовым аккумулятором с полным
временем выполнения операций 200 не
(операции над беззнаковыми данны-
ми широко используются в линиях
задержки переменной длины или ре-
вербераторах). Поточная организа-
ция вычислений в блоке позволяет
принимать данные каждые 50 не.
Память формы сигнала размещена
на отдельной плате в виде двух бан-
ков по 128К 24-битовых слов. Всего
до восьми таких плат может быть
подключено к каждому ЗП. Оба бан-
ка могут функционировать одновре-
менно, осуществляя таким образом
две 24-битовые передачи каждые
450 не. Удобство доступа при адре-
сации достигается за счет введения
специального блока — контроллера
адреса, состоящего из сдвиговой мат-
рицы и сумматора, которые обеспе-
чивают адресацию двумерных таб-
лиц, имеющих длину, кратную степе-
ни числа 2.
Для обмена информацией с диском
в процессоре организован канал пря-
мого доступа к байкам памяти, име-
ющий свою систему адресации и ра-
ботающий асинхронно и «прозрач-
но» по отношению к ЗП (используя
циклы памяти, когда ЗП к ней не об-
ращается). В нормальном режиме вы-
полнения операций предполагается
использование четырех плат памяти с
общей емкостью 1 млн. 24-битовых
слов. Этого сказывается достаточно
для организации адекватного буфе-
ра диска, линии задержки и таблицы
формы сигнала.
Наибольший интерес представляет
организация обмена данными и уп-
равляющей информацией между:
1) контроллером и ЗГ1 (посредством
однонаправленной магистрали
UPDATE bus), 2) между отдельными
ЗП, ЗП и дисками; 3) ЗП и АЦП,
ЦАП (через двунаправленную маги-
страль данных — S-bus). Информация
по UPDATE bus поступает от конт-
роллера (по мере ее генерации кон-
сольными системами или управляю-
щим компьютером) в виде триплетов,
содержащих код операции, данные и
адрес. В каждом ЗП имеется магист-
ральный буфер объемом 256 40-би-
товых слов, в котором поступающая
информация образует очередь. Конт-
роллер имеет возможность писать
информацию в конец, начало или про-
извольное место в очереди. Этим
обеспечивается своевременное (без
задержки) прохождение оперативной
управляющей информации,
Управление обменом осуществляет-
ся посредством двух видов кодов
операций, вырабатываемых контрол-
лером. Это операции над данными в
соответствии с указанными адресом
и кодом операции и операции типа
«wait until», в которых данные и ад-
рес воспринимаются как одно 32-би-
товое число и сравниваются со зна-
чением счетчика отсчетов ЗП. По ре-
зультатам сравнения процессор ли-
бо продолжает обмен (если значение
счетчика больше или равно аргумен-
ту команды «wait until»), либо при-
останавливает его (если значение
счетчика меньше). При этом опера-
ция «wait until» соответственно уда-
ляется или остается в очереди.
Считывание информации происхо-
дит каждые 50 не (обычно берут ее
из начала очереди), и, если ЗП опусто-
шили буферы или в результате срав-
нения оказалось, что значение счетчи-
ка отсчетов меньше, чем аргумент
команды «wait until», они переходят
в режим обработки, начиная вычи-
сления с нулевой инструкции.
В режим обмена ЗП переходит по-
сле вычисления очередного отсчета.
Максимальное число возможных об-
менов между вычислениями двух от-
счетов составляет 256. Время ожида-
ния ЗП в режиме обмена —150 не.
Рассмотренный здесь алгоритм вза-
имодействия хорошо иллюстрирует и
реализует возможности управляюще-
го и обрабатывающего компьютеров,
позволяя отрабатывать необходимое
число изменений, возникающих при
синтезе сразу нескольких новых сиг-
налов или сложных форм.
Для синхронизации работы всех
консольных компьютеров с системой
из восьми ЗП только один из них
может помещать в очередь опера-
ции типа «wait until». При такой ор-
ганизации обмена ограничения со сто-
роны аппаратуры на скорость пере-
дачи информации определяются мак-
симальной скоростью приема, которая
для LUCASF1LM процессора состав-
ляет в среднем около 1 000 000 обме-
нов/с, и скоростью отработки и до-
ставки их управляющим или кон-
сольным компьютером — для микро-
процессора 68000 —около 100 000 об-
менов/с.
В отличие от магистрали UPDATE
bus, магистраль S-bus целиком пред-
назначена для обмена данными. Она
используется для коммуникации ме-
жду звуковыми процессорами, ЦАП
и АЦП. Управление работой буферов
ЦАП и АЦП ведется контроллером,
который помещает очередную инфор-
мацию в конец очереди. Если буфер
занят, контроллер приостанавливает
таймер ЗП. Кроме того, S-bus имеет
свою память (256 элементов), кото-
рая записывается S-bus операциями
и может быть прочитана любым ком-
пьютером при помощи UPDATE ин-
терфейса, позволяя тем самым иметь
канал обратной связи.
Рассмотренная система имеет воз-
можность одновременно вести обра-
ботку информации, поступающей по
нескольким каналам, синхронный и
асинхронный обмен данными и заме-
ну больших блоков памяти без пре-
рывания процесса вычисления.
В заключение можно сказать, что
в статье остались не рассмотренными
такие вопросы, как программное обе-
спечение систем музыкального синте-
за на всех уровнях, архитектура про-
цессоров клавиатуры, принципы по-
строения нетрадиционных органов уп-
равления для компьютерных синтеза-
торов, модели акустических инстру-
ментов, вопросы точности вычислений
и т, д., а также отсутствуют ссылки
на ряд работ, помещенных в списке
литературы. Они представляют инте-
рес, но не могли быть освещены в
обзоре [35—40].
Телефон для справок: 135-23-70,
Москва.
ЛИТЕРАТУРА
1. Кокин Л. Юность академиков.
М.: Сов. Россия, 1981. 235 с.
2. Kurzweil R. The Goals of the
Kurzweil 250. Preprint, Aug. 1984,
8p.
3. Справочник по нелинейным схе-
мам / Под ред. Шнейголда Д. М.:
Мир, 1977, 523 с.
4. Hammond R. Fairlight Music
Compuier. // Practical Electro-
nics.—1983, July. P. 32—37
5. Emulator И Owners Manual.
E—MU System Inc. Santa Cruz,
1985, 215 p.
6. Fairlight Instrument Product
News.—1985.—N 3.—4 p.
7. Fairlight Newes Letters.
1985.—N 5, 4 p.
8. In S i n g. A Quarterly Publication
By New Englang Digital. Sept.
1984, 4 p.
9. In Sing. Winter 1985, 4 p.
10. А л л e с X. «Цифровой синтез му-
зыки в реальном времени».—
ТИИЭР.—1980.— Т. 68.—№ 4.—
С. 5—21.
11. A lies Н. a Portable Digital So-
und Synthesis System. // C.M.J.—
1977.— V. 1.— N "4.—P. 5, 6.
12. Alles H. A Modular Approach to
Build Large Digital Synthesis Sys-
tem.//C.M.J.-1977.—V. 1. N 4.—
P. 14—15.
13. Alles H. A 256 Channel Perfor-
mer Input Device.//C.M.J. —
1977.— V. 1.— N 4, P. 10—13.
14. Alles H., Giugno P. A One-
Card 64 Channel Digital Synthesi-
ser. // C.M.J.— V. 1.— N 4.— P. 7—
9.
15. Alles H. An Inexpensive Digital
Sound Synthesiser//C.M.J. 1979.—
V. 3.— N 3.—P. 28—31.
16. Moorer IT. et al. The 4C-Machi-
ne. C.MJ.—1979. — V. 3. N 3.
P. 16—24.
17. Moorer j. Synthesisers I Have
Known and Loved. C.M.J—1981.—
V. 5.-N l.-P. 4—12.
1& Moor F. The Compuier Audio Re-
serch Laboratory at U.CS.D. //
С.М.Л.—1982.— V. 6.— N 1.—P.
18—29,
Г9, Yamaha's 85 New Combo Pro-
duct. Рекламный проспект.— 11 С.
20. Yamaha DX Series. Рекламный
проспект.—1985. 7 стр.
21. My pep Дж. Вопросы обработки
сигналов при машинном синте-
зе музыки. — ТИИЭР. — 1977.—
Т. 68.— № 8.— С. 5—40.
22. What* s MIDI? Yamaha, 1985,
24 p.
23. CRumar General Development
System. // C.M.J. — 1980. V. 4. —
N 1.— Рекламное приложение.
24. Con Brio Digital Sound Sinthe-
sizer // C.M.J.—1980.—V. 4.— N 1.
Рекламное приложение.
25. К u r z we i Г s «Smart» Music
Machine//Music Trades.— 1984.—
15. Jan. P. 114—115.
26. Series III Fairlight CMI // Stu-
dio Sound.—1985, Oct. P. 74—78.
27. W a 11 r a f f D. DMX-1000 Compu-
ter Sound Processor // C.M.J.—
1979,—V. 3.—N 4 —P. 44—49.
28. DMX-1010 Computer Sound Pro-
cessor//C. M. J.—1982. V. 6.—
N 1.— P. 52—53.
29. M о о r e r J. The Lucasfilm Audio
Signal Processor //C.M.J.—1982.—
V. 6.— N 3.— P. 22—23.
30. Report from the 1980 Audio En-
geneering Society Convention in
Los Angeles // C.M.J. — 1980. —
V. 4.— N 3.— P. 66—73.
31. Shell J. The Lucasfilm Real Time
Console for Recording Studio and
Performance of Computer Music //
C.M.J.—1982.-V. 6. —N 3. —P.
33—45.
32. S a m s о n P. General Purpouse
Digital Synthesiser // C.M.J. —
1978.—V. 2.—N 2.—P. 1013—
1022.
33. S e k i g i с h i K. A New Approach
to High-Speed Digital Signal Pro-
cessing Based on Microprogramm-
ing. // J. of Audio Eng. Soc.—
1983.—V. 31.— N 7—8.— P. 517—
522
34. Codi D. The RTM-5 Signal Pro-
cessing Architecture//C.M.J.—
1982,— V. 6.— N 2,— P. 52—60.
35. W e s s e 1 D. Timbre Space as Mu-
sical Control Structure // C.M.J.—
1979.— V. 3.—N 2.—P. 45—52.
36. С h a d a b e J. Some Reflections
on the Nature of the Landscape
Within Which Computer Music Sys-
tem are Designed//C.M.J.—
1977.—V. 1.—N 3.—P. 5—11.
37. Holtzman S. An Automated Di-
gital Sound Synthesis Instru-
ment //C.M.J.—1979.— N 2, v. 3,
p. 53—61.
38. К a p 1 a n S. Developing a Com-
mercial Digital Sound Synthesi-
zer // C.M. J!—1981.— V. 5.— N 3.
P. 62—73.
39. M a t h e w s M. The EGG: A Pu*
rely Digital Real Time Polyphonic
Sound Synthesizer. // C.M.J. —
1978.— V. 2.—N 2.—P. 32—36.
40. Parks D. Hardware Design of
Digital Synthesizer. // C.M.J. —
1983.—V. 7.—N 1.—P. 44—65.
Статья поступила 8 июля 1986 г.