Разное

Назначение процессор: Процессор и его компоненты

Содержание

Технологии и инструкции, используемые в процессорах

Люди обычно оценивают процессор по количеству ядер, тактовой частоте, объему кэша и других показателях, редко обращая внимание на поддерживаемые им технологии.
Отдельные из этих технологий нужны только для решения специфических заданий и в «домашнем» компьютере вряд ли когда-нибудь понадобятся. Наличие же других является непременным условием работы программ, необходимых для повседневного использования.
Так, полюбившийся многим браузер Google Chrome не работает без поддержки процессором SSE2. Инструкции AVX могут в разы ускорить обработку фото- и видеоконтента. А недавно один мой знакомый на достаточно быстром Phenom II (6 ядер) не смог запустить игру Mafia 3, поскольку его процессор не поддерживает инструкции SSE4.2.
Если аббревиатуры SSE, MMX, AVX, SIMD вам ни о чем не говорят и вы хотели бы разобраться в этом вопросе, изложенная здесь информация станет неплохим подспорьем.

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

MMX

Аббревиатура образована от MultiMedia eXtensions (мультимедийные расширения). Это набор инструкций процессора, предназначенных для ускорения обработки фото-, аудио- и видеоданных. Разработан компанией Intel, используется в процессорах с 1997 года и на момент внедрения обеспечивал до 70% прироста производительности. Сегодня вам вряд ли удастся встретить процессор без поддержки этой технологии. Подробнее.

3DNow!

Технология впервые была использована в 1998 году в процессорах AMD и стала развитием технологии MMX, значительно расширив возможности процессора в области обработи мультимедийных данных. Ее презентацию совместили с выходом игры Quake 2, в которой 3DNow! обеспечивала до 30% прироста быстродействия. Но широкого распространения 3DNow! не получила. Сейчас она заменена другими технологиями и в новых процессорах не используется. Подробнее.

SSE

Аббревиатура от от Streaming SIMD Extensions. SIMD расшифровывается как Single Instruction Multiple Data, что значит «одна инструкция — множество данных».
SSE впервые использована в 1999 году в процессорах Pentium ІІІ и стала своеобразным ответом компании Intel на разработанную компанией AMD технологию 3DNow!, устранив некоторые ее недостатки. SSE применяется процессором, когда нужно совершить одни и те же действия над разными данными и обеспечивает осуществление до 4 таких вычислений за 1 такт, чем обеспечивает существенный прирост быстродействия.
SSE используется огромным числом приложений. Процессоров без ее поддержки сегодня уже не встретишь. Подробнее.

SSE2

Этот набор инструкций был разработан компанией Intel и впервые интегрирован в процессоры Pentium 4 (2000 — 2001 гг.).
Поддержка инструкций SSE2 является обязательным условием использования современного программного обеспечения. В частности, без этого набора команд не будут работать популярные браузеры Google Chrome и Яндекс-браузер. На компьютере без SSE2 также невозможно использовать Windows 8, Windows 10, Microsoft Office 2013 и др. Подробнее.

SSE3

Набор из 13 инструкций, разработанный компанией Intel и впервые использованный ею в 2004 г. в процессорах с ядром Prescott. Позволяет процессору более эффективно использовать 128-битные регистры SSE.
Инструкции SSE3 заметно упростили ряд DSP- и 3D-операций. Практическая польза от них больше всего ощущается в приложениях, связанных с обработкой потоков графической информации, аудио- и видеосигналов.
Подробнее.

SSSE 3

Сокращение от «Supplemental SSE3», что значит «Дополнительный SSE3». Это набор дополнительных инструкций процессора, внедренных компанией Intel в 2006 году в продолжение развития предыдущих наборов команд SSE. По сути, это был четвертый по счету набор инструкций SSE. Но в Intel решили иначе, возможно, посчитав его лишь незначительным дополнением к предыдущему пакету.
Инструкции SSSE3 необходимы для нормальной работы многих современных приложений, в частности программ распознавания речи, используемых алгоритм DNN (Deep Neural Network). Подробнее.

SSE 4.1

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

SSE 4.2

Набор инструкций процессора, включающий 7 команд обработки строк, подсчета CRC32 и популяции единичных бит, а также работы с векторными примитивами. Впервые использован компанией Intel в 2008 году.
На практике инструкции SSE 4.2 повышают производительность при сканировании вирусов, поиска текста, строковой обработки библиотек (ZLIB, базы данных и др.), обработки 3D информации. Подробнее.

SSE4A (SSE128)

Набор инструкций, используемый в процессорах AMD с 2007 года. Включает всего 4 команды (инструкции, ускоряющие подсчет числа нулевых/единичных битов, комбинированные инструкции маскирования и сдвига, а также скалярные инструкции потоковой записи).
Аналогичные инструкций есть также в наборе SSE 4 (4.1, 4.2.) от Intel, который является значительно более эффективным (в общей сложности 54 инструкции), см. выше. Подробнее.

AES

Расширение системы команд процессора, разработанное в 2008 году компанией Intel с целью ускорения работы и повышения уровня защищенности программ, использующих алгоритм шифрования AES (Advanced Encryption Standard).
В США и некоторых других странах AES является официальным стандартом шифрования. Используется операционной системой Windows и многими популярными программами для защиты конфиденциальной информации (The Bat!, TrueCrypt и др.). Если процессор поддерживает инструкции AES, прирост производительности приложений, использующих этот алгоритм, может достигать 1200 %. Подробнее.

AVX

Аббревиатура образована от Advanced Vector Extensions. Это расширение системы команд процессора, разработанное компанией Intel в 2008 году. Оказывает большое влияние на мультимедийные и вычислительные возможности процессора.
Кроме набора новых инструкций, эта технология предусматривает двукратное увеличение размеров SIMD-регистров процессора, благодаря чему в интенсивных вычислениях за каждый такт он может обрабатывать до 2 раз больше информации.
Значительный прирост производительности наблюдается при работе с фото-, видеоконтентом, решении научных задач и др.). Но для этого требуется также использование соответствующей операционной системы и адаптированного программного обеспечения. В Windows поддержка AVX появилась, только начиная с Windows 7 SP1. Подробнее.

AVX 2

Набор инструкций, ставший развитием технологии AVX. Впервые использован в 2013 г. в процессорах Intel на ядре Haswell.
Практическая польза для рядового пользователя — прирост производительности при работе с видео, фотографиями, звуком, а также с программами, использующими алгоритмы распознавания голоса, лиц, жестов (при условии использования соответствующего программного обеспечения). Подробнее.

FMA

Набор инструкций процессора, ускоряющий операции умножения-сложения чисел с плавающей запятой. Аббревиатура FMA образована от англ. Fused Multiply-Add, что переводится как умножение-сложение с однократным округлением.
Операции умножения-сложения очень распространены и играют важную роль в работе вычислительной техники. Особенно, когда речь идет о цифровой обработке аналоговых сигналов (двоичное кодирование видео, звука и другие подобные операции). В связи с этим, поддержка инструкций FMA внедрена не только в центральные процессоры, но и в графические процессоры многих современных видеокарт. Подробнее.

NX (XD), EVP

Технологии NX (XD) и EVP, не смотря на разные названия, являются одним и тем же — важным компонентом любого современного процессора, обеспечивающим повышенную защиту компьютера от вирусов и хакерских атак, основанных на механизме переполнения буфера.
Названия NX (No Xecute) и XD (eXecute Disable) характерны для процессоров Intel. EVP (Enhanced Virus Protection) — для процессоров AMD. Подробнее.

AMD64, Intel64

AMD64, Intel64, EM64T, x86-64, x64, Hammer Architecture — все эти термины обозначают одно и то же — 64-битную архитектуру центрального процессора, разработанную и внедренную в 2003 году компанией AMD. До этого процессоры были 32-битными.
Для обычного пользователя главным преимуществом 64-битного процессора является возможность использования в компьютере 64-битного программного обеспечения и большого объема оперативной памяти (теоретически, до 16777216 терабайт). Максимальное количество оперативной памяти, которое может адресовать 32-битный процессор — 4 ГБ. Подробнее.

XOP

XOP (от англ. eXtended operation — «расширенная операция») — это набор инструкций микропроцессора, повышающих его быстродействие при работе с мультимедиа, а также при решении научных задач.
Инструкции XOP впервые использованы в 2011 году в процессорах AMD архитектуры Bulldozer. В этот набор входит несколько различных типов векторных инструкций, большинство из которых являются целочисленными. Однако, есть среди них также инструкции для перестановки чисел с плавающей запятой и инструкции экстракции дробной части. Подробнее.

HT, SMT

В процессорах Intel технология многопоточности называется Hyper-Threading (HT), в процессорах AMD — Simultaneous MultiThreading (SMT).
Кроме названий, эти технологии отличаются еще и многими аспектами реализации. Однако, суть их одинакова. HT и SMT повышают эффективность использования вычислительных возможностей процессора (в среднем, на 20 — 30 %) за счет параллельного выполнения каждым его ядром двух потоков вычислений. Подробнее.

Аппаратная виртуализация (VT-x, VT-d, AMD-V)

Аппаратная виртуализация значительно расширяет возможности работы компьютера с виртуальными машинами, позволяя использовать гостевые операционные системы изолировано от основной (хостовой) системы.
Кроме того, появляется возможность «проброса» в гостевую систему устройств ввода-вывода, подключаемых к компьютеру через шину PCI и некоторые другие шины (видеокарты, звуковые карты, сетевые адаптеры и др.).
Подробнее.

Turbo Boost, Turbo Core

Turbo Boost и Turbo Core — похожие по своей сути технологии, автоматически повышающие тактовую частоту процессора выше номинальной, когда в этом есть необходимость. Turbo Boost используется в процессорах Intel, Turbo Core — в процессорах AMD. В целом, они обеспечивают значительный прирост быстродействия в большинстве приложений.
Несмотря на одинаковое предназначение, Turbo Boost и Turbo Core существенно отличаются.
Подробнее.

TXT

TXT (англ. Trusted eXecution Technology — технология доверенного выполнения) — разработанная компанией Intel и используемая в ее процессорах технология, обеспечивающая аппаратную защиту компьютера от вредоносных программ.
Это абсолютно новая концепция безопасности. В ее основе лежит эксклюзивное использование части ресурсов компьютера каждым конкретным приложением. Она охватывает практически все подсистемы компьютера: выделение памяти, мониторинг системных событий, связь чипсета и памяти, хранение данных, устройства ввода (клавиатура и мышь), вывод графической информации.
Подробнее.

TSX

TSX (Transactional Synchronization eXtensions) — набор инструкций многоядерного процессора, разработанный компанией Intel, который повышает эффективность взаимодействия ядер между собой при осуществлении общего доступа к одним и тем же данным и, в конечном счете, увеличивает общую производительность компьютера.
Подробнее.

SpeedStep, PowerNow!, Cool’n’Quiet

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

MPX

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

SGX

Software Guard Extensions (SGX) — набор инструкций, разработанный компанией Intel и используемый в ее процессорах, начиная с архитектуры Skylake.
SGX позволяет организовать защищённые участки кода и данных (так называемые «анклавы»), обеспечивающие высокий уровень защиты работающих с ними программ от вредоносных приложений и хакерских атак.
Подробнее.

Intel SHA

Intel Secure Hash Algorithm extensions (SHA) — набор инструкций процессора, разработанных компанией Intel для ускорения работы приложений, используемых алгоритмы шифрования SHA. Включает 7 инструкций, 4 из которых ускоряют работу SHA-1, остальные 3 — SHA-256. Ускорение может составлять 150-200 % и более (в зависимости конкретного приложения).
Эти алгоритмы используются в системах контроля версий и электронных подписей, а также для построения кодов аутентификации. SHA-1 является более распространённым и применяется в самых разнообразных криптографических программах.
Подробнее.

ACPI

Advanced Configuration and Power Interface (ACPI) — стандарт, разработанный компаниями HP, Intel, Microsoft, Phoenix и Toshiba. Используется в компьютерной технике с 1996 года, постепенно дополняясь и совершенствуясь. Определяет общий подход к управлению питанием и обеспечивает взаимодействие между устройствами компьютера, его операционной системой и BIOS/UEFI в целях снижения уровня энергопотребления.
Стандарт ACPI предусматривает несколько режимов работы процессора. В зависимости от модели, они могут поддерживаться процессором в полном объеме или только какая-то их часть.
Подробнее.

SMM

System Management Mode (SMM) — режим, при котором процессор приостанавливает исполнение любого кода (в том числе и операционной системы) и запускает специальную программу, хранящуюся в зарезервированной области оперативной памяти.
Процессор переводится в режим SMM не программным обеспечением, а после поступления сигнала, генерируемого при наступлении определенных событий специальными схемами материнской платы. Нужен для решения некоторых важных задач, таких как обработка ошибок памяти и чипсета материнской платы, защита процессора от перегрева путем выключения компьютера и др.
Подробнее.

DFFS

Dynamic Front Side Bus Frequency Switching (DFFS) — одна из технологий снижения энергопотребления компьютерных систем. Она позволяет операционной системе компьютера, в зависимости от нагрузки, которую он испытывает, понижать частоту системной шины FSB, что влечет за собой также и снижение частоты процессора.
Подробнее.

SenseMI

SenseMI — технология, разработанная компанией AMD и впервые использованная в процессорах серии Ryzen. Она представляет собой комплекс из нескольких взаимосвязанных компонентов, обеспечивающих оптимальную производительность и энергоэффективность путем прогнозирования программного кода, а также динамического изменения частоты процессора в соответствии с решаемыми задачами в каждый конкретный момент времени (Smart Prefetch, Neural Net Prediction, Pure Power, Precision Boost, Extended Frequency Range).
Некоторые из упомянутых компонентов, по сути, являются усовершенствованными вариантами технологий, используемых в предыдущих моделях процессоров AMD.
Подробнее.

AMD CoolCore

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

AMD CoolSpeed

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

AMD Enduro

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

BMI, TBM, ABM

Bit Manipulation Instructions (BMI) — наборы инструкций, используемые в процессорах Intel и AMD для ускорения операций, связанных с манипулированием битами.
Операции манипулирования битами чаще всего используется приложениями, предназначенными для низкоуровневого управления устройствами, обнаружения и исправления ошибок, оптимизации, сжатия и шифрования данных. Использование BMI программами значительно ускоряет эти операции (иногда в несколько раз), однако, код программ становится более сложным для написания программистами.
Подробнее.

DPM, DDPM

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

SMEP, SMAP

Supervisor Mode Execution Prevention и Supervisor Mode Access Prevention — технологии, разработанные компанией Intel для защиты компьютера от хакерских атак и других угроз, использующих так называемый «режим супервизора».
Подробнее.

F16C

F16C — набор инструкций, используемый в процессорах архитектуры x86 для ускорения преобразований между двоичными числами половинной точности (16 bit) и стандартными двоичными числами с плавающей запятой одинарной точности (32 bit).
F16C используется как в процессорах AMD, так и в процессорах Intel, значительно расширяя их возможности в плане работы с мультимедийными данными, а также данными других типов.
Подробнее.

Устройство процессора и его назначение

Описание и назначение процессоров

На самом деле то, что мы сегодня называем процессором, правильно называть микропроцессором. Разница есть и определяется видом устройства и его историческим развитием.

Первый процессор (Intel 4004) появился в 1971 году.

