ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.12.2021
Просмотров: 1263
Скачиваний: 6
3 8 6 Глава 7. Операционные устройства вычислительных машин
12. Сравните умножители Брауна, Бо-Вули, Пезариса. Чем они схожи и в чем от-
личаются друг от друга?
13. В чем заключается основная идея древовидных умножителей? Каковы особен-
ности их организации?
14. Сформулируйте, в чем состоит сходство и различие дерева Уоллеса, дерева
Дадда и перевернутого ступенчатого дерева.
15. С какой целью и каким образом выполняется конвейеризация матричных
и древовидных умножителей? Приведите (и поясните) конкретные примеры.
16. На конкретном примере объясните, как можно нарастить разрядность аппа-
ратного умножителя. '
17. Сравните организацию целочисленного деления с восстановлением остатка
и без восстановления остатка. Как учитываются при делении знаки операн-
дов?
1.8. Обоснуйте возможность совмещения структур умножителя и делителя. Опи-
шите объединенную структуру.
19. Сформулируйте четыре пути ускорения целочисленного деления. Сравните
между собой их возможную реализацию.
20. Какие из операций с плавающей запятой считаются наиболее сложными? От-
вет обоснуйте на конкретных примерах.
21. В чем состоит специфика умножения с плавающей запятой? Поясните эту спе-
цифику на примере.
22. Разработайте серию примеров для иллюстрации всех особенностей деления
с плавающей запятой.
23. Создайте структуру операционного блока для выполнения как сложения/вы-
читания, так и базового набора логических операций. Обоснуйте каждый эле-
мент этой структуры.
Глава 8
Системы ввода/вывода
Помимо центрального процессора (ЦП) и памяти, третьим ключевым элементом
архитектуры ВМ является
система ввода/вывода
(СВВ). Система ввода/вывода
призвана обеспечить обмен информацией между ядром ВМ и разнообразными
внешними устройствами (ВУ). Технические и программные средства СВВ несут
ответственность за физическое и логическое сопряжение
ядра вычислительной
машины
и ВУ.
В процессе эволюции вычислительных машин системам ввода/вывода по срав-
нению с прочими элементами архитектуры уделялось несколько меньшее внима-
ние. Косвенным, подтверждением этого можно считать, например, то, что многие
программы контроля производительности (бенчмарки) вообще не учитывают вли-
яние операций ввода/вывода (В/ВЫВ) на эффективность ВМ. Следствием по-
добного отношения стал существенный разрыв в производительности процессора
и памяти, с одной стороны, и скоростью ввода/вывода — с другой.
Технически система ввода/вывода в рамках ВМ реализуется комплексом
мо-
дулей ввода/вывода
(МВБ). Модуль ввода/вывода выполняет сопряжение ВУ
с ядром ВМ и различные коммуникационные операции между ними. Две основ-
ные функции МВБ:
-
обеспечение интерфейса с ЦП и памятью
("большой" интерфейсу,
-
обеспечение интерфейса с одним или несколькими периферийными устрой-
ствами
("малый" интерфейс).
Анализируя архитектуру известных ВМ, можно выделить три основных спосо-
ба подключения СВВ к ядру процессора (рис. 8.1).
В варианте с раздельными шинами памяти и ввода/вывода (см. рис.
8.1, а)
об-
мен информацией между ЦП и памятью физически отделен от ввода/вывода, по-
скольку обеспечивается полностью независимыми шинами. Это дает возможность
осуществлять обращение к памяти одновременно с выполнением ввода/вывода.
Кроме того, данный архитектурный вариант ВМ позволяет специализировать каж-
дую из шин, учесть формат пересылаемых данных, особенности синхронизации
обмена и т. п. В частности, шина ввода/вывода, с учетом характеристик реальных
ВУ, может иметь меньшую пропускную способность, что позволяет снизить затра-
ты на ее реализацию. Недостатком решения можно считать большое количество
точек подключения к ЦП.
3 8 8 Глава 8. Системы ввода/вывода
Рис. 8 . 1 . Место системы ввода/вывода в архитектуре вычислительной машины:
а
— раздель-
ными шинами памяти и ввода/вывода; б — с совместно используемыми линиями данных
и адреса;
в
— подключение на общих правах с процессором и памятью
Второй вариант — с совместно используемыми линиями данных и адреса (см.
рис. 8.1,
б).
Память и СВВ имеют общие для них линии адреса и линии данных,
разделяя их во времени. В то же время управление памятью и СВВ, а также синх-
ронизация их взаимодействия с процессором осуществляются независимо по раз-
дельным линиям управления. Это позволяет учесть особенности процедур обра-
щения к памяти и к модулям ввода/вывода и добиться наибольшей эффективности
доступа к ячейкам памяти и внешним устройствам.
Последний тип архитектуры ВМ предполагает подключение СВВ к системной
шине на общих правах с процессором и памятью (см. рис. 8,1,
в).
Преимущества и
недостатки такого подхода обсуждались при рассмотрении вопросов организации шин
(глава 4). Потенциально возможен также вариант подключения внешних устройств
к системной шине напрямую, без использования МВВ, но против него можно выдви-
нуть сразу несколько аргументов. Во-первых, в этом случае ЦП пришлось бы осна-
щать универсальными схемами для управления любым ВУ. При большом разнооб-
разии внешних устройств, имеющих к тому же различные принципы действия, такие
схемы оказываются чересчур сложными и избыточными. Во-вторых, пересылка дан-
ных при вводе и выводе происходит значительно медленнее, чем при обмене между
ЦП и памятью, и было бы невыгодно задействовать для обмена информацией с ВУ
высокоскоростную системную шину. И, наконец, в ВУ часто используются иные
форматы данных и длина слова, чем в ВМ, к которым они подключены.
Адресное пространство системы
ввода/вывода
Как и обращение к памяти, операции ввода/вывода также предполагают наличие
некоторой системы адресации, позволяющей выбрать один из модулей СВВ, а также
одно из подключенных к нему внешних устройств. Адрес модуля и ВУ является
Адресное пространство системы ввода/вывода
3 8 9
составной частью соответствующей команды, в то время как расположение дан-
ных на внешнем устройстве определяется пересылаемой на ВУ информацией.
Адресное пространство ввода/вывода
может быть совмещено с адресным про-
странством памяти или быть выделенным.
При
совмещении адресного пространства
для адресации модулей ввода/выво-
да отводится определенная область адресов (рис. 8.2). Обычно все операции с моду-
лем ввода/вывода осуществляются с использованием входящих в него внутренних
регистров: управления, состояния, данных. Фактически процедура ввода/вывода
сводится к записи информации в одни регистры МВБ и считыванию ее из других
регистров. Это позволяет рассматривать регистры МВБ как ячейки основной па-
мяти и работать с ними с помощью обычных команд обращения к памяти, при этом
в системе команд ВМ вообще могут отсутствовать специальные команды ввода
в вывода. Так, модификацию регистров МВБ можно производить непосредствен-
но с помощью арифметических и логических команд. Адреса регистрам МВВ на-
значаются в области адресного пространства памяти, отведенной под систему вво-
да/вывода.
Рис.
8.2. Распределение совмещенного адресного пространства
Такой подход представляется вполне оправданным, если учесть, что ввод/вы-
вод обычно составляет малую часть всех операций, выполняемых вычислитель-
ной машиной, чаще всего не более 1% от общего числа команд в программе.
Реализация концепции совмещенного адресного пространства в ВМ с кэш-па-
мятью и виртуальной адресацией сопряжена с определенными проблемами. В част-
ности, усложняется отображение виртуального адреса устройства ввода/вывода на
физическое ВУ. Сложности также возникают и с кэшированием регистров МВВ.
Сформулируем преимущества и недостатки совмещенного адресного простран-
ства.
Достоинства совмещенного адресного пространства:
- расширение набора команд для обращения к внешним устройствам, что позво-
ляет сократить длину программы и повысить быстродействие;
- значительное увеличение количества подключаемых внешних устройств;
- возможность внепроцессорного обмена данными между внешними устройства-
ми, если в системе команд есть команды пересылки между ячейками памяти;
-возможность обмена информацией не только с аккумулятором, но и с любым
регистром центрального процессора.
3 9 0 Глава 8. Системы ввода/вывода
Недостатки совмещенного адресного пространства:
- сокращение области адресного пространства памяти;
- усложнение декодирующих схем адресов в СВВ;
-
трудности распознавания операций передачи информации при вводе/выводе
среди других операций. Сложности в чтении и отладке программы, в которой
простые команды вызывают выполнение сложных операций ввода/вывода;
- трудности при построении СВВ на простых модулях ввода/вывода: сигналы
управления не смогут координировать сложную процедуру ввода/вывода. По-
этому МВБ часто должны генерировать дополнительные сигналы под управ-
лением программы.
Совмещенное адресное пространство используется в вычислительных маши-
нах MIPS и SPARC.
В случае
выделенного адресного пространства
для обращения к модулям вво-
да/вывода применяются специальные команды и отдельная система адресов. Это
позволяет разделить шины для работы с памятью и шины ввода/вывода, что дает
возможность совмещать во времени обмен с памятью и ввод/вывод. Кроме того,
адресное пространство памяти может быть использовано по прямому назначению
в полном объеме. В вычислительных машинах фирмы IBM и микроЭВМ на базе
процессоров фирмы Intel система ввода/вывода, как правило, организуется в со-
Достоинства выделенного адресного пространства:
-
адрес внешнего устройства в команде ввода/вывода может быть коротким.
В большинстве СВВ количество внешних устройств намного меньше количе-
ства ячеек памяти. Короткий адрес ВУ подразумевает такие же короткие ко-
манды ввода/вывода и простые дешифраторы;
-
программы становятся более наглядными, так как операции ввода/вывода вы-
полняются с помощью специальных команд;
- разработка СВВ может проводиться отдельно от разработки памяти.
Недостатки выделенного адресного пространства:
-
ввод/вывод производится только через аккумулятор центрального процессо-
Для передачи информации от ВУ в РОН, если аккумулятор занят, требует-
ся выполнение четырех команд (сохранение содержимого аккумулятора, ввод
из ВУ, пересылка из аккумулятора в РОН, восстановление содержимого акку-
мулятора);
-перед обработкой содержимого ВУ это содержимое нужно переслать в ЦП.
Внешние устройства
Связь ВМ с внешним миром осуществляется с помощью самых разнообразных
внешних устройств. Каждое ВУ подключается к МВБ посредством индивидуаль-
ной шины. Интерфейс, по которому организуется такое взаимодействие МВБ и ВУ,
часто называют
малым.
Индивидуальная шина обеспечивает обмен данными и уп-