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 со встроенным тактом добавляет к слову любой ширины два тактовых бита и синхронизируется сам.
Источники
- 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 бит
- Texas Instruments. SN75LVDS83B FlatLink Transmitter (SLLS846C, 2014) — пример SerDes с параллельным тактом: 28 бит по четырём парам и пятая пара такта, умножение такта на 7
Нашли ошибку?
Смотрите также
- LVDS3,5 мА, 350 мВ на 100 Ом, терминатор, failsafe, M-LVDS, FPD-Link
- FPD-Link (FlatLink)Сериализация параллельного RGB в пары LVDS для матриц дисплеев
- Код 8b/10bЛинейный код: байт в 10 бит с балансом нулей и единиц и частыми перепадами
- CML (Current-Mode Logic)Быстрая дифференциальная логика с токовым ключом и нагрузкой 50 Ом
- PLLУмножитель частоты: ФАПЧ в тактировании МК
- Перекос (skew)Разница задержек сигналов, которые должны переключаться одновременно