Архитектура аппаратных средств · учебный модуль 3/3

Энергонезависимая память. Иерархия памяти

Разберём ROM, NOR/NAND Flash, SSD и HDD, ресурс перезаписи, уровни иерархии и работу кэша. Сначала изучите всю теорию, разберите интерактивные модели, затем пройдите тест в конце страницы. Ответы сохраняются в этом браузере автоматически.

Теория → тест → PDF16 проверяемых вопросов3 развёрнутых ответаРаботает без интернета
Изучить теориюПерейти к тестуИсточники
01

Почему информация сохраняется после выключения

Представьте, что вы написали реферат, сохранили файл и выключили компьютер. Содержимое обычного ОЗУ исчезнет, но реферат останется на накопителе. Причина в энергонезависимости (non-volatility): некоторые технологии сохраняют записанное состояние без постоянного питания.

Энергозависимая память обычно удерживает данные только при наличии питания: регистры, SRAM-кэш, DRAM. Энергонезависимая память сохраняет данные после обесточивания: различные виды ROM и Flash, магнитная запись в HDD, оптические носители. Однако «энергонезависимая» не значит «вечная»: физический износ, температура, время и неисправности могут привести к потере данных.

ХранилищеБез питанияОбычная роль
Регистры и SRAM-кэшНе сохраняютОчень быстрые операции ЦП
DRAMНе сохраняетОперативная память
NOR FlashСохраняетПрошивки, встроенные системы
NAND FlashСохраняетSSD, флешки, карты памяти
HDDСохраняетБольшие объёмы данных
Пользователь нажимает «Сохранить»Приложение формирует данные
→
ОС / файловая системаЗапрос на запись, буферы и кэш
→
Контроллер накопителяУправление физической записью
→
Flash / магнитная записьДанные сохраняются
Упрощение: успешное «Сохранить» на уровне приложения не всегда гарантирует немедленную физическую запись всех данных. Для долговечности важны корректное завершение, синхронизация данных и резервные копии.
02

ROM, PROM, EPROM, EEPROM и Flash

ROM (Read-Only Memory) буквально означает память только для чтения. В классическом варианте её содержимое задают при изготовлении или записывают ограниченным способом. В быту слово ROM иногда употребляют шире — как название постоянной памяти для прошивок, хотя современная прошивка обычно хранится в перезаписываемой Flash.

ТехнологияКак изменяют содержимоеГде встречается
Mask ROMЗадаётся при производстве микросхемыНекоторые специализированные устройства
PROMПрограммируется однократноОтдельные специализированные решения
EPROMМожно стереть ультрафиолетовым светом (у соответствующих исполнений) и записать сноваИсторическая электроника, лабораторные приборы
EEPROMЭлектрически стираемая перезаписываемая память; обычно гранулярность меньше, чем у NAND FlashХранение конфигураций, небольших параметров
Flash (разновидность EEPROM)Электрическая запись, стирание блоками/секторами (в зависимости от технологии)Прошивки, SSD, USB-накопители

Где находится BIOS/UEFI?

UEFI-прошивка материнской платы обычно хранится в энергонезависимой микросхеме SPI NOR Flash. При включении процессор получает управление от прошивки, она инициализирует оборудование и запускает процесс загрузки ОС. Само слово BIOS часто используют как бытовое название интерфейса настройки, хотя в современных ПК речь преимущественно об UEFI.

При обновлении UEFI записывается Flash-память с прошивкой. Если процесс прервётся и не предусмотрен механизм восстановления, компьютер может не загрузиться. Настройки даты/времени и некоторые параметры RTC связаны с отдельным питанием и схемами, а не просто с NOR Flash.
03

NOR и NAND Flash: разные задачи

Обе технологии относятся к Flash, но устроены для разных моделей доступа. NOR Flash обычно удобна для произвольного чтения небольших участков и исполнения кода непосредственно из памяти там, где это поддерживается (execute in place, XIP). NAND Flash обеспечивает высокую плотность хранения и хорошую стоимость за бит, поэтому используется в SSD и флешках.

ПараметрNOR FlashNAND Flash
Типичная задачаПрошивки и загрузочный кодБольшие объёмы файлов
ЧтениеУдобно для небольших адресуемых областейОптимизировано для чтения страниц/массивов
Ёмкость и стоимостьОбычно меньшая плотность и выше цена за битВысокая плотность и ниже цена за бит
УправлениеЧасто проще для небольших встроенных устройствТребует управления плохими блоками, ECC и износом

Как NAND физически запоминает данные

В ячейках Flash электрический заряд удерживается в изолированной структуре (например, плавающем затворе или ловушке заряда). Заряд меняет электрические свойства транзистора, по которым контроллер определяет записанное значение. Данные сохраняются без постоянного питания, но заряд со временем может деградировать, поэтому надёжность и срок хранения ограничены условиями эксплуатации.

04

Страница и блок NAND: почему запись устроена необычно