Внешне представляет собой кремневую пластинку с миллионами и миллиардами (на сегодняшний день) транзисторов и каналов для прохождения сигналов.

Назначение процессора – это автоматическое выполнение программы. Другими словами, он является основным компонентом любого компьютера.

Устройство процессора

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

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

Схема процессора

Работа процессора

Работает процессор под управлением программы, находящейся в оперативной памяти.

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

Блок управления помимо прочего отвечает за вызов очередной команды и определение ее типа.

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

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

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

Характеристики процессора

Тактовая частота процессора на сегодняшний день измеряется в гигагерцах (ГГц), Ранее измерялось в мегагерцах (МГц). 1МГц = 1 миллиону тактов в секунду.

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

Разрядность шины данных говорит о том, какое количество информации (сколько байт) можно передать за раз (за такт). От разрядности шины адресазависит максимальный объем оперативной памяти, с которым процессор может работать вообще.

На мощность (производительность) процессора влияют не только его тактовая частота и разрядность шины данных, также важное значение имеет объем кэш-памяти.

Процессор. Основные компоненты и их назначение

Подробности
Родительская категория: Архитектура ЭВМ
Категория: Базовая организация ЭВМ

Центральный процессор компьютера (Central Processor Unit, CPU) осуществляет основные действия по выполнению команд. В нём можно выделить несколько составляющих частей:

Элементы, составляющие процессор:

  1. декодер команд;
  2. арифметико-логическое устройство (АЛУ), выполняющее действия над операндами;
  3. регистры для хранения данных, адресов и служебной информации;
  4. устройство для формирования (вычисления) адресов операндов;
  5. устройство управления.

Устройство управления (УУ)- управляет процессором последовательной выборки, декодирования и исполнения команд программы, хранимой в памяти. УУ формирует временную диаграмму работы всех узлов процессора. Часть регистров также можно отнести к УУ.

Устройство формирования адресов операндов — вычисляет адрес, по которому произойдёт очередное обращение к участку памяти, содержащему операнд.

АЛУ — комбинационное логическое устройство, имеющее два (многоразрядных) входа (на которые подаются два слова сходных операндов), на выходе АЛУ формируется результат операций, которые процессор выполняет над операндами, таких, как сложение, умножение и т.п. Минимальный набор операций (машина Фон-Неймана), которые должно выполнять АЛУ, включает операции сложения, инверсии и логического «И», все остальные операции можно получить на базе этих.

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

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

— Счётчик команд — содержит адрес следующей команды.

— Регистр адреса — содержит адрес операнда, используется при косвенной адресации.

— Регистр флагов (состояния и управления) — содержит код, характеризующий результаты предыдущих операций, а так же информацию о текущем состоянии центрального процессора компьютера.

Рисунок. Регистры процессора MC68HC05

Регистровый файл — набор однотипных регистров.

Каждый процессор имеет свой набор регистров. Можно выделить две группы процессоров: с регистрами общего назначения и со специализированным набором регистров (Пример IntelX86). В первом случае все регистры регистрового файла одинаковы и их можно использовать произвольно в командах. Во втором — за каждым регистром закреплена своя функция, и использование регистров в командах оговорено в формате каждой команды. Однако, процессоры с регистровыми файлами требуют большие аппаратные затраты на организацию связи между регистрами.

Рисунок. Регистры процессоров MC68xxx и Intel X86

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

— на пользовательском уровне (регистры общего назначения и флагов)

— на системном уровне (регистры управления процессором и организации памяти, элементы организации прерываний и прямого доступа к памяти (ПДП)).

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

Переферийные устройства — устройства, внешние по отношению к связке «процессор-память».

Устройства ввода-вывода — часть переферийных устройств, предназначенная для связи ЭВМ с «внешним миром».

  • < Назад
  • Вперёд >

Классификация, именование и краткие параметры процессоров

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

Ниже представлена попытка классификации и расшифровки фирменных (торговых марок) и кодовых имен процессоров, а также их ядер с приведением кратких характеристик. В качестве основы использована статья www.ixbt.com/cpu/codenames.html с добавлением материалов, опубликованных на сайтах и в фирменной документации производителей.

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

Intel

Pentium – первые процессоры семейства P5 (март 1993 г.). Тогда Intel, чтобы не повторить ошибки с i486 (суд отклонил иск к AMD по поводу названия), решила дать своему изделию имя, которое впоследствии стало нарицательным. Первое поколение Pentium носило кодовое имя P5, а также i80501, напряжение питания было 5 В, расположение выводов – «матрица», тактовые частоты – 60 и 66 МГц, технология изготовления – 0,80-микронная, частота шины равна частоте ядра. Выпускались в конструктиве под Socket 4.

Развитием этого семейства стал P54, он же i80502, напряжение питания ядра было снижено с 5 В до 3,3 В, расположение выводов – «шахматная матрица», технология – 0,50 мкм, а затем 0,35 мкм. Тактовая частота ядра – 75-200 МГц, шины – 50, 60, 66 МГц. Объем кэш-памяти L1 – 16Кбайт. Впервые она была разделена – 8 Кбайт на данные и 8 Кбайт на инструкции. Разъем Socket 7. Архитектура IA32, набор команд не менялся со времен процессоров i386.

Pentium MMX (P55, январь 1997 г.) стали следующими процессорами фирмы Intel. Добавился новый набор из 57 команд MMX. Технология – 0,35 мкм. Напряжение питания ядра уменьшилось до 2,8 В. Процессоры потребовали изменения в архитектуре материнских плат, так как двойное электропитание потребовало установки дополнительного стабилизатора напряжения. Объем кэш-памяти L1 был увеличен в два раза и составил 32 Кбайта. Внутренняя тактовая частота – 166-233 МГц, частота шины – 66 МГц. Рассчитаны на Socket 7. Стали последними в линейке процессоров Pentium для компьютеров Desktop.

Tillamook – кодовое наименование ядра процессоров Pentium, созданных в январе 1997 г. Предназначены для применения в портативных компьютерах. Технология – 0,25 мкм. Отличаются пониженным напряжением ядра и рассеиваемой мощности. Кэш-память L1 – 32 Кбайта, набор команд MMX. Тактовые частоты от 133 до 266+ МГц с частотой шины 60-66 МГц. Тип упаковки – TCP и MMC. Существуют переходники для установки Tillamook в гнездо Super 7.

Pentium Pro – первые процессоры шестого поколения, выпущенные в ноябре 1995 г. Впервые применена кэш-память L2, объединенная в одном корпусе с ядром и работающая на частоте ядра процессора. Процессоры имели очень высокую себестоимость изготовления. Выпускались сначала по технологии 0,50 мкм, а затем по 0,35 мкм, что позволило увеличить объем кэш-памяти L2 с 256 до 512, 1024 и 2048 Кбайт. Тактовая частота – от 150 до 200 МГц. Частота шины – 60 и 66 МГц. Кэш-память L1 – 16 Кбайт. Разъем Socket 8. Поддерживали все инструкции процессоров Pentium, а также ряд новых инструкций (cmov, fcomi и т.д.). В архитектуру была введена двойная независимая шина (DIB). В дальнейшем все новшества унаследовали Pentium II. Архитектура Pentium Pro значительно опередила свое время.

Pentium II/III – семейство P6/6×86, первые представители появились в мае 1997 г. Семейство этих процессоров объединяет под общим именем процессоры, предназначенные для разных сегментов рынка: Pentium II (Klamath, Deschutes, Katmai) – для массового рынка ПК среднего уровня, Celeron (Covington, Mendocino, Dixon и т.д.) – для недорогих компьютеров, Xeon (Xeon, Tanner, Cascades и т.д.) – для высокопроизводительных серверов и рабочих станций. Имеет модификации для Slot 1, Slot 2, Socket 370, а также соответствующие варианты для мобильных компьютеров.

Klamath – наименование ядра первых процессоров линейки Pentium II (январь 1997 г.). Технология – 0,35 мкм. Тактовые частоты ядра – 233-300 МГц. Частота шины – 66 МГц, кэш-память L1 – 32 Кбайт, кэш-память L2 – 512 Кбайт. Последняя для снижения стоимости процессора размещена на процессорной плате и работает на половине частоты ядра процессора. Дополнен MMX-блоком. Питание ядра – 2,8 В, конструктив – картридж SECC, разъем – Slot 1.

Deschutes – наименование ядра (январь 1998 г.) процессоров линейки Pentium II, сменившего Klamath. Технология – 0,25 мкм, питание ядра – 2,0 В. Тактовая частота – 266-450+ МГц, частота шины – 66, 100 МГц, кэш-память L1 – 32 Кбайта, кэш-память L2, размещенная на плате процессора, – 512 Кбайт. Разъем – Slot 1. Конструктив – картридж SECC, который в старших моделях был сменен на SECC2 (кэш с одной стороны от ядра, а не с двух, как в стандартном Deschutes; измененное крепление кулера).

Tonga – одно из кодовых наименований мобильных процессоров Pentium II – Mobile Pentium II. Построен на 0,25 мкм ядре Deschutes. Впервые появился в апреле 1998 г. Тактовая частота ядра – 233-300+ МГц, шины – 66 МГц. Выпускался в конструктиве Mini Cartridge Connector и Mobile Module Connector 1 и 2 (MMC-1 и 2).

Katmai – наименование ядра (сентябрь 1999 г.) процессоров Pentium III, пришедшего на смену Deschutes. Добавлен блок SSE (Streaming SIMD Extensions), расширен набор команд MMX, усовершенствован механизм потокового доступа к памяти. Техпроцесс – 0,25 мкм, тактовая частота – 450-600 МГц, кэш-память L2, размещенная на процессорной плате, – 512 Кбайт. Разъем – Slot 1. Частота шины – 100 МГц, но в связи с задержкой Coppermine были выпущены модели 533 и 600 МГц, рассчитанные на частоту шины процессора 133 МГц.

Celeron – семейство процессоров, ориентированных на массовый рынок недорогих компьютеров. В это семейство входят модели, созданные на основе архитектур Covington, Mendocino, Dixon, Coppermine. Впервые появились в апреле 1998 года. Выпускались вначале для Slot 1, в дальнейшем – для Socket 370.

Covington – первые варианты процессоров (апрель 1998 г.) линейки Celeron. Построены на ядре Deschutes. Технология – 0,25 мкм. Тактовая частота – 266-300 МГц, частота шины – 66 МГц, кэш L1 – 32 Кбайта. Для уменьшения себестоимости процессоры выпускались без кэш-памяти второго уровня и защитного картриджа. Питание ядра – 2,0 В. Интерфейс – облегченный Slot 1, конструктив – SEPP (Single Edge Pin Package). Процессоры характеризовались сравнительно низкой производительностью, но, благодаря отсутствию кэш-памяти L2, отличались высокой устойчивостью работы в режимах разгона.

Mendocino – наименование ядра (август 1998 г.) процессоров линейки Celeron. Имеет кэш-память L2 объемом 128 Кбайт, интегрированную в кристалл процессора и работающую на частоте ядра, благодаря чему обеспечивается высокая производительность. Тактовая частота – 300-533 МГц, частота шины – 66 МГц. Учитывая, что на рынке уже существовал процессор с частотой 300 МГц, первая модель процессора, созданная на основе ядра Mendocino и имевшая ту же частоту, получила наименование Celeron 300A. Технология – 0,25 мкм. Питание ядра – 2.0 В. Первоначальный форм-фактор Slot 1 (300-433 МГц) постепенно был вытеснен Socket 370 (300-533 МГц).

Dixon – наименование ядра, а также кодовое имя процессоров, ориентированных на применение в портативных компьютерах. Технология – 0,25 мкм, в дальнейшем – 0,18 мкм. Объем кэш-памяти первого уровня – 32 Кбайта. Как и в Mendocino, кэш-память L2 расположена на чипе, однако ее объем увеличен до 256 Кбайт. Тактовая частота – 300-500 МГц, частота шины – 66 МГц. Официальная классификация – мобильные процессоры Pentium II.

Coppermine – наименование ядра процессоров Pentium III и Celeron. Технология – 0,18 мкм. Характеризуется наличием интегрированных на чипах процессоров 256 Кбайт кэш-памяти L2 для Pentium III и 128 Кбайт – для Celeron. Частота – от 533 МГц и выше. Наряду с FSB100 МГц версиями Pentium III выпущены и варианты FSB133 МГц. Последние процессоры, рассчитанные на Slot 1, постепенно были вытеснены изделиями в конструктиве FC-PGA 370, рассчитанными на разъем Socket 370. Частота шины для процессоров Celeron – 66 МГц, а начиная с модели Celeron 800 – 100 МГц. Напряжение питания ядра – от 1,5 В до 1,7 В.

Coppermine T – наименование ядра процессоров Pentium III и Celeron. Является переходной ступенью от ядра архитектуры Coppermine к ядру архитектуры Tualatin. Создан по технологии 0,18 мкм. Ориентирован на работу с чипсетами, поддерживающими процессоры с ядром Tualatin.

Tualatin-256K – кодовое наименование ядра и процессоров Socket 370 Pentium III, сделанных по 0,13 мкм техпроцессу. Это последние Pentium III. Отличаются от Coppermine более совершенными архитектурой и технологией производства. Характеризуются пониженным напряжением питания и меньшим энергопотреблением. Рабочая частота моделей для Desktop с FSB 100 МГц – 1,0, 1,1 ГГц, а с FSB 133 МГц – 1,13 ГГц и выше.

Tualatin-512K – кодовое наименование ядра и процессоров. Содержит ядро Tualatin, но имеет 512 Кбайт кэш-памяти L2. Процессоры предназначены исключительно для мобильных устройств, соответствующие версии для Desktop не запланированы, чтобы не конкурировать с Pentium 4. В архитектуре процессоров, созданных на основе ядра Tualatin-512K, осуществлена поддержка технологий энергосбережения. Стандартное напряжение ядра – 1,4 В и ниже. На конец 2001 г. запланирован выпуск нового поколения на ядре Tualatin с FSB 100/133 МГц для экономичных моделей мини- и субноутбуков.

Tualatin-512K DP – кодовое наименование ядра и процессоров для серверов и рабочих станций. Выпуск первых моделей с рабочей частотой 1,13 ГГц и 1,26 ГГц запланирован на вторую половину 2001 г.

Pentium III-M – мобильные процессоры нового поколения, изготовленные с использованием 0,13-микронного технологического процесса. Имеют новые средства управления энергопотреблением SpeedStep, Deeper Sleep и т.п. Стандартное напряжение ядра – 1,4 В и ниже.

Pentium III-S – процессоры с ядром Tualatin, технология – 0,13 мкм, кэш L2 – 512 Кбайт, рабочие частоты – с 1,13 ГГц. Предназначены для двухпроцессорных конфигураций.

Timna – кодовое наименование процессоров, созданных на основе ядра Coppermine с кэш-памятью L2 128 Кбайт, интегрированными на чипе графическим ядром и контроллером оперативной памяти. Ориентированы на сверхдешевые PC и телеприставки. Выпуск отменен фирмой Intel вследствие бесперспективности изделия.

Banias – кодовое наименование процессоров, архитектура которых сходна с Timna. В чип интегрированы вычислительное ядро процессора, графическое ядро, а также северный мост чипсета. В отличие от Timna поддержка RDRAM не предусматривается. Предполагается, что кроме версии со стандартным питанием будут выпущены варианты Low Voltage и Ultra Low Voltage.

