Как включить режим AHCI для SATA в BIOS без переустановки Windows
В данной статье мы представим несколько способов того, как включить режим AHCI для SATA в BIOS без переустановки Windows 10 и тем самым и повысить производительность, эффективность, а также снизить энергозатраты современных HDD и SSD накопителей…

Содержание
Стабильная и быстрая работа любого компьютера зависит от многих факторов, влияющих на производительность отдельных компонентов. Одним из таких факторов является режим работы интерфейса SATA, который отвечает за весь процесс передачи данных с жестких дисков.
Современные технологии не стоят на месте, а постоянно развиваются, что приводит к некоторым конфликтам, способным возникать внутри компьютера.
Для примера следует привести некорректную работу SSD накопителя, подключенного через интерфейс SATA, запущенного в режиме IDE – устаревшем режиме работы интерфейса SATA, который не способен раскрывать потенциал современных более скоростных накопителей. Данный конфликт возможен из-за того, что производители современных материнских плат оставляют своим пользователям возможность корректной работы со старыми носителями без поддержки AHCI.
Стоит отметить, что в большинстве современных плат уже выставлен режим AHCI по умолчанию, но подобная проблема может случится при установке более современного SSD на старую плату или приобретении материнской карты с рук, где был установлен IDE режим работы.
Чем отличаются AHCI и IDE?
IDE – старый режим работы через интерфейс SATA, который практически ничем не отличается от его предшественника PATA (для PATA использовался широкий и тонкий кабель). Данный режим работы был популярным до повсеместного введения AHCI, который позволял современным накопителям раскрыть полный потенциал скорости и возможностей.

AHCI – современный режим работы через интерфейс SATA. Работа в данном режиме позволяет получить максимальную эффективность от SSD-носителей с очень высокой скоростью записи данных. Помимо этого, AHCI режим имеет более экономное энергопотребление, а также позволяет производить замену жестких дисков без выключения компьютера. Работа в AHCI полностью раскрывает возможности интерфейса SATA.

Зачем включать AHCI?
Включение режима AHCI совместно с быстрым жестким диском могут дать хорошую прибавку в скорости работы компьютера, поскольку скорость его записи сможет возрасти на 10-20%. Включив AHCI, пользователь будет каждый раз экономить время в процессе записи файлов.
Как определить текущий режим работы?
Чтобы определить текущий режим работы, достаточно проследовать следующим шагам:
Шаг 1. Заходим в «Панель управления», нажав правой кнопкой мыши по кнопке «Пуск».
Шаг 2. В открывшемся окне выбираем режим отображения «Мелкие значки» и кликаем ЛКМ по иконке «Диспетчер устройств».
Шаг 3. В открывшемся окне необходимо кликнуть по параметру «Контролеры IDE/SATA…» и напротив стандартных контролеров будет указан режим работы. На скриншоте показан режим IDE.
Также узнать режим работы можно через BIOS или UEFI. Параметры, где находится информация про режим работы, как правило, располагаются в пунктах «SATA Mode», «Storage options» и т.д. в зависимости от модели материнской платы и прошивки.
Важно! Не переключайте режимы работы в BIOS или UEFI, поскольку это приведет в невозможности загрузки операционной системы.
Как включить режим AHCI для SATA в BIOS без переустановки Windows 10?
Существует несколько способов, при помощи которых можно безопасно переключить режимы работы с сохранением правильной работоспособности ОС.
Способ №1. Включение режима AHCI через реестр
Шаг 1. Для начала необходимо открыть редактор реестра. Это можно сделать, нажав правой кнопкой мыши по кнопке «Пуск», после чего выбрать пункт «Выполнить». В строке jnr необходимо ввести команду regedit и подтвердить кнопкой ОК.
Шаг 2. В открывшемся окне переходим по пути HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Services\ iaStorV
Шаг 3. Нажимаем по иконке «Start», устанавливаем значение 0 и подтверждаем действие кнопкой «Ок», как показано на скриншоте.
Шаг 4. Переходим в HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Services\ iaStorAV\ StartOverride и проделываем те же действия для параметра с названием 0.
Шаг 5. Переходим в HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Services\ storahci, нажимаем дважды по параметру Start и устанавливаем значение 0.
Шаг 6. Заходим в HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Services\ storahci\ StartOverride и устанавливаем значение 0 для параметра с названием 0.
Шаг 7. Перезагружаем ПК и заходим в BIOS, где необходимо установить режим работы AHCI. В различных моделях материнских карт путь к экрану переключения режимов может иметь разные названия. Ниже на скриншоте показан самый распространенный вариант.
Сохраняем изменения и перезагружаем компьютер в безопасном режиме.
После перезагрузки произойдет установка нового пакета драйверов SATA, и системе потребуется очередная перезагрузка, после чего режим AHCI будет включен.
Стоит отметить, что в некоторых случаях данный способ не срабатывает, что приводит к «синему экрану» и дальнейшей перезагрузке.
Чтобы испытать другой способ, необходимо вернуть режим IDE в BIOS
Способ №2. Включение режима AHCI с помощью командной строки
Шаг 1. Включить компьютер, нажать правой кнопкой мыши по кнопке «Пуск» и открыть параметр «командная строка» или «Windows PowerShell» от имени администратора.
Шаг 2. В открывшемся окне необходимо ввести bcdedit /set
Шаг 3. После завершения операции необходимо перезагрузить ПК, зайти в BIOS и изменить режим работы, как было описано в первом способе. Компьютер загрузится в безопасном режиме и установит необходимые драйвера. После этого снова открываем командную строку от имени администратора и вводим команду bcdedit /deletevalue
После следующей перезагрузки будет включен новый режим работы, оптимизированный для использования скоростных SSD дисков.
Что делать, если пропали важные данные?
Любые манипуляции с жестким диском повышают вероятность потери данных. Особенно когда речь заходит о манипуляциях с режимом работы диска и т.д.
Часто в попытке включении режима ACHI пользователи совершают действия, из-за которых нарушается логическая структура дисков. Более того, зачастую неопытные пользователи при включении режима ACHI через командную строку выполняют команды, которые инициализируют диск – то есть все данные на диске уничтожаются и производятся первоначальные настройки.
Поэтому будьте предельно осторожны при проведении любых манипуляций с диском.
Если же вы заметили исчезновение важных файлов или проблемы с локальными дисками – сразу же восстановите данные в безопасное место. В противном случае вы можете потерять данные безвозвратно.
Чтобы восстановить данные скачайте и установите программу RS Partition Recovery.
Универсальное решение для восстановления данных
Программа позволяет восстанавливать утерянные данные вследствие случайного удаления файлов, форматирования накопителя, при повреждениях логической структуры накопителя и во многих других случаях.
Кроме того, RS Partition Recovery поддерживает ВСЕ типы современных файловых систем, соответственно вы сможете восстанавливать файлы не только с Windows дисков, но также из тех, которые работали в других операционных системах (в том числе и серверных).
Важно: в качестве места для записи восстановленных файлов обязательно выберите диск, который будет отличаться от того, на котором ранее хранился файл. Это позволит избежать перезаписи файла.
Именно по этой причине RS Partition Recovery позволяет записать восстановленные файлы на отдельный жесткий или локальный диск (или флэшку), упаковать восстановленную информацию в ZIP-архив или сразу же отправить на FTP-сервер.
Часто задаваемые вопросы
Комментарии (3)
Спасибище за дельную статью! Поменял мп, по другим статьям подготовился и мимо, у всех не те ветки указаны, только у вас актуальные и правильные!
что такое amd sata controller

