Upload
avon
View
56
Download
0
Embed Size (px)
DESCRIPTION
Исаев Михаил, ФРТК, 515 гр. Научный руководитель — Сахин Ю. Х. Выпускная квалификационная работа. Объединение двух процессорных ядер с архитектурой "Эльбрус" для создания двухъядерной системы-на-кристалле “Эльбрус- S 2”. Цели и особенности работы. - PowerPoint PPT Presentation
Citation preview
Выпускная квалификационная работа
Исаев Михаил, ФРТК, 515 гр.Научный руководитель — Сахин Ю. Х.
Объединение двух процессорных ядер с архитектурой "Эльбрус" для создания двухъядерной системы-на-кристалле “Эльбрус-S2”.
Цели и особенности работы
Разработка межпроцессорного коммутатора для объединения двух ядер с архитектурой “Эльбрус” в составе микропроцессора “Эльбрус-S2” с максимальным использованием наработок из проекта “Эльбрус-S”
Предшествующие проекты
Устройства доступа к памяти – Memory Access Unit (MAU)
Контроллер системного обмена – System Interface Controller (SIC)
Принципиальная схема процессора “Эльбрус-S”
Принципиальная схема системы на базе процессора “Эльбрус-S”
Требования к построению двухъ-ядерного процессора “Эльбрус-S2”
Неизменность архитектуры вычислительного комплекса
Неизменность процессорного ядра “Эльбрус-S”
Неизменность набора системной логики SIC Минимальные изменения устройства доступа
процессорного ядра к памяти MAU
Принципиальная схема процессора “Эльбрус-S2”
Принципиальная схема процессора “Эльбрус-S2”
Контроллер межъядерных взаимодействий — Core Integration Controller (CIC):
1) Объединение ядер2) Интерфейс с SIC
Анализ интерфейса MAU-SIC
Запросы в систему по чтению/записи Короткие сообщения трёх типов: семафорные
операции, короткие когерентные ответы, короткие сообщения «завершение операции чтения»
Snoop-запросы Короткие когерентные ответы и ответы с данными Данные из MAU в память Запросы за данными из MAU в память
(с признаком когерентных данных) Данные в MAU из памяти и I/O
Функции межъядерного коммутатора
Маршрутизация и поддержка необходимого темпа выдачи запросов в систему
Обработка когерентных запросов с учётом двухъядерности процессора
Маршрутизация данных между ядрами
Общая схема коммутатора
Контроллер запросов MAU — MAU Request Controller (MRC)
Контроллер когерентных сообщений — Coh_Box
Межинтерфейсный коммутатор — Request Sender (RS)
Проблемы управления запросами MAU
Чередование запросов в систему от разных ядер
Несовпадение суммарного количества запросов по чтению/записи от обоих процессоров (64/32) с возможным количеством запросов в системе (32/16)
Невозможность проверки семафоров для разных ядер одного процессора
Общая схема контроллера запросов MAU
Арбитр — Arbiter (ARB) Регистры чтения — load
registers (LDR) Регистры записи — store
registers (STR) Семафорные регистры
— semaphore registers (SEM) поддержка семафоров архитектуры “Эльбрус” (аппаратного и двух программных)
Функции контроллера запросов MAU
Выборка одного запроса по чтению/записи или одной семафорной операции от двух ядер за такт (с круговым приоритетом)
выборка одного сообщения «завершение операции чтения» от двух ядер за такт(с круговым приоритетом)
Проверка адреса выбранного запроса на совпадение с 3 семафорами
Переименование номера регистра выбранного запроса в буфере LDR (32 регистра) или STR (16 регистров) – обеспечивает минимальные изменения MAU
Поддержание необходимого количества запросов в системе
MEMORY MEMORY
MEMORY MEMORY
SIC
SIC
SICCORE
CORE CORE
CORE
Принципы реализации когерентности в системе
Рассылка snoop-запросов всем процессорам
Доставка сообщений только до нужных ядер
Сбор сообщений и формирование обобщённых ответов
CORE1
CORE0
CORE1
CORE0
CORE1
CORE1
CORE0
CORE0
SIC
CIC
SIC
CIC
SIC
CIC
SIC
CIC
SIC
Общая схема контроллера когерентных сообщений
4 fifo-буфера Арбитр — Arbiter
(ARB) Буфер когерентных
запросов — Coherent Request Bufer (CRB) 64 reg. (по принципу reservation station)
Функции контроллера когерентных сообщений
Приём до двух когерентных запросов за такт с разных направлений
Сбор до двух когерентных ответов за такт, по одному от каждого из ядра
Формирование одного обобщённого когерентного ответа за такт
Общая схема межинтерфейсного коммутатора
Функции межинтерфейсного коммутатора
Переформатирование запросов к формату интерфейса MAU-SIC процессора «Эльбрус-S»
Маршрутизация запросов в home-чипсет и линки
Арбитраж коротких сообщений в зависимости от их назначения
Результаты
Разработано Verilog-описание межъядерного коммутатора, удовлетворяющее поставленным требованиям:
1) неизменности архитектуры системы, процессорных ядер, SIC
2) малым изменениям MAU Проведено автономное тестирование