Интерфейсный блок AXI-коммутатора в составе системы на

advertisement
Интерфейсный блок AXIкоммутатора в составе системы
на кристалле «Эльбрус-S2»
Научный руководитель: Сахин Ю.Х.
Студент: Смольянов Павел 518 гр.
Назначение
Интерфейсный блок входит в состав
контроллера
AXI,
осуществляющего
поддержку обмена данными между ядрами
Эльбрус
(универсальная
часть)
и
четырехъядерным
DSP-кластером
QELcore09, и служит интерфейсным мостом
между
AMBA 3.0 AXI и внутренним
интерфейсом контроллера.
Система-на-кристалле «Эльбрус-S2»
универсальные ядра ЭЛЬБРУС
кристалл 0
(CPU 0)
CPU Core 0
CPU Core 1
L2$
L2$
Межъядерный
коммутатор (CIC)
Контроллер системного
обмена (SIC)
Контроллер
памяти 0
(MС0)
Контроллер
памяти 1
(MС1)
к памяти
Системный коммутатор
(SC)
Core
0
Core
2
Core
1
Core
3
DMA
DSP-кластер
DSP
интерфейсная
часть
Коммутатор
данных
(Data Box)
Контроллер встроенных
интерфейсов ввода-вывода
(IOCOM)
контроллер
Контроллер
канала ввода/
вывода
Контроллер
линков
связи
кристалл 1
(CPU 1)
Контроллер
линков
связи
кристалл 2
(CPU 2)
Контроллер
линков
связи
кристалл 3
(CPU 3)
Контроллер
ввода
цифровой
информации
AXI-контроллер
(AXI Box)
IO канал
ADC канал
Универсальная часть
Задачи
• Согласование протокола AXI с внутренним
интерфейсом контроллера.
• Работа в режиме Master для осуществления доступа
к внутренним регистрам DSP-кластера
• Работа в режиме Slave для осуществления DMA
обмена со стороны DSP-кластера
Требования
• Максимизация полезной пропускной способности
DMA-канала.
• Снижение задержек при передачи коротких IOтранзакций
• Наличие механизма синхронизации
Доcтоинства протокола AMBA AXI
• Протокол пригоден для проектов, требующих от интерфейса
высокой пропускной способности и небольших задержек
передачи данных
• Протокол делает возможной работу интерфейса на высокой
тактовой частоте при относительно несложной аппаратной
реализации
• Протокол является универсальным – он совместим практически
с любыми сопроцессорами, контроллерами памяти и
контроллерами ввода-вывода, применяемыми в СБИС класса
«система-на-кристалле»
• Протокол допускает различные по сложности аппаратные
реализации
• Протокол является открытым
Поддерживаемые особенности
протокола AXI
•
•
•
•
•
•
•
раздельные линии передача адреса и данных
приостановка адреса и данных
отдельный канал ответов
запись с маской
приём невыровненных данных
фиксированная ширина шины данных 64 бит
длина транзакции 1-16 слов
Согласование AXI с внутренним
интерфейсом
Формат пакетов
данных DSP:
Форматы пакетов данных
универсальной части:
32 байта с маской
64 байта без маски
32/64 байта
1,2,4..32 байта с маской
32/64 байта без маски
DMA-запись
DMA-чтение
8,16,24..128 байт с
маской
IO-запись
1,2,4..32,64 байта
IO-чтение
• Различные форматы
• Непрерывная передача
пакета
• Единый формат
• Можно приостановить
передачу в любое время
Общая схема работы
Контроллер AXI
DSP - кластер
Write
Write
IO (Master)
DMA (Slave)
IO (Slave)
Read
Read
Write
Write
DMA (Master)
Read
Read
64-битный интерфейс AXI
Канал IO – доступ к конфигурационным и статусным регистрам DSP,
инициализация загрузки команд.
Канал DMA – загрузка и выгрузка команд/данных.
Работа в режиме Master
Address
Data
Data
Write
Response
Address
Data
Read
Data
• Минимальное количество элементов, отсутствие буферизации.
• Следствие – минимальные задержки при приеме/передаче коротких IOтранзакций.
• Канал ответов для синхронизации IO записи/чтения.
Работа в режиме Slave (DMA-запись)
2-Port Memory
Write Data
Write Data
Read Logic
Write Logic
Response
Address
Address Logic
Особенности:
• Буферизация
• Наличие двухпортовой памяти
• Канал ответов для синхронизации
• Разбиение длинных транзакций по записи
Address
Работа в режиме Slave (DMA-чтение)
Request
Read Address
Request Splitter
Address Buffer
Read Data
Data
Filter
Data Buffer
Особенности:
• Буферизация заявок на чтение
• Оптимизированная буферизация данных
• Разбиение длинных транзакций по чтению
Read Data
Оптимизация DMA - записи
Elbrus
A1
DSP
A2
D1
D1
D1
D1
A3
D2
D2
D2
D2
Address (awAddr)
D3
Data (wData)
Благодаря наличию дополнительной стадии конвейера и сдвигу адреса
на 1 такт теоретическое заполнение канала DMA-записи 100%.
Синхронизация
Универсальная
часть
Интерфейсная
часть
DSP - кластер
IO (Slave)
WR
WR RD
… RD WR
RD
Наличие механизма ответов позволяет избежать «гонок» в различных
каналах данных.
Результаты
• Разработана и верифицирована Verilogмодель устройства
• Достигнута максимальная пропускная
способность DMA-канала
• Обеспечено наличие синхронизации
• Написан набор тестов для автономного
тестирования связки контроллера AXI и
DSP-кластера.
Download