В данном материале будет простыми словами описано такое устройство как контроллер IDE/SATA.
IDE/SATA контроллер — что это такое?
Устройство (чип) на материнской плате, необходимое для функционирования подключенных жестких дисков.
Важно понимать, контроллер может быть двух вариантов:
Простыми словами — чип, благодаря которому работают порты SATA (или IDE):
К этим портам мы подключаем устройства для постоянного хранения данных — жесткие диски (HDD) или твердотельный накопитель (SSD). Также можно подключить привод CD/DVD, однако им уже мало кто пользуется. Также порты могут быть разных цветов, разница — порты имеют разную спецификацию (попросту одни работают немного медленнее чем другие, например может быть SATA 2 и 3).
Раньше некоторые материнские платы содержали сразу два интерфейса — SATA и IDE. Один был основным, а второй — функционировал за счет установки дополнительного чипа на плату.
Также такой контроллер может быть внешним, который подключается используя шину PCI-E:
Для функционирования устройства необходимо установить драйвера. Чтобы установить операционную систему на такой диск, подключенный к внешнему контроллеру — также нужно заранее подготовить драйвера, а лучше внедрить их сам образ (например утилитой nLite).
Отличия ревизий SATA
В основном отличаются скоростью:
Заключение
Что делает контроллер AMD SATA?
Контроллер SATA (последовательный контроллер ATA) — это аппаратный интерфейс, который подключает жесткий диск к материнской плате компьютера и управляет потоком данных или направляет его. … Расширенный интерфейс хост-контроллера (AHCI) позволяет использовать расширенные функции, такие как горячая замена, на дисках SATA.
Контроллер AMD SATA AHCI?
Драйверы AMD SATA AHCI для чипсетов AMD 6-й, 7-й, 8-й или 9-й серии включены в пакет драйверов для набора микросхем и совместимы только с настольными системами под управлением Windows® 8.1, Windows 7 или более ранней версии (в зависимости от набора микросхем). ).
Какой режим SATA мне использовать?
Если вы устанавливаете один жесткий диск SATA, лучше всего использовать порт с наименьшим номером на материнской плате (SATA0 или SATA1). Затем используйте другие порты для оптических приводов.
Что делает стандартный контроллер SATA AHCI?
Advanced Host Controller Interface или AHCI — это технический стандарт интерфейса, который позволяет программному обеспечению взаимодействовать с устройствами Serial ATA (SATA). Эти устройства класса межсоединений периферийных компонентов (PCI) перемещают данные между системной памятью и носителями SATA.
Как обновить контроллер AMD SATA?
Вариант 2 — автоматическое обновление драйвера контроллера AMD SATA
Нужен ли Ahci для SSD?
Режим AHCI, как объяснялось ранее, включает NCQ (собственную очередь команд), которая на самом деле не требуется для твердотельных накопителей, поскольку они не нуждаются в оптимизации таким образом, поскольку нет физического движения головок или пластин. Во многих случаях это может снизить производительность SSD и даже сократить срок его службы.
Как установить драйверы SATA?
4. Установите или обновите драйверы для стандартного контроллера SATA AHCI.
Что мне следует использовать: AHCI или RAID?
Если вы используете твердотельный накопитель SATA, AHCI может быть более подходящим, чем RAID. Если вы используете несколько жестких дисков, лучше выбрать RAID. Если вы хотите использовать твердотельный накопитель и дополнительные жесткие диски в режиме RAID, рекомендуется продолжить использование режима RAID.
Могу ли я перейти с RAID на AHCI без переустановки Windows?
На самом деле есть способ переключить работу с IDE / RAID на AHCI в Windows 10 без переустановки. … Измените режим работы SATA на AHCI с IDE или RAID. Сохраните изменения и выйдите из программы установки, и Windows автоматически загрузится в безопасном режиме. Еще раз щелкните правой кнопкой мыши меню «Пуск» Windows.
Почему Ahci лучше для SSD?
AHCI — новый режим для устройств памяти, в котором компьютер может использовать все преимущества SATA, в первую очередь более высокую скорость обмена данными с SSD и HDD (технология Native Command Queuing, или NCQ), а также горячую замену жестких дисков.
Что лучше IDE или AHCI?
На рынке нет конкуренции между AHCI и IDE. У них схожие цели, так как они оба позволяют носителю данных обмениваться данными с компьютерной системой через контроллер хранилища SATA. Но AHCI значительно быстрее, чем IDE, которая представляет собой более старую нишевую технологию для устаревших компьютерных систем.
Как мне узнать, находится ли мой Sata в режиме AHCI?
Щелкните стрелку рядом с «Контроллеры IDE ATA / ATAPI», чтобы отобразить список драйверов контроллеров, используемых в настоящее время в вашей системе. Найдите запись, содержащую аббревиатуру «AHCI». Если запись существует, и над ней нет желтого восклицательного знака или красного «X», значит, режим AHCI включен правильно.
Что лучше ATA или AHCI?
Устройства SATA работают лучше, если настроены как AHCI, а не ATA; AHCI сокращает время, необходимое для сохранения и открытия файлов на жестком диске, благодаря встроенной функции очереди команд (NCQ), которая оптимизирует несколько команд чтения / записи.
Что такое драйверы SATA?
Жесткие диски SATA (Serial Advanced Technology Attachment) распространены в портативных компьютерах, но настольные компьютеры также поддерживают подключение жестких дисков SATA. Жесткие диски SATA используют программное обеспечение, называемое «драйвером», для связи с остальной частью компьютера.
Что такое драйвер AMD SMBus?
AMD SMBus Driver — это драйвер шины управления системой от Advanced Micro Devices Inc. Контроллер SMBus — это набор микросхем на материнской плате, который в основном используется для связи с источником питания для команд включения / выключения. … AMD SMBus время от времени требуются обновления, чтобы обеспечить оптимальную работу в качестве диспетчера устройств.
Что такое AMD raid?
Технология AMD RAID
Термин «RAID» означает «избыточный массив независимых дисков». С помощью RAID вы можете объединить два или более жестких диска в одно логическое устройство или диск. Этот документ содержит информацию об общих конфигурациях RAID и процедурах настройки вашей системы для различных конфигураций RAID.
ahci amd sata controller

