Принстонская и Гарвардская архитектура ЭВМ. — КиберПедия 

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

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Принстонская и Гарвардская архитектура ЭВМ.

2017-06-02 917
Принстонская и Гарвардская архитектура ЭВМ. 0.00 из 5.00 0 оценок
Заказать работу

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

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

Пассивность памяти и активность процессора. Ячейка памяти всегда содержит какое-то значение. Полученное ячейкой значение не может быть изменено иначе как при выполнении специальной команды процессора, предназначенной для этого действия. Процессор всегда выполняет некоторую команду, закодированную последовательностью битов в ячейке и извлеченную из памяти.

Достоинства и недостатки Принстонской архитектуры. Основное преимущество Принстонской архитектуры – упрощение устройства ВМ, так как реализуется обращение только к одной общей памяти. Кроме того, использование единой области памяти позволяло оперативно перераспределять ресурсы между областями программ и данных, что существенно повышало гибкость вычислительной системы с точки зрения разработчика программного обеспечения. Размещение стека в общей памяти облегчало доступ к его содержимому. В разные моменты времени одна и та же область памяти может использоваться и как память программ и как память данных. Для того, чтобы программа могла работать в произвольной области памяти, ее необходимо модернизировать перед загрузкой, т.е. работать с нею как с обычными данными. Эта особенность архитектуры позволяет наиболее гибко управлять работой ВС, но создает принципиальную возможность искажения управляющей программы, что понижает надежность работы аппаратуры.

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

Достоинства и недостатки Гарвардской архитектуры. Основной особенностью Гарвардской архитектуры является использование раздельных адресных пространств для хранения команд и данных. Первым компьютером, в котором была использована идея гарвардской архитектуры, был Марк I. Разработан и построен в 1941 году по контракту с IBM молодым гарвардским математиком Говардом Эйкеном и ещё четырьмя инженерами этой компании на основе идей англичанина Чарльза Бэббиджа. Для хранения инструкций в Марк I использовалась перфорированная лента, а для работы с данными – электромеханические регистры. И такое разделение объяснялось, прежде всего, существующими тогда технологиями производства памяти: память для хранения данных с возможностью их перезаписи была малой емкости и дорого стоила, поэтому ее невозможно было использовать для хранения программ. В некотором смысле так было проще (смотрите историю вычислительной техники).

Гарвардская архитектура почти не использовалась до конца 70-х годов, пока производители микроконтроллеров (МК) не поняли, что она дает определенные преимущества разработчикам автономных систем управления. Дело в том, что, судя по опыту использования микропроцессорных систем (МПС) для управления различными объектами, для реализации большинства алгоритмов управления такие преимущества Принстонской архитектуры как гибкость и универсальность не имеют большого значения. Анализ реальных программ управления показал, что необходимый объем памяти данных МК, используемый для хранения промежуточных результатов, как правило, на порядок меньше требуемого объема памяти программ. В этих условиях использование единого адресного пространства приводило к увеличению формата команд за счет увеличения числа разрядов для адресации операндов. Применение отдельной небольшой по объему памяти данных способствовало сокращению длины команд и ускорению поиска информации в памяти данных.

Кроме того, Гарвардская архитектура обеспечивает потенциально более высокую скорость выполнения программы по сравнению с Принстонской за счет возможности реализации параллельных операций. Выборка следующей команды может происходить одновременно с выполнением предыдущей, и нет необходимости останавливать процессор на время выборки команды. Этот метод реализации операций позволяет обеспечивать выполнение различных команд за одинаковое число тактов, что дает возможность более просто определить время выполнения циклов и критичных участков программы. Однако такая организация сложнее по сравнению с Принстонской, так как заставляет процессор обслуживать обмен по двум шинам одновременно. Кроме того, такая схема реализации доступа к памяти имеет один очевидный недостаток – высокую стоимость. При разделении каналов передачи адреса и данных на кристалле процессора последний должен иметь почти в два раза больше выводов (так как шины адреса и данных составляют основную часть выводов микропроцессора). Способом решения этой проблемы стала идея использовать общую шину данных и шину адреса для всех внешних данных, а внутри процессора использовать шину данных, шину команд и две шины адреса. Такую концепцию стали называть модифицированной Гарвардской архитектурой. Разделение шин в модифицированной Гарвардской структуре осуществляется при помощи раздельных управляющих сигналов: чтения, записи или выбора области памяти (например, микроконтроллер ADuC812).

Большинство производителей современных 8-разрядных МК используют Гарвардскую архитектуру. Однако Гарвардская архитектура является недостаточно гибкой для реализации некоторых программных процедур. Поэтому сравнение МК, выполненных по разным архитектурам, следует проводить применительно к конкретному приложению. В Гарвардской архитектуре принципиально невозможно производить операцию записи в память программ, что исключает возможность случайного разрушения управляющей программы в случае неправильных действий над данными. Эти особенности определили области применения этой архитектуры построения микропроцессоров. Гарвардская архитектура применяется в микроконтроллерах, где требуется обеспечить высокую надежность работы аппаратуры и в сигнальных процессорах, где эта архитектура кроме обеспечения высокой надежности работы устройств позволяет обеспечить высокую скорость выполнения программы.

Существуют гибридные модификации архитектур, сочетающие достоинства как Гарвардской, так и Принстонской (фон-Неймановской) архитектур. Современные CISC-процессоры обладают раздельной кэш-памятью 1-го уровня для инструкций и данных, что позволяет им за один такт получать одновременно как команду, так и данные для её выполнения, т.е. процессорное ядро, формально, является Гарвардским, но с программной точки зрения выглядит как Принстонское, что упрощает написание программ. Обычно в данных процессорах одна шина используется и для передачи команд, и для передачи данных, что упрощает конструкцию системы. Современные варианты таких процессоров могут иногда содержать встроенные контроллеры сразу нескольких разнотипных шин для работы с различными типами памяти – например, DDR RAM и Flash. Тем не менее, и в этом случае шины, как правило, используются и для передачи команд, и для передачи данных без разделения, что делает данные процессоры еще более близкими к Принстонской архитектуре при сохранении плюсов Гарвардской архитектуры.

 


Поделиться с друзьями:

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

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

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.013 с.