Сколько децибел в одном бите информации
Перейти к содержимому

Сколько децибел в одном бите информации

  • автор:

Сколько децибел в одном бите информации

Это способ представления данных внутри компьютера и вид, в котором данные передаются по сети различными системами счисления и логикой, используемой в компьютерах.

Двоичное представление данных.

Компьютер — это электромеханическое устройство, состоящее из электрических переключателей, управляемых электрическим током. В зависимости от положения этих переключателей, компьютер производит вычисления и выполняет различные необходимые действия. Поскольку компьютер реагирует на импульсы электрического тока, то цепи компьютера могут обрабатывать два состояния: наличие или отсутствие тока (соответственно 1 и 0).
Компьютер для работы с данными и их хранения использует электронные переключатели — триггеры, которые также могут находиться в двух состояниях: замкнутом и разомкнутом. Компьютеры воспринимают и обрабатывают данные в формате с двумя состояниями (бинарном формате). Единица представляется замкнутым состоянием переключателя или наличием электрического тока, 0 — соответственно разомкнутым переключателем или отсутствием тока. Единица и нуль описывают два возможных состояния электронных компонентов в компьютере и называются двоичными цифрами, или битами.
Американский стандартный код обмена информацией (American standard code for information interchange — ASCII) является наиболее распространенным кодом для представления буквенно-цифровых данных в компьютере. В нем используются двоичные числа для представления символов, которые пользователь печатает на клавиатуре. Когда компьютер пересылает информацию через сеть, то электрические, оптические или радиосигналы передают соответствующие значения: 1 или 0. Каждому символу соответствует уникальная восьмибитовая комбинация для представления данных.

Биты, байты и единицы измерения.

Биты — это двоичные цифры, каждая из которых имеет значение 0 или 1. В компьютере им соответствуют положения переключателей (включен/выключен) или на личие/отсутствие электрического сигнала, светового импульса или радиоволны.

─ Двоичный нуль может быть представлен электрическим напряжением 0 В (Вольт).
─ Двоичная единица может быть представлена электрическим напряжением +5 В.

Компьютеры используют группы двоичных цифр, которые состоят из 8 битов. Такая группа из 8 битов называется байтом. В компьютере 1 байт является минимальной адресуемой ячейкой запоминающего устройства. Ячейка запоминающего устройства содержит значение или один символ данных, например, ASCII код. Общее число комбинаций из восьми переключателей равно 256 (или 28). Поэтому значения байта лежат в диапазоне от 0 до 255. Следовательно, байт — это один из самых важных для понимания принципов работы компьютеров и сетей (табл. 1).
Зачастую в англоязычной литературе возникает путаница с обозначением величин KB и Kb, MB и Mb (Кбайт и Кбит, Мбайт и Мбит). Запомните, что для правильных вычислений с использованием скорости передачи данных необходимо различать килобиты и килобайты. Например, программное обеспечение модемов обычно показывает скорость соединения в килобитах в секунду (например, 45 Кбит/с, или 45 Кbps). В то же время популярные браузеры показывают скорость загрузки файла в килобайтах в секунду. Разная запись означает, что при скорости соединения 45 Кбит/с максимальная скорость загрузки файла будет равна приблизительно 5,6 Кбайт/с. На практике скорость загрузки файла будет меньше за счет разных факторов и служб, которые используют полезную пропускную способность канала. Необходимо также помнить, что размер файлов обычно выражается в байтах, в то время как пропускная способность локальной сети и соединений распределенных сетей в килобитах в секунду (Кбит/с) или мегабитах в секунду (Мбит/с). Необходимо умножить количество байтов в файле на 8, чтобы правильно определить время загрузки файла.

Единица измерения Байты Биты
Бит (b, или бит) 1/8 1
Байт (B, или байт) 1 8
Килобайт (KB, или Кбайт) 1024 (≈ 1000 байтов) 8096 (≈ 8000 битов)
Мегабайт (MB, или Мбайт) ≈ 1 миллион ≈ 8 миллионов
Гигабайт (GB, или Гбайт) ≈ 1 миллиард ≈ 8 миллиардов
Терабайт (TB, или Тбайт) ≈ 1 триллион ≈ 8 триллионов

Таблица 1. Единицы информации .

Рассмотрим часто используемые компьютерные единицы измерения.

— называется наименьший блок данных в компьютере. Бит принимает значение 1 или 0 и является цифрой двоичного формата данных, который используется компьютером для хранения, передачи и обработки данных.

— это единица измерения, которая используется для описания размеров файлов данных на жестком диске компьютера или другом носителе информации; для описания количества данных, переданных через сеть. 1 байт равен 8 битам.

— это 1024 бита, при оценочных вычислениях используется значение в 1000 битов.
— это 1024 байта, при оценочных вычислениях используется значение в 1000 байта.
— равен приблизительно 1 миллиону битов.

— равен 1 048 576 байтов, при оценочных вычислениях используется значение в 1 миллион байтов. Мегабайт иногда сокращенно называют ‘‘мег’’. Объем оперативной памяти в большинстве компьютеров обычно измеряется в мегабайтах. Большие файлы имеют размер порядка нескольких мегабайт.

равен приблизительно 1 миллиарду байтов. Иногда используется сокращенное название ‘‘гиг’’. Емкость накопителей на жестких дисках в большинстве персональных компьютеров измеряется в гигабайтах.

— равен приблизительно 1 триллиону байтов. Емкость накопителей на жестких дисках в высокопроизводительных системах измеряется в терабайтах.

— это одна тысяча битов в секунду. Распространенная единица измерения количества передаваемых данных через сетевое соединение.

— это одна тысяча байтов в секунду. Распространенная единица измерения количества передаваемых данных через сетевое соединение.

— это один миллион битов в секунду. Распространенная единица измерения количества передаваемых данных через сетевое соединение. Обычное соединение технологии Ethernet работает со скоростью 10 Мбит/с.

— это один миллион байтов в секунду. Распространенная единица измерения количества передаваемых данных через сетевое соединение.

— это один миллиард битов в секунду. Распространенная единица измерения количества передаваемых данных через сетевое соединение. Соединение 10 Гбит/с Ethernet работает со скоростью 10 Гбит/с.

— это один триллион битов в секунду. Распространенная единица измерения количества передаваемых данных через сетевое соединение. Некоторые высокоскоростные магистральные узлы сети Internet работают на скорости более 1 Тбит/с.

— это единица измерения частоты. Описывает скорость изменения состояния периодического процесса в звуковых волнах, переменном токе или периодических процессах, в которых за время, равное 1 с, выполняется один цикл процесса (период).

— равен миллиону периодов в секунду. Распространенная единица измерения скорости работы микросхем, таких, как компьютерные микропроцессоры. Некоторые беспроводные телефоны работают в том же диапазоне частот, что и процессоры (например, 900 МГц).

— равен тысяче миллионов, или миллиарду (1 000 000 000) периодов в секунду. Это распространенная единица измерения скорости микросхем, таких, как компьютерные микропроцессоры. Некоторые беспроводные телефоны и локальные сети работают в этом диапазоне (например, беспроводные сети стандарта 802.11b работают на частоте 2,4 ГГц).

Процессоры персональных компьютеров постоянно становятся все более быстрыми. Микропроцессоры, которые использовались в 1980-х годах, в основном работали на частоте менее 10 МГц (у оригинального компьютера корпорации IBM частота процессора составляла 4,77 МГц). Используемые в настоящее время процессоры персональных компьютеров достигли скорости свыше 3 ГГц. Ведутся разработки более высокоскоростных процессоров. Поскольку в основе аппаратной логики компьютеров применяются переключатели, бинарные цифры и бинарные числа являются для него ‘‘родным языком’’. Люди используют десятичную систему в повседневной жизни, и им тяжело запомнить длинные последовательности нулей и единиц, которые использует компьютер. Следовательно, компьютерные бинарные числа необходимо переводить в десятичные. Иногда двоичные числа требуется перевести в шестнадцатеричные. Они используются для записи большого количества двоичных цифр с помощью нескольких шестнадцатеричных, что позволяет их запоминать.

Двоичный и десятичный эквиваленты шестнадцатеричных цифр.
— свернуть+ развернуть

+ посмотреть весь список