Разработка проекта Banias ведется в израильском Intel Israel Design Center, начало массового производства процессора намечено на конец 2002 года – начало 2003 года. В основу ядра нового процессора Banias положена модифицированная архитектура Pentium III, но без гиперконвейерной организации, присущей процессорам Pentium 4. Процессоры Banias будут выпускаться в модификациях, присущих нынешним классам мобильных процессоров от Intel, а именно Pentium III/Low-Voltage Pentium III/Ultra-Low-Voltage Pentium III. Для уменьшения потребляемой процессором энергии разрабатывается специальная технология внутрипроцессорных соединений MicroOps Fusion. Первые чипы будут иметь тактовую частоту начиная с той, на которой, скорее всего, остановятся мобильные Tualatin-M — 1,4 ГГц. Впрочем, экономичный процессор найдет место и в серверах, где проблема потребления энергии и тепловыделения также занимает не последнее место.

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

Xeon – официальное наименование линейки процессоров, ориентированных на использование в составе мощных серверов и рабочих станций.

Первые варианты были построены на ядре Deschutes. Являются заменой процессоров Pentium Pro. Технология – 0,25 мкм. Процессорный разъем Slot 2. Процессоры этого типа способны работать в мультипроцессорных конфигурациях. Кэш-память L2 имеет объем 512, 1024, 2048 Кбайт, что во многом определяет высокую стоимость и тепловыделение.

В процессе совершенствования технологии осуществлен выпуск разных моделей процессоров Intel Pentium III Xeon на основе ядра Coppermine с постепенным переходом на архитектуру Tualatin.

Первые модели на архитектуре Tualatin: Intel Pentium III Xeon DP (DP – double processor) – напряжение на ядре 1,10-1,15 В, техпроцесс 0,13 мкм, 512 Кбайт L2, 133 МГц FSB, чипсеты ServerWorks HE-SL и ServerWorks LE-3; Intel Pentium III Xeon MP (MP – multiprocessor) – 1 Мбайт L3 на кристалле для 8-процессорных систем и 512 Кбайт L3 на кристалле для 4-процессорных систем, 1,60 ГГц и выше.

Серверные варианты процессоров, построенных на основе архитектуры Pentium 4 с ядром Foster, получили наименование Intel Xeon. Первые представители этих процессоров имеют рабочие частоты 1,7 ГГц и рассчитаны на использование разъема Socket 603. Первоначально предназначены для рабочих станций высшего и среднего класса с поддержкой двухпроцессорных конфигураций. Поддержку работы Intel Xeon осуществляет чипсет i860, цена которого значительно выше цены i850, используемого совместно с процессорами Pentium 4.

Tanner – кодовое наименование Pentium III Xeon. Предназначен, в первую очередь, для High-End серверов. Тактовая частота от 500 МГц, частота системной шины 100 МГц, CSRAM-кэш второго уровня объемом 512, 1024 и 2048 Кбайт работает на частоте процессора. Поддерживается MMX и SSE, кэш-память L1 – 32 Кбайта.

Cascades – кодовое наименование Pentium III Xeon, созданного на базе технологического процесса 0,18 мкм. Является серверным вариантом Coppermine. На чипе содержится кэш L2 256 Кбайт, тактовая частота от 600 МГц, частота шины процессора – 133 МГц. Первые варианты работают только в двухпроцессорных конфигурациях и только на частоте системной шины 133 МГц. В конце 2000 года объем кэш-памяти L2 на чипе был увеличен до 2 Мбайт. Финальная тактовая частота – 900 МГц для полноценной версии, 1 ГГц – для версии с 256 Кбайт L2. Форм-фактор – Slot 2.

Pentium 4 – следующие после Coppermine принципиально новые IA-32 процессоры Intel для обычных PC. Вместо традиционных GTL+ и AGTL+ используется новая системная шина Quad Pumped 100 МГц, обеспечивающая передачу данных с частотой 400 МГц и передачу адресов с частотой 200 МГц. Кэш-память L1 – 8 Кбайт, L2 – 256 Кбайт. В архитектуру введен ряд усовершенствований, направленных на увеличение тактовой частоты и производительности. Введен новый набор инструкций SSE2. Первые модели на основе ядра Willamette с тактовой частотой 1,4-1,5 ГГц выпущены 20 октября 2000 года. Разъем – Socket 423. Последняя модель рассчитана на частоту 2 ГГц, после чего ядро Willamette сменяет Northwood.

Willamette – наименование первого ядра процессоров Pentium 4, созданных по технологии 0,18 мкм.

Northwood – наименование ядра процессоров Pentium 4, созданных по технологии 0,13 мкм; Socket 423 и 478. С внедрением этого ядра происходит окончательный переход на новый форм-фактор Socket 478. Объем кэш-памяти L2 увеличен до 512 Кбайт. Именно этот процессор должен стать основным в ассортименте Intel на долгое время, сменив на этом посту линейку Katmai/Coppermine. Исходная тактовая частота – 2ГГц (маркировался как 2A ГГц, чтобы различался от 2 ГГц Willamate), позднее анонса появилась и младшая версия с частотой 1.6 ГГц. В мае 2002 года Northwood стал поддерживать 533 МГц системную шину (133 МГц QPB).

Prescott — наследник ядра Northwood, будет изготавливаться по 90 нм технологии, частота FSB=667 MHz (166 MHz QPB), поддержка Hyper-Threading, Socket 478. Анонс ожидается в третьем квартале 2003 года.

Tejas — наследник ядра Prescott, возможно, будет переведен на 65 нм техпроцесс. Анонс ожидается в первой половине 2004 года.

Nehalem — принципиально новое ядро, в отличие от чипа Prescott — улучшенной версии Pentium 4, и последующего за ним чипа Tejas. Nahalem будет производится во второй половине 2004 года по 90 нм техпроцессу, а позднее, в конце 2005 — будет переход на 65 нм техпроцесс. Пока что никаких конкретных подробностей об архитектуре ядра Nehalem нет, однако, есть соображения, что чип будет не только поддерживать технологию параллельной обработки данных Hyper-Threading, но также, возможно, будет способен обрабатывать большее число потоков данных. Предположительно, будет поддерживаться новая технология LaGrande (призванная обеспечить повышенную безопасность при перечдаче данных с использованием стойкой аппаратной криптографии).

Сколько транзисторов будет входить в состав процессора Nehalem? Вопрос в настоящее время открыт. Хотя, если следовать закону Мура, Nehalem, выполненный с соблюдением норм 90 нм техпроцесса, будет содержать от 150 млн. до 200 млн. транзисторов. Тактовые частоты к тому времени вполне могут вырасти до 7 — 8 ГГц.

Foster – кодовое наименование ядра и процессоров Pentium 4 в серверном варианте, построенных по идеологии и архитектуре Willamette. Тактовая частота – 100 МГц при передаче данных с частотой 400 МГц. Как и в случае с Cascades, объем кэша L2 остался тем же, что у Willamette. Основные отличия Foster от обычных Pentium 4 на ядре Willamette заключаются в поддержке двухпроцессорных конфигураций и использовании разъема Socket 603. Тактовая частота первых процессоров Xeon на ядре Foster начинается от 1,7 ГГц. Основу систем составят чипсеты i860 и GC-HE от ServerWorks. В 2002 г. планируется перевод архитектуры на технологию 0,13 мкм. Тогда же будет выпущена и новая версия Foster, содержащая дополнительный кэш третьего уровня.

Prestonia – кодовое наименование ядра и процессоров Pentium 4 в серверном варианте, созданных по технологии 0,13 мкм. Продолжение линейки Xeon. Микроархитектура NetBurst. Разработка ведется на основе ядра Foster, которое и будет заменено этим новым ядром в будущих процессорах Xeon. Основу систем составит специальный чипсет Plumas. Выпуск запланирован на первую половину 2002 года. Частота первых моделей процессора – 2,20 ГГц.

Gallatin – кодовое наименование ядра и процессоров, 0,13 мкм – развитие ядра Foster. Выход запланирован на конец 2002 г.

Merced – кодовое наименование ядра и первого процессора архитектуры IA-64, аппаратно совместим с архитектурой IA-32. Включает трехуровневую кэш-память объемом 2-4 Мбайт. Производительность примерно в три раза выше, чем у Tanner. Технология изготовления – 0,18 мкм, частота ядра – 667 МГц и выше, частота шины – 266 МГц. Превосходит Pentium Pro по операциям FPU в 20 раз. Физический интерфейс – Slot M. Поддерживает MMX и SSE. Официальное наименование – Itanium.

Itanium – торговая марка, под которой анонсирован 64-разрядный процессор, ранее известный под кодовым наименованием Merced.

McKinley – кодовое наименование ядра и моделей второго поколения процессоров архитектуры IA-64. Тактовая частота ядра процессоров начинается с 1 ГГц. Предполагается, что производительность, по сравнению с Merced, возрастет вдвое, а пропускная способность шины данных, имеющей результирующую частоту 400 МГц, – втрое. McKinley будет иметь увеличенные по сравнению с Merced объем кэша второго уровня и скорость работы. Потребляемая мощность составит 150 Вт. Физический интерфейс – Slot M. Возможно, будет введена поддержка SSE2.

Itanium 2 – торговая марка, под которой анонсирован 64-разрядный процессор, ранее известный под кодовым наименованием McKinley. Itanium 2 работают на частоте 1 ГГц, обладают 3 Мб кэша L3.

Madison – преемник McKinley. Планируется к выходу в середине 2003 г. Построен по медной, 0,13 мкм технологии. Тактовые частоты первых процессоров Madison и Deerfield на момент начала поставок составят как минимум, 1,5 ГГц, при этом, как известно, оба чипа будут обладать 6 Мб кэша L3 и будут изготавливаться с нормами 0,13 мкм техпроцесса — впервые для чипов класса Itanium.

Deerfield – кодовое наименование ядра и процессоров. Выход ожидается в 2003 году. Производиться будут по медной, 0,13 или 0,1 мкм технологии фирмы Motorola с использованием изоляции с низким числом k и SOI (HiP7). Ядро является преемником Foster. Процессоры рассчитаны на Slot M и позиционируются как недорогие процессоры архитектуры IA-64 для рабочих станций и серверов среднего уровня. Возможно, процессоры, созданные на основе ядра Deerfield, станут high-end процессорами пользовательского рынка. Тактовые частоты первых процессоров Madison и Deerfield на момент начала поставок составят как минимум, 1,5 ГГц, при этом, как известно, оба чипа будут обладать 6 Мб кэша L3 и будут изготавливаться с нормами 0,13 мкм техпроцесса — впервые для чипов класса Itanium.

«enhanced Madison» — по последним данным, теперь в роадмэпе появились две новинки — так называемый «enhanced Madison» и двухядерный чип Montecito (ранее упоминалось лишь название процессора). Под чипом «enhanced Madison», или Madison 9M, который готовится к выпуску в 2004 году, специалисты компании подразумевают новую версию процессора с расширенным до 9 Мб размером кэша L3.

Montecito — двухядерный чип на базе архитектуры IA-64. Об архитектуре процессора Montecito, который увидит свет в 2005 году, пока что толком ничего неизвестно, разве что только тот факт, что он станет первым из семейства Itanium, производимым с соблюдением норм 90 нм техпроцесса. Представители Intel также подчеркнули, что все новые процессоры, которые появятся после Itanium 2, будут иметь ту же базовую корпусную разводку PAC611 и поддерживать те же протоколы шин, что гарантирует преемственность новых поколений серверных систем, как минимум, на два ближайших года.

AMD

K5 – первые процессоры AMD, анонсированные в качестве конкурента Pentium. Разъем – Socket 7. Подобно Cyrix 6×86, использовали PR-рейтинг с показателями от 75 до 166 МГц. При этом используемая частота системной шины составляла от 50 до 66 МГц. Кэш-память L1 – 24 Кбайт (16 Кбайт для инструкций и 8 Кбайт для данных). Кэш-память L2 расположена на материнской плате и работает на частоте процессорной шины. К5 степпинг 0 имел кодовое имя «SSA5», а у степпингов 1, 3, 5 было кодовое имя «5k86». Стоит отметить, что до 5k86 существовал процессор AMD 5×86-P75, где P75 это рейтинг, а реальная частота была его была 133 МГц (33 x 4), процессор была рассчитан под Socket 5.

K6 – процессоры, анонсированные в качестве конкурента Pentium II. Первые модели производились по технологии 0,35 мкм, в дальнейшем – 0,25 мкм (кодовое имя «Little Foot»). Процессоры работали на частоте от 166 до 233 МГц. Были созданы на базе дизайна процессора 686 от приобретенной AMD компании NexGen. По сравнению со своими предшественниками получили модуль MMX, увеличился объем кэша L1 – до 64 Кбайт (по 32 Кбайт для инструкций и данных).

K6-2 – следующее поколение K6 с кодовым именем «Chomper». Процессор вышел в мае 1998 года, основным усовершенствованием является поддержка дополнительного набора инструкций 3DNow! и частоты системной шины 100 МГц. Кэш-память L1 – 64 Кбайт (по 32 Кбайт для инструкций и данных), кэш L2 находится на материнской плате и может иметь объем от 512 Кбайт до 2 Мбайт, работая на частоте шины процессора. Первые модели имели частоту ядра 266 МГц.

K6-2+ – одни из последних Socket 7 процессоров AMD. И первые Socket 7 процессоры, сделанные с использованием 0,18 мкм техпроцесса.

K6-III (Sharptooth) – первые процессоры от AMD, имеющие кэш-память L2, объединенную с ядром. Последние процессоры, сделанные под платформу Socket 7. Фактически, представляют собой просто K6-2 с 256 Кбайт кэш-памятью L2 на чипе, работающей на той же частоте, что и ядро процессора. Кэш-память L1 имеет объем 64 Кбайт (по 32 Кбайт для инструкций и данных), кэш-память L3 находится на материнской плате и может иметь объем от 512 Кбайт до 2 Мбайт, работая на частоте шины процессора. Первые модели, выпущенные в феврале 1999 года, были рассчитаны на 400 и 450 МГц.

Argon – кодовое название использованного в K7 ядра.

K7 – первые процессоры, архитектура и интерфейс которых отличаются от Intel. Объем кэш-памяти L1 – 128 Кбайт (по 64 Кбайт для инструкций и данных). Кэш-память L2 – 512 Кбайт, работающая на 1/2, 2/5 или 1/3 частоты процессора. Процессорная шина – Alpha EV-6. Тактовая частота шины – 100 МГц с передачей данных при 200 МГц. Поддерживаемые наборы инструкций – MMX и расширенный по сравнению с K6-III набор 3DNow!. Форм-фактор – Slot A. Получил наименование Athlon. Были выпущены модели 500-1000 МГц. Ядро K75 – алюминиевые соединения, K76 – медные.

Magnolia – кодовое название 1 ГГц Athlon с ядром K76 до его выхода.

Thunderbird – наименование ядра процессоров Athlon, выпущенных по технологии 0,18 мкм с использованием технологии медных соединений. На чипе интегрированы 256 Кбайт полноскоростного exclusive кэша L2. В качестве переходного варианта некоторое время выпускался в форм-факторе Slot A. Однако основным форм-фактором является Socket A. Модель с частотой 1,33 ГГц демонстрирует большую производительность на офисных задачах, чем процессор Intel Pentium 4 с частотой 1,7 ГГц. Технологический потенциал ядра Thunderbird предоставляет возможность выпуска изделий с частотой до 1,5 ГГц.

Athlon – наименование процессоров, созданных на основе архитектур K7, К75, К76, Thunderbird в вариантах Slot A и Socket A (Socket 462). Высокопроизводительные процессоры, ориентированные на сектор компьютеров High-End.

Athlon XP – наименование процессоров, созданных на основе ядра Palomino, Socket A (Socket 462).

Duron – наименование линейки процессоров, ориентированных на сектор компьютеров Low-End. Являются конкурентами процессоров Celeron, однако обладают меньшей ценой и большей производительностью при равных рабочих частотах. Построены на варианте ядра Thunderbird с урезанной до 64 Кбайт кэш-памятью L2. Выпускаются только в форм-факторе Socket A.

Spitfire – кодовое наименование ядра и процессоров Duron.

Mustang – серверный вариант Athlon. Кэш-память L2 – 1-2 Мбайт, интегрированная в чип процессора. Процессор рассчитан на использование шины 266 МГц и памяти DDR SDRAM. Выпуск отменен.

Corvette – кодовое наименование мобильного варианта ядра Mustang. Переименован в Palomino.

Palomino – кодовое наименование ядра процессоров Athlon, пришедшего на смену архитектуре Thunderbird. Предполагаются незначительные архитектурные изменения с целью улучшения скоростного потенциала процессора. Например, в составе ядра используются улучшенный блок предсказания ветвлений и аппаратная предварительная выборка из памяти. Процессоры на новом ядре не будут поддерживать SSE2. Информация о том, что конвейер в ядре Palomino будет содержать большее число ступеней, не подтверждается. Palomino будет быстрее, чем Thunderbird, работающий на той же частоте; используя этот факт AMD ввела новый рейтинг на основе разработанной технологии QuantiSpeed, по которому, например 1,733 МГц процессор Athlon XP получил рейтинг 2100+. Socket A останется основным процессорным гнездом еще на 2-3 года, фирма AMD не намерена менять физический интерфейс своих процессоров. Palomino будет работать на материнских платах, поддерживающих шину EV6 с частотой 266 МГц. В производстве процессоров будет использована технология медных соединений. Младшие модели рассчитаны на тактовую частоту ядра 1,533 ГГц и выше.

Morgan – кодовое наименование ядра процессоров Duron. Отличается от Palomino не только объемом L2, но и тем, что будет производиться по технологии с использованием алюминиевых соединений.

Thoroughbred – улучшенная версия Palomino, созданная по технологии 0,13 мкм. Предполагаемая тактовая частота – 2 ГГц. Срок выхода – 2002 г.

Appaloosa – улучшенная версия Morgan, созданная по технологии 0,13 мкм. Срок выхода – 2002 г.

Barton – версия Thoroughbred, улучшенная использованием технологии SOI (SOI – silicon-on-insulator – «кремний-на-изоляторе»). Использование этой технологии позволяет увеличить тактовые частоты приблизительно на 20% и уменьшить при этом энергопотребление.

Hammer – семейство 64-разрядных процессоров. В него входят ClawHammer и SledgeHammer. Семейство 64-разрядных процессоров Hammer базируется на архитектуре K7, в которую добавлены 64-разрядные регистры и дополнительные инструкции для работы с этими регистрами, а также новые серверные инструкции. Возможно использование технологии SOI. Решается вопрос о поддержке SSE2.

ClawHammer – первый 64-разрядный процессор AMD. В отличие от Itanium, этот процессор будет ориентирован главным образом на 32-разрядные инструкции. Одновременно с его выходом ожидается появление новой шины HyperTransport (Lightning Data Transport – LDT), используемой для связи с процессорами и устройствами ввода/вывода. LDT должна стать не заменой, а дополнением к системной шине EV6 или EV7. Обеспечена поддержка до двух процессоров. Предполагаемая скорость – 2 ГГц и выше. Технология производства – 0,13 мкм, SOI. Срок выхода – 2002 г.

SledgeHammer – серверный вариант ClawHammer. Обеспечена поддержка до восьми процессоров. Технология производства – 0,13 мкм, SOI. Предполагаемый срок выхода – 2002 г.

Cyrix

6×86 – наименование процессоров Cyrix. Для оценки производительности относительно процессора Pentium использовался P-Rating, показывающий частоту, на которой пришлось бы работать процессору Pentium для достижения такой же производительности. P-Rating 6×86 составлял от 120 до 200 МГц. Кэш первого уровня – 16 Кбайт. Частота шины процессора – от 50 до 75 МГц. Разъем – Socket 5 и Socket 7.

M1 – то же, что и 6×86.

MediaGX – ответвление в семействе процессоров Cyrix. Первый процессор, сделанный по идеологии PC-on-a-chip. К ядру 5х86 были добавлены контроллеры памяти и PCI, в чип интегрирован видеоускоритель с кадровым буфером в основной памяти PC. В последних моделях используется ядро 6×86. В чипе-компаньоне реализован мост PCI-ISA и интегрирован звук. PR-рейтинг от 180 до 233 МГц, кэш-память L1 – 16 Кбайт. Производился по техпроцессу 0,5 мкм.

6x86MX – переработанный с целью достижения большей производительности вариант 6×86. Кэш-память L1 – до 64 Кбайт. В состав архитектуры ядра был добавлен блок MMX. Появилась поддержка раздельного питания. Частота шины процессора – от 60 до 75 МГц. PR-рейтинг – от 166 до 266 МГц. Процессоры 6х86MX делала и компания IBM. Их изделия 6х86MX имели рейтинг от 166 до 333 и были рассчитаны на частоту шину 66, 75, 83 МГц. Позднее, по маркетинговым соображениям, Cyrix переименовал свои процессоры в MII, а IBM до конца сотрудничества продавала их под маркой 6x86MX.

MII – последний процессор Cyrix, начал производиться в марте 1998 года. Кэш-память L1 – 64 Кбайт (единый), L2, как обычно для Socket 7, находится на материнской плате и имеет объем от 512 Кбайт до 2 Мбайт, работая на частоте системной шины. Поддерживаемые наборы инструкций – MMX. Использует PR-рейтинг. При производстве применялся техпроцесс 0,25 мкм.

Cayenne – кодовое наименование ядра, используемого в Gobi и MediaPC.

Gobi (MII+) – процессор, рассчитанный на платформу Socket 370. Поддерживаемые наборы инструкций – MMX, 3D Now!. Значительно переработан блок операций с числами с плавающей запятой. Кэш-память L1 – 64 Кбайт, кэш-память L2 – 256 Кбайт на чипе, работающие на полной частоте ядра процессора.

Rise

mP6 – первые процессоры компании Rise. Предназначены для ноутбуков, использующих Socket 7. Отличаются очень малым тепловыделением. Кэш-память L1 – 16 Кбайт (по 8 Кбайт для данных и инструкций), L2 – от 512 Кбайт до 2 Мбайт, расположена на материнской плате, работает на частоте шины процессора. Поддерживается дополнительный набор инструкций MMX. При оценке производительности своих процессоров Rise, как и Cyrix, использует PR-рейтинг, составляющий от 166 до 366 МГц.

mP6 II – процессоры, отличающиеся от своих предшественников mP6 тем, что в чип интегрирована кэш-память L2 объемом 256 Кбайт. Была обещана поддержка SSE, производительность от PR-200 и выше. Однако в августе 1999 было объявлено об отмене планов по выходу процессора из-за значительного удорожания после добавления L2 в чип.

Tiger – mP6 II для платформы Socket 370. Кэш-память L1 – 16 Кбайт, L2 – 256 Кбайт, работающая на тактовой частоте ядра процессора. Выпуск отменен.

Centaur

Winchip С6 – процессоры, ориентированные на дешевые ПК. По производительности уступают своим конкурентам. Шина – 60, 66, 75 МГц, платформа – Socket 7. Технология – 0,35 мкм. Процессоры поддерживают набор инструкций MMX. Вышел в октябре 1997 г., работал на частотах от 180 до 240 МГц.

Winchip-2 – процессоры, производимые по техпроцессу 0,25 мкм. Кэш-память L1 – 64 Кбайт (по 32 Кбайт для инструкций и данных), кэш-память L2 – 512-2048 Кбайт находится на материнской плате. Процессорами поддерживаются наборы инструкций MMX и 3DNow!. Платформа – Socket 7. От Winchip С6 отличаются значительно ускорившейся работой с числами с плавающей запятой. Появилась поддержка частоты системной шины 100 МГц. Первый процессор появился в ноябре 1998 года, частоты от 200 до 300 МГц.

Winchip-2A – процессоры Winchip-2 с исправленной ошибкой в реализации 3DNow!.

Winchip-3 – процессоры с кэш-памятью L1 объемом 64 Кбайт (по 32 Кбайт для инструкций и данных) и кэш-памятью L2 объемом 128 Кбайт на чипе, работающей на частоте ядра процессора. Кэш-память L3 – 512-2048 Кбайт, расположена на материнской плате. Планировались к выходу в первой половине 1999 г. с частотой 300 МГц и выше. В связи с покупкой Centaur фирмой VIA выход процессоров был отменен.

Winchip-4 – процессоры, выпуск которых планировался в конце 1999 г. Частоты – 400-500 МГц, а при переходе на 0,18 мкм техпроцесс – 500-700 МГц.

VIA

Samuel – кодовое наименование процессоров и ядра. Основой послужило ядро Winchip-4, доставшееся VIA в наследство от Centaur. Работают на частотах 500-700 МГц. Производятся National Semiconductors и TSMC с использованием 0,18 мкм техпроцесса. Процессоры используют набор SIMD 3D Now!. Форм-фактор – Socket-370. Кэш-память L1 – 128 Кбайт. Получили наименование Cyrix III. Тактовая частота ядра – 500-667 МГц.

C5A – то же, что и Samuel.

Samuel 2 – кодовое наименование процессоров и ядра, разработанных группой Centaur. Кэш-память L2 объемом 64 Кбайт. Тактовая частота ядра – 667-800+ МГц. Частота шины процессора 100/133 МГц, форм-фактор – Socket 370.

C5B – то же, что и Samuel 2.

Matthew – кодовое наименование интегрированных процессоров. Имеют в своем составе ядро Samuel2 с интегрированным видео и компонентами North Bridge.

Ezra – кодовое наименование процессоров и ядра. Совместная разработка групп Cyrix и Centaur. Первое действительно новое ядро VIA. Процессоры с поддержкой SSE. Кэш-память L1 – 128 Кбайт, кэш-память L2 – 64 Кбайта. Технология – 0,15 мкм c переходом на 0,13 мкм. Тактовая частота ядра – 750 МГц с последующим ростом выше 1 ГГц. TSMC подтвердила информацию о том, что она изготовила процессор Ezra с частотой 1 ГГц.

C5C – то же, что и Ezra.

Ezra-T – кодовое наименование процессоров и ядра. Совместимость по уровню сигналов с Tualatin, что позволяет их использовать в материнских платах с чипсетами, созданными под Tualatin. Технологический процесс 0,13 мкм, алюминиевые соединения. Кэш память L1 – 128 Кбайт, L2 – 64 Кбайт. Имеют меньшее, по сравнению с Ezra, энергопотребление. Поддержка MMX, 3D Now!. Тактовая частота ядра – от 800 МГц (6х133 МГц). Выпуск запланирован на конец 2001 г.

Nehemiah – кодовое наименование процессоров и ядра. Рассчитаны на работу при частотах 1,2+ ГГц. Кэш-память L1 – 128 Кбайт, кэш-память L2 – 256 Кбайт. Будут поддерживать инструкции Streaming SIMD Extensions (SSE) и 3DNow!. Конвейер в 17 стадий, напряжение питания ядра 1,2 В, техпроцесс 0,13 мкм с использованием медных соединений, площадь кристалла – 72 кв. мм. Выход запланирован на 2002 г.

C5X – то же, что и Nehemiah.

Esther – кодовое наименование процессоров и ядра. Кэш-память L1 – 128 Кбайт, L2 – 256 Кбайт. Конвейер 17 ступеней. Тактовая частота ядра 2 ГГц. Запланирован на вторую половину 2002 года.

C5Y – то же, что и Esther.

SiS

550 – базовая модель процессоров серии 550. Основой послужило ядро mP6 от Rise с интегрированным видео и компонентами чипсета.

551 – модель процессора, созданная на основе SiS 550, с поддержкой флеш-карт и шифрования.

552 – модель процессора, созданная на основе SiS 551, с поддержкой аудио- и видеозахвата.

Transmeta

Crusoe – линейка процессоров, ориентированных на мобильные системы. Состоит из моделей TM3200 (L2=0), TM5400 (L2=256 Кбайт), TM5500 (L2=256 Кбайт), TM5600 (L2=512 Кбайт), TM5800 (L2=512 Кбайт), имеющих в своем составе интегрированные компоненты North Bridge. Характеризуются низким энергопотреблением.

Astro – кодовое имя высокопроизводительных процессоров со сверхнизким уровнем энергопотребления. Рабочая частота достигнет 1,4 ГГц при 0,5 Вт. В основе 256-разрядная архитектура. Выпуск моделей запланирован на 2002 г.

Compaq

Alpha EV68 – кодовое имя высокопроизводительных процессоров с архитектурой, отличной от традиционной х86. Техпроцесс 0,18 мкм. Базируется на ядре Alpha EV6. Более 15 млн. транзисторов. Модель 1 ГГц объявлена в 2001 г.

Alpha EV7 – кодовое имя высокопроизводительных процессоров. Техпроцесс 0,18 мкм с использованием медных соединений. Базируется на ядре Alpha EV6. Более 100 млн. транзисторов, напряжение питания ядра 1,5 В, мощность тепловыделения 100 Вт, частота 1,2-1,3 ГГц, до 1,75 Мбайт L2, корпус с 1439 контактами. Возможно использование интегрированного контроллера памяти. Выпуск моделей запланирован на 2002 г. В связи с покупкой фирмой Intel в 2001 г. подразделений, патентов и технологий, связанных с процессорами Alpha EVxx, процессоры Alpha EV7 или Alpha EV8, возможно, будут последними разработками этого направления.

Alpha EV8 – кодовое имя высокопроизводительных процессоров с архитектурой, отличной от традиционной х86. Техпроцесс 0,13 мкм с использованием SOI. Более 250 млн. транзисторов, суперскалярное ядро (до 8 инструкций за 1 такт), мощность тепловыделения – 150 Вт, частота от 1,4 ГГц, кэш L2 будет составлять ориентировочно 2 Мбайт, корпус с 1800 контактами. Выпуск моделей запланирован на 2004 г. Возможно, последняя разработка этого направления.

Alpha EV9 – кодовое имя высокопроизводительных процессоров с архитектурой, отличной от традиционной х86. Техпроцесс 0,10 мкм, 500 млн. транзисторов, частота 2-3 ГГц. Выпуск моделей был запланирован на 2006 г.

Alpha EV10 – кодовое имя высокопроизводительных процессоров с архитектурой, отличной от традиционной х86. Техпроцесс 0,07 мкм, 1,5 млрд транзисторов, частота 3-4 ГГц. Выпуск моделей был запланирован на 2008 г.