Скачать драйвера » SATA RAID » AMD » AMD SATA AHCI
Драйвера для AMD SATA AHCI RAID контроллеров
— AMD SB6xx RAID Drivers
— AMD SB7xx RAID Drivers
— AMD SB8xx RAID Drivers
— AMD SB9xx RAID Drivers
— AMD A-Series APU Chipset RAID Drivers
— AMD E-Series APU Chipset RAID Drivers
Поддерживаются ИД устройств:
PCI/VEN_1002&DEV_4380
PCI/VEN_1002&DEV_4381
PCI/VEN_1002&DEV_4391
PCI/VEN_1002&DEV_4392
PCI/VEN_1002&DEV_4393
PCI/VEN_1002&DEV_4394
PCI/VEN_1022&DEV_7801
PCI/VEN_1022&DEV_7802
PCI/VEN_1022&DEV_7803
PCI/VEN_1022&DEV_7804
Windows XP 32/64-bit версия 13.4
скачать AMD RAID драйвер
Размер: 24.41 MB
Windows Vista, Win7, Win8 32/64-bit версия 13.4
скачать драйвера AMD SATA/AHCI/RAID
Размер: 48.91 MB
комплект драйверов для более старых версий чипсетов
скачать AMD SATA AHCI Controller Driver
Размер: 6.94 Mb
ОС:
Windows 7 — v.3.1.1540.127
Windows Vista — v.3.1.1540.127
Windows XP — v.3.1.1540.127, 3.1.1540.64, 3.2.1548.37, 3.10.1540.64
В архиве:
— драйвера для AMD 7xx чипсетов.
— AMD SATA AHCI Controller Driver от HP для ноутбуков v.3.1.1540.64
— AMD SATA AHCI Controller Driver Diskette
Как скачать драйвер? — прочитайте руководство по скачиванию драйверов с нашего сайта
Как установить драйвер? — статья, которая Вам поможет установить драйвера
Если Вы заметили неработающую ссылку, пожалуйста сообщите об этом Администратору сайта в разделе Контакты
В предыдущей статье мы говорили о функции TRIM, где упоминали, что для ее нормальной работы нужен режим AHCI. Данный режим раскрывает возможности запоминающих устройств наполную, что сильно повышает производительность. Мы говорим о накопителях памяти – SSD, HDD. Далее вы узнаете, что такое AHCI, проверим включен ли он, а если нет, то включим.
Что такое AHCI?
Раньше компьютеры имели так называемый интерфейс PATA, к которому подключались все запоминающие устройства, но времена его прошли и на замену пришел интерфейс SATA, о котором сейчас и пойдет речь.
У SATA есть два режима работы:
IDE (Integrated Development Environment) – данный режим нужен для создания совместимости с устаревшими устройствами, которые все еще подключаются по PATA интерфейсу, о чем можно сказать, что SATA интерфейс с режимом IDE почти тоже самое, что и PATA.
AHCI (Advanced Host Controller Interface) – это режим SATA, раскрывающий все возможности накопителей памяти. Он имеет несколько интересных возможностей: «горячее» отключение и подключение жестких дисков, то есть вы можете делать это при включенном компьютере. Еще одна возможность – технология NCQ, которая уменьшает у жестких дисков количество перемещений считывающих головок, а также повышает производительность накопителя.
Использование этого режима положительно повлияет на быстродействие ПК и ноутбуков, на практике это не так уж и заметно, если честно, но все же, что-то есть, поэтому я бы рекомендовал включить этот режим, если он выключен, тем более, в этом нет ничего сложного.
Наличие на компьютере режима AHCI?
Есть возможность двумя способами узнать наличие режима AHCI на ПК или ноутбуке, если он у вас довольно новый, то, скорее всего он у вас есть.
Первый метод : Мы должны зайти в диспетчер устройств, где вы раскрываете вкладку Контроллеры IDE ATA/ATAPI, или что-то подобное и если в названии контроллера присутствует слово AHCI, то этот режим используется.
Второй метод : Наличие и использование режима AHCI можно посмотреть и в BIOS. Там вы должны найти SATA mode, либо что-то похожее и проверить что-там стоит, если AHCI, то можете быть спокойны.
Хочу напомнить, что вместо пункта AHCI может стоять IDE, но не стоит сразу переключать этот режим, ниже вы узнаете почему.
Как включить режим AHCI в операционной системе?
Включение AHCI идет через BIOS. Скорее всего, у вас на материнской плате присутствуют интерфейсы SATA, но вот в BIOS активировать функцию AHCI нельзя. Скорее всего дело в прошивке BIOSа, и его нужно обновить, но без специальных знаний этого делать не стоит.
Если у вас современные версии Windows, то у вас уже установлен драйвер AHCI, он обязателен. Он встроен, начиная с Windows Vista. В этом случае вы можете без проблем активировать AHCI.
Что говорить о Windows XP, то в данный период времени режима AHCI еще не было, да и интерфейс SATA только разрабатывался. Зато необходимый драйвер можно найти в интернете и использовать в Windows XP.
Вот и все, я рассказал вам об особенностях режима AHCI, теперь вы знаете, как проверить его наличие, и как включить.

