Перейти к содержанию
    

HDLC- поток

Может кто знает.

Есть микросхеа Gigalink GLB100HB, представляющая собой мост Ethernet-HDLC.

Пауза между HDLC-кадрами заполняется или маркерами 7Eh или потоком единиц.

Вопрос следующий:

может количество единиц быть некратным 8 ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может кто знает.

Есть микросхеа  Gigalink GLB100HB, представляющая собой мост Ethernet-HDLC.

Пауза между HDLC-кадрами заполняется или маркерами 7Eh или потоком единиц.

Вопрос следующий:

может количество единиц быть некратным 8 ?

 

По правильному DPLL приемника должен работать побитно

и ему все равно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может кто знает.

Есть микросхеа  Gigalink GLB100HB, представляющая собой мост Ethernet-HDLC.

Пауза между HDLC-кадрами заполняется или маркерами 7Eh или потоком единиц.

Вопрос следующий:

может количество единиц быть некратным 8 ?

 

По правильному DPLL приемника должен работать побитно

и ему все равно.

 

Я неточно выразился.

Мост обрамляет HDLC-маркерами Ethernet пакеты, формирует и выдаёт наружу HDLC-поток, где паузу между кадрами он сам заполняет или HDLC-маркерами или потоком единиц (выбирается битом во внутреннем регистре микросхемы) . Так вот можно ли надеяться, что количество единиц в паузе кратно 8? Или он может вставить и 1 и 2 , и 9, ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да лучше включить периодическую передачу и посмотреть на выходе.

Если заказаны маркеры то будет их период,

если заказаны еденицы то скорее всего будет период битстафинга.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да лучше включить периодическую передачу и посмотреть на выходе.

Если заказаны маркеры то будет их период,

если заказаны еденицы то скорее всего будет период битстафинга.

 

Нет! Если заказаны 1, то будут только одни единицы без вставки нулей. Это называется Idle, и по этому состоянию приемник понимает, что линия и передатчик в порядке. По первому НЕНУЛЮ приемник начинает искать флаг.

Если приемник получает 7Е, то он воспринимает это как открывающий флаг и от него включает синхронизацию кадра.

Удачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброго времени суток.

 

Это называется Idle, и по этому состоянию приемник понимает, что линия и передатчик в порядке.

 

Не совсем согласен :)

 

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

 

В робочем режиме пространство между кадрами заполняется маркерами 7Е (01111110) бит-стаффинг над которым не выполняется. :biggrin: И вообще, бит-стаффинг выполняется лишь для того, чтобы найти 7E, FF в потоке.

 

Вся информация между двумя маркерами 7Е является пакетом. Выравнивание пакета выполянется именно по этому маркеру.

 

Для поиска ошибок на приемнике выстанавливается максимальная длинна пакета ( на случай если закрывающий маркер 7Е исказился). Если открывающий маркер был искажен то пакет попросту будет проигнорирован ( приемник не будет знать что этот тоток бытов пакет).

 

Если что исправьте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ув. коллеги, всё это более или менее понятно.

Правда здесь режим IDLE - это не неприятности, а просто пауза когда нет пакетов.

Вопрос в следующем: можна ли рассчитывать, что передатчик будет вставлять в этой паузе кол-во единиц кратное 8 или нет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос в следующем: можна ли рассчитывать, что передатчик будет вставлять в этой паузе кол-во единиц кратное 8 или нет?

HDLC является кодопрозрачным протоколом. Он не зависит от конкретного кода (ASCII/IA5 или EBCDIC) при выполнении функции управления каналом. Восьмибитовая комбинация флага 01111110 помещается в начале и в конце кадра, чтобы дать возможность приемнику распознать начало и конец кадра. Возможны случаи, когда прикладной процесс помещает в данных пользователя последовательность 01111110, совпадающую с флагом. В этом случае передающая станция в поток выходных данных помещает 0 после 5 подряд идущих единиц, встретившихся в любом месте между начальным и конечным флагами кадра. Такая вставка производится в адресное, управляющее, информационное поля и поле CRC. Этот метод называется вставкой битов(bit staffing) ; такую же функцию выполняет знак DLE в протоколе BSC. После того как завершается вставка битов в кадр и по концам кадра помещаются флаги, кадр передается приемнику по каналу.

 

Приемник постоянно контролирует поток битов. При получении нуля с пятью далее идущими подряд единицами (011111) анализирует следующий (седьмой) бит. Если это нуль, он удаляет этот бит. Однако если седьмой бит является единицей (0111111), приемник анализирует восьмой бит. Если это нуль (01111110), он считает, что получена флаговая комбинация. Если это единица, выполняется анализ последующих бит. Возможна ситуация приема либо сигнала покоя, либо сигнала аварийного завершения, на которые станция реагирует соответствующим образом. Таким образом, в протоколе HDLC обеспечиваются кодовая прозрачность по данным. Протоколу безразлично, какие кодовые комбинации находятся в потоке данных. Единственное, что требуется, - это поддерживать уникальность флагов.

 

HDLC используется также два других сигнала: сигнал аварийного завершения (АЗ) состоит из последовательности единиц, число которых не меньше семи и не больше четырнадцати; состояние покоя представляется последовательностью пятнадцати или большего числа единиц.

 

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

 

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

 

Межкадровое временное заполнение сопровождается передачей между кадрами непрерывной последовательности флагов. Флаги могут быть восьмибитовыми комбинациями, или же может иметь место совмещение последнего 0 предыдущего флага с первым 0 следующего флага. Например, 01111110011111100111111001111110 или 011111101111111011111110.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нет. Если речь идет о синхронном HDLC канале то оговаривается, что количество единиц м-у пакетами не меньше 8-и (или 7E), кратность 8-и не поддерживается. В асинхронном варианте HDLC весь обмен, включая вставки ведется с байтовой кратностью, но межпакетное пространство так-же может быть не кратно 8-и.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...