# Вопрос 1: Принципы фон Неймана

Фон Нейман впервые предложил в 40-х годах XX века концепцию хранимой программы, основные принципы которой заключаются в следующем:

  1. Двоичное кодирование: вся информация (как команды, так и данные) кодируется двоичными циф- рами 0 и 1, поскольку двоичное кодирование по теории информации близко к оптимальному, а кроме того, легче реализовать элементы с двумя устойчивыми состояниями (магнитные сердечники, триггеры).

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

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

  4. Адресность: в команде указываются не сами данные, а адреса их размещения в памяти.

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

1) наличие единого вычислительного устройства, включающего один процессор, память и некоторые внешние устройства;

2) использование линейной структуры адресации памяти со словами фиксированной длины;

3) централизованный принцип управления выполнением программы по последовательному алгоритму;

4) низкий уровень машинных команд, позволяющих выполнять только элементарные операции.

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

  • увеличение разрядности обработки данных (16 бит -> 32 и 64 бит);

  • активное использование конвейеризации при выборке и обработке команд;

  • активное использование кэш-памяти (Cache – тайник, скрытый), т.е. модулей памяти, которые яв- ляются буферными между процессором и оперативной памятью.

Кроме того, наряду с Принстонской архитектурой, подразумевающей хранение команд и данных в общей памяти, распространяется Гарвардская архитектура, использующая раздельное хранение команд и данных.

results matching ""

    No results matching ""