Согласование импедансов: как сломать и как починить

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Рано или поздно в руки любителей, начинавших с Ардуино, попадают куда более быстрые устройства. Накинув щупы осциллографа на навесные провода, они обнаруживают, что сигнал, который задумывался, как голубая линия на заглавной картинке на деле выглядит, как жёлтая. В поисках решения проблемы они приходят к весьма многогранной области знаний под названием «Целостность сигналов». И если такие её аспекты, как питание и возвратные токи относительно просты для понимания, то согласование импедансов содержит ряд контринтуитивных положений. В процессе освоения данной темы мне показалось, что материалы по ней разделены на три не слишком хорошо связанных блока:
1) теория с формулами и отсылками к 2 курсу ВУЗа
2) гипертрофированные примеры на симуляторах
3) применение на практике (с эмпирическими суевериями)

Данная статья является попыткой начать с конца. Я возьму работающую схему, выполненную в текстолите. Затем постараюсь ухудшить её характеристики так, чтобы рассогласование линий стало причиной сбоев в работе или хотя бы стало заметно на осциллографе. А затем постараюсь устранить возникшие проблемы.

Для начала обсудим стенд.

В качестве приёмника сигнала будет использован осциллограф MSOX4154A, любезно предоставленный московским подразделением Keysight – большое спасибо Павлу Логинову!

MSOX4154A
MSOX4154A

Источником сигналов будет микросхема ПЛИС 5M80ZE64C5N серии MAX-V (потому, что имелась у меня в наличии).

5M80ZE64C5N
5M80ZE64C5N

Линиями передачи выступят:

  • три кабеля RG-174 длинною 200см, 60см и 20см (волновое сопротивление — 50 Ом)

  • одна витая пара из кабеля UTP-5e длинной 200см, один из проводников будет землёй, второй — сигнальной линией (волновое сопротивление — 100 Ом)

  • две копланарных линии (то есть дорожка расположена на верхнем слое платы, а по бокам и снизу от неё — земляные полигоны) на плате длинною по 40см (волновое сопротивление одной дорожки — 50 Ом, другой — 92 Ом). Длина линий на плате была выбрана исходя из габаритов материнской платы стандарта ATX —305х244мм, диагональ которой почти 40 см.

Разные кабели и дорожки
Разные кабели и дорожки

Я постараюсь обойти стороной вопрос что такое волновое сопротивление. И поменьше писать это словосочетание. Будем считать, что это некоторая характеристика линии передачи. Отмечу лишь, что она не зависит от длины линии.

Итак, зададим на выходе ПЛИСа прямоугольные импульсы амплитудой 3,3В LVTTL, частотой 1МГц и заполнением 50/50. И соединим 20-сантиметровым кабелем этот выход с осциллографом. А входной импеданс осциллографа выберем равным 1МОм, хотя он по умолчанию и так устанавливается осциллографом на эту величину.

Кабель RG-174, 20см, импульс — 500нс, выход — 16мА, вход — 1МОм
Кабель RG-174, 20см, импульс — 500нс, выход — 16мА, вход — 1МОм

Вроде бы красивые, ровные импульсы, с небольшими всплесками сразу после фронтов. Возьмем кабель подлиннее — на 60 сантиметров.

Кабель RG-174, 60см, импульс — 500нс, выход — 16мА, вход — 1МОм
Кабель RG-174, 60см, импульс — 500нс, выход — 16мА, вход — 1МОм

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

Кабель RG-174, 200см, импульс — 500нс, выход — 16мА, вход — 1МОм
Кабель RG-174, 200см, импульс — 500нс, выход — 16мА, вход — 1МОм

Всплески растянулись ещё сильнее и приобрели слегка «уквадраченную» форму. Попробуем переключить вход осциллографа на 50 Ом.

Кабель RG-174, 200см, импульс - 500нс, выход - 16мА, вход - 50 Ом
Кабель RG-174, 200см, импульс - 500нс, выход - 16мА, вход - 50 Ом

Всплески исчезли, но амплитуда упала до 2,27 вольт.

Заметим, что амплитуда и число всплесков при входе 1МОм для всех трёх кабелей одинакова. Помешают ли данные всплески передаче данных? Для стандарта LVTTL входное напряжение логической единицы начинается от 2,0 вольт и выше (по документации на 5M80ZE64C5N — от 1,7 вольт). А входное напряжение логического нуля — от 0,8 вольт и ниже.

Кабель RG-174, 200см, импульс — 500нс, выход — 16мА, вход — 1МОм
Кабель RG-174, 200см, импульс — 500нс, выход — 16мА, вход — 1МОм

Самая крупная просадка, идущая за восходящим фронтом, проваливает напряжение до 2,65 вольт, а самый крупный всплеск, идущий за нисходящим — приподнимает его до 0,6 вольт. Следовательно, если всё остальное в устройстве сделано идеально, то такое рассогласование само по себе не способно вызвать сбой.

Максимальный выходной ток с выводов ПЛИСа является конфигурируемой величиной. Правда, его значение можно выбрать всего из двух вариантов (8мА и 16мА). И по умолчанию среда разработки ПЛИСа выставляет этот ток на максимум. В порядке эксперимента, возможно выдавать сигнал синхронно с двух соседних выводов в одну линию, получая таким образом 32мА. Тогда для двухметрового кабеля осциллограмма будет следующей:

Кабель RG-174, 200см, импульс - 500нс, выход - 32мА, вход - 1МОм
Кабель RG-174, 200см, импульс - 500нс, выход - 32мА, вход - 1МОм

Как видно, длительность каждого всплеска осталась прежней, но возросло их число и амплитуда. На последней осциллограмме самая крупная просадка доходит до 1,85 вольт, а самый крупный всплеск — до 1,5 вольт.

Однако, следует заметить, что во входных буферах большинства цифровых микросхем устанавливаются триггеры Шмитта — специальные блоки с двумя пороговыми уровнями срабатывания. Если превышен верхний порог, то триггер переключается в лог.1. Если затем входное напряжение падает ниже верхнего порога, но не достигает нижнего, то триггер останется в лог.1. И переключится в лог.0 только тогда, когда напряжение станет меньше нижнего порога. Если данные уровни срабатывания соответствуют стандартным для LVTTL уровням входного напряжения, то для ошибочного срабатывания не хватит ни падения до 1,85 вольт (здесь нужно падение до 0,8 вольт) ни всплеска до 1,5 вольт (здесь нужен всплеск до 2,0 вольт). В теории, благодаря триггерам Шмитта, просадки и всплески такой амплитуды также не способны нарушить передачу данных при отсутствие иных проблем. Впрочем, это лишь в теории. Иногда цифровая микросхема способна войти в нештатное состояние даже при слишком длительном фронте входного сигнала. Что уж говорить о пересечении явно указанных пороговых уровней! Отдельно стоит сказать, что всплески (овершуты и андершуты) подобной амплитуды могут попросту вывести из строя приёмник.

Попробуем переключить вход в 50 Ом.

Кабель RG-174, 200см, импульс — 500нс, выход — 32мА, вход — 50 Ом
Кабель RG-174, 200см, импульс — 500нс, выход — 32мА, вход — 50 Ом

Всплески исчезли, амплитуда подросла относительно одиночного выхода и 50-омного входа — до 2,72 вольт.

Вернём входу 1 МОм и попробуем сделать ширину импульсов минимально возможной, скажем, 5нс.

Кабель RG-174, 200см, импульс — 5нс, выход — 32мА, вход — 1МОм
Кабель RG-174, 200см, импульс — 5нс, выход — 32мА, вход — 1МОм

Тут видно, как короткий импульс уходит в линию, фиксируется осциллографом, отражается от его входа, доходит до выхода ПЛИС, частично отражается от него и снова устремляется к осциллографу. Причём отражаясь от выхода ПЛИС, амплитуда импульса меняет знак.

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

Попробуем переключить вход на 50 Ом.

Кабель RG-174, 200см, импульс — 5нс, выход — 32мА, вход — 50 Ом
Кабель RG-174, 200см, импульс — 5нс, выход — 32мА, вход — 50 Ом

Закономерно исчезают отражения и падает амплитуда. Вернём входу 1МОм импеданса и попробуем пустить короткий импульс через одиночный выход, предварительно переключив его с 16мА на 8мА.

Кабель RG-174, 200см, импульс — 5нс, выход — 8мА, вход — 1МОм
Кабель RG-174, 200см, импульс — 5нс, выход — 8мА, вход — 1МОм

Амплитуда и количество отражений драматично упали. Но! Сами отражения теперь не меняют знак после встречи со входом ПЛИС! Можем ли мы сильнее ограничить выходной ток? Да, поставив сразу после выхода из ПЛИС резистор. Скажем, 100 Ом.

Кабель RG-174, 200см, импульс — 5нс, выход — 1,6мА, вход — 1МОм
Кабель RG-174, 200см, импульс — 5нс, выход — 1,6мА, вход — 1МОм

Амплитуда упала ещё сильнее, но число отражений выросло! Посмотрим, как будут выглядеть более длительные прямоугольные импульсы при таком выходе.

Кабель RG-174, 200см, импульс — 500нс, выход — 1,6мА, вход — 1МОм
Кабель RG-174, 200см, импульс — 500нс, выход — 1,6мА, вход — 1МОм

Тут, очевидно, суммируются длинные ступеньки одного знака, но исходная, первая ступенька намного меньше, чем в случае пары 16-миллиамперных выходов. На осциллограмме видно, что пороговое значение логической единицы будет пересечено лишь при появлении на входе осциллографа первого отражения. С логическим нулём — ситуация аналогичная. Однако, фронты каждой ступеньки имеют ровно такую же длительность, что и фронты всплесков в случае сдвоенного выхода. Иными словами, нельзя однозначно утверждать, что сдвоенный выход быстрее, чем одиночный, ослабленный резистором.

Что если мы возьмём одиночный выход, установим его в 16мА и поставим сразу после него резистор, а его номинал подберём таким, чтобы после первого фронта не было ни ступенек, ни всплесков? Тогда мы сделаем то, что называется согласованием выходного импеданса с импедансом линии! То есть сигнал уйдёт в линию, отразится от входа осциллографа (если, конечно, он установлен в 1МОм), вернётся к выходу ПЛИС и полностью поглотится им. Дальнейших отражений не будет! Данный номинал, в принципе, можно вычислить, но пока обойдёмся без формул. Просто установим резистор на 27 Ом и посмотрим на осциллограмму.

Кабель RG-174, 200см, импульс — 500нс, выход — согласован с линией 50 Ом, вход — 1МОм
Кабель RG-174, 200см, импульс — 500нс, выход — согласован с линией 50 Ом, вход — 1МОм

Отражений больше нет, причём амплитуда соответствует номинальной для LVTTL.

Попробуем теперь пропустить короткий импульс 16-миллиамперного выхода через 2 метра витой пары. Напомню,её волновое сопротивление — 100 Ом.

Кабель UTP-5e, 200см, импульс — 5нс, выход — 16мА, вход — 1МОм
Кабель UTP-5e, 200см, импульс — 5нс, выход — 16мА, вход — 1МОм

В целом — похоже на 50-омный RG-174. Попробуем установить вход осциллографа в 50 Ом.

Кабель UTP-5e, 200см, импульс — 5нс, выход — 16мА, вход — 50 Ом
Кабель UTP-5e, 200см, импульс — 5нс, выход — 16мА, вход — 50 Ом

Отражения не исчезли! Вернём входу осциллографа 1 МОм и попробуем согласовать линию на стороне микросхемы, поставив сразу после выхода 77 Ом.

Кабель UTP-5e, 200см, импульс — 5нс, выход — согласован с линией 100 Ом, вход — 1МОм
Кабель UTP-5e, 200см, импульс — 5нс, выход — согласован с линией 100 Ом, вход — 1МОм

Отражения сведены к минимуму.

Вот так будет выглядеть согласование витой пары на стороне источника по сравнению с полным отсутствием согласования.

Жёлтый график — согласованная на стороне источника витая пара,
голубой график — несогласованная витая пара
Жёлтый график — согласованная на стороне источника витая пара, голубой график — несогласованная витая пара

А так будет выглядеть согласование витой пары на стороне источника по сравнению с попыткой согласовать линию переключением входа осциллографа в 50 Ом.

Жёлтый график — согласованная на стороне источника витая пара,
голубой график — несогласованная витая пара и 50-омный вход
Жёлтый график — согласованная на стороне источника витая пара, голубой график — несогласованная витая пара и 50-омный вход

Попробуем кратко разобраться, почему так происходит.

Если на конце линии передачи сопротивление между жилой и экраном не равно волновому, то от этого конца произойдёт отражение. Это отражение будет тем больше, чем больше данное сопротивление отличается от волнового. Так как источник сигнала — это по сути источник напряжения, то он обладает некоторым внутренним сопротивлением. Если его дополнить внешним резистором так, чтобы в сумме сопротивление было равно волновому сопротивлению линии, то даже если сигнал отразится от приёмника, его отражение будет поглощено источником. Если же его не дополнять, то сигнал, отразившись от приёмника, отразится и от источника, а затем снова попадёт в приёмник, создавая эхо.

Посмотрим теперь на отличия 50-омного кабеля (длиной 60 см) и 50-омной дорожки на плате (длиной 40 см).

Жёлтый график — дорожка 50 Ом, 40см, голубой график — кабель RG-174, 60см;
импульс - 500нс, выход — 16мА, вход — 1МОм
Жёлтый график — дорожка 50 Ом, 40см, голубой график — кабель RG-174, 60см; импульс - 500нс, выход — 16мА, вход — 1МОм

В целом — весьма похоже. Некоторые различия по амплитуде отражений могут объясняться не вполне точным вычислением ширины дорожки для достижения требуемого импеданса. А различия по длительности отражений обусловлены разной длиной проводников.

Наконец посмотрим на прохождение сигнала через дорожку шириной 0,125мм (волновое сопротивление — 92 Ом): несогласованной и согласованной на стороне источника . К 23 Омам внутреннего сопротивления выхода ПЛИС надо добавить 69 Ом и получится 92 Ома — как у дорожки.

Дорожка 0,125мм, 40см, импульс — 500нс, вход — 1МОм.
Жёлтый график — выход 16мА, голубой график — выход согласован.
Дорожка 0,125мм, 40см, импульс — 500нс, вход — 1МОм. Жёлтый график — выход 16мА, голубой график — выход согласован.

Видно, что дорожки на плате принципиально ничем не отличаются от кабелей. А само согласование не является чем-то магическим. И производится установкой резисторов либо на стороне приёмника, либо на стороне источника, при наличии у него запаса по току. Также, при отсутствии запаса по току у встроенных буферов микросхемы, возможна установка отдельных буферных микросхем, обладающих этим запасом.

Не исключено, что после прочтения данной статьи могли остаться вопросы. К примеру:

  • почему согласование на стороне приёмника (осциллографа) понижает амплитуду сигнала и зачем такое согласование вообще может быть нужно?

  • где в документации найти внутреннее сопротивление выходного буфера микросхемы, чтобы не гадать с резисторами?

  • как получается, что сигнал способен одинаково хорошо отразится как от обрубленного конца коаксиального кабеля, так и от такого конца, где жила коротко замкнута на экран?

  • что же такое — это самое волновое сопротивление?

Но обо всём этом — в другой раз.

Источник: https://habr.com/ru/post/583694/


Интересные статьи

Интересные статьи

Нередко при работе с Bitrix24 REST API возникает необходимость быстро получить содержимое определенных полей всех элементов какого-то списка (например, лидов). Традиционн...
В 1С-Битрикс: Управление сайтом (как и в Битрикс24) десятки, если не сотни настраиваемых типов данных (или сущностей): инфоблоки, пользователи, заказы, склады, форумы, блоги и т.д. Стр...
В 1С Битрикс есть специальные сущности под названием “Информационные блоки, сокращенно (инфоблоки)“, я думаю каждый с ними знаком, но не каждый понимает, что это такое и для чего они нужны
Если Вы используете в своих проектах инфоблоки 2.0 и таблицы InnoDB, то есть шанс в один прекрасный момент столкнуться с ошибкой MySQL «SQL Error (1118): Row size too large. The maximum row si...
В «1С-Битрикс» считают: современный интернет-магазин должен быть визуально привлекательным, адаптированным для просмотра с мобильных устройств и максимально персонализированным с помощью технологии Бо...