QuickBlade – серверная архитектура со сверхвысокой плотностью монтажа. В основе данной архитектуры запланировано использование процессоров Intel со сверхнизким напряжением питания.

При подготовке статьи были использованы материалы книги «Устройство мультимедийного компьютера» СПб: Питер, 2001, 512 с. (Серия «Анатомия ПК«)

Виды и назначение процессора

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

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

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

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

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

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

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

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

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

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

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

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

Как правильно сделать выбор нужного устройства? Чтобы не ошибиться и приобрести именно то, что Вам необходимо, следует придерживаться таких параметров: количество ядер, высокой тактовой частоты, размера системного КЭШа, частоты системной шины, типа кулера. От количества ядер будет зависеть тот факт, — сможет ли процессор потянуть современные игры или утилиты, которые предназначены для работы с моделями 3D.

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

Важен ли производитель?

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

Intel Core I3 представляет собой процессор, возможности и назначение которого, были намного больше аналогичных моделей недавнего времени. Двухъядерный процессор предназначался для программного компьютера. Устройство было оснащал контроллер оперативной памяти, встроенный внутри. Следует сказать, что в таких процессорах используют встроенный контроллер PCI Express 2.0 х 16, благодаря которому графический ускоритель подключается к CPU. Модели такого типа используют стандартную тактовую частоту – 133 МГц.

Процессоры Intel Core i5 отличаются высокой интеллектуальной производительностью. Ими хорошо пользоваться при необходимости реализовать различные ресурсоемкие приложения. Данные устройства наделены возможностью автоматически распределять необходимую мощность процессоров. Следует сказать, что в этой серии кроме двухъядерных стали производить и четырехядерные модели. Сами же устройства пользуются популярностью и сегодня. В процессоры встроен двухканальный контролер с напряжением – 1.6 В. В данном процессоре применяется такой же контролер. К чипу подключается видеокарта, режим которой х16. ЕЕ можно подключать в моделях с встроенным графическим ядром GMA HD.

Технологию Turbo Boost решили реализовать для обеспечения оптимального запуска ресурсоемких предложений. Тактовая частота здесь осуществляется автоматически.

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

8.2.2. Назначение и структура простейшего процессора.

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

Центральный процессор в общем случае
содержит в себе:

  • арифметико-логическое устройство;

  • шины данных и шины адресов;

  • регистры;

  • счетчики команд;

  • кэш — очень быструю память малого объема,

  • математический сопроцессор чисел с
    плавающей точкой.

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

Основные характеристики процессора :

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

  • Тактовая частота — определяет число
    тактов работы процессора в секунду

  • Разрядность — определяет размер
    минимальной порции информации, называемой
    машинным словом

  • Адресное пространство — разрядность
    адресной шины, то есть максимальный
    объём оперативной памяти, которая может
    быть установлена на компьютере

8.2.3. Принцип действия процессора.

Процессор является главным
элементом ЭВМ. Он прямо или косвенно
управляет всеми устройствами и процессами,
происходящими в ЭВМ.

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

Кроме повышения тактовой
частоты, увеличение производительности
процессоров достигается разработчиками
менее очевидными приемами, связанными
с изобретением новых архитектур и
алгоритмов обработки информации.
Некоторые из них рассмотрим на
примере процессора Pentium (Р5) и последующих
моделей.

Перечислим основные особенности
процессора Pentium:

  • конвейерная обработка информации;

  • суперскалярная архитектура;

  • наличие раздельных кэш-памятей для
    команд и данных;

  • наличие блока предсказания адреса
    перехода;

  • динамическое исполнение программы;

  • наличие блока вычислений с плавающей
    точкой;

  • поддержка многопроцессорного режима
    работы;

  • наличие средства обнаружения ошибок.

Термин «суперскалярная архитектура»
означает, что процессор содержит более
одного вычислительного блока. Эти
вычислительные блоки чаще называют
конвейерами. Заметим, что первая
суперскалярная архитектура была
реализована в отечественной ЭВМ
«Эльбрус-1» (1978 г.).

Наличие в процессоре двух конвейеров
позволяет ему одновременно выполнять
(завершать) две команды (инструкции).

Каждый конвейер разделяет
процесс выполнения команды на несколько
этапов (например, пять):

  • выборка (считывание) команды из ОЗУ или
    кэш-памяти;

  • декодирование (дешифрация) команды,
    т. е. определение кода выполняемой
    операции;

  • выполнение команды;

  • обращение к памяти;

  • запоминание полученных результатов в
    памяти.

Для реализации каждого из
перечисленных этапов (каждой операции)
служит отдельное устройство—
ступень. Таким образом, в каждом
конвейере процессора Pentium имеется пять
ступеней.

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

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

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

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

В качестве примера рассмотрим
процесс выполнения команды, у которой
длительности выполнения этапов составляют
60, 30, 40, 50 и 20 нс. Примем дополнительные
расходы на организацию конвейерной
обработки равными 5 нс.

Если бы не было конвейеризации, то на
выполнение одной команды потребовалось

60 + 30 + 40 + 50 + 20 = 200 нс.

Если же используется конвейерная
организация, то длительность такта
должна быть равна длительности самого
медленного этапа обработки с добавлением
«накладных» расходов, т.е.
60 + 5 = 65 нс. Таким образом, полученное
в результате конвейеризации сокращение
времени выполнения команды составит
200/65»3,1 раза.

Заметим, что время выполнения
конвейером одной команды составляет 5
× 65 =
325 нс. Эта величина существенно
больше 200 нс — времени выполнения
команды без конвейеризации. Но
одновременное выполнение сразу пяти
команд дает среднее время завершения
одной команды 65 нс.

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

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

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

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

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

В разветвляющихся алгоритмах
выбор команды определяется результатами
проверки условий ветвлений. Если
ждать окончания вычислительного процесса
в точке ветвления и затем выбирать из
ОЗУ нужную команду, то неизбежно появятся
потери времени из-за непроизводительного
простоя процессора (считывание команды
из ОЗУ идет медленно).

Блок предсказания адреса перехода
работает на опережение и пытается
заблаговременно предсказать адрес
перехода, чтобы заранее перенести нужную
команду из медленной оперативной памяти
в специальный быстрый буфер перехода
BTB (Branch Target Buffer).

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

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

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

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

Для повышения производительности
в новых конструкциях процессоров создают
две системные шины, работающие с разными
тактовыми частотами. Быстрая шина
используется для работы с кэш-памятью
второго уровня, а медленная — для
традиционного обмена информацией с
другими устройствами, например ОЗУ.
Наличие двух шин исключает конфликты
при обмене информацией процессора с
основной памятью и кэш-памятью второго
уровня, находящейся за пределами
кристалла процессора.

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

В процессоре Pentium
Pro (P6) применен
новый подход к порядку выполнения
команд, последовательно расположенных
в ОЗУ.

Новый подход заключается в
выполнении команд в произвольном порядке
по мере их готовности (независимо от
порядка расположения в ОЗУ). Однако
конечный результат формируется всегда
в соответствии с исходным порядком
команд в программе. Такой порядок
выполнения команд называется динамическим
или опережающим.

Рассмотрим в качестве примера следующий
фрагмент учебной программы, записанной
на некотором (вымышленном)
машинно-ориентированном языке.

r1 ¬mem[r4] Команда 1

r3 ¬r1 + r2 Команда 2

r5 ¬r5 + 1 Команда 3

r6 ¬r6 – r7 Команда 4

Символами r1…r7
обозначены регистры общего назначения
(РОН), которые входят в блок регистров
процессора.

Символом mem[r4]обозначена
ячейка памяти ОЗУ.

Прокомментируем записанную программу.

Команда 1: записать в РОН r1 содержимое
ячейки памяти ОЗУ, адрес которой указан
в РОН r4.

Команда 2: записать в РОН r3 результат
сложения содержимого регистров r1 и r2.

Команда 3: прибавить к содержимому
регистра r5 единицу.

Команда 4: уменьшить содержимое РОН r6
на содержимое регистра r7.

Предположим, что при выполнении
команды 1 (загрузка операнда из памяти
в регистр общего назначения r1)
оказалось, что содержимое ячейки памяти
mem [r4]
отсутствует в кэш-памяти процессора
(произошел промах, нужный операнд не
был заранее доставлен в буфер из ОЗУ).

При традиционном подходе
процессор перейдет к выполнению команд
2, 3, 4 только после того, как данные из
ячейки mem[r4]
основной памяти поступят в процессор
(точнее, в регистр r1). Так
как считывание будет происходить из
медленно работающей оперативной памяти,
этот процесс займет достаточно много
времени (по меркам процессора). Все время
ожидания этого события процессор будет
простаивать, не выполняя полезной
работы.

В приведенном примере процессор
не может выполнить команду 2 до завершения
команды 1, так как команда 2 использует
результаты выполнения команды 1. В
то же время процессор мог бы заранее
выполнить команды 3 и 4, которые не зависят
от результата выполнения команд 1 и 2.

В подобных случаях процессор Р6 работает
иначе.

Процессор Р6 не ждет окончания
выполнения команд 1 и 2, а сразу переходит
к внеочередному выполнению команд 3 и
4. Результаты опережающего выполнения
команд 3 и 4 сохраняются и извлекаются
позднее, после выполнения команд 1 и 2.Таким образом, процессор Р6
выполняет команды в соответствии с их
готовностью к выполнению, вне зависимости
от их первоначального расположения в
программе.

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

В процессоре имеется устройство
самотестирования, которое автоматически
проверяет работоспособность большинства
элементов процессора.

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

Единицами измерения быстродействия
процессоров (и ЭВМ) могут служить:

  • МИПС (MIPS—
    Mega Instruction
    Per Second)—
    миллион команд (инструкций) над числами
    с фиксированной точкой за секунду;

  • МФЛОПС (MFLOPS—
    Mega Floating
    Operation Per
    Second)—
    миллион операций над числами с плавающей
    точкой за секунду;

  • ГФЛОПС (GFLOPS—
    Giga Floating
    Operation Per
    Second)—
    миллиард операций над числами с плавающей
    точкой за секунду.

Имеются сообщения о самом
быстром в мире компьютере ASCI
White (корпорация IBM),
быстродействие которого достигает 12,3
ТФЛОПС (триллиона операций).

Неофициальная документация CP / NET

3.2.6 Защита паролем под CP / NET

Файловая система MP / M II ограничивает доступ к файлам непривилегированных
пользователей через защиту паролем для отдельных файлов. Есть
три уровня парольной защиты файлов:

  • Доступ запрещен без пароля.
  • Файл можно прочитать без пароля, но нельзя
    написано.
  • Файл можно читать и записывать без пароля, но
    не удалено.

Используйте служебную программу SET для назначения паролей в MP / M II. В
процедура назначения паролей описана в MP / M II
Руководство пользователя операционной системы. CP / NET не поддерживает
назначение паролей по сети.

CP / NET, однако, позволяет прикладной программе отправлять
Пароль по сети при открытии файла. Это позволяет
пользователь на запросчике CP / NET самая простая форма поддержки паролей:
работа с сетевыми файлами, которые ранее были паролем
защищен.

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

CP / NET также поддерживает функцию 106 (установить пароль по умолчанию).
Функция 106 предоставляет пароль, с помощью которого все защищенные файлы
проверяются, если пароль не указан или если пароль
неверно. Эта функция может избавить приложение от
обязанность постоянно анализировать пароли до первых восьми байтов
текущего буфера DMA.

CCP.SPR не поддерживает возможности MP / M II по поставке
пароли, когда пользователь вводит командную строку.Из-за этого делаем
не защищать паролем COM-файлы, если не установлен пароль по умолчанию.
предоставляется пользователю.

Поскольку CP / M 2.x не поддерживает никакой защиты файлов,
пароли игнорируются при обращении к файлам на дисках, локальных для
Запросчик CP / NET.

3.2.7 Список сетевых и консольных устройств под CP / NET

В дополнение к 16 дисковым устройствам, CP / NET позволяет пользователю
сопоставьте список и консольные устройства в сети.Номер
запрашивающие могут совместно использовать принтер, или консоль может быть логически
присоединен к полностью независимой системе, работающей под управлением CP / NET или
CP / NOS. Такой системе нужен только сетевой интерфейс для поддержки
полная возможность CP / M.

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

Список устройств ввода-вывода обрабатывается следующим образом: когда
Вызов BIOS выполняется для LISTOUT, NDOS его перехватывает. NDOS исследует
таблица конфигурации, чтобы определить, является ли список устройств
локально в системе CP / NET или в сети. Если список устройств
local вызов передается в BIOS без изменений.

Если устройство списка подключено к сети, NDOS сохраняет
символ для занесения в специальный буфер, расположенный непосредственно под
таблица конфигурации инициатора запроса.Когда сохранено 128 символов,
NDOS отправляет на сервер логическое сообщение List Output после
которому сопоставлено устройство списка. Этот процесс буферизации улучшает
производительность системы, потому что односимвольные сообщения,
сетевые коммуникационные интерфейсы не нужно пересылать между каждым
запрашивающая сторона и сервер.

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

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

Символ конечного списка может происходить из одного из четырех источников:

  1. CCP.SPR отправляет символ конечного списка каждый раз, когда
    вошел и обнаруживает, что список в процессе. Этот
    вызывает конечный список каждый раз, когда программа завершается.
  2. Приложение может выдать конечный список для завершения своего собственного
    листинг.
  3. Каждый раз, когда CTRL-P выключается, консоль NDOS
    Подпрограмма ввода обнаруживает это и выдает собственный конечный список.
  4. Вы можете использовать утилиту ENDLIST для завершения листинга.

Сервер может обрабатывать листинг в двух разных режимах. Если модуль
SPOOL.RSP присутствует в MP / M II, сервер принимает весь вывод списка
сообщения и записывает их в специальный файл диспетчера очереди печати. Когда
сервер обнаруживает конечный список, он вставляет символ конца файла CTRL-Z
в сообщение, закрывает файл диспетчера очереди печати и направляет SPOOL
процесс, чтобы начать печать файла на соответствующем устройстве списка

Если процесс SPOOL не резидентен в MP / M II, сервер,
после получения исходного сообщения о выходе из списка выполняет явное
функция прикрепления списка на указанном устройстве списка.Это предотвращает
другие запрашивающие от использования устройства списка до тех пор, пока запрашивающий
обслуживание завершено. Все остальные запрашивающие
приостановлены или получают сетевые ошибки, если они пытаются использовать тот же список
устройство. Когда сервер наконец получает символ конечного списка, он
выдает функцию отсоединения списка, освобождая устройство списка для другого
процесс.

Оба режима сервера имеют потенциальные недостатки. Принтер, который
использует CTRL-Z как escape-последовательность для специальных функций печати
нельзя использовать с SPOOL.RSP. Использование CTRL-Z вызывает диспетчер очереди печати
преждевременно завершить задание на печать, предполагая, что конец файла
было встречено. С другой стороны, явное прикрепление и
отсоединение списка устройств может вызвать сетевую ошибку, если запрашивающий
пытается прикрепить список устройств, которые уже используются, имеет
сервер будет приостановлен и в конечном итоге истечет время ожидания.

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

