# Декодер LTSSM и Lane Margining PCIe

Разбор журнала обучения канала PCIe (последовательность LTSSM + упорядоченные наборы TS1/TS2): полная шкала Gen1-Gen6, согласованные скорость/ширина, биты идентификатора скорости, инверсия полярности и линий, фазы эквализации и диагностика перезапусков; оценка отчётов lane margining (CSV pcilmr) и тепловая карта глаза.

> Каноническая страница: https://elysiatools.com/ru/tools/pcie-link-training-linkstate-and-lane-margining-eye-decode

- **Категория:** Network

- **Ключевые слова:** обучение канала pcie, ltssm, запас глаза, lane margining, pcilmr, эквализация, скорость канала, отладка gen5

## Обзор

Входные форматы (можно смешивать, построчный толерантный разбор): строки состояний LTSSM (`t=0.9ms Polling.Active`), строки TS1/TS2 с `link=`, `lane=`, `rate=` (маска 0x01 или GT/s), `ec=`, `polarity=inverted` и флаги; CSV из `pcilmr -o` (поколение выводится из EW Min: 18,75 пс→Gen4, 9,375→Gen5, 3,125→Gen6); строки ключ=значение `lane=2 left_ps=…`.

Оценка Perfect/Pass/Fail по PCIe Base Spec Rev 5.0 §8.4.2 и рекомендациям PHY Test Spec — как в pcilmr(8). Gen6 — PAM4 (UI = 31,25 пс).

## Входные данные

- **Журнал LTSSM / отчёт margining** (textarea): t=0.00ms Detect.Quiet t=0.90ms Polling.Active TS1 link=PAD lane=PAD rate=0x01 t=6.40ms Configuration.Lanenum.Accept TS1 link=0 lane=3 t=7.40ms L0 …or pcilmr CSV: Lane,EW Min,EW Rec,EW,…
- **Поколение PCIe (для margining)** (select)
- **Построить тепловую карту глаза (SVG)** (checkbox)

## Когда использовать

- При отладке сбоев инициализации PCIe, когда линк сбрасывается в Detect/Recovery или не поднимается до целевой скорости Gen4, Gen5 или Gen6.
- При анализе отчётов lane margining из утилиты pcilmr для быстрой проверки соответствия запаса глаза допускам спецификации (Perfect, Pass, Fail).
- При валидации фаз эквализации (Equalization Phase 1/2/3) и проверке корректности смены полярности или порядка линий на печатной плате.

## Как это работает

- Синтаксический анализатор построчно разбирает текстовый журнал, распознавая временные метки, переходы состояний LTSSM, поля TS1/TS2 (link, lane, rate, ec, флаги) или структуру CSV-отчёта pcilmr.
- Алгоритм определяет поколение PCIe (автоматически по значениям EW Min или по выбранному параметру), вычисляет согласованную ширину и скорость канала, а также выявляет аномалии обучения и циклические перезапуски.
- Модуль оценки запаса глаза сопоставляет горизонтальный (Left/Right ps) и вертикальный (Up/Down mV) запас каждой линии с требованиями PCIe Base Spec §8.4.2.
- Формируется итоговый HTML-отчёт с диагностической шкалой времени, таблицей статусов линий и векторной SVG-картой раскрытия глаза.

## Сценарии использования

- Диагностика нестабильных линков PCIe Gen5 NVMe-накопителей и ускорителей в серверах высокой плотности.
- Верификация целостности сигналов на этапе валидации плат и переходных плат (Riser cards) с помощью pcilmr.
- Анализ логов логического анализатора протокола PCIe при отладке перехода шины из L0 в Recovery и обратно.

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

### Какие форматы входных данных поддерживает декодер?

Поддерживаются журналы состояний LTSSM с метками времени, дампы упорядоченных наборов TS1/TS2, стандартные CSV-выгрузки из Linux pcilmr -o и строки параметров формата ключ=значение.

### Как рассчитываются критерии Perfect, Pass и Fail для Lane Margining?

Оценка Pass выставляется при достижении минимальных значений EW/EH по PCIe Base Spec Rev 5.0 §8.4.2, Perfect — при соответствии рекомендуемым значениям PHY Test Spec, а Fail — если запас ниже нормативного минимума.

### Как инструмент определяет поколение PCIe в автоматическом режиме?

Поколение вычисляется по значению минимальной ширины глаза (EW Min) в отчёте pcilmr: 18,75 пс соответствует Gen4, 9,375 пс — Gen5, а 3,125 пс — Gen6 (PAM4).