Драйверы для AMD SATA AHCI Controller собраны с официальных сайтов компаний-производителей и других проверенных источников. Официальные пакеты драйверов помогут исправить ошибки и неполадки в работе AMD SATA AHCI Controller (контроллеры). Скачать последние версии драйверов на AMD SATA AHCI Controller для компьютеров и ноутбуков на Windows.
Скачать драйвер
Скачать и обновить нужные драйверы автоматически
© 2015-2019 DriverHub
Все названия продуктов, логотипы и торговые марки являются собственностью соответствующих владельцев. Все названия компаний, продуктов и услуг, используемые на этом сайте, предназначены только для идентификации.
Реверсим и улучшаем SATA контроллер
Вы когда-нибудь задумывались, как много вокруг умной электроники? Куда ни глянь, натыкаешься на устройство, в котором есть микроконтроллер с собственной прошивкой. Фотоаппарат, микроволновка, фонарик. Да даже некоторые USB Type C кабели имеют прошивку! И всё это в теории можно перепрограммировать, переделать, доработать. Вот только как это сделать без документации и исходников? Конечно же реверс-инжинирингом! А давайте-ка очень подробно разберём этот самый процесс реверса, от самой идеи до конечного результата, на каком-нибудь небольшом, но интересном примере!
Выбираем подопытного
К различным PCI-E устройствам я начал присматриваться ещё несколько лет назад, но большинство из встреченных мной девайсов либо были слишком просты и имели намертво зафиксированную функциональность, и очень небольшие возможности со стороны прошивки:
USB 3.0 контроллер на чипе ASMedia
Либо выглядели настолько сложно, что перспектива реверса такого монстра просто пугала:
Продвинутый сетевой контроллер Fujitsu
Мне же требовалось устройство, которое имеет:
встроенный мощный микроконтроллер
легко перепрограммируемое ПЗУ
отладочные интерфейсы (UART, JTAG)
встроенную прошивку (а не загружаемую драйвером)
Ну и в добавок, это должно быть широко поддерживаемым всеми системами устройством, например, SATA или USB контроллером. И, как вы уже догадались из названия статьи, недавно я наткнулся на вот такой SATA контроллер:

А именно, меня привлекла крайняя простота контроллера (только проц, да ПЗУ) и радиатор на нём (а значит, внутри мощный CPU!). Быстрый поиск по названию чипа ещё больше подогрел к нему интерес. Найденная прошивка для него весила аж 500 КБ, имела признаки ARM кода, не была пожата, и имела достаточно текстовых отладочных строк:
Даже по беглому взгляду на прошивку уже можно сказать, что исследовать её будет несложно
И на него была некоторая документация, в которой очень много выводов было не подписано, что давало шанс на наличие отладочных интерфейсов:
Какие подозрительные ряды неиспользуемых пинов, не правда ли?
В скором времени контроллер был куплен, и я взглянул на него повнимательнее:
Без радиатора контроллер выглядит ещё более простым
Увы, скорей всего эти выводы не тестовые
Но зато я нашёл даташиты на другие очень похожие контроллеры, с явным упоминанием отладки:

То, что производитель просит не подключать TST2-TST6 ну очень намекает на наличие JTAG, а прямое указание UART на TST0 и TST1 (в другом даташите) это уже джекпот. Засим было решено купить 88SE9215 как самый недорогой из доступных, и издеваться уже над ним:

Проверяем работоспособность
И вот объект изучения у нас в руках, первым делом проверяем, что он работает. Это важный момент, именно тут мы устраняем возможные будущие вопросы «Это я сломал или оно и было нерабочим??»

Для этого мне пришлось купить M2 райзер, поскольку единственный PCI Express слот моего ПК занят видеокартой:
Впервые вживую увидел разъём miniUSB 3.0. Солидно!
В общем, тест прошёл успешно, я даже установил систему на HDD, подключенный к этому контроллеру, всё подцепилось стандартными драйверами:

При запуске ПК мелькает информация о состоянии контроллера, это PCI Option ROM и по идее из этого меню можно что-то настраивать, но мне никак не удалось зайти в настройки:
Чтобы поймать этот момент, пришлось записывать видео
Анализируем компоненты
Теперь нужно определить, что с чем соединено, где процессор, а где ПЗУ, и какие компоненты за что отвечают. В нашем случае анализ крайне простой, особенно учитывая наличие даташитов:
Да, простые компоненты вроде транзисторов и конденсаторов нас не интересуют Ну а соединения компонентов за нас нарисовал производитель Исследователям на заметку
Что-то первое попавшееся из гугла для примера
Точное назначение и тип компонентов узнаём по маркировке и даташитам. В нашем случае список компонентов довольно небольшой:
Маркировка
Назначение
Параметры
SATA III x4 / PCI-E 2.0 x1
Получаем прошивку
Вот мы убедились, что устройство работает, проанализировали, из каких компонентов оно состоит, теперь следует его «забэкапить», по максимуму извлечь из него данные, чтобы в будущем можно было его к этому же состоянию и вернуть. Прошивка может находиться как во внешнем ПЗУ, так и в самом контроллере, это тоже следует учитывать и внимательно смотреть документацию.
Обычно прошивку можно получить тремя способами, это:
обновления от производителя
программатором из ПЗУ / контроллера
по отладочным интерфейсам из устройства
Самая простая клипса с али, стоит меньше бакса
Мы ещё не раз увидим эту коробочку с надписью PF
И в два клика ПЗУ определилось и прочиталось программатором:
Да, автор программатора очень любит писать «флешь» с мягким знаком
Часто контроллер мешает считыванию и приходится выпаивать микросхему или хотя бы подавать питание на устройство. В этом случае повезло, но на всякий случай считываем несколько раз и сравниваем содержимое, чтобы убедиться, что считалось корректно.
Анализируем прошивку
В качестве объекта для анализа я взял скачанную с сайта прошивку (чтобы начать исследование ещё до того, как купленный контроллер приедет ко мне). Первым делом нужно определить структуру образа прошивки. При беглом просмотре сразу видно, что большую часть образа занимает пустое место, а полезные данные начинаются на некоторых адресах, кратных 0x1000. И по адресу 0x2000 видим достаточно интересный набор данных:
Ну вот, за нас даже структуру прошивки расписали! Итак, согласно описанию, в образе мы имеем:
Смещение
Размер
Название
Назначение
Мне повезло, что в образе уже было описание разделов. В общем случае, столкнувшись с неизвестным образом, желательно прогнать его через binwalk, эта утилита сразу покажет известные форматы файловых систем и упакованных данных. В этом конкретном случае он нашёл только таблицы коэффициентов для CRC32:
Также полезно разбить прошивку на части и прогнать их через cpu_rec, чтобы знать, с какой программной архитектурой имеем дело. Ещё в начале статьи я предположил, что контроллер должен иметь архитектуру ARM, ну а Option ROM должен быть архитектуры x86, поскольку исполняется он на хосте. Проверим это:
И видим, что первые инструкции выполняют прыжки на адреса 0xFFFF00**, а это значит, что либо контроллер первым делом при старте прыгает в Mask ROM по адресу 0xFFFF0000 (что сомнительно), либо код Loader сам грузится в этот адрес. Перезагружаем код в дизассемблер по 0xFFFF0000 и действительно, всё корректно парсится:
Функций здесь очень немного (целых четыре), и выяснить что делает код не представляет труда:
По адресу 0xF8064000 код обращается к содержимому ПЗУ
В ПЗУ происходит поиск сигнатуры «MAGIIMGF»
Блок данных с этой сигнатурой парсится и раскидывается по ОЗУ
Происходит запуск основной системы прыжком по адресу 0
И да, именно с сигнатуры «MAGIIMGF» начинается Firmware, который мы вырезали ранее! Немного проанализировав загрузчик, получаем вот такой формат блока прошивки:
И теперь мы можем распарсить Firmware и правильно прогрузить его в дизассемблер! Ожидаемо всё идеально прогружается и можно начать анализ основной системы:
часто вызываемые стандартные функции (malloc, memset, memcpy)
текстовая отладочная информация из прошивки
различные уникальные константы
Очень полезно найти функцию Assert, которая выводит в отладочную консоль наименование файла исходников и номер строки с возникшей ошибкой. Например, здесь название файла намекает, что эта функция занимается выделением памяти:
А здесь явно происходит инициализация последовательного порта:
Кстати, немного проанализировав задачи инициализации системы, можно наткнуться на функцию, которая принимает указатель на другую функцию и некоторое имя. Очень похоже на запуск новой задачи! Так и назовём:
В процессе изучения кода задач натыкаемся на интересную функцию, которой часто передаются красивые десятичные значения (100, 1000). И это очень похоже на функцию задержки исполнения, sleep:
И вот у нас уже есть какая-никакая, но документация, с помощью которой мы находим то, что искали изначально, а именно функцию отображения (маппинга) адресного пространства ПК в адреса самого контроллера:
Этой функцией контроллер взаимодействует с ПК, к которому он подключен. Достаточно задать нужный адрес в аппаратных регистрах транслятора, и чтение/запись в пределах заданного «окна» по адресу 0x40000000 автоматически приведут к чтению/записи физической памяти ПК!
Ищем отладочные интерфейсы
Надоело смотреть на скриншоты ассемблерного кода? Возвращаемся к железякам! У нас есть набор тестовых контактов, но мы не знаем, где на них какие отладочные интерфейсы (и есть ли они там вообще). Сначала нужно что? Правильно, подпаяться к ним и вывести на гребёнку:
Импровизированное рабочее место инженера
Производитель совсем не заботится о глазах реверс-инженеров, нет бы хоть пятаки сделать!
Раскрыт главный секрет статьи! PF означает Pin Finder
Ииии ничего не нашлось:
Ну хоть узнали, какие выводы In, а какие Out.
Ожидаемо, подумал я, и вспомнил про пин «TESTMODE» из даташита. Вероятно, его нужно задействовать и тогда. Что-ж, паяем ещё проводков, ставим подтяжку на TESTMODE:

