Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Основные регистры процессоров



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

· с последовательным приёмом и выдачей информации – сдвиговые регистры.

· с параллельным приёмом и выдачей информации – параллельные регистры.

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

По назначению регистры различаются на:

· аккумулятор – используется для хранения промежуточных результатов арифметических и логических операций и инструкций ввода-вывода;

· флаговые – хранят признаки результатов арифметических и логических операций;

· общего назначения – хранят операнды арифметических и логических выражений, индексы и адреса;

· индексные – хранят индексы исходных и целевых элементов массива;

· указательные – хранят указатели на специальные области памяти (указатель текущей операции, указатель базы, указатель стэка);

· сегментные – хранят адреса и селекторы сегментов памяти;

· управляющие – хранят информацию, управляющую состоянием процессора, а также адреса системных таблиц.

Сегментные регистры. Сегментом называется область, которая начинается на границе параграфа, т.е. по любому адресу, кратному 16. Хотя сегмент может располагаться в любом месте памяти и иметь размер до 64 Кбайт, он требует столько памяти, сколько необходимо для выполнения программы. Сегмент кодов (CS) содержит машинные команды, которые будут выполняться. Обычно первая выполняемая команда находится в начале этого сегмента и операционная система передает управление по адресу данного сегмента для выполнения программы. Регистр сегмента кодов (CS) адресует данный сегмент. Сегмент данных (DS) содержит определенные данные, константы и рабочие области, необходимые программе. Регистр сегмента данных (DS) адресует данный сегмент.

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

Индексные регистры (SI и DI) применяются для расширенной адресации и для использования в операциях сложения и вычитания. Регистр (SI) является индексом источника и применяется для некоторых операций над строками. Регистр (DI) является индексом назначения и применяется также для некоторых операций над строками.

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


Технология ММХ, SSE.

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

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

· малый размер данных (8-битные графические пиксели, 16-битные звуковые данные);

· короткие, часто повторяющиеся циклы;

· частые умножения и накопления.

В основе ММХ лежит принцип SIMD (Single Instruction Multiple Data), т.е. одной командой можно обработать сразу несколько единиц инфо. Технология ММХ основана на отображении регистров ММХ на регистры FPU. Главным образом это сделано для сохранения с существующим ПО.

Набор MMX-команд состоит из команд пересылки данных, упаковки/распаковки, сложения/вычитания, умножения, сдвига, сравнения и поразрядных логических. Команды упаковки и сложения/вычитания могут работать в двух режимах: обычном, когда переполнение разрядной сетки вызывает "заворачивание" (wraparound) значения результата, и специальном, когда оно приводит к ограничению (clipping) результата до минимально или максимально допустимого значения. Режим ограничения в терминологии Intel называется Saturation (насыщение) - в нем особенно удобно выполнять смешивание цветов изображение или амплитуд звуковых сигналов, поскольку при обычном переполнении результат не имеет никакого смысла.

SSE-это набор инструкций, разработанный Intel и впервые представленный в процессорах серии PentiumIII .

Технология SSE позволяла преодолеть 2 основные проблемы MMX — при использовании MMX невозможно было одновременно использовать инструкции сопроцессора, так как его регистры были общими с регистрами MMX, и возможность MMX работать только с целыми числами.

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

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

Особенности

· 8 (в x86-64 - 16)128-битных регистров XMM.

· 32-битный (в x86-64 - 64) регистр флагов (MXCSR).

· 128-битный упакованный тип данных с плавающей точкой одинарной точности.

· Инструкции над вещественными числами одинарной точности.

· Инструкции явной предвыборки данных, контроля кэширования данных и контроля порядка операций сохранения.

 

 

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.