Что такое бестактовая безопасность и как она влияет на проектирование процессоров?

Последнее обновление: 13/01/2026
Автор: Исаак
  • Безопасность без привязки к тактовому генератору относится к асинхронным процессорам, где зависимость от глобального тактового генератора снижается или полностью исключается.
  • Современные процессоры объединяют кэш-память, блоки управления памятью (MMU), параллелизм и многопоточность, что усложняет как производительность, так и безопасность.
  • Бестактные схемы могут смягчить атаки по времени, но они требуют новых форм мониторинга и аудита. аппаратные средства.
  • Виртуализация, виртуальные процессоры и специализированные ускорители расширяют поверхность атаки, что делает необходимым внедрение мер безопасности на уровне микросхем.

Иллюстрация, иллюстрирующая систему безопасности без часов.

Выражение Система безопасности без часов работы звучит как концепция из будущего.Но на самом деле это тесно связано с тем, как спроектированы и защищены современные процессоры и системы. Чтобы правильно это понять, нам нужно углубиться в то, как работает ЦП внутри, как организовано выполнение инструкций и какую роль играет знаменитый тактовый сигнал в определении темпа работы всей системы.

В последние десятилетия процессоры соревнуются в повышении своей скорости. тактовая частота, интеграция большего количества транзисторов и увеличение их параллельностиВ то же время появились разработки, направленные на освобождение от зависимости от глобального тактового сигнала, будь то на всем чипе или в отдельных его частях. Эта область, асинхронные или бестактовые схемы, открывает очень интересные возможности с точки зрения энергопотребления и теплоотвода… а также специфических проблем безопасности, которые часто объединяют под концепцией бестактовой безопасности.

Центральный процессор как центр системы и его взаимосвязь с тактовой частотой.

Когда мы говорим о безопасности, связанной с часами, первое, что нужно помнить, это что же такое ЦП. По сути, это Центральный процессор — это мозг компьютера.: компонент, который интерпретирует и выполняет инструкции программы, координирует работу памяти, ввода/вывода и специализированных сопроцессоров, таких как графические процессоры (GPU).

В современном процессоре мы находим несколько отдельных блоков. С одной стороны, есть... Арифметико-логическое устройство (АЛУ)Арифметико-логическое устройство (АЛУ) отвечает за математические и логические операции с целыми числами. Затем идут регистры — небольшие, сверхбыстрые запоминающие устройства, в которых хранятся данные, с которыми в данный момент работает процессор. И, наконец, есть блок управления, который цикл за циклом решает, что делать, что считывать из памяти и что записывать.

Большинство современных процессоров имеют синхронную архитектуру. Это означает, что все внутренние блоки координируются с помощью синхронного алгоритма. периодический тактовый сигналЭто своего рода электронный метроном, задающий темп выполнения. Каждый тик этих часов продвигает на один шаг так называемый цикл инструкций: инструкция считывается, декодируется, выполняется, результаты сохраняются, и цикл начинается снова.

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

Таким образом, производительность зависит не только от тактовой частоты, но и от количества количество инструкций за цикл (IPC) Он способен выполнять все задачи процессора. Произведение частоты на количество инструкций в секунду (IPC) дает нам представление о миллионах инструкций в секунду, которые он может выполнять, хотя теоретические показатели обычно гораздо оптимистичнее, чем то, что наблюдается в реальных программах.

От стационарной проводки до интегрированных микропроцессоров

Чтобы понять контекст бестактовых схем, полезно рассмотреть эволюцию центрального процессора. Ранние электронные компьютеры, такие как ENIAC, были проводные машины с фиксированной программойДля смены задач систему пришлось физически перепрограммировать. Революционной идеей стал компьютер с хранимой программой, в котором инструкции хранятся в памяти; процессор просто считывает и выполняет их.