В обычной DRAM можно переписать отдельную ячейку. Во Flash запись подчиняется ограничениям: NAND обычно программируется страницами, а стирается более крупными блоками, состоящими из нескольких страниц. Прежде чем использовать заново уже запрограммированные участки, контроллер должен организовать их стирание; обычно он записывает обновлённые данные в другое свободное место и меняет карту соответствий.

Один условный блок NAND из четырёх страниц
Страница 0
Страница 1
Страница 2
Страница 3

Реальные NAND-блоки обычно намного больше и содержат гораздо больше страниц. Стирание происходит для всего блока, а не одной выбранной страницы.

🧪 Интерактив: записать или стереть NAND

Нажимайте «Записать страницу», пока места не останется. Затем нажмите «Стереть блок». Это упрощённая модель распределения свободных страниц без демонстрации уровней напряжения и внутреннего контроллера.

Пример: если у условного блока уже записаны четыре страницы, «изменить страницу 2» обычно нельзя просто как байт в DRAM. Контроллер SSD может записать новую версию страницы в другом месте, пометить старую как недействительную, а позже выполнить сборку мусора (garbage collection) и стереть подготовленный блок.

05

Как устроен SSD и почему он изнашивается

SSD (Solid-State Drive) обычно содержит NAND Flash, контроллер, прошивку и иногда DRAM-буфер. Контроллер распределяет записи, исправляет обнаруженные ошибки и переводит адреса блоков, которые видит ОС, в реальные физические места хранения. Эту работу называют FTL (Flash Translation Layer).

От ОС к ячейкам Flash
ОС / файловая системаЛогический адрес блока LBA
→
Контроллер SSD / FTLТаблица отображения, ECC, сборка мусора
→
NAND FlashФизический блок и страница
У SSD с DRAM и без неё организация кэшей различается, но базовая функция контроллера сохраняется.

Что продлевает ресурс SSD

  • Wear leveling (выравнивание износа) распределяет циклы записи и стирания по физическим блокам, чтобы не истощать один участок слишком быстро.
  • ECC помогает обнаруживать и исправлять типовые ошибки чтения хранимых данных.
  • Over-provisioning оставляет дополнительные физические ресурсы для обслуживания и замены блоков.
  • TRIM / deallocate сообщает накопителю, какие логические блоки больше не нужны; это помогает обслуживать свободное пространство.

SLC, MLC, TLC, QLC

Обозначения показывают сколько бит хранится в одной ячейке. Чем больше уровней заряда нужно различать, тем выше плотность хранения, но тем сложнее программирование и, при прочих равных, ниже ресурс перезаписи и запас по надёжности. Итоговые характеристики конкретного SSD зависят также от контроллера, технологии чипов и алгоритмов.

SLC
1 бит
MLC
2 бита
TLC
3 бита
QLC
4 бита

Длина столбца показывает число бит на ячейку, не скорость или абсолютный срок службы. Обозначение MLC иногда используют в маркетинговых материалах шире, но в этой таблице оно означает 2 бита на ячейку.

TBW (Terabytes Written) — рейтинг записи в терабайтах, указанный изготовителем для конкретной модели; это не секундомер отказа, после которого SSD обязательно ломается. Важно делать резервные копии независимо от TBW.

06

SSD, HDD, интерфейсы и сохранность данных

HDD записывает данные на вращающиеся магнитные пластины; головке приходится перемещаться к нужной области, поэтому случайные обращения ограничены механикой. SSD не имеет движущихся механических частей и особенно выигрывает по задержке случайного доступа, хотя его производительность зависит от интерфейса и контроллера.

КритерийSSDHDD
Физический принципОбычно NAND FlashМагнитная запись
Случайный доступОбычно гораздо быстрееСдерживается позиционированием головки и вращением
МеханикаНет подвижных частейЕсть вращающиеся пластины и головки
Цена за 1 ТБОбычно вышеЧасто выгоднее для больших объёмов
Типичные сценарииОС, программы, активные проектыБольшие архивы и массивы данных

SATA и NVMe — не типы ячеек памяти

SATA — интерфейс подключения накопителей, а NVMe — протокол, оптимизированный для работы с энергонезависимыми устройствами через PCI Express и другие поддерживаемые транспорты. Поэтому «NVMe SSD» обычно обеспечивает более высокую производительность и параллелизм операций, чем обычный SATA SSD, но обе модели могут использовать NAND Flash.

Накопитель ≠ резервная копия. Флеш-память и HDD могут выйти из строя; при сбое системы или ошибочном удалении важна отдельная резервная копия. Несколько копий, хотя бы одна на другом устройстве, существенно снижают риск полной потери данных.
07

Иерархия памяти: почему нет одного идеального хранилища

Нельзя получить одновременно минимальную задержку, огромную ёмкость и минимальную цену за бит одной технологией. Поэтому компьютеры используют иерархию памяти. Ближе к процессору расположены небольшие быстрые уровни; дальше — более ёмкие и обычно более медленные.

