Разработка 4-х канального контроллера оперативной памяти DDR3 SDRAM с интерфейсом AXI Студент: Кожин А.С., ФРТК, 515 гр. Научный руководитель: д.т.н., проф. Сахин Ю.Х. Сравнение показателей пропускной способности памяти Процессор Колво ядер Частота ядра / частота памяти МГц Тип памяти Кол-во каналов Суммарная пропускная способность, Гбайт/с Эльбрус-S 1E 500 / 250 DDR2-500 2 8 СБИС МП (Кубик-ку) 2E+ 4 DSP 500 / 400 DDR2-800 2 12,8 Следующий МП (Кубик-2) 4 E* + 4 DSP 800-1000 / 800 DDR3-1600 4 51,2 в 2 раза в 2 раза выше X больше ядер частота ядра в 2 раза выше в 2 раза больше =4= X частота памяти каналов памяти Постановка задачи • Разработка 4-х канального контроллера оперативной памяти DDR3 SDRAM • Автономное тестирование • Предварительный синтез устройства Основные требования • • • • Поддержка стандарта DDR3 SDRAM Интерфейс с системой – AMBA AXI Интерфейс с физическим уровнем – DFI Поддержка нескольких частотных режимов • Масштабируемость Структурная схема SysRegs – блок системных регистров MC_top – 4-х канальный контроллер памяти MC_ch – независимый канал PHY – покупной физический уровень Поддержка стандарта DDR3 SDRAM • • • • • • Изменение длины пакета данных “на лету” Инициализация настроек памяти Тайминг Адресация и интерливинг Калибровка памяти – исследуется Режим энергосбережения (Self-Refresh) – исследуется Интерфейс с системой AMBA AXI Преимущества: – Открытый стандарт – Простота и универсальность – Работа с устройством как с IP-блоком • Упрощает отладку и замену на поведенческую модель – Отсутствие критических путей • Буферизация команд • Отсутствие комбинационных петель Сложности адаптации: – Реализация буфера данных записи – Поддержка операции “Чтение-Модификация-Запись” Интерфейс с системой Буфер данных записи Эльбрус-S, СБИС МП Переход к AXI Один канал записи • Массив регистров • Общий для двух каналов • Сложность • Требует много ресурсов • Упрощение, двухпортовая блочная память • Масштабируемость числа каналов памяти – Свой для каждого канала • Устранение критических путей – Запись через AXI – Находится близко от ядра контроллера • Доступ к общему каналу данных записи через арбитр с круговым приоритетом Интерфейс с физическим уровнем DFI DFI (DDR PHY Interface): – Открытый стандарт, простота – Совместная разработка ARM, Intel, Samsung, Synopsys и др. – Частота контроллера в 2 раза ниже частоты памяти без потери производительности Интерфейс с физическим уровнем Циклы команды • Две команды за такт контроллера памяти, значима только одна (в режиме 2T обе) • Указание о задержке команды на один такт памяти • Подстройка данных в самом физическом уровне с учетом загруженных параметров памяти Интерфейс с физическим уровнем Формирование команды cmd-to-cmd 7 тактов DDR clock Домены синхронизации Структура Домены синхронизации Проблемы • Системный домен (System domain) – 800/1000 МГц • Домен оперативной памяти (DDR domain) – 800, 666, 533, 400 МГц • Домен ядра контроллера (MC domain) – частота в 2 раза ниже частоты памяти Домены синхронизации Метки пересинхронизации • Схема разработана для СБИС МП • Учет положения фронта высокой частоты относительно фронта низкой частоты • Некратные фиксированные соотношения частот • Минимальная задержка передачи Домены синхронизации Блоки согласования clabels – блок формирования меток mc_int – интерфейсный модуль с системой Масштабируемость Оптимальная настройка контроллера с точки зрения производительности и синтеза. Основные параметры: – Число каналов памяти – Размер буфера запросов и планировщика – Размер буфера данных записи Буфер запросов и планировщик Синтез устройства • Технология 40 nm, существенный вклад соединительных проводов в общую задержку • Синтез в топологическом режиме • Занимаемая площадь для различных конфигураций: Количество ячеек буфера запросов и планировщика 8 Площадь 0,11 мм2 1-го канала 16 32 0,14 мм2 0,25 мм2 Результаты • Разработано Verilog-описание контроллера памяти DDR3 SDRAM и механизмы его взаимодействия с системой • Проведено автономное тестирование • Выполнен синтез устройства с различными параметрами для нахождения оптимального соотношения производительности и используемых ресурсов • Минимальное время доступа в память 45 нс Спасибо за внимание!