### Учитываются ли аппаратная инверсия полярности и перестановка линий?

Да, декодер извлекает флаги polarity=inverted, отслеживает нумерацию физических линий в пакетах TS1/TS2 и отображает переназначение каналов.

### Можно ли совмещать строки LTSSM и данные margining в одном поле ввода?

Да, парсер выполняет построчный анализ и корректно обрабатывает смешанные текстовые логи, содержащие как последовательности состояний, так и замеры запаса глаза.

## Связанные инструменты

- [Студия графиков CSV: гистограммы, диаграммы рассеяния и боксы](https://elysiatools.com/ru/tools/csv-histogram-scatter-box-plot-chart-studio): Загрузите или вставьте CSV и сразу постройте графики: гистограммы по правилам Стерджеса / Фридмана-Дьякониса / Скотта, рассеяние с r Пирсона и МНК-прямой, боксы Тьюки — каждый график скачивается в PNG и SVG.
- [Разделение train/test со стратификацией](https://elysiatools.com/ru/tools/train-test-split-with-stratification): Читает датасет CSV/JSON и делит на train/validation/test со стратификацией по целевому столбцу (по умолчанию 70/15/15, воспроизводимое зерно) или стратифицированный k-fold; отчёт о распределении классов по сплитам с полосами отклонения, проверка утечек через дубликаты строк, предпросмотр SMOTE (интерполяция ближайших соседей на train) и экспорт CSV в ZIP.
- [Генератор Data URI](https://elysiatools.com/ru/tools/data-uri-generator): Преобразует файлы в Data URI (Base64 или процентное кодирование) для встраивания изображений, шрифтов и ресурсов прямо в HTML, CSS или Markdown
- [Декодер сертификатов X.509](https://elysiatools.com/ru/tools/certificate-decoder): Разбирает SSL/TLS сертификат X.509 (вставить PEM или загрузить .pem/.crt) и показывает субъекта, эмитента, срок действия со статусом, открытый ключ, алгоритм подписи, серийный номер, SAN, использование ключа и отпечаток. Как openssl x509 -text, визуально. Локально.
- [Анализатор Корреляции](https://elysiatools.com/ru/tools/correlation-analyzer): Продвинутый инструмент корреляционного анализа, который вычисляет коэффициенты корреляции между переменными для измерения силы и направления их линейных отношений. Идеально подходит для статистического анализа, финансового моделирования, научных исследований и исследования данных. Возможности: - Множественные методы корреляции (Пирсон, Спирмен, Кендалл) - Генерация корреляционной матрицы - Статистическая проверка значимости (p-значения) - Расчет доверительных интервалов - Визуализация тепловой карты - Генерация матрицы диаграмм рассеяния - Стратегии обработки пропущенных значений - Обнаружение и обработка выбросов - Возможности группового анализа - Подробные статистические отчеты Общие случаи использования: - Финансовый рыночный анализ и оценка рисков - Научные исследования и проверка гипотез - Анализ поведения клиентов и маркетинг - Анализ медицинских и медицинских данных - Контроль качества и оптимизация процессов - Оценка образовательной эффективности
- [Извлекатель данных из SVG-графиков](https://elysiatools.com/ru/tools/svg-chart-to-data-extractor): Извлекает точки данных из SVG-структур линий, столбцов и круговых диаграмм
- [Деобфускатор JavaScript](https://elysiatools.com/ru/tools/javascript-deobfuscator): Деобфусцирует и анализирует запутанный код JavaScript для улучшения читаемости и понимания
- [Обработчик Границ Данных](https://elysiatools.com/ru/tools/data-boundary-processor): Продвинутый инструмент обработки границ, который определяет и обрабатывает минимальные и максимальные значения в числовых данных. Идеально подходит для валидации данных, проверки диапазонов, статистического анализа и предварительной обработки данных.

## Примеры

- [Образцы SVG](https://elysiatools.com/ru/samples/svg-viewer-samples): Образцы векторной графики для браузерного SVG просмотрщика
- [SVG Примеры](https://elysiatools.com/ru/samples/svg-samples): Примеры масштабируемой векторной графики (SVG) демонстрирующие различные возможности и техники SVG
- [Примеры XML](https://elysiatools.com/ru/samples/xml-samples): Примеры формата XML (eXtensible Markup Language) от простых до сложных структур
- [Образцы XML](https://elysiatools.com/ru/samples/xml-viewer-samples): Образцы файлов для браузерного XML просмотрщика