Архитектура хранимых программ, связанная с Джоном фон Нейманом, в конечном итоге возобладала. В ней, Инструкции и данные используют одно и то же пространство памяти.В отличие от гарвардской архитектуры, которая физически разделяет оба типа информации, сегодня почти все процессоры общего назначения используют архитектуру фон Неймана, хотя в мире встраиваемых систем до сих пор существует множество процессоров, работающих исключительно по гарвардской архитектуре или являющихся её гибридами.

Первые процессоры были построены с использованием реле или вакуумных ламп. Они были громоздкими, медленными и имели... надежность Очень ограниченные возможности. Переход к твердотельным транзисторам в 50-х и 60-х годах позволил... значительно увеличить скорость, снизить потребление энергии и уменьшить габариты.Затем произошёл переход от дискретных схем к интегральным схемам (ИС), что позволило разместить всё больше и больше транзисторов на одном кристалле.

С появлением интегральных схем, сначала маломасштабных (SSI), затем среднемасштабных (MSI), крупномасштабных (LSI) и, наконец, сверхбольших (VLSI), размеры центрального процессора были уменьшены до тех пор, пока он не поместился в... все на одном или нескольких чипахЭта интеграция завершилась созданием микропроцессора, в котором весь вычислительный блок изготовлен на одном кремниевом чипе.

El Intel 4004Процессор Intel 8080, выпущенный в 1971 году, был одним из первых коммерческих микропроцессоров. Вскоре появились более мощные модели, такие как Intel 8080, ставший основой персональных компьютеров. С этого момента термин «процессор» (CPU) почти всегда использовался для обозначения этих микропроцессоров.

внутренняя архитектура ЦП

Основные внутренние компоненты современного центрального процессора.

Современные процессоры выделяют значительную часть своей кремниевой поверхности под вспомогательные элементы, предназначенные для чтобы максимально эффективно использовать каждый тактовый циклНапример, почти каждый процессор включает в себя несколько уровней кэша: небольшие, но очень быстрые ячейки памяти, расположенные рядом с ядрами, которые хранят копии наиболее часто используемых данных, чтобы им не приходилось постоянно обращаться к оперативной памяти.

  Расширенное использование Get-WinEvent и WEF для аудита и обеспечения безопасности.

Помимо кэшей L1, L2 и часто L3, сложный процессор включает в себя Блок управления памятью (MMU) которая преобразует виртуальные адреса (обрабатываемые операционной системой) в физические адреса в оперативной памяти, управляет виртуальная память и обеспечивает изоляцию между процессами.

В вычислительной плоскости у нас есть несколько специализированных исполнительных блоков: АЛУ для целых чисел, Блок обработки чисел с плавающей запятой (FPU) Для десятичных операций используются блоки генерации адресов (AGU), позволяющие быстро вычислять адреса в памяти, а во многих архитектурах для одновременной обработки нескольких точек данных используются векторные блоки или SIMD-модули.

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

Наконец, имеется набор внутренних регистров: регистры общего назначения, аккумуляторы, счетчики команд, регистры состояния с флагами, указывающими, например, равен ли результат операции нулю, отрицателен ли он или произошел ли переполнение и т. д. Все это координируется в соответствии с классическим циклом. захват, декодирование и выполнение инструкций.

Как запустить программу шаг за шагом

Основной принцип работы любого центрального процессора сводится к выборке инструкций из памяти и их последовательной обработке. Этот процесс проходит в три основных этапа. Первый этап — это этап... захват (получение), в которой инструкция, адресация которой задается счетчиком команд, считывается из памяти.

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

Наконец, операция выполняется. АЛУ или соответствующее устройство выполняет вычисления или перемещение данных, а результат обычно сохраняется в регистре или в памяти. Если необходимо изменить ход выполнения программы, например, с помощью условного перехода, счетчик команд обновляется новым адресом. Этот набор инструкции, данные и переходы Именно она в конечном итоге формирует циклы, функции, условные операторы и всю логику наших программ.

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

Параллелизм, канальная передача данных и выполнение действий в произвольном порядке