Иии снова ничего не нашлось, правда, картина немного иная, почему-то всё стало Input:
Теперь почему-то все выводы стали Input
Да что ж такое, ну ладно JTAG, хотя бы UART найду, подумал я. Подключаем логический анализатор.
А это уже другая коробочка, хоть и выглядит похоже
И не видим признаков UART ни на одном выводе.
А с поднятым TESTMODE, тест выводы и вовсе колбасит по-черному, и это точно не UART:
Ну, думаю, он просто выключен в прошивке. Нужно его включить! Вношу небольшие изменения и сталкиваюсь с тем, что через клипсу прошивка не хочет записываться. Контроллер питается от программатора и мешает записи. Да что за день-то такой?! Психанул, сделал ПЗУ съёмной:
Когда ничего не получается, уже не до красоты пайки
Для этого я подключил логический анализатор прямо к SPI микросхеме:

И проанализировал чтение флешки по SPI:
Здесь уже использую более скоростной анализатор DSLogic
И да, читался только неведомый Autoload (причём трижды) и BIOS! Загрузчик и прошивка и не думали грузиться! Я наконец понял, что мой контроллер имеет только функциональность SATA, а прошивка нужна для RAID, который у меня не поддерживается..
В отчаянии, используя SPI логи, я разреверсил формат Autoload, он оказался очень простой:
Я собрал Autoload, в котором во все возможные адреса стека записывался адрес ПЗУ (0xF8064000), запихнул на флешку и. Эта зараза прожевала все 128 КБ и не подавилась, дважды!! (первый раз подавилась, похоже, по таймауту)
Как в системе Windows 10 включить режим AHCI – 3 способа и его отличие от IDE
При подключении SSD необходимо знать, как включить новый режим AHCI на ПК, правда, в Windows 10 эта опция должна быть активирована по умолчанию. Только старые компьютеры с устаревшим ПО поддерживают IDE. Абсолютно все новые ПК работают с усовершенствованным AHCI. Проверить режим SATA можно в Диспетчере устройств. Изменять эту опцию рекомендуется до установки ОС.
Что это за режим?
Известно, что все диски подключаются к материнской плате через SATA. Этот интерфейс может работать в одном из двух режимов: IDE и AHCI. Изменить состояние SATA удастся через BIOS, Командную строчку или реестр. IDE считается предшественником AHCI. Старое состояние SATA совместимо с устаревшим оборудованием и ПО.

Современный AHCI использует новые технологии NCQ, DIPM и может подключать или отключать диски от материнской платы без предварительного выключения ПК, то есть выполнять «горячую» замену. В случае активации усовершенствованного режима увеличивается скорость работы, ускоряется доступ к файлам, хранящимся на конкретном запоминающем устройстве, появляется возможность использовать HAGS.
Все новые материнские платы давно перешли на AHCI. В Win 10 эта опция активирована по умолчанию. Если при подключении SSD компьютер стал работать медленнее, нужно проверить состояние SATA. Возможно, на ПК включен IDE. В этом случае рекомендуется активировать AHCI в Win 10. Этот режим увеличит производительность ОС и скорость работы ПК, уменьшит энергопотребление.

Как проверить – включен или нет?
Как узнать состояние SATA:
- вызвать «Диспетчер устройств»;

- в списке устройств найти строчку «Контроллеры IDE ATA / ATAPI»;
- развернуть ветку;

