Risk

  • 23 дек. 2012 г.
  • 7142 Слова
Архитектуры ЭВМ
Под архитектурой ЭВМ понимается функциональная и структурная организация машины, определяющая методы кодирования данных, состав, назначение, принципы взаимодействия технических средств и программного обеспечения.
Можно выделить следующие важные для пользователя группы характеристик ЭВМ, определяющих её архитектуру:
1) характеристики и состав модулей базовой конфигурации ЭВМ;2) характеристики машинного языка и системы команд (количество и номенклатура команд, их форматы, системы адресации, наличие программно-доступных регистров в процессоре и т.п.), которые определяют алгоритмические возможности процессора ЭВМ;
3) технические и эксплуатационные характеристики ЭВМ;
4) состав программного обеспечения ЭВМ и принципы его взаимодействия с техническими средствами ЭВМ.
Кнаиболее общему принципу классификации ЭВМ и систем по типам архитектуры следует отнести разбиение их на однопроцессорные и многопроцессорные архитектуры (см. рис.2.1).
Исторически первыми появились однопроцессорные архитектуры. Классическим примером однопроцессорной архитектуры является архитектура фон Неймана со строго последовательным выполнением команд: процессор по очереди выбирает командыпрограммы и также по очереди обрабатывает данные (программа и данные хранятся в единственной последовательно адресуемой памяти).


Рис. 2.1. Архитектуры ЭВМ
По мере развития вычислительной техники архитектура фон Неймана обогатилась сначала конвейером команд, а затем многофункциональной обработкой, и по таксономии М.Флина получила обобщенное название компьютера с одним потоком команд и одним потокомданных.
RISC архитектура
Традиционная архитектура вычислительных ядер развивалась по принципу объединения часто используемых последовательностей элементарных машинных команд в одну сложную микрооперацию. В результате сформировался набор команд, состоящий как из простых машинных команд, так и из набора более сложных микроопераций, объединяющей в одной машинной команде операции чтения/записи данныхи арифметические действия над данными. Из-за большого количества способов адресации данных количество сложных микроопераций в несколько раз превысило количество элементарных машинных команд. Подобная архитектура получило название CISC (Complex Instruction Set Computing - вычислитель с полным набором инструкций).
По мнению разработчиков CISC-архитектуры, аппаратная поддержка выполнения сложныхмашинных команд должна была увеличить производительность программ, использующих сложные микрооперации, по сравнению с программами, написанными с использованием элементарных машинных команд.
Однако на практике все обстояло несколько иначе. Проведенные в 1970-х годах сотрудниками IBM исследования показали, что наиболее часто при написании программ программисты использовали ограниченный набормикроопераций, количество которых составляло всего 20% от полного набора машинных команд CISC-архитектуры, остальные же микрооперации практически игнорировались.
Причиной такого дисбаланса явились:
• Ограниченная поддержка полного набора команд CISC-архитектуры существующими на тот момент компиляторами.
• Отсутствие унифицированного формата команд, что усложняло использование полного набора машинных командпрограммистами.
Кроме того, составные микрооперации, призванные увеличить быстродействие вычислений, начали проигрывать в быстродействии последовательностям элементарных машинных команд. Это явилось результатом того, что в процессе эволюции вычислительных ядер основная работа велась над оптимизацией выполнения наиболее часто используемых элементарных машинных команд. Кроме того, из-за ограниченногонабора специализированных регистров в CISC-архитектуре, большинство вычислений велось по схеме: чтение операндов из оперативной памяти в регистры, выполнение арифметического действия над операндами, запись полученного результата из регистра в оперативную память. Так как скорость чтения данных из оперативной памяти в регистр и записи данных из регистра в оперативную память...
tracking img