Десятичное Шестнадцатеричное Двоичное Десятичное Шестнадцатеричное Двоичное
0 0 0 128 80 10000000
1 1 1 129 81 10000001
2 2 10 130 82 10000010
3 3 11 131 83 10000011
4 4 100 132 84 10000100
5 5 101 133 85 10000101
6 6 110 134 86 10000110
7 7 111 135 87 10000111
8 8 1000 136 88 10001000
9 9 1001 137 89 10001001
10 a 1010 138 8a 10001010
11 b 1011 139 8b 10001011
12 c 1100 140 8c 10001100
13 d 1101 141 8d 10001101
14 e 1110 142 8e 10001110
15 f 1111 143 8f 10001111
16 10 10000 144 90 10010000
17 11 10001 145 91 10010001
18 12 10010 146 92 10010010
19 13 10011 147 93 10010011
20 14 10100 148 94 10010100
21 15 10101 149 95 10010101
22 16 10110 150 96 10010110
23 17 10111 151 97 10010111
24 18 11000 152 98 10011000
25 19 11001 153 99 10011001
26 1a 11010 154 9a 10011010
27 1b 11011 155 9b 10011011
28 1c 11100 156 9c 10011100
29 1d 11101 157 9d 10011101
30 1e 11110 158 9e 10011110
31 1f 11111 159 9f 10011111
32 20 100000 160 a0 10100000
33 21 100001 161 a1 10100001
34 22 100010 162 a2 10100010
35 23 100011 163 a3 10100011
36 24 100100 164 a4 10100100
37 25 100101 165 a5 10100101
38 26 100110 166 a6 10100110
39 27 100111 167 a7 10100111
40 28 101000 168 a8 10101000
41 29 101001 169 a9 10101001
42 2a 101010 170 aa 10101010
43 2b 101011 171 ab 10101011
44 2c 101100 172 ac 10101100
45 2d 101101 173 ad 10101101
46 2e 101110 174 ae 10101110
47 2f 101111 175 af 10101111
48 30 110000 176 b0 10110000
49 31 110001 177 b1 10110001
50 32 110010 178 b2 10110010
51 33 110011 179 b3 10110011
52 34 110100 180 b4 10110100
53 35 110101 181 b5 10110101
54 36 110110 182 b6 10110110
55 37 110111 183 b7 10110111
56 38 111000 184 b8 10111000
57 39 111001 185 b9 10111001
58 3a 111010 186 ba 10111010
59 3b 111011 187 bb 10111011
60 3c 111100 188 bc 10111100
61 3d 111101 189 bd 10111101
62 3e 111110 190 be 10111110
63 3f 111111 191 bf 10111111
64 40 1000000 192 c0 11000000
65 41 1000001 193 c1 11000001
66 42 1000010 194 c2 11000010
67 43 1000011 195 c3 11000011
68 44 1000100 196 c4 11000100
69 45 1000101 197 c5 11000101
70 46 1000110 198 c6 11000110
71 47 1000111 199 c7 11000111
72 48 1001000 200 c8 11001000
73 49 1001001 201 c9 11001001
74 4a 1001010 202 ca 11001010
75 4b 1001011 203 cb 11001011
76 4c 1001100 204 cc 11001100
77 4d 1001101 205 cd 11001101
78 4e 1001110 206 ce 11001110
79 4f 1001111 207 cf 11001111
80 50 1010000 208 d0 11010000
81 51 1010001 209 d1 11010001
82 52 1010010 210 d2 11010010
83 53 1010011 211 d3 11010011
84 54 1010100 212 d4 11010100
85 55 1010101 213 d5 11010101
86 56 1010110 214 d6 11010110
87 57 1010111 215 d7 11010111
88 58 1011000 216 d8 11011000
89 59 1011001 217 d9 11011001
90 5a 1011010 218 da 11011010
91 5b 1011011 219 db 11011011
92 5c 1011100 220 dc 11011100
93 5d 1011101 221 dd 11011101
94 5e 1011110 222 de 11011110
95 5f 1011111 223 df 11011111
96 60 1100000 224 e0 11100000
97 61 1100001 225 e1 11100001
98 62 1100010 226 e2 11100010
99 63 1100011 227 e3 11100011
100 64 1100100 228 e4 11100100
101 65 1100101 229 e5 11100101
102 66 1100110 230 e6 11100110
103 67 1100111 231 e7 11100111
104 68 1101000 232 e8 11101000
105 69 1101001 233 e9 11101001
106 6a 1101010 234 ea 11101010
107 6b 1101011 235 eb 11101011
108 6c 1101100 236 ec 11101100
109 6d 1101101 237 ed 11101101
110 6e 1101110 238 ee 11101110
111 6f 1101111 239 ef 11101111
112 70 1110000 240 f0 11110000
113 71 1110001 241 f1 11110001
114 72 1110010 242 f2 11110010
115 73 1110011 243 f3 11110011
116 74 1110100 244 f4 11110100
117 75 1110101 245 f5 11110101
118 76 1110110 246 f6 11110110
119 77 1110111 247 f7 11110111
120 78 1111000 248 f8 11111000
121 79 1111001 249 f9 11111001
122 7a 1111010 250 fa 11111010
123 7b 1111011 251 fb 11111011
124 7c 1111100 252 fc 11111100
125 7d 1111101 253 fd 11111101
126 7e 1111110 254 fe 11111110
127 7f 1111111 255 ff 11111111

Наиболее просто воспринимать шестнадцатеричные числа, как сокращенную запись двоичных. Она сокращает 8-битовое число до двух шестнадцатеричных цифр, при этом более легко воспринимаются длинные строки бинарных цифр и сокращается место, необходимое для их записи. Помните, что шестнадцатеричным числам могут предшествовать два символа 0x, которые не используются в вычислениях, и число 5D может записываться как 0x5D.
Для преобразования шестнадцатеричных чисел в двоичные необходимо просто развернуть каждую шестнадцатеричную цифру в ее четырехбитовый эквивалент.

Услуги для Вас!

Вы всегда можете задать вопрос техническому специалисту, заполнив форму:

Цифровой аудиоформат 24/192, и почему в нем нет смысла. Часть 3 [Перевод]

Прим. перев.: Это перевод предпоследней части развернутой статьи Кристофера «Монти» Монтгомери (создателя Ogg Free Software и Vorbis) о том, почему обывателям нет никакого смысла хранить и воспроизводить музыку в формате 24/192 (и о том, кому действительно имеет смысл работать с 24-битным аудио).

Вернемся к вашим ушам

Мы обсудили диапазон частот, который способны распознавать уши, но что насчет динамического диапазона (это диапазон от наиболее тихого звука до самого громкого)?

Один из способов точно определить динамический диапазон – это снова посмотреть на кривые болевого порога и порога слышимости. Расстояние от наивысшей точки кривой болевого порога до самой низкой точки кривой слышимости составляет около 140 децибел – для молодого и здорового человека. Правда, слушать звук на такой громкости долго не получится, поскольку +130 дБ уже достаточно, чтобы повредить слух за несколько минут или даже секунд. Для справки скажу, что громкость отбойного молотка на расстоянии одного метра составляет 100-110 дБ.

Интересный момент: порог слышимости увеличивается с возрастом и потерей слуха, а болевой порог с возрастом уменьшается. Волосковые клетки улитки в ухе захватывают только часть всего диапазона в 140 дБ, поэтому мускулатура уха непрерывно регулирует количество звука, достигающего улитку, путем сдвига слуховых косточек – как радужка регулирует количество света попадающего в глаз [9]. Механизм костенеет с возрастом, что ограничивает слуховой динамический диапазон и снижает эффективность защитных механизмов.

Окружающий шум

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

Самое слабое звуковое давление, которое способен воспринимать человек, составляет -8 дБ SPL [11]. По шкале А для измерения уровня шума, гул от лампы накаливания в 100 Вт на расстоянии одного метра составляет около 10 дБ SPL, что на 18 дБ громче. Гудение лампы будет намного громче, если подключить её к реостату.

Как пример звукового давления в 20 дБ SPL (что на 28 дБ громче самого тихого звука) часто приводится пустая студия звукозаписи или шумоизолированная комната. Найти место тише достаточно сложно, поэтому вы никогда не слышали шум, издаваемый лампочкой.

Динамический диапазон 16 бит

16-битная линейная импульсно-кодовая модуляция имеет динамический диапазон в 96 дБ, в соответствии с наиболее общим способом подсчета, когда динамический диапазон вычисляется как (6*кол-во бит) дБ. Многие верят, что 16-битное аудио не передает произвольные звуки тише, чем -96 дБ. Это большое заблуждение.

Ниже я привел две ссылки на 16-битные аудиофайлы. Один содержит звук частотой 1 кГц, при громкости 0 дБ (где 0 дБ – самый громкий звук), а другой – также звук частотой 1 кГц, с громкостью -105 дБ.

  • Сэмпл 1: Звук 1 кГц при 0 dB (16 бит / 48 кГц WAV)
  • Сэмпл 2: Звук 1 кГц при -105 dB (16 бит / 48 кГц WAV)

Выше изображен график спектрального анализа звука громкостью -105 дБ перекодированный в формат 16/48 с помощью ИКМ. Громкость 16-битного аудио с применением ИКМ очевидно ниже 96 дБ, иначе -105 дБ нельзя было бы представить или услышать. Как такое возможно? Закодировать этот сигнал без искажений так, чтобы он был значительно выше уровня шума, в то время как его амплитуда занимает треть бита? Часть загадки разрешается за счет правильного псевдослучайного сигнала, что как бы делает шум квантования независимым от входного сигнала. Косвенно, это означает, что такой способ квантования не вносит искажений, а только некоррелированный шум. Это, в свою очередь, означает, что мы можем кодировать сигналы с произвольной битовой глубиной, включая сигналы с пиковыми амплитудами, менее чем одним битом [12]. Тем не менее, псевдослучайный сигнал не меняет того факта, что если уровень сигнала опускается ниже уровня шума, то он практически исчезает. Как же звук громкостью -105 дБ по-прежнему различим на фоне шума в -96 дБ? Ответ таков: мы неверно представляем характеристики шума в -96 дБ. Мы используем неприменимое определение динамического диапазона. Формула (6*кол-во бит) дБ дает нам среднеквадратичный шум всей полосы сигнала, а каждая волосковая клетка чувствительна только к узкому спектру от всей полосы частот. Поскольку каждая волосковая клетка слышит только часть общей энергии шумов, то уровень шума, принимаемый клеткой, будет намного ниже, чем весь диапазон частот громкостью -96 дБ. 16-битное аудио может обладать более глубокой модуляцией, чем 96 дБ, если использовать правильный псевдо-сигнал, который смещает энергию шума квантования в зону, где его сложнее расслышать. На практике [13] 16-битное аудио может достигать громкости в 120 дБ. 120 дБ – это больше, чем разница между звуком комара в комнате и отбойным молотком в футе от вас. Или разница между пустой звуконепроницаемой комнатой и достаточно громким звуком, который способен повредить слух в секунды. 16 битов хватает, чтобы хранить весь слышимый спектр, и будет хватать всегда. Соотношение сигнал-шум Стоит сделать небольшое замечание о том, что соотношение сигнал/шум для уха меньше, чем динамический слуховой диапазон. Внутри заданной критической полосы, обычно, сигнал/шум составляет лишь 30 дБ. Отношение сигнал/шум не достигнет рамок диапазона слышимости, даже при условии расширения полосы частот. Это гарантирует, что формат 16 бит ИКМ обеспечивает разрешающую способность сверх необходимого. Также стоит отметить, что увеличение битовой глубины звука с 16 бит до 24 не увеличивает разрешающей способности и «качество» звука. Это всего лишь расширит динамический диапазон – расстояние между самым тихим и самым громким звуком, за счет снижения уровня шума. Как бы то ни было, 16 бит уже обеспечивают уровень шума, который мы не в состоянии услышать. Когда 24 бита имеют значение? Профессионалы используют для записи музыки 24-битные сэмплы [14] из-за меньшего уровня шумов и по соображениям удобства. 16 бит достаточно, чтобы охватить весь слышимый диапазон с запасом. Но он не охватывает весь возможный диапазон аудио-оборудования. Основная причина использования 24 бит во время записи – это избежание ошибок. Вместо того, чтобы осторожничать, выравнивая 16 бит по центру диапазона, рискуя отрезать верхние частоты или добавить шума, 24 бита позволяют оператору установить примерный уровень и более не думать об этом. Промах на пару бит не влечет за собой никаких последствий, а эффекты, которые динамически сжимают записанный спектр, имеют большее пространство для маневра. Также инженеру требуется большее 16 бит при смешении сигналов и мастеринге. Современные рабочие процессы могут включать, буквально, тысячи эффектов и операций. Шум квантования и уровень собственных шумов 16-битной выборки могут быть незаметны при воспроизведении, но при увеличении такого шума в несколько тысяч раз, он сразу становится заметным, а 24-битный формат сохраняет накапливающийся шум на очень низком уровне. После того, как музыка готова к записи на диски, нет никаких причин оставлять больше чем 16 бит. Тесты на прослушивание Понимание живет там, где встречаются теория и реальность. Вопрос разрешается только тогда, когда они обе приходят в согласие. Эмпирические данные, полученные из тестов на прослушивание позволили судить, что 44.1 кГц/16 бит обеспечивает максимально возможное качество воспроизведения. Множество контролируемых тестов подтвердили это, но я рекомендую недавнюю работу «Слышимость стандарта CD, аналогово-цифровое и цифро-аналоговое преобразование, использованное в воспроизведении аудио с высокой разрешающей способностью», проделанную местными ребятами из Бостонского аудио-сообщества. К сожалению, для доступа к полному тексту работы нужно быть членом Общества звукоинженеров. Тем не менее, эта работа широко обсуждалась во многих статьях и на форумах, авторами, которые туда [в сообщество] входят. Вот несколько ссылок:

  • Новая частота дискретизации: насколько высоко качество современных CD? [ссылка]
  • Ветка форума Hydrogen Audio [ссылка]
  • Справочная информация со страницы Бостонского-аудио сообщества, включая перечень оборудования и список сэмплов [ссылка]