Чтобы избежать ненужных затрат на часы, дизайнеры представили... трубопроводнаяПуть передачи данных разделен на несколько этапов, подобно конвейерной линии. Пока одна инструкция декодируется, следующая уже считывается из памяти, а еще одна может выполняться в АЛУ.

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

Следующим шагом стало суперскалярное проектирование: оснащение процессора несколькими исполнительными блоками одного типа, чтобы иметь возможность Выдавать несколько инструкций за тактпри условии отсутствия конфликтов между ними. Внутренний диспетчер анализирует поток инструкций, определяет, что может быть выполнено параллельно, и распределяет их между различными подразделениями.

Все эти Трюки Они входят в так называемую Параллелизм обучения (ILP)Практические ограничения этих технологий и возрастающая сложность дальнейшего повышения тактовой частоты без значительного увеличения энергопотребления и тепловыделения привели к тому, что в определенный момент производители также начали инвестировать в... параллелизм на уровне задач: несколько потоков и несколько ядер на одном чипе (и такие механизмы, как парковка для основных объектов).

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

Роль тактовой частоты и её физические ограничения

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

С другой стороны, каждый тактовый переход вызывает изменение состояния множества транзисторов, даже если определённая область процессора в данный момент не выполняет никаких полезных действий. Это приводит к следующему: потребление энергии и теплоотвод Просто чтобы метроном продолжал работать. Для решения этой проблемы были введены такие методы, как управление тактовой частотой, которое выборочно отключает тактовый сигнал в неиспользуемых блоках, снижая энергопотребление.

  Как удалить Norton на Windows, Mac и Android

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

В асинхронной схеме вместо одного тактового сигнала, который сигнализирует о начале цикла, используется другой подход. El Tiempo для всего чипа, Именно сами сигналы данных и управления обеспечивают синхронизацию операций.Блоки обмениваются данными, используя протоколы запроса и подтверждения (рукопожатие): когда данные готовы, производитель уведомляет потребителя, и потребитель реагирует, не дожидаясь фиксированного фронта тактового сигнала.

Они были построены полностью асинхронные процессоры Совместимость с известными наборами инструкций, такими как семейство AMULET на базе ARM или проекты, основанные на MIPS. Существуют также гибридные конструкции, в которых только определенные блоки (например, конкретный АЛУ) работают без глобального тактового сигнала, в то время как остальная часть процессора остается синхронной.

Что мы подразумеваем под «бесчасовой безопасностью»?

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

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

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

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

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

Представление данных, размер слова и безопасность

Ещё одним важным фактором, связанным с архитектурой ЦП, является способ представления и обработки данных. Практически все современные процессоры используют двоичное представлениес напряжениями, соответствующими 0 и 1. Размер слова (8, 16, 32, 64 бита…) определяет диапазон целых чисел, которые могут обрабатываться напрямую, и объем адресуемой памяти.

С точки зрения безопасности, размер слова влияет на адресное пространство и вероятность коллизии, переполнения и ошибки указателей32-битная система с 2^32 возможными адресами имеет очень явные ограничения по сравнению с 64-битной системой. Кроме того, многие современные механизмы защиты, такие как некоторые защищенные расширения памяти, основаны на наличии большого адресного пространства.

Использование MMU и трансляции адресов также создает дополнительный слой между программой и физической памятью, что крайне важно для изолированные процессыНеобходимо реализовать виртуальную память и защитить ядро. В асинхронных контекстах координация между этими преобразованиями и сигналами между блоками без синхронизации должна быть очень хорошо продумана, чтобы избежать создания уязвимостей безопасности или состояний гонки.

В свою очередь, векторные расширения (SIMD) и блоки обработки чисел с плавающей запятой позволяют работать с большими объемами данных параллельно. Это палка о двух концах: с одной стороны, Это ускоряет работу криптографических алгоритмов и задач анализа.С другой стороны, при злонамеренном использовании это обеспечивает большие вычислительные мощности для взлома слабых шифров или проведения атак методом перебора.

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

