RapidIO

редактировать
Технология электрических соединений
RapidIO
Добросовестное использование логотипа RapidIO.jpg RapidIO - унифицированная структура для вычислений, критически важных для производительности
Год создания2000; 20 лет назад (2000 г.)
Ширина в битахШирина портов 1, 2, 4, 8 и 16 полос
Кол-во устройствРазмеры 256, 65 536 и 4294967 296
Скоростьна полосу (в каждом направлении):
  • 1.x : 1.25, 2.5, 3.125
  • 2.x : добавлено 5 и 6.25
  • 3.x : добавлено 10.3125
  • 4.x : добавлено 12.5 и 25.3125
СтильПоследовательный
интерфейс горячего подключенияДа
Внешний интерфейсДа, чип-чип, плата-плата (объединительная плата), шасси-шасси
Веб-сайтwww.rapidio.org

The Архитектура RapidIO - это высокопроизводительная технология пакетной коммутации межсоединений. RapidIO поддерживает семантику обмена сообщениями, чтения / записи и когерентности кэша. Структуры RapidIO гарантируют упорядоченную доставку пакетов, позволяя аппаратно реализовать протоколы с энергоэффективностью и эффективностью использования площади. Основываясь на стандартных электрических спецификациях, например, для Ethernet, RapidIO может использоваться как межсоединение между кристаллами, платами и шасси. Протокол продается как RapidIO - унифицированная матрица для вычислений, критичных к производительности, и используется во многих приложениях, таких как центры обработки данных и высокопроизводительные вычисления, инфраструктура связи, промышленная автоматизация и военная и аэрокосмическая промышленность, которые ограничены по крайней мере одним из размеров, веса и т.д. и мощность (SWaP).

Содержание
  • 1 История
    • 1.1 История выпусков
    • 1.2 RapidIO, используемая в беспроводной инфраструктуре
    • 1.3 RapidIO, используемая в центрах обработки данных / аналитика HPC
    • 1.4 RapidIO в аэрокосмической отрасли
    • 1.5 Дорожная карта PHY
  • 2 Терминология
  • 3 Обзор протокола
    • 3.1 Физический уровень
      • 3.1.1 Пакеты
      • 3.1.2 Управляющие символы
      • 3.1.3 Последовательность IDLE
    • 3.2 Транспортный уровень
    • 3.3 Логический уровень
      • 3.3.1 Логический ввод / вывод
      • 3.3.2 Обмен сообщениями
      • 3.3.3 Управление потоком
      • 3.3.4 CC-NUMA
      • 3.3.5 Потоковая передача данных
    • 3.4 Инициализация системы
    • 3.5 Управление ошибками
  • 4 Форм-факторы
  • 5 Программное обеспечение
  • 6 Приложения
  • 7 Конкурирующие протоколы
  • 8 См. Также
  • 9 Ссылки
  • 10 Внешние ссылки
История

RapidIO берет свое начало в энергоэффективных высокопроизводительных вычислениях. Первоначально протокол был разработан Mercury Computer Systems и Motorola (Freescale ) в качестве замены проприетарной шины Mercury RACEway и шины PowerPC от Freescale. Торговая ассоциация RapidIO была образована в феврале 2000 года и включала производителей телекоммуникационных систем и систем хранения данных, а также компании по производству FPGA, процессоров и коммутаторов. Протокол был разработан для достижения следующих целей:

  • Низкая задержка
  • Гарантированная, упорядоченная доставка пакетов
  • Поддержка обмена сообщениями и семантики чтения / записи
  • Может быть используется в системах с требованиями к отказоустойчивости / высокой доступности
  • Механизмы управления потоком для управления краткосрочным (менее 10 микросекунд), среднесрочным (десятки микросекунд) и долгосрочным (от сотен микросекунд до миллисекунд) перегрузка
  • Эффективная реализация протокола на оборудовании
  • Низкое энергопотребление системы
  • Масштабирование от двух до тысяч узлов

История выпусков

