stringtranslate.com

РапидИО

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

История

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

Релизы

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

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

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

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

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

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

Версия спецификации RapidIO 3.0 (10xN Gen3), выпущенная в октябре 2013 года. [6] Были внесены следующие изменения:

Версия спецификации RapidIO 3.1 была выпущена в октябре 2014 года. [7] Она была разработана в результате сотрудничества Торговой ассоциации RapidIO и NGSIS. Версия 3.1 имеет следующие изменения по сравнению со спецификацией 3.0:

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

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

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

Беспроводная инфраструктура

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

Дата-центры

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

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

Аэрокосмическая промышленность

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

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

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

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

Терминология

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

Обзор протокола

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

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

Физический слой

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

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

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

Пакеты

Каждый пакет имеет два значения, которые управляют обменом на физическом уровне этого пакета. Первым является идентификатор подтверждения (ackID), который представляет собой уникальное 5-, 6- или 12-битное значение, зависящее от канала, которое используется для отслеживания пакетов, которыми обмениваются по каналу. Пакеты передаются с последовательно возрастающими значениями 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 минимально возможную задержку внутриполосного пути управления, позволяя протоколу достигать высокой пропускной способности с меньшими буферами, чем другие протоколы.

Управляющие символы используются для разграничения пакетов (Начало пакета, Конец пакета, Stomp), подтверждения пакетов (Подтверждение пакета, Пакет не подтвержден), сброса (Сброс устройства, Сброс порта) и для распределения событий в системе 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, захватывая права собственности на устройства, распределяя идентификаторы устройств конечным точкам и обновляя таблицы маршрутизации коммутаторов. При возникновении конфликта владения побеждает хост системы с большим идентификатором устройства. «Проигравший» хост освобождает право владения своими устройствами и отступает, ожидая «победившего» хоста. Победивший хост завершает перечисление, включая захват владения проигравшим хостом. После завершения перечисления победивший хост освобождает право собственности на проигравший хост. Затем проигравший хост обнаруживает систему, читая таблицы маршрутизации коммутатора, и регистрируется на каждой конечной точке, чтобы узнать конфигурацию системы. Если хост-победитель не завершает перечисление за известный период времени, проигравший хост определяет, что хост-победитель потерпел неудачу, и завершает перечисление.

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

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

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

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

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

Программное обеспечение

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

Приложения

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

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

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

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

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

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

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

Смотрите также

Рекомендации

  1. Фуллер, Сэм (27 декабря 2004 г.). "Предисловие". RapidIO: межсетевое соединение встроенной системы . ISBN компании John Wiley & Sons Ltd. 0-470-09291-2.
  2. ^ «Стандарт RapidIO, версия 1.2» . www.rapidio.org . Торговая ассоциация RapidIO. 26 июня 2002 года . Проверено 9 октября 2014 г.
  3. ^ «Годовой отчет Integrated Device Technology за 2011 год» (PDF) . www.idt.com . Компания Integrated Device Technology Inc., 6 июня 2011 г., с. 4 . Проверено 9 октября 2014 г.
  4. Джаг Болария (15 октября 2013 г.). «RapidIO достигает облаков». www.linleygroup.com . Группа Линли . Проверено 9 октября 2014 г.
  5. ^ «Стандартная версия RapidIO 2.0» . www.rapidio.org . Торговая ассоциация RapidIO. 23 февраля 2005 г. Проверено 9 октября 2014 г.
  6. ^ «Стандартная версия RapidIO 3.0» . www.rapidio.org . Торговая ассоциация RapidIO. 10 ноября 2013 года . Проверено 9 октября 2014 г.
  7. ^ «Стандарт RapidIO, версия 3.1» (PDF) . www.rapidio.org . Торговая ассоциация RapidIO. 13 октября 2014 г. Проверено 18 октября 2014 г.
  8. ^ «Стандарт RapidIO, версия 4.0» . www.rapidio.org . Торговая ассоциация RapidIO. Июнь 2016 года . Проверено 15 августа 2016 г.
  9. ^ «Стандарт RapidIO, версия 4.1» . vita.com . Торговая ассоциация RapidIO. июль 2017 года . Проверено 11 августа 2019 г.
  10. ^ «Форум читателей: Доступ к облачной радиосвязи и малые сотовые сети на основе RapidIO» . www.rcrwireless.com . 3 декабря 2012 г.
  11. ^ «PayPal находит порядок в хаосе с помощью HPC» . hpcwire.com . 24 сентября 2014 г.
  12. ^ «Prodrive Technologies анонсирует свой центр обработки данных - систему HPC (DCCP-280) с RapidIO и 10 Gigabit Ethernet - Prodrive Technologies» . prodrive-technologies.com . 30 января 2014 г.
  13. ^ «IDT, Orange Silicon Valley, NVIDIA ускоряют прорыв в области вычислений с помощью кластеров на базе RapidIO, идеально подходящих для игр и аналитики» . businesswire.com (пресс-релиз). 18 ноября 2014 г.
  14. ^ «Prodrive Technologies запускает PRSB-760G2 для крупных сетей RapidIO - Prodrive Technologies» . prodrive-technologies.com . 2 марта 2015 г.
  15. Патрик Коллиер (14 октября 2013 г.). «Стандарт космического межсоединения следующего поколения (NGSIS): подход на основе модульных открытых стандартов для высокопроизводительных межсоединений для космоса» (PDF) . Конференция «Переосмысление космоса». п. 5 . Проверено 9 октября 2014 г.
  16. ^ «Дорожная карта RapidIO». www.rapidio.com . Торговая ассоциация RapidIO. 10 июня 2012 г. с. 4 . Проверено 9 октября 2014 г.
  17. ^ «Обзор SpaceFibre» (PDF) . СТАР-Данди. Архивировано из оригинала (PDF) 22 октября 2014 года . Проверено 21 октября 2014 г.

Внешние ссылки