Массовый параллелизм, многопоточность и векторы: влияние на безопасность без часов.

Современные процессоры стремятся повысить производительность не только за счет увеличения тактовой частоты, но и за счет параллельного выполнения большего объема работы. Это включает в себя многоядерность, аппаратную многопоточность и векторные блоки, способные обрабатывать несколько точек данных за одну инструкцию.Ко всему этому добавляется рост популярности специализированных ускорителей, таких как графические процессоры (GPU), цифровые сигнальные процессоры (DSP) или термопроцессоры (TPU).

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

  О, нет! Ваша батарея вышла из строя и ее необходимо заменить?

В бестактовых или гибридных средах такая координация в большей степени опирается на протоколы связи между блоками, чем на глобальные тактовые циклы. Например, ядро ​​может использовать сигналы запроса и признания Для доступа к памяти или общему ресурсу эффективная задержка будет зависеть от фактического трафика в данный момент, а не от фиксированного числа циклов.

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

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

Виртуализация, виртуальные процессоры и изоляция в современных средах

Еще одним ключевым элементом в современном мире является виртуализация. В облаке мы постоянно работаем с Виртуальные ЦП (vCPU)которые представляют собой логические фрагменты вычислительной мощности, выделенные для виртуальные машины или контейнеры, размещенные поверх общего физического оборудования.

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

В этом контексте бесчасовая безопасность подразумевает, что распределение процессорного времени между виртуальными машинами зависит не только от единого тактового генератора, но и от других факторов. более динамичные механизмы планирования Поддерживается оборудованием. Гипервизор по-прежнему видит тактовые циклы, но способ преобразования этих циклов в эффективную работу на каждом ядре может изменяться с помощью внутренних асинхронных блоков.

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

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

Производительность, энергопотребление и разгон по сравнению с конструкцией без тактового генератора.

Наконец, необходимо рассмотреть взаимосвязь между производительностью и энергопотреблением. Увеличение тактовой частоты за счет разгона (например, путем выполнения определенной операции) может быть полезным. Тест на стабильность с использованием OCCT) позволяет процессору выполнять больше операций в секундуОднако это значительно увеличивает энергопотребление и температуру. На самом деле, многие современные процессоры уже динамически регулируют свою частоту и напряжение в зависимости от нагрузки и внутренней температуры.

Асинхронные схемы предлагают альтернативу: вместо использования очень быстрого тактового генератора и попыток поддерживать фазу всех сигналов, Они позволили каждому блоку функционировать в темпе, определяемом данными.В периоды низкой нагрузки неактивные компоненты практически не меняют своего состояния, что снижает потребление без необходимости использования сложных механизмов управления питанием на основе тактовых сигналов.

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

Однако разработка полностью асинхронной и безопасной системы — задача нетривиальная. Она требует очень тщательной проверки протоколов связи между блоками, условий гонки и промежуточных состояний для предотвращения ошибок. недетерминированное поведение, которое может быть использовано злоумышленникомСложность конструкции, дефицит зрелых инструментов и необходимость обратной совместимости с существующим программным обеспечением привели к тому, что на данный момент большинство коммерческих процессоров остаются преимущественно синхронными с небольшими асинхронными блоками.

Сочетание всех этих факторов — внутренней архитектуры, управления тактовой частотой, параллелизма, виртуализации и энергопотребления — делает обеспечение безопасности в средах без глобальных часов крайне сложной задачей. Асинхронные схемы позволяют смягчить некоторые атаки, основанные на временных параметрах, и способствуют разработке высокоэффективных стратегий энергосбережения, но они также создают новые проблемы для мониторинга, аудита и проверки работы оборудования, поэтому ключ к успеху заключается в интеграции. надежные механизмы наблюдаемости и изоляции от самого кремниевого кристалла до программного обеспечения самого высокого уровня.

Как узнать температуру процессора в Windows 11, ничего не устанавливая
Теме статьи:
Как проверить температуру процессора в Windows 11 без установки каких-либо программ