Версия 1.1 спецификации RapidIO (3xN Gen1 ), выпущенный в марте 2001 г., определял широкую параллельную шину. Эта спецификация не получила широкого коммерческого применения.

Версия 1.2 спецификации RapidIO, выпущенная в июне 2002 г., определяет последовательное межсоединение на основе физического уровня XAUI. Устройства, основанные на этой спецификации, достигли значительного коммерческого успеха в области беспроводной основной полосы частот, обработки изображений и военных вычислений.

Версия 1.3 спецификации RapidIO была выпущена в июне 2005 г.

Версия 2.0 спецификации RapidIO (6xN Gen2 ), выпущенная в марте 2008 г., увеличила ширину портов (2 ×, 8 × и 16 ×) и увеличили максимальную скорость полосы до 6,25 ГБд / 5 Гбит / с. Версия 2.1 повторила и расширила коммерческий успех спецификации 1.2.

Версия 2.1 спецификации RapidIO была выпущена в сентябре 2009 года.

Версия 2.2 спецификации RapidIO была выпущена в мае 2011 года.

Версия 3.0 спецификации RapidIO (10xN Gen3 ), выпущенная в Ocbober 2013, содержит следующие изменения и улучшения по сравнению со спецификациями 2.x:

  • На основе отраслевого стандарта Ethernet 10GBASE- Электрические характеристики KR для приложений с короткой (20 см + разъем) и длинной (1 м + 2) досягаемости
  • Непосредственное использование обучающей схемы Ethernet 10GBASE-KR DME для оптимизации качества сигнала большой досягаемости
  • Определяет схему кодирования 64b / 67b (аналогичную стандарту Interlaken ) для поддержки как медных, так и оптических межсоединений и для повышения эффективности полосы пропускания
  • Динамические асимметричные ссылки для экономии энергии (например, 4 × в одном направлении, 1 × в другом)
  • Добавление синхронизации времени Возможности реализации аналогичны IEEE 1588, но гораздо дешевле в реализации
  • Поддержка 32-битных идентификаторов устройств, увеличивающий максимальный размер системы и обеспечивающий инновационную поддержку аппаратной виртуализации
  • Пересмотрено Модель программирования таблицы маршрутизации упрощает программное обеспечение для управления сетью
  • Оптимизация протокола обмена пакетами

Версия 3.1 спецификации RapidIO, выпущенная в Ocbober 2014, была разработана в сотрудничестве между RapidIO Trade Association и NGSIS. Версия 3.1 имеет следующие улучшения по сравнению со спецификацией 3.0:

  • Протокол MECS Time Synchronization для небольших встроенных систем. MECS Time Synchronization поддерживает резервные источники времени. Этот протокол имеет более низкую стоимость, чем протокол синхронизации временных меток, представленный в версии 3.0.
  • PRBS средства тестирования и стандартный интерфейс регистров.
  • Определение поведения структурно асимметричного канала и стандартный интерфейс регистров. Структурно асимметричные связи несут гораздо больше данных в одном направлении, чем в другом, для таких приложений, как датчики или конвейеры обработки. В отличие от динамических асимметричных связей, структурно асимметричные связи позволяют разработчикам удалять полосы на платах и ​​в микросхемах, экономя размер, вес и мощность. Структурно асимметричные каналы также позволяют использовать альтернативные полосы в случае аппаратного сбоя на многополосном порте.
  • Расширенный журнал ошибок для регистрации серии ошибок в диагностических целях
  • Пространственное устройство профили для конечных точек и коммутаторов, которые определяют, что значит быть совместимым с пространством устройством RapidIO.

Версия 3.2 спецификации RapidIO была выпущена в феврале 2016 года.

Версия 4.0 спецификации RapidIO (25xN Gen4 ) был выпущен в июне 2016 года. Имеет следующие изменения и улучшения по сравнению со спецификациями 3.x:

  • Поддержка скорости канала 25 Гбод и спецификации физического уровня с соответствующими изменениями модели программирования
  • Разрешить IDLE3 для использования с любым классом скорости передачи данных с указанным согласованием последовательности IDLE
  • Увеличен максимальный размер пакета до 284 байтов в ожидании спецификации Cache Coherency
  • Поддержка 16 приоритетов физического уровня
  • Поддержка «безошибочной передачи» для изохронно высокой пропускной способности. передача информации нам

Версия 4.1 спецификации RapidIO была выпущена в июле 2017 года.

RapidIO используется в беспроводной инфраструктуре

Фабрики RapidIO занимают доминирующую долю рынка в глобальном развертывании сотовой инфраструктуры 3G, 4G и Сети LTE с миллионами портов RapidIO, поставленные на беспроводные базовые станции по всему миру. Изначально фабрики RapidIO были разработаны для поддержки соединения процессоров разных типов от разных производителей в единую систему. Эта гибкость привела к широкому использованию RapidIO в оборудовании беспроводной инфраструктуры, где существует необходимость объединить разнородные, DSP, FPGA и коммуникационные процессоры вместе в тесно связанную систему с низкой задержкой и высокой надежностью.

RapidIO, используемый в центрах обработки данных / аналитике HPC

Системы центра обработки данных и аналитики HPC были развернуты с использованием RapidIO 2D Torus Mesh Fabric, обеспечивающего высокоскоростной интерфейс общего назначения между картриджами системы для приложения, которые выигрывают от обмена данными между узлами с высокой пропускной способностью и малой задержкой. Унифицированная матрица RapidIO 2D Torus маршрутизируется в виде кольцевой конфигурации тора, соединяющей до 45 серверных картриджей, способных обеспечивать соединения 5 Гбит / с на каждую полосу в каждом направлении к своим северным, южным, восточным и западным соседям. Это позволяет системе соответствовать множеству уникальных приложений HPC, где требуется эффективный локализованный трафик.

Кроме того, с использованием открытого модульного центра обработки данных и вычислительной платформы гетерогенная система высокопроизводительных вычислений продемонстрировала атрибут RapidIO с низкой задержкой для обеспечения аналитики в реальном времени. В марте 2015 года было объявлено о выпуске коммутатора верхнего уровня для внедрения RapidIO в основные приложения центров обработки данных.

RapidIO в аэрокосмической отрасли

Межкомпонентное соединение или «шина» является одной из критически важных технологий в проектирование и разработка бортовых систем космического корабля, определяющие его архитектуру и уровень сложности. Существует множество существующих архитектур, которые все еще используются, учитывая их уровень зрелости. Этих существующих систем достаточно для заданного типа архитектурных потребностей и требований. К сожалению, для миссий следующего поколения требуется более функциональная архитектура авионики; что намного превышает возможности существующих архитектур. Жизнеспособным вариантом проектирования и разработки этих архитектур следующего поколения является использование существующих коммерческих протоколов, способных обеспечить высокий уровень передачи данных.

В 2012 году RapidIO был выбран рабочей группой по стандарту межсоединений космических аппаратов следующего поколения (NGSIS) в качестве основы для стандартных межсоединений связи, которые будут использоваться в космических аппаратах. NGSIS - это комплексная разработка стандартов, которая включает в себя разработку RapidIO версии 3.1 и разработку стандартов аппаратного обеспечения в рамках VITA 78 под названием SpaceVPX или High ReliabilityVPX. Комитет по требованиям к NGSIS разработал обширные критерии требований с 47 различными элементами для межсоединения NGSIS. Результаты независимых торговых исследований, проведенных компаниями-членами NGSIS, продемонстрировали превосходство RapidIO над другими существующими коммерческими протоколами, такими как InfiniBand, Fibre Channel и 10G Ethernet. В результате группа решила, что RapidIO предлагает лучшее общее межсоединение для нужд космических аппаратов следующего поколения.

Дорожная карта PHY

Дорожная карта RapidIO согласуется с развитием Ethernet PHY. Спецификации RapidIO для каналов 50 ГБ / день и выше находятся в стадии изучения.

Терминология
Link Partner
Один конец канала RapidIO.
Endpoint
Устройство, которое может создавать и / или завершать пакеты RapidIO.
Элемент обработки
Устройство, имеющее хотя бы один порт RapidIO
Коммутатор
Устройство которые могут маршрутизировать пакеты RapidIO.
Обзор протокола

Протокол RapidIO определен в трехуровневой спецификации:

  • Физические: электрические характеристики, PCS / PMA, протокол канального уровня для надежного обмена пакетами
  • Транспорт: модель маршрутизации, многоадресной рассылки и программирования
  • Логика: логический ввод-вывод, обмен сообщениями, глобальная разделяемая память (CC-NUMA ), управление потоком, потоковая передача данных

Технические характеристики системы включают:

  • Инициализация системы
  • Управление ошибками / горячая замена

Физический уровень

Электрические характеристики RapidIO основаны на отраслевых стандартах Ethernet и Optical Interconnect Forum:

  • XAUI для полос пропускания со скоростью 1,25, 2,5 и 3,125 ГБд (1, 2 и 2,5 Гбит / с)
  • OIF CEI 6+ Гбит / с для скоростей полосы 5,0 и 6,25 ГБд (4 и 5 Гбит / с) /s)
  • 10GBASE-KR 802.3-ap (большая досягаемость) и 802.3-ba (короткая досягаемость) для полос пропускания со скоростью 10,3125 Гбит / с (9,85 Гбит / с)

Уровень RapidIO PCS / PMA поддерживает два формы кодирования / кадрирования:

  • 8b / 10b для полос пропускания со скоростью до 6,25 ГБд
  • 64b / 67b, аналогично тому, что используется Interlaken для полос скорости более 6,25 ГБд

Каждый элемент обработки RapidIO передает и принимает информацию трех видов: пакеты, управляющие символы и последовательность ожидания.

Пакеты

Каждый пакет имеет два значения, которые управляют обменом на физическом уровне этого пакета. Первый - это идентификатор подтверждения (ackID), который представляет собой специфичное для канала, уникальное, 5-, 6- или 12-битное значение, которое используется для отслеживания пакетов, которыми обмениваются по ссылке. Пакеты передаются с последовательно увеличивающимися значениями ackID. Поскольку ackID специфичен для ссылки, ackID покрывается не CRC, а протоколом. Это позволяет ackID изменяться с каждым каналом, по которому он проходит, в то время как CRC пакета может оставаться постоянной сквозной проверкой целостности пакета. Когда пакет успешно получен, он подтверждается с помощью ackID пакета. Передатчик должен сохранять пакет до тех пор, пока он не будет успешно подтвержден партнером по каналу связи.

Второе значение - это физический приоритет пакета. Физический приоритет состоит из бита идентификатора виртуального канала (VC), битов приоритета и бита критического потока запросов (CRF). Бит VC определяет, идентифицируют ли биты Priority и CRF виртуальный канал от 1 до 8, или они используются в качестве приоритета в виртуальном канале 0. Виртуальным каналам назначается гарантированная минимальная ширина полосы. В виртуальном канале 0 пакеты с более высоким приоритетом могут передавать пакеты с более низким приоритетом. Пакеты ответа должны иметь более высокий физический приоритет, чем запросы, чтобы избежать взаимоблокировки.

Вклад физического уровня в пакеты RapidIO - это 2-байтовый заголовок в начале каждого пакета, который включает ackID и физический приоритет, и последнее 2-байтовое значение CRC для проверки целостности пакета. Пакеты размером более 80 байтов также имеют промежуточный CRC после первых 80 байтов. За одним исключением значение CRC пакета действует как сквозная проверка целостности.

Управляющие символы

Управляющие символы RapidIO могут быть отправлены в любое время, в том числе внутри пакета. Это дает RapidIO минимально возможную задержку внутриполосного тракта управления, позволяя протоколу достичь высокой пропускной способности с меньшими буферами, чем другие протоколы.

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

Процедура исправления ошибок выполняется очень быстро. Когда приемник обнаруживает ошибку передачи в принятом потоке данных, приемник заставляет связанный с ним передатчик послать управляющий символ «Пакет не принят». Когда партнер по каналу связи получает контрольный символ "Пакет не принят", он прекращает передачу новых пакетов и отправляет контрольный символ "Запрос соединения / статус порта". Символ управления Link Response указывает ackID, который должен использоваться для следующего переданного пакета. Затем передача пакета возобновляется.

Последовательность IDLE

Последовательность IDLE используется во время инициализации линии связи для оптимизации качества сигнала. Он также передается, когда ссылка не имеет управляющих символов или пакетов для отправки.

Транспортный уровень

Каждая конечная точка RapidIO однозначно определяется идентификатором устройства (deviceID). Каждый пакет RapidIO содержит два идентификатора устройства. Первый - это идентификатор пункта назначения (destID), который указывает, куда следует направить пакет. Второй - это идентификатор источника (srcID), который указывает, откуда был отправлен пакет. Когда конечная точка получает пакет запроса RapidIO, на который требуется ответ, пакет ответа составляется путем обмена srcID и destID запроса.

Коммутаторы RapidIO используют destID полученных пакетов для определения выходного порта или портов, которые должны пересылать пакет. Как правило, destID используется для индексации массива контрольных значений. Операция индексации выполняется быстро и недорого. Коммутаторы RapidIO поддерживают стандартную модель программирования для таблицы маршрутизации, что упрощает управление системой.

Транспортный уровень RapidIO поддерживает любую топологию сети, от простых деревьев и сеток до n-мерных гиперкубов, многомерных тороидов и более сложных архитектур, таких как запутанные сети.

Транспортный уровень RapidIO обеспечивает виртуализацию оборудования (например, конечная точка RapidIO может поддерживать несколько идентификаторов устройств). Части идентификатора пункта назначения каждого пакета могут использоваться для идентификации определенных частей виртуального оборудования в конечной точке.

Логический уровень

Логический уровень RapidIO состоит из нескольких спецификаций, каждая из которых обеспечивает форматы пакетов и протоколы для различной семантики транзакций.

Логический ввод-вывод

Уровень логического ввода-вывода определяет форматы пакетов для чтения, записи, записи с ответом и различных атомарных транзакций. Примеры атомарных транзакций: установка, очистка, увеличение, уменьшение, замена, проверка и замена и сравнение и замена.

Обмен сообщениями

Спецификация обмена сообщениями определяет дверные звонки и сообщения. Дверные звонки передают 16-битный код события. Сообщения передают до 4 КиБ данных, сегментированных до 16 пакетов каждый с максимальной полезной нагрузкой 256 байт. Ответные пакеты должны отправляться для каждого запроса дверного звонка и сообщения. Значение статуса ответного пакета указывает на выполнение, ошибку или повтор. Состояние повторной попытки требует от отправителя запроса отправить пакет еще раз. Ответ на повторную попытку логического уровня позволяет нескольким отправителям получать доступ к небольшому количеству общих ресурсов приема, что приводит к высокой пропускной способности при низкой мощности.

Управление потоком

Спецификация управления потоком определяет форматы пакетов и протоколы для простых операций управления потоком XON / XOFF. Пакеты управления потоком могут создаваться коммутаторами и конечными точками. Прием пакета управления потоком XOFF останавливает передачу потока или потоков до тех пор, пока не будет получен пакет управления потоком XON или не истечет время ожидания. Пакеты управления потоком также могут использоваться как общий механизм для управления системными ресурсами.

CC-NUMA

Спецификация Globally Shared Memory определяет форматы пакетов и протоколы для работы системы согласованной совместно используемой памяти кэш-памяти в сети RapidIO.

Потоковая передача данных

Спецификация потоковой передачи данных поддерживает обмен сообщениями с форматами и семантикой пакетов, отличными от спецификации обмена сообщениями. Форматы пакетов потоковой передачи данных поддерживают передачу до 64 КБ данных, сегментированных на несколько пакетов. Каждая передача связана с классом обслуживания и идентификатором потока, что позволяет создавать тысячи уникальных потоков между конечными точками.

