Разработка SATA - IO-link контроллера с программными интерфейсами Legacy и AHCI презентация

Содержание

Слайд 2

Развитие интерфейсов накопителей IDE SATA

Развитие интерфейсов накопителей

IDE

SATA

Слайд 3

Сравнение характеристик IDE и SATA Максимальная пропускная способность 133 МБ/с

Сравнение характеристик IDE и SATA

Максимальная пропускная способность
133 МБ/с (UDMA-6)
Способ

передачи данных
параллельный интерфейс
Кодировка
нет
Методы контроля ошибок
CRC
Метод подключения устройств
master/slave

Максимальная пропускная способность
SATA I — 150 МБ/c, SATA II 300 МБ/c
Способ передачи данных
последовательный интерфейс
Кодировка
8/10b
Методы контроля ошибок
CRC & Scrambling
Метод подключения устройств
точка-точка

IDE

SATA

Слайд 4

Постановка задачи Разработать универсальный SATA-контроллер, удовлетворяющий следующим требованиям: - поддержка

Постановка задачи

Разработать универсальный SATA-контроллер, удовлетворяющий следующим требованиям:
- поддержка программных интерфейсов Legacy

и AHCI
- контроллер обязан полностью соответствовать стандартам SATA v2.5 и AHCI v1.3
- интерфейс внешнего взаимодействия IO-link
- использование физического уровня фирмы «Synopsys»
- надежная работа в режимах SATA I — 1.5 GHz и SATA II — 3 GHz
Слайд 5

Расположение контроллера в структуре вычислительного комплекса Контроллер может располагаться как

Расположение контроллера в структуре вычислительного комплекса

Контроллер может располагаться как в составе

чипсета или южного моста, так и подключаться извне с использованием шин PCI/PCI-X.
Слайд 6

Схема функциональных уровней стандарта SATA - Commands and Application ―

Схема функциональных уровней стандарта SATA

- Commands and Application ― верхний уровень, обрабатывающий

поступающие команды, работающий с памятью, выставляющий прерывания и т.д.;
- Serial Digital Transport Control ― транспортный уровень выполняет преобразование контрольной информации или данных, которые необходимо передать, в пакеты\фреймы (Frame Information Structure, FIS);
- Serial Digital Link Layer ― реализует протокол звена данных, кодировка 8\10b;
- Serial Physical Interface Plant ― физический уровень отвечает за передачу и прием данных по последовательному каналу;
Слайд 7

Особенности интерфейса AHCI - до 32-х портов - 32-х, 64-х

Особенности интерфейса AHCI

- до 32-х портов
- 32-х, 64-х битная адресация
- отсутствие разделения накопителей на

Master/Slave
- улучшенное управление питанием
- поддержка режима очередей (Native Queued Command)
- ступенчатая «раскрутка» диска
- Port Multiplier
Слайд 8

Конфигурационное пространство AHCI Конфигурационное пространство AHCI полностью совпадает с конфигурационным

Конфигурационное пространство AHCI

Конфигурационное пространство AHCI полностью совпадает с конфигурационным устройством PCI

контроллера.
Базовые адреса, расположенные в конфигурационном пространстве:
один базовый адрес 24h (реализация AHCI);
пять базовых адресов (интерфейс Legacy);
Слайд 9

Формат команды AHCI

Формат команды AHCI

Слайд 10

Особенности реализации поддержка команд с невыровненным адресом поддержка режима передачи

Особенности реализации

поддержка команд с невыровненным адресом
поддержка режима передачи невыровненного количества слов
поддержка

4-х портов
32-х битная адресация
не реализована поддержка команд Native Queded Command
не поддерживается Port Multiplier
Слайд 11

Реализация - IO-link client ― модуль, отвечающий за проведение транзакций

Реализация

- IO-link client ― модуль, отвечающий за проведение транзакций на IO-link-интерфейсе;
- SATA ―

IO-link Config Space ― конфигурационное пространство (набор управляющих регистров) совпадающее с PCI Config Space;
- DMA Arbiter ― модуль, обеспечивающий арбитраж сигналов с разных портов;
- AHCI HCSM (AHCI HBA Controller State Machine) ― модуль, определяющий внешнее поведение контроллера в режиме AHCI, содержит в себе такие опции как глобальный reset, бит AHCI enable, а также набор регистров отвечающих за поведение устройства;
- SATA Port ― модуль, включающий в себя, модули отвечающие за обработку данных и общение с диском, самая объемная часть контроллера. К порту через SATA кабель подключается накопитель данных.
Слайд 12

Внутреннее устройство модуля SATA-port

Внутреннее устройство модуля SATA-port

Слайд 13

Автомат, реализующий DMA транзакции на AHCI уровне

Автомат, реализующий DMA транзакции на AHCI уровне

Слайд 14

Моделирование Пример выполнения команды на уровне Commands & Application с

Моделирование

Пример выполнения команды на уровне Commands & Application с интерфейсом

AHCI
Порядок выполнения теста:
инициализация диска(OOB sequence);
выполнение команды записи данных на диск по определенному адресу;
выполнение команды чтения данных с диска по тому же адресу;
cравнение данных в памяти;
смещение адреса и данных на фиксированную величину и повторение команды:
Слайд 15

Отладка на макете Из-за отсутствия тестового стенда с IO-link интерфейсом

Отладка на макете

Из-за отсутствия тестового стенда с IO-link интерфейсом был

использован PCI-интерфейс.
Использованное тестовое оборудование:
- ВК на основе микропроцессора МЦСТ «R150»
- набор тестов, входящих в состав boot
- макетная плата (4 разъема SATA, ПЛИС Xilinx Virtex-5, SATA phy layer GTP-Dual Transceiver, 1 PCI разъем)
- логический анализатор ПО ChipScope Analyzer
Принцип тестирования совпадает с уже использованным при моделировании.
Слайд 16

Пример диаграммы, полученной с помощью логического анализатора Начальный момент процедуры

Пример диаграммы, полученной с помощью логического анализатора

Начальный момент процедуры OOB

Sequence:
контроллер передает диску последовательность сигналов COM_RESET;
ожидание ответной последовательности сигналов COM_INIT;
обмен последовательностями сигналов COM_WAKE;
контроллер передает диску фиксированные данные;
если диск отвечает, что данные приняты верно, то определение диска и подстройка частоты прошла успешно.
Слайд 17

Результаты: - разработано RTL-описание универсального SATA- IO-link контроллера с интерфейсами

Результаты:

- разработано RTL-описание универсального SATA- IO-link контроллера с интерфейсами Legacy и AHCI;
- получен

макет контроллера с PCI-интерфейсом;
- собран тестовый стенд и успешно проведены имеющиеся тесты контроллера в составе стенда с использованием реальных SATA дисков фирмы Maxtor

проведение более сложных тестов, включающих загрузку операционной системы с диска и имитацию работы пользователя.
реализация функции Native Queded Command
проведение отладки устройства на тестовом стенде с IO-link-интерфейсом.
В конечном итоге данный контроллер будет реализован на кристалле в составе южного моста, разработанного компанией ЗАО «МЦСТ».

Перспективы:

Имя файла: Разработка-SATA---IO-link-контроллера-с-программными-интерфейсами-Legacy-и-AHCI.pptx
Количество просмотров: 31
Количество скачиваний: 0