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

Классификация команд процессора

Цикл выполнения команды

Цикл выполнения команды – это последовательность действий, которая совершается процессором при выполнении одной машинной команды. При выполнении каждой машинной команды процессор должен выполнить как минимум три действия: выборку, декодирование и выполнение. Если в команде используется операнд, расположенный в оперативной памяти, то процессору придётся выполнить ещё две операции: выборку операнда из памяти и запись результата в память. Ниже описаны эти пять операций.

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

· Декодирование команды. Блок управления определяет тип выполняемой команды, пересылает указанные в ней операнды в АЛУ и генерирует электрические сигналы управления АЛУ, которые соответствуют типу выполняемой операции.

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

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

· Запись результата в память. Если результат выполнения команды должен быть сохранён в памяти, блок управления начинает операцию сохранения данных в памяти.

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

1. Выбрать из очереди команд команду, на которую указывает счётчик команд.

2. Определить адрес следующей команды в очереди команд и записать адрес следующей команды в счётчик команд.

3. Декодировать команду.

4. Если в команде есть операнды, находящиеся в памяти, то выбрать операнды.

5. Выполнить команду и установить флаги.

6. Записать результат в память (по необходимости).

7. Начать выполнение следующей команды с п.1.

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

Классификация команд процессора

Основные команды ЭВМ классифицируются вкратце следующим образом: по функциям (выполняемым операциям), направлению приема-передачи информации, адресности.

1. Команды обработки данных, в том числе (01 — первый операнд, 02 — второй):

1.1. Короткие операции (один такт).

— логическое сложение (для каждого бита 01 и 02 осуществляется операция ИЛИ);

— логическое умножение (для каждого бита 01 и 02 осуществляется операция И);

— инверсия (в O1 все единицы заменяются на нули, и наоборот);

— сравнение логическое (если O1 = 02, то некий регистр устанавливается в 1, иначе — в 0).

— сложение или вычитание операндов;

— сравнение арифметическое (если O1 > O2, или O1 = O2, или O1

Источник

Вопрос 13. Системы команд. Классификация процессоров в соответствии с системой команд

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

Базовыми командами являются, как правило, следующие:

— арифметические, например «сложения» и «вычитания»;

— битовые, например «логическое и», «логическое или» и «логическое не»;

— присваивание данных, например «переместить», «загрузить», «выгрузить»;

— ввода-вывода, для обмена данными с внешними устройствами;

— управляющие инструкции, например «переход», «условный переход», «вызов подпрограммы», «возврат из подпрограммы».

Оптимальными в различных ситуациях являются разные способы построения системы команд.

Если объединить наиболее часто используемую последовательность микроопераций под одной микрокомандой, то надо будет обеспечивать меньше микрокоманд. Такое построение системы команд носит название CISC (Complex Instruction Set Computer), в распоряжении имеется небольшое число составных команд.

С другой стороны, это объединение уменьшает гибкость системы команд. Вариант с наибольшей гибкостью — наличие множества близких к элементарным операциям команд. Это RISC (Reduced Instruction Set Computer), в распоряжении имеются усечённые, простые команды.

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

Читайте также:  Nvidia geforce pcx 5950

Вопрос 14. Реальный режим процессора типа интел 8086. Сегмент, граница параграфа, смещение

В зависимости от режима процессора изменяется схема управления памятью системами и задачами. Процессоры серии ИНТЕЛ могут работать в нескольких режимах. В реальном с модели ИНТЕЛ 8086, в защищенном 8286, в виртуальном – 8486 и старше.

1 пользователь – 1 задачный режим работы (реальный режим)

1 пользователь – много режимом работы (виртуальный режим)

РЕАЛЬНЕ РЕЖИМ РАБОТЫ

Первоначально IBM PC использовался процессор INTEL 8086, который мог выполнять следующие функции:

Использовал 16-разрядные команды, применял 16-разрядные внутренние регистры, мог адресовать 1 МБ памяти, используя для этого 20 разрядов адреса. Всё программное обеспечение было предназначено для этого процессора. Разрабатывалось на основе 16-разрядной системы команд и модели памяти объемом 1 МБ. Пример: MS DOS, Windows. Этот 16-разрядный режим работы был назван риальне режимом.

Недостатки режима: одновременно может выполняться только одна программа (однозадачный режим). Нет никакой встроенной защиты для предотвращения перезаписи ячеек памяти одной программы или ОС другой программой.

Соответственно вот такая организация структуры процессора и памяти привела к ряду особенностей. С помощью 16 разрядного регистра можно записать число 65535. Память объемом 1 МБ. Биты не нумеруются, нумеруются байты.

Соль в том, что по умолчанию сохраняется в регистре DS (регистр данных, то есть es:[ebx] писать на надо)

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

Таким образом, если мы знаем значение сегмента, то легко подсчитать физический адрес в памяти, умножив это значение на 16: если сегмент = 64h, то физический адрес = 64h • 10h = 640h.

Теперь нужно задать смещение (offset) – количество байт от начала заданного сегмента до требуемой ячейки. Итак, абсолютный адрес в памяти вычисляется как сумма номера сегмента, умноженного на 16, и смещения. Сегменты и смещения записываются в командах ассемблера следующим образом:

• сегмент – это один из сегментных регистров (CS, DS, ES, FS, GS или SS), в который предварительно занесён номер сегмента;

• смещение – это непосредственное значение смещения или регистр общего назначения, в котором хранится значение смещения.

Источник

Физическая и функциональная структура процессора. Основные характеристики и классификация процессоров

Основные характеристики и классификация процессоров

Лекция 4. Функциональная организация процессора

Вопросы для самопроверки

1) Назовите базовые типовые элементы вычислительных машин. На какие классы делятся элементы по своему назначению?

2) Дайте определение следующим логическим элементам: «И», «ИЛИ», «НЕ», «И-НЕ», «ИЛИ-НЕ», «Исключающее ИЛИ-НЕ», «Исключающее ИЛИ». Приведите их условные обозначения и законы функционирования.

3) Что представляет собой автомат с памятью? Опишите его основные параметры. Какой цифровой автомат называется элементарным?

4) В чём заключаются различия между автоматами Мили и автоматами Мура? Откуда взялись названия этих автоматов?

5) Дайте определение триггеру. На какие группы делятся триггеры по функциональному назначению и способу записи информации?

6) Приведите условное обозначение RS- триггера. Объясните закон функционирования RS- триггера на базе элементов «ИЛИ-НЕ». Изучите и поясните принципы работы RS- триггера на элементах «И-НЕ».

7) Какие существуют проблемы в развитии элементной базы вычислительных машин? Каковы перспективы полупроводниковой технологии?

8) В чём заключаются особенности оптических, квантовых, молекулярных и ДНК- компьютеров?

Процессор – это функционально-законченное программно-управляемое устройство, непосредственно осуществляющее процесс обработки цифровой информации в компьютере /1, 2/.

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

Процессор выполняет следующие функции:

1) вычисление адресов команд и операндов;

2) выборку и дешифрацию команд из оперативной памяти;

3) выборку данных из оперативной памяти, микропроцессорной памяти и регистров адаптеров внешних устройств;

Читайте также:  Настройка видеокарты через msi afterburner для майнинга

4) приём и обработку запросов и команд от внешних устройств;

5) обработку данных и их запись в оперативную память, регистры микропроцессора и регистры адаптеров внешних устройств;

6) выработку управляющих сигналов для всех прочих узлов и блоков компьютера;

7) переход к следующей команде.

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

1) Разрядность внутренних регистров – количество бит, которые процессор способен обработать за один приём. Разрядность шины данных определяет количество разрядов, над которыми одновременно могут выполняться операции. Разрядность шины адреса определяет объём памяти (адресное пространство), с которым может работать процессор. Адресное пространство – это максимальное количество ячеек памяти, которое может быть непосредственно адресовано микропроцессором.

2) Рабочая тактовая частота (МГц) во многом определяет быстродействие процессора, поскольку каждая команда выполняется за определённое число тактов. Чем короче машинный такт, тем выше производительность процессора. Быстродействие компьютера также зависит и от тактовой частоты шины системной платы, с которой работает процессор.

3) Кэш-память, устанавливаемая на плате микропроцессора, имеет два уровня:

3.1) L1 – память первого уровня, находящаяся внутри основной микросхемы (ядра) процессора и работающая всегда на полной частоте процессора (впервые появилась в микропроцессорах Intel 386SLC и 486).

3.2) L2 – память второго уровня, кристалл, размещаемый на плате микропроцессора и связанный с ядром внутренней шиной (впервые введена в микропроцессорах Pentium II). Эта память может работать на полной или половинной частоте процессора.

4) Состав инструкций – перечень, вид и тип команд, автоматически выполняемых микропроцессором. Определяет непосредственно те процедуры, которые могут выполняться над данными и те категории данных, над которыми могут выполняться эти процедуры. Существенное изменение состава инструкций произошло в микропроцессорах Intel 80386 (этот состав принят за базовый), Pentium MMX, Pentium III, Pentium 4.

5) Конструктив подразумевает те физические разъёмные соединения, в которые устанавливается микропроцессор. Разные разъёмы имеют различную конструкцию (щелевой разъём – Slot, разъём-гнездо – Soket), разное количество контактов.

Процессоры классифицируются по различным признакам. В соответствии с /1, 13/, можно выделить следующие основные признаки:

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

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

3) По структурному признаку выделяют микропроцессоры с фиксированной разрядностью (имеют строго определённую разрядность) и микропроцессоры с наращиваемой разрядностью (позволяют секциями увеличивать число разрядов).

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

5) По разрядности обрабатываемой информации микропроцессоры могут быть 4, 8, 12, 16, 24, 32 и 64-разрядными. На практике наибольшее распространение имеют 32-разрядные процессоры; всё большее применение находят 64-разрядные процессоры.

6) По виду технологии изготовления БИС (СБИС) микропроцессоры делятся на две группы: процессоры, построенные на БИС, изготовленных поуниполярной технологии, и процессоры, построенные на БИС, изготовленных по биполярной технологии. Представители первой группы: p-канальные (p-МОП), n-канальные (n-МОП), комплиментарные (КМОП) БИС. (МОП – металл-окисел-проводник). Ко второй группе относятся БИС на базе транзисторно- транзисторной логики (ТТЛ), эмиттерно-связанной логики (ЭСЛ) и интегральной инжекторной логики (И 2 Л). Вид технологии изготовления БИС во многом определяет степень интеграции микросхем, быстродействие, энергопотребление, помехозащищённость и стоимость процессоров. По комплексу этих признаков можно отдать предпочтение микропроцессорам, выполненным по n-МОП и КМОП- технологиям, обеспечивающим высокую плотность компоновки, высокое быстродействие и относительно малую стоимость. ЭСЛ обеспечивает самое высокое быстродействие процессоров, но низкую плотность компоновки и высокое энергопотребление. Технология И 2 Л даёт усреднённые характеристики микропроцессоров.

Читайте также:  На вторую видеокарту не ставится драйвер

7) По характеру системы команд выделяют процессоры с полным набором инструкцийили CISC-процессоры (Complex Instruction Set Command), процессоры с сокращённым набором инструкций или RISC-процессоры (Reduced Insrruction Set Command), процессоры со сверхбольшим командным словом или VLIW-процессоры(Very Long Instruction Word). CISC-процессоры имеют большой набор разноформатных команд, что позволяет применять эффективные алгоритмы решения задач, но, в то же время, усложняет схему процессора, и в общем случае не обеспечивает максимального быстродействия. Архитектура CISC присуща классическим процессорам. RISC-процессоры содержат набор простых, чаще всего встречающихся в программах инструкций. При необходимости выполнения более сложных команд в микропроцессоре производится их автоматическая сборка из простых команд. Все простые команды имеют одинаковый размер и на их выполнение тратится один машинный такт (на выполнение самой короткой команды из системы CISC обычно тратится четыре такта). Современные 64-разрядные RISC-процессоры выпускаются многими фирмами: Apple (PowerPC), IBM (PPC) т.д. В VLIW-процессорах одна инструкция содержит несколько операций, которые должны выполняться параллельно. Задача распределения работы между несколькими вычислительными устройствами процессора решается во время компиляции программы. Такой подход позволили уменьшить габариты процессоров и потребление энергии. Примерами VLIW-процессоров служат Itanium фирмы Intel, McKinley фирмы Hewlett-Packard и другие.

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

С историей развития процессоров и их сравнительной характеристикой более подробно можно ознакомится в /2, 13/. Далее рассмотрим физическую и функциональную структуру процессора.

Физическая структура процессора является достаточно сложной. В соответствии с /2/, ядро процессора содержит главный управляющий и исполняющие модули – блоки выполнения операций над целочисленными данными. К локальным управляющим схемам относятся: блок с плавающей запятой, модуль предсказания ветвлений, регистры микропроцессорной памяти, регистры кэш-памяти 1-го уровня, шинный интерфейс и многое другое.

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

В самом общем случае функциональную структуру процессора можно представить в виде композиции, согласно одним источникам /2, 4/, двух частей: операционного устройства (ОУ) и шинного интерфейса (ШИ), согласно другим /1/,- трёх блоков: операционного блока (ОБ), управляющего блока (УБ) и интерфейсного блока (ИБ). Имеющиеся незначительные расхождения в количестве и названии блоков ни коим образом не нарушают число и принципы функционирования компонентов процессора. Поэтому рассмотрим первый (более наглядный) вариант из источника /2/.

Упрощённая типовая структура процессора представлена на рисунке 4.1.

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

Рисунок 4.1 – Упрощённая типовая структура процессора

Источник

Adblock
detector