1.3. Классическая архитектура ЭВМ

 

Считается, что основные идеи построения современных ЭВМ в 1945 г. Сформулировал американский математик Дж. фон Нейман, определив их как принципы программного управления:

1) информация кодируется в двоичной форме и разделяется на единицы – слова.

2) разнотипные по смыслу слова различаются по способу использования, но не по способу кодирования.

3) Слова информации размещаются в ячейках памяти и идентифицируются номерами ячеек – адресами слов.

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

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

Поэтому классическую архитектуру современных ЭВМ, представленную на рисунке 1.3, часто называют «архитектурой фон Неймона».

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

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

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

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

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