Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
I 04 ПРИНЦИПЫ ФУНКЦИОНИРОВАНИЯ ПРОЦЕССОРА.pdf
Скачиваний:
48
Добавлен:
08.06.2015
Размер:
3.56 Mб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «САМАРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

К а ф е д р а «Автоматика и управление в технических системах»

ИЗУЧЕНИЕ ПРИНЦИПОВ ФУНКЦИОНИРОВАНИЯ ПРОЦЕССОРА

Методические указания к лабораторной работе

САМАРА 2005

Составитель: И.А. ДАНИЛУШКИН

УДК 681.51

Изучение принципов функционирования процессора: Метод. указ. к

лаб. работе по курсу «Вычислительные машины, системы и сети» / Самар. гос. техн. ун-т; Сост. И.А. Данилушкин. Самара 2005, 12 с.

Рассматриваются примеры исполнения программ базовой ЭВМ. Иллюстрация принципов управления процессором как последовательным операционным устройством выполнена с помощью пошагового исполнения микропрограмм, реализующих выполнение операций.

Предназначены для студентов специальностей 22.01.01 – Управление и информатика в технических системах и22.03.01 – Автоматизация технологических процессов и производств (компьютерные системы управления в производстве и бизнесе).

Ил. 6. Табл. 2. Библиогр.: 1 назв.

Печатается по решению редакционно-издательского совета СамГТУ

ЛАБОРАТОРНАЯ РАБОТА

ИЗУЧЕНИЕ ПРИНЦИПОВ ФУНКЦИОНИРОВАНИЯ ПРОЦЕССОРА

Цель работы: Познакомиться с принципами организации управления процессором. Рассмотреть цикл процессора при выполнении различных команд обработки и передачи данных.

Состав базовой ЭВМ

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

Ниже рассмотрена гипотетическая машина(базовая ЭВМ), обладающая типичными чертами многих конкретных ЭВМ.

Память состоит из 4096 ячеек по 16 бит с адресами 0, 1, … 4094, 4095. (Каждая ячейка адресуется 12-тибитным адресом). Одну ячейку можно использовать для хранения одного числа или одной команды программы, закодированной в двоичном коде. Пользователь сам определяет, какая область памяти будет использоваться для данных и какая – для программы.

Команды исходной программы размещаются в соседних ячейках -па мяти. Машина считывает одну команду из памяти и выполняет указанную в ней операцию. Затем она считывает следующую команду из последующей ячейки и выполняет следующую операцию и т.д.

Процессор. В состав процессора входят:

·три 16-ти разрядных регистров: регистр команд, аккумулятор, регистр данных, два 12-ти разрядных регистра: программный счётчик и регистр адреса;

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

3

·устройство управления.

Управление осуществляется с помощью управления вентильными схемами.

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

а)

 

Регистр

 

 

б)

 

Регистр

 

 

 

(источник информации)

 

(источник информации)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

0

1

1

1

0

1

 

1

0

0

1

1

1

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управляющий

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В

 

 

 

 

 

 

 

 

 

Шина

 

сигнал

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

1

0

0

1

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Регистр

 

 

(приёмник информации)

Рис. 1. Регистры, шины и вентильные схемы

На Рис. 3 представлена базовая ЭВМ. Регистры, входящие в её состав предназначены для следующего:

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

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

Регистр адреса (РА) содержит значение исполнительного адреса ячейки памяти.

4

Рис. 2

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

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

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

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

Цикл процессора

Команды исполняющейся программы хранятся в памяти ЭВМ друг за другом.

Функционирование ЭВМ с приведённой выше структурой можно описать следующим обобщённым алгоритмом (рис. 2).

1.Инициализация. После включения ЭВМ или операции сброса в регистры -цен трального процессора заносятся некоторые начальные значения. Программному счётчику присваивается начальное значение, равное адресу первой команды программы.

2.Производится считывание команды из памяти. В качестве адреса ячейки памяти используется содержимое программного счётчика.

3.Содержимое считанной ячейки памяти интерпретируется как команда и помещается в регистр команды. Устройство управления приступает к интерпретации

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

длину, и, если это необходимо, организует дополнительные опера-

5

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

4.По адресным полям команды устройство управления определяет, имеет ли команда операнды в памяти. Если это так, то вычисляются адреса операндов и производятся операции чтения памяти для считывания операндов.

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

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

7.Если последняя команда не была командой«ОСТАНОВИТЬ ПРОЦЕССОР», то описанная последовательность действий повторяется, начиная с шага 2.

Описанная последовательность действий центрального процессора с шага 2 до шага 6 называется циклом процессора.

Система команд процессора

Ниже представлен список команд, реализуемых базовой ЭВМ (табл. 1). Для всех команд, выполнение которых требует двух операндов, один из операндов располагается в памяти ЭВМ. Адрес ячейки с операндом указывается в команде. Второй операнд располагается в регистре аккумуляторе. Результат выполнения команды сохраняется в аккумуляторе.

 

 

Таблица 1.

Мнемоника

Значение

Описание

 

 

 

 

 

CLA

A000

Очистка аккумулятора. По этой команде

 

 

производится установка аккумулятора в нуль

 

NOP

0xxx

Нет операции. Процессор переходит к вы-

 

 

 

борке следующей команды

 

HLT

C000

Завершение программы

 

CMA

B000

Инверсия содержимого аккумулятора(поби-

 

 

 

товое логическое отрицание)

 

6

 

 

 

 

Мнемоника

Значение

Описание

 

 

 

 

AND [XXX]

2xxx*

Побитовое логического умножение содер-

 

 

 

 

жимого ячейки памяти с адресом

[XXX] и

 

 

 

 

аккумулятора. Результат формируется в ак-

 

 

 

 

кумуляторе.

 

 

 

 

OR [XXX]

1xxx

Побитовое логического сложение содержи-

 

 

 

 

 

мого ячейки памяти с адресом [XXX] и акку-

 

 

 

 

мулятора. Результат формируется в аккуму-

 

 

 

 

ляторе.

 

 

 

 

ADD [XXX]

4xxx

Сложение содержимого ячейки памяти с ад-

 

 

 

 

 

ресом [XXX] и

аккумулятора.

Результат

 

 

 

 

формируется в аккумуляторе.

 

с

 

SUB [XXX]

6xxx

Вычитание содержимого ячейки памяти

 

 

 

 

адресом [XXX] из

аккумулятора. Результат

 

 

 

 

формируется в аккумуляторе.

 

 

 

MOV [XXX]

3xxx

Запись значения из аккумулятора в ячейку

 

 

 

 

 

памяти с адресом [XXX].

 

 

 

JMP [XXX]

5xxx

Переход к команде, расположенной по адре-

 

 

*ххх – означает

 

су [XXX].

 

 

 

 

любое

шестнадцатеричное число, в диапазоне от 0 до FFF

 

Рассмотрим пример сложения двух чисел53 и 106. Для этого исполь-

 

зуется следующая программа (табл. 2)

 

 

 

 

 

 

 

 

 

Таблица 2.

 

 

 

 

 

 

 

 

Ячейки памяти

Комментарии

 

 

 

Адрес

Содержимое

 

 

 

 

 

 

 

 

0

0053

 

Первое слагаемое

 

 

 

 

1

0106

 

Второе слагаемое

 

 

 

 

2

0000

 

Ячейка, предназначенная для результата

 

 

3

A000

CLA

Аккумулятор содержит 0000 (очистка)

 

 

4

4000

ADD [0]

Аккумулятор содержит53 (0+53)

 

 

 

5

4001

ADD [1]

Аккумулятор содержит 159 (53+106)

 

 

6

3002

MOV [2]

В ячейку с адресом22 записывается 159

 

 

7

C000

HLT

Останов машины (прекращение выборки ко-

 

 

 

манд)

 

 

 

 

 

 

 

 

 

 

Программа записана в память ЭВМ начиная с ячейки 3, а числовые данные – с ячейки 0. Для выполнения программы необходимо установить в программный счётчик число3 и пустить ЭВМ. Тогда выполнение про-

7

граммы начнётся с чтения содержимого ячейки 3. Команда CLA установит аккумулятор в нуль. При выполнении этой команды содержимое программного счётчика увеличится на1 и следующая команда будет считываться из ячейки 4. Это команда ADD [0] складывает содержимое ячейки 0 с содержимым аккумулятора, т.е. 53 с 0. По окончании выполнения команды в аккумуляторе содержится число 53, а в программном счётчике – 5 (он опять наращивается на 1).

Следующая команда читается из ячейки 5, выполняется суммирование содержимого ячейки 1 и аккумулятора, т.е. 106 и 53. По окончании команды в аккумуляторе содержится сумма106+53=159, а в программном счётчике – 6. Следующая команда – MOV [2] пересылает содержимое аккумулятора в ячейку с адресом 2. Теперь в этой ячейки и аккумуляторе содержится число 159, а в программном счётчике – 7. Из ячейки 7 выбирается команда HLT, программный счётчик наращивается на 1 ( в нём содержится число 8), но по команде HLT прекращается выборка команд, т.е. фиксируется окончание выполнения программы.

Указание считывания/записи

РА

У2

Память

У1

 

У3

 

 

 

 

РД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

У4

 

У5

 

У6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПС

 

 

 

 

 

 

 

 

 

 

 

 

У7

 

У8

 

 

 

 

 

РК

 

 

 

 

 

 

 

КОП

Адрес операнда

 

 

 

Указание

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

А Л У

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

типа

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

операции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Устройство

Сигналы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

управления

управления

У9

У10

Акк

Рис. 3. Структура базовой ЭВМ

1.Рассмотрим теперь подробнее выполнение одной из команд этой программы, например, команды ADD [1]. Перед её выполнением в

8

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]