В ходе этой работы проводился эксперимент: были отобраны испытуемые, которые выбирали между записями на высококачественных аудио DVD/SACD, подобранными приверженцами звука высокой четкости, чтобы показать его превосходство, и теми же записями, но в CD формате 16/44.1 кГц. Слушателям нужно было выявить какие-либо различия между ними, используя методологию случайного выбора. Бостонское аудио-сообщество проводило эксперимент с использованием высокопрофессионального оборудования в шумоизолированной среде, как с обычными, так и с тренированными слушателями. Среди 554 попыток, испытуемые выбирали «правильно» в 49.8% случаев. Другими словами, они пытались угадать. Ни один слушатель в течение всего теста не смог опознать, которая из записей была в формате 16/44.1, а какая была звуком высокой четкости [15]. А 16-битный сигнал даже не был сглажен! В еще одном недавнем исследовании [16] изучалась возможность расслышать ультразвук, как предполагали более ранние исследования. Тест был построен таким образом, чтобы максимизировать возможность распознавания, для этого были добавлены интермодуляционные составляющие в места, где они были бы наиболее слышны. Было установлено, что нельзя услышать ультразвуковые волны… но оказалось, что искажения от интермодуляционных составляющих распознать можно. Эта статья породила череду дальнейших исследований, результаты большей части которых противоречили друг другу. Некоторые неясности были разрешены, когда обнаружилось, что ультразвук может вызывать большее количество интермодуляционных искажений в усилителях мощности, чем ожидалось. Например, Дэвид Гризингер (David Griesinger) провел этот эксперимент [17] и обнаружил, что его акустическая установка не вносила заметных интермодуляционных искажений, но зато их вносил усилитель. Читатель, будь осторожен Очень важно не вырывать отдельные работы или «комментарии экспертов» из контекста или брать их только с ресурсов, интересных вам. Не все статьи полностью соглашаются с этими результатами (а несколько даже не соглашаются с большей частью), поэтому легко наткнуться на мнение меньшинства, которое может доказывать любую точку зрения, которую вы можете вообразить. Несмотря ни на что, статьи и ссылки, приведенные выше, представляют большую важность и серьезный объем знаний и экспериментальных записей. Нет ни одной известной статьи, которая бы прошла испытание временем и поставила бы под сомнение состоятельность этих результатов. Споры происходят только среди потребителей и внутри сообществ меломанов. Во всяком случае, количество неоднозначных, незаконченных и откровенно несостоятельных экспериментальных результатов, доступных в поиске Google, подчеркивает, насколько сложно провести точное и объективное исследование. Различные ученые ищут всякие мелочи, требуют проводить строгий статистический анализ, чтобы выявить подсознательные выборы, которые непреднамеренно делали испытуемые. Таким образом, мы скорее пытаемся доказать что-то, чего в принципе не существует, что делает положение вещей еще сложнее. Доказательство нулевой гипотезы сродни разрешению проблемы остановки – это нереально. Единственный вариант подтвердить что-то в этом случае – собрать достаточно много эмпирических данных. Несмотря на это, работы, подтверждающие нулевую гипотезу – это действительно серьезное доказательство; подтвердить «не слышимость» экспериментально гораздо сложнее, чем обсуждать её. Неизвестные ошибки в тестовых методиках и оборудовании почти всегда дают ложноположительные результаты (из-за случайного внесения звуковых различий), а не ложноотрицательные. Если профессиональные исследователи с таким трудом проводят исследование отдельных аудио-различий, то вы можете представить, как это трудно для любителей. Как (ненарочно) испортить результаты звукового эксперимента Самый «лучший» комментарий, который я слышал от людей, верящих в высококачественное аудио (перефразировано): «Я слышал высококачественный звук лично, и улучшение качества звучания очевидно. Вы серьезно хотите, чтобы я не верил своим ушам?» Разумеется, вы можете верить собственным ушам. Но дело в том, что это мозг чересчур доверчив. Я не пытаюсь кого-то оскорбить, это проблема всех людей. Предвзятое мнение, эффект плацебо и двойное слепое тестирование Любое испытание, где слушатель может опознать два варианта по любым признакам, кроме как на слух, обычно приводит к результатам, которые слушатель ожидал заранее. Это называется предвзятостью и имеет схожесть с эффектом плацебо. Это означает, что люди «слышат» различия, из-за подсознательных сигналов и предпочтений, которые не имеют отношения к звуку – это как предпочесть более дорогой (или более привлекательный) усилитель более дешевому. Человеческий мозг устроен таким образом, чтобы подмечать особенности и различия там, где их нет. И эту особенность нельзя отключить, просто попросив человека принимать объективные решения – это происходит на подсознательном уровне. Предвзятость нельзя ликвидировать скепсисом. Контролируемые эксперименты доказывают, что осознание принятия предвзятых решений лишь усиливает эффект! Тест, во время которого не было устранено влияние предвзятых суждений, ничего не стоит [18]. При одностороннем слепом тестировании слушатель ничего не знает заранее о вариантах и не получает никакой обратной связи в ходе испытания. Такое тестирование лучше прямого сравнения, но не исключает предвзятости экспериментатора. Тот, кто проводит тест, может непреднамеренно повлиять на его ход или передать свою собственную предвзятость слушателю неосторожными репликами (например: «Вы уверены, что это то, что вы слышите?», язык тела также может указать на «неправильный» выбор, и заставить сомневаться, и так далее). Влияние предвзятости человека, проводящего тест, на результаты слушателя также было подтверждено экспериментально. Двойные слепые тесты – это стандарт, в таких тестах ни экспериментатор, ни слушатель не получают какой либо информации о содержании теста и текущих результатах. Наиболее известный пример – это ABX-тесты, проводимые компьютером, которые есть в свободном доступе – их можно запустить на вашем собственном ПК [19]. ABX-тесты подразумевают минимальное количество результатов слухового теста, до достижения которых они считаются неполноценными. Имеющие хорошую репутацию аудио-форумы, такие как Hydrogen Audio, часто запрещают любые обсуждения результатов слуховых тестов, если они не соответствуют минимальным требованиям объективности [20]. Выше изображено рабочее окно Squishyball – простой командной строки инструмента ABX, запущенного в xterm. Лично я не проводил ни одного качественного сравнительного теста в процессе исследований (неважно, насколько серьезных) без применения ABX. Наука есть наука, тут нет места нерадивости. Проделки громкости Человеческое ухо может сознательно различать амплитудные различия громкости примерно в 1 дБ, и эксперименты показывают возможность определения различий в пределах 0,2 дБ на подсознательном уровне. Люди практически повсеместно считают громкий звук лучше, и 0,2 дБ достаточно, чтобы человек выказал предпочтение. По результатам любого сравнения, в котором неаккуратно выставлены амплитуды, будет наблюдаться явно выраженное предпочтение громкому звуку, даже если различия в громкости малы для того, чтобы осознать это. Продавцы аудио знают об этом трюке уже очень давно. Профессиональный стандарт тестирования требует различия амплитуд на величину, не превышающую 0,1 дБ. Это часто требует использования осциллографа или анализатора сигналов, потому что подгадывать и крутить ручки, пока звук не совпадет, достаточно нерационально. Отсечение сигнала Отсечение сигнала – это еще одна ошибка (иногда проявляющаяся только с течением времени), которую легко допустить. Может оказаться, что несколько обрезанных сэмплов и их производные сигналы сравниваются с необрезанным сигналом. Опасность отсечения части сигнала особенно разрушительна в тестах, которые дискретизируют, передискретизируют цифровые сигналы и управляют ими «на лету». Допустим, мы хотим сравнить качество звучания сигналов с частотой дискретизации 48 кГц и 192 кГц. Обычный способ провести такой эксперимент – обеспечить субдискретизацию из 192 кГц в 48 кГц, а затем снова провести повышающую дискретизацию до 192 кГц, после чего сравнить два этих сигнала в ABX-тесте [21]. Такой порядок позволяет нам исключить любую возможность изменения параметров оборудования или подмены сэмплов, влияющую на результаты. Мы можем использовать тот же ЦАП для воспроизведения обоих сэмплов и переключаться между ними без каких-либо изменений в режиме работы оборудования. К сожалению, большинство сэмплов используют весь цифровой диапазон. Невнимательное применение передискретизации часто может привести к случайному обрезанию звука. Очень важно или следить за отсечением (и отбрасывать обрезанный звук), или избегать его, применяя различные методы: например, ослабление (аттенуацию) звука. Другой носитель – другая мастер-копия Я просмотрел несколько статей и блогов, которые утверждали о достоинствах 24 бит или 96/192 кГц, путем сравнения CD и аудио-DVD с «одинаковыми» записями. Такое сравнение несостоятельно, потому что для этих записей используются разные мастер-диски. Непреднамеренные сигналы Непреднамеренные аудио-сигналы практически неизбежны в старых аналоговых и гибридных цифро-аналоговых тестовых установках. Очевидно, что цифровые установки могут полностью устранить проблему в некоторых формах тестирования, но могут и увеличить количество потенциальных ошибок программного обеспечения. Такие ограничения и баги уже достаточно давно дают ложноположительные результаты в тестированиях [22]. Статья «Цифровые испытания – больше о ABX-тестировании» рассказывает увлекательную историю об удивительном тестировании слуха, проведенном в 1984 году, призванном опровергнуть авторитет меломанов того времени, которые поначалу утверждали, что CD уступает винилу. Статья касается не столько результатов испытания (я подозреваю, вы сможете догадаться, какими они были), сколько хаотичности мира, вовлеченного в проведение такого теста. Например, ошибка со стороны организаторов теста случайно показала, что приглашенный эксперт по прослушиванию делал выбор, основываясь не на качестве звучания, а скорее на различных потрескиваниях, которые производили реле коммутаторов. Анекдотические истории не заменяют реальные данные, но эта история показывает, с какой легкостью скрытые недостатки могут влиять на слуховые тесты. Некоторые из убеждений меломанов тоже довольно забавны, например кто-то надеется, что многие из современных исследований будут считаться глупыми через 20 лет. Примечания к Части 39. Все знают это чувство, когда перепонки «разжимаются» после выключения громкой музыки. 10. Несколько отличных графиков можно найти на сайте HyperPhysics. 11. 20 мПа обычно принимаются за 0 дБ для удобства измерения. Это приблизительно равно порогу слышимости на частоте 1 кГц. На частотах от 2 до 4 кГц ухо настолько же чувствительно как на 8 дБ. 12. В приведенной ниже статье описано лучшее объяснение сглаживания, что я встречал, хотя она [статья] больше о сглаживании изображений. Но первая половина охватывает теорию и практику сглаживания в аудио, перед тем как перейти к теме изображений. Кэмерон Николас Кристов, статья «Оптимальное сглаживание и ограничение шума на изображениях». 13. Инженеры, занятые в цифровой обработке сигналов, могли заметить, как это сделал мой всезнающий соотечественник, что 16-битное аудио, в теории, может иметь бесконечный динамический диапазон для чистого звука, если вы воспользуетесь бесконечным рядом Фурье, чтобы преобразовать его. Эта концепция очень важна для радиоастрономии. Хотя работа уха не сильно отличается от преобразования Фурье, его разрешение относительно ограничено. Это накладывает ограничение на максимально возможную битовую глубину 16-битных сигналов. 14. В производстве цифровой музыки используют 32-битные числа с плавающей точкой, потому что это очень удобно для современных процессоров, и потому что это полностью устраняет вероятность того, что случайное обрезание останется незамеченным и погубит композицию. 15. Несколько читателей хотели узнать как тест Майера и Морана в 2007 году мог дать нулевой результат, если ультразвук может вызывать интермодуляционные искажения? Должно быть очевидно, что «мог» и «иногда» не то же самое что «смог» и «всегда». Интермодуляционные искажения от ультразвуковых волн могут появиться, а могут и не появиться в любой системе, при любом наборе условий. Нулевой результат Майера и Морана означает, что интермодуляционные искажения были неслышны на системах, которые они использовали во время теста. Вниманию читателей предлагается ознакомиться с простым тестом на определение интермодуляционных искажений, и определить интермодуляционный потенциал их собственного оборудования. 16. Кару и Шого (Karou and Shogo), статья «Определение порога для звука, частотой выше 22кГц» (2001). Материал номер 5401, представленный на 110 собрании 12-15 мая 2001 года в Амстердаме. 17. Дэвид Грезингер, статья «Восприятие средних частот и интермодуляционные искажения высоких частот в динамиках, и их взаимодействие с аудиозаписями высокого разрешения». 18. Со времени публикации несколько комментаторов отправили мне похожие версии одного анекдота (перефразировано): «Я как-то слушал какие-то наушники/ усилители/ записи ожидая результат А, но был очень удивлен, когда пришел к результату Б! Доказано: предвзятость – это чушь!» Я могу сказать две вещи. Во-первых, предвзятость суждения не заменяет все верные результаты на неверные. Она склоняет результаты в труднопредсказуемом направлении на неизвестную величину. Как вы можете утверждать, что верно, а что – нет, наверняка, если тест был сфальсифицирован вашим подсознанием? Скажем, вы ожидали услышать большую разницу, но были удивлены, услышав малую разницу. Что если там не было разницы совсем? Или разница есть, но будучи осведомлённым о возможной предвзятости, ваш благонамеренный скептицизм скомпенсировал ваше мнение? Или, может быть, вы были совершенно правы? Объективное тестирование, например ABX, устраняет все эти неопределенности. Во вторых: «Вы думаете, что вы не судите предвзято? Отлично! Докажите это!» Значимость объективного теста заключается не только в его способности убедить нас, но и в способности убедить в этом других. Заявления требуют доказательств. Чрезвычайные заявления требуют экстраординарных доказательств. 19. Наверно, самые простые инструменты для ABX-тестирования:

  • Foobar2000 с ABX-плагином
  • Squishyball, инструмент командной строки Linux, которым пользуемся мы в Xiph

