Домашнее задание - Шины. Системные ресурсы. Последовательные порты. Параллельные порты

Выполняйте только если преподаватель назначил это задание. Срок сдачи сообщит преподаватель.

Разобранный образец: расчет полезной пропускной способности и распределение системных ресурсов

Задача-образец:

Серверный контроллер подключен по шине PCIe 4.0 x4. Кроме того, к серверу через последовательный порт RS-232 подключен терминал управления со скоростью 115 200 бод (кадрирование 8-N-1: 1 старт-бит, 8 бит данных, без четности, 1 стоп-бит). Требуется:

  1. Рассчитать полезную пропускную способность PCIe 4.0 x4 с учетом канального кодирования 128b/130b.
  2. Рассчитать скорость передачи полезных пользовательских данных по интерфейсу RS-232 в байтах в секунду.
  3. Объяснить, почему сетевой карте 100 GbE на этом сервере необходимы прерывания MSI-X вместо традиционной линии IRQ.

Эталонное решение:

  1. Расчет PCIe 4.0 x4:
    Символьная скорость PCIe 4.0 составляет $16.0 ext{ GT/s}$ на одну линию (lane).
    Для 4 линий ($x4$) суммарная скорость передачи бит: $16.0 imes 10^9 imes 4 = 64.0 ext{ Гбит/с}$.
    Кодирование 128b/130b передает 128 полезных бит на каждые 130 переданных символов: $$ ext{ПСП}_{ ext{полезная}} = 64.0 imes rac{128}{130} pprox 63.015 ext{ Гбит/с} = rac{63.015}{8} pprox \mathbf{7.877 ext{ ГБ/с}}.$$
  2. Расчет полезной скорости RS-232 (115200 8-N-1):
    При кадрировании 8-N-1 на каждый передаваемый байт (8 бит данных) расходуется 1 старт-бит + 8 бит данных + 1 стоп-бит = 10 физических бит.
    Поскольку используется двухуровневая модуляция (NRZ), 1 бод = 1 бит/с. Физическая скорость = $115\,200 ext{ бит/с}$.
    Полезная скорость в байтах: $$ ext{Скорость} = rac{115\,200 ext{ бит/с}}{10 ext{ бит/байт}} = \mathbf{11\,520 ext{ байт/с}} pprox \mathbf{11.25 ext{ КБ/с}}.$$
  3. Обоснование прерываний MSI-X:
    Классические прерывания IRQ (линии INTx) монопольно прерывают одно ядро процессора и требуют физической линии сигнала. При потоке пакетов 100 Гбит/с (~148 млн пакетов в секунду) одно ядро захлебнется в обработке прерываний (interrupt storm). Технология MSI-X позволяет назначить до 2048 независимых векторов прерываний. Это дает возможность сетевой карте использовать технологию RSS (Receive Side Scaling), распределяя пакетные очереди и их векторы прерываний равномерно по всем физическим ядрам процессора, причем прерывание передается как обычная атомарная запись (PCIe Memory Write) в адрес контроллера Local APIC соответствующего ядра.

Упражнение 1. Расчет характеристик интерфейсов и арбитража шин

Выполните математический расчет пропускной способности и заполните поля таблицы:

Интерфейс Условие задачи Расчет полезной скорости
PCIe 3.0 x8 Символьная скорость 8.0 GT/s, кодирование 128b/130b. Рассчитайте полезную ПСП в ГБ/с.
PCIe 5.0 x4 (NVMe) Символьная скорость 32.0 GT/s, кодирование 128b/130b. Рассчитайте полезную ПСП в ГБ/с.
RS-232 (9600 бод, 8-E-1) 9600 бод, 1 старт, 8 данных, 1 бит четности (parity), 1 стоп-бит. Рассчитайте байт/с.

Упражнение 2. Архитектурный анализ системных ресурсов

Упражнение 3. Инженерный кейс: проектирование контроллера телеметрии