4B5B кодирование в телекоммуникациях: преобразование 4 бит в 5 для самосинхронизации сигнала. Увеличение объема данных на 25%. Альтернатива – скремблирование.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Код линии
Line code
В телекоммуникациях 4B5B — это вид кодирования линии передачи данных. 4B5B преобразует группы из 4 бит данных в группы из 5 бит для передачи. Эти 5-битные слова предопределены в таблице и выбираются таким образом, чтобы обеспечить достаточное количество переключений состояния линии для формирования самосинхронизирующегося сигнала. Побочным эффектом этого кода является увеличение объема передаваемых данных на 25% для передачи того же объема информации. Альтернативой кодированию 4B5B является использование скремблера. Некоторые системы используют скремблеры в сочетании с кодированием 4B5B для обеспечения баланса постоянного тока и повышения электромагнитной совместимости. В зависимости от стандарта или спецификации, может оставаться несколько неиспользуемых 5-битных кодов. Обнаружение любого из неиспользуемых кодов в потоке данных может указывать на наличие неисправности в канале связи. Таким образом, неиспользуемые коды могут быть использованы для обнаружения ошибок в потоке данных.
In telecommunication, 4B5B is a form of data communications line code. 4B5B maps groups of 4 bits of data onto groups of 5 bits for transmission. These 5 bit words are pre determined in a dictionary and they are chosen to ensure that there will be sufficient transitions in the line state to produce a self clocking signal. A collateral effect of the code is that 25% more bits are needed to send the same information. An alternative to using 4B5B coding is to use a scrambler. Some systems use scramblers in conjunction with 4B5B coding to assure DC balance and improve electromagnetic compatibility. Depending on the standard or specification of interest, there may be several 5 bit output codes left unused. The presence of any of the unused codes in the data stream can be used as an indication that there is a fault somewhere in the link. Therefore, the unused codes can be used to detect errors in the data stream.
Приложения
4B5B получил распространение благодаря интерфейсу Fiber Distributed Data Interface (FDDI) в середине 1980-х годов. Он был принят для цифровой передачи аудио MADI в 1989 году и Fast Ethernet в 1995 году. Название 4B5B обычно относится к версии, используемой в FDDI. Другие 4-5-битные коды применялись для магнитной записи и известны как групповое кодирование (GCR), однако это коды с ограниченной длиной серии (0,2), допускающие не более двух последовательных нулей. 4B5B позволяет иметь до трех последовательных нулей (код RLL (0,3)), обеспечивая большее разнообразие управляющих кодов. Для передачи по оптическому волокну выход 4B5B кодируется методом NRZI. FDDI по медным кабелям (CDDI) и 100BASE TX Fast Ethernet используют кодирование MLT 3. Кодирование 4B5B также применяется в коммуникациях USB Power Delivery, где оно передается по контакту CC разъема USB Type-C (с последующим кодированием методом двухфазного кода знака) или по линиям питания USB Type-A/B (с последующим кодированием методом частотной модуляции).
4B5B was popularized by Fiber Distributed Data Interface (FDDI) in the mid 1980s. It was adopted for digital audio transmission by MADI in 1989. and by Fast Ethernet in 1995. The name 4B5B is generally taken to mean the FDDI version. Other 4 to 5 bit codes have been used for magnetic recording and are known as group coded recording (GCR), but those are (0,2) run length limited codes, with at most two consecutive zeros. 4B5B allows up to three consecutive zeros (a (0,3) RLL code), providing a greater variety of control codes. On optical fiber, the 4B5B output is NRZI encoded. FDDI over copper (CDDI) uses MLT 3 encoding instead, as does 100BASE TX Fast Ethernet. The 4B5B encoding is also used for USB Power Delivery communication, where it is sent over the USB C CC pin (further encoded using biphase mark code) or the USB A/B power lines (further encoded using frequency shift keying).
Часовой режим
Коды 4B5B разработаны для обеспечения как минимум двух переходов на каждые 5 бит выходного кода, независимо от входных данных. Эти переходы предоставляют приемнику необходимые сигналы для восстановления тактовой частоты. Например, последовательность из 4 бит, такая как 0000, при использовании кодирования NRZI не содержит переходов, что может привести к проблемам с синхронизацией для приемника. 4B5B решает эту проблему, сопоставляя 4-битный блок с 5-битным кодом, в данном случае – 11110. Существует восемь 5-битных кодов, содержащих три последовательных нуля: 00000, 00001, 00010, 01000, 10000, 00011, 10001, 11000. Это оставляет доступными 24 кода.
4B5B codes are designed to produce at least two transitions per 5 bits of output code regardless of input data. The transitions provide necessary transitions for the receiver to perform clock recovery. For example, a run of 4 bits such as 0000 using NRZI encoding contains no transitions and that may cause clocking problems for the receiver. 4B5B solves this problem by assigning the 4 bit block a 5 bit code, in this case, 11110. There are eight 5 bit codes that have 3 consecutive 0s: 00000, 00001, 00010, 01000, 10000, 00011, 10001, 11000. This leaves 24 codes available.