Пирамида иерархии
РегистрыБыстрее всего, очень мало
Кэш L1Очень быстрый, небольшой
Кэш L2 / L3Объём больше
ОЗУ (DRAM)Гигабайты, выше задержка
SSD / NANDСотни ГБ и терабайты
HDD / архивное хранениеБольшие объёмы, более высокая задержка
Сверху вниз в среднем увеличиваются ёмкость и задержка доступа, снижается стоимость одного бита. Расположение SSD и HDD характеризует типичную систему, а не универсальное правило для любой нагрузки.

Почему кэш работает: локальность

Представьте цикл, который 1000 раз обращается к соседним элементам массива. Нужный блок данных при первом обращении может попасть в кэш, а последующие обращения обслуживаются быстро. Пространственная локальность означает использование соседних адресов, временная — повторное использование прежних данных. Кэш-линия сохраняет некоторую последовательность соседних байтов.

🧪 Интерактив: кэш на три элемента

Выберите адрес A, B, C или D и нажмите «Обратиться». Кэш в модели содержит три недавно использованных ключа. При переполнении вытесняется наименее недавно использованный (LRU). Это учебная абстракция, а не реальный набор правил CPU.

Сейчас в кэше: пусто
08

Сравнение задержек: почему важны наносекунды и миллисекунды

Ниже — типичные порядки величин, а не паспортные нормативы. Конкретное время зависит от процессора, устройства, объёма данных, характера запроса и нагрузки.

УровеньУсловный ориентир задержкиЧто влияет
Регистры CPUВычислительные такты процессораЗависимости инструкций и архитектура
Кэш L1Около 1 нсЧастота CPU, тип обращения
Кэш L2 / L3Единицы – десятки нсУровень и размер кэша
DRAMДесятки – сотни нсКонтроллер, тайминги, нагрузка
NVMe SSDДесятки – сотни мкс для случайного запросаОчередь запросов, режим чтения
HDDМиллисекундыВращение и движение головок
Для сравнения единиц: 1 мкс (микросекунда) = 1 000 нс 1 мс (миллисекунда) = 1 000 мкс = 1 000 000 нс Если DRAM отвечает за 100 нс, а накопитель — за 100 мкс: 100 мкс / 100 нс = 1000 раз дольше.

Именно поэтому увеличение объёма ОЗУ иногда ускоряет компьютер даже без увеличения частоты RAM: меньше активных страниц требуется переносить с SSD. Но если рабочий набор программы уже помещается в памяти, добавление дополнительных гигабайт может почти не повлиять на скорость.

09

Как уровни памяти работают вместе

Рассмотрим запуск графического редактора.

  1. SSD: содержит установленную программу и проекты, даже когда питания нет.
  2. RAM: ОС загружает или отображает необходимый код и ресурсы, выделяет рабочую память для изображения.
  3. Кэш: CPU многократно обрабатывает близкие участки изображения, удерживая часто нужные данные около ядра.
  4. Регистры: инструкция CPU использует конкретные значения в операндах.
  5. Сохранение: изменения документа записываются через файловую систему на энергонезависимый накопитель.
Три разных вопроса — три разных ответа

Где хранить без питания?

SSD, HDD, NOR Flash и другие энергонезависимые носители.

Где держать рабочие данные?

DRAM: большой объём активной памяти с относительно малой задержкой.

Откуда взять прямо сейчас?

Регистры и кэши процессора обеспечивают самый быстрый доступ к небольшим наборам данных.

Почему не всё в кэше?

Кэш дорого обходится по площади и объёму, поэтому нужен компромисс из нескольких уровней.

Главный вывод: иерархия памяти — это система совместно работающих технологий, а не «рейтинг хороших и плохих накопителей». Чем ближе данные к процессору, тем быстрее к ним обычно обращаются, но тем меньше места доступно.

Часть II · проверка знаний

Тест по изученному материалу

Теоретическая часть завершена. Выберите один ответ в каждом вопросе, затем нажмите «Проверить тест». Результат покажет число правильных ответов и объяснит ошибки. В конце ответьте на развёрнутые вопросы — их проверяет преподаватель.

0 ответовПроверка без штрафа за повторную попытку
✓

Часть A. Выберите правильный ответ

✎

Часть Б. Объясните своими словами

Эти вопросы нужны, чтобы проверить понимание, а не угадывание. Автоматическая оценка их не учитывает.

Источники для дополнительного изучения

Материал адаптирован для обучения. Схемы и модели — упрощённые учебные примеры; значения производительности зависят от конкретного устройства.

  1. OpenStax · иерархия памяти
  2. Micron · NAND Flash и wear leveling
  3. Micron · block erase и SSD
  4. IBM · Storage hierarchy

Перед сдачей

✓ Указаны ФИО, группа и дата.
✓ Отмечены ответы на вопросы с вариантами и нажата кнопка проверки.
✓ Написаны объяснения в открытых вопросах.

Нажмите «Отправить работу — сохранить PDF». Откроется окно печати: в качестве принтера выберите «Сохранить как PDF». В отчёте будут ФИО, выбранные варианты, балл и ваши развёрнутые ответы. Отправка на сервер не выполняется.