Пред.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше
Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике
различных символов, которые назовем символами канала; множество символов канала обозначим через Пусть множество всех последовательностей длины из символов Расстояние Хэмминга между последовательностями длины определим как число пар компонент таких, что а Заметим, что это расстояние зависит лишь от того, совпадают или нет соответствующие символы последовательностей Расстояние Хэмминга может быть использовано в системах модуляции с ортогональными сигналами [4]. Это связано с тем, что, когда символов канала представляют взаимно ортогональных сигналов с равной энергией, а шум в канале является аддитивным белым и гауссовским, вероятность ошибки (т. е. вероятность перехода одного символа канала в другой) для всех сигналов одна и та же. Расстояние Хэмминга применяется также для описания процесса возникновения ошибок в запоминающих устройствах вычислительных машин, в которых разные двоичные символы слова хранятся в различных матрицах [5].
Для описания возникновения ошибок в системах с фазовой модуляцией может быть использовано расстояние Ли [6]. Чтобы ввести это расстояние, необходимо установить взаимно однозначное соответствие между элементами множества и целыми числами от 0 до Здесь для простоты будем считать, что Для каждого элемента определим число следующим образом: если а в противном случае. Расстояние Ли между последовательностями определяется равенством При равном 2 или 3, расстояние Хэмминга сосовпадает с расстоянием Ли. Поскольку в теории кодирования результаты, полученные для расстояния Ли, не являются столь значительными, как результаты, полученные для расстояния Хэмминга, то в данной книге вопросы, связанные с расстоянием Ли, почти не рассматриваются (детальное изложение этих вопросов можно найти в книге Берлекэмпа [4]).
Для описания и исследования методов кодирования в системах с амплитудной модуляцией наиболее подходящим является евклидово расстояние (см. гл. 7), однако в теории кодирования получено лишь несколько частных результатов, посвященных этому вопросу, и они в основном связаны с некоторыми идеями устранения недостатков кодов, построенных для расстояния Хэмминга [7,8].
Подмножество С множества состоящее из К последовательностей длины назовем -ичным блоковым кодом длины Последовательности длины входящие в С, будем называть кодовыми словами. Число называется скоростью передачи кода С. Минимальное значение расстояния Хэмминга (расстояния Ли) между различными кодовыми словами кода С назовем минимальным расстоянием Хэмминга (минимальным расстоянием Ли) или просто минимальным расстоянием кода С.
Если блоковом коде для любой последовательности из символов (символы в этой последовательности могут повторяться) найдется ровно одно кодовое слово, первые компонент которого есть то этот блоковый код называется систематическим. Большинство используемых на практике и обычно исследуемых кодов являются систематическими. Кодер систематического кода, на вход которого с выхода преобразователя «источник информации — -ичная последовательность» поступает -ичная последовательность символов множества разбивает входную последовательность на блоки длины и для каждого такого блока из символов находит кодовое слово первые символов которого совпадают с до, (по определению существует ровно одно такое кодовое слово). Далее, к символам кодер приписывает в конце символов и полученное таким образом кодовое слово посылает на выход как единый блок. Первые компонент такого кодового слова называются информационными символами, а последние компонент — проверочными символами. При этом параметры называются соответственно числом информационных и числом проверочных (или избыточных) символов. Как мы видели в приведенных в предыдущем разделе примерах, избыточные символов могут использоваться для исправления или обнаружения ошибок. Отношение обычно обозначают через и называют скоростью передачи. Скорость передачи является параметром, характеризующим эффективность передачи.
Описанный выше кодер обрабатывает каждый поступающий блок независимо от других, так что каждое новое кодовое слово на его выходе оказывается не связанным с предыдущими кодовыми словами. Это является особенностью блоковых кодов. Кроме блоковых кодов, имеются другие типы кодов, в частности сверточные коды, которые детально рассматриваются в гл. 5 и 6. Каждый новый блок на выходе кодера сверточных кодов зависит от предыдущих блоков. Блоковые коды по сравнению с кодами других типов являются более простыми с точки зрения их математического описания, и, кроме того, они лучше исследованы.
Входные символы канала, которые являются в то же время выходными символами кодера, преобразуются в модуляторе в сигналы, которые могут быть переданы по каналу. Демодулятор выполняет обратную операцию, а именно каждому принятому сигналу, подвергшемуся воздействию шумов, он сопоставляет наиболее подходящий символ канала. Последовательность символов с выхода демодулятора поступает на вход декодера. Декодер блокового кода С разбивает эту последовательность на блоки в соответствии с разбиением последовательности на выходе кодера и далее для каждого принятого блока, используя свойства кода С, выбирает одно из наиболее вероятных кодовых слов, которые могли быть переданы. Это кодовое слово появляется на выходе декодера (в действительности на выходе декодера могут быть лишь информационные символы кодового слова). В некоторых случаях декодер может не принимать решения о том, какое кодовое слово передавалось, а послать на выход специальный символ означающий обнаружение ошибки. Таким образом, функция декодера заключается в реализации отображения множества в множество Это отображение в принципе можно задать с помощью таблицы декодирования, которая каждой последовательности из сопоставляет некоторое кодовое слово или символ В тех случаях, когда код С используется как код, исправляющий ошибки, то значениями являются только кодовые слова. Если же код С используется как код, обнаруживающий ошибки, то для всех последовательностей длины не являющихся кодовыми словами. Как видно из примера 1.1, существуют также коды, которые часть ошибок исправляют, а другие ошибки обнаруживают (вопросы целесообразности использования таких кодов будут рассмотрены в гл. 7).
В теории кодирования обычно предполагается, что кодер и демодулятор, точно так же, как и декодер и демодулятор, представляют собой отдельные устройства; при этом каждый символ канала преобразуется и передается независимо от других. Такое построение системы приводит не только к упрощению устройств, но, как мы увидим в гл. 7, и к некоторому снижению пропускной способности канала. Согласно теореме Шеннона для дискретного канала [9] (этот канал будет рассмотрен ниже в разд. 1.5), в случае использования подходящих (блоковых) кодов, исправляющих ошибки, при всех скоростях, меньших пропускной способности канала, информацию можно передавать со
сколь угодно малой вероятностью ошибки. Однако теорема Шеннона является так называемой теоремой существования и не дает конкретных методов построения таких кодов. Разработка практически приемлемых методов кодирования является задачей теории кодирования. Для того чтобы эффективность использования кодов была высокой, необходимо усреднить воздействие шумов. Это приводит к необходимости выбирать длину кода достаточно большой, что в свою очередь обычно связано с чрезмерным усложнением кодеров и декодеров. Например, в случае число кодовых слов достигает приблизительно 1030, а общее число последовательностей длины приблизительно 1060, так что практически построить описанную таблицу декодирования просто невозможно. Этот пример показывает, что построение кодов, которые имели бы достаточно большую длину (а следовательно, и высокую эффективность), но в то же время были бы практически реализуемыми с точки зрения сложности кодера и декодера, является непростой задачей. Коды, удовлетворяющие этим условиям, должны иметь хорошую (алгебраическую) структуру, которая гарантировала бы нужные корректирующие способности и позволяла бы найти практически реализуемые процедуры кодирования и декодирования. Эта точка зрения на цели теории кодирования и пути их достижения была положена в основу исследований, которые велись и ведутся в настоящее время в области алгебраической теории кодирования.
Утверждение 1.5. Если то
Утверждение 1.6. Пусть Тогда необходимым и достаточным условием того, что не содержат общих элементов, является выполнение соотношения
Краткое доказательство. 1) Допустим, что Пусть номера компонент, в которых различаются последовательности Тогда если обозначить через последовательность, получающуюся из заменой компонент последней с номерами на соответствующие компоненты то
2) Пусть Предположим, что существует последовательность принадлежащая одновременно и Тогда Но в таком случае, как следует из утверждения что противоречит предположению.
|
1 |
Оглавление
- Предисловие редакторов русского издания
- 1. Основные понятия теории кодирования
- 1.1. Коды, обнаруживающие и исправляющие ошибки
- 1.2. Блоковые коды. Систематические коды
- 1.3. Двоичный симметричный канал
- 1.4. Верхние границы для минимального расстояния кодов
- 1.4.1. Верхняя граница Хэмминга
- 1.4.2. Верхняя граница Плоткина
- 1.4.3. Верхняя граница Элайса
- 1.5. Теорема кодирования
- 1.5.1. Граница случайного кодирования
- 1.5.2. Свойства функции надежности
- 1.5.3. Граница сферической упаковки
- 1.5.4. Декодирование списком
- 2. Конечные поля
- 2.2. Кольца и поля
- 2.3. Векторные пространства
- 2.4. Многочлены
- 2.5. Конечные поля
- 2.6. Дополнительные сведения о конечных полях
- 2.6.1 Вычисления в конечных полях
- 2.6.2. Матрицы Адамара
- 2.6.3. Конечные геометрии
- 2.6.4. Разностные множества
- 2.6.5. Дополняющий базис
- 2.6.6. Некоторые понятия, необходимые для определения кодов Гоппы
- 3. Линейные и циклические коды
- 3.1. Линейные коды
- 3.2. Методы декодирования линейных кодов
- 3.3. Нижняя граница Варшамова — Гилберта
- 3.4. Распределение весов
- 3.5. Циклические коды (I)
- 3.6. Циклические коды (II)
- 3.7. Укороченные коды
- 4. Важнейшие коды
- 4.1. Коды Боуза — Чоудхури — Хоквингема
- 4.2. Декодирование БЧХ-кодов
- 4.2.2. Итеративный алгоритм Берлекэмпа
- 4.3. Методы мажоритарного декодирования
- 4.4. Многочлены Матсона — Соломона
- 4.5. Полиномиальные коды
- 4.5.1. Обобщенные коды Рида — Маллера
- 4.5.2. Полиномиальные коды и двойственные к ним коды
- 4.6. Каскадные коды и коды Юстесена
- 4.6.2. Коды Юстесена
- 4.7. Коды Гоппы
- 4.7.2. Метод декодирования
- 4.8. Коды, исправляющие пачки ошибок
- 5. Сверточные коды
- 5.1. Общий обзор сверточных кодов
- 5.1.2. Методы последовательного декодирования
- 5.1.3. Методы декодирования по максимуму правдоподобия
- 5.2. Представление сверточных кодов
- 5.3. Пример порогового декодирования
- 5.4. Принцип порогового декодирования
- 5.5. Самоортогональные коды
- 5.5.3. Коды, строящиеся с помощью простых совершенных разностных множеств
- 5.6. Ортогонализируемые коды
- 5.7. Распространение ошибок
- 5.7.2. Критерий устойчивости пороговой декодирующей логической схемы
- 5.7.3. Критерий, основанный на использовании функции Ляпунова [32]
- 5.7.4. Дефинитное декодирование
- 5.8. Сверточные коды, исправляющие пачки ошибок
- 5.9. Сверточные коды, исправляющие пачки ошибок и независимые ошибки (диффузные коды)
- 5.10. Равномерные сверточные коды
- 5.10.4. Перфорированные равномерные коды
- 6. Сверточные коды II. Последовательное декодирование
- 6.1. Древовидные коды и принцип последовательного декодирования
- 6.4. Коды, представляемые в виде кодового дерева, называются древовидными.
- 6.2. Алгоритм Фано
- 6.3. Среднее число операций при декодировании
- 6.3.2. Свойство независимости в древовидном коде
- 6.3.3. Верхняя граница для среднего числа операций
- 6.4. Распределение числа операций и вероятность переполнения буфера
- 6.5. Вероятность необнаружения ошибки
- 6.6. Границы Витерби и декодирование по максимуму правдоподобия
- 6.7. Гибридные методы кодирования
- 6.7.2. Характеристики гибридного кодирования
- 6.8. Стек-алгоритм
- 6.9. Структура расстояний сверточных кодов
- 6.9.2. Нижняя граница Гилберта для сверточных кодов при декодировании с обратной связью
- 6.9.3. Верхняя и нижняя границы минимального расстояния при дефинитном декодировании
- 6.10. Коды, используемые при декодировании с обратной связью
- 6.11. Коды, используемые при последовательном декодировании
- 7. Реализация и применение кодов, исправляющих ошибки
- 7.1.2. Кодеры циклических кодов
- 7.1.3. Декодеры циклических кодов
- 7.2. Реализация порогового декодирования
- 7.3. Обсуждение связи теории кодирования с реальными техническими проблемами
- 7.4. Различные предположения, используемые в теории кодирования
- 7.4.3. Расстояние Хэмминга
- 7.4.4. Положительные стороны теории кодирования
- 7.5. Применения в системах связи метода повторной передачи
- 7.6. Применения в системах связи кодов, исправляющих ошибки
- 7.6.2. Вероятность ошибки при использовании алгебраических кодов
- 7.6.3. Многоуровневая фазовая модуляция и кодирование
- 7.6.4. Применения кодов в космических и спутниковых системах связи
- 7.6.5. Основные понятия о проектировании систем связи с помехоустойчивым кодированием
- 7.6.6. Проблемы, возникающие при проектировании систем связи с помехоустойчивым кодированием информации
- 7.6.7. Пример применения порогового декодирования в спутниковой связи
- 7.7. Применение в системах обработки информации
- 7.7.2. Коды на основе ортогональных латинских квадратов
- 7.7.3. Коды, исправляющие пачки ошибок и допускающие быстрое декодирование [19]
- 8. Коды для арифметических устройств
- 8.1. Основные понятия теории чисел
- 8.2. Определение AN-кода
- 8.3. Арифметический вес и арифметическое расстояние
- 8.4. Минимальное расстояние и корректирующая способность AN-кода
- 8.5. Обнаружение и исправление независимых ошибок веса 1
- 8.6. AN-коды, исправляющие кратные ошибки
- 8.7. Синдромы и методы декодирования AN-кодов
- 9. Циклические AN-коды
- 9.1. Структура циклических AN-кодов
- 9.2. Минимальное расстояние циклических AN-кодов
- 9.2.2. Минимальное расстояние AN-кодов, удовлетворяющих специальным условиям
- 9.2.3. Минимальное расстояние циклических AN-кодов (В — простое число)
- 9.2.4. Минимальное расстояние циклических AN-кодов (В — составное число)
- 9.3. Декодирование циклических AN-кодов
- 9.4. Дополнение
- Приложения
- Приложение 1. Разложение чисел вида 2^n-1 на простые множители и таблица неприводимых многочленов
- Приложение 2. Параметры двоичных БЧХ-кодов в узком смысле длины 1023 и менее
- Литература
|