PCIe, он же PCI-Express, представляет собой очень мощный интерфейс, давайте рассмотрим основные принципы его использования в собственных проектах. Поначалу PCIe может немного пугать, но он всё же достаточно прост для экспериментов и вполне пригоден для применения в рамках хобби. В определённый момент вы можете решить использовать микросхему PCIe в собственных проектах или, например, задействовать подключение PCIe на Raspberry Pi Compute Module, так что лучше быть к этому готовым.
Сегодня PCIe можно встретить повсюду. В каждом современном компьютере присутствует ряд устройств PCIe, выполняющих важнейшие функции, и даже в iPhone этот интерфейс внутренне используется для соединения процессора с флеш-памятью и микросхемой Wi-Fi. Нам доступны всевозможные устройства с PCIe: контроллеры Ethernet, высокопроизводительные платы Wi-Fi, графические ускорители и всяческие дешёвые NVMe-диски. Если вы экспериментируете с ноутбуком или одноплатником и хотите добавить в него устройство с PCIe, то можете получить сигнал PCIe от одного из разъёмов PCIe или просто подключиться к имеющейся линии PCIe, если таковых разъёмов нет. С момента появления устройств PCIe прошло уже два десятилетия — сейчас эта технология достигла ревизии 5.0 и однозначно останется с нами надолго.
PCIe — это шина, которая соединяет два устройства по типу «точка-точка» — в противоположность более древней PCI, которая могла соединять на материнской плате цепочку устройств. На одной стороне этого соединения присутствует устройство PCIe, а другая выступает хостом. К примеру, в процессоре ноутбука есть несколько портов PCIe — один используется для подключения GPU, другой для платы Wi-Fi, третий для Ethernet, а четвёртый для NVMe-диска.
PCI Express ( Peripheral Component Interconnect Express ), официально сокращенно PCIe или PCI-E ,— это высокоскоростной стандарт последовательной шины расширения компьютера , призванный заменить старые стандарты шин PCI , PCI-X и AGP . PCIe имеет многочисленные улучшения по сравнению со старыми стандартами, включая более высокую максимальную пропускную способность системной шины, меньшее количество контактов ввода-вывода, меньший физический размер, лучшее масштабирование производительности для устройств шины, более подробный механизм обнаружения и сообщения об ошибках (Advanced Error Reporting, AER) и собственную функциональность горячей замены . Более поздние версии стандарта PCIe обеспечивают аппаратную поддержку виртуализации ввода-вывода .
Электрический интерфейс PCI Express измеряется числом одновременных полос. (Полоса — это набор линий передачи и приема данных, аналогичных дороге с одной полосой движения в каждом направлении.) Интерфейс также используется во множестве других стандартов — в частности, в интерфейсе карты расширения ноутбука , называемом ExpressCard . Он также используется в интерфейсах хранения данных SATA Express , U.2 (SFF-8639) и M.2 .
Каждая линия PCIe состоит из как минимум трёх дифференциальных пар — одна представляет тактовый генератор 100 МГц, REFCLK, который (почти) всегда необходим для соединения, а две формируют канал PCIe — одна служит для передачи и вторая для получения. Такая схема называется линией 1x — также бывают линии 2х, 4х, 8х и 16х, в которых используется четыре, восемь, шестнадцать и тридцать две дифференциальные пары соответственно плюс, опять же, REFCLK. Чем шире линия, тем выше её пропускная способность.
Ширина линии PCIe представляет интересную тему со многими важными аспектами, но сначала желательно проговорить, что означает «дифференциальная пара» именно в этом контексте.
В чём разница?
В совокупности такие стандарты, как TTL, CMOS и LVTTL, известны как однотактные технологии, и у них есть некоторые общие нежелательные свойства, а именно: шум заземления напрямую влияет на запас по шуму (бюджет допустимого уровня шума), а любой наведенный шум, измеренный относительно земли, также напрямую добавляется к общему шуму.
Увеличивая перепад напряжения до больших значений, мы можем добиться того, чтобы шум выглядел меньше пропорционально, но за счет скорости, поскольку для создания больших перепадов напряжения требуется больше времени, особенно с учетом того типа емкости и индуктивности, которые мы иногда наблюдаем.
Дифференциальные технологии
Говоря простым языком, дифференциальная пара — это два противоположных сигнала, положительный и отрицательный. Вы получаете логический уровень передаваемого бита путём сравнения этих двух сигналов друг с другом — вместо сравнения уровня каждого отдельного сигнала с землёй, как мы обычно делаем. Этот метод называется «асимметричной сигнализацией». В случае дифференциальной пары сигналы находятся близко друг к другу, а в кабелях даже переплетаются. В результате этого помехи воздействуют на них в равной степени — так как сигналы для получения информации сравниваются друг с другом, это означает, что накладываемый на оба этих сигнала шум на итоговую полученную информацию не влияет. Дифференциальные пары также обуславливают взаимное гашение магнитных полей обоих сигналов, что ведёт к уменьшению шумов на линии передачи.
В результате дифференциальные пары позволяют повысить скорость передачи, не создавая лишнего шума и не повышая восприимчивость к нему. По этой причине в подавляющем большинстве высокоскоростных интерфейсов используется именно эта технология: Ethernet, PCIe, HDMI, DisplayPort, LVDS и даже в USB, хотя USB2 всё же псевдодифференциален, а вот USB 3 уже в этом смысле полноценен. В отказоустойчивых интерфейсах вроде RS485 и CAN также используются дифпары. Любителю не составит проблем начать работать с этой технологией при реализации интерфейсов вроде CAN и даже USB2 — на коротких расстояниях они будут функционировать, несмотря ни на что, хотя в теории дифференциальные сигналы требуют особого подхода.
Тем не менее при разводке печатной платы или сборке кабеля дифпарам действительно необходимо уделять больше внимания. Если в таких случаях не проявить достаточно стараний, есть риск получить загадочные глюки или полностью нерабочие интерфейсы. В этой связи далее предлагаю разобрать все необходимые требования.
Относитесь к дифференциальным парам с уважением
Во-первых, вам нужно держать оба сигнала дифпары рядом по всей их длине. Чем ближе они друг к другу, тем меньше воздействие внешних помех и уровень излучаемого ими шума. Учитывая, что зачастую несколько дифференциальных пар пролегают рядом, это также поможет сохранить целостными сигналы других дифпар. Что касается совместного прокладывания нескольких дифпар, их нужно будет отделить друг от друга и прочих компонентов — будь то заливка полигонами на том же уровне или высокочастотные сигналы. Хорошей практикой здесь будет следовать «правилу 5W», согласно которому между центром дифпары и другими сигналами должно быть расстояние, равное ширине минимум пяти дорожек. К сожалению, соблюсти эту рекомендацию не всегда возможно, но желательно к этому стремиться.
Правило 5W/5S
Перекрестные помехи являются фундаментальным аспектом целостности сигнала как в однопроводных, так и в дифференциальных трассах. Расстояние между сигнальными линиями при каждой конфигурации трассировки определяется с использованием типичных эмпирических правил, которые легко можно задать как правила проектирования в вашем программном обеспечении для проектирования печатных плат. Одно из эмпирических правил для определения расстояния между дифференциальными парами - это правило "5S", иногда называемое правилом "5W" в прикладных заметках и других руководствах по проектированию печатных плат.
Правило 5S гласит, что расстояние между двумя линиями дифференциальной пары должно быть в 5 раз больше ширины каждой трассы в паре. Когда требуется плотная трассировка для нескольких дифференциальных пар, перекрестные помехи между дифференциальными парами становятся важным фактором, и нам нужен способ анализа расстояния между дифференциальными парами. Как оказывается, это функция высоты пар относительно ближайшей земляной плоскости. Давайте более подробно рассмотрим этот вопрос и узнаем, как мы можем определить правильное расстояние между дифференциальными парами, чтобы предотвратить дифференциальные перекрестные помехи.
Что такое дифференциальные перекрестные помехи?
Как следует из названия, дифференциальный перекрестный помехи является аналогом однопроводного перекрестного помехи в дифференциальном режиме, относясь к формам перекрестных помех между дифференциальными парами или к перекрестным помехам, генерируемым на однопроводной дорожке дифференциальной парой. Два типа перекрестных помех, обнаруженных между однопроводными парами (NEXT и FEXT), также встречаются между дифференциальными парами. Сильные дифференциальные перекрестные помехи могут быть индуцированы как емкостным, так и индуктивным путем, в зависимости от частоты и геометрии структуры.
Общее поле, наблюдаемое на некотором боковом расстоянии от пары, является суммой полей от двух пар. Поскольку между двумя концами дифференциальной пары есть некоторое расстояние, общее поле, наблюдаемое на некотором боковом расстоянии от дифференциальной пары, не равно нулю. Более того, сила электромагнитного поля вдали от двух дорожек больше, когда расстояние между двумя дифференциальными парами больше.
Это побуждает к формулировке некоторого правила, которое используется для определения расстояния между дифференциальными парами. Исходя из вышеизложенного обсуждения, и просто зная, что сила поля уменьшается по мере удаления от пары, естественно сформулировать следующие требования к размещению дифференциальных пар:
Расстояние между двумя дифференциальными парами должно быть пропорционально расстоянию между каждой дорожкой в паре.
Расстояние между двумя дифференциальными парами должно быть в некотором отношении пропорционально расстоянию между каждой парой и ее опорной плоскостью (если таковая присутствует).
Давайте рассмотрим следующую геометрию для двух дифференциальных пар и определим дифференциальное перекрестное воздействие между ними. Вероятно, вы думаете, что вся суть дифференциальных пар заключается в подавлении шумов; хотя это и верно для общего режима шума, разница в силе поля между двумя дорожками в паре-жертве будет производить разные уровни шума в каждой паре, проявляясь как шум дифференциального режима на приемнике.
Differential crosstalk model between two pairs
Модель для изучения дифференциальной перекрестной помехи между двумя парами микрополосковых линий.
Используя параметры расстояния между дифференциальными парами, показанные выше, можно использовать два подхода для количественной оценки дифференциального перекрестного воздействия:
Расчет силы дифференциального перекрестного воздействия в модели первого порядка
В вышеупомянутом обсуждении не был рассмотрен еще один аспект: высота следа над его опорной плоскостью и точное расположение следов в паре. Подобные соображения могут быть применены и к дифференциальным парам в стриплайне. Здесь мы хотели бы количественно оценить силу дифференциальной перекрестной помехи как функцию геометрии. Подход, представленный здесь, тесно следует подходу, показанному Дагом Бруксом. Обычно это делается путем определения коэффициента перекрестной помехи из модели цепи. Проблема с этими моделями заключается в том, что они не учитывают силу поля на пострадавшем следе как функцию расстояния между агрессором и жертвой.
В вышеуказанной модели мы можем определить коэффициент перекрестной помехи C как функцию расстояния между следами S и высоты над опорной плоскостью H. Удобно определять коэффициент перекрестной помехи как функцию отношения (S/H). В этом случае коэффициент односторонней перекрестной помехи между двумя следами, разделенными расстоянием S с противоположной полярностью, составляет:
Здесь k является коэффициентом пропорциональности, который связан с временем нарастания сигнала на агрессивной линии, функцией передачи пострадавшей линии и диэлектрической постоянной подложки. Тот, кто проходил курс электромагнетизма, знает, что эта модель основана на силе электрического поля вокруг провода над проводящей плоскостью. Как мы скоро увидим, значение C может быть использовано для определения соотношения общего режима к дифференциальному помеховому шуму, генерируемому на пострадавшем следе для данного соотношения (S/H). Дифференциальный приемник устранит шум общего режима, поэтому мы хотели бы минимизировать шум дифференциального режима.
Дифференциальная перекрестная помеха определяется путем вычисления сумм и разностей в коэффициентах перекрестных помех. Для показанной выше конфигурации перекрестная помеха между одной дифференциальной парой и одним следом в пострадавшей паре является просто суммой их коэффициентов. Заметьте, что для любого значения расстояния между дифференциальными парами, просто примените масштабное преобразование S → S(1+x). Дифференциальная перекрестная помеха является просто разностью коэффициентов перекрестных помех для пострадавших следов:
Если мы построим это как функцию от x для различных значений (S/H), мы обнаружим, что расстояние между двумя парами может быть уменьшено, когда дорожки расположены ближе к земляному слою. Ниже приведен такой график для k = 1; увеличение k просто перемещает эти кривые вверх по оси y. Это делается для удовлетворения определенного требования к дифференциальной перекрестной помехе. Например, предположим, что вам требуется коэффициент дифференциальной перекрестной помехи 0.002; если дорожки находятся дальше от ближайшего земляного слоя, тогда требуется большее расстояние, чтобы убедиться, что вы достигаете этой цели проектирования.
Коэффициент дифференциальной перекрестной помехи как функция расстояния между парами.
Также посмотрите, что происходит, когда (S/H) = 0.5; максимальный коэффициент перекрестной помехи не всегда возникает, когда x = 0. В зависимости от вашей цели проектирования, вы можете расположить дорожки ближе друг к другу и увидеть тот же уровень дифференциальной перекрестной помехи, как если бы дорожки были расположены дальше друг от друга.
Возможно, вы задаетесь вопросом: а что насчет ширины трассы? Ширина трассы важна, поскольку она определяет одиночный и дифференциальный импеданс, емкость и индуктивность. Для заданной спецификации дифференциального импеданса, изменение расстояния между парами дифференциальных трасс и толщины подложки заставляет изменять ширину трассы, чтобы поддерживать одинаковое значение импеданса нечетного режима.
Ещё есть один редко проговариваемый нюанс — согласование импеданса. Если вы проводите дифференциальную пару из точки А в точку В, то нужно обеспечить получение правильного импеданса, и добиться этого проще, чем может показаться.
Импеданс подобен сопротивлению, но относится к изменению сигналов. Каждая часть пути дифпары имеет собственный импеданс: приёмник и передатчик внутри используемой микросхемы, выводы микросхемы, дорожки печатной платы и все разъёмы или кабели между ними, если пара проводится через них. В любой точке, где импеданс сигнала меняется, часть этого сигнала отражается от точки несоответствия, и если изменение окажется достаточно значительным, это приведёт к искажению получаемого сигнала.
Итак, это подразумевает необходимость обеспечения правильного импеданса линии PCIe вдоль всего пути — что на практике означает подбор подходящих разъёмов, а также нужной ширины дорожек и отступов между ними. Оборудование PCIe в основном собирается с учётом импеданса 85 Ом. Такие компоненты, как приёмники, передатчики и соответствующие разъёмы находятся вне нашего контроля, и для получения достаточно однообразного импеданса вдоль всего пути необходимо подстраивать под одно значение те элементы, над которыми контроль у нас есть.
Для начала, если вам для линии PCIe нужны разъёмы, то выбирайте такие, которые будут иметь минимальное несоответствие импеданса. Хорошим вариантом будет использовать высокоскоростные модели или те, что собираются с учётом сигналов PCIe — полноразмерные PCIe, M.2, mPCIe, USB3, USB-C и много высокоскоростных семейств от разных производителей.
Наконец, следует отметить, что в вышеупомянутой модели отсутствует важный параметр: диэлектрическая постоянная. Значение диэлектрической постоянной также важно для влияния на дифференциальные перекрестные помехи, и это одна из причин, по которой конструкции высокой скорости выбирают материалы с более низкими значениями Dk в некоторых слоях. Чтобы увидеть влияние значения Dk на дифференциальные перекрестные помехи, вы могли бы попробовать вернуть значение Dk в вышеуказанную модель коэффициента перекрестных помех, или вам нужно было бы посмотреть на S-параметры для межсоединения, рассчитанные с помощью электромагнитного поля.
Многопортовые S-параметры для дифференциальных перекрестных помех
Когда вы используете решатель полей для расчета дифференциальной перекрестной помехи, вы будете использовать результаты во временной области (показывающие импульсы, поданные на пострадавший соединитель) и S-параметры для количественной оценки широкополосной дифференциальной перекрестной помехи. Первый метод является стандартным подходом к моделированию, который реализован в Altium Designer для однонаправленных трасс, но не для дифференциальных трасс. Второй метод может быть рассчитан только с помощью решателя электромагнитных полей.
На симуляционных результатах ниже я показываю набор кривых S-параметров, полученных с помощью Simbeor для двух коммерческих ламинатов (Megtron 7 и Megtron 8) на тонких слоях. Внутрипарный интервал был установлен равным ширине трасс в паре (S = W). Расстояние между парами по краю варьировалось от 1W, 2W и 3W. Толщина диэлектрика также варьировалась от 1,5 до 3 мил.
Результаты Megtron 7
Результаты Megtron 8
Результаты должны быть очень интересными, поскольку они показывают, что просто приближение земли к дифференциальным парам и сохранение того же краевого расстояния 1W и т. д. между дифференциальными парами не автоматически уменьшает перекрестные помехи. Это связано с тем, что сохранение 1W значительно уменьшает расстояние между парами. Однако переход от 1W/толщины 3 мил к 2W/толщине 1,5 мил всё же уменьшает перекрестные помехи и обеспечивает более высокую плотность трассировки. Это именно то, что нам нужно, если мы разрабатываем HDI-плату с большим количеством высокоскоростных интерфейсов, исходящих от основного процессора.
Мы можем увидеть это из простого расчета ширины трасс/расстояния в паре и значений расстояния между парами для ламинатов толщиной 3 мил и 1,5 мил.
3 мил Meg7 @ расстояние 1W, S/H = 0.75, и S = 2.249 мил
1.5 мил Meg7 @ расстояние 2W, S/H = 0.51, и S = 0.765 мил
Это означает, что плотность всё же увеличилась на 63%, даже при увеличении расстояния между парами до 2W. Если мы увеличим расстояние между парами до 3W, плотность трассировки всё равно значительно возрастет. Здесь есть еще один очень важный эффект, который хотелось бы подчеркнуть в приведенных выше данных: ограничение полосы пропускания. Определённое выше ограничение полосы пропускания видно на графике обратных потерь для соединений; когда обратные потери достигают -10 дБ, это определяется как предел полосы пропускания для канала. Мы можем видеть, что во всех вышеперечисленных случаях эффект ограничения полосы пропускания в каналах уменьшается при переходе к более низкому значению Dk. Причина этого проста: это вынуждает использовать более широкую ширину трасс, что уменьшает индуктивный вклад в импеданс и снижает реактивную часть импеданса линии передачи.
Полные S-параметры в смешанном режиме для двух дифференциальных пар
В некоторых случаях необходимо знать уровень шума в общей моде, создаваемого в дифференциальной паре из-за входного дифференциального сигнала на паре-агрессоре. Это можно рассчитать с использованием S-параметров в смешанном режиме для нашей указанной выше 4-портовой сети. Это расширяет количество портов в матрице S-параметров до 8-портовой сети, хотя только 4 из этих портов являются физическими входами и выходами. Такой набор S-параметров в дифференциальных каналах называется S-параметрами в смешанном режиме и описывает преобразование режимов внутри одной дифференциальной пары и между двумя дифференциальными парами.
Полная матрица S-параметров для дифференциальной пары, учитывающая сигналы в общей и дифференциальной моде, представляет собой матрицу 8x8, форма которой показана ниже:
Матрица S-параметров в смешанном режиме, описывающая дифференциальные перекрестные помехи и преобразование режимов между двумя дифференциальными парами.
Это множество параметров для расчета в симуляции! Современные решатели полей в инструментах EDA могут выполнить этот расчет, анализируя сигнал, индуцированный в пострадавшей дифференциальной паре, путем вычисления вклада от каждой однонаправленной трассы в дифференциальной паре-агрессоре. Матрица выше описывает как FEXT, так и NEXT, наряду с преобразованием режимов (например, FEXT, видимый как общая мода при возбуждении входным дифференциальным сигналом).
Дифференциальные перекрестные помехи создают шум в дифференциальном режиме и шум в общем режиме на пострадавшей паре
В некоторых случаях минимизация шума в общем режиме может быть более важной для целей ЭМС
В некоторых случаях минимизация шума в дифференциальном режиме может быть более важной для снижения ИСИ
ВМЕСТО ЗАКЛЮЧЕНИЯ...
Перейдём к настройке импеданса дорожек печатной платы. Импеданс дифпары зависит от множества переменных факторов, но если вы начинающий электронщик, то существуют упрощённые калькуляторы — (Например: Impedance-Calculator). Промотайте вниз до пункта «Edge-Coupled Surface Microstrip», для прокладки дифпар на слоях толщиной в 35 мкм укажите высоту дорожки 35, а диэлектрическую константу установите на 4,3, если только производитель платы не рекомендует другое значение.
Затем установите толщину изоляции равной расстоянию от дифпар — чтобы его узнать, загляните в раздел документации платы, где описана структура её слоёв. Предположим, ваши дифпары находятся на верхнем слое, и земля проходит по слою под ними. В таком случае ищите толщину «prepreg» между верхним слоем меди и слоем под ним — это значение и будет высотой изоляции. Далее поиграйтесь с шириной дорожек и отступами между ними, стремясь получить сопротивление 85 Ом. В спецификации допускается диапазон от 70 до 100 Ом.
Вот вам практическое упражнение — давайте заглянем в структуру 4-слойной платы OSHPark. Её диэлектрическая константа (dk) равна 3,6, а минимальная ширина дорожек и отступы равны 5 mil, то есть 0,127 мм, или 127 мкм для калькулятора; толщина препрега равна 202 мкм. Введите диэлектрическую константу и толщину препрега в калькулятор и поэкспериментируйте со значениями.
Вы обнаружите, что увеличение ширины дорожки, равно как и уменьшение отступов, ведёт к уменьшению импеданса — установите его на минимально возможное. Вы увидите, что при стремлении к 85 Ом вам нужно использовать пары 0,3/0,127 (ширина/отступы) — это даст 84,8 Ом. Если же вы не можете позволить себе такую ширину дорожек, то используйте 0,2/0,127 — это даст импеданс 106 Ом, который несколько выходит за допустимый диапазон, но при необходимости тоже сгодится.
И последнее — разводите дифпары без лишних манёвров. По возможности не проводите их через отверстия на другие слои — каждая пара отверстий внесёт в сигнал индуктивность, которая может создать помехи для высокоскоростных сигналов. Как правило, начальная и конечная точки линии PCIe находятся на верхнем слое — желательно так всё и оставить. Если есть необходимость перейти на другой слой, добавьте возле дифференциальных пар заземлённые отверстия. Кроме того, удерживайте другие высокоскоростные, быстро меняющиеся либо шумные сигналы как можно дальше от них. Если в ваших проектах наряду с дифпарами также используются высокомощные и асимметричные соединения, то первыми прокладывайте именно дифпары.
Итак, пять важных моментов — прокладывайте дифпары близко друг к другу, размещайте под ними заземление, используйте подобающие коннекторы, подбирайте ширину их дорожек и отступы для получения нужного импеданса, а также делайте разводку без лишних манёвров. Всё это основы, которым необходимо следовать, если вы хотите, чтобы дифференциальные пары в дальнейшем выполняли свою роль достойно.
Если вам доводилось работать с PCIe, ты вы могли открыть для себя одно тайное знание: оказывается, что на практике всё вышеперечисленное проделывать не обязательно.
Возможно, вы слышали, что PCIe работает даже по «мокрой верёвке» (в оригинале wet string — прим. пер.) — впервые так её охарактеризовали на Всемирном конгрессе хакеров 2016 года, 33c3. Это эдакий хакерский способ описывать работу PCIe — вы можете не соблюсти многие из вышеназванных пунктов при подключении двух устройств PCIe, но соединение всё равно заработает. И, что неудивительно, в этом есть крупное зерно истины — PCIe способен работать в субоптимальных условиях, что подтверждается множеством примеров как в мире электронщиков, так и в среде потребителей.
Пожалуй, наиболее доступный пример — это передача сигнала PCIe 1x с помощью USB3, как в использующихся для майнинга райзерах PCIe. Это означает, что вы можете просто зайти в магазин компьютерных аксессуаров и купить продукт, который появился лишь вследствие нарушения правил эксплуатации технологии PCIe.
Ещё один случай, с которым вы могли столкнуться и забыть как страшный сон — это прокладка линии PCIe 8х с помощью, содрогнитесь, проводов для прототипирования. Таким образом Toble_Miner тестировал идею создания переходника для дешёвых высокоскоростных сетевых карт с серверов HP, несовместимых со стандартными слотами PCIe как по распиновке, так и механически. Такая конфигурация для прототипирования позволила ему спроектировать подходящую версию переходника.
Вы вполне можете наспех проложить линию PCIe через кабель FPC, соединив таким небрежным образом две платы. Аналогичный вариант реализовывался в расширителях eGPU с помощью кабелей HDMI, и его также наверняка можно реализовать с помощью обмоточного провода, в котором расширители PCIe соединяли цепочкой, которая успела достичь 5 метров, пока соединение не начало утрачивать стабильность.
PCIe является более снисходительным интерфейсом в сравнении с некоторыми другими, например, с USB3. В нём присутствует механизм подстройки соединения — после установки подключения PCIe приёмник и передатчик перебирают внутренние параметры, корректируя их до тех пор, пока не достигнут максимально возможной скорости при низком уровне ошибок. Далее найденные параметры используются на протяжении всего времени подключения. Также в этом интерфейсе присутствует повторная передача неполученных пакетов. На практике PCIe отличается исключительной стабильностью.
Очевидно, что подстройка соединения PCIe имеет свои уникальные особенности — к примеру, для большего удобства при проектировании платы этот интерфейс также позволяет инвертировать любую дифференциальную пару, за исключением REFCLK, поменяв отрицательный и положительный сигнал местами, что обнаруживается и полноценно компенсируется во время подстройки. Прочие технологии вроде USB3, HDMI или DisplayPort не поддерживают подобные фичи, облегчающие жизнь инженера. В других интерфейсах зачастую требуется, чтобы несколько линий имели одинаковую длину — чтобы данные, передаваемые по одному комплекту дифпар, не прибывали быстрее передаваемых по другому. При этом PCIe отлично работает при расхождении длины дифпар, также обнаруживая и компенсируя это расхождение во время подстройки соединения. И хотя эти особенность больше служат в целях облегчения проектирования печатных плат, нежели отвечают за отказоустойчивость, их наличие определённо помогает.
Помогает ли такая отказоустойчивость электронщикам? Безусловно — эти две особенности используются, по сути, в любой профессиональной схеме PCIe, и если вы находитесь в неидеальных условиях, то можете на свой страх и риск выжать из PCIe ещё больше. С другой стороны, не стоит пренебрегать каждым правилом, только потому что кто-то так делает — приложите усилия к соблюдению пяти описанных пунктов, даже если вы ограничены двухслойной платой и никак не можете получить идеальное значение импеданса.
Следование этим правилам не только научит вас дисциплине использования дифференциальных пар для будущих проектов, но также позволит добиться большей устойчивости сигналов, сократит число ошибок и порадует ваши устройства PCIe. Пренебрежение некоторыми или даже всеми из перечисленных руководств может быть уместным, поскольку в определённых случаях вполне сработает, но затрата лишних тридцати минут на вычисление подобающего импеданса поможет исключить необходимость проектирования второй ревизии вашей платы и обеспечить её исправную работоспособность на протяжении всего срока службы.
Так что вот вам общий принцип: относитесь к дифференциальным парам PCIe с уважением. Если вы используете двухслойную печатную плату и собираете дешёвый прототип, желая поскорее получить результат, не следует просто пренебрегать импедансом из-за того, что для получения 85 Ом дорожки придётся сделать слишком широкими. Откройте калькулятор и просчитайте, насколько можно снизить значение импеданса. Уменьшение толщины изоляции ведёт к снижению импеданса, так что рассмотрите вариант с использованием платы 0,8 мм, если механические особенности проекта это позволяют. Попробуйте разное расположение компонентов в поиске более удачного пути для дорожек PCIe с меньшим уровнем шума. Возможно, подстройка соединения снизит характеристики неидеального подключения на одно-два поколения, но это лучше, чем совсем не получить стабильного соединения. Максимально постарайтесь следовать этим правилам при имеющихся ресурсах, и дифференциальные пары ответят на ваше уважение взаимностью.