Фон Нейман против гарвардской архитектуры

Почему компьютерная архитектура, основанная на архитектуре фон Неймана, предпочтительнее архитектуры Гарварда при проектировании персональных компьютеров; в то время как гарвардская архитектура используется для проектирования компьютерных систем на основе микрокомпьютеров и компьютерных систем на основе DSP?

2 ответа

Решение

В современных процессорах ЦП для ПК используются элементы как Гарварда, так и фон Неймана (хотя и более фон Неймана).

Если вы посмотрите на кэши L1, то увидите, что в системах AMD, ARM и Intel у вас есть кэш инструкций L1 и кэш данных L1, к которым можно обращаться независимо и параллельно. Это часть Гарварда. Однако в L2, L3 или в DRAM данные и коды смешиваются. Это часть фон Неймана.

Так почему же чистая гарвардская архитектура не применяется для ПК? Мое мнение, что это не имеет смысла. Если вы профилируете основное большинство приложений, вы увидите, что коэффициент пропуска кэша инструкций L1 очень мал. Это означает, что обычно размер кода не является проблемой. Поэтому не имеет смысла разрабатывать совершенно отдельный путь для кода. Данные могут расти очень большими, но код не может на самом деле.

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

Принципиальное отличие архитектуры фон Неймана от архитектуры Гарварда состоит в том, что, хотя в архитектуре Гарварда память команд отличается от памяти данных, в фон Нейманн они одинаковы. Это отражает практическую реальность ПК (в которых программы хранятся и считываются с того же носителя, что и данные, обычно диск и ОЗУ), и микроконтроллеров (в которых программа хранится в энергонезависимой памяти, а данные хранятся в энергозависимой памяти).).

Другие вопросы по тегам