Спецификация потоковой передачи данных также определяет форматы и семантику пакетов управления потоком расширенных заголовков для управления производительностью в системе клиент-сервер. Каждый клиент использует пакеты управления потоком с расширенными заголовками, чтобы информировать сервер об объеме работы, которую можно отправить на сервер. Сервер отвечает пакетами управления потоком с расширенными заголовками, которые используют протоколы XON / XOFF, скорости или кредита, чтобы контролировать, насколько быстро и сколько работы клиент отправляет на сервер.

Инициализация системы

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

Каждый системный хост рекурсивно перечисляет структуру RapidIO, захватывая права собственности на устройства, выделяя идентификаторы устройств конечным точкам и обновляя таблицы маршрутизации коммутаторов. Когда возникает конфликт за владение, побеждает системный хост с большим deviceID. «Проигравший» хост освобождает свои устройства от владения и отступает, ожидая «выигравшего» хоста. Выигравший хост завершает перечисление, включая захват проигравшего хоста. После завершения перечисления победивший хост освобождает право владения проигравшим. Затем проигравший хост обнаруживает систему, читая таблицы маршрутизации коммутатора и регистры на каждой конечной точке, чтобы узнать конфигурацию системы. Если выигравший хост не завершил перечисление в течение известного периода времени, проигравший хост определяет, что выигравший хост отказал, и завершает перечисление.

Перечисление систем поддерживается в Linux подсистемой RapidIO.

Управление ошибками

RapidIO поддерживает высокую доступность, отказоустойчивый дизайн системы, включая горячую замену. Определены условия ошибок, которые требуют обнаружения, и стандартные регистры для передачи информации о состоянии и ошибках. Также определен настраиваемый механизм изоляции, так что, когда обмен пакетами по каналу невозможен, пакеты можно отбрасывать, чтобы избежать перегрузки и активировать действия по диагностике и восстановлению. Определены механизмы внутриполосного (пакет записи порта) и внеполосного (прерывание) уведомления.

Форм-факторы

В спецификации RapidIO не обсуждаются форм-факторы и разъемы, оставляя это на усмотрение сообществ, ориентированных на конкретные приложения. RapidIO поддерживается в следующих форм-факторах:

Software

Поддержка RapidIO, не зависящая от процессора. найдено в ядре Linux.

Приложения

Межсоединение RapidIO широко используется в следующих приложениях:

  • Беспроводные базовые станции
  • Аэрокосмическая и военная промышленность одноплатные компьютеры, а также радиолокационные, акустические системы и системы обработки изображений
  • Видео
  • Хранение
  • Суперкомпьютеры
  • Медицинская визуализация
  • Промышленные приложения для управления и передачи данных

RapidIO - это расширение до приложений для суперкомпьютеров, серверов и хранилищ.

Конкурирующие протоколы

PCI Express ориентированы на рынок хостов и периферийных устройств, в отличие от встроенных систем. В отличие от RapidIO, PCIe не оптимизирован для одноранговых многопроцессорных сетей. PCIe идеально подходит для связи между хостом и периферией. PCIe не так хорошо масштабируется в больших многопроцессорных одноранговых системах, поскольку базовое предположение PCIe о «корневом комплексе» создает проблемы с отказоустойчивостью и управлением системой.

Другой альтернативной технологией межсоединений является Ethernet. Ethernet - это надежный подход к соединению компьютеров в больших географических областях, где топология сети может неожиданно измениться, используемые протоколы изменяются, а задержки соединения велики. Для решения этих задач системы на базе Ethernet требуют значительных объемов вычислительной мощности, программного обеспечения и памяти по всей сети для реализации протоколов для управления потоком, передачи данных и маршрутизации пакетов. RapidIO оптимизирован для энергоэффективного межпроцессорного взаимодействия с малой задержкой в ​​отказоустойчивых встроенных системах, охватывающих географические области менее одного километра.

SpaceFibre - конкурирующая технология для космических приложений.

Time-Triggered Ethernet - конкурирующая технология для более сложных объединительных плат (VPX) и магистральных приложений для космоса (пусковые установки и интегрированная авионика, рассчитанная на человека).

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-03 08:31:54
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте