Магистерская диссертация Исаев Михаил, ФРТК, 515 гр. Научный руководитель д.т.н. Сахин Ю. Х. Отладка и усовершенствование межъядерного коммутатора для объединения двух ядер в составе СБИС МП
Основные проблемы, возникшие при отладке комутатора Изменения в протоколе когерентности Изменения в работе семафорных операций Изменения на уровне выходного интерфейса Проблемы физического проектирования
Предшествующие проекты Устройства доступа к памяти – Memory Access Unit (MAU) Контроллер системного обмена – System Interface Controller (SIC) Принципиальная схема процессора Эльбрус-S Принципиальная схема системы на базе процессораЭльбрус-S
Принципиальная схема СБИС МП
Основные проблемы в когерентном протоколе Проблемы выдачи когерентных данных Проблема поддержания когерентного состояния merged
Выдача когерентных данных: проблема Конвейер L2-арбитра асинхронно отвечает на запросы и меняет порядок ответов Блокирование выдачи когерентных данных в ожидании ответов от другого ядра Блокирование выдачи ответов без данных при заполненности тракта выдачи когернтных данных
Выдача когерентных данных: решение Выдавать когерентные ответы с данными без обобщёного ответа Блокировать выдачу когерентных запросов в кэш до получения всех ответов
Проблема поддержания когерентного состояния merged. Проблема: невозможность поддержания когерентного признака merged для решения конфликта invalidate-invalidate. Решение: отказ от когерентного признака merged замена в чипсете всех запросов invalidate на read-invalidate.
Основные проблемы в работе семафорных операций Поддержка атомарности семафоров, не выровненных по размеру страницы памяти Блокировка запросов в память от соседнего ядра
Описание семафорного протокола Эльбрус-S Семафоры, выровненные по границам страницы памяти Семафоры, не выровненные по границам страницы памяти
Поддержка атомарности семафоров, не выровненных по размеру страницы памяти Проблема: поочерёдная работа ядер с программным семфором, невыровненным по размеру страницы памяти
Поддержка атомарности семафоров, не выровненных по размеру страницы памяти Решение: Отрабатывать завершение семафорной операции не по коду семафорного ответа, а по факту получения обоих подтверждений
Блокировка запросов в память от соседнего ядра при семафорной работе Проблема: Семафорные операции по адресам, пересекающим страницу памяти Параллельно идёт запись по семафорным адресам от соседних ядер Подкачка кода во время семафорной секции Решение: блокировка запросов от соседнего ядра в память
Проблемы на уровне выходного интерфейса Проблема: приём сообщения подтверждается на следующем такте порядок сообщений пожет нарушаться Решение: передавать сообщения раз в два такта, не меняя их порядок
Сравнение foorplan процессоровЭльбрус-S и СБИС МП
Перечень изменений для физического проектирования Байпассирующие приёмные регистры на входах CIC Регистры для передачи состояния в конвейере переименования регистров Входные очереди когерентных запросов Выходные регистры когерентных запросов Регистры на интерфейсе запросов данных Выходные интерфейсные регистры CIC
Перечень добавленных задержек +3-4 такта на передачу первичного запроса +2-3 такта на передачу когерентного запроса +2-3 такта на выдачу когерентных ответов Общая задержка на уровне 10% от предыдущего тракта
Итоги Выполнена верификация протоколов когерентности и семафоной работы для двухъядерной СБИС МП Произведена отладка, усовершенствования и физическое проектирование CIC Разобрано более 200 ошибок, исправлено непосредственно в CIC более 100 ошибок В результате отладки были выявлены ошибки в том числе и в других проектах ЗАО МЦСТ Материалы переданы на tapeout и в данный момент кристалл изотавливается на заводе
Вопросы ?