Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Лекция 5. Концепция машины с хранимой в памяти программой

Лекция 4. Основные понятия и определения курса «Архитектура ЭВМ».

Править] Производительность

Править] Принцип работы

В процессорах с использованием этой технологии каждый физический процессор может хранить состояние сразу двух потоков, что для операционной системы выглядит как наличие двух логических процессоров (англ. Logical processor). Физически у каждого из логических процессоров есть свой набор регистров и контроллер прерываний (APIC), а остальные элементы процессора являются общими. Когда при исполнении потока одним из логических процессоров возникает пауза (в результате кэш-промаха, ошибки предсказания ветвлений, ожидания результата предыдущей инструкции), то управление передаётся потоку в другом логическом процессоре. Таким образом, пока один процесс ждёт, например, данные из памяти, вычислительные ресурсы физического процессора используются для обработки другого процесса. [1]

Были представлены следующие преимущества Hyper-threading: улучшенная поддержка многопоточного кода, позволяющая запускать потоки одновременно; улучшенная реакция и время отклика; увеличенное количество пользователей, которое может поддерживать сервер.

По словам Intel, первая реализация потребовала всего 5-процентного увеличения площади кристалла, но позволяла увеличить производительность на 15—30 %.

Intel утверждает, что прибавка к скорости составляет 30 % по сравнению с идентичным процессорами Pentium 4 без технологии «Simultaneous multithreading». Однако прибавка к производительности изменяется от приложения к приложению: некоторые программы вообще несколько замедляются при включённой технологии Hyper-threading. Это, в первую очередь, связано с «системой повторения» (англ. replay) процессоров Pentium 4, занимающей необходимые вычислительные ресурсы, отчего и начинают «голодать» другие потоки [2][3].

 

Рассмотрим наиболее распространенные определения основных терминов в области ЭВМ и вычислительных систем (ВС).

Согласно ГОСТ 15971-90 введем следующие понятия:

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

Под техническими средствами понимают все оборудование, предназначенное для автоматизированной обработки данных. Как правило, в состав ВМ входит и системное программное обеспечение (ПО).

Электронной вычислительной машиной (ЭВМ) называютвычислительную машину (ВМ), основные функциональные устройства которой выполнены на электронных компонентах.

Вычислительную систему (ВС) стандарт ISO/IEC 2382/1-93 определяет как одну или несколько вычислительных машин, периферийное оборудование и программное обеспечение, которые выполняют обработку данных.

ISO - Международная организация стандартов.

Электронно-вычислительная машина (ЭВМ, Electronic Computer) — программируемое функциональное устройство, состоящее из одного или нескольких взаимосвязанных центральных процессоров, периферийных устройств, управление которыми осуществляется посредством программ, располагающихся в оперативной памяти. Эта машина может производить большой объем вычислений, содержащих большое количество арифметических, логических и других операций без вмешательства пользователя в течение периода выполнения (стандарт ISO 2382/1-84).

Многопроцессорная вычислительная система (Multiprocessor computer system) — система, в состав которой входят два или несколько процессоров.

Рассмотрим определения, касающиеся понятия «архитектура».

Термин « архитектурасистемы » часто употребляется как в узком, так и в широком смысле этого слова.

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

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

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

Архитектура ЭВМ — абстрактное представление ЭВМ, которое отражает ее структурную, схемотехническую и логическую организацию. Понятие «архитектура ЭВМ» является комплексным и включает в себя целый ряд элементов, основные из них следующие:

1. структурная схема ЭВМ;

2. средства и способы доступа к элементам структурной схемы, включая об­мен с внешней средой;

3. организация и разрядность интерфейсов в ЭВМ;

4. набор и доступность регистров;

5. организация и способы адресации памяти;

6. способы представления и форматы данных ЭВМ;

7. набор машинных команд;

8. форматы машинных команд;

9. обработка нештатных ситуаций (прерывания, особые ситуации, ловушки и т. д.);

10. топология связи отдельных устройств и модулей.

Таким образом, при разработке архитектуры ЭВМ условно можно выделить вопросы:

· общей структуры, организации вычислительного процесса и общения с машиной;

· логической организации представления, хранения и преобразования информации;

· логической организации совместной работы различных устройств;

· связанные с аппаратными и программными средствами машин.

К настоящему времени среди ЭВМ последовательного типа наибольшее распространение получили два типа архитектур:

· принстонская архитектура;

· гарвардская архитектура.

Концепция вычислительной машины, изложенная в статье фон Неймана, предполагает единую память для хранения команд и данных. Такой подход был принят в вычислительных машинах, создававшихся в Принстонском университете, из-за чего и получил название принстонской архитектуры.

Практически одновременно в Гарвардском университете предложили иную модель, в которой ВМ имела отдельную память команд и отдельную память данных. Этот вид архитектуры называют гарвардской архитектурой.

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

Вычислительная сеть ( или сеть ЭВМ, от англ. Computer Network) — территориально рассредоточенная многомашинная система, состоящая из взаимодействующих ЭВМ, связанных между собой каналами передачи данных.

Система взаимодействует с внешним миром через набор интерфейсов.

Интерфейс (Interface) — совокупность средств и правил, обеспечивающих взаимодействие устройств ЭВМ или ВС, программ, а также пользователей (ГОСТ 15971-90).

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

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

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

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

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

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

В соответствии с ГОСТ 15971-84 под архитектурой ВС (Computing Architecture) понимается логическая организация цифровой вычислительной системы, определяющая процесс обработки данных в конкретной ВС и включающая методы кодирования данных, состав, назначение, принципы взаимодействия технических средств и программного обеспечения. В повседневной практике под архитектурой ВС понимают ее состав и схему функциональных и управляющих связей между ее элементами.


Введем определение термина «вычислительная машина», исходя из целей данного параграфа.

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

Алгоритм — одно из фундаментальных понятий математики и вычислительной техники.

Согласно ISO 2382/1-93 алгоритм - это конечный упорядоченный набор четко определенных правил для решения проблемы.

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

· способ преобразования информации, задаваемый с помощью конечной системы правил;

· совокупность правил, определяющих эффективную процедуру решения любой задачи из некоторого заданного класса задач;

· точно определенное правило действий, для которого задано указание, как и в какой последовательности это правило необходимо применять к исходным данным задачи, чтобы получить ее решение;

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

Основными свойствами алгоритма являются:

· дискретность;

· определенность;

· массовость;

· результативность.

Дискретность выражается в том, что алгоритм описывает действия над дискретной информацией (например, числовой или символьной), причем сами эти действия также дискретны.

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

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

Результативность алгоритма заключается в возможности получения результата за конечное число шагов.

Рассмотренные свойства алгоритмов предопределяют возможность их реализации на ВМ, при этом процесс, порождаемый алгоритмом, называют вычислительным процессом.

В основе архитектуры современных ВМ лежит представление алгоритма решения задачи в виде программы. Согласно стандарту ISO 2382/1-93, программа для ВМ состоит из команд, необходимых для выполнения функций, задач. Причем эти команды соответствуют правилам конкретного языка программирования.

Вычислительная машина(ВМ), где определенным образом закодированные команды программы хранятся в памяти, известна под названием вычислительной машины с хранимой в памяти программой.

Этаидея принадлежит создателям вычислителя ENIAC Эккерту, Мочли и фон Нейману. Еще до завершения работ над ENIAC они приступили к новому проекту — EDVAC, главной особенностью которого стала концепция хранимой в памяти программы, на долгие годы определившая базовые принципы построения последующих поколений вычислительных машин.

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

Сущность фон-неймановской концепции вычислительной машины можно свести к четырем принципам:

· двоичного кодирования;

· программного управления;

· однородности памяти;

· адресуемости памяти.

Рассмотрим эти принципы подробнее.

ü Принцип двоичного кодирования

Согласно этому принципу, вся информация, как данные, так и команды, кодируется двоичными цифрами 0 и 1. Каждый тип информации представляется в двоичном виде и имеет свой формат.

Последовательность битов в формате, имеющая определенный смысл, называется полем.

В формате числа обычно выделяют поле знака и поле значащих разрядов.

В формате команды можно выделить два поля (рис. 1):

· поле кода операции (КОП);

· поле адресов (адресную часть — АЧ).

Рис. 1. Структура команды

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

Вид адресной части и число составляющих ее адресов зависят от типа команды: в командах преобразования данных АЧ содержит адреса объектов обработки (операндов) и результата; в командах изменения порядка вычислений — адрес следующей команды программы; в командах ввода/вывода — номер устройства ввода/ вывода. Адресная часть также представляется двоичным кодом, длину которого обозначим через р. Таким образом, команда в вычислительной машине имеет вид (r + р) - разрядной двоичной комбинации.

ü Принцип программного управления

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

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

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

ü Принцип однородности памяти

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

ü Принцип адресуемости памяти

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

<== предыдущая лекция | следующая лекция ==>
Hyper-threading | Лекция 6. Фон-неймановская архитектура
Поделиться с друзьями:


Дата добавления: 2013-12-12; Просмотров: 1725; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.054 сек.