Понятие архитектуры и основные виды архитектуры

«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ОТКРЫТЫЙ УНИВЕРСИТЕТ Им. В.С. Черномырдина»

Факультет прикладной математики

Кафедра информатики  и информационных технологий.

 

 

 

 

         

Курсовая работа по дисциплине «Теоретические основы информатики».

Тема: «Понятие архитектуры и основные виды архитектуры»

 

 

 

                                                                

 

 

                                                                                                        Выполнил:

Ф-т «Прикладная математика»

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 
(МКОД)

Множество потоков данных 

                                  SIMD 
                              (ОКМД)

MIMD 
(МКМД)


 

 

 

ОКОД (SISD)

Вычислительная система с одиночным  потоком команд и одиночным потоком  данных. В компьютере с одиночным потоком команд и одиночным потоком данных один процессор последовательно обрабатывает команды; каждая машинная команда обрабатывает один элемент данных. Примером может служить фон-Неймановская архитектура.

ОКМД (SIMD)

Вычислительная система с одиночным  потоком команд и множественным  потоком данных.  Один процессор обрабатывает поток команд, каждая из которых может выполнить параллельные вычисления на множестве данных. система хорошо подходит для параллельной или векторной обработки, в которой большой набор данных может быть разделён на части, которые обрабатываются идентичными, но независимым операциями

МКОД (MISD)

Вычислительная система с множественным  потоком команд и одиночным потоком  данных. Многопроцессорная обработка с множественным потоком команд и одиночным потоком данных. Архитектура MISD позволяет сравнивать результаты вычислений в целях обнаружения отказов. Кроме избыточности и отказоустойчивости у этого типа многопроцессорной обработки немного преимуществ. К тому же он весьма дорог. Он не увеличивает производительность.

МКМД (MIMD)

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


 

 

 

  • Соединения процессоров:
      1. Многопроцессорные системы с сильной связью: содержат несколько процессоров, которые подключены на шинном уровне. Эти процессоры могут иметь доступ к центральной разделяемой памяти ,или могут участвовать в иерархии памяти и с локальной и с разделяемой памятью.
      1. Многопроцессорные системы с гибкой связью: часто называемые кластерами, основаны на множественных автономных одиночных или двойных компьютерах, связанных через высокоскоростную систему связи.

Системы с сильной связью работают лучше и физически они  меньше, чем гибко связанные системы, но системы с сильной связью имеют тенденцию быть намного больше  энергоэффективными,  чем кластеры  

       Многомашинная вычислительная система.

Многомашинная вычислительная система:

  1. содержит несколько ЭВМ, каждая из которых имеет свою основную память и работает под управлением своей операционной системы. Применение многомашинных систем позволяет повысить надежность вычислительных комплексов, однако при этом оборудование комплекса недостаточно эффективно используется для этой цели. Достаточно в каждой ЭВМ выйти из строя одному устройству ( даже разных типов), как вся система становится неработоспособной.
  2. представляет собой комплекс из двух или более ЭВМ, связанных между собой либо общей разделяемой памятью, либо линиями передачи информации.
  3. представляет собой логическое следствие эволюции двух общих тенденций, действующих в области конструирования вычислительных машин: стремления к модульной конструкции и организации одновременной ( параллельной) работы различных устройств машины.


В зависимости от требований к скорости межмашинного обмена используются различные способы связи между ЭВМ многомашинного вычислительного комплекса [2]:

 

1)      Через общее поле внешней памяти;

 

2)      Через общее поле оперативной памяти;

 

3)      С помощью канала прямого управления процессорами;

 

4)      С помощью прямой связи между каналами ввода/вывода ЭВМ.

П



 

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

С



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

 

 

Примером Многомашинной системой может служить компьютерный класс.

 

 

 

 

 

 

 

       Параллельные вычислительные системы.

 

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

Идея параллельных вычислений основана на том, что большинство задач может быть разделено на набор меньших задач, которые могут быть решены одновременно. Обычно параллельные вычисления требуют координации действий.

 

Параллельные  вычисления существуют в нескольких формах:   

  • Параллелизм на уровне битов
  • Параллелизм на уровне инструкций
  • Параллелизм данных
  • Параллелизм на уровне задач

Параллельные вычисления использовались много лет в основном в высокопроизводительных вычислениях, но в последнее время  к ним возрос интерес вследствие существования физических ограничений  на рост тактовой частоты процессоров. Параллельные вычисления стали доминирующей парадигмой в архитектуре компьютеров, в основном в форме многоядерных процессоров.

Параллелизм на уровне битов:

Э



та форма параллелизма основана на увеличении размера машинного  слова. Увеличение размера машинного  слова уменьшает количество операций, необходимых процессору для выполнения действий над переменными, чей размер превышает размер машинного слова. К примеру: на 8-битном процессоре нужно  сложить два 16-битных целых числа. Для этого вначале нужно сложить  нижние 8 бит чисел, затем сложить  верхние 8 бит и к результату их сложения прибавить значение флага  переноса. Итого 3 инструкции. С 16-битным процессором можно выполнить  эту операцию одной инструкцией.

Параллелизм на уровне инструкций:

К



омпьютерная программа — это, по существу, поток инструкций, выполняемых  процессором. Но можно изменить порядок  этих инструкций, распределить их по группам, которые будут выполняться параллельно, без изменения результата работы всей программы. Данный приём известен как параллелизм на уровне инструкций.

Современные процессоры имеют многоступенчатый конвейер команд.

Каждой ступени конвейера соответствует  определённое действие, выполняемое  процессором в этой инструкции на этом этапе. Процессор с N ступенями  конвейера может иметь одновременно до N различных инструкций на разном уровне законченности .          

 

                         

Некоторые процессоры, дополнительно  к использованию конвейеров, обладают возможностью выполнять несколько  инструкций одновременно, что даёт дополнительный параллелизм на уровне инструкций. Возможна реализация данного  метода при помощи суперскалярности, когда инструкции могут быть сгруппированы вместе для параллельного выполнения.

            

                    Параллелизм данных:

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

Параллелизм задач (многопоточность):

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

 

 


Понятие архитектуры и основные виды архитектуры