────────────────────────────────────────
DIGITAL SOUND,
или расставим точки над i
────────────────────────────────────────
(c) VTS'99
Мне кажется, этот вопрос слабо освещен
в ZX-прессе, поэтому возникают некоторые
заблуждения. Публикуемый здесь материал,
полагаю, устранит часть из них.
Знаковый (биполярный) ЦАП.
Кто-то говорил, что сия фича обладает
лучшим качеством звука, нежели униполярный
(обычный) ЦАП. Вероятно, это чисто субъек-
тивная оценка, т.к. такого быть в природе
не может.
Насколько я понимаю, биполярный код вы-
дают дигитайзеры, которыми оцифровуют
сэмплы (хотя я незнаком с пц). Этот же код
можно потом выкидывать в биполярный ЦАП, а
для униполярного нужно делать пересчет
(прибавлять #80). Все бы ничего, но схемо-
технически биполярный ЦАП обычно чуточки
сложнее, а произвести пересчет сэмплов в
униполярный код - секундное дело, т.е. ис-
пользовать униполярный ЦАП выгоднее.
И вот, значит, нам говорят, что, мол,
ваши униполярные ЦАП'ы - маст дай.
На самом же деле единственное его отли-
чие - в формировании постоянной составляю-
щей на уровне #80, которая затем отфиль-
тровывается переходными конденсаторами в
УНЧ. Причем уровень #80 постоянен только
потому, что мы взяли оцифрованный биполяр-
ный сигнал и сместили его на это значение.
Если попытаться сгенерить какой-нибудь RND
сигнал, то этот уровень сместиться и, кро-
ме того, может изменяться. Если кто не
знает, поясню понятие постоянной составля-
ющей сигнала (Рис.1).
Рис. 1
Итак, постоянная составляющая U0 - это
среднее значение сигнала за некоторое вре-
мя T. Причем если вычислить площадь, огра-
ничиваемую линиями Ot, t=0, t=T и самим
сигналом, то она будет равна площади пря-
моугольника U0*T. А если сложить площади
сигнала сверху и снизу линии ox, то они
будут равны. Именно до этого напряжения
заряжаются переходные конденсаторы, а за-
тем "вычитают" его из сигнала, оставляя
нагрузке лишь переменную составляющую.
Причем время T определяется инерционностью
конденсатора (т.е. постоянной времени
("тау") т=Rh*C).
Так вот, если использованный ранее сиг-
нал с U0<>#80, преобразовать и подать в
биполярный ЦАП, там тоже появится постоян-
ная составляющая, и она тоже отфильтруется
конденсатором. Отдельно хочу предостеречь
сторонников биполярного преобразования от
попыток избавиться от ненавистного конден-
сатора, используя усилитель с гальваничес-
кими связями. Попадание упомянутой посто-
янной составляющей чревато порчей ваших
любимых 100-ваттных колонок (если Вы не
предусмотрели защиту).
"А нафиг тогда вообще нужны биполярные
ЦАП, ведь кто-то их придумал ?" - спросите
Вы. Да, они нужны, но не для получения di-
gital sounds, а скажем, для управления
двигателем (изменение направления враще-
ния), да мало ли чего еще...
Динамический диапазон.
Весьма спорное понятие. Одни считают
его отношением max значения сигнала к
уровню шумов, а другие - к уровню min зна-
чения сигнала, причем у первых получается
куда большая цифра (которая и рекламирует-
ся), а как считают вторые, я и вовсе не
понимаю (т.к. критерием min уровня сигнала
выступает субъективная оценка его качества
- [1], что недопустимо). Весь прикол в
том, что в аналоговой технике эти оба оп-
ределения идентичны, т.к. при малых уров-
нях сигнала активные усилительные элементы
практически не вносят искажений, потому
как работают на узком участке характерис-
тики, где она практически линейна (за иск-
лючением режима B, дающего значительные
искажения и при большом сигнале). А min
уровень сигнала ограничивается его разли-
чимостью на фоне шумов, т.е. собственно
уровнем шумов.
В digital канале есть единственный не-
устранимый шум, "от природы" - шум кванто-
вания. При этом все остальные шумы - ком-
мутационные, из цепей питания, шумы актив-
ных элементов аналогового тракта, тепловые
шумы, и т.д., видимо, настолько легко уст-
ранимы, что о них можно даже не вспоми-
нать, и вписывать в рекламу заветную цифру
96 дБ... Оставим эти шумы на совести рек-
ламы, и разберемся с шумом квантования.
Возникает он по банальной причине - ко-
нечному количеству ступенек квантования,
определяемого разрядностью цифрового кана-
ла. Т.к. исходный сигнал - непрерывный, а
оцифрованный - дискретный, то всегда су-
ществует ошибка квантования, которая все
время изменяется. После восстановления в
аналоговый сигнал эта ошибка превращается
в шум квантования. Спектр этого шума рас-
положен выше по частоте, чем спектр полез-
ного сигнала, а пик приходиться на частоту
дискретизации. Если этот шум отфильтро-
вать, то получиться полностью идентичный
входному сигнал. Но об этом позже. Пусть у
нас нет никаких фильтров. Тогда согласно
[2] уровень шума квантования определяется
как:
Kш = -(6*N+1.8) [дБ],
где N - число разрядов.
Тогда при N=16 получим Kш=-97.8 дБ, а
при N=8 - Kш=-49.8 дБ
Теперь займемся вторым определением ди-
намического диапазона, реально отражающего
положение вещей.
Положим min амплитуду сигнала в 1 еде-
ницу младшего разряда, и получим следующее
выражение:
D = 6*N [дБ]
При N=16 получим D=96 дБ, а при N=8
имеем D=48 дБ.
Собственно эти цифры обычно и приподно-
сятся. Однако из начальных условий следу-
ет, что на min уровне сигнал принимают од-
нобитовым ! со всеми вытекающими качест-
венными характеристиками...
Т.е. необходимо задаться порогом нели-
нейных искажений. На самом деле в теории
это не так просто, а на практике просто
делаются соответствующие измерения [2].
Намного проще перейти от max допустимых
нелинейных искажений к min допустимому ко-
личеству разрядов. Обычно допускают
Khu=10%, что примерно соответствует 4-раз-
рядному кодированию [2]. Может, это и не-
верно с позиций теории, но зато позволяет
легко оценить динамический диапазон. Хотя
понятия нелинейных искажений и разрядности
квантования не являются синонимичными, од-
нако и то, и другое четко определяет иска-
жения. Следовательно, в теоретическом оп-
ределении, оперирующим max допустимым
Khu.max, можно использовать min допустимое
Nmin. Теперь динамический диапазон можно
оценивать непосредственно количеством раз-
рядом (т.е. используя двоичный логарифм
вместо десятичного):
D2 = N-Nmin = dN [бит]
Приняв Nmin=4, имеем dN = N-4 [бит].
А можно перейти и к десятичному основа-
нию:
D = 6*dN [дБ]
Для N=16 имеем D=72 дБ при Nmin=4 и
D=48 дБ при Nmin=8.
Напоследок хочу сказать, что описанные
выше случаи - идеализированные. На самом
деле в тракте есть еще куча шумов, которые
не так-то просто устранить, и куча источ-
ников нелинейных искажений, начиная с
ЦАП/АЦП и заканчивая аналоговыми усилите-
лями, и даже микрофонами/динамиками...
Просто так в лоб их не возьмешь... Но
это уже не относиться к теории цифровой
обработки сигналов.
Передискретизация.
Что это такое и с чем ее едят - можно
прочитать в SE#2 ([1]), в статье про комп-
ьютерную музыку. Если кратко, передискре-
тизация представляет собой заполнение про-
межутка времени между двумя соседними от-
четами дополнительными отчетами, значения
которых вычисляются интерполяцией в соот-
ветствии с импульсной характеристикой иде-
ального прямоугольного ФНЧ (к сведению -
именно это и есть таинственный фильтр Ко-
тельникова). В простейших случаях можно
использовать обычную линейную интерполя-
цию.
Т.о. передискретизация - это просто
цифровая фильтрация, с повышенной частотой
дискретизации. Необходима она потому, что
в обычных саунд-картах нету на выходе ни-
какого ФНЧ. Если для fkb=ЧЧкГц это почти
нормально, то для 8кГц'овых сэмплов это
выливается в ВЧ-шумы в полосе от ЧкГц до
22кГц. Однако достаточно качественную
фильтрацию даст обычный аналоговый ФНЧ
примерно восьмого-десятого порядка. Так,
для 8 порядка нужно 4 операционных усили-
теля, т.е. всего 1 корпус К1401УД2 (для
стерео - два корпуса). Подобный фильтр со-
бираются сделать и для GS. По исследовани-
ям X-Trade, его частота среза для боль-
шинства сэмплов равна 10-12кГц. Кстати, в
районе 16-18 кГц у большинства нормальных
людей лежит граница слышимости. На TV по-
лоса 1OOГц-1OкГц (15.62SкГц - частота
строк), на FM и аудио-кассетах около
1бкГц... Но, например, музыканты слышат
до 22кГц. Кроме того, есть гипотеза, что
ВЧ-шумы (далеко за 2OкГц) все же восприни-
маются как искажения.
Ладно, пора закругляться. Вообще-то я
хотел еще о паре мулек рассказать. Но ре-
шил пока отложить.
Литература:
1. Spectrum Expert #2.
2. Радио, 1991, N11-12. Звукотехника,
Устройства преобразования аналоговых сиг-
налов.
Other articles: