Всё для Учёбы — студенческий файлообменник
1 монета
docx

Студенческий документ № 052172 из НИЯУ МИФИ

Design of versatile ASIC and protocol tester for CBM readout system

Аннотация: Система детектирования кремниевой трекинга (STS), Мюонной камеры (MUCH) и детектора переходного излучения (TRD) в детекторной системе сжатого барионного вещества (CBM) в Facility for Antiproton and Ion Research (FAIR) использует тот же инновационный протокол, обеспечивающий надежную синхронизацию Линии связи между контроллером и интерфейсной ASIC, передачи времени-детерминированных команд в ASIC и эффективного считывания данных. В документе описывается платформа тестеров на основе FPGA, которая может использоваться как для проверки реализации протокола в интерфейсной ASIC на этапе проектирования, так и для тестирования произведенных ASIC. Благодаря своей модульности платформа может быть легко адаптирована для различных интегральных схем и систем считывания.

Ключевые слова: схемы сбора данных; Системы контроля детектора (мониторинг детекторов и экспериментов и системы медленного управления, архитектура, аппаратные средства, алгоритмы, базы данных); Передняя электроника для считывания детектора; Цифровые электронные схемы

1. Введение

Эксперимент с сжатой барионной массой (CBM) является одним из экспериментов, подготовленных в Институте антипротонных и ионных исследований (FAIR) в Дармштадте. Его основная цель - исследование фазовой диаграммы КХД в области высоких барионных плотностей при высокоэнергетических ядро-ядерных столкновениях [1]. CBM будет использовать различные детекторы частиц: детектор Micro Vertex (MVD), систему слежения за силиконом (STS), детектор черенковского изображения (RICH), мюонную камеру (MUCH)

Детектор излучения переходного излучения (TRD), детектор времени полета (TOF), детектор зрелищного снаряда (PSD). Специфические для детектора интерфейсные платы (FEB) используются для приема сигналов, создаваемых детектором, и преобразования их в цифровую форму, подходящую для передачи в систему сбора данных (DAQ). Поскольку FEB обычно расположены в области облучения, они основаны на выделенных радиационно-твердых ASIC. Чтобы свести к минимуму усилия по разработке и разработке, был разработан и реализован общий протокол связи (HCTSP) [2] в считывающих ASIC для детекторов STS, MUCH и TRD [3].

STS / MUCH-XYTER2 (SMX2) предназначен для считывания двухсторонних кремниевых микрополосковых датчиков (STS) и датчиков GEM (MUCH). Микросхема выполняет самозапускаемую амплитудную и временную оцифровку в 128 каналах. Передняя схема была оптимизирована для работы с низким уровнем шума [4, 5] со средней скоростью 250 кГц / с / каналом. Для каждого удара он предоставляет 14-битную метку времени (с разрешением 3,125 нс) и 5-битные данные амплитуды сигнала. Цифровой интерфейс ASIC [6] обеспечивает путь передачи данных для высокопроизводительного считывания оцифрованных ударов и путь управления для конфигурирования и управления функциями сбора и диагностики данных чипа. Цифровая информация, сгенерированная в каждом канале, записывается в отдельный канал FIFO. Все FIFO считываются сортировщиком хитов, и полученные данные доставляются в пять программных маскирующих сериализаторов и далее к дифференциальным каналам считывания. ASIC также реализует многоуровневое управление потоком данных (дросселирование) для учета возможных флуктуаций интенсивности пучка. Чип реализует множество функций диагностики и мониторинга, включая отчетность об обнаруженных событиях SEU и связанных с ними проблемах. Внутренняя структура чипа показана на рисунке

Восемь микросхем SMX2s, расположенных на плате FEB, подключены к считывающим устройствам GBTX (ROB) [7] через так называемые E-Links. Микросхемы GBTX [8] обеспечивают синхронную, детерминированную релевантность, двунаправленную связь между FEB (через E-Links) и систему управления (платы обработки данных - DPB [10, 11]) через высокоскоростную оптическую линию 4,8 Гбит / с , Каждый E-Link представляет собой последовательный синхронный интерфейс SPI, который может использоваться с настраиваемой тактовой частотой (40 МГц, 80 МГц, 160 МГц или 320 МГц) и скоростью передачи (80 Мбит / с, 160 Мбит / с или 320 Мбит / с) в зависимости от Количество E-Links, используемых в одном GBTX. Конфигурация для SMX2 использует тактовые сигналы 160 МГц, данные по нисходящему направлению 160 Мбит / с и линии передачи данных по восходящему каналу 320 Мбит / с. Считывание двухсторонних датчиков в STS подразумевает необходимость использования электрических соединений переменного тока (см. Рисунок 2) из-за различных потенциалов заземления FEB, прикрепленных к обеим сторонам датчика, смещенного с высоким напряжением [12], подключенного к Такой же ROB. Сигналы данных часов и нисходящей линии связи распределяются между SMX2, расположенными на одной FEB.

1.3 Протокол связи

Основной целью протокола связи является максимизация пропускной способности данных в направлении восходящей линии связи (от ASIC до DPB) и обеспечение временной детерминированной надежной передачи команд управления в направлении нисходящей линии (от DPB к ASIC).

Только E-Link обеспечивает только простой синхронный последовательный порт, обеспечивающий тактовую линию, входы данных и выходы данных. Он не предоставляет никаких средств для синхронизации байтов или слов, которые должны обрабатываться протоколом. Кроме того, DC-балансировка битового потока требуется для AC-связанных E-Links. Применение кодирования 8b / 10b решает обе указанные проблемы.

Связь между чипом GBTX и SMX2 вводит постоянные, но неизвестные задержки в тактовой линии, линии вывода данных и линиях ввода данных, которые могут различаться для каждой целевой ASIC. Эти задержки должны быть скомпенсированы с использованием синхронизированных по фазе GBTX часов и регулируемых задержек на входах данных GBTX. ThepropersettingsSoundDuringthesynchronizationprocedure [2], controlledbyspecial DC-сбалансированных 20-битных длинных последовательностей (запуск синхронизации - SOS и End-of-synchronization - EOS), которые легко отличить от 8b / 10b закодированных данных и обнаруживаются еще до того, как ссылка синхронизированы. Применимое решение позволяет избежать программируемых линий задержки в SMX2, что приводит к более простой и надежной конструкции.

Чтобы обеспечить постоянную задержку после синхронизации, протокол использует кадры постоянной длины (6-байтовые или 60-битные после кодирования в нисходящем направлении и 3 байта или 30 бит после кодирования в направлении восходящей линии). Кадры нисходящей линии кодируют операции, связанные с доступом к регистрам SMX2, расположенным в 15-разрядном адресном пространстве. Кадры нисходящей линии начинаются с символа запятой и защищены 15-битным CRC. Различные типы кадров восходящей линии содержат данные ударов (или пустые удары) с наименее значимыми битами метки времени, наиболее значимые биты метки времени, значения, считанного из регистра, или подтверждения операции записи в регистре. Связанные с управлением кадры восходящей линии связи защищены коротким (3-битным или 4-битным) CRC. Кроме того, после каждых 216 кадров SMX2 вводит специальный поток синхронизации, состоящий из трех символов запятой K28.5 в поток восходящей линии связи. Эти решения позволяют поддерживать синхронизацию канала в случае редких искажений кадров из-за разовых сбоев и обеспечивать обнаружение потери синхронизации.

Команды и ответы, связанные с доступом к регистрам, дополнительно помечены 4-битным порядковым номером. Это позволяет выполнять повторные передачи команд, которые не были подтверждены в соответствующее время.

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

Полученный Синхронный Протокол Хит и Управление Передачей (STS-HCTSP) описан в [2]. ForSMX2theachievablespeedofregisteraccessis2.6Mframes / sandspeedofhitdatatransmission от 9.41MHit / s (для 1 uplink) до 47.05MHit / s (для 5 восходящих линий).

1.4 Мотивация дизайна тестера

Благодаря инновационному дизайну протокола STS-HCTSP, реализованного в SMX2, необходимо было проверить работу его управляющей части с предлагаемым протоколом связи до выхода ASIC. Одних только имитаций недостаточно. Моделирование, включающее как аналоговые эффекты, так и полную процедуру синхронизации и передачу данных, будет слишком сложным и трудоемким. Поэтому необходимо было создать аппаратный тестер, способный эмулировать цифровую часть модели SMX2 (модель SMX2) и DPB вместе с плате ROB (модель DPB + ROB, см. Раздел 2.2).

2 Дизайн тестера

Выбранной аппаратной платформой для тестера была плата AFCK [13], которая является платформой разработки и прототипа для CBM-считывающих плат DPB [11].

Для обеспечения возможности подключения длинных AC-связанных дифференциальных линий была разработана специализированная многоканальная двунаправленная плата адаптера FMC / VHDCI [14]. С помощью простой замены плат FMC можно протестировать различные технологии соединений и кабельные решения.

Прошивка тестера, реализующая как модель SMX2, так и модель DPB + ROB, позволяет использовать две тестовые конфигурации. Минимальная одноплатная настройка позволяет выполнять функциональные тесты связи между моделью SMX2 и моделью DPB + ROB. Однако на результаты могут влиять возможные нежелательные связи между обеими моделями. Поэтому конфигурация двух досок может использоваться для обеспечения того, чтобы, например, на синхронизацию канала не влияли такие муфты. Когда используются отдельные источники питания, можно также проверить работу канала с контролируемым синфазным сдвигом напряжения между платами. Обе конфигурации показаны на рисунке 3.

2.1 Модель SMX2

В качестве отправной точки использовался код RTV SystemVerilog цифрового back-end SMX2, разработанный в Университете AGH. Однако из-за присущих различий между технологиями FPGA и ASIC этот код пришлось слегка модифицировать, чтобы реализовать реализацию модели SMX2 в чипе FPGA.

NASICthedividedclockmaybegeneratedinasequential, flip-flopbasedfrequencydivider. В FPGA такой дизайн приводит к высокочастотному джиттеру и затрудняет устранение ошибок времени удержания. Оптимальное решение должно использовать блоки MMCM или PLL [15] для генерации разделенных часов. К сожалению, синхронизированная по фазе синхронизация, подаваемая на модель SMX2, может быть прерывистой (как описано в разделе 2.2.2, она создается блоками PLLE2, контролируемыми DRP, где выходные часы отключены во время реконфигурации). Поэтому разделенные такты эмулируются с использованием высокоскоростного синхросигнала, полученного от линии связи, и сигналов разрешения синхронизации, генерируемых в последовательной логике. Такое решение работает правильно даже с прерывистыми часами.

Выходы DDR в коде ASIC могут обрабатываться логикой, описанной в HDL. В FPGA они должны быть реализованы с выделенными блоками ODDR [16].

Были приняты специальные меры для обеспечения согласованности реализации ПЛИС и АСИК

2.2 Модель DPB + ROB

Структурная схема прошивки тестера со структурой модели DPB + ROB представлена ??на рисунке 4. Компоненты модели описаны в следующих разделах.

2.2.1 Контроллер IP-шины

Модель DPB + ROB управляется через Ethernet, используя протокол IPbus [17]. Контроллер IPbus позволяет получать доступ к регистрам в командном процессоре SMX2 (SMX2 CMD Processor) и считывать FIFO считывания SMX2 (считывание FIFO SMX2). Специальный блок контроллера IPbus построен с использованием стандартных источников IPbus с небольшими изменениями [18, 19].

2.2.2 Модель черного ящика E-Link

В окончательной системе связь с SMX2 будет обеспечиваться чипом GBTX, расположенным на плате ROB и подключенным через оптическую линию связи к DPB (см. Рисунок 2). В тесте модель DPB + ROB напрямую обращается к линиям LVDS, подключенным к модели SMX2. Поэтому вся часть системы, состоящая из блока E-Link в GBTX, самого GBTX, оптической линии связи и контроллера оптической линии связи в DPB, заменяется "моделью черного ящика E-Link". Эта модель ведет себя просто как блок ввода / вывода с одним тактовым выходом с задержкой, одним выходом данных и пятью входами с задержкой. Входы данных могут быть индивидуально маскированы для имитации ситуации, когда конкретный SMX2 подключен меньшим количеством соединений восходящей линии связи [7] или для эмуляции неисправной линии передачи данных. Функции контроля задержки, которые в реальной системе будут предоставлены ASIC GBTX, должны быть эмулированы в тесте. ПЛИС Kintex 7 предлагают регулируемые блоки задержки вывода ODELAYE2 [16], но он недоступен в портах High Range (HR), подключенных к разъемам FMC на плате AFCK. Поэтому регулируемая выходная тактовая частота была реализована с использованием блока PLLE2 [15], управляемого DRP. Фазовый сдвиг может быть отрегулирован с разрешением 125ps, что хуже разрешения, предлагаемого GBTX (50ps), но достаточно для проверки синхронизации канала.

Регулируемые задержки данных были реализованы с использованием блоков IDELAYE2 [16], которые обеспечивают разрешение задержки 78 пс, что меньше, чем разрешение входов фазовых синхронизаторов входных данных GBTX, равное 391ps для скорости передачи данных 320 Мбит / с.

2.2.3 Передатчик команд SMX2 и процессор

The60-bitSMX2controlframesaredeliveredbytheSMX2commandtransmitter (SMX2CMDTx). В зависимости от выбранного режима работы передатчик может производить либо стандартную 8-битную кодировку, 6-байтную последовательность, описывающую команду доступа к регистру, либо команду "no operation", либо 6 символов синхронизации K28.1, либо три 20-битных специальных Последовательности синхронизации - SOS или EOS (см. Раздел 1.3). В случае команд доступа к регистру процессор CMX SMX2 обеспечивает их надежную доставку. Он предлагает 5 "слотов команд", которые могут быть записаны (через IP-шину) с передаваемой командой. Слоты проверяются периодически, и каждая запланированная команда повторно передается до тех пор, пока ее подтверждение не будет доставлено блоком приемника SMX2.

2.2.4 Приемник SMX2

Данные, полученные через E-Links, анализируются приемником SMX2 (SMX2 Rx). Во время нормальной работы подтверждения и ответы на команды доступа к регистру извлекаются и передаются на процессор CMX SMX2. Это позволяет маркировать команду записи регистра как выполненную. В случае команды чтения регистров он передает значение чтения (также подтверждающее, что команда была выполнена). Другие кадры записываются в FIFO приема SMX2 (считывание FIFO SMX2), откуда они могут быть получены по протоколу IPbus. Чтобы обеспечить высокую пропускную способность приема данных, команда чтения протокола IPbus используется для чтения FIFO [19]. Тем не менее, протокол IPbus не поддерживает метод, чтобы закончить доступ к блоку ранее в случае, если больше данных не доступно. Следовательно, информация о статусе FIFO кодируется в данных. Полученные кадры занимают только младшие 24 бита. 31-й бит используется, чтобы сообщить, были ли данные доступны, а 30-й бит сообщает, что некоторые данные были потеряны из-за переполнения FIFO.

SMX2 Rx также содержит специальные блоки, определяющие запятые символы K28.1 и K28.5 и специальный кадр EOS в непрерывном потоке бит и специальный кадр SOS даже в несинхронизированной ссылке. Эти блоки используются для выполнения процедуры синхронизации ссылок.

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

Программное обеспечение тестера SMX2 было написано на Python, чтобы обеспечить быстрое прототипирование и возможность интерактивной работы. Использование Python позволяет легко изменять скрипты пользователем. Также можно переписать критические процедуры времени на C или C ++ после проверки алгоритма.

Разработанное программное обеспечение реализует объектный интерфейс для доступных IPbus-регистров и класс для записи и чтения регистров SMX2. Внедрены две процедуры синхронизации канала: одна для "полной синхронизации", предполагая, что правильные отношения времени / фазы Между исходящими данными и часами, а входящие данные известны; А вторая - для "быстрой синхронизации", которая повторно использует информацию, полученную во время "полной синхронизации". Пользователь может легко выбрать, какой тип синхронизации должен выполняться. Программное обеспечение для тестирования также позволяет определить, какие линии восходящей линии (от SMX2 до DPB) работают. Эта функциональность была использована для проверки того, сможет ли внедренная процедура синхронизации обеспечить надлежащую связь как можно дольше, по крайней мере, с одной из восходящих линий. Программное обеспечение также получает смоделированные данные хита и сохраняет их в файле.

3 Выполненные тесты и результаты

Испытания проводились как в одноплатной конфигурации, так и в конфигурации двух досок с использованием кабеля VHDCI длиной 3,75 м (см. Рисунок 5). В обоих случаях использовалась одна и та же прошивка, однако в конфигурации двух досок на первой плате была подключена только модель SMX2, и на 2-й плате была подключена только модель ROB + DPB. Тесты включали тщательное тестирование процедуры синхронизации ссылок. Были протестированы как "полные", так и "стандартные" процедуры синхронизации.

Первоначальные тесты выявили проблемы, связанные с восстановлением ситуации, когда все подключенные восходящие линии были случайно замаскированы из-за ошибки SEU или программного обеспечения. Проблема была устранена автоматическим отключением всей связи с серверомSMX2enterssynchronizationstateafterreceptionSOS илиEOScommand. После этого были успешно протестированы обе процедуры синхронизации и восстановления по потенциально катастрофическим ситуациям (включая описанные). Результаты последовательных тестов были использованы для улучшения спецификации протокола [2] и соответствующих реализаций контроллеров. После синхронизации каналов были успешно протестированы доступ к регистрам SMX2 и получение имитированных данных хита. Успешный доступ к внутренним регистрам позволил сконфигурировать внутренний генератор тестовых данных и тестирование приема данных (однако скорость атаки должна была быть ограничена из-за низкой пропускной способности IP-протокола).

Результаты, полученные как для одноплатных, так и для двух досок, были одинаковыми. Испытания проводились при номинальной скорости передачи.

4. Выводы

Thecreatedtesterisausefultoolforearlyverificationопределяет цифруpartofSMX2, включая протокол связи. Система помогла выявить и устранить проблемы, возникающие в исходных версиях протокола и базовых проектах ASIC. Тесты конечных версий, выполненные с номинальной скоростью линий SMX2 (нисходящая линия нисходящей линии связи 160 Мбит / с и восходящая линия 320 Мбит / с), подтвердили правильную работу цифровой части ASIC и протокола связи.

Представленная платформа будет использоваться для создания тестовой системы для изготовленных ASIC SMX2.

Модель DPB + ROB может использоваться для тестирования других систем FEE с использованием E-Links на основе GBTX. Оба прошивки и программного обеспечения также станут основой для разработки компонентов цепи считывания CBM.

Созданная платформа и связанная с ней методология также могут быть повторно использованы при предварительной проверке других систем управления и связи на базе ASIC.

Подтверждения

Junfeng Yang из GSI значительно способствовал отладке, расширению и упаковке контроллера IPbus [20]. Работа была поддержана GSI. Работа AGH была поддержана Министерством науки и образования Польши.

Показать полностью…
23 Кб, 9 июня 2017 в 9:05 - Россия, Москва, НИЯУ МИФИ, 2017 г., docx
Рекомендуемые документы в приложении