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

SerDes

Чтобы передать 24 или 48 параллельных бит в соседний блок, можно тянуть толстый шлейф, а можно сжать их в несколько быстрых дифференциальных пар. Микросхемы, которые это делают, называют SerDes.

Обновлено Редакция GAW

SerDes (Serializer/Deserializer) — пара микросхем или блоков, которая превращает медленную параллельную шину в один или несколько быстрых последовательных потоков, передаёт их по дифференциальным парам и на приёмной стороне восстанавливает параллельную шину. LVDS Owner's Manual описывает это как объединение медленных сигналов LVTTL в один поток, передачу на высокой скорости и обратное распределение (TI SNLA187, разд. 2.3). Физический уровень — обычно LVDS или CML, а внутри сериализатора работает PLL, умножающая частоту такта.

Четыре архитектуры

TI выделяет четыре основные архитектуры (SNLA187, гл. 3):

АрхитектураКак передаётся тактШирина данныхПример
С параллельным тактомотдельной парой21, 28, 48 бит по нескольким парамDS90CR217, FlatLink
Со встроенными тактовыми битами2 бита на слово10, 16, 18, 24 бита по одной пареDS92LV18
8b/10bвосстанавливается из данных по опорной частотебайтыгигабитные SerDes
Для ПЛИСв аналоговой микросхеме второй ступенинесколько потоков LVDS из ПЛИС—

С параллельным тактом. Шину делит банк мультиплексоров n:1, каждый сериализует свою часть, и потоки идут по нескольким парам вместе с тактовой. TI называет такие SerDes «виртуальным плоским шлейфом»: они передают адрес, данные и сигналы управления процессорной шины. Так устроен и интерфейс матриц FPD-Link. Слабое место — перекос между парами: такт и данные идут по разным проводам (разд. 3.2 и 3.6).

Со встроенными тактовыми битами. Передатчик добавляет к каждому слову два тактовых бита — ноль и единицу, — и в потоке появляется периодический фронт. Десериализатор после включения сам ищет этот фронт и синхронизируется: TI называет это «захватом по случайным данным» (lock to random data). Внешняя опорная частота не нужна, требования к джиттеру мягче, а ширина слова не обязана быть кратной байту (разд. 3.3).

8b/10b. Каждый байт кодируется 10-битным словом с частыми перепадами и балансом нулей и единиц, а границы слов отмечает особый символ. Десериализатор восстанавливает такт по внешней опорной частоте, к стабильности и джиттеру которой требования жёсткие. Подробнее — в статье «Код 8b/10b» (разд. 3.4).

Для ПЛИС. Сериализация в две ступени: ПЛИС объединяет медленные биты в несколько потоков LVDS, а отдельная аналоговая микросхема мультиплексирует их в один быстрый канал и берёт на себя восстановление такта, предыскажения, эквализацию и очистку джиттера (разд. 3.5).

Зачем

По сравнению с параллельной передачей SerDes даёт меньше проводов, особенно земель, меньшее потребление, большую длину кабеля, меньше помех и дешевле кабели и разъёмы; TI называет SerDes с параллельным тактом часто единственным практичным способом передать широкую шину по кабелю длиной несколько метров (SNLA187, разд. 3.6).

Частые вопросы

Зачем нужен SerDes, если можно передать шину параллельно?

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

Что такое lock to random data?

Свойство SerDes со встроенными тактовыми битами: десериализатор сам находит в потоке периодический фронт тактовых бит и синхронизируется с ним, какие бы данные ни шли. Внешняя опорная частота и обучающие последовательности ему не нужны. Это удобно, когда приёмник стоит в удалённом модуле, которым система не управляет напрямую.

Чем SerDes 8b/10b отличается от SerDes со встроенным тактом?

8b/10b кодирует каждый байт в 10 бит с частыми перепадами и балансом нулей и единиц, а границы слов отмечает особым символом-запятой. Ширина данных кратна байту, и десериализатору нужна внешняя опорная частота с малым джиттером. SerDes со встроенным тактом добавляет к слову любой ширины два тактовых бита и синхронизируется сам.

Источники

  1. Texas Instruments. LVDS Owner's Manual: Including High-Speed CML and Signal Conditioning, 4th Edition (SNLA187, 2008) — разд. 2.3: объединение медленных сигналов LVTTL в один поток, передача и обратное распределение — SerDes; гл. 3: четыре архитектуры; 3.2: SerDes с параллельным тактом — банк мультиплексоров n:1 и отдельная тактовая пара, пример DS90CR217 (21 бит), перекос между парами минимизируют; 3.3: встроенные тактовые биты (start-stop) — два бита, 0 и 1, на каждое слово, ширина не кратна байту (10, 16, 18, 24 бита), «захват по случайным данным» без внешнего вмешательства, пример DS92LV18; 3.4: 8b/10b — внешняя опорная частота, жёсткие требования к ней и её джиттеру; 3.5: SerDes для ПЛИС — первая ступень в ПЛИС, вторая в аналоговой микросхеме, встроенные предыскажение, балансировка, эквализация; 3.6: параллельный такт — «виртуальный плоский шлейф», ширина 21, 28 и 48 бит
  2. Texas Instruments. SN75LVDS83B FlatLink Transmitter (SLLS846C, 2014) — пример SerDes с параллельным тактом: 28 бит по четырём парам и пятая пара такта, умножение такта на 7

Нашли ошибку?