Как и в случае вывода списка, NDOS перехватывает вызовы BIOS, связанные с консолью.
NDOS определяет, является ли консоль локальной или сетевой. Если
консоль является локальной, никаких действий не предпринимается, а локальный BIOS
вошел. Если консоль подключена к сети, необработанная или нефильтрованная консоль
Сообщение ввода / вывода отправляется на сервер. Сервер выполняет ввод / вывод
функция и отправляет ответ запрашивающей стороне.

Если сетевая консоль используется с CP / NET, система ведет себя
ненадежно, когда консоль также используется как обычный MP / M II
терминал, потому что MP / M II выделяет процесс терминального сообщения
(TMP) для каждой известной пользовательской консоли. И серверный процесс, и TMP
может ожидать ввода с той же консоли. Из-за этого,
набранные символы могут отображаться как обычное, двойное эхо или нет
эхом отозвался вообще. Фактические процессы могут получать или не получать
каждый персонаж.

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

Средства CTRL-P CP / M частично обрабатываются NDOS.
NDOS должен знать, когда CTRL-P активен, потому что он должен отправить
символ конца списка при завершении работы средства.Если КПК обнаруживает
что CTRL-P активен, он не отправит конечный список, даже если
программа завершается.

3.3 Расширение функций CP / NET до CP / M

Приложения, обращающиеся к сетевым дискам, используют файл MP / M II
система для выполнения файловых операций. Многие из этих операций
немного другое значение, чем в CP / M. Например,
установив старшие биты имени файла FCB, файл может быть
открыт или создан в заблокированном режиме, разблокированном режиме или режиме только для чтения.CP / NET также позволяет приложению размещать пароль в текущем
Буфер DMA для открытия файлов, защищенных паролем. Точно так же закрытие
операция может выполнять либо постоянное, либо частичное закрытие.

Коды возврата и побочные эффекты функций MP / M II также
отличаются. Различия в обработке ошибок обсуждаются в разделе 3.2.2.
Функции open и make также различаются. Эти функции возвращают
двухбайтовое значение, называемое идентификатором файла, в поле случайной записи
открытый FCB.Идентификатор файла необходим для выполнения записи
функции блокировки.

Для полного описания того, как работают отдельные CP / M
работать под MP / M II, см. руководство программиста операционной системы MP / M II.
Руководство.

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

ФУНКЦИЯ 38: ПРИВОД ДОСТУПА
Предотвращает сброс дисков
Регистр Значение
Параметры ввода C 26H
DE Вектор привода
Возвращаемые значения A Код возврата
H Расширенная ошибка

Функция Access Drive вставляет фиктивный элемент открытого файла в
Список блокировок штока для каждого привода, указанного в векторе привода.В
вектор привода — это 16-битный вектор, в котором каждый возможный привод
представлены. Бит 0 представляет диск A :, бит 1, диск B :, продолжение
через 15 для привода P :.

NDOS разделяет вектор привода на несколько дисков
векторы, по одному на сервер, которые NDOS может найти в запросе
таблица конфигурации. Затем NDOS отправляет логическое сообщение каждому
этих серверов. Если какое-либо из этих сообщений приводит к расширенному
error- thp funni-inn Ahc-) ri -, — [Извините; Я просто не знаю, что делать
последний бит.- Ред]

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

Поскольку NDOS отправляет сообщения на каждый сервер последовательно,
расширенная ошибка на одном сервере не указывает на доступ к серверам
ранее не удавалось вставить открытые элементы файла.Это отличается от
MP / M II, где только одна файловая система контролирует весь список блокировок.
Обратите внимание, что диски, возможно, придется освободить после сбоя,
от вызова привода доступа.

Если NDOS находится в режиме возврата ошибки, состояние ошибки на
функция 38 заставляет регистр A быть установлен в 0FFH, а регистр H
содержит один из следующих кодов:

0A Превышен предел открытого файла
0B Нет места в списке блокировки системы
0C Сервер не вошел в систему

Поскольку функция 38 бессмысленна для локальных дисков под
CP / NET, вызов в местный BDOS не производится.

ФУНКЦИЯ 39: СВОБОДНЫЙ ПРИВОД
Бесплатные указанные дисковые накопители
Регистр Значение
Параметры входа C 27H
DE Вектор привода

Функция Free Drive очищает списки блокировок серверов от всех элементов.
относящиеся к указанным дискам. Вектор привода — 16-битный
вектор, в котором представлен каждый возможный привод.Бит 0
представляет диск A :, бит 1, диск B :, продолжающийся до 15 для
диск P :.

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

CP / NET CCP выдает бесплатный диск каждый раз, когда программа
прекращается. Это предотвращает серверный процесс, связанный с
запрашивающий не забивается бесполезными файлами.

Поскольку Free Drive бессмысленна при CP / M, операционная
система игнорирует записи в векторе дисков, которые определяют локальные диски.
заказчику.

Free Drive не возвращает ошибку.

ФУНКЦИЯ 42: БЛОКИРОВКА ЗАПИСИ
Заблокировать записи в файле
Регистр Значение
Параметры входа C 2AH
DE FCB Адрес
Возвращаемые значения A Код возврата
H Расширенная ошибка

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

Чтобы заблокировать запись, приложение-инициатор должно разместить
номер логической записи, который должен быть заблокирован в поле случайной записи
файл FCB. Идентификатор файла, возвращаемое двухбайтовое значение.
в поле случайной записи при открытии файла в разблокированном режиме,
должен быть помещен в первые два байта текущего буфера DMA.
Когда вызывается функция блокировки, указатель на FCB должен существовать в
регистровая пара DE.

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

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

Чтобы использовать функцию блокировки записи, выполните следующие действия:

  1. Открыть файл в разблокированном режиме. Сохраните возвращенный идентификатор файла
    в поле случайной записи открытого FCB.
  2. Когда приложению необходимо обновить запись, заблокируйте
    запись, даже до попытки ее прочитать. Чтение
    запись, заблокированная другим процессом, может привести к
    оставив запись в неопределенном состоянии. Если ошибка
    результаты, потому что запись заблокирована другим процессом,
    повторяйте этот шаг, пока запись не будет успешно заблокирована.Установите значение тайм-аута при повторной попытке блокировки в случае, если другой
    Запрашивающая сторона заблокировала запись, а затем отключилась.
  3. Прочтите запись.
  4. Обновить запись.
  5. Записать запись обратно.
  6. Разблокировать запись.

Функция Lock Record возвращает 0 в регистре A, если
успешно. В противном случае функция Lock Record возвращает один из
следующие коды ошибок в регистре A:

01 Чтение незаписанных данных
03 Невозможно закрыть текущий экстент для доступа к указанному экстенту
04 Искать в неписаной степени
06 Случайный номер записи больше 3FFFF
08 Запись заблокирована другим процессом
0A Ошибка контрольной суммы FCB
0B Ошибка проверки разблокировки файла
0C Превышен предел блокировки записи процесса
0D Неверный идентификатор файла в буфере DMA
0E Нет места в списке блокировки системы
FF Расширенная ошибка

Могут возникать следующие расширенные ошибки:

01 Постоянная ошибка
04 Выбрать ошибку
0C Запрашивающая сторона не вошла в систему на сервере

Функция Lock Record не имеет смысла, когда локальный диск
имеется ссылка на запрашивающего.Функция возвращается с регистром A
установлен на 0.

ФУНКЦИЯ 43: РАЗБЛОКИРОВКА ЗАПИСИ
Разблокировать записи в файле
Регистр Значение
Параметры входа C 2BH
DE FCB Адрес
Возвращаемые значения A Код возврата
H Расширенная ошибка

Функция разблокировки записи освобождает ранее заблокированную запись,
позволяя заблокировать его и записать на него другому пользователю.В
запись для разблокировки должна быть помещена в поле случайной записи
FCB файла. Идентификатор файла — это двухбайтовое значение, которое возвращается в
случайное поле, когда файл открывается в разблокированном режиме. Файл
ID должен быть помещен в первые два байта текущего буфера DMA.
Пара регистров DE должна содержать указатель на FCB.

Функция разблокировки записи успешно возвращается, если

  • файл был открыт в заблокированном режиме.
  • указанная запись уже разблокирована.
  • запись заблокирована другим процессом.

Во всех этих случаях никаких действий не выполняется.

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

Функция разблокировки записи возвращает 0 в регистре A, если
Успешно. В противном случае функция возвращает одно из следующих
коды ошибок в регистре A:

01 Чтение незаписанных данных
03 Невозможно закрыть текущий экстент для доступа к указанному экстенту
04 Искать в неписаной степени
06 Случайный номер записи больше 3FFFF
0A Ошибка контрольной суммы FCB
0B Ошибка проверки разблокировки файла
0D Неверный идентификатор файла в буфере DMA
FF Расширенная ошибка

Могут возникать следующие расширенные ошибки:

01 Постоянная ошибка
04 Выбрать ошибку
0C Сервер не вошел в систему

Поддержка многопроцессорной обработки

для Hobby OS, объясненная на Bona Fide OS Developer

Бена Л.Titzer

Последнюю версию этого руководства можно найти по адресу http://www.redpants.org/docs/mpx86.php

Стандартные материалы

  • Спецификация многопроцессорной обработки Intel
  • Руководство разработчика программного обеспечения Intel, том 3
  • Intel 82093AA I / O APIC Manual

Введение

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

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

1 — Многопроцессорная обработка в двух словах

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

Системы, которые разделяют системную память между всеми процессорами, чтобы
все процессоры видят одну и ту же физическую память, называются UMA
для равномерного доступа к памяти. Их чаще называют SMP
системы для симметричной многопроцессорной обработки. Системы с отдельными
частные физические воспоминания называются NUMA для неоднородных
Доступ к памяти. Архитектуры SMP обычно используются там, где
количество процессоров, обращающихся к одной и той же физической памяти, не более
дюжина или несколько дюжин.Это из-за закона уменьшения
возвращает: при добавлении каждого процессора он должен конкурировать с
другие процессоры в системе для пропускной способности памяти, и поэтому
прирост скорости от добавления процессоров становится намного меньше, чем
линейный. Архитектуры NUMA, где нет центральной памяти для
процессоры, с которыми нужно бороться, предлагает гораздо большую масштабируемость,
часто на тысячи процессоров. У NUMA есть недостаток
больших требований к памяти (поскольку ОС и приложения
дублируется во многих отдельных воспоминаниях) и потому, что координация
выполнение системы требует дополнительных коммуникационных накладных расходов.SMP и
У каждого NUMA есть свое конкретное применение. NUMA используется для систем на
масштаб суперкомпьютеров и задач, которые имеют высокую степень
параллельные данные, которые не зависят друг от друга. SMP более полезен в
небольшие системы, которые работают с взаимозависимыми данными, например, ПК
рабочая станция или сервер.

В этом документе рассматривается только один унифицированный доступ к памяти.
архитектура семейства процессоров Intel Pentium, поскольку
платформа Intel является самой распространенной среди хобби-ОС, а SMP
многопроцессорные машины с процессорами архитектуры Intel
относительно банально.

1.1 — Основы системы SMP

Системы

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

1.2 — Обмен данными в системе SMP через общую память

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

процессор 1:

volatile int * what_to_do = ОБЩИЙ_АДРЕС; // указываем на некоторую память
* what_to_do = DO_NOTHING; // по умолчанию ничего не делать

// ждем, пока другой процессор установит * what_to_do
while (* what_to_do == DO_NOTHING);
переключатель (* what_do_do)
{
  ...
}
 

процессор 2:

volatile int * what_to_do = ОБЩИЙ_АДРЕС; // указываем на некоторую память
* what_to_do = DO_SOMETHING_ELSE; // уведомляем другой процессор
 

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

Когерентность кэша и SMP

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

1.3 — Улучшенная связь с межпроцессорными прерываниями

Пример довольно корявый и особенно
неэффективный способ связи с другими процессорами.Во-первых,
«прослушивание» процессора в цикле while не делает ничего полезного
пока он ожидает сигнала от другого процессора. Другой
проблема в том, что на самом деле может быть больше двух
процессоров в системе (помните, что в некоторых
Машины SMP). Если более одного из этих процессоров прослушивают
и один процессор пытается дать сигнал что-то сделать, тогда они
проснутся все, а не только один.

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

2 — Спецификация многопроцессорной обработки Intel

Теперь, когда мы обсудили различия между опросом и
прерывания в системах SMP, пора рассмотреть более подробно
практические вопросы о том, как они работают и как их использовать. За это
цель, стандартизировать работу процессоров Intel в настройке SMP,
Intel разработала стандарт под названием Intel Multiprocessing.
Спецификация
, которая устанавливает стандарты для интерфейса между
уровень BIOS / прошивки и уровень системного программного обеспечения (ОС).это
настоятельно рекомендуется загрузить это руководство, поскольку оно охватывает
некоторые важные особенности. Вы можете найти это здесь.
Это руководство было представлено на 486 линейке процессоров, которые
поддерживается многопроцессорность. Процессоры 386 также поддерживали
многопроцессорность, но почти не использовала в качестве многопроцессорной
платформа, потому что не было стандартов.

2.1 — Модуль APIC

Центральным элементом спецификации Intel Multiprocessing является
устройство APIC , что расшифровывается как Advanced Programmable
Контроллер прерываний.Даже начинающие разработчики ОС наверняка
слышал о PIC (программируемом контроллере прерываний), который обеспечивает
IRQ к процессору. Модуль APIC по своим функциям аналогичен
PIC, но он принимает и направляет прерывания между несколькими
процессоры. В многопроцессорных системах Intel имеется локальный
Модуль APIC
для каждого процессора и минимум один IO APIC
который направляет запросы на прерывание между несколькими процессорами. Местный
Модуль APIC встроен в сам кристалл процессора Pentium
семейство процессоров, но отдельно для 486 процессоров.Этот
локальный модуль для 486s был другой моделью (82489DX) и имел
немного меньше функций, чем в более поздних модулях, встроенных в
Линия процессоров Pentium. По этой причине они не обсуждаются,
и мы делаем упор на многопроцессорность с Pentium и выше.
процессоры.

Локальный модуль APIC служит единственным входом прерываний для
процессор. Внешние PIC и IO APIC отправляют свои прерывания
к локальному APIC процессора назначения и этому локальному APIC
прерывает процессор.APIC может быть запрограммирован на маскировку этих
прерывания 0-255. Однако APIC не может маскировать исключения 0-21.
которые генерируются внутри процессора.

Каждый локальный модуль APIC имеет уникальный идентификатор, который инициализируется
BIOS, микропрограммное обеспечение или оборудование. ОС гарантирует, что
локальные идентификаторы APIC уникальны. Локальные APIC также могут отправлять
IPI (межпроцессорные прерывания) для других процессоров в системе
используя локальные идентификаторы пункта назначения. Это в первую очередь то, как
ОС взаимодействует с другими процессорами, программируя текущий
локальный APIC процессора (в зависимости от того, на каком процессоре работает ОС)
чип для отправки IPI на целевой APIC ID.

2.2 — Последовательность загрузки

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

