Понятие архитектуры и основные виды архитектуры
«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ОТКРЫТЫЙ УНИВЕРСИТЕТ Им. В.С. Черномырдина»
Факультет прикладной математики
Кафедра информатики и информационных технологий.
Курсовая работа по дисциплине «Теоретические основы информатики».
Тема: «Понятие архитектуры и основные виды архитектуры»
Ф-т «Прикладная математика»
1 курс
Специальность 080500.62
Тчанников Даниил Вячеславович
Проверила:
Журавлева Татьяна Вячеславовна
Москва, 2011
Оглавление
Архитектура ЭВМ 2
Классическая архитектура (Архитектура фон Неймана). 3
Многопроцессорная архитектура. 6
Многомашинная вычислительная система. 8
Параллельные вычислительные системы. 10
Архитектура ЭВМ
Что такое архитектура?
Термин «Архитектура» в литературе по электронно-вычислительной технике используется довольно часто. К сожалению, определение этого понятия содержание у разных авторов может очень сильно отличаться. Поэтому в этом вопросе, следует разобраться довольно, тщательнее. Начнем с происхождения с происхождения термина. Слово "архитектура" в своем изначальном смысле используется в градостроении. Будучи достаточно сложной структурой. К примеру, можно рассмотреть современный город, который состоит из районов, площадей, улиц, домов, расположенных определенным образом. Жителей города обычно мало интересует, как выглядит конкретный дом и из каких материалов он построен. Зато очень важно знать район, где этот дом расположен, улицы, ведущие к нему, и транспорт, пользуясь которым можно сократить время в пути.
Для того чтобы ориентироваться в хитросплетении улиц и площадей, в любом городе существует исторически сложившаяся система названий, а также определенная нумерация домов. Наличие общепринятой адресации позволяет однозначно определить положение любого строения и в случае необходимости быстро отыскать его. Именно на существовании такой адресной системы построена работа почты.
Используя аналогию с градостроительством, можно понимать под архитектурой ЭВМ ту совокупность их характеристик, которая необходима пользователю. Это, прежде всего, основные устройства и блоки ЭВМ, а также структура связей между ними. И действительно, если заглянуть, например, в "Толковый словарь по вычислительным системам", мы прочтем там, что термин "архитектура ЭВМ ... используется для описания принципа действия, конфигурации и взаимного соединения основных логических узлов ЭВМ (вследствие чего термин "архитектура" оказывается ближе к обыденному значению этого слова).
Прежде чем приступить к дальнейшему описанию вопроса, необходимо определить для себя: "Что такое архитектура компьютера?"
Архитектурой компьютера называется его описание на некотором общем уровне, включающее описание пользовательских возможностей программирования, системы команд, системы адресации, организации памяти и т.д. Архитектура определяет принципы действия, информационные связи и взаимное соединение основных логических узлов компьютера.
Виды архитектуры:
- Классическая архитектура
- Многопроцессорная архитектура
- Многомашинная вычислительная система
- Архитектура с параллельными процессорами
Классическая архитектура (Архитектура фон Неймана).
Основы учения об архитектуре вычислительных машин заложил выдающийся американский математик Джон фон Нейман. Он подключился к созданию первой в мире ламповой ЭВМ ENIAC в 1944 г., когда ее конструкция была уже выбрана. В процессе работы во время многочисленных дискуссий со своими коллегами Г. Голдстайном и А. Берксом фон Нейман высказал идею принципиально новой ЭВМ. В 1946 г. ученые изложили свои принципы построения вычислительных машин в ставшей классической статье «Предварительное рассмотрение логической конструкции электронно-вычислительного устройства». С тех пор прошло полвека, но выдвинутые в ней положения сохраняют актуальность и сегодня.
В статье убедительно обосновывается
использование двоичной системы
для представления чисел (нелишне
напомнить, что ранее все вычислительные
машины хранили обрабатываемые числа
в десятичном виде). Авторы убедительно
продемонстрировали преимущества двоичной
системы для технической
Еще одной поистине революционной идеей, значение которой трудно переоценить, является предложенный Нейманом принцип «хранимой программы». Первоначально программа задавалась путем установки перемычек на специальной коммутационной панели. Это было весьма трудоемким занятием: например, для изменения программы машины ENIAC требовалось несколько дней (в то время как собственно расчет не мог продолжаться более нескольких минут – выходили из строя лампы). Нейман первым догадался, что программа может также храниться в виде набора нулей и единиц, причем в той же самой памяти, что и обрабатываемые ею числа. Отсутствие принципиальной разницы между программой и данными дало возможность ЭВМ самой формировать для себя программу в соответствии с результатами вычислений.
Principles of the logic unit of the COMPUTER.
1. A principle
of binary coding.
For data presentation
and commands binary notation (figures 0 and 1) is used
2. A principle
of uniformity of memory.
Both programs
(command), and the data concerning programs are stored in the same memory
(and are coded in the same notation — more often binary). Over commands
it is possible to carry out the same actions, as well as over the data.
3. A principle
адресуемости memories.
The structurally
basic memory consists of the numbered cells; during any moment of time
any cell is accessible to the processor; memory internal.
4. A principle
of consecutive programmed control.
All commands
settle down in memory and are carried out consistently, one after end
another, in the sequence defined by the program.
5. A principle
of rigidity of architecture.
Stability in
the course of work of topology, architecture, the list of commands.
Background Neumann
not only has put forward basic principles of the logic unit of the COMPUTER,
but also has offered its structure which was reproduced during first
two generations of the COMPUTER. Mainframes on Neumann are a control
mean (УУ) and the arithmetic-logic device (АЛУ) (usually united
in the central processor), memory, external memory, the input equipment
and a conclusion. The scheme of the device of such COMPUTER is presented
on rice (see more low). External memory differs from the input equipment
and a conclusion that the data in it is brought in a kind, convenient
to the computer, but inaccessible to direct perception by the person.
So, the store on magnetic disks concerns external memory, and the keyboard
– the input equipment, the display and the press – the output equipment.
Рис.
Архитектура ЭВМ, построенной на принципах
фон Неймана. Сплошные линии со стрелками
указывают направление потоков информации,
пунктирные – управляющих сигналов от
процессора к остальным узлам ЭВМ
Устройство управления и
арифметико-логическое устройство в
современных компьютерах
Память (ЗУ) хранит информацию (данные) и программы. Запоминающее устройство у современных компьютеров «многоярусно» и включает оперативное запоминающее устройство (ОЗУ), хранящее ту информацию, с которой компьютер работает непосредственно в данное время (исполняемая программа, часть необходимых для нее данных, некоторые управляющие программы), и внешние запоминающие устройства (ВЗУ) гораздо большей емкости, чем ОЗУ, но с существенно более медленным доступом (и значительно меньшей стоимостью в расчете на 1 байт хранимой информации). На ОЗУ и ВЗУ классификация устройств памяти не заканчивается – определенные функции выполняют и СОЗУ (сверхоперативное запоминающее устройство), и ПЗУ (постоянное запоминающее устройство), и другие подвиды компьютерной памяти.
В построенной по описанной схеме ЭВМ происходит последовательное считывание команд из памяти и их выполнение. Номер (адрес) очередной ячейки памяти. из которой будет извлечена следующая команда программы, указывается специальным устройством – счетчиком команд в УУ. Его наличие также является одним из характерных признаков рассматриваемой архитектуры.
Разработанные фон Нейманом основы архитектуры вычислительных устройств оказались настолько фундаментальными, что получили в литературе название «фон-неймановской архитектуры». Подавляющее большинство вычислительных машин на сегодняшний день – фон-неймановские машины. Исключение составляют лишь отдельные разновидности систем для параллельных вычислений, в которых отсутствует счетчик команд, не реализована классическая концепция переменной и имеются другие существенные принципиальные отличия от классической модели (примерами могут служить потоковая и редукционная вычислительные машины).
Многопроцессорная архитектура.
З
начительное развитие в последнее
время получили многопроцессорные
ЭВМ. Использование таких
Многопроцессорность (мультипроцессорность, многопроцессорная обработка) подразумевает использование пары или большого количества физических процессоров в одной компьютерной системе. Термин можно так же отнести к способности поддержать более чем один процессор и распределить задачи между ними.
- Процессорная симметричность.
В
многопроцессорной
системе все центральные
- Потоки команд и данных:
В
многопроцессорной обработке процессоры могут использоваться для выполнения одной последовательности команд во множественных контекстах, множественные последовательности команд в единственном контексте, или множественные последовательности команд во множественных контекстах .
Классификация по Флинн
Одиночный поток команд |
Множество потоков команд | |
Одиночный поток данных |
SISD |
MISD |
Множество потоков данных |
|
MIMD |
ОКОД (SISD) |
Вычислительная система с |
ОКМД (SIMD) |
Вычислительная система с |
МКОД (MISD) |
Вычислительная система с |
МКМД (MIMD) |
Вычислительная система с |
- Соединения процессоров:
- Многопроцессорные системы с сильной связью: содержат несколько процессоров, которые подключены на шинном уровне. Эти процессоры могут иметь доступ к центральной разделяемой памяти ,или могут участвовать в иерархии памяти и с локальной и с разделяемой памятью.
- Многопроцессорные системы с гибкой связью: часто называемые кластерами, основаны на множественных автономных одиночных или двойных компьютерах, связанных через высокоскоростную систему связи.
Системы с сильной связью работают лучше и физически они меньше, чем гибко связанные системы, но системы с сильной связью имеют тенденцию быть намного больше энергоэффективными, чем кластеры
Многомашинная вычислительная система.
Многомашинная вычислительная система:
- содержит несколько ЭВМ, каждая из которых имеет свою основную память и работает под управлением своей операционной системы. Применение многомашинных систем позволяет повысить надежность вычислительных комплексов, однако при этом оборудование комплекса недостаточно эффективно используется для этой цели. Достаточно в каждой ЭВМ выйти из строя одному устройству ( даже разных типов), как вся система становится неработоспособной.
- представляет собой комплекс из двух или более ЭВМ, связанных между собой либо общей разделяемой памятью, либо линиями передачи информации.
- представляет собой логическое следствие эволюции двух общих тенденций, действующих в области конструирования вычислительных машин: стремления к модульной конструкции и организации одновременной ( параллельной) работы различных устройств машины.
В зависимости от требований к скорости межмашинного обмена используются различные способы связи между ЭВМ многомашинного вычислительного комплекса [2]:
1) Через общее поле внешней памяти;
2) Через общее поле оперативной памяти;
3) С помощью канала прямого управления процессорами;
4) С помощью прямой связи между каналами ввода/вывода ЭВМ.
П
ервый способ связи относится к косвенным способам связи. Для обеспечения связей между ЭВМ используются устройства управления внешними запоминающими устройствами с двумя или более входами. В косвенно-связных комплексах связь между ЭВМ осуществляется только на информационном уровне. Обмен информацией осуществляется следующим образом: каждая из ЭВМ помещает в общую внешнюю память информацию, руководствуясь собственной программой, и соответственно другая ЭВМ принимает эту информацию, исходя из своих потребностей. Такая организация связей обычно используется в тех случаях, когда ставится задача повысить надежность комплекса путем резервирования ЭВМ.
С
ледующие три способа
относятся к прямым способам связи.
Связь между ЭВМ можно
Примером Многомашинной системой может служить компьютерный класс.
Параллельные вычислительные системы.
Параллельные вычислительные системы — это физические компьютерные, а также программные системы, реализующие тем или иным способом параллельную обработку данных на многих вычислительных узлах.
Идея параллельных вычислений основана на том, что большинство задач может быть разделено на набор меньших задач, которые могут быть решены одновременно. Обычно параллельные вычисления требуют координации действий.
Параллельные вычисления существуют в нескольких формах:
- Параллелизм на уровне битов
- Параллелизм на уровне инструкций
- Параллелизм данных
- Параллелизм на уровне задач
Параллельные вычисления использовались много лет в основном в высокопроизводительных вычислениях, но в последнее время к ним возрос интерес вследствие существования физических ограничений на рост тактовой частоты процессоров. Параллельные вычисления стали доминирующей парадигмой в архитектуре компьютеров, в основном в форме многоядерных процессоров.
Параллелизм на уровне битов:
Э
та форма параллелизма основана
на увеличении размера машинного
слова. Увеличение размера машинного
слова уменьшает количество операций,
необходимых процессору для выполнения
действий над переменными, чей размер
превышает размер машинного слова.
К примеру: на 8-битном процессоре нужно
сложить два 16-битных целых числа.
Для этого вначале нужно
Параллелизм на уровне инструкций:
К
омпьютерная программа — это, по
существу, поток инструкций, выполняемых
процессором. Но можно изменить порядок
этих инструкций, распределить их по группам,
которые будут выполняться
Современные процессоры имеют многоступенчатый конвейер команд.
Каждой ступени конвейера
Некоторые процессоры, дополнительно к использованию конвейеров, обладают возможностью выполнять несколько инструкций одновременно, что даёт дополнительный параллелизм на уровне инструкций. Возможна реализация данного метода при помощи суперскалярности, когда инструкции могут быть сгруппированы вместе для параллельного выполнения.
Параллелизм данных:
Основная идея подхода, основанного на параллелизме данных, заключается в том, что одна операция выполняется сразу над всеми элементами массива данных. Различные фрагменты такого массива обрабатываются на векторном процессоре или на разных процессорах параллельной машины. Распределением данных между процессорами занимается программа. Векторизация или распараллеливание в этом случае чаще всего выполняется уже на этапе компиляции — перевода исходного текста программы в машинные команды.
Параллелизм задач (многопоточность):
Стиль программирования, основанный на параллелизме задач, подразумевает, что вычислительная задача разбивается на несколько относительно самостоятельных подзадач и каждый процессор загружается своей собственной подзадачей.