1 / 20

Дипломная работа

Дипломная работа. Исследование и разработка системного коммутатора и оптимизирующего контроллера оперативной памяти для системы-на-кристалле «Эльбрус-3 s ». Научный руководитель: Чудаков М . Л. Шерстнёв Андрей, ФРТК Гр.112. Базовая конфигурация 4-х процессорной системы. Постановка задачи:.

Download Presentation

Дипломная работа

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Дипломная работа Исследование и разработка системного коммутатора и оптимизирующего контроллера оперативной памяти для системы-на-кристалле «Эльбрус-3s» Научный руководитель: Чудаков М. Л. Шерстнёв Андрей, ФРТК Гр.112

  2. Базовая конфигурация 4-х процессорной системы

  3. Постановка задачи: • Разработка устройства для взаимосвязи процессорных модулей ВК «Эльбрус-3s» • Адаптация оптимизирующего контроллера памяти под разрабатываемую систему Требования: • Доступ к полному объёму оперативной памяти с поддержкой когерентности для всех процессоров • Построение 1-4 процессорных систем с поддержкой когерентности, с возможностью расширения до 8 процессоров • Функционирование на частоте 500 МГц • Поддержка различных соотношений частот процессора и памяти

  4. Внутреннее устройство процессорного модуля SC SC – системный коммутатор

  5. Проблемы Решения 1. Обращение в «свою» / «чужую» память(приём и обработка запросов от 5 абонентов) 2. Невозможность одновременной проверки кэш-памяти всех процессоров 3. Обработка запроса занимает несколько тактов 4. Различная синхронизация интерфейса памяти и процессора

  6. Выполнение чтения из оперативной памяти Чтение из «чужой» памяти Чтение из «своей» памяти

  7. Упрощённая версия буфера запросов Канал #C Канал #B Контроллер ввода/вывода Канал #A Процессор #1 #2 #3 #4 #5 Запрос в контроллер памяти

  8. Коммутатор пакетов и буфер запросов

  9. Проблемы Решения 1. Обращение в «свою» / «чужую» память(приём и обработка запросов от 5 абонентов) Коммутатор пакетов + буфер запросов 2. Невозможность одновременной проверки кэш-памяти всех процессоров Буфер ожидания 3. Обработка запроса занимает несколько тактов Конвейеризация 4. Различная синхронизация интерфейса памяти и процессора

  10. Конвейер 3 2 В буфер ожидания Уровень 1 1 Уровень 2 Уровень 3 Блокировка • Повтор • Блокирование абонента • Сквозная передача Исполнение

  11. Проблемы Решения 1. Обращение в «свою» / «чужую» память(приём и обработка запросов от 5 абонентов) Коммутатор пакетов + буфер запросов 2. Невозможность одновременной проверки кэш-памяти всех процессоров Буфер ожидания 3. Обработка запроса занимает несколько тактов Конвейеризация Модуль интерфейса с контроллером памяти с оптимизацией для кратных частот 4. Различная синхронизация интерфейса памяти и процессора

  12. Структура Системного коммутатора

  13. Подсистема памяти Минимальное время доступа в память(чтение) Максимальная загрузка канала Режим параллельной работы Конвейеризация Изменение порядка

  14. Организация памяти Адрес строки Адрес банка Адрес столбца Запрос от системы DDR Выдача данных в систему Декодер строки и логического банка Банк №3 Банк №2 Выходные драйверы Банк №1 Массив памяти Банк №0 1 row = 1024 byte tRAS Декодер столбца Чтение/Запись Выходной буфер строки(страницы) IDLE Предзаряд Active Активация tCAS Состояния строки

  15. Время(такты) Т1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 1 Команды 1. (0,0,0) pre pre pre pre pre pre pre pre pre act act act act act act act act act rw rw rw rw rw rw rw rw rw 2. (0,1,0) 1 3. (0,0,1) 2 4. (0,1,3) 3 5. (1,0,0) 4 6. (1,1,1) 5 7. (1,0,1) 6 7 Банк Строка Столбец Т2 1. (0,0,0) pre act 2. (0,1,0) pre act rw 3. (0,0,1) rw 4. (0,1,3) rw 5. (1,0,0) rw Предзаряд t=3 Активация t=2 Чтение / Запись t=1 6. (1,1,1) pre act rw 7. (1,0,1) rw Т1 / Т2 = 42/18 = 2,3 Изменение порядка следования запросов

  16. Функциональная схема оптимизирующего контроллера памяти Тип операции Адрес (Данные) Возраст Состояние строки

  17. Режим работы контроллеров Запрос А Запрос А Запрос В МС #0 МС #1 МС #0 МС #1 64 байта 64 байта 32 байта 32 байта Кэш-блок А Кэш-блок А Кэш-блок В H L «Честный» двухканальный режим Максимальное число открытых страниц(64). Минимальное время чтения из памяти (сокращается на 8нс)

  18. Сравнение: AMD Opteron 846 Эльбрус-3м Эльбрус-3s

  19. Результаты: • Разработано Verilog-описание Системного коммутатора • Контроллер памяти адаптирован для системы «Эльбрус-3s» • Собран «стенд» для автономного тестирования • Произведён начальный синтез. • Достигнут заданный уровень производительности при требуемой частоте: • Частота функционирования - 500мгц • Максимальная пропускная способность оперативной памяти – 8 GB/s • Минимальное время обращения в память по считыванию – 60нс. • Время чтения из памяти соседнего процессора – 110нс • Интерфейс памяти DDR2-500 • Поддержка различных соотношений частот процессора и памяти • Возможность построения мультипроцессорной системы с общей памятью с числом процессоров до 8-ми

  20. Характеристики • Общие временные характеристики: • Минимальное время передачи запроса от процессора в контроллер памяти: 0 тактов • Максимальный темп передачи запросов в контроллеры памяти: 4 запроса/такт • Темп приёма запросов: 2 запроса/такт • Входной буфер запросов: • Общая ёмкость: 256 запросов • Возможность разбиения на области для 2 – 5 абонентов • Конфигурации размера области для каждого абонента • Сквозная передача(bypass) • Интерфейс с контроллерами памяти: • Поддержка двух контроллеров оперативной памяти • Дваканала передачи запросов для каждого контроллера • Поддержка различных соотношений частот процессора и контроллера памяти • минимальная задержка для кратных частот • Буфер данных контроллеров памяти: • Ёмкость:1024 байт • Хранение блоков данных 32 и 64 • 100% использование ёмкости буфера независимо от соотношения блоков данных разного размера • 7 портов по записи • 2 порта по чтению • Конвейер: • Число уровней: 3 • Выработка двух типов блокировок: «долговременная» и «быстрый перезапуск» • Сквозная передача запроса в контроллер памяти с первого уровня(bypass) • Буфер ожидания: • Размер буфера: 32 ячейки • Максимальное количество ячеек, освобождаемых за 1 такт: 10. • Время определения коллизии запросов: 1 такт

More Related