Спецификация многопроцессорной обработки определяет стандартную загрузку
последовательность, гарантирующая ОС, что система находится в состоянии готовности
для обнаружения и инициализации мультипроцессора.Спецификация
указывает, что в стандартной последовательности загрузки BIOS, оборудование или
прошивка (не ОС) выберет один из процессоров для
обозначается как BSP или Bootstrap Processor. Выбор
какой процессор является BSP, может быть подключен к физическому
местоположение, генерируемое случайным образом или выбираемое каким-либо другим способом. В
единственное ограничение, которое накладывает спецификация, — это то, что
один процессор выбран как BSP, а другие процессоры,
под названием AP для процессоров приложений инициализируются
Реальный режим и перевод в остановленное состояние.Локальные APIC AP являются
инициализированы таким образом, что они не будут обслуживать прерывания. В
система инициализируется таким образом, что все прерывания направляются на
BSP. Затем BSP загружается нормально, как если бы система была
однопроцессорная машина.

2.3 — Обнаружение нескольких процессоров

Итоговая инициализация и загрузка ОС в
однопроцессорный режим должен быть знаком даже начинающим ОС
разработчиков и не является целью данного документа. Какова цель
этот документ — шаги, которые операционная система должна предпринять, чтобы
обнаруживать и инициализировать AP, которые все еще находятся в остановленном состоянии.Чтобы ОС обнаружила наличие нескольких процессоров,
спецификация требует, чтобы BIOS или микропрограмма составляли два
таблицы в физической памяти, описывающие конфигурацию
система, включая информацию о процессорах, модулях IO APIC,
назначения irq, присутствующие в системе шины и другие полезные
данные для ОС. ОС должна найти эти структуры и проанализировать их
чтобы определить, какую инициализацию необходимо выполнить. Если
ОС не находит эти таблицы, тогда ОС может предположить, что
система не поддерживает многопроцессорность и может продолжать
инициализация однопроцессора.Это позволяет ОС, скомпилированной для SMP
операция, чтобы вернуться к умолчанию, однопроцессорное поведение на
однопроцессорная система.

Поиск структуры плавающего указателя MP

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

MP Плавающий
Структура указателя
Поле Смещение Длина Описание / Применение
Подпись 0 4 байта Эта 4-байтовая подпись представляет собой строку ASCII «_MP_», которую ОС
следует использовать, чтобы найти эту структуру.
Указатель MPConfig 4 4 байта Это 4-байтовый указатель на структуру конфигурации MP.
который содержит информацию о мультипроцессоре
конфигурация.
Длина 8 1 байт Это 1-байтовое значение, определяющее длину этой структуры.
в параграфах по 16 байт. Это должно быть 1.
Версия 9 1 байт Это 1-байтовое значение, указывающее версию
спецификация многопроцессорности.Либо 1 обозначает версию 1.1, либо 4
обозначает версию 1.4.
Контрольная сумма 10 1 байт Сумма всех байтов в этой структуре с плавающим указателем.
включая этот байт контрольной суммы должен быть нулевым.
Функции MP 1 11 1 байт Это байт, содержащий флаги функций.
Функции MP 2 12 1 байт Это байт, содержащий флаги функций.Бит 7 отражает
наличие ICMR, который используется при настройке IO
APIC.
Функции MP 3-5 13 3 байта Зарезервировано для использования в будущем.

Структура плавающего указателя MP находится в одной из трех областей памяти
области: (1) Первый килобайт расширенной области данных BIOS
(EBDA). (2) Последний килобайт базовой памяти (639–640 КБ). (3)
Адресное пространство ПЗУ BIOS (0xF0000-0xFFFFF). ОС должна искать
строка ASCII «_MP_» в этих трех областях.Если ОС обнаружит это
структура, это указывает на то, что система совместима с многопроцессорностью
и инициализация нескольких процессоров должна продолжаться. Если это
структура не присутствует ни в одной из этих трех областей, то
Инициализация однопроцессора должна продолжаться.

Анализ таблицы конфигурации MP

Структура плавающего указателя MP указывает,
Таблица конфигурации существует по значению MP Features 1 . Если
этот байт равен нулю, тогда значение в MPConfig Pointer является
действительный указатель на физический адрес конфигурации MP
Таблица.Если MP Features 1 отличен от нуля, это означает, что
система является одной из конфигураций по умолчанию, как описано в
Спецификация Intel Multiprocessing Глава 5. Эти значения по умолчанию
конфигурации кратко описаны в этой главе
спецификации, и мы не будем обсуждать их здесь полностью, кроме как
что эти конфигурации по умолчанию имеют только два процессора и
локальные APIC имеют идентификаторы 0 и 1, среди нескольких других хороших свойств. Если
одна из этих реализаций по умолчанию указана в MP
Структура с плавающим указателем, тогда ОС не нужно анализировать MP
Таблица конфигурации и может инициализировать систему на основе
информация в спецификации.

Таблица конфигурации MP содержит информацию о
процессоры, APIC и шины в системе. Имеет заголовок
(называемая базовой таблицей) и серией записей переменной длины
сразу после него во все возрастающем адресе. Базовая таблица имеет
следующий формат:

МП
Таблица конфигурации
Поле Смещение Длина Описание / Применение
Подпись 0 4 байта Эта 4-байтовая подпись представляет собой строку ASCII «PCMP», которая подтверждает
что эта таблица присутствует.
Длина базового стола 4 2 байта Это 2-байтовое значение представляет длину базовой таблицы в
байтов, включая заголовок, начиная со смещения 0.
Версия спецификации 6 1 байт Это 1-байтовое значение представляет собой версию спецификации.
которому соответствует система. Значение 1 указывает на версию 1.1, а
значение 4 указывает версию 1.4.
Контрольная сумма 7 1 байт Сумма всех байтов в базовой таблице, включая эту контрольную сумму.
а зарезервированные байты должны быть добавлены к нулю.
OEM ID 8 8 байт Строка ASCII, определяющая производителя системы.
Эта строка не заканчивается нулем.
Идентификатор продукта 16 12 байт Строка ASCII, определяющая семейство продуктов
система.Эта строка не заканчивается нулем.
Указатель таблицы OEM 28 4 байта Необязательный указатель на таблицу конфигурации, определенную OEM. Если
таблица OEM отсутствует, это поле равно нулю.
Размер стола OEM 32 2 байта Размер (если он существует) таблицы OEM. Если таблица OEM
не существует, это поле равно нулю.
Счетчик входов 34 2 байта Число записей, следующих за этой базовой таблицей заголовков в
объем памяти.Это позволяет программному обеспечению найти конец таблицы, когда
анализ записей.
Адрес местного APIC 36 4 байта Физический адрес, по которому находится локальный APIC каждого процессора.
нанесен на карту. Память каждого процессора отображает свой локальный APIC в эту
диапазон адресов.
Длина удлиненного стола 40 2 байта Общий размер расширенной таблицы (записей) в байтах.Если
нет расширенных записей, это поле нулевое.
Контрольная сумма расширенной таблицы 42 1 байт Контрольная сумма всех байтов в расширенной таблице. Все с
байты в расширенной таблице должны соответствовать этому значению. Если нет
расширенные записи, это поле равно нулю.

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

МП
Записи в таблице конфигурации
Описание записи Код типа записи Длина Комментарии
Процессор 0 20 байт Запись, описывающая процессор в системе.Одна запись на
процессор.
Автобус 1 8 байт Запись, описывающая шину в системе. Одна запись на
автобус.
IO APIC 2 8 байт Запись, описывающая APIC ввода-вывода, присутствующий в системе. Одна запись
на IO APIC.
Назначение прерывания ввода-вывода 3 8 байт Запись, описывающая присвоение источника прерывания
IO APIC.По одному на источник прерывания шины.
Назначение локального прерывания 4 8 байт Запись, описывающая назначение локального прерывания в системе.
Одна запись на источник прерывания системы.

Поскольку записи в таблице конфигурации MP отсортированы по
введите тип записи в порядке возрастания, первыми будут все
записи процессора, за которыми следуют все записи шины, за которыми следует
Записи IO APIC и так далее.ОС должна проанализировать эти записи в
чтобы узнать, сколько процессоров, сколько IO APIC и другие
информация, необходимая для инициализации системы. Процессор
записи имеют формат:

Процессор
Запись
Поле Смещение (в байтах: битах) Длина Описание / Применение
Тип записи 0 1 байт Поскольку это запись процессора, в этом поле установлено значение 0.
Локальный идентификатор APIC 1 1 байт Это уникальный идентификационный номер APIC для процессора.
Локальная версия APIC 2 1 байт Это биты 0-7 номера версии локального APIC.
регистр.
Бит включения ЦП 3: 0 1 бит Этот бит указывает, включен ли процессор. Если это
бит равен нулю, ОС не должна пытаться инициализировать этот
процессор.
Бит процессора начальной загрузки ЦП 3: 1 1 бит Этот бит указывает, что запись процессора относится к
загрузочный процессор, если он установлен.
Подпись ЦП 4 4 байта Это подпись процессора, возвращаемая идентификатором CPUID.
инструкция. Если процессор не поддерживает CPUID
инструкция, BIOS заполняет это значение в соответствии со значениями в
спецификация.
Флаги функций ЦП 8 4 байта Это флаги функций, которые возвращает CPUID.
инструкция. Если процессор не поддерживает CPUID
инструкция, BIOS заполняет это значение в соответствии со значениями в
Технические характеристики.

Автобусные записи определяют типы автобусов в системе. BIOS
отвечает за присвоение каждому из них уникального идентификационного номера. В
записи позволяют BIOS обмениваться данными с ОС по шинам в
система.Формат записей описан в Intel
Спецификация многопроцессорной обработки Глава 5. Поскольку использование и
инициализация шин выходит за рамки этого документа, bus
записи не обсуждаются.

Таблица конфигурации содержит как минимум одну запись IO APIC
который предоставляет ОС базовый адрес для связи с
IO APIC и его ID. Запись для IO APIC имеет следующее
формат:

IO APIC
Запись
Поле Смещение (в байтах: битах) Длина Описание / Применение
Тип записи 0 1 байт Поскольку это запись IO APIC, в этом поле установлено значение 2.
IO APIC ID 1 1 байт Это идентификатор этого IO APIC.
Версия IO APIC 2 1 байт Это биты 0-7 регистра версии IO APIC.
IO APIC включен 3: 0 1 бит Этот бит указывает, включен ли этот IO APIC. Если этот бит
равен нулю, ОС не должна пытаться получить доступ к этому APIC ввода-вывода.
Адрес IO APIC 4 4 байта Содержит физический базовый адрес, по которому этот IO APIC
нанесен на карту.

3 — Инициализация и использование локального APIC

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

3.1 — Отображение памяти модулей APIC

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

Память APIC
Отображения
APIC Тип Адрес по умолчанию Альтернативный адрес
Локальный APIC 0xFEE00000 Если указано, значение Адрес локального APIC
в таблице конфигурации MP.
Первый IO APIC 0xFEC00000 Если указано, значение поля IO APIC Address в
запись IO APIC в таблице конфигурации MP.
Дополнительные APIC ввода-вывода Значение поля IO APIC Address в IO APIC
запись в таблице конфигурации MP.

3.2 — Набор регистров локального APIC

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

Локальный APIC
Адреса регистров
Смещение Регистровое имя Программное обеспечение чтения / записи
0x0000h — 0x0010 зарезервировано
0x0020h Локальный регистр идентификатора APIC Чтение / запись
0x0030h Регистр версии локального идентификатора APIC Только чтение
0x0040h — 0x0070h зарезервировано
0x0080h Регистр приоритета задач Чтение / запись
0x0090h Регистр приоритета арбитража Только чтение
0x00A0h Регистр приоритета процессора Только чтение
0x00B0h Регистр EOI Только запись
0x00C0h зарезервировано
0x00D0h Регистр логического назначения Чтение / запись
0x00E0h Регистр формата назначения Биты 0-27 Только чтение, Биты 28-31 Чтение / запись
0x00F0h Векторный регистр ложного прерывания Биты 0-3 только чтение, биты 4-9 чтение / запись
0x0100h — 0x0170 ISR 0-255 Только чтение
0x0180h — 0x01F0h ПМР 0-255 Только чтение
0x0200h — 0x0270h IRR 0-255 Только чтение
0x0280h Регистр состояния ошибки Только чтение
0x0290h — 0x02F0h зарезервировано
0x0300h Регистр команд прерывания 0-31 Чтение / запись
0x0310h Регистр команд прерывания 32-63 Чтение / запись
0x0320h Таблица локальных векторов (таймер) Чтение / запись
0x0330h зарезервировано
0x0340h Счетчик производительности LVT Чтение / запись
0x0350h Таблица локальных векторов (LINT0) Чтение / запись
0x0360h Таблица локальных векторов (LINT1) Чтение / запись
0x0370h Таблица локальных векторов (ошибка) Чтение / запись
0x0380h Регистр начального счета для таймера Чтение / запись
0x0390h Регистр текущего счета для таймера Только чтение
0x03A0h — 0x03D0h зарезервировано
0x03E0h Регистр конфигурации разделения таймера Чтение / запись
0x03F0h зарезервировано

Обратите внимание, что регистры локального APIC разделены на 32-битные
слова, выровненные по границам 16 байт.Регистры, которые
более 32 бит разбиваются на несколько 32-битных слов, выровненных
на последовательных 16-байтовых границах. Многопроцессорность Intel
В спецификации указано, что все локальные регистры APIC должны быть доступны.
с 32-битным чтением и записью.

3.3 — Инициализация локального APIC BSP

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

Векторный регистр ложного прерывания

Регистр вектора ложного прерывания содержит бит
для включения и отключения локального APIC. Также есть поле для
укажите номер вектора прерывания, который будет доставлен в
процессор в случае ложного прерывания . Этот
регистр 32 бита и имеет следующий формат:

32-битный векторный регистр ложных прерываний
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
. Ф
С
E
N
ВЕКТОР 1 1 1 1
  • EN бит — позволяет программному обеспечению включать или отключать
    Модуль APIC в любое время. Запись в этот бит значения 1 позволяет
    модуль APIC, и запись значения 0 отключает его.
  • FC Бит — Этот бит указывает, выполняется ли проверка фокуса.
    включен для текущего процессора. Значение 0 указывает на фокус
    проверка включена, а значение 1 указывает, что она отключена.За
    В наших целях этот бит можно игнорировать.
  • ВЕКТОР — Это поле вектора ложного прерывания
    Регистр определяет, какой вектор прерывания доставляется в
    процессор в случае ложного прерывания . Биты 0–3 из
    это векторное поле жестко подключено к 1111b, или 15. Биты 4-7 этого
    поля программируются программно.

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

Локальная версия APIC и локальные регистры идентификатора APIC

Регистр версии локального APIC является регистром только для чтения
что APIC сообщает программному обеспечению информацию о своей версии. Это также
определяет максимальное количество записей в локальном векторе
Таблица
(LVT). Регистр Local APIC ID Register хранит идентификатор
местный APIC.

Регистр локальной версии APIC
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
. МАКСИМАЛЬНЫЙ LVT
ВХОД
. ВЕРСИЯ
  • Максимальный вход LVT — Указывает количество Максимального
    Вход LVT. Для процессоров Pentium это число 3 (4 записи
    всего), а для семейства P6 — 4 (всего 5 записей).
  • Версия — указывает номер версии локального APIC
    модуль. Для APIC 82489DX это число 0h. Для интегрированных APIC
    семейства Pentium и выше это число составляет 1h.
Локальный регистр APIC ID
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
. APIC
ID
.

Таблица локальных векторов

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

Таблица локальных векторов
. 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Таймер. Т
П
M. D
S
. ВЕКТОР
LINT0. M т
м
R
I
I
P
D
S
. DMODE ВЕКТОР
LINT1. M т
м
R
I
I
P
D
S
. DMODE ВЕКТОР
ОШИБКА. M. D
S
. ВЕКТОР
PCINT. M. D
S
. DMODE ВЕКТОР
  • Вектор : номер вектора прерывания.
  • DMODE (режим доставки) : определен только для локального
    прерывает LINT0, LINT1 и PCINT (мониторинг производительности
    счетчик).Это может быть одно из трех определенных значений:

    • 000 (фиксировано) — доставляет прерывание процессору как
      указано в соответствующей записи LVT.
    • 100 (NMI) — Прерывание доставляется на локальный
      процессор как NMI (немаскируемое прерывание) и вектор
      информация игнорируется. Прерывание рассматривается как
      прерывание по фронту независимо от того, как программное обеспечение было запрограммировано
      Это.
    • 111 (ExtINT) — доставляет прерывание процессору
      как если бы он исходил от внешнего контроллера, такого как 8249A
      ПОС.Ожидается, что внешний контроллер предоставит вектор
      Информация. Прерывание всегда рассматривается как триггер уровня,
      независимо от того, как программа запрограммировала запись.
  • DS (Состояние доставки) — Только чтение для программного обеспечения. Ценность
    0 (простаивает) указывает, что для этого нет ожидающих прерываний
    прерывание или предыдущее прерывание от этого источника
    завершено. Значение 1 (отложенная отправка) указывает, что прерывание
    передача началась, но еще не полностью
    принято.
  • IP (Полярность прерывания) — Определяет прерывание
    полярность источника прерывания. Значение 0 указывает на активное
    высокий, а значение 1 указывает на активный минимум.
  • RI (бит регистра запроса удаленного прерывания) — для уровня
    запускаемых прерываний, этот бит устанавливается, когда модуль APIC принимает
    прерывание и сбрасывается при EOI. Не определено для срабатывания фронта
    прерывания.
  • TM (режим триггера) — Когда режим доставки фиксирован, (0)
    обозначает краевую чувствительность, а (1) обозначает
    уровень чувствительности.
  • M (Маска) — указывает, замаскировано ли прерывание. А
    значение 1 указывает на то, что прерывание замаскировано, а значение 0 указывает на то, что
    прерывание не маскируется.
  • TP (Timer Periodic Mode) — Указывает, включен ли таймер
    прерывание должно срабатывать периодически (1) или только один раз (0).

3.4 — Выдача команд прерывания

Локальный модуль APIC имеет 64-битный регистр, называемый
Регистр команд прерывания , который может использовать программное обеспечение, вызывает
APIC для отправки прерываний другим процессорам.Запись в низкий 32
бит регистра вызывает команду, указанную в записи
операция будет оформлена. Формат команды прерывания
Реестр выглядит следующим образом:

Регистр команд прерывания
63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32
НАЗНАЧЕНИЕ
ПОЛЕ
.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
. ДШ. т
м
л
В
. D
S
Д
М
DMODE ВЕКТОР
  • Вектор — указывает номер вектора, определяющий
    отправляется прерывание.
  • DMODE (режим доставки) — Определяет, как APIC в
    Поле назначения должно обрабатывать отправляемое прерывание. Все
    межпроцессорные прерывания обрабатываются как запускаемые по фронту, даже если
    запрограммировано иначе.

    • 000 (фиксировано) — доставляет прерывание процессорам
      указан в поле назначения в соответствии с информацией в
      ICR.
    • 001 (Самый низкий приоритет) — То же, что и фиксированный режим, за исключением
      прерывание доставляется процессору, выполняющему наименьшее
      приоритет среди набора процессоров, указанных в пункте назначения
      поле.
    • 010 (SMI) — Разрешен только режим запуска по фронту. В
      векторное поле должно быть запрограммировано на 00b.
    • 011 (Зарезервировано)
    • 100 (NMI) — Доставляет прерывание как NMI всем
      процессоры, указанные в пункте назначения. Векторная информация
      игнорируется.
    • 101 (INIT) — Выдает прерывание как INIT, вызывая
      все процессоры в месте назначения принимают их состояние INIT.
      Векторная информация игнорируется.
    • 101 (INIT Level De-assert) — (Указывается установкой уровня
      на 0, а режим триггера на 1). Прерывание доставляется всем
      процессоров независимо от поля назначения.Вызывает все
      APIC для сброса своих идентификаторов арбитража на локальные идентификаторы APIC.
    • 110 (запуск) — отправляет сообщение запуска на
      процессоров, перечисленных в поле назначения. 8-битный вектор
      информация — это физический номер страницы адреса для
      процессоры, с которых нужно начать выполнение. Это сообщение не
      автоматически повторяется, и программному обеспечению может потребоваться повторить попытку в случае
      неудачи.
  • DM (режим назначения) — указывает,
    поле назначения содержит физический (0) или логический (1)
    адрес.
  • DS (Состояние доставки) — Указывает на бездействие (0), что есть
    нет активности для этого прерывания или отправить ожидающий (1), что
    передача началась, но еще не полностью
    принято.
  • LV (Уровень) — Для режима INIT De-assert установлено значение
    0. Для всех остальных режимов доставки это значение 1.
  • TM (режим триггера) — используется из режима INIT De-assert
    только.
  • DSH (Destination Shorthand) — Указывает,
    сокращенная запись используется для указания места назначения
    прерывание.Если используется сокращенное обозначение пункта назначения, то пункт назначения
    поле игнорируется. Это поле может иметь значения:

    • 00 (Без стенографии) — Указывает, что стенография не ведется
      указано и что поле назначения содержит
      место назначения.
    • 01 (Self) — указывает, что текущий APIC является единственным
      место назначения. Полезно для автоматического прерывания.
    • 10 (Все) — передает сообщение всем APIC,
      включая процессор, отправляющий прерывание.
    • 11 (Все, кроме себя) — рассылает сообщение всем
      APIC, за исключением процессора, отправившего прерывание.
  • Поле назначения — Когда поле назначения
    установлен на 00, а режим назначения — физический, пункт назначения
    Поле (биты 56-59) содержит APIC ID пункта назначения. когда
    режим логичен, интерпретация этого поля более
    сложно. Подробности см. В Intel SDM Vol 3, Chap 7.

4 — Запуск прикладного процессора

5 — Обнаружение и инициализация MP

  1. BIOS выбирает BSP и начинает запуск однопроцессора,
    инициализация AP в реальном режиме и их остановка.
  2. Код ОС (загрузочная программа или ядро) ищет MP
    Структура с плавающим указателем
    .
  3. ОС использует структуру MP Floating Pointer для выбора
    конфигурация по умолчанию или найти конфигурацию MP
    Таблица
    .
  4. ОС анализирует таблицу конфигурации MP , чтобы определить
    сколько процессоров и APIC ввода-вывода находится в системе.
  5. ОС инициализирует локальный APIC процессора начальной загрузки.
  6. ОС отправляет стартовых IPI друг другу
    процессоры с адресом батутного кода.
  7. Код трамплина инициализирует точки доступа в защищенный режим и
    вводит код ОС для дальнейшей инициализации.
  8. Когда точки доступа активированы и инициализированы, BSP может
    инициализировать IO APIC в Симметричный режим IO , чтобы разрешить
    AP, чтобы начать обрабатывать прерывания.
  9. ОС продолжает дальнейшую инициализацию, используя блокировку.
    примитивы по мере необходимости.

6 — Замки и IPI


Эта статья дублируется здесь с разрешения Бена Л.Titzer

Страница не найдена

Документы

Моя библиотека

раз

    • Моя библиотека

    «»

    ×

    Страница не найдена

    Документы

    Моя библиотека

    раз

      • Моя библиотека

      «»

      ×

      Сети

      Компьютеры и периферийные устройства (части оборудования , которые подключены к центральному процессору компьютерной системы), соединенные вместе, образуют сеть .Сети обеспечивают связь между компьютерами и совместное использование оборудования (например, принтеров) и программного обеспечения (программы и данные ). сеть, охватывающая небольшую площадь, например офис или здание известно как LAN (локальная сеть). Основные компьютеры, которые предоставляют услуги в сети, называются серверами, например. файловый сервер обеспечивает центральную область хранения файлов данных. Компьютеры, которые используют эти службы, известны как клиентов . Компьютеры могут быть соединены с помощью различных типов кабелей, включая обычную телефонную проводку.Основной кабель передачи данных, соединяющий локальные сети вместе, называется магистралью . Различные электронные устройства также используются для усиления, фильтрации и определения наилучшего пути для сигналов. К ним относятся мосты , для разделения LAN на отдельные части или соединения одинаковых сетей вместе, шлюзы , для соединения разных типов сетей и маршрутизаторы, для соединения разных сетей вместе и определения наилучшего пути (или маршрута) для сигналов.Маршрутизаторы используются для соединения сетей, образующих Интернет. Модем (модулятор / демодулятор) используется для преобразования сигналов из аналогового сигнала (имеющего множество уровней) в цифрового (имеющего только два уровня, представляющих включение и выключение) для подключения к обычной телефонной системе. В качестве альтернативы, можно использовать модем ISDN (цифровая сеть с интегрированными услугами) , адаптер или DSL (цифровая абонентская линия) , чтобы позволить использовать цифровые сигналы без преобразования в аналоговые.

      Существуют различные стандартные методы подключения компьютеров к локальной сети. Один из наиболее распространенных — Ethernet . На каждом компьютере должен быть сетевой адаптер (специальная электроника для управления сетевым подключением). Обычно это карта расширения, известная как сетевая карта , (NIC). Все компьютеры связаны через другое электронное устройство, известное как концентратор. Электроника в концентраторе используется для усиления сигналов, чтобы они не становились слишком слабыми, прежде чем они достигнут нужного компьютера.Кабель, обычно используемый для подключения компьютеров к концентратору, известен как кабель с витой парой . Он содержит два кабеля, скрученных вместе для устранения помех от внешних сигналов. В домашней сети вместо этого можно использовать кабели сетевого питания, встроенные в дом, если электронные устройства, называемые изоляционными адаптерами , используются для изоляции компьютера от электросети, проходящей через кабель. В будущем в беспроводных сетях вместо кабелей будут использоваться радиопередатчик и приемник, настроенные на использование одной и той же радиочастоты.

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

      Один символ данных упоминается в вычислениях как байт . В двоичной системе (система счисления, которая использует только две цифры, т.е. 1 и 0), используемой в компьютерах, байт состоит из 8 битов , где бит равен 1 или 0. Когда данные передаются через сетевую систему, это может быть передается по-разному. Асинхронная передача (или передача стоп-старт) отправляет данные по одному байту (или символу) за раз. Начальный бит (называемый контрольным битом ) добавляется для указания начала каждого байта, а другой контрольный бит, называемый стоповым битом, добавляется для указания конца каждого байта. Синхронная передача отправляет данные блоками. Дополнительные байты данных, называемые байтами синхронизации , добавляются в начало и конец каждого блока. Они используются для синхронизации отправляющих и принимающих устройств.

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

      4. Объясните значение терминов, связанных с сетями, например :

      Магистраль, мост, клиент, тонкий клиент, шлюз, концентратор, сеть, LAN, muter, сервер.

      5. Произносите правильно и записывайте. При необходимости обратитесь к словарю. Дайте Российские эквиваленты:

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

      ШИФРОВАНИЕ НА ОСНОВЕ ВРЕМЕНИ НА СЕТЕВОЙ ПРОЦЕССОРЕ КОМАНДА WOLFDALE The University of Southern California скачать ppt

      Презентация на тему: «ШИФРОВАНИЕ ПО ВРЕМЕНИ НА СЕТЕВОЙ ПРОЦЕССОРНОЙ КОМАНДЕ ВОЛЬФДЕЙЛ Университет Южной Калифорнии 1.»- стенограмма презентации:

      1

      ШИФРОВАНИЕ ПО ВРЕМЕНИ В КОМАНДЕ СЕТЕВОГО ПРОЦЕССОРА ВОЛЬФДЕЙЛ Университет Южной Калифорнии 1

      2

      Инструктор: д-р Ён Чо Наставник: Сиддхарт Бхаргав Члены команды Правин Фрэнсис Гаурав Ядав Самицубхро Банерджи Кошик Раджу Члены команды Wolfdale 2

      3

      Алгоритм шифрования контента на основе времени, основанный на определенных парах IP-адресов отправителя и получателя.Проект 3

      4

      Шифрование на программном уровне медленное по сравнению с аппаратным. Большинство алгоритмов шифрования используют статические ключи. ЗДЕСЬ ИСПОЛЬЗУЕМ ДИНАМИЧЕСКИЙ КЛЮЧ Проблемы 4

      5

      IP-адрес отправителя / получателя NO MATCH Общая концепция данных 10.0.1.3 / 12.0.1.3 10.0.1.3 / 12.0.2.3 10.0.1.3 10.0.2.3 12.0.2.3 12.0.1.3 5

      6

      СООТВЕТСТВИЕ IP ОТПРАВИТЕЛЬ / ПРИЕМНИК Шифрование… Шифрование… Общая концепция Зашифрованные данные Данные СООТВЕТСТВИЕ IP ОТПРАВИТЕЛЬ / ПРИЕМНИК Расшифровка… Расшифровка… данных 10.0.1.3 / 12.0.1.3 10.0.1.3 / 12.0.2.3 10.0.1.3 10.0.2.3 12.0.2.3 12.0.1.3 6

      7

      Блок-схема системы Сопоставление IP-адресов Процессор полезной нагрузки 1 Временная метка Источник Место назначения Процессор 2 Да Шифрование / дешифрование немодифицированного пакета Модифицированный пакет Нет пакета 7

      8

      Многопоточность с ветвлением 8 LUT4 Rs_data (0) Rs_data (1) BNS BS BNS = Переход, если не установлен BS = Переход, если установлен MUX Reg File 32 * 8B Reg File 32 * 8B ID Stage IF Stage PC Mod4 Counter Instruction Memory 4K Instruction Блок управления памятью 4K 1 0100200300 0 1 ADD Rs_data (31: 0) Rt_data (31: 0) BNS BS Rt_data (11: 0) 1 Ветвь 50 Принято 101

      9

      IP Matcher Банк памяти 0 Банк памяти 1 64-битный 4-битный блок Компаратора Блок полезной нагрузки Временная метка Источник Место назначения Пакетный процессор и регистр временной метки Соответствие данных исходящих данных b Данные исходящих данных b Данные в 64-битных IP Нет совпадений, если найдено еще 9

      10

      ENCRYPTER / DECRYPTER 10 Метка времени Reg Таблица ключей ENCRYPTENCRYPT DECRYPTDECRYPT EN1 EN2 DATA_IN Метка времени из заголовка DATA_OUT

      11

      IN FIFO Arbiter IP Matcher Шифровать / дешифровать ВЫХОДНЫЕ Очереди IP Matcher Шифровать / дешифровать PF PF1 PF PF2 PF3 PF4 PF5 PF6 PF7 PF8 PF PF1 PF2 PF3 PF4 PF5 PF6 PF7 PF8 MATCH !! PF5 PF4 MAC ID PF4 PF5 НЕТ СООТВЕТСТВИЯ !! СДЕЛАННЫЙ!! Многоядерная реализация Расчет контрольной суммы.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *