Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТМПСК лекции.doc
Скачиваний:
13
Добавлен:
31.08.2019
Размер:
632.32 Кб
Скачать

1.4 Принципы построения программного уу срв

/ Фрагменты в данном разделе, посвящённые фон – неймановской архитектуре очень важны для понимания структуры и работы микропроцессора (раздел 2.1 лекционного курса), ибо, изучая его структуру в разделе 2.1, Вы не только быстро «схватите» принцип его работы (как он работает?), но и будете знать, почему он работает так, а не иначе./

ЦЕЛЬ – дать принцип построения и структуру программного УУ СРВ.

Исходная фон неймановская машина. Почти все компьютеры сейчас фон – неймановского типа. Джон фон Нейман – американский ученый венгерского происхождения в 1945г. предложил идею построения вычислительных машин на основе следующей архитектуры (фоннеймановская архитектура) (рис.1.4.1).

Рис. 1.4.1 Исходная фон – неймановская машина

Фон – неймановская машина имеет следующие части: АЛУ, ЗУ, УУ, ВВОД, ВЫВОД. В АЛУ (Арифметико – Логическом Устройстве) выполняются операции (команды) над двоичным числами; в ЗУ (Запоминающем Устройстве) хранится информация в двоичном коде; УУ (Устройство Управления) управляет работой АЛУ. Устройство ВВОДа осуществляет ввод информации в двоичном виде в машину, а устройство ВЫВОДа – вывод обработанной двоичной информации из машины.

Информация ЗУ может быть в виде:

программ, представляющих собой набор команд, обрабатываемых в АЛУ;

данных, которые обрабатываются командами.

Две фундаментальные идеи фон Неймана определили направление развития вычислительной техники:

♦ программа вводится в машину не через отдельный ввод, а через тоже устройство ввода, через которое в нее поступают данные;

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

Несмотря на современную очевидность этих идей, тогда (40-е, 50-е годы 20-го века) они были не ясны. Так, в 50-е годы на равных правах с фон – неймановской машиной существовала гарвардская схема, в которой для программ был свой ввод – вывод и хранились они в отдельном от данных ЗУ (чаще всего это было постоянное ЗУ, а ввод – вывод программ состоял в замене одного ЗУ на другое). Советская вычислительная машина МЭСМ (1952г.) имела раздельное ЗУ: 19- разрядные ячейки для программ м 16-ти разрядные для данных.

При совмещении путей ввода программ и данных:

■ отпадала необходимость в отдельном ЗУ программ;

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

Дальнейшее развитие фон – неймановской машины шло по двум путям ее усовершенствования в виде сращивания:

► АЛУ + УУ;

► ЗУ+ УУ.

АЛУ + УУ. Идея сращивания АЛУ и УУ привела к идее ЦПр (Центрального Процессора), т.е. такого АЛУ, в котором есть свое местное УУ, выполняющее наиболее оперативные функции (рис.1.4.2).

Рис.1.4.2 Типовая фон – неймановская машина

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

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

ЦПр, состоящий из УУ и АЛУ, определяет действия, подлежащие выполнению, путем считывания команд, находящихся в ЗУ. Программа состоит из набора двоичных команд, которые выбираются одна за другой в ЦПр с помощью СчК (Счетчика Команд), находящегося в УУ. Если в СчК занести определенный адрес ЗУ, начиная с которого в ЗУ находится данная программа, то после выполнения очередной команды, СчК автоматически наращивается на 1. Затем идет выборка по этому адресу следующей команды, ее обработка, затем опять СчК = СчК + 1 и так далее до команды стоп. Исключение составляют команды переходов в программах. Они меняют последовательный ход программы. В этих командах при их реализации формируется новый адрес памяти (куда уйти в программе, чтобы продолжить вычисления). Затем этот адрес записывается в СчК и выборка команд идет уже, начиная с этого адреса.

Связь ВВОДа / ВЫВОДа с ЗУ показывает необходимость двух видов преобразования информации, приходящей в машину:

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

♦ двоичный код в ЗУ, предназначенный для ВЫВОДа должен быть преобразован в сигналы той же физической основы, которые «понятны» устройству ВЫВОДа.

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

ЗУ + УУ. На идее сращивании УУ и ЗУ развивалось микропрограммное управление. Целью такого сращивания – стремление упростить работу. Вместо того, чтобы расписывать каждую команду программы до мелких операций (фрагменты такой росписи были однотипны), лучше заранее записать такую «мелочевку» в память (создать микропрограмму), и при необходимости вызывать нужные наборы микроопераций (т.е. микропрограмм) по известным адресам. Поскольку изменения в таких программах редки, то целесообразно сделать такую память постоянной т.е. только читаемой. Схемная реализация в виде только читаемой памяти дает:

● увеличение быстродействия (подумайте, почему?);

● потенциальное уменьшение сбоев и ошибок (подумайте, почему?).

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

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

♦ скорости реакции на возмущения;

♦ гибкости, как способности внесения изменений;

♦ внесению несанкционированных изменений

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

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