Гарвардская Архитектура
В обычном компьютере, построенном по архитектуре фон Неймана, инструкции и данные хранятся в одной и той же памяти. Такие же шины используются для получения инструкций и данных. Это означает, что ЦП не может выполнять обе функции одновременно (читать инструкцию и читать / писать данные). Гарвардская архитектура - это компьютерная архитектура, которая содержит отдельное хранилище и отдельные шины (путь сигнала) для инструкций и данных. Он был в основном разработан, чтобы преодолеть узкое место архитектуры фон Неймана. Основное преимущество наличия отдельных шин для инструкций и данных заключается в том, что ЦП может одновременно получать доступ к инструкциям и считывать / записывать данные.
Структура Гарвардской архитектуры:
- Автобусов:
Автобусы используются в качестве сигнальных путей. В гарвардской архитектуре есть отдельные шины как для инструкций, так и для данных. Типы автобусов:
Шина данных: передает данные между системой основной памяти, процессором и устройствами ввода-вывода.
Шина адресации данных: передает адрес данных от процессора в систему основной памяти.
Шина инструкций: передает инструкции между системой основной памяти, процессором и устройствами ввода-вывода.
Адресная шина инструкций: передает адрес инструкций от процессора в систему основной памяти. - Операционные регистры:
В нем задействованы разные типы регистров, которые используются для хранения адресов разных типов инструкций.
Например, регистр адреса памяти и регистр данных памяти являются рабочими регистрами. - Счетчик команд:
В нем указано расположение следующей инструкции, которая должна быть выполнена. Затем программный счетчик передает следующий адрес в регистр адресов памяти. - Арифметико-логический блок:
Арифметико-логическая единица - это часть ЦП, которая выполняет все необходимые вычисления. Он выполняет сложение, вычитание, сравнение, логические операции, операции сдвига битов и различные арифметические операции. - Устройство управления:
Блок управления - часть ЦП, которая обрабатывает все управляющие сигналы процессора. Он управляет устройствами ввода и вывода, а также управляет перемещением инструкций и данных в системе. - Система ввода / вывода:
Устройства ввода используются для считывания данных в основную память с помощью инструкции ввода ЦП. Информация с компьютера в качестве вывода передается через устройства вывода. Компьютер выдает результаты вычислений с помощью устройств вывода.
Преимущество Гарвардской архитектуры:
Гарвардская архитектура имеет две отдельные шины для инструкций и данных. Следовательно, ЦП может одновременно получать доступ к инструкциям и считывать / записывать данные. Это главное преимущество гарвардской архитектуры.
На практике используется модифицированная гарвардская архитектура, где у нас есть два отдельных кэша (данных и инструкций). Это распространено и используется в процессорах X86 и ARM.