Методическое руководство преподавателя: Запоминающие устройства ЭВМ
Данное руководство регламентирует проведение теоретического и практико-ориентированного занятия по архитектуре запоминающих устройств вычислительных машин. Урок охватывает полную иерархию памяти современных ЭВМ: от сверхбыстрых регистров процессорного ядра и многоуровневого кэша SRAM до динамической оперативной памяти DRAM (DDR4/DDR5), твердотельных накопителей NAND Flash и постоянных запоминающих устройств (ROM/NVRAM).
Ключевая дидактическая цель: Сформировать у студентов системное физическое и архитектурное понимание компромисса «скорость — емкость — стоимость», механизмов преодоления проблемы разрыва быстродействия (Memory Wall), схемотехники элементарных ячеек (6T vs 1T1C), физики и математики задержек DRAM, а также внутренней архитектуры контроллеров SSD и алгоритмов долговечности флеш-памяти.
2. Теоретический фундамент и инженерные сущности
2.1. Иерархия памяти и фундаментальный компромисс
Центральный процессор оперирует на тактовых частотах порядка 4.0–6.0 ГГц, выполняя инструкции за доли наносекунды (0.2–0.5 нс на такт конвейера). Физически невозможно создать единую память объемом сотни гигабайт, способную отвечать с такой скоростью: физические размеры кристалла, емкость проводников и конечность скорости света в кремнии ($~15\text{ см/нс}$) диктуют неизбежную задержку распространения сигнала.
Решением является иерархия памяти, опирающаяся на принцип локальности ссылок (Principle of Locality):
- Временная локальность (Temporal Locality): если ячейка памяти была запрошена, с высокой вероятностью она будет запрошена снова в ближайшее время (циклы, счетчики, стек).
- Пространственная локальность (Spatial Locality): если была запрошена ячейка памяти, с высокой вероятностью вскоре будут запрошены соседние ячейки (последовательное выполнение кода, обход массивов).
+--------------------------------------------------------------------------+
| ИЕРАРХИЯ ПАМЯТИ ЭВМ |
+--------------------------------------------------------------------------+
| Уровень | Технология | Типичная емкость | Задержка доступа (Lat) |
+-----------------+-------------+------------------+------------------------+
| Регистры ЦП | D-триггеры | 1 - 4 КБ | 0.2 - 0.5 нс (1 такт) |
| Кэш L1 (Core) | 6T SRAM | 32 - 96 КБ /ядро | 0.8 - 1.2 нс (4-5 т.) |
| Кэш L2 (Core) | 6T/8T SRAM | 1 - 2 МБ /ядро | 3 - 5 нс (12-14 тактов)|
| Кэш L3 (LLC) | 6T SRAM/eDRAM| 16 - 96+ МБ | 10 - 15 нс (35-50 т.) |
| ОЗУ (DRAM) | 1T1C DRAM | 16 - 128+ ГБ | 50 - 80 нс |
| NVMe SSD (PCIe) | NAND Flash | 512 ГБ - 8 ТБ | 10 - 100 мкс |
| SATA SSD | NAND Flash | 256 ГБ - 4 ТБ | 50 - 150 мкс |
| HDD (магнитный) | Магнитные бл| 2 - 24 ТБ | 4 - 15 мс (поиск дорож)|
| Холодный архив | LTO-ленты | 18 - 45+ ТБ/картр| десятки секунд (монтаж)|
+--------------------------------------------------------------------------+
2.2. Схемотехника: SRAM (Static RAM) vs DRAM (Dynamic RAM)
Статическая память (SRAM):
- Элементарная ячейка состоит из 6 транзисторов (6T): два перекрестно связанных КМОП-инвертора (4 транзистора M1–M4), образующих бистабильный триггер, и 2 транзистора доступа (M5, M6), управляемых линией слова (Word Line).
- Преимущества: максимальное быстродействие (переключение логических уровней за доли наносекунды), отсутствие необходимости в регенерации данных при наличии питающего напряжения.
- Недостатки: низкая плотность компоновки (ячейка занимает в 4–6 раз больше кремниевой площади, чем DRAM), высокое статическое энергопотребление (ток утечки) и экстремальная стоимость за мегабайт. Применяется исключительно внутри кристалла процессора в качестве кэш-памяти L1, L2, L3.
Динамическая память (DRAM):
- Элементарная ячейка состоит всего из 1 транзистора и 1 микроконденсатора (1T1C). Конденсатор емкостью порядка $25\text{–}30\text{ фФ}$ (фемтофарад) хранит электрический заряд (наличие заряда — «1», отсутствие — «0»). Транзистор служит ключом для подключения конденсатора к битовой линии (Bitline).
- Преимущества: высочайшая плотность размещения ячеек на единицу площади кремния, низкая себестоимость за гигабайт. Позволяет создавать модули емкостью десятки и сотни гигабайт.
- Физический вызов: диэлектрик конденсатора несовершенен, и заряд утекает за доли миллисекунды. Память требует принудительной периодической регенерации заряда (Refresh).
2.3. Внутренняя архитектура DRAM и тайминги
Память DRAM организована матрично: кристалл состоит из банков (Banks), объединенных в группы банков (Bank Groups). Строка матрицы (Row/Page) считывается в массив усилителей-считывателей (Sense Amplifiers) через команду активации ACTIVATE, после чего отдельные столбцы считываются или записываются командами READ/WRITE. По окончании работы строка закрывается командой предзаряда PRECHARGE.
Первичные тайминги (JEDEC standard):
- CL (CAS Latency): количество тактов шины памяти от подачи команды
READ до появления первого слова данных на шине.
- tRCD (RAS to CAS Delay): задержка между подачей команды активации строки (
ACT) и команды чтения столбца (READ). Время на открытие строки.
- tRP (Row Precharge Time): время, необходимое для закрытия текущей строки и возврата битовых линий к исходному напряжению предзаряда $V_{DD}/2$.
- tRAS (Row Active Time): минимальное время, в течение которого открытая строка обязана оставаться активной для надежного восстановления заряда конденсаторов.
- tRC (Row Cycle Time): полный цикл строки: $tRC \ge tRAS + tRP$.
2.4. Математика расчета истинной задержки памяти
Многие студенты и начинающие сборщики ошибочно оценивают скорость памяти исключительно по эффективной частоте (МТ/с) либо по номиналу тайминга CL. Истинное время доступа измеряется в наносекундах ($T_{\text{ns}}$) и рассчитывается по базовой формуле:
T_ns = (CL / f_bus) = (CL * 2000) / DataRate_MTs
где:
- CL — задержка выборки столбца в тактах;
- DataRate_MTs — эффективная скорость передачи данных в мегатрансферах в секунду (МТ/с);
- f_bus — реальная тактовая частота шины памяти в МГц (равна DataRate / 2 для технологии DDR).
Сравнительный эталонный расчет истинной задержки популярных стандартов:
| Стандарт и профиль |
Эффективная скорость |
Реальная частота $f_{\text{bus}}$ |
Тайминг CL |
Истинная задержка $T_{\text{ns}}$ |
| DDR4-3200 (JEDEC / XMP) |
3200 МТ/с |
1600 МГц |
CL16 |
10.00 нс $(16 \times 2000 / 3200)$ |
| DDR4-3600 (XMP) |
3600 МТ/с |
1800 МГц |
CL18 |
10.00 нс $(18 \times 2000 / 3600)$ |
| DDR5-4800 (JEDEC base) |
4800 МТ/с |
2400 МГц |
CL40 |
16.67 нс $(40 \times 2000 / 4800)$ |
| DDR5-5200 (JEDEC) |
5200 МТ/с |
2600 МГц |
CL40 |
15.38 нс $(40 \times 2000 / 5200)$ |
| DDR5-6000 (EXPO / XMP Sweet Spot) |
6000 МТ/с |
3000 МГц |
CL30 |
10.00 нс $(30 \times 2000 / 6000)$ |
| DDR5-6400 (XMP) |
6400 МТ/с |
3200 МГц |
CL36 |
11.25 нс $(36 \times 2000 / 6400)$ |
Педагогический вывод: Комплект DDR5-6000 CL30 имеет истинную задержку $10.0\text{ нс}$, в то время как комплект с формально более высокой частотой DDR5-6400 CL36 обладает задержкой $11.25\text{ нс}$. В играх и задачах, критичных к латентности произвольного доступа (Random Access), профиль DDR5-6000 CL30 демонстрирует более высокую стабильность фреймрейта и 1% Low FPS при синхронном режиме контроллера памяти (UCLK = MCLK 1:1).
2.5. Энергонезависимая флеш-память NAND и архитектура SSD
Память NAND Flash хранит информацию в виде захваченного электрического заряда в транзисторах с плавающим затвором (Floating Gate) или нитридным слоем захвата (Charge Trap Flash, CTF). Заряд инжектируется через туннельный оксид посредством квантового туннелирования Фаулера-Нордгейма при подаче высокого потенциала (~18–20 В).
Типология ячеек по плотности записи:
- SLC (Single-Level Cell): 1 бит на ячейку (2 уровня напряжения). Ресурс: 50 000–100 000 циклов P/E (Program/Erase). Высочайшая надежность и скорость, предельная стоимость. Используется в космических системах и SLC-кэшах потребительских накопителей.
- MLC (Multi-Level Cell): 2 бита на ячейку (4 уровня напряжения). Ресурс: 3 000–10 000 циклов.
- TLC (Triple-Level Cell): 3 бита на ячейку (8 дискретных уровней напряжения). Ресурс: 1 000–3 000 циклов (в Enterprise eTLC — до 7 000–10 000 циклов). Доминирующий стандарт надежных потребительских и серверных накопителей.
- QLC (Quad-Level Cell): 4 бита на ячейку (16 микроскопических уровней напряжения). Ресурс: всего 300–1 000 циклов. Резкое падение скорости последовательной записи вне SLC-кэша (до 40–80 МБ/с). Применяется для систем «read-heavy» (холодное чтение).
- PLC (Penta-Level Cell): 5 бит на ячейку (32 уровня). Экспериментальный стандарт для архивов.
2.6. Контроллер SSD, алгоритмы долговечности и WAF
NAND-память обладает фундаментальным физическим ограничением: чтение и запись производятся страницами (Pages, обычно 4–16 КБ), а стирание возможно только целыми блоками (Blocks, 4–8 МБ). Невозможно перезаписать страницу поверх старых данных без предварительного стирания всего блока!
Для управления этим процессом контроллер SSD реализует микрокод FTL (Flash Translation Layer):
- Wear Leveling (Выравнивание износа):
- Динамический: новые операции записи направляются в наименее изношенные блоки.
- Статический: контроллер периодически находит блоки со статичными неизменяемыми данными (например, системные файлы ОС) и переносит их в сильно изношенные блоки, освобождая блоки с малым износом под активную перезапись.
- Garbage Collection (Сборка мусора, GC): фоновый процесс, при котором живые (валидные) страницы из частично заполненных блоков копируются в новый пустой блок, после чего старый блок целиком стирается.
- Команда TRIM (в SATA) / Deallocate (в NVMe): инструкция от операционной системы контроллеру SSD о том, какие логические блоки LBA были освобождены при удалении файлов. Без TRIM контроллер вынужден бесконечно переносить мертвые страницы при сборке мусора, вызывая катастрофический износ.
- Write Amplification Factor (WAF, коэффициент усиления записи):
WAF = (Объем данных, физически записанных в NAND) / (Объем данных, отправленных хостом ОС)
В идеальном сценарии WAF ≈ 1.0. При заполнении SSD свыше 90% и случайной записи без TRIM WAF может возрастать до 3.0–8.0!
- Защита от потери питания (Power Loss Protection, PLP): блок танталовых или полимерных конденсаторов на плате корпоративного SSD. В случае аварийного отключения электричества запасенной в конденсаторах энергии хватает на 20–50 мс для полного сброса содержимого энергозависимого DRAM-буфера контроллера в энергонезависимые ячейки NAND.
2.7. Энергонезависимая постоянная память (ROM / NVRAM)
Помимо ОЗУ и массовых накопителей, архитектура ЭВМ опирается на постоянные и квазипостоянные запоминающие устройства:
- Mask ROM / PROM: фабрично прошитые кристаллы с неизменяемой микропрограммой (устарели в ПК общего назначения).
- SPI NOR Flash: энергонезависимая микросхема последовательного интерфейса SPI (Serial Peripheral Interface), хранящая код инициализации UEFI BIOS, Intel ME / AMD PSP firmware. Отличается возможностью побайтового прямого чтения (XIP — eXecute In Place), но низкой скоростью записи.
- CMOS NVRAM: низкопотребляющая память конфигурации BIOS (настройки даты, времени, параметров разгона), исторически питаемая от батарейки CR2032. В современных платформах настройки сохраняются напрямую в защищенную область NVRAM SPI Flash, а батарейка питает только генератор часов реального времени RTC.
3. Типовые ошибки студентов и педагогические приемы
Типовые ошибки студентов:
- Отождествление пропускной способности (Bandwidth) с задержкой (Latency): студенты часто полагают, что модуль DDR5-6400 в любых сценариях работает быстрее DDR5-6000, не обращая внимания на первичный тайминг CL и режим работы контроллера памяти (Gear 1 vs Gear 2).
- Путаница между записью страницы и стиранием блока в SSD: предположение, что контроллер может просто перезаписать один сектор 512 байт или страницу 4 КБ поверх старых данных, как на магнитном диске HDD.
- Непонимание механизма TRIM: вера в то, что команда TRIM физически очищает ячейки в момент удаления файла в Корзину. Необходимо подчеркнуть: TRIM лишь помечает LBA как невалидные в таблице трансляции FTL, а физическое стирание откладывается до этапа сборки мусора (Garbage Collection).
- Игнорирование разницы между Consumer SSD и Enterprise SSD с PLP: установка дешевых потребительских NVMe SSD на QLC в серверы баз данных (PostgreSQL/MySQL), приводящая к исчерпанию ресурса TBW за 3–6 месяцев и риску повреждения WAL-журналов транзакций при сбое питания.
- Непонимание физики черепичной записи SMR в HDD: покупка жестких дисков SMR в NAS/RAID массивы, что приводит к многочасовому зависанию массива при восстановлении (Rebuild) из-за необходимости перезаписи перекрывающихся дорожек блоками по 256 МБ.
Педагогические приемы:
1. Прием «Предсказание до объяснения»:
Перед демонстрацией формулы расчета латентности преподаватель предлагает студентам ответить: «Какой модуль среагирует быстрее на запрос одного 64-байтного слова: DDR4-3200 с таймингом CL16 или DDR5-6000 с таймингом CL30?». Большинство интуитивно выбирает модуль с меньшим таймингом (16 меньше 30) либо модуль с большей частотой (6000 больше 3200). После фиксации прогнозов выводится математический расчет, демонстрирующий идеальное совпадение: ровно 10.0 наносекунд в обоих случаях! Этот дидактический шок надежно разрушает наивную модель мышления.
2. Работа с аналогиями и их границы:
Аналогия: Иерархия памяти как рабочее место исследователя:
- Регистры ЦП: мысль в голове или карандаш в руке (мгновенно).
- Кэш L1–L3: лист бумаги прямо перед глазами на столе (секунды).
- ОЗУ (DRAM): книжная полка в той же комнате, нужно встать и подойти (минуты).
- NVMe SSD: шкаф с архивом на первом этаже здания (часы).
- HDD: заказ доставки книги из центральной библиотеки города (дни/недели).
Граница аналогии: Книга на полке не испаряется, если ее не перечитывать каждые 64 миллисекунды, в то время как конденсатор ячейки DRAM теряет заряд мгновенно и требует непрерывного цикла регенерации. Также бумага на столе не изнашивается от того, что на ней прочитали текст 100 000 раз, в то время как оксидный слой флеш-памяти деградирует от туннелирования электронов.