Доработка и оптимизация коммутатора данных МП «Эльбрус-S2»

реклама
Выпускная квалификационная работа
Адаптация буферизующего коммутатора
данных МП «Эльбрус-S2»
Студент: Рогов А.С., ФРТК, 613 гр.
Научный руководитель: Костенко В.О.
МП «Эльбрус-S2»
Введение
• МП «Эльбрус-S2» - СБИС МП обработки
цифровой сигнальной информации
• Коммутатор данных (DataBox)
МП «Эльбрус-S2» разработан на основе
DataBox МП «Эльбрус-S»
• МП «Эльбрус-S» построен на ядре
архитектуры «Эльбрус»
• МП «Эльбрус-S2» состоит из двух ядер
архитектуры «Эльбрус» и 4-х ядерного DSPкластера ГУП НПЦ «ЭЛВИС»
МП «Эльбрус-S2»
Упрощённая структурная схема
Абоненты DataBox:
1. IOCOM –
коммутатор
устройств вводавывода;
2. MC – контроллер
памяти;
3. SC – системный
коммутатор;
4. CIC – межъядерный
коммутатор;
MAU – устройство
доступа к памяти
Постановка задачи
• Доработать DataBox с целью
выполнения следующих требований:
Требования
• Согласовать пропускные способности
каналов DataBox и его абонентов
(IOCOM, SC, MC, CIC/MAU)
• Минимизировать задержки передачи
данных
• Обеспечить работу DataBox на
номинальной частоте МП 500МГц
Абоненты DataBox
IOCOM
• Каналы выдачи данных по IO-чтению и DMA-записи
составляют единый канал выдачи данных из IOCOM
в DataBox шириной 64 бит (4ГБ/с)
Канал IO-чтения
Исходные данные
• Редкие короткие обмены
• В зависимости от запросчика
(локальный или удаленный МП)
данные направляются в MAU
(локальное IO-чтение)
или межпроцессорные линки (SC)
(удаленное IO-чтение)
• Темп выдачи данных из IOCOM: 4ГБ/с
Локальное IO-чтение
Проблемы и решения
Проблема
Решение
 Несоответствие
пропускных
способностей
IOCOM (4ГБ/с) и
MAU (1ГБ/с)
 Наличие задержки
передачи данных в
2 такта
 Расширение шины
передачи данных в
MAU
с 16 бит до 64 бит*
 Устранение
задержки*
* Произведены соответствующие изменения
протокола обмена DataBox-MAU
Локальное IO-чтение
Структурная схема
16
64
Канал DMA-записи
Исходные данные
• Передача больших массивов данных
• В зависимости от запросчика
(локальный или удаленный МП)
данные направляются в SC
(локальная DMA-запись)
или межпроцессорные линки (SC)
(удаленная DMA-запись)
• Темп выдачи данных из IOCOM: 4ГБ/с
• Размер буфера DMA-записи: 4x(32Б/64Б)
Локальная DMA-запись
Проблемы и решения
Проблема
Решение
 Несоответствие
пропускных
способностей
IOCOM (4ГБ/с) и
SC (2ГБ/с)
 Расширение шины
передачи данных в
SC
с 32 бит до 64 бит*
* Произведены соответствующие изменения
протокола обмена DataBox-SC
Локальная DMA-запись
Структурная схема
32
64
Буфер DMA-записи
Проблемы и решения
Проблема
Решение
 Наличие задержки
передачи данных за
счет частых
блокировок буфера.
Причина недостаточный
размер буфера:
4x(32Б/64Б)
 Увеличение размера
буфера до
16x(32Б/64Б)
* Проблема и соответствующее решение определены по
результатам тестирования RTL-модели МП (тесты на DMAобмен)
Удаленное IO-чтение /
Удаленная DMA-запись
• Пропускная способность данного
канала ограничена пропускной
способностью межпроцессорных линков
и составляет 2ГБ/с. Доработка
невозможна
Увеличение рабочей частоты
Устранение критических путей
1. IO-чтение (IOCOM -> DataBox -> SC(линки)).
Проходящий комбинационный путь 2.39ns
(slack: -0.49ns) устранен путем реализации
«непрозрачной» очереди вместо
«прозрачной»
Увеличение рабочей частоты
Устранение критических путей
+0.95ns
2. Чтение из памяти (DataBox -> SC(линки)).
Критический путь 2.14ns (slack: -0.24ns) устранен
путем реализации байпаса блочной памяти через
2-элементную регистровую очередь без внесения
дополнительных тактовых задержек
Исправление ошибок
• В процессе работы были обнаружены и
исправлены ошибки RTL-описания DataBox
(выявлено 14 ошибок, 3 ошибки – в других
модулях, 11 исправлено)
• В частности, одна ошибка была выявлена при
верификации системы e3s:
данные IO-чтения портятся другим
(спекулятивным) IO-чтением.
Причина: некорректная обработка признака
«spec» для данных
Результаты
• Выполнены необходимые доработки Verilogописания DataBox, позволившие:
– согласовать пропускные способности каналов
DataBox и его абонентов;
– минимизировать задержки передачи данных;
– Обеспечить работу DataBox на номинальной
частоте МП 500МГц.
• Исправлены обнаруженные ошибки
• Произведено тестирование в составе RTLмодели МП «Эльбрус-S2»
• В настоящее время производится
тестирование прототипа на ПЛИС
Спасибо за внимание!
Скачать