- посмотреть, что написано около строчки «Стандартный контроллер»;
- если активен AHCI, будет написано «Контроллер SATA AHCI»;
- если активен IDE, будет написано «Контроллер IDE».

Как включить AHCI в Windows 10?
Активировать нужный режим можно из Рабочего стола с помощью встроенных инструментов или, не входя в систему, то есть через BIOS (UEFI). Изменить настройки удастся только пользователям, имеющим права Администратора. Для того чтобы успешно перевести режим, нужно изменить параметры в ОС и заодно в BIOS (UEFI). Если поменять настройки только в каком-то одном месте, Win 10 может не запуститься.

Настройте реестр
Перед тем, как редактировать Редактор, рекомендуется создать точку восстановления. Из-за измененных параметров Win 10 может и не запуститься, и без переустановки Windows в этом случае не обойтись.
Как изменить состояние SATA через реестр:
- вызвать инструмент «Выполнить»;
- напечатать: «regedit»;

- на мониторе появится виндовский реестр;
- пройтись по маршруту: «HKLM \ SYSTEM \ CurrentControlSet \ Services \ iaStorV»;

- в самой последней папке отыскать «Start»;
- вызвать для «Start» окошко «Изменение параметра»;
- в строчке «Значение» написать ноль (0);

- в том же разделе реестра («Services») найти папку под названием «iaStorAV»;

- развернуть «iaStorAV»;
- выбрать «StartOverride»;
- в «StartOverride» найти параметр под названием «0»;

- изменить значение параметра «0» на 0 (ноль);
- в том же разделе реестра («Services») найти папку под названием «storahci»;
- в «storahci» найти «Start»;
- изменить значение «Start» на 0 (ноль);

- развернуть папку «storahci»;
- отыскать «StartOverride»;
- в «StartOverride» найти параметр под названием «0»;
- изменить значение параметра на 0 (ноль);
- перезапустить ПК.

Измените режим в BIOS
Как быстро активировать AHCI через БИОС:
- в момент включения ПК перейти в BIOS;
- в главном меню найти слово «SATA»;
- около него может стоять слово «configuration» или «mode»;
- если к материнской плате подключен SSD, нужно вместо IDE активировать AHCI;
- сохранить изменения;
- выйти из БИОСа.

Через Командную строку
Перед работой с Командной консолью желательно загрузить ОС в «безопасном режиме». Изменять значения реестра в данном случае не нужно.
Как сменить режим SATA через Командную консоль:
- вызвать «Выполнить» или открыть поисковик;

- ввести: «cmd»;

- в открывшемся окошке написать: «bcdedit /set
safeboot minimal»;

- дождаться уведомления, что операция успешна.

