Применение AMC-модуля TORNADO-A6678 в системах ЦОС стандарта MicroTCA

№ 1’2015
PDF версия
Решение задач цифровой обработки сигналов (ЦОС) в современных телекоммуникационных, медицинских, промышленных приложениях требует как предельной производительности обработки данных в реальном времени, так и максимальных скоростей обмена информацией. Следуя растущим потребностям разработчиков и современным тенденциям развития аппаратных средств ЦОС, фирма «МикроЛАБ Системс» создала модуль ЦОС TORNADO-A6678 (далее TA6678) (рис. 1), который соответствует спецификации PICMG Advanced Mezzanine Card (AMC) [1], форм-фактор single-width/full-size, и предназначен для установки в шасси стандарта MicroTCA [2] или на платы стандарта AdvancedTCA [3], а также может применяться в автономных приложениях.

Введение

АМС-модуль TA6678 построен на базе высокопроизводительного 8‑ядерного процессора ЦОС Texas Instruments TMS320C6678 с плавающей точкой и высокоскоростной ПЛИС Xilinx Virtex‑7. Структурная схема модуля TA6678 [4] представлена на рис. 2.

Внешний вид AMC-модуля TORNADO-A6678

Рис. 1. Внешний вид AMC-модуля TORNADO-A6678

Восьмиядерный процессор ЦОС TMS320C6678 работает на тактовой частоте 1,25 ГГц и обеспечивает производительность 40 GMAC/20 GFLOP для каждого ядра. Тип устанавливаемой микросхемы ПЛИС Xilinx Virtex‑7 (XC7VX330, XC7VX415 или XC7VX690) определяется при заказе модуля TA6678. Семейство ПЛИС Virtex‑7 отличается большой емкостью логики, блоков ЦОС, блоков памяти и наличием высокоскоростных приемопередатчиков (GTH).

Структурная схема АМС-модуля ЦОС TORNADO-A6678

Рис. 2. Структурная схема АМС-модуля ЦОС TORNADO-A6678

Обмен данными между процессором ЦОС и ПЛИС осуществляется через 4‑канальный последовательный интерфейс Serial RapidIO с суммарной двунаправленной пропускной способностью до 40 Гбит/с.

Внешние интерфейсы модуля TA6678 включают последовательные интерфейсы RJ-45 1G  Ethernet, разъем 10G+ SFP+ для подключения волоконно-оптических модулей SFP/SFP+, два 10G+ 4‑канальных интерфейса AMC Fat Pipe #0 и #1, и 1G Ethernet port #0 интерфейс AMC. Внешний интерфейс 115kBaud UART RS‑232C предусмотрен для управления программным загрузчиком процессора ЦОС.

Размеры модуля TA6678 составляют 181,5×73,5×29 мм. Максимальная потребляемая мощность достигает 40 Вт. В автономном режиме модуль питается напряжением +12 В.

 

Применение AMC-модуля TA6678 в аппаратуре стандарта MicroTCA

Спецификации PICMG MicroTCA [2] и AdvancedTCA [3] предоставляют широкие возможности построения масштабируемых систем ЦОС распределенной обработки данных с высокоскоростными последовательными каналами обмена данными между компонентами системы. Рассмотрим использование AMC-модуля TA6678 на примере спецификации MicroTCA.

На рис. 3 приведено фото шасси стандарта MicroTCA 1U с двумя модулями вентиляции/охлаждения, модулем воздушного фильтра, модулем источника питания, модулем управляющего контроллера (MicroTCA Carrier Hub, MCH) и тремя AMC-модулями TA6678.

Компактное 1U-шасси MicroTCA с AMC-модулями TORNADO-A6678

Рис. 3. Компактное 1U-шасси MicroTCA с AMC-модулями TORNADO-A6678

В последующих разделах рассматриваются различные варианты построения систем ЦОС на основе спецификации MicroTCA с применением AMC-модулей TA6678 и организации потоков данных в них.

 

Система ЦОС MicroTCA на базе одного модуля TA6678

Простейшая система ЦОС на базе шасси MicroTCA содержит один модуль TA6678 и один управляющий контроллер MCH (наличие модуля источника питания и модулей вентиляции/охлаждения подразумевается). Возможные варианты организации потоков данных для такой системы представлены на рис. 4, 5.

Система ЦОС MicroTCA на базе одного модуля TA6678 с использованием для обработки данных

Рис. 4. Система ЦОС MicroTCA на базе одного модуля TA6678 с использованием для обработки данных:
а) ПЛИС, процессора ЦОС и 2 каналов интерфейса Serial RapidIO;
б) только ПЛИС
в) система ЦОС MicroTCA на базе одного модуля TA6678 с использованием ПЛИС, процессора ЦОС и 4 каналов интерфейса Serial RapidIO

Система ЦОС MicroTCA на базе одного модуля TA6678 с вводом данных через порт SFP+ модуля TA6678 и выводом через:

Рис. 5. Система ЦОС MicroTCA на базе одного модуля TA6678 с вводом данных через порт SFP+ модуля TA6678 и выводом через:
а) порт SFP+ контроллера MCH;
б) порт 1GE RJ-45 контроллера MCH

В системах ЦОС MicroTCA с применением модулей TA6678 принципиально присутствуют два типа последовательных потоков данных:

  • непосредственно высокоскоростные последовательные потоки (обычно 5G…10G+) обработки входных и выходных данных реального времени (на рисунках обозначены красным цветом);
  • низкоскоростные потоки (Gigabit Ethernet, 1GE) управления модулями (на рисунках обозначены зеленым цветом).

Для управления системой предназначены интерфейсы Gigabit Ethernet (1GE) модуля TA6678 и управляющего контроллера MCH. 1GE-порт процессора ЦОС модуля TA6678 подключается к 1GE-порту коммутатора управляющего контроллера MCH через порт #0 интерфейса AMC. К этому же коммутатору подсоединен внешний порт 1GE RJ-45 контроллера MCH, что позволяет использовать его для внешнего управления как самим MCH, так и модулем TA6678. Контроллер MCH имеет встроенную программу (обычно на базе ОС Linux) управления встроенными коммутаторами и ресурсами самого контроллера, модулями источников питания, модулями вентиляции/охлаждения и всеми установленными AMC-модулями шасси MicroTCA на базе стандартизованных протоколов спецификаций PICMG MicroTCA [2], AdvancedTCA [3] и AMC [1]. Встроенная управляющая программа модуля TA6678 использует ядро #0 процессора ЦОС и осуществляет прием и передачу файлов приложений и данных (через сетевые интерфейсы процессора), загрузку и запуск приложений в каждое ядро процессора ЦОС, программирование ПЛИС, обновление встроенного ПО, запись приложений и данных во встроенную флэш-память и т. д.

Ввод/вывод данных ЦОС реального времени в такой системе, как правило, осуществляется через внешние порты 10G+ SFP+ контроллера MCH с применением модулей SFP+ оптоволоконных приемопередатчиков. Внешние порты SFP+ контроллера MCH подключаются к встроенному в него 10G-коммутатору, подсоединенному к многоканальным высокоскоростным интерфейсам Fabric-D/E/F/G. В свою очередь, интерфейсы Fabric-D/E/F/G контроллера MCH подключены по топологии «звезда» к интерфейсам Fat Pipe каждого AMC-модуля через заднюю кросс-панель шасси MicroTCA. Для компактного 1U-шасси MicroTCA (рис. 3), вмещающего до шести AMC-модулей, интерфейсы Fabric-D/E/F/G контроллера MCH подсоединены по топологии «одиночная звезда» одновременно к обоим интерфейсам Fat Pipe #0 и Fat Pipe #1 каждого AMC-модуля. В случае же расширенного 2U- и 3U-шасси MicroTCA, вмещающего до 12 AMC-модулей и два управляющих контроллера MCH, интерфейсы Fabric-D/E/F/G контроллеров MCH подключены по топологии «двойная звезда», то есть один контроллер MCH подключается только к одному интерфейсу Fat Pipe каждого AMC-модуля.

Высокоскоростные последовательные 4‑канальные порты Fat Pipe #0 и Fat Pipe #1 AMC-интерфейса модуля TA6678 используются для ввода/вывода данных ЦОС реального времени в модуль TA6678. Эти порты могут быть сконфигурированы в ПЛИС модуля TA6678 в соответствии со стандартами 10GBASE-BX4 (XAUI, 10 Гбит/с), 4×5 Гбит/с Serial RapidIO (SRIO), 4×5 Гбит/с PCI-Express (PCIe) в зависимости от приложения и типа выбранного управляющего контроллера MCH.

Цифровая обработка данных реального времени внутри модуля TA6678 может быть произведена как совместно ПЛИС и процессором ЦОС (рис. 4а), так и только ПЛИС (рис. 4б). В первом случае обмен данными между процессором ЦОС и ПЛИС осуществляется через 4‑канальный последовательный интерфейс Serial RapidIO с суммарной двунаправленной пропускной способностью до 40 Гбит/с. При этом, в зависимости от приложения, могут быть задействованы как один, так и несколько каналов интерфейса Serial RapidIO (рис. 4в).

Система ЦОС MicroTCA на базе модуля TA6678 предусматривает и другие способы ввода/вывода данных ЦОС реального времени и организацию потоков обработки данных с помощью внешних интерфейсов модуля TA6678 в зависимости от конкретного приложения и скорости входных/выходных потоков. Примеры на рис. 5, 6 демонстрируют несколько вариантов применения локальных интерфейсов 10G+ SFP+ и 1GE RJ-45 модуля TA6678.

Система ЦОС MicroTCA на базе одного модуля TA6678

Рис. 6. Система ЦОС MicroTCA на базе одного модуля TA6678:
а) с вводом данных через порт SFP+ контроллера MCH и выводом через индивидуальный порт 1GE RJ-45 модуля TA6678;
б) с вводом данных через порт SFP+ модуля TA6678 и выводом через индивидуальный порт 1GE RJ-45 модуля TA6678;
в) с вводом/выводом низкоскоростных индивидуальных данных через порт 1GE RJ-45 модуля TA6678

 

Системы ЦОС MicroTCA, включающие несколько модулей TA6678 с топологией «одиночная звезда» портов Fabric-D/E/F/G

Спецификация MicroTCA и архитектура модулей TA6678 предоставляет множество разнообразных топологий потоков данных ЦОС реального времени при использовании двух и более модулей TA6678 в одном шасси MicroTCA.

Наиболее разнообразные и гибкие решения предоставляет компактное шасси MicroTCA (обычно размера 1U, рис. 3), включающее от двух до шести AMC-модулей TA6678 и один управляющий контроллер MCH с топологией «одиночная звезда» портов Fabric-D/E/F/G задней коммутационной кросс-панели шасси MicroTCA (рис. 7).

Схема подключения шести модулей TA6678 в компактном шасси MicroTCA с одним контроллером MCH и топологией «одиночная звезда» портов Fabric-D/E/F/G кросс-панели

Рис. 7. Схема подключения шести модулей TA6678 в компактном шасси MicroTCA с одним контроллером MCH и топологией «одиночная звезда» портов Fabric-D/E/F/G кросс-панели

Рассмотрим два возможных варианта топологии потоков данных ЦОС реального времени в случае применения двух модулей TA6678 в компактном шасси MicroTCA с одним управляющим контроллером MCH и топологией «одиночная звезда» портов Fabric-D/E/F/G кросс-панели шасси (рис. 8).

Параллельная (а) и последовательная (б) конфигурация потоков входных/выходных данных ЦОС для двух модулей TA6678 в шасси MicroTCA с топологией «одиночная звезда» каналов Fabric-D/E/F/G кросс-панели шасси

Рис. 8. Параллельная (а) и последовательная (б) конфигурация потоков входных/выходных данных ЦОС для двух модулей TA6678 в шасси MicroTCA с топологией «одиночная звезда» каналов Fabric-D/E/F/G кросс-панели шасси

Аналогично рассмотренным ранее примерам с одним модулем TA6678 управление системой (обоими AMC-модулями TA6678 и контроллером MCH) осуществляется через 1GE порты #0 модулей TA6678, коммутатор 1GE контроллера MCH и внешний порт 1GE RJ-45 контроллера MCH. На рисунках этот трафик обозначен зеленым цветом.

Разница между системами на рис. 8а и рис. 8б заключается в топологии трафика данных ЦОС реального времени, в зависимости от программно задаваемой конфигурации коммутатора 10GE управляющего контроллера MCH.

На рис. 8а показана система ЦОС с параллельной конфигурацией потоков входных/выходных данных ЦОС. Для входного и выходного потоков данных ЦОС, которые поступают и выводятся через порты 10G+ SFP+ управляющего контроллера, создаются две виртуальные локальные подсети: VLAN1 и VLAN2. VLAN1 объединяет внешний 10G+ SFP+ порт #1 управляющего контроллера MCH с портами FAT PIPE #0 модулей TA6678 и обеспечивает либо параллельную трансляцию, либо разделение общего входного потока данных ЦОС на каждый модуль TA6678. VLAN2 объединяет внешний 10G+ SFP+ порт #2 управляющего контроллера MCH с портами FAT PIPE #1 модулей TA6678 и обеспечивает объединение обработанных данных ЦОС в общий выходной поток. Такая конфигурация коммутатора создает суммарную максимальную пропускную способность данных до 10GBPS в обоих направлениях внутри каждой виртуальной локальной подсети. При этом каждый отдельный модуль TA6678 выполняет свою обработку данных. Параллельная трансляция входного потока на оба модуля TA6678 происходит в тех случаях, когда оба модуля TA6678 функционируют по общему алгоритму и используют общий входной сигнал, но работают, например, в разных спектральных поддиапазонах входного сигнала. Если же приложение требует адресного разделения входного потока для каждого модуля TA6678, то это разделение общего входного потока данных на два независимых адресных подпотока может производиться как внутри коммутатора 10G контроллера MCH, так и в ПЛИС модулей TA6678 (например, по IP-адресам получателей входных пакетов для интерфейса Ethernet и протокола UDP или TCP/IP). В любом случае, объединение выходных потоков данных ЦОС осуществляется только внутри 10G коммутатора контроллера MCH.

На рис. 8б показана система ЦОС с последовательной конфигурацией межмодульных потоков ЦОС. В данной конфигурации создаются три виртуальные локальные сети: VLAN1, VLAN2 и VLAN3. VLAN1 объединяет внешний 10G+ SFP+ порт #1 управляющего контроллера MCH с портом FAT PIPE #0 модуля TA6678 #1. VLAN2 объединяет внешний 10G+ SFP+ порт #2 управляющего контроллера MCH с портом FAT PIPE #1 модуля TA6678 #2. VLAN3 объединяет порт FAT PIPE #1 модуля TA6678 #1 и порт FAT PIPE #0 модуля TA6678 #2. Таким образом, входной поток данных ЦОС поступает на модуль TA6678 #1, а выходные обработанные данные модуля TA6678 #1 возвращаются в управляющий контроллер MCH и далее направляются в модуль TA6678 #2 на обработку. Конечные выходные обработанные данные модуля TA6678 #2 возвращаются в управляющий контроллер MCH, который направляет их в выходной поток данных ЦОС через порт + 10G+ SFP+ порт #2 управляющего контроллера MCH. Таким образом, можно создать цепочку обработки данных, включающую до шести модулей TA6678. Следует отметить, что последовательная конфигурация должна применяться только в тех приложениях, которые допускают последовательный алгоритм ЦОС для входных данных реального времени.

При использовании от трех до шести модулей TA6678 в компактном шасси MicroTCA с одним управляющим контроллером MCH и топологией «одиночная звезда» портов Fabric-D/E/F/G кросс-панели шасси, возможны конфигурации от строго параллельной или строго последовательной до многочисленных параллельно-последовательных конфигураций потоков данных ЦОС внутри одной системы. Важно отметить, что все конфигурации являются программируемыми и могут быть мгновенно изменены в зависимости от конкретного приложения и алгоритма ЦОС.

 

Система ЦОС MicroTCA с несколькими модулями TA6678 и топологией «двойная звезда» портов Fabric-D/E/F/G

Для построения больших распределенных систем ЦОС MicroTCA используют расширенное шасси MicroTCA (обычно размера 2U и 3U), включающее 2–12 AMC-модулей TA6678, два управляющих контроллера MCH и заднюю коммутационную кросс-панель шасси MicroTCA с топологией «двойная звезда» портов Fabric-D/E/F/G каждого управляющего контроллера MCH (рис. 9).

Схема подключения 12 модулей TA6678 в расширенное шасси MicroTCA с двумя управляющими контроллерами MCH и топологией «двойная звезда» портов Fabric-D/E/F/G кросс-панели шасси

Рис. 9. Схема подключения 12 модулей TA6678 в расширенное шасси MicroTCA с двумя управляющими контроллерами MCH и топологией «двойная звезда» портов Fabric-D/E/F/G кросс-панели шасси

Однако, несмотря на высокую суммарную производительность ЦОС, такая система не отличается гибкостью, характерной для компактной системы с одним контроллером MCH и топологией «одиночная звезда» портов Fabric-D/E/F/G кросс-панели шасси MicroTCA.

В этом случае мы имеем параллельную архитектуру, в целом аналогичную рис. 8а. Отличие заключается в том, что входной поток данных ЦОС, как правило, поступает через 10G+ SFP+ порт контроллера MCH #1 на его 10G коммутатор и раздается на модули TA6678 через их порты Fat Pipe #0, а выходные потоки данных ЦОС с каждого модуля TA6678 выдаются через их порты Fat Pipe #1, собираются в 10G коммутаторе контроллера MCH #2 и выдаются наружу через 10G+ SFP+ порт MCH #2.

Достоинство данной архитектуры, наряду с высокой суммарной производительностью, заключается в возможности подключения до двух входных и до двух выходных потоков данных ЦОС, а также гибкого программирования коммутаторов 10G обоих контроллеров MCH для адресного разделения или объединения входных и выходных потоков. Необходимо иметь в виду, что локальные входные/выходные данные ЦОС могут также передаваться через 10G+ SFP+ порты модулей TA6678, что позволяет программировать многочисленные кластеры внутри общей параллельной архитектуры. Кроме того, данная архитектура позволяет повысить надежность всей системы в целом за счет резервирования управляющих контроллеров MCH.

 

Использование модуля TA6678 в автономном режиме

Модуль TA6678 можно применять и в автономном режиме для встраивания в аппаратуру пользователя. При этом на модуль должно быть подано только питание +12 В.

На рис. 10 представлены два из многочисленных вариантов организации потоков данных ЦОС при использовании модуля TA6678 в автономном режиме.

Использование внешних портов модуля TA6678 для ввода/вывода данных

Рис. 10. Использование внешних портов модуля TA6678 для ввода/вывода данных:
а) только порта 10G+ SFP+;
б) порта 10G+ SFP+ и порта 1 GE RJ-45

 

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

AMC-модуль TA6678 поставляется в комплекте с базовым программным обеспечением (ПО), содержащим компоненты для разработки прикладного ПО процессора ЦОС и управляющего ПК, а также программирования ПЛИС [5]:

  • Библиотека API-функций процессора ЦОС для управления всеми блоками процессора и ресурсами модуля.
  • Загрузчик уровня #0 для процессора ЦОС и монитор-загрузчик уровня #1, обеспечивающий дистанционное управление средой процессора ЦОС и ресурсами модуля во всех режимах работы.
  • Библиотека API-функций ПК для дистанционного управления модулем (для ОС Windows и Linux).
  • Оконное приложение дистанционного управления модулем для ПК (для ОС Windows и Linux).
  • Примеры программирования всех входных/выходных сигналов ПЛИС.
  • Примеры программирования всех внешних интерфейсов ПЛИС.
  • Примеры программирования процессора ЦОС совместно с ПЛИС с применением всех интерфейсов и ресурсов модуля.

При использовании загрузчиков из комплекта ПО и при выборе режима загрузки из флэш-памяти процессора ЦОС разработанное ПО процессора ЦОС и конфигурационные прошивки ПЛИС могут быть записаны во встроенную флэш-память и при запуске автоматически загружены в указанные ядра процессора ЦОС и ПЛИС. Прошивки ПЛИС могут быть закодированы разработчиком ПО и таким образом персонифицированы для конкретного модуля TA6678. Эти возможности позволяют разработчикам ПО поставлять модуль TA6678 с уже прошитым персонифициронным ПО, которое автоматически стартует при активации питания модуля.

Базовое ПО модуля TA6678 позволяет разработчикам сосредоточиться на решении конкретных прикладных задач ЦОС и значительно снизить сроки разработки прикладного ПО.

 

Средства разработки ПО процессора ЦОС и программирования ПЛИС

AMC-модуль TA6678 поддерживается стандартными средствами разработки ПО для процессора ЦОС TMS320C6678:

  • Интегрированная среда Texas Instruments Code Composer Studio для разработки ПО процессоров ЦОС TMS320.
  • Универсальные одно- и двухканальные JTAG/MPSD-эмуляторы MIRAGE-NE1 и MIRAGE-NC2 для процессоров ЦОС TI TMS320 [6] для ноутбуков и настольных ПК.

Разработка конфигурации/программы ПЛИС поддерживается интегрированной средой Xilinx ISE или Vivado.

 

Заключение

Модуль TA6678 представляет собой эффективное средство, предназначенное для построения масштабируемых высокопроизводительных систем ЦОС с программируемой архитектурой в стандарте PICMG MicroTCA и AdvancedTCA, а также применения в автономном режиме для встраивания в компактную аппаратуру пользователя.

Литература
  1. PICMG Advanced Mezzanine Card Base Specifi-cation (PICMG AMC.0 R2.0), November 15, 2006.
  2. PICMG Micro Telecommunications Computing Architecture Base Specification (PICMG MTCA.0 R1.0). July 6, 2006.
  3. PICMG AdvancedTCA Base Specification (PICMG 3.0 Revision 3.0), March 24. 2008.
  4. TORNADO-A6678. Техническое описание. МикроЛАБ Системс. 2014.
  5. TORNADO-A6678. Руководство по программированию. МикроЛАБ Системс. 2014.
  6. Универсальные JTAG/MPSD эмуляторы MIRAGE-Nxx для процессоров ЦОС TI TMS320. Руководство по установке и эксплуатации // МикроЛАБ Системс. 2011.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *