какой код требует минимальной полосы пропускания при заданной скорости передачи информации
Подключение линий связи и коды передачи информации
Бифазный код
Бифазный код часто рассматривают как разновидность манчестерского, так как их характеристики практически полностью совпадают.
Данный код отличается от классического манчестерского кода тем, что он не зависит от перемены мест двух проводов кабеля. Особенно это удобно в случае, когда для связи применяется витая пара, провода которой легко перепутать. Именно этот код используется в одной из самых известных сетей Token-Ring компании IBM.
Другие коды
Все разрабатываемые в последнее время коды призваны найти компромисс между требуемой при заданной скорости передачи полосой пропускания кабеля и возможностью самосинхронизации. Разработчики стремятся сохранить самосинхронизацию, но не ценой двукратного увеличения полосы пропускания, как в рассмотренных RZ, манчестерском и бифазном кодах.
Чаще всего для этого в поток передаваемых битов добавляют биты синхронизации. Например, один бит синхронизации на 4, 5 или 6 информационных битов или два бита синхронизации на 8 информационных битов. В действительности все обстоит несколько сложнее: кодирование не сводится к простой вставке в передаваемые данные дополнительных битов. Группы информационных битов преобразуются в передаваемые по сети группы с количеством битов на один или два больше. Приемник осуществляет обратное преобразование, восстанавливает исходные информационные биты. Довольно просто осуществляется в этом случае и обнаружение несущей частоты (детектирование передачи).
В сегменте 100BASE-T4 сети Fast Ethernet использован несколько иной подход. Там применяется код 8В/6Т, предусматривающий параллельную передачу трех трехуровневых сигналов по трем витым парам. Это позволяет достичь скорости передачи 100 Мбит/с на дешевых кабелях с витыми парами категории 3, имеющих полосу пропускания всего лишь 16 МГц (см. табл. 2.1). Правда, это требует большего расхода кабеля и увеличения количества приемников и передатчиков. К тому же принципиально, чтобы все провода были одной длины и задержки сигнала в них не слишком различались.
Код NRZI (без возврата к нулю с инверсией единиц – Non-Return to Zero, Invert to one) предполагает, что уровень сигнала меняется на противоположный в начале единичного битового интервала и не меняется при передаче нулевого битового интервала. При последовательности единиц на границах битовых интервалов имеются переходы, при последовательности нулей – переходов нет. В этом смысле код NRZI лучше синхронизируется, чем NRZ (там нет переходов ни при последовательности нулей, ни при последовательности единиц).
Все упомянутые в данном разделе коды предусматривают непосредственную передачу в сеть цифровых двух- или трехуровневых прямоугольных импульсов.
Однако иногда в сетях используется и другой путь – модуляция информационными импульсами высокочастотного аналогового сигнала (синусоидального). Такое аналоговое кодирование позволяет при переходе на широкополосную передачу существенно увеличить пропускную способность канала связи (в этом случае по сети можно передавать несколько бит одновременно). К тому же, как уже отмечалось, при прохождении по каналу связи аналогового сигнала (синусоидального) не искажается форма сигнала, а только уменьшается его амплитуда, а в случае цифрового сигнала форма сигнала искажается (см. рис. 3.2).
К самым простым видам аналогового кодирования относятся следующие (рис. 3.18):
Чаще всего аналоговое кодирование используется при передаче информации по каналу с узкой полосой пропускания, например, по телефонным линиям в глобальных сетях. Кроме того, аналоговое кодирование применяется в радиоканалах, что позволяет обеспечивать связь между многими пользователями одновременно. В локальных кабельных сетях аналоговое кодирование практически не используется из-за высокой сложности и стоимости как кодирующего, так и декодирующего оборудования.
Помехоустойчивое кодирование для передачи цифрового телевидения по каналам связи
Владимир Блох
эксперт
Введение
При увеличении скорости передачи качество передачи оценивалось по BER – отношению количества ошибок по сравнению с количеством переданных бит. Появились понятия «готовность линии к передаче» и «качество передачи». Характеристики качества были приведены в рекомендациях G.811 и G.826 МСЭ-Т. При анализе характеристик качества период времени передачи исключается.
В XX веке появилось понятие «помехоустойчивое кодирование». Оно началось с появлением кодов Хэмминга, формулы и предела Шеннона.
Хотя, может быть, следует вспомнить Евклида, который 3500 лет назад ввел понятие помехоустойчивого кодирования. Определил необходимую скорость передачи символов и дистанцию между ними – «дистанция по Евклиду». Ею пользуются в США и сейчас, применяя TCM-модуляцию (теперь 8PSK – решетка с 8 состояниями), по правилу Унгербоека с пространственной избыточностью. Эффективность кодирования получается 3,6 дБ.
После 50-х годов прошлого века специалисты стали считать, что сбой импульсной посылки происходит не из-за игольчатого выброса шума в 5–10•10 6 пкВт, а из-за белого гауссового шума AWGN (Additive White Gaussian Noise) в канале с релеевскими замираниями.
Априорную вероятность ошибки определяли как:
отношение сигнал/шум на бит (SNR). При М-модуляции формулы имеют более сложный вид. Вероятность ошибки на бит – это вероятность того, что в сообщении из L битов m будут ошибочными.
учитывая, что ошибки при приеме кодовых символов происходят независимо с вероятностью po. При малой вероятности ошибки в канале с учетом скорости кода R = k/n можно считать:
Канальное кодирование позволяет исправлять ошибки цифровой информации за счет включения в поток избыточных импульсов. При этом уменьшается энергия одного бита. Она становится равной K/n.Eb.
Согласование возможности прохождения сигнала через радиотехнические цепи сделал Шеннон. Он предложил формулу, которая теперь носит его имя:
Шеннон показал, что пропускная способность канала C с аддитивным шумом AWGN является отношением средней мощности принимаемого сигнала S к средней мощности шума и ширине полосы пропускания W.
При увеличении спектра сигнала (с К8 на К32 в стандарте Т2) пропускная способность увеличивается. Пропускная способность имеет размерность бит/c. Нижнее предельное значение Eb/N0, при котором ни при какой скорости нельзя осуществить безошибочную передачу информации, называют пределом Шеннона, равным Eb/N0 = 1,6 дБ, где Eb – мощность сигнала на бит; N0 – полоса шума на бит.
На рис. 1 показана зависимость нормированной полосы канала от Eb и N0.
Телевизионный сигнал, выходящий со студии – аналоговый. Превращение его в цифровой осуществляется с помощью теоремы Котельникова. Она приводится в учебниках по телевидению. Поэтому не будем на ней останавливаться.
Первые помехоустойчивые коды предложил Хэмминг. Это были блочные коды, исправляющие одну ошибку. Они записывались так: К(n,k,d), где n число приходящих импульсов, к – информационных. Количество ошибок, которые может исправить код t = (d-1)/2.
Коды могут быть образованы с помощью примитивных полиномов или с помощью матрицы. Пример построения матриц для кода Хэмминга 5.3 приведен ниже.
Система помехоустойчивости состоит из:
Эффективность кодирования
Без кодирования энергия бита была равна Eb, а при блочном кодировании с учетом избыточности будет меньше на k/n. Следовательно, Ebk = k/nEb.
Скорость передачи канальных битов Rc должна превышать скорость передачи Rb в n/k раз.
Символьная передача Rs меньше канальной Rc в (log2M) раз.
Для систем с модуляцией и кодированием преобразование скорости имеет следующий вид:
Преобразование энергии битов в энергию символов связано такими же множителями, что и преобразователи скоростей. Отношение энергии канального бита к спектральной мощности шума Ec/No – это результат умножения Eb/No на коэффициент k/n. Путем умножения Ec/No на коэффициент (log2M) c вычисляется Pe.
Для систем, содержащих одновременно модуляцию и кодирование, преобразование отношения энергии к спектральной плотности мощности шума будет:
Отношение принимаемой мощности к спектральной плотности шума будет:
Синхронизация потока TS
Длительность полинома 1503 байта. Синхронное слово 0х47. Инвертированное синхронное слово 0хB8.
При модуляции QPSK и скорости внутреннего кода – 1/2 обеспечивается самая высокая защищенность при отношении сигнал/шум 3,1 дБ. При модуляции – 64QAM и скорости внутреннего кода 7/8 необходимо иметь соотношение сигнал/шум – 20,1 дБ.
В табл. 1 приведены основные параметры двух стандартов.
Входной поток, поступающий на передатчик, подвергается сжатию по стандарту MPEG-2 или MPEG-4 и превращается в сигналы физического уровня PLPc, которые, расщепляясь, превращаются, в свою очередь, в потоки TS. Предложенная на рис. 1 система предполагает наличие трех составных потоков: SS.1; SS.2; SS.3 (каждый из них содержит кодирование по видео и звуку) и две субсистемы – SS.4 и SS.5. Все это через статистический мультиплексор (statistical multiplexer) объединяется и поступает на межсетевой переход (SS.2 Basic Gateway), затем с него расходятся на свои модуляторы. Потоки трансформируются в RF-каналы и т.д. и поступают на антенну. На приемной стороне потоки детектируются и демодулируются, потом поступают в телевизор.
В стандартах Т1и Т2 в качестве помехоустойчивого кода используется каскадный код Форни. В основе его построения лежит совместное использование двух кодов, состоящих из внешнего кода Рида – Соломона c коэффициентом кодирования R = K/N и внутреннего – сверточного r = k/n. Суммарный коэффициент кодирования равен rR = kK/nN. Причем закодированные символы внешнего кода кодируются кодом внутренним.
Минимальное расстояние каскадного кода D = d1d2, а кодовая скорость равна:
где r1r2 – кодовые скорости.
Коды Рида – Соломона
Коды Рида – Соломона (Р-С) с параметрами (n, k, d), где n = 2 S – 1, формируют один из n символов поля Галуа GF(2S) для каждой группы, содержащей последовательно информационные символы. Коды Р-С называют линейными кодами потому, что они образованы набором блоков фиксированной длины, в которых каждый элемент кодового слова выбирается из алфавита q-символов. Коды Р-С имеют максимально возможные минимальные кодовые расстояния, обеспечивающие наибольшую корректирующую способность по сравнению с другими линейными кодами. Код Р-С с m = mo-1 характеризуется следующими параметрами:
Для детектирования кодов Р-С используют жесткое решение.
Чаще всего коды Р-С используют для передачи цифрового телевидения. При этом код Р-С имеет байтовую структуру, то есть S = 8, nmax = 256. Чаще всего используется код Р-С с параметрами: (204.188,16) или (204,188; t = 8). Полоса пропускания определяется символьной скоростью приходящего потока: Symbol Rate S:
Для 16QAM – m = 4, для 64QAM – 6, 256QAM – 8. Правка ошибок основывается на GHT = 0. Для определения вероятности ошибки при применении кода Рида – Соломона можно воспользоваться приведенной формулой.
Сверточные коды
Сверточные коды (СК) относятся к непрерывным кодам, где передаваемая последовательность не может быть разбита на независимые блоки. При СК дополнительные символы содержатся в последовательности предыдущих.
СК преобразует k0 информационных символов, поступающих на его вход, в n0 выходных кодовых символов, n0> k0. Выходные символы являются линейными комбинациями над полем GF(q) входных символов из предшествующих m блоков. Преимущество СК по отношению к блочным заключается в непрерывном обнаружении и исправлении ошибок. Сверточный код задается параметрами: n, k, К, где k – число входов; n – число выходов; r = k/n – кодовая скорость, K – конструктивная длина кода; ηa – длина кодового ограничения.
Параметрами СК-кода, характеризующими его помехоустойчивость, является минимальное свободное расстояние по Хэммингу между последовательностями сверточного кода по длине кодовых ограничений – deff. Оно определяет эффективность кода при разных значениях его скорости r. Об этом мы поговорим позднее.
Сверточные кодеры бывают несистематические, не имеющие обратных связей, и систематические, с обратными связями.
Выходные символы формируются с помощью рекуррентного соотношения из K информационных символов, поступающих в данный и предшествующие моменты времени. Величина K называется длиной кодового ограничения и играет ту же роль, что и длина блочного кода.
Способы декодирования сверточных кодов представлены.
Внешнее и внутреннее перемещение (3; 4; 5) для стандартов Т1 и Т2 рассмотрены в Л 2.5.
При COFDM-модуляции исходный спектр разделяется на N несущих частот ортогональных подканалов, в каждом из которых осуществляется модуляция последовательностью данных. В K = 8 используется от 64 до 6817 точек преобразования. Важным параметром систем является быстрое преобразование Фурье. Длительность преобразования Фурье составляет от 10 до нескольких сот мкс.
Для уменьшения влияния на приеме многолучевого распространения применяют защитный интервал, во время которого значение принятого символа не определяется. От 1/32 до 1/4 длительности быстрого преобразования Фурье для стандарта Т1.
Защитный интервал – это не просто пауза между полезными символами, достаточная для угасания сигнала символа до начала следующего. Он пропускает часть полезного сигнала, гарантирует сохранение ортогональности несущих принятого сигнала. Величина защитного интервала зависит от расстояния между передатчиками в одночастотных сетях или от задержки естественного эхо-сигнала в сетях вещания. Считают, что она должна содержать четвертую часть от величины полезного интервала.
В режиме OFDM каждый символ формируется одной поднесущей. В приемнике основные шаги процесса демодуляции выполняются в обратном порядке: полученные сигналы во временной области квантуются и поступают в процессор БПФ, который восстанавливает комплексный спектр. Затем спектральные компоненты обрабатываются как отдельные сигналы, для того чтобы декодировать данные, которые мультиплексируются в основной поток данных.
В передающем устройстве роль модулятора выполняет интегральная схема быстрого обратного преобразования Фурье.
В приемном устройстве – прямое преобразование Фурье и процессор, который восстанавливает комплексный спектр. Затем спектральные компоненты обрабатываются в отдельные сигналы для того, чтобы декодировать данные, которые мультиплексируются в основной поток телевидения.
Преобразование Фурье
Преобразование Фурье – это метод обработки, использующийся для анализа изменений сигнала во времени и выражения их в виде спектра.
Длительность преобразования Фурье:
Существенную экономию времени счета дает метод быстрого преобразования Фурье (БПФ), позволяющий сократить число рассчитываемых вариантов с N2 до Nlog2 N. Так, например, при N = 1024 экономия во времени составит около ста раз. Один из алгоритмов БПФ используется при передаче цифрового телевидения. В приемнике основные шаги процесса демодуляции выполняются в обратном порядке.
Основная задача стандарта DVB-T2 – передавать одновременно три программы цифрового телевидения высокой четкости. Поэтому там используют высокоскоростные помехоустойчивые коды.
Внешний код в стандарте Т2-БЧХ Боуза – Чоудхуда – Хоквингема
Этот код был известен и раньше. Применение его откладывалось из-за отсутствия элементной базы, работающей на высоких частотах.
Коды (БЧХ) представляют собой класс линейных циклических кодов, исправляющих кратные ошибки, и являются результатом обобщений кодов Хэмминга. Это обеспечивает свободу выбора длины блока, степени кодирования, размеры алфавита и возможности коррекции ошибок. В кодах БЧХ в случае больших n и кодовые слова записывают в начале последовательности. Например, кодовое слово (Cn-1,Cn-2,+…) в виде полинома C(x) = a(x)g(x). После ряда преобразований и умножения полинома на Xn-k получаем Xn-kb(x)=a(x)g(x)+p(x), где p(x) – полином. Степени не более n-k-1 определят ошибки передачи. Если он равен 0, то ошибок нет.
Коды БЧХ характеризуются следующими параметрами:
N = 2 m-1 ; r – любое; d = 2t + 1; t = (2m-1-k)/m/. Где m – целое положительное число, t – ошибки.
Величина энергетического выигрыша определяется rd (чем больше rd, тем больше выигрыш). БЧХ имеют параметры: n = 2 m – 1; n-k ≤ mt; dmin = 2t + 1.
Вероятности ошибки в кодовом блоке P, q-символе Ps и в бите Pb при декодировании БЧХ по максимуму правдоподобия приведены ниже:
Так как коды БЧХ относятся к циклическим блоковым кодам, задаваемым образующим полиномом, кодирование информационной последовательности осуществляется в соответствии с C(X) = U(X) g(x).
Применение в качестве внешнего кода BCH предложенной длины может исправлять от 10 до 12 ошибок. Двоичные коды БЧХ, порожденные примитивными полиномами поля Галуа GF(gm), меньше 210 могут исправлять несколько ошибок. Например, (255,9) – 63 ошибки. Предложенные в стандарте DVB-T2 длинные коды имеют в своем составе меньше избыточных битов, но при этом усложняется синдром исправления ошибок и увеличивается мощность на их передачу. В табл. 2 для стандарта DVB-T2 представлены параметры применяемых кодов для Nidpc = 64 800. Из них мы заключаем, что избыточность от всех представленных кодов одинакова.
Внутренний код LDPC (Low Density Parity Check codes) с низкой плотностью проверок. Код имеет минимальное расстояние d и поэтому все ошибки могут быть исправлены при почти линейной сложности алгоритма декодирования.
В работах показано, что LDPC-коды могут быть близки к пределу Шеннона. При скорости 1/2 с длиной блока 10000000 код отличается от предела Шеннона 0,0045 дБ.
Регулярный LDPC-код является линейным (n, k), проверочная матрица которого H имеет Хеммингов вес. Столбцы и строки равны J и K соответственно. Причем обе величины меньше длины кода N.
Применяя BCH + LDPC, удается получить выигрыш по сравнению с кодом Р-С + сверточный 5 дБ (рис. 4) DVB BlueBOOK A133. Применение модуляции несущих 256QAM увеличивает емкость канала на треть.
На вход системы поступают потоки от трех независимых программ телевидения высокой четкости (рис. 2). Эти потоки называются phsycal layer pipes (PLP). В DVB-T2 каждый из них помещается в свою PLP. Структура суперфрейма представлена на рис. 3. Программы поступают на передатчик последовательно.
Для одночастотных сетей введен режим MISO Multiple Input Single Output – много входов, один выход.
Количество пилот-сигналов уменьшено (табл. 1).
Качество обслуживания
Способность сети обеспечивать различные уровни обслуживания, запрашиваемые теми или иными сетевыми приложениями, наряду с проведением контроля за характеристиками производительности – полосой пропускания, задержкой/дрожанием и потерей пакетов – может быть классифицирована по трем перечисленным ниже категориям.
Негарантированная доставка данных (best-effort service). Обеспечение связности узлов сети без гарантии времени и самого факта доставки пакета в пункт назначения. Отбрасывание пакета может произойти только в случае переполнения буфера входной или выходной очереди маршрутизатора.
Дифференцированное обслуживание удобно применять в сетях с интенсивным трафиком приложений.
Гарантированное обслуживание (guaranteed service). Гарантированное обслуживание предполагает резервирование сетевых ресурсов с целью удовлетворения специфических требований к обслуживанию со стороны потоков трафика.
В соответствии с гарантированным обслуживанием выполняется предварительное резервирование сетевых ресурсов по всей траектории движения трафика.
Гарантированное обслуживание довольно часто называют еще жестким QoS (hard QoS) в связи с предъявлением строгих требований к ресурсам сети.
Характеристики производительности сетевого соединения
Внедрение механизмов QoS предполагает обеспечение со стороны сети соединения с определенными ограничениями по производительности. Основными характеристиками производительности сетевого соединения являются полоса пропускания, задержка, дрожание и уровень потери пакетов.
Полоса пропускания
Термин полоса пропускания (bandwidth) используется для описания номинальной пропускной способности среды передачи информации, протокола или соединения.
Задержка сериализации (serialization delay). Время, которое требуется устройству на передачу пакета при заданной ширине полосы пропускания. Задержка сериализации зависит как от ширины полосы пропускания канала передачи информации, так и от размера передаваемого пакета. Например, передача пакета размером 64 байт при заданной полосе пропускания 3 Мбит/с занимает всего лишь 171 нc. Обратите внимание, что задержка сериализации очень сильно зависит от полосы пропускания: передача того же самого пакета размером 64 байт при заданной полосе пропускания 19,2 Кбит/с занимает уже 26 мс. Довольно часто задержку сериализации называют еще задержкой передачи (transmission delay).
Задержка распространения (propagation delay). Время, которое требуется переданному биту информации для достижения принимающего устройства на другом конце канала. Эта величина довольно существенна, поскольку в наилучшем случае скорость передачи информации соизмерима со скоростью света. Задержка распространения зависит от расстояния и используемой среды передачи информации, а не от полосы пропускания. Для линий связи глобальных сетей задержка распространения измеряется в миллисекундах. Для трансконтинентальных сетей Соединенных Штатов характерна задержка распространения порядка 30 мс.
Задержка коммутации (switching delay). Время, которое требуется устройству, получившему пакет, для начала его передачи следующему устройству. Как правило, это значение меньше 10 нс.
Обычно каждый из пакетов, принадлежащий одному и тому же потоку трафика, передается с различным значением задержки. Задержка при передаче пакетов меняется в зависимости от состояния промежуточных сетей.
Если сеть не испытывает перегрузки, то пакеты не ставятся в очередь в маршрутизаторах, а общее время задержки при передаче пакета состоит из суммы задержки сериализации и задержки распространения на каждом промежуточном переходе. В этом случае можно говорить о минимально возможной задержке при передаче пакетов через заданную сеть. Следует отметить, что задержка сериализации становится незначительной по сравнению с задержкой распространения при передаче пакета по каналу с большой пропускной способностью.
Если же сеть перегружена, задержки при организации очередей в маршрутизаторах начинают влиять на общую задержку при передаче пакетов, и приводят к возникновению разницы в задержке при передаче различных пакетов одного и того же потока. Колебание задержки при передаче пакетов получило название джиттер-пакетов (packet jitter).
Данный параметр имеет большую важность, поскольку именно он определяет максимальную задержку при приеме пакетов в конечном пункте назначения. Принимающая сторона, в зависимости от типа используемого приложения, может попытаться компенсировать дрожание пакетов за счет организации приемного буфера для хранения принятых пакетов на время, меньшее или равное верхней границе дрожания. К этой категории относятся приложения, ориентированные на передачу/прием непрерывных потоков данных, например IP-телефония или приложения, обеспечивающие проведение видеоконференций.