Что лучше IDE или AHCI
Накопитель HDD может спокойно работать в обоих режимах. Однако, при активации AHCI используются все возможности жесткого накопителя, максимально увеличивается скорость его работы. SSD, наоборот, нормально функционирует лишь в AHCI. Усовершенствованный режим используется во всех ноутбуках, поскольку уменьшает энергопотребление.
Если HDD нормально работает в IDE, желательно ничего не менять. Ведь изменение состояния SATA может привести к тому, что установленная на ПК система не запустится. Придется переустанавливать Win 10. Лучше всего перевести режим до установки на ПК новой ОС. Жесткий накопитель, работающий в IDE, имеет более ограниченный функционал и не отличается высокой скоростью и производительностью. Зато он совместим с устаревшим ПО и оборудованием.
Основы компьютерной грамотности: в чем разница между IDE и AHCI?
Компьютер – это сложная техника, в которой все элементы взаимосвязаны. В любом подобном устройстве есть жесткий диск (разг.винчестер). Это устройство, предназначенное для хранения разных данных, в том числе и цифровой информации.
Важно, чтобы данный элемент был правильно подключен. К ПК жесткий диск подключается по интерфейсу SATA. Его применение позволяет не только быстро передавать данные, но и сохранять надежность всей информации.
Что такое SATA? По сути, это физическое устройство: кабель и два разъема. В программировании такое понятие даже не используется. В данном случае говорят про AHCI. Но винчестер часто эмулирует IDE.
IDE – это старый интерфейс, которая также используется для обмена информацией. Для того, выбрать ahci и ide, вам нужно зайти в BIOS и сделать нужную настройку.
Использовать для работы можно любой режим. Но важно знать, чем отличается режим ide от ahci, какие преимущества имеет каждый интерфейс.
Что такое режим IDE?
Режим IDE – это старый вариант интерфейса жесткого диска. Его рекомендуется выбирать в том случае, если у вас старое программное обеспечение. IDE позволяет эмулировать подключение РАТА.
В современных компьютерах он уже не используется. Специалисты предлагают перейти на такой интерфейс в том случае, если на ПК установлен Windows XP или еще более ранняя операционная система.
Использовать в каком-либо другом случае IDE не требуется. Данный режим не показывает сверхвысокой передачи данных или других удобных технологий работы. При подключении HDD по шлейфу SATA IDE выполняет лишь одну функцию – совместить старое оборудование с более новым.
Для того, чтобы выбрать режим IDE для передачи данных на жесткий диск, вам нужно зайти BIOS. Обратите внимание, что изначально работу с ПК стоит начинать именно на IDE, если у вас несовместимость ПК с жестким диском.
Если изначально операционная система использовала AHCI, то потом режим был переключен, то компьютер работать не будет. Он либо вообще перестанет включаться, либо будет выдавать ошибку. В таком случае, скорее всего, придется проводить переустановку Windows.
Если идет выбор ahci vs ide, нужно проанализировать основные плюсы и минусы каждого варианта. IDE отличается такими особенностями:
- Вы можете провести установку нового оборудования для старой операционной системы. Например, Windows XP.
- Скорость передачи данных между жестким диском и компьютером будет достаточно низкой. Обычно она составляет 110-130 мегабайт в секунду.
- Для передачи данных с помощью IDE не используются современные технологии.
По факту, добиться указанной скорости передачи данных невозможно. Это связано с подключенными другими устройствами. Установка жесткого диска происходит по той же шине, по которой происходит установка других девайсов. Они в свою очередь «воруют» возможную максимальную скорость передачи данных.
Что такое режим AHCI?
Advanced Host Controller Interface (сокр. AHCI) – это стандартный режим для работы винчестеров SATA. Главная разница ide и ahci заключается в скорости и качестве передачи данных. Сам режим создавался с целью улучшения качества соединения.
К основным преимуществами AHCI можно отнести возможность использования «горячего подключения» и поддержку Native Command Queuing (NCQ).
Что такое «горячее подключение»? Это возможность подключения жесткого диска к ПК, который только запущен или уже осуществляет работу длительное время.
На первый взгляд данная функция не особо важна, но она позволяет:
- Удобно использовать два винчестера одновременно. Сегодня дисководы применяются крайне редко. И для того, чтобы улучшить работу ПК, в SATA-дисководы устанавливают еще один винчестер. В таком случае использовать «горячее подключение» будет удобно.
- Если нужно быстро поменять базу данных. Вам не нужно будет выключать ПК. Достаточно поменять массив HDD.
- Если нужно срочно подключить другой винчестер, чтобы не потерять информацию на основном.
NCQ – это технология, которая значительно улучшает производительность жесткого диска, так как данные группируются отдельно на чтение и отдельно – на запись. Особенно технология хорошо проявляет себя на магнитных жестких дисках (HDD).
Чтение и запись информации происходит с помощью своего рода дорожек. Распределение происходит максимально последовательно, чтобы быстро получить доступ к нужной информации.
Если речь идет о твердотельных накопителях (SSD), то данная технология не особо важна. Но SSD имеют достаточно высокую стоимость и сегодня применяются редко. Они могут работать только в режиме AHCI.
Итак, Advanced Host Controller Interface – это режим работы винчестера, который появился не так давно. И он используется для работы с современными операционными системами. Для Windows XP или начальных версий Ubuntu AHCI не подойдет. Есть отличия ide от ahci в технических характеристиках, преимуществах и недостатках.
К преимуществам AHCI можно отнести:
- скорость передачи данных достаточно высокая;
- есть возможность подключения жесткого диска без выключения ПК. Эта функция называется «горячее подключение»;
- поддержка технологии NCQ.
Но данный режим работы винчестера имеет некоторые минусы:
- невозможность работы со старыми ОС;
- для новых ПК использовать можно только AHCI.
Разница между AHCI и IDE
AHCI и IDE – это два режима, позволяющие работать винчестеру на ПК. Но они отличаются технологией передачи данных и возможностях.
Вот чем ide отличается от ahci:
- AHCI работает намного быстрее, чем IDE. Если требуется высокая скорость передачи данных между ПК и винчестером, выбирайте первый вид.
- Интерфейс IDE нельзя подключить, если компьютер уже запущен. AHCI поддерживает «горячее подключение».
- IDE не поддерживает работу новых технологий по сравнению с более современным режимом работы.
- Возможность работы адаптеров хост-шины (SATA) при AHCI. IDE имеет возможность лишь подключение параллельного привода ATA.
- AHCI имеет несколько режимов работы, IDE – всего один.
Что быстрее?
Advanced Host Controller Interface – это более поздний интерфейс жесткого диска, отличающийся не только возможностью практичного записывания информации на дорожки, но и быстродействием.
Режим AHCI имеет теоретическую скорость 300 Мбит в секунду. В то время как устаревший IDE режим, вышедший только в 2004 году – всего 133 Мбит в секунду.
Что лучше выбрать?
Ahci vs ide – вечное противостояние режимов работы винчестера. Для того, чтобы определить, какой именно тип работы подойдет вашему жесткому диску, нужно учесть:
- Особенности операционной системы. Если у вас стоит на ПК операционная система Windows XP или начальные версии Ubuntu, то интерфейс AHCI вы просто не сможете использовать. Он подойдет только для новых ПК и ОС.
- Скорость передачи данных лучше у AHCI, поэтому для более быстрой работы подойдет именно этот режим.
- Чтение и запись в режиме AHCI происходит на последовательные дорожки, позволяющие быстро найти нужную информацию.
IDE нужно выбирать только в случае, если требуется совместить старую ОС с новым винчестером.
Способы переключения режимов
Для того, чтобы переключить режимы работы винчестера, нужно зайти в BIOS. Далее выполняем следующие действия:
- переходим во вкладку Выключаем Secure Boot. Напротив режима ставим Disabled;
- находим вкладку Advanced и наживаем на нее. Заходим в раздел System Configuration;
- находим и открываем вкладку Sata Controller Mode. Меняем AHCI на
Практически во всех моделях именно так переключаются режимы. Не стоит искать интерфейс IDE.