Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Konyukhova_arhitektura

.pdf
Скачиваний:
36
Добавлен:
12.03.2016
Размер:
6.11 Mб
Скачать

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

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

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

кВМ.

9.3.Внешние интерфейсы вычислительных машин

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

ипоследовательные COM-порты, снабжённые выходными разъёмами, установленными на корпусе системного блока. Сами коммуникационные порты являются либо элементами системной платы, либо размещаются на платах расширения.

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

иправила интерпретации сигналов устройствами [18].

Внешние интерфейсы ВМ отличаются большим разнообразием. В качестве примеров рассмотрим проводные интерфейсы: параллельный интерфейс Centronics, последовательный интерфейс RS-232, последовательную шину USB, и беспроводные интерфейсы Bluetooth

140

и WUSB. Более подробно с видами и характеристиками интерфейсов можно познакомиться в специализированной документации.

9.3.1. Параллельный порт LPT и интерфейс Centronics

Согласно [2], параллельный LPT-порт был включён в состав первых персональных компьютеров IBM PC для подключения принтеров

(отсюда название порта – Line Printer Terminal – LPT). LPT-порт ши-

роко применяется для сопряжения с ВМ разнообразных ПУ. Интерфейс Centronics был разработан фирмой «Centronics Data

Computer Corporation» и изначально обеспечивал только однонаправленную (симплексную) передачу данных. Впоследствии разными фирмами были разработаны двунаправленные (дуплексные) модификации данного интерфейса.

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

Интерфейс параллельной передачи Centronics удовлетворяет требованиям стандарта IEEE 1284, принятом в 1994 году, в котором определены режимы работы параллельных портов и сопряженной с ними аппаратуры, характеристики интерфейса и процедура согласования режимов порта и ПУ. Согласно этому стандарту, через параллельный порт возможен обмен данными в следующих режимах:

1.Режим совместимости – однонаправленный вывод.

2.Полубайтовый обмен – ввод байта в два цикла (по 4 бит).

3.Двунаправленный байтовый режим – ввод байта целиком.

4.Двунаправленный обмен данными, при котором управляющие сигналы интерфейса генерируются самим контроллером порта во время цикла обращения к порту.

5.Двунаправленный обмен с дополнительными возможностями,

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

9.3.2.Последовательный порт COM и интерфейс RS-232C

При последовательной передаче биты слова передаются поочерёдно, друг за другом (последовательно), по одной линии связи. На

141

основании [2], при последовательной передаче информации скорость передачи данных меньше, чем при параллельной. Однако последовательная передача информации обеспечивает связь на большие расстояния (до 15 м против 3 – 5 м при параллельной) и для её реализации требуется меньше сигнальных линий, что снижает её стоимость.

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

тельные порты COM1, COM2, COM3 и COM4.

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

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

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

Наиболее распространённым стандартом последовательной связи является интерфейс RS-232C (Recommended Standard – рекомендо-

ванный стандарт).

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

142

демом). Интерфейс RS-232С гарантирует надёжную передачу информации на расстояние до 15 м со скоростями от 50 бит/с до 19,2 Кбит/с в полудуплексном (передача информации в двух направлениях по линии связи попеременно) и дуплексном режимах. Данные могут передаваться синхронно и асинхронно. Средой передачи информации является витая пара. Более подробно со спецификацией интерфейса RS-232C можно познакомиться в [2, 7], а также специальной литературе.

9.3.3. Универсальная последовательная шина USB

Шина USB (Universal Serial Bus) – универсальная последовательная шина, предназначенная для подсоединения низкоскоростных УВВ к шинам расширения современных ВМ. Она разработана по предложению семи ведущих компаний-производителей: «IBM», «DEC», «Intel», «Microsoft» и др., и удовлетворяет следующим требованиям:

1)допускает подключение к шине до 127 устройств, при этом подключение возможно во время работы компьютера;

2)УВВ, подключаемые к шине, получают питание через кабель; существует только один тип кабеля для подключения любого устройства;

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

Шина имеет три режима работы: низкоскоростной (скорость передачи 1,5 Мбит/с), полноскоростной, высокоскоростной (12 Мбит/с). Версия шины USB 2.0 обеспечивает высокую скорость передачи – до

480 Мбит/с.

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

В системе USB имеется только один управляющий блок – контроллер USB, или хост, который выполняет преобразование параллельных данных ВМ в поток битов шины и обратные преобразования; обработку запросов на передачу данных между процессором

ивнешними устройствами; обработку ошибок передачи и ряд других. Топология шины USB – дерево, вершиной которого является

хост-контроллер. Подключаемые к шине USB устройства являются исключительно ведомыми: они отвечают на запросы хост-

143

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

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

Благодаря своей универсальности, шина USB применяется для подключения к ВМ самых разнообразных устройств: клавиатуры, мыши, принтера, сканера, аудиосистемы, модема и пр. Она призвана заменить традиционные порты COM и LPT.

9.3.4. Беспроводные интерфейсы

Беспроводные интерфейсы применяются для передачи данных на расстояния от нескольких десятков сантиметров до нескольких километров. Они наиболее удобны для пользователей, но при небольших расстояниях их стоимость выше проводных. Среди беспроводных интерфейсов, используемых для подключения к ВМ ПУ, рассмотрим интерфейсы Bluetooth и WUSB /4/.

1. Bluetooth («Голубой зуб») – технология передачи данных по радиоканалам в диапазоне частот около 2,5 ГГц на короткие расстояния даже при отсутствии прямой видимости между устройствами.

Стандарт Bluetooth был разработан совместно фирмами «IBM», «Ericsson», «Toshiba», «Intel» и «Nokia». Первоначально предусмат-

ривалась дальность передачи до 100 м, скорость передачи до 100 Кбайт/с. Для обеспечения безопасности частота, на которой передаётся информация, регулярно автоматически меняется. К одному каналу Bluetooth может быть подключено до семи устройств; устройства стандарта Bluetooth могут соединяться друг с другом, образуя пикосети, в каждую из которых может входить до 256 устройств. Современная высокоскоростная версия Bluetooth 2.0 обеспечивает скорость передачи до 1,5 Мбайт/с.

144

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

2. В качестве основной замены Bluetooth фирма «Intel» предложила беспроводную версию интерфейса USB – интерфейс WUSB (Wireless USB – беспроводной USB).

В WUSB используется технология беспроводного интерфейса UWB (Ultra Wide Band), разработанного в Intel и получившего своё название из-за использования им очень широкой полосы частот: от 3,1 до 10,6 ГГц. Скорость передачи данных в этой технологии изменяется в зависимости от скорости передачи: при расстоянии до 2 м скорость может достигать 60 Мбайт/с, а при расстоянии 10 м снижается до 12 Мбайт/с. Хост-контроллер WUSB может поддерживать до 127 устройств в группе. Максимальный радиус действия приёмопередатчиков WUSB составляет 10 м.

Одно из преимуществ технологии UWB заключается в том, что она не создаёт помех для других беспроводных технологий.

Вопросы для самопроверки

1. Что такое шина, СШ? В чём заключаются принципы функционирования СШ? Перечислите структурные компоненты СШ.

2.Что представляет собой протокол шины? Назовите основные классы протоколов и поясните особенности их функционирования.

3.Что представляет собой иерархия шин? Какие существуют варианты иерархий? В чём заключаются особенности каждого из вариантов?

4.Какие существуют приёмы повышения производительности

шин?

5.Назовите способы организации обмена данными между вычислительным ядром ВМ и ПУ. Поясните особенности организации обмена данными при каждом способе.

6.Дайте определение понятия «канал ввода – вывода». Поясните назначение мультиплексированных и селекторных каналов ввода – вывода.

7.Что такое интерфейс, порт ввода – вывода? Перечислите виды интерфейсов и портов ввода – вывода.

145

8.Поясните особенности функционирования параллельного интерфейса Centronics, последовательного интерфейса RS-232C.

9.Что представляет собой шина USB? Поясните принципы её ра-

боты.

10.Перечислите виды беспроводных интерфейсов. Каковы их характерные особенности?

146

МОДУЛЬ 2. ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ

10.ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ ПАРАЛЛЕЛЬНОЙ ОБРАБОТКИ. МНОГОПРОЦЕССОРНЫЕ И МНОГОЯДЕРНЫЕ СИСТЕМЫ

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

вних средств, реализующих параллельную обработку за счёт построения параллельных ветвей в вычислениях. Кроме того, возможности современной микроэлектроники позволяют размещать блоки вычислительных систем на одном кристалле, что позволяет снизить стоимость, повысить быстродействие и надёжность вычислительных систем [3].

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

Ранее (см. гл. 1) говорилось, что ВС бывают многопроцессорными (содержат несколько процессоров, между которыми осуществляется интенсивный обмен информацией и которые используют общие ресурсы и управляются одной ОС) и встраиваемыми (строятся на базе микроконтроллера, микропроцессора или специализированного процессора и используются для задач локального управления и контроля техническим оборудованием). Ниже будут описаны параллельные многопроцессорные ВС; микропроцессорные ВС будут рассмотрены

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

147

10.1. Параллельная обработка информации

Согласно [3], параллельная обработка может выполняться на нескольких уровнях:

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

2.Уровень программ. Части одной программы выполняются на множестве процессоров, что достигается в параллельных ВС.

3.Уровень команд. Выполнение команды разделяется на фазы,

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

4.Уровень битов. Если биты слова обрабатываются одновременно, то говорят о бит-параллельной операции, что достижимо в обычных и суперскалярных процессорах.

Варианты параллельной обработки, а также конвейерные и суперскалярнные процессоры были рассмотрены ранее (см. гл. 4).

К понятию уровня параллелизма тесно примыкает понятие гранулярности. Гранулярность – это мера отношения объёма вычислений, выполненных в параллельной задаче, к объёму коммуникаций (для обмена сообщениями). В зависимости от степени гранулярности выделяют крупнозернистый, среднезернистый и мелкозернистый параллелизм.

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

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

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

148

ности вычисления и обмена данными. Мелкозернистый параллелизм реализуется распараллеливающим компилятором.

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

Можно выделить следующие преимущества параллельных архитектур [2]:

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

2)мультипроцессорная система является масштабируемой, т.е. модульная организация таких систем позволяет увеличивать производительность за счёт наращивания модулей и (или) совершенствования взаимосвязей между ними;

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

Однако, несмотря на отмеченные преимущества многопроцессорных систем, им присущ и ряд недостатков, свойственных системам параллельной обработки [2]:

1)в параллельных системах возникают новые, ранее не известные типы ошибок: тупики (взаимные блокировки процессов), голодание (невозможность получить ресурс) и т.п.;

2)сложности понимания и анализа параллельных процессов. Мышление людей имеет последовательный характер, поскольку мысли выражаются словами;

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

149

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]