20. На Hydrogen Audio, аббревиатура TOS8 (objective testing requirement) обозначает необходимое условие тестирования, цифра 8 обозначает восьмой пункт условий предоставления услуг. 21. Принято считать, что передискретизация наносит непоправимый вред сигналу. Это совсем не так. По крайней мере, до тех пор, пока кто-то не допустит ошибку, например, обрезав сигнал. Субдискретизированный, а потом дискретизированный снова сигнал будет неотличим от оригинала. Это обычный тест, используемый для установки более высоких параметров дискретизации, что не обязательно. 22. Это, может быть, не связано напрямую со звуком, но… нейтрино что, быстрее скорости света, серьезно? [Заключительная часть]

Эту статью прочитали 49 038 раз
Статья входит в разделы: Интересное о звуке

Поделиться материалом:

24 бита: заблуждения

24 бита: заблуждения

В последнее десятилетие все больше и больше музыки стало доступно в таких цифровых форматах высокой четкости (HD), как 24-бита 192 кГц (файлы для загрузки), 24-бита 192 кГц потоковые MQA и DSD.Все чаще звучат разговоры о разработке нового 32-битного стандарта 384 кГц для музыки в формате HD. Самое интересное, что не все согласны с тем, что большая разрядность и более высокая частота дискретизации — это хорошо.

Эта статья объяснит математику и физику цифровой записи и музыкального воспроизведения с точки зрения непрофессионала, с тем чтобы вы сами могли решить, является ли это прогрессом в цифровом аудио или просто маркетинговым безумием.

Если вы не склонны верить утверждениям, содержащимся в этой статье и противоречащим многим рекламным заявлениям, мифам и легендам в аудиофильской индустрии, не стесняйтесь проверять ссылки на материалы в конце статьи, написанные такими инженерами, как Dan Lavry и компаниями, которые производят электронику, используемую в студиях звукозаписи, таких как Antelope Audio.

Если вы не хотите разбираться со множеством технических данных, вы можете сразу перейти к выводам, где я затронул все основные моменты. А также вы также можете обратиться к другой моей статье на тему « DSD и PCM: Мифы и правда».

Биты, байты и цифровые слова:

Так почему же же 24-битное преобразование стало новым стандартом?

Когда цифровые данные передаются и обрабатываются, они перемещаются как байты, а не как отдельные биты. Байт содержит 8 бит, а байт известен как цифровое слово. Вот почему все в цифровом мире делится на 8. Таким образом,16 бит равны2 байтам и 24 бита равны 3 байтам. Соответственно 16 бит и 24 бита стали стандартом, потому что каждый из них представляет собой цифровое слово.

Историческая справка: 16-битный формат существовал задолго до того, как 16-битные цифро-аналоговые преобразователи (ЦАП) стали коммерчески доступными. То же самое относится и к 24-битному формату.

Частота дискретизации и битовая разрядность:

Процесс преобразования аналоговых звуковых волн в цифровой вид известен как «квантование», которое часто представляется в виде точек, нанесенных на ось XY. Горизонтальная ось X представляет собой время или частоту дискретизации, а вертикальная ось Y амплитуду или битовую разрядность. На графике ниже форма белой волны представляет квантованный музыкальный сигнал, а зеленый шаговый шаблон, наложенный на форму белой волны, представляет квантованные значения.

24 бита: заблуждения, изображение №1

Частота дискретизации — это частота, на которой дискретизируется амплитуда аналоговой звуковой волны. Частота дискретизации 44,1 кГц, применяемая для компакт-дисков, дискретизирует амплитуду музыки 44100 раз в секунду. Частота дискретизации 96 кГц, используемая в 7.1-канальном аудио, встроенном в DVD и Blu-Ray, дискретизирует амплитуду 96000 раз в секунду. А частота дискретизации 192 кГц, используемая в музыкальных файлах HD и MQA, дискретизирует амплитуду 192000 раз в секунду.

Битовая разрядность (или битовая глубина) понимается как число шагов, на которые амплитуда аналоговой звуковой волны делится в каждой выборке. 16-битная запись имеет 65 536 шагов, 20-битная запись — 1 048 576 шагов, а 24-битная запись -16 777 216 шагов. Да, вы правильно прочитали: 24-битная запись имеет 256 раз больше, чем 16-битная. Больше в 256 раз. Разве это не кажется слишком большой цифрой?

Чем больше бит и/или чем выше частота дискретизации, используемая при квантовании, тем выше теоретическое разрешение аудио. Таким образом, 16-битный CD Red Book с частотой 44,1 кГц имеет 28 901 376 потенциальных точек выборки каждую секунду (44 100 x 65 536). 20-битная запись с частотой 96 кГц имеет 1 006 632 900 потенциальных точек выборки каждую секунду (96 000 x 1 048 576).

Это означает, что 20-битная запись 96 кГц имеет разрешение примерно в 33 раза большее, чем 16-битная 44,1 кГц, а 24-битная запись 192 кГц в 256 раз больше. Согласитесь, немалая разница.

Так почему же записи в формате HD звучат лишь немногим лучше, чем записи в 16-бит 44,1 кГц? Позже в этой статье я объясню разницу между теоретическим и фактическим разрешением.

Динамический диапазон и битовая разрядность:

Динамический диапазон — это разница в громкости между самым тихим и самым громким пассажем, обычно измеряемая в децибелах (дБ).

• 16-битные CD- диски Red Book имеют динамический диапазон более 96 дБ.

• 20-битная цифровая мастер-лента имеет динамический диапазон более 120 дБ.

• Современные 24-битные HD форматы имеют динамический диапазон более 144 дБ.

Но подождите, разве фоновый шум в тихой комнате не составляет 30 дБ?

Итак, на самом деле вы не можете услышать разницу между динамическим диапазоном 16-битной записи и 20-битной записи, если вы не увеличите громкость достаточно высоко, выше фонового шума в 30 дБ, что приведет к необратимой потере слуха. А прослушивание динамического диапазона 24-битной записи (144 дБ) на самом деле изначально может привести к необратимой потере слуха.

Так с какой стати на земле создали цифровой формат записи музыки, который даже нельзя слушать.

Позже в этой статье я объясню, как использование безумно высокой битовой разрядности и частоты дискретизации, значительно превышающей диапазон человеческого слуха, используется во время процесса редактирования, микширования и мастеринга для снижения шума в коммерческих записях значительно более низкого разрешения, которые мы слушаем.

Для справки. Вот несколько примеров динамического диапазона, которые большинство из нас может представить:

• Звук комара, летящего в 3 метрах, составляет 0 дБ.

• Гул лампы накаливания на расстоянии 1 метра составляет 10 дБ.

• Фоновый шум в тихой студии звукозаписи составляет 20 дБ.

• Фоновый шум в обычной тихой комнате составляет около 30 дБ.

• Ранняя аналоговая мастер-лента имела динамический диапазон всего 60 дБ.

• Лонгплей формата microgroove имеют динамический диапазон 65 дБ.

• Dolby увеличил динамический диапазон аналоговой мастер-ленты до 90 дБ.

• Звук отбойного молотка на расстоянии 1 метра составляет 110 дБ.

• Звук полного оркестра на расстоянии 1 метра составляет 120 дБ.

• Громкость более 130 дБ вызывает непоправимую потерю слуха.

• Звук реактивного самолета при взлете составляет 140 дБ.

Конечно, динамический диапазон и шум квантования не являются единственными факторами, которые необходимо учитывать, наряду с этим минимальный уровень шума в источнике питания вашего ЦАП будет определять наименьшие значащие биты (LSB), которые могут быть разрешены на выходе вашего ЦАП, несмотря на любую битовую глубину, которую указал производитель.

Извините, что разрываю чей-то шаблон и привожу к выводам, противоречащим рекламной шумихе, мифам и легендам в индустрии аудиофилов.Однако делаю это только потому, что если ЦАП способен декодировать 24-битный код, это вовсе не означает, что он способен на самом деле реализовать данную битовую глубину на выходном каскаде.

И даже не просите меня рассматривать ЦАП с выходными ламповыми каскадами: минимальный уровень шума на выходном каскаде лампы составляет около 90 дБ, что означает, что бы не утверждали производители, они не смогут реализовать даже 16-битную запись.

Уровень шума:

Показатель динамического диапазона выражает самый громкий звук, а минимальный уровень шума — самый тихий. Если вы хотите услышать LSB на записи, громкость (или напряжение) этого бита должна быть выше минимального уровня шума как комнаты, так и оборудования вашей системы.

Мы уже знаем, что в тихой комнате уровень фонового шума около 30 дБ, что заставляет вас делать громкость выше. Даже после того, как оборудование воспроизводит шум, превышающий 30 дБ, источник питания электроники будет маскировать LSB, если пиковое напряжение шума в источнике питания не меньше, чем напряжение LSB.

С учетом того, что выходное напряжение на ЦАП равно 2,5 В (выше среднего), ниже приведены напряжения источника питания, шум которого должен быть ниже, чтобы слышать LSB:

• 16-бит, напряжение минимального шума LSB = 76 мкВ

• 18-бит, напряжение минимального шума LSB = 19 мкВ

• 20-бит, напряжение минимального шума LSB = 4,75 мкВ

• 24-бит, напряжение минимального шума LSB = 0,3 мкВ

Для примера, обычный регулятор LM317, который является промышленным стандартом качества и используется в большинстве коммерческих электронных устройств, имеет пиковый шум около 150 мкВ, а самые низкие в мире источники шума (мы сейчас говорим о НАСА, а не аудиофильском оборудовании) имеют напряжение пикового шума около 5 мкВ.

По мнению экспертов, которые производят лучшие микросхемы ЦАП, резисторы и регуляторы мощности, теоретически нет способа создать электронику, способную различать разрешение более 20 бит (динамический диапазон 120 дБ). Любая компания, которая заявляет о более чем 20-битном разрешения своего ЦАПа, просто вводит всех в заблуждение. Да, они могут декодировать 24 бита, потому что 24-битное разрешение существует в программном обеспечении, но выход их ЦАП имеет разрешение и динамический диапазон менее 20 бит.

Теоретическое и фактическое разрешение:

Согласно математической теории, при дискретизации более чем в два раза превышающей максимальную слышимую частоту, на тех же кривых отображается только больше точек, когда цифровой сигнал преобразуется обратно в аналоговый сигнал. Поэтому для правильного сэмплирования ноты с частотой 20 кГц (максимальной частоты, которую может слышать человеческое ухо) вам необходимо сэмплировать с частотой выше 40 кГц. Частота дискретизации 44,1 кГц на CD была разработана для точной записи звука с частотой 20 кГц.

Так почему же возникла необходимость в более высоких частотах дискретизации, чем 44,1 кГц, если эти математические теории верны?

Одной из причин является шум квантования. Поскольку шум квантования присутствует около частоты дискретизации записи PCM, запись 44,1 кГц имеет шум квантования на одну октаву выше предела человеческого слуха -20 кГц. Этот шум квантования необходимо отфильтровать, поэтому все ЦАП имеют фильтр нижних частот на выходе. Поскольку шум квантования всего на одну октаву выше слышимого диапазона, используемые фильтры должны иметь очень крутой срез, чтобы не отфильтровывать нужные высокие частоты. Эти крутые наклонные цифровые фильтры низких частот широко известны как «brick wall»-фильтры.

Хотя вы много слышали о «brick wall»-фильтрах в ранних высококлассных CD-плеерах, вызывающих слышимое искажение, факт в том, что это являлось причиной неестественно звучащих высоких частот. Большая жесткого, резкого, неестественного звучания высоких частот в ранних цифровых записях связана с недостатками источников питания и проблемами в процессе записи, а не с «brick wall»-фильтрами/

Извините, что разорвал ваш шаблон, но, несмотря на то, во что верят многие аудиофилы, менее одного человека из тысячи могут слышать что-либо выше 20 кГц в детстве, и почти нет людей старше 40 лет, которые могли бы слышать намного выше 15кГц.

Конечно, если для записи, микширования и мастеринга используются более высокая частота дискретизации и большая битовая разрядность,тогда существует гораздо меньше шумов квантования, что используется для последующего преобразования в коммерческие форматы, которые мы слушаем и которые имеют значительно более низкое разрешение.

Вот почему профессиональные форматы, такие как 24-битный DXD с частотой 352,8 кГц, были изначально разработаны для студий звукозаписи. Одна из причин, по которой были разработаны 24-битные микросхемы ЦАП, заключалась в том, чтобы инженеры могли редактировать, микшировать и делать мастеринг в режиме реального времени, не уменьшая частоту дискретизации. На самом деле нет никакой рациональной необходимости в использовании 24-битного динамического диапазона в коммерческих записях, и ни одна компания никогда не выпускала коммерческую запись сколь либо близкую к динамическому диапазону 24 бита( 144дБ).

Несмотря на то, что многие записи преподносятся нам как 24-битные, все 24 бита динамического диапазона используются только в студии звукозаписи для уменьшения шума квантования. Потребительская версия большинства так называемых 24-битных записей обрабатывается с динамическим диапазоном 16-битной записи (96 дБ) или меньше. Обратитесь к приведенному выше разделу о динамическом диапазоне. Если бы продавались коммерческие записи с динамическим диапазоном более 96 дБ, вы бы не услышали ни одной детали нижнего диапазона выше уровня шума в 30 дБ вашей комнаты, и пики могли бы отправить в перегрузку большинство усилителей на очень низкой громкости. Подробнее о том, как динамический диапазон влияет на электронику, см. В следующем разделе «Требования к воспроизводящему оборудованию».

Так что же студии делают с коммерчески доступными так называемыми 24-битными записями? Они просто заполняют некоторые из наиболее значимых бит (MSB) единицами, а некоторые из наименее значимых битов (LSB) — нулями, чтобы увеличить общую громкость до заявленного уровня. Они могли бы выпустить запись с идентичным звучанием в 16 битах, но наивные потребители настаивают на 24 битах, поэтому звукозаписывающие компании обманывают их, помещая 16-битный динамический диапазон в 24-битный фрейм. Как же это глупо…

DSD не исключение. Любой тип цифровой записи производит шум квантования, который требует фильтра нижних частот на выходе преобразователя. Но вместо того, чтобы шум квантования был сосредоточен вокруг частоты дискретизации, такие форматы, как PCM и DSD64 SACD имеют значительное количество шума чуть выше 25 кГц, что показано на рисунке ниже.

24 бита: заблуждения, изображение №2

Чтобы обойти эту проблему, однобитные DSD ЦАПы имеют алгоритмы формирования шума и повышают дискретизацию до неоправданно высоких частот, чтобы переместить шум квантования далеко за пределы человеческого слуха. Это позволит фильтровать шум квантования с минимальным искажением в слышимом спектре частот. Вот одна из причин, почему программный проигрыватель, который преобразует SACD PCM или DSD64 в Double-Rate DSD или Quad-Rate DSD, приводит к такому улучшению производительности ЦАП с одним битом. Более подробную информацию по этой теме можно найти в нашей статье «DSD и PCM: Мифы и правда».

Еще одной проблемой применения более высокой частоты дискретизации и большей битовой глубины являются системные ресурсы. Оба этих параметра требуют больше места для хранения, больше оперативной памяти и более быстрых процессоров. Хотя оптимальная частота дискретизации и битовая глубина, необходимые для детального воспроизведения музыки, являются предметом острых дискуссий, нет сомнений в том, что чрезмерное высокое разрешение расходует системные ресурсы и излишне увеличивает размер и стоимость компонентов.

Требования к воспроизводящему оборудованию:

Существует очень мало систем (даже среди самых лучших), которые могут точно воспроизводить полный динамический диапазон 120 дБ 20-битной записи. Вот почему так мало записей выпускается в динамическом диапазоне 96 дБ 16-битной записи, не говоря уже о динамическом диапазоне 144 дБ 24-битной записи. Имейте в виду, что максимальный динамический диапазон записей LP составляет всего около 60 дБ. Даже аналоговые мастер-ленты Dolby имели максимальный динамический диапазон около 90 дБ.

Итак, чтобы музыка в 120 дБ могла воспроизводиться на большинстве высококачественных аудиофильских систем, студии звукозаписи необходимо ограничить динамический диапазон, используя процесс, называемый «динамическое сжатие». Процесс динамического сжатия делает более тихие пассажи относительно громче, а более громкие – относительно тише. Это облегчает распознавание деталей в нижнем диапазоне более громких пассажей. Динамическое сжатие является частью того, что дает записанной музыке иллюзию большей детализации и фокусировки, чем у живой музыки.

В записи LP и стандартизированных аналоговых лент существовало четкое правило: соотношение между мощностью усилителя и его громкости в децибелах являлось логарифмическим, а не линейным. Производители знали, что для увеличения потребляемой мощности на 3 дБ потребителям необходимо удвоить мощность усилителя и удвоить мощность динамиков. Таким образом, сохранение динамического диапазона домашнего аудио ниже 60 дБ было главной вещью, которая позволяла оборудованию для домашних развлечений быть доступным по цене, иметь скромный размер и относительно высокую точность воспроизведения. Правда заключается в том, что большинство коммерческих HD-записей имеют динамический диапазон, который намеренно меньше половины динамического диапазона 144 дБ 24-битной записи и даже значительно меньше динамического диапазона 96 дБ 16-битной записи.

Задумайтесь. Динамический диапазон 60 дБ поверх фонового шума 30 дБ равен 90 дБ. Насколько громче 90 дБ вы хотите слушать музыку у себя дома? Что еще более важно, для каждого дополнительного 3 дБ, на который вы увеличиваете динамический диапазон, вам потребуется удвоить мощность вашего усилителя и удвоить выходную мощность ваших динамиков.

При прочих равных условиях, для перехода от 90 дБ до 99 дБ вам потребуется усилитель с 8-кратной мощностью и динамики с 8-кратным выходом. Чтобы точно воспроизвести запись при 120 дБ, вам понадобится усилитель с 1000-кратной мощностью и громкоговорители с 1000-кратной выходной мощностью, нежели при воспроизведении той же записи при 90 дБ. Не знаю как вам, но такая система точно не подойдет ни моей комнате, ни моему бюджету.

Резюме:

Итак, открыт ли ваш слух по-настоящему?

Когда цифровые данные передаются и обрабатываются, они перемещаются в байтах, а не как отдельные биты. Байт содержит 8 бит и известен как цифровое слово. И 16 бит, и 24 бита стали стандартом, потому что каждый представлял следующее цифровое слово.

Битовая глубина представлена как число шагов в амплитуде цифровой записи. 16-битная запись имеет 65 536 шагов, 20-битная запись имеет 1 048 576 шагов, а 24-битная запись имеет 16 777 216 шагов.

Частота дискретизации — это частота, на которой дискретизируется амплитуда аналоговой звуковой волны. При частоте дискретизации 44,1 кГц, амплитуда музыки дискретизируется 44100 раз в секунду. При частоте дискретизации 96 кГц — 96 000 раз в секунду. При частоте дискретизации 192 кГц — 192 000 раз в секунду.

Чем больше бит и/или чем выше частота дискретизации, используемая при квантовании, тем выше теоретическое разрешение. Таким образом, 16-битный CD Red Book с частотой 44,1 кГц имеет 28 901 376 потенциальных точек выборки в секунду (44 100 x 65 536). 20-битная запись с частотой 96 кГц имеет 1 006 632 900 потенциальных точек выборки в секунду (96 000 x 1 048 576). Это означает, что 20-битные записи 96 кГц имеют разрешение примерно в 33 раза выше 16-битной записи 44,1 кГц, а 24-битная запись 192 кГц примерно в 256 раз выше 16-битной записи 44,1 кГц. Немаленькая разница.

По мнению экспертов, которые производят лучшие микросхемы ЦАП, резисторы и регуляторы мощности, теоретически нет способа создать электронику, способную различать разрешение более 20 бит (динамический диапазон 120 дБ). Любая компания, которая заявляет о более чем 20-битном разрешения своего ЦАПа, просто вводит всех в заблуждение. Да, они могут декодировать 24 бита, потому что 24-битное разрешение существует в программном обеспечении, но выход их ЦАП имеет разрешение и динамический диапазон менее 20 бит.

Для воспроизведения в любом месте вблизи динамического диапазона, предлагаемого этими форматами с высоким разрешением, вам потребуется усиление, в несколько раз превышающее мощность и долю минимального уровня шума по сравнению с тем, что в настоящее время доступно для аудиофилов на рынке.

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

Чтобы услышать разницу в динамическом диапазоне между 16-битной и 20-битной записью в обычной тихой комнате для прослушивания, вам придется воспроизводить музыку настолько громко, что это приведет к постоянной потере слуха.

Когда люди утверждают, что слышат разницу между 16-битной, 20-битной и 24-битной записью, на самом деле они ощущают разницу не в глубине звука, а в качестве цифрового мастеринга. Дело в том, что даже большинство так называемых 24-битных записей справляются с динамическим диапазоном менее чем 96 дБ 16-битной записи (и это правильно).

Так что же они делают с так называемыми коммерческими 24-битными записями? Они просто заполняют некоторые из наиболее значимых битов (MSB) единицами, а некоторые из наименее значимых битов (LSB) — нулями, чтобы увеличить общую громкость до необходимого уровня. Они могли бы выпустить запись с идентичным звучанием в 16 битах, но наивные потребители настаивают на 24 битах, поэтому звукозаписывающие компании обманывают их, помещая 16-битный динамический диапазон в 24-битном фрейме. Как же это глупо.

Отчасти причина, по которой некоторые HD записи звучат стерильно, связана с более низким динамическим сжатием, которое не позволяет тонким деталям низкочастотного спектра подниматься выше минимального уровня шума. Когда музыка динамически сжимается, тогда вы получаете возможность слушать ее с разумной громкостью и при этом слышать все тонкие гармонические сигналы, раскрывающие тон, тембр и акустику помещения в записи.

Еще одной проблемой применения более высокой частоты дискретизации и большей битовой глубины являются системные ресурсы. Оба этих параметра требуют больше места для хранения, больше оперативной памяти и более быстрых процессоров. Хотя оптимальная частота дискретизации и битовая глубина, необходимые для детального воспроизведения музыки, являются предметом острых дискуссий, нет сомнений в том, что чрезмерное высокое разрешение расходует системные ресурсы и излишне увеличивает размер и стоимость компонентов.

Конечно, большинство записей созданы таким образом, чтобы они лучше всего звучали на автомобильной стереосистеме или портативном устройстве, а не на высококачественной аудиофильском оборудовании. Общеизвестно, что артисты и продюсеры часто прослушивают треки на MP3-плеере или автомобильной стереосистеме, прежде чем одобрить финальный микс.

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

И напротив, некоторые из моих любимых цифровых записей были созданы в цифровом виде из аналоговых записей 1950-х годов. Они не имеют такого низкого фонового шума, как современные. Все потому, что эти записи «Золотого века» часто делались за один раз с минимумом пост-продакшна и редактирования. Этот метод старой школы дает органический характер звука и когерентные гармоники помещения, которые невозможно воспроизвести любым другим способом. Понятно почему так много аудиофилов ценят эти записи.

И наконец, чем проще тракт прохождения сигнала и чем меньше шум источника питания, тем лучше цифро-аналоговое преобразование.

Неизвестный UART: теория

  1. Неизвестный UART: теория
  2. Неизвестный UART: микросхемы

Можно с уверенностью сказать, что с момента публикации первой версии стандарта RS‑232 в мае 1960 года и по настоящее время, было написано приблизительно 10 9 независимых реализаций UART на всём, чём угодно. Однако, подобно «Hello world» в мире прикладного ПО, а также мигания светодиодом — «Hello world» в мире цифровой электроники (сигнализирующий об успешной настройке оборудования и среды разработки) — процесс написания UART способен проиллюстрировать особенности языка или платформы, демонстрируя применение тех или иных синтаксических конструкций для решения практических, насущных и понятных проблем.

В данном цикле статей будет рассказано про написание модуля UART на SystemVerilog, про синтез данного модуля на различных платформах и про некоторые другие аспекты применения UART в ПЛИС. Но прежде, чем писать код, поговорим про сам протокол и про особенности аппаратной части вне контекста ПЛИС.

RS-232

Представим, что у нас есть необходимость передавать данные в одну сторону по одному проводу при помощи логических уровней напряжения. Мы можем просто пустить поток бит, договорившись об одинаковой скорости передачи и приёма данных. Но принимающее устройство не будет знать, где этот поток начался, где он закончится, идёт ли он вообще, как биты распределены по байтам и так далее.

Для начала, нам потребуется заранее оговоренное состояние, которое будет считаться отсутствием передачи данных, то есть паузами между отдельными байтами. Допустим, это будет логическая единица.

Правда, без дополнительных условий будет невозможно отправить байт, состоящий из одних единиц, либо отличить последовательность 11010100 от 01010011.

Можно условиться, что к каждому передаваемому байту мы припишем дополнительный служебный бит (старт-бит), заведомо содержащий логический ноль. Тогда после паузы в передаче данных, приёмник при получении нисходящего фронта будет готов к приёму оговоренного количества бит, содержащих осмысленные данные.

Остаётся проблема: что, если будет передаваться длинная последовательность бит, содержащих нулевые значения без пауз между отдельными байтами? Тогда, рано или поздно, накопленная рассинхронизация тактовых генераторов источника и приёмника превысит половину длительности одного бита. И приёмник либо дважды прочитает один и тот же передаваемый бит, либо наоборот, пропустит один из передаваемых битов.

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

Договорившись о наличии старт-бита, стоп-битов, количестве битов данных в рамках одной передачи («символа» в терминологии UART) от старт-бита до стоп-бита и частоте следования бит можно организовать устойчивую однонаправленную передачу данных по одному проводу.

Стандарт RS-232 задаёт значение выходного напряжения логической единицы от −5 до −15 В, а логического нуля — от +5 до +15 В (именно в таком порядке). Данные уровни напряжения не поддерживаются микросхемами ПЛИС напрямую и существует несколько вариантов соединения ПЛИС с компьютером через RS‑232.

Если у компьютера предусмотрен com-порт, то соединение возможно при помощи пассивного кабеля и транслятора уровней. Зачастую трансляторы уровней для RS‑232 (к примеру, ADM3232E) изготавливают с встроенным умножителем (удвоителем) напряжения на основе переключаемых конденсаторов. Он преобразует +3,3 В в приблизительно ±6,6 В, которые используются в качестве уровней выходного сигнала на линии TX. А вход RX делают устойчивым к напряжениям вплоть до ±15 В.

Если у компьютера отсутствует встроенный com-порт, то соединение возможно при помощи внешнего преобразователя USB-RS232 (к примеру, UPort1150).

В этом случае иногда происходит некоторая путаница с разъёмами. Если разъём DB-9 на материнской плате — всегда «папа» (штыри), то разъём на оборудовании почти всегда «папа». Исключение — прецизионные источники питания компании Keithley (которую купил Tektronix). У них разъём «мама» (гнёзда). Разъём же на преобразователях USB-RS232 почти всегда, как и на материнских платах — «папа». Соответственно, он может быть подключен к Keithley непосредственно. Но для большинства оборудования дополнительно потребуется кабель «мама-мама». Разъём DB-9 предусматривает наличие стягивающих винтов. И ввиду того, что их не расположить внутри корпуса оборудования, то ими оснащается именно кабель. А на разъёмах оборудования делают гайки, куда эти винты закручиваются.

У преобразователя MOXA - гайки, у noname - винты. И у обоих в разъёме - штыри.

И, казалось бы, если на преобразователях USB-RS232 стоит разъём «папа» (для соединения с «мамой» кабеля, оснащённого винтами), то на нём должны быть гайки. Однако, данный элемент с вероятностью 50/50 будет также винтом! Зато к Keithley подходит идеально 🙂 В общем, если вы решили соединять оборудование с компьютером и хотите чтобы всё собралось с первого раза, не полагайтесь на то, что «всё стандартизовано, тут не ошибёшься» и обратите внимание:

  • на разъём в оборудовании и преобразователе (штыри/гнёзда)
  • на крепления в оборудовании и преобразователе (винты/гайки)

Электронная промышленность предоставляет широкую номенклатуру мостов USB-UART. Благодаря им, при создании устройства можно использовать все аппаратные плюсы интерфейса USB и при этом сохранить относительную простоту программного обеспечения, характерную для RS-232. В дальнейшем мы будем рассматривать именно этот вариант соединения, хотя с точки зрения кода для ПЛИС, разницы между предыдущими тремя примерами нет.

Есть, правда, весьма важный момент. Сам стандарт TIA/EIA-232-F (RS-232) содержит лишь электрические характеристики и размеры разъёмов. Типичные же скорости передачи данных, количество бит данных в символе, а также наличие/отсутствие дополнительного бита контрольной суммы (бита чётности) этим стандартом не оговаривается. Иногда можно встретить утверждение, что перечисленные выше аспекты оговорены в UART («Universal Asyncronous Receiver-Transmitter»), но это общее название некоторого свода обычаев передачи данных. Этому своду не соответствует какой-либо один-единственный написанный и утверждённый стандарт.

Неким подобием стандарта может считаться структура DCB, применяемая в функции SetCommState в Windows API и предназначенная для инициализации com-порта.

Так, в описании данной структуры говорится, что в символе UART может быть 1/1,5/2 стоп-бита. Однако, стандарт «ISO/IEC 7816-3», похожий на «обычный» UART и регламентирующий обмен данными со смарт-картами, предусматривает наличие 0,5 стоп-бита. И, к примеру, микроконтроллер STM32F103 способен через конфигурационные биты «STOP» ([13:12]) регистра «USART_CR2» задать режим работы модуля UART как с этим самым половинным стоп-битом, так и с более распространёнными количествами стоп-битов. А мост FT232R не только не способен поддерживать половинный стоп-бит, но также не способен поддерживать полуторный стоп-бит: только один или два стоп-бита.

Или в описании структуры DCB говорится, что значащих бит в одном символе UART может быть от 5 до 8 штук (в это количество не входит бит чётности). А уже упомянутый мост FT232R способен работать только с 7 или 8 битами. Однако, другой похожий на UART стандарт — MDB («Multi-Drop Bus») — содержит, по сути, 9 значащих бит (8 бит данных, плюс бит режима/направления). И микроконтроллер STM32F103 способен работать как с MDB, так и с 8-битным UART.

Теперь, если мы возьмём материнскую плату или преобразователь USB-RS232, вроде «UPort 1115», мы сможем сказать «где-то там есть RS-232». Однако, если мы возьмём микросхему-мост USB-UART с уровнями на линиях RX/TX равными +3,3/0 В, сложится парадоксальная ситуация: описываемые в TIA/EIA-232-F напряжения нигде не соблюдаются, а протокол, реализуемый этим мостом не описан в самом стандарте. То есть RS-232, упоминаемый в подобном контексте, приобретает некоторые постмодернистские черты симулякра — символа, у которого нет оригинала 🙂

Возможно также соединить линии USB напрямую к ПЛИС и наделить ПЛИС функционалом, позволяющим ей опознаваться компьютером как USB-устройство класса CDC («Communication Device Class») — то есть как com-порт. Однако, тратить (и в весьма большом количестве!) логические элементы ПЛИС на столь обыденную задачу, реализованную в готовых микросхемах USB-UART имеет смысл только в рамках учебных задач, связанных с изучением протокола USB.

Работа над ошибками

Рассматривая аспекты, связанные с ошибками, возникающими при передаче данных через UART, можно выделить три группы:

  • нестабильности электрических параметров сигнала
  • нестабильности временных параметров сигнала
  • нарушение в логике приёма/передачи

Обсудим ряд аспектов, связанных с каждой из этих групп.

Мажорирование

Когда речь заходит про аппаратное исправление нестабильности электрических параметров, регулярно произносится слово «мажорирование». То есть многократное (обычно — троекратное) снятие показаний в пределах одного принимаемого бита и последующий выбор в качестве истинного значения принимаемого бита того, которое чаще других встретилось в ходе этих замеров.

На первый взгляд, подобный механизм может показаться «серебряной пулей», сводящей вероятность ошибок практически к нулю. Попробуем, однако, оценить количественно степень влияния мажорирования на уровень ошибок.

Предположим, что ошибки в ходе замеров являются независимыми друг от друга и появляются с вероятностью «p». Выпишем в таблицу все 8 возможных комбинаций 3-битного числа. Но вместо единиц в ячейках таблицы запишем вероятность ошибки в конкретном замере («p»), а вместо нулей — вероятность верного считывания («1-p»). Вероятность появления каждой комбинации будет равна произведению содержимого ячеек соответствующего столбца. Поэтому отметим те комбинации, которые всё же приведут к ошибочному считыванию бита при мажорировании, определим вероятности появления этих комбинаций и сложим их всех.

Как видно, вероятность ошибки при мажорировании будет равна:

Или, если раскрыть скобки и упростить выражение, то:

Пока что влияние мажорирования может просматриваться не слишком явно. Для более чёткой картины возьмём десятичный логарифм «pmaj»:

Преобразуем это выражение. Для начала вынесем за скобки логарифмируемого выражения квадрат «p»:

Затем заменим произведение логарифмируемого выражение на сумму логарифмов:

С уменьшением «p», второе слагаемое (второй логарифм) достаточно быстро будет стремиться к десятичному логарифму трёх, который равен 0,477 (так, при «p» равном 10 -2 (одна ошибка на сто бит) это слагаемое уже будет равно 0,474).

Иными словами, если вероятность ошибки равна:

. то вероятность ошибки с использованием мажорирования по трём замерам приблизительно равна:

Здесь «x» по идее должен принимать значения от «0» до «-∞», но при приближении к нулю (то есть при приближении «p» к единице) начнут сказываться допущения. Однако уже при «x», равном «-1» (то есть одна ошибка на десять бит), приближённые значения будут отличаться от точных значений всего на 2%.

Представим, что происходит передача данных по UART с конфигурацией «старт‑бит/8 бит данных/стоп‑бит» на скорости 9600 бит/с и «p» равно 10 -6 . Это означает, что одна ошибка происходит в среднем один раз в две минуты (130 секунд, если точнее). Поиск причины ошибки, появление которой видится квази-случайным и происходит раз в несколько минут, является достаточно неприятным и трудозатратным занятием. Если же мы применим мажорирование, то ошибка, в теории, начнёт возникать с вероятностью 10 -11,523 . Или приблизительно один раз в 16,5 месяцев. Вроде бы отличный результат.

Однако, что если «p» равно 10 -4 ? Что если ошибка происходит один раз в секунду (1,3 секунды, если точнее), но инженер принял решение не кропотливо настраивать различные условия захвата в цифровом осциллографе с целью выявления причин ошибки, а применить мажорирование, и оно сработало идеальным образом?

Тогда «pmaj» будет равно 10 -7,523 . Или приблизительно один раз в 72 минуты — как раз достаточно, чтобы в случае претензий сказать: «Ну и где? Где эта ошибка? Вот, всё же работает! А вы говорите!» и убыть в закат 🙂

Кроме того, предположение о том, что ошибки в различных замерах одного бита являются независимыми не совсем верно. Предположим, что ошибка при считывании очередного бита появляется из-за наводки, скачка в цепи питания, либо чего-то подобного. Если мажорирование не применяется, вероятность ошибки «p» тогда будет равна произведению вероятности возникновения помехи «pnoise» на отношение длительности помехи «tnoise» к длительности бита «T»:

Одинаковую вероятность ошибки может создать как длительная, но редкая помеха, так и короткая, но часто повторяющаяся помеха. Однако, часто повторяющуюся помеху («pnoise» которой много больше, чем собственно «p») будет легче обнаружить, проанализировать и выявить её источник. А редко повторяющаяся помеха, та, от поиска которой, по идее, и должно защитить мажорирование, будет длительной помехой, способной в ряде случаев «накрыть» сразу несколько замеров.

В общем, методы коррекции ошибок, применяемые бездумно, способны как решить проблему, так и в отдельных случаях оказаться заметанием мусора под ковёр или вообще не сработать.

Оверсемплинг

Представим, к примеру, ардуиновский микроконтроллер ATmega328P. В нём битрейт модуля USART задаётся при помощи делителя «UBRR» (он записывается в регистры «UBRRnL» и «UBRRnH») и равен:

Допустим, частота fOSC равна 10 МГц, а нам требуется получить стандартные 9600 бит/с. Тогда наиболее подходящим значением UBRR будет «64». Благодаря ему удастся задать битрейт, равный 9615,4 бит/с. Погрешность в 0,16% кажется незначительной, однако она накапливается с каждым битом. И для последнего фронта в символе составит 1,44%.

Точность внутреннего RC-генератора для того же микроконтроллера ATmega328P при фиксированной температуре в 25°C и напряжении 3,0 В заявлена ±2%. Во всём диапазоне рабочих температур и напряжений заявленная точность генератора падает до крайне грубых ±14%.

Нестабильность генератора создаёт дополнительную погрешность, которая хоть и не накапливается с каждым битом, но в конце символа способна сложиться с одним и тем же знаком с погрешностью от деления частоты. При этом, суммарная погрешность передатчика может удлинить передаваемые им биты, а суммарная погрешность приёмника — укоротить считываемые им биты. То есть, по сути, погрешности сложатся по модулю.

Если считывание производится непосредственно с частотой битрейта, то рано или поздно возникнет ситуация, когда принимающее устройство зафиксирует появление старт-бита не в середине бита, а в самом его начале (сразу после появления нисходящего фронта) или же в самом конце (перед первым битом данных). Причём сколь угодно близко к фронту. И к последнему биту символа приёмник гарантированно рассогласуется с передатчиком.

Решением этой проблемы является многократное считывание логического состояния на линии RX — оверсемплинг. После первого считывания, результат которого может быть принят за старт-бит, приёмник ожидает половину битового периода и только начиная с этого момента приступает к считыванию бит через равные промежутки времени. При четырёхкратном чтении, ошибки передачи будут отсутствовать при общей временно́й погрешности, доходящей до 25%!

На этом месте может возникнуть пара вопросов:

  • Какова временная погрешность приёмопередатчиков UART в реальных устройствах?
  • Если приёмник всё равно производит многократное чтение одного и того же бита, возможно ли получаемые данные эффективно использовать также для мажорирования?

Отвечая на первый вопрос, можно обратиться к документу «Determining Clock Accuracy Requirements for UART Communications», выпущенный компанией Maxim Integrated (на текущий момент она поглощена компанией Analog Devices), который говорит следующее:

It is difficult to quantitatively assess a worst-case acceptable sampling range across a bit’s period. EIA/TIA-232-F does specify a 4% of bit-period maximum slew time for a transmission, but this is difficult to achieve for long runs at 192kbps. But for the purpose of this application note, let us define two data path scenarios. Consider a «nasty» scenario, which can only be sampled reliably within the middle 50% of the bit time. This could equate to a long capacitive RS-232 run. The «normal» scenario can be sampled within the middle 75% of the bit time.

То есть инженеры Maxim Integrated предполагают, что невозможность корректно считать значения на линии RX в течении 25% от длительности бита — это вполне нормальное явление.

Для ответа на второй вопрос представим себе, что у нас есть 8-кратный оверсемплинг и 25% общей погрешности, связанной с временными характеристиками. Два семпла окажутся в зоне 25%. Ещё на один семпл попадает «игла», которую мы пытаемся устранить при помощи мажорирования (ведь исправлять помехи имеет смысл только когда они есть, а словосочетание «есть помеха» означает, что помехи попадают по семплам). Итого мы получим 5 годных для мажорирования семплов к которым добавлено 3 гарантированно ненадёжных семпла.

Подобная конструкция не представляется такой уж надёжной. Поэтому, к примеру, в STM32F103 коррекция ошибок (мажорирование по восьмому, девятому и десятому семплам бита), дополнена механизмом сигнализация об их наличии.

То есть если три семпла, взятые посередине бита не равны все нулю или все единице, то такое значение, вообще говоря, не считается действительным.

Ошибки логики

Является ли ошибкой отсутствие стоп-бита? То есть если был передан старт-бит, затем оговоренные N бит данных, а после этого стоп-бит не появился (линия вместо стоп-бита оказалась в состоянии логического нуля)? Не всегда. Так, стандарт «ANSI E1.11», описывающий протокол обмена данными светотехнического оборудования DMX512, похожий на классический UART, использует при передаче данных аналогичное действие. При номинальной длительности бита DMX512 равной 4 мкс, переход в логический ноль и последующее удержание этого состояния в течение 92 мкс (то есть 23 нулевых бита подряд) или более, называется «break» и маркирует начало очередного пакета данных.

Однако, в общем случае, если передаваемый символ состоял не только из нулей, отсутствие стоп-бита будет, пожалуй, именно ошибкой — «framing error».

Является ли ошибкой отсутствие второго стоп-бита, если на стороне компьютера был выбран режим с двумя стоп-битами, а коммуницирующее устройство было настроено на работу с одним стоп-битом?

Пожалуй, нет. Так, в документации на ардуиновский микроконтроллер ATmega328P написано:

The Receiver and Transmitter use the same setting. Note that changing the setting of any of these bits will corrupt all ongoing communication for both the Receiver and Transmitter. An FE (Frame Error) will only be detected in cases where the first stop bit is zero.

Ещё более подчёркнуто это написано в документации на упоминавшиеся микроконтроллеры STM32F103:

2 stop bits: Sampling for 2 stop bits is done on the 8th, 9th and 10th samples of the first stop bit. If a framing error is detected during the first stop bit the framing error flag will be set. The second stop bit is not checked for framing error.

Относительно современная микросхема Super-I/O NCT6776D, реализующая UART на материнских платах, косвенно ссылается в своей документации на ставшую де-факто стандартом, классическую микросхему PC16550D:

NSER (No Stop Bit Error). This bit is set to logical 1 to indicate that the received data have no stop bit. In 16550 mode, it indicates the same condition for the data on the top of the FIFO. When the CPU reads USR, it sets this bit to logical 0.

А в документации на микросхему PC16550D написано:

If bit 2 is a logic 0, one Stop bit is generated in the transmitted data. If bit 2 is a logic 1 when a 5-bit word length is selected via bits 0 and 1, one and a half Stop bits are generated. If bit 2 is a logic 1 when either a 6-, 7-, or 8-bit word length is selected, two Stop bits are generated. The Receiver checks the first Stop bit only, regardless of the number of Stop bits selected.

Заключение

Типичная схема применения UART — это старт-бит, 8 бит данных и один-единственный стоп-бит. Типичный битрейт — 9600 бит/с (то есть длительность любого бита будет равна 104,17 мкс). В типичном случае «break frame» (большое количество нулевых бит) не применяется и будет просто ошибкой передачи. Так что базово UART относительно прост.

А упомянутые в статье особые случаи являются исключениями. О существовании которых, однако, имеет смысл знать. Также имеет смысл знать о практике применения данного протокола в индустрии. К примеру, посмотреть, какие возможности предоставляют различные микросхемы мостов USB-UART. Их детальный обзор — в другой раз.

  • Производство и разработка электроники
  • Компьютерное железо
  • Электроника для начинающих

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *