
Высокие скорости передачи данных, декларируемые спецификацией PCI Express Gen4, обеспечат и высокую пропускную способность, накладывая жесткие ограничения на топологию шинных соединений. По слухам, ограничения будут такими, что требованиям PCIe Gen4 смогут соответствовать только ближайшие к процессору слоты. Увеличение длины проводников напрямую связано с увеличением потерь в канале, что неизбежно приведет к нарушению целостности сигнала, скажется на устойчивости передачи и в результате — на производительности.
Стандарт PCI Express Gen4 решает эту проблему дополнительным контролем амплитуды и таймингов сигнала на стороне приемника — Lane Margining. Зная о своеобразном пределе возможностей, платформа может использовать этот механизм шины PCIe Gen4, как инструмент по оценке электрических характеристик каждой линии PCIe-соединения (линка).
Lane Margining является неотъемлемой частью функциональности всех PCIe-портов Gen4, но ее использование лимитировано активным режимом (L0-состояние) обмена данными со скоростью 16 гигатранзакций в секунду. На меньших скоростях за проверку связи, как и раньше, отвечает только процедура Link Training. Похоже, что в новой реализации PCIe-шины Lane Margining становится интеллектуальным расширением этой процедуры, дополняя ее цифровые возможности аналоговой обработкой сигналов.
Lane Margining и флуктуации производительности
Юстировка канала связи начинается на физическом уровне приемника (PHY). Контроллер PCIe, получив от него информацию о пропускной способности и сообщения об ошибках, оценивает возможности каждого отдельного PCIe-линка системы. После этого выполняется установка аналоговых характеристик передающих цепей интерфейса (voltage to be adjusted), под управлением цифровой логики контроллера (register set). Данные, которыми оперирует цифровая логика, должны быть получены в результате оценки электрофизических характеристик по обе стороны соединения. Ввиду дуплексной реализации шины, описанная процедура выполняется и для приемных линий, и для передающих.
Физический смысл Lane Margining состоит в цифровой подстройке аналоговых электрофизических характеристик передающих цепей, с целью установки граничных величин (margins) передачи сигнала. Речь о границах по осям X (время, timing offset) и Y (амплитуда, voltage offset).

Что показывает глазковая диаграмма?
Наглядное представление о Lane Margining дает глазковая диаграмма — суммарное наложение всех битовых периодов сигнала PCIe-шины, замеренных в различные моменты времени. Такая суперпозиция образует график, информирующий о качестве сигнала. Для быстрой его оценки выполняется сравнение со стандартной метрикой — маской (Eye Mask), которая задает пограничные области. Передача данных будет достоверной, если ни по амплитуде сигнала, ни по его длительности в пределах маски сигнал не фиксируется.

Выше показан пример глазковой диаграммы приемника с достаточным запасом сигнала, превышающим по осям X и Y требования по качеству.
Подводя итоги
Итак, речь об алгоритме взаимодействия PCIe-устройств, соответствующих требованиям PCI Express Gen4, благодаря которому на передающей стороне становится известно о характеристиках сигнала, полученного принимающей стороной. Эти сведения позволяют, учитывая искажения в тракте передачи, подстроить тайминговые и амплитудные характеристики формирования сигнала. Упрощенно, процесс можно разделить на ряд стадий, выполняемых под контролем системного программного обеспечения.
- С выходов передатчика (контакты Tx) в канал связи отправляется тестовый паттерн.
- Тестовый паттерн достигает приемника (контакты Rx), получив некоторые искажения в процессе передачи.
- Устройство, получившее паттерн, подготавливает детальную статусную информацию.
- Программное обеспечение сопоставляет характеристики отправляемых и принимаемых сигналов и оценивает свойства линии связи.
- В зависимости от оценки качества, осуществляется цифровая подстройка аналоговых электрофизических характеристик интерфейсных цепей.
Оценка параметров выполненная средствами штатных интерфейсных цепей, непосредственно при запуске системы или восстановлении после сбоя, обладает лучшей адаптивностью к операционным условиям платформы, чем модель-константа, построенная в лаборатории разработчика, хотя важность моделирования сомнений не вызывает.
Следует обратить внимание на еще один факт, проливающий свет на происхождение термина Lane Margining: передача сигналов в диапазоне сверхвысоких частот неизбежно приводит к повышению уровня паразитного взаимного влияния между соседними проводниками (neighboring lanes). Электрофизические характеристики цепей должны корректироваться с целью минимизации такого взаимовлияния.
Каждый сигнал, формируемый передатчиком на линии Txi, должен успешно добраться до соответствующей линии Rxi, оказав минимальное влияние на соседние цепи Txi-1/Rxi-1 и Txi+1/Rxi+1. Неплохой аналогией будет дорожная разметка, помогающая предотвратить столкновение транспортных потоков, находящихся на разных полосах.