Архитектура ЭВМИУ71 XI. Организация ввода-вывода Совокупность технических и программных средств, обеспечивающих обмен данными между центральным процессором.

Презентация:



Advertisements
Похожие презентации
Шина PCI Шина соединения периферийных компонентов, является основной в современном ПК.
Advertisements

Информационные шины обмена – ISA, PCI 1 Системотехника ЭВС, комплексы и сети.
Магитстрально- модульное построение компьютера. архитектурой ЭВМ называется описание структуры и принципов работы компьютера без подробностей технической.
Проектирование центральных и периферийных устройств Преподаватель: Мельников Максим Игоревич.
Встроенные Системы Часть 4. Шины, память, кэш, DMA Кафедра Информатики, мат-мех СПбГУ Copyright © 2004 Victor Vengerov
Схема компьютера Взаимодействие устройств компьютера.
Структурная схема компьютера Взаимодействие устройств компьютера.
Структурная схема компьютера Взаимодействие устройств компьютера.
Лекция 4. Режимы работы микропроцессора. Взаимодействие микропроцессора с остальными устройствами Взаимодействие МП с остальными устройствами МПС происходит.
Тема 1. Общие вопросы организации микропроцессорных систем.
Взаимодействие устройств компьютера. Общая структурная схема компьютера.
Архитетура компьютерных систем. Архитектура системы команд как интерфейс между программным и аппаратным обеспечением Архитектура системы команд.
Схема компьютера Взаимодействие устройств в компьютере.
Магистрально- модульное построение компьютера. Введение Архитектура современных персональных компьютеров (ПК) основана на магистрально- модульном принципе.
Архитектура персонального компьютера. Компьютер – представляет собой программируемое электронное устройство, способное обрабатывать данные и.
Лекция 6. Способы адресации в микропроцессорных системах.
ПОДСИСТЕМА ВВОДА-ВЫВОДА 1. Общие принципы организации ввода-вывода 2 Систему ВВ можно представить в виде пространства ВВ IOSEGment и ряда команд ВВ. Пространство.
Устройства компьютера. Компьютер – это универсальная электронная машина, которая состоит из согласованно работающих аппаратных и программных средств Аппаратное.
Интерфейсы периферийных устройств. Определения Периферийные устройства (ПУ) - это устройства ЭВМ, не входящие в состав центральной части ВС и предназначенные.
Архитектура современных персональных компьютеров Подготовил студент группы 11ИнфБ122 Зайцев Д.
Транксрипт:

Архитектура ЭВМИУ71 XI. Организация ввода-вывода Совокупность технических и программных средств, обеспечивающих обмен данными между центральным процессором и внешними устройствами называется системой ввода вывода. У А Д У А Д ЦПОП СВВ Шины полностью независимы. (+) Обмен можно осуществлять параллельно. (+) Каждую шину можно оптимизировать независимо. (-)Увеличивается количество выводов ЦП. У А Д У А Д ЦПОП СВВ У А Д У А Д ЦПОП СВВ Совместно используются ШД и ША. ШУ независимы. (+) Управление обменом выполняется параллельно. (+) Экономично используются выводы. (-)Одновременный обмен данными невозможен. Совместно используются ШД и ША и ШУ. (+) Минимальные аппаратные затраты. (-)Одновременная работа ЦП с СВВ и с ОП невозможна.

Архитектура ЭВМИУ72 Для выбора конкретного ВУ используются адреса. Адресное пространство ОП и СВВ может быть совмещенным и раздельным. При совмещенном адресном пространстве обращение за чтением и записью в некоторый диапазон адресов приводит к обращению в СВВ. (+) Возможное количество ВУ может быть велико. Нет жестких ограничений на объем адресуемых портов ввода вывода (гибкость СВВ). (+) Команды для доступа к внешним устройствам не отличаются от команд доступа к ОП. (-) Потребность в дополнительных средствах декодирования адресов СВВ. (-) Сложность организации виртуальной памяти и поддержки когерентности кэш-памяти. (-) Непредсказуемость времени выполнения простых команд. (-) Сокращение адресного пространства ОП. Способы адресации внешних устройств

Архитектура ЭВМИУ73 При раздельном адресном пространстве используются отдельные команды при обращении к ОП и СВВ. (+) Команды ввода/вывода короткие. (+) Легкость дешифрации запросов к СВВ для ЦП. (+/-) Изменение СВВ не затрагивает память (-) Малое количество способов адресации и обработки информации (Аккумулятор - СВВ). (-) Сложность работы с быстродействующими устройствами и устройствами с большим количеством адресуемой памяти. Устройство вычислительной машины, осуществляющее связь ЦП и ПУ называется модулем ввода-вывода. Обобщенная схема МВВ Регистры управления Регистры статуса Схемы управления Буфер данных Функциональное устройство Состояние Команды Данные от ЦП Данные к/от ПУ

Архитектура ЭВМИУ74 Методы управления вводом/выводом Программно-управляемый ввод/вывод. Ввод/вывод по прерыванию. Прямой доступ к памяти. Программно-управляемый ввод/вывод. Начало Выдача команды ввода/вывода Чтение готовности данных в регистре состояния Данные готовы? Время Ожидания > MAX? Чтение слова из МВВ Запись слова в МВВ Все слова обработаны? Конец Ошибка ввода/вывода Да Нет (+) Минимальные аппаратные затраты (+) Простота изменения процедур ввода/вывода (-) Простой ЦП из-за ожидания готовности МВВ к передаче.

Архитектура ЭВМИУ75 Ввод/вывод по прерыванию. Начало Выдача команды ввода/вывода Конец Начало Чтение готовности данных в регистре состояния Данные готовы? Чтение слова из МВВ Запись слова в МВВ Все слова обработаны? Конец Ошибка ввода/вывода Да Нет Выдача команды ввода/вывода (+) Эффективнее программного ввода/вывода (-) Запись данных в ОП через ЦП Выполнение программы Адрес обработчика 0 Завершение Продолжение выполнения программы Область векторов прерываний INT i Адрес обработчика i … Обработчик прерывания i

Архитектура ЭВМИУ76 Способы определения адреса источника прерывания. -По номеру линии прерывания (необходимо много линий). -Программным опросом всех МВВ (необходимо много времени на обработку). -Векторизация прерываний (необходимо использовать устройство для передачи запросов прерываний). Схема циклического опроса Вектор CNT Дешифратор & & 1 SRSR T CE С R RST INT … CLK

Архитектура ЭВМИУ77 Универсальный контроллер прерываний (IBM PowerPC405 UIC).

Архитектура ЭВМИУ78 Прямой доступ к памяти Для пересылки информации между ОП и быстродействующими устройствами необходимо обеспечивать независимую от ЦП передачу данных без использования ввода/вывода по прерыванию. Для этих целей используется специальное устройство – контроллер прямого доступа к памяти. ЦП занят только инициализацией ПДП. По инициативе ЦП или ПУ в КПДП передается: -Вид запроса (чтение или запись); -Адрес буфера в ОП; -Количество слов для пересылки; -Адрес ПУ. ЦП ОП ПУ УУ Счетчик данных Регистр адреса Регистр данных КПДП Запрос ПДП Подтв. ПДП Запрос ПДП Подтв. ПДП

Архитектура ЭВМИУ79 Пример построение системы с контроллером прямого доступа в память (IBM PowerPC405).

Архитектура ЭВМИУ710

Архитектура ЭВМИУ711 Контроллер прямого доступа в память (IBM PowerPC405 DMA).

Архитектура ЭВМИУ712 XII. Организация шин Состав системы: Сигнальные линии Устройства арбитража Разъемы Совокупность устройств и сигнальных линий, обеспечивающих взаимосвязь всех частей ЭВМ образуют систему шин. Для описания (спецификации) конкретной шины необходимо описать: Совокупность линий (сигналов) и их назначение. Протокол: правила взаимодействия устройств с помощью шины (диаграммы, алгоритмы, автоматы). Физические, механические и электрические параметры шины и подключаемых устройств (частота, уровни сигналов, способ согласования волновых сопротивлений, длины линий, характеристики разъемов и т.д.).

Архитектура ЭВМИУ713 Типы шин: -Шины «процессор-память», «процессор-кэш», «процессор-процессор» (HyperTrensport, P6 Back-Side Bus, …) -Шины ввода-вывода (PCI, SCSI, PCI-X, IDE, GX, OPB …) -Системные шины (EISA, PLB, Pentium 4 FSB, Multibus II, NuBus, …)

Архитектура ЭВМИУ714 Механические аспекты спецификации шин Механические аспекты спецификации шин включают описание вариантов исполнения, чертежи разъемов, размеры и допуски печатных плат, описание направляющих и ключей, описание способов испытаний и т.д. ПРИМЕР

Архитектура ЭВМИУ715 Электрические аспекты спецификации шин Спецификация динамических и статических характеристик Спецификация синхронизации Спецификация инициализации Спецификация нагрузки Спецификация питания Назначения контактов разъема Для каждого сигнала должны бать определены параметры: Уровни сигналов логического «0» и логической «1» (ТТЛ, ЭСЛ, КМОП и др.). Время переключения Моменты фиксации состояния относительно сигнала синхронизации Условия перевода в третье состояние Способ согласования. При распространении сигналов по параллельным линиям необходимо учитывать: Скорость распространения (обычно составляет ~70% скорости света 0.7*300 мм/нс). Отражение сигнала Перекос сигналов Перекрестные помехи

Архитектура ЭВМИУ716 Типы сигнальных линий: -Линии адреса -Линии данных (линии адреса и данных могут объединяться). -Линии управления для передачи типа танзакции, статуса устройства, сигналов арбитража, запросов прерываний, резервных линий, линий константных зачений. Арбитраж шин Ведущие устройства используют шину в разное время и должны отдавать и захватывать ее. Для определения очередности подключения ведущих устройств и учета их приоритетности используются: статические приоритеты, динамические приоритеты.

Архитектура ЭВМИУ717 По способу арбитража: централизованный арбитраж, децентрализованный арбитраж. Схемы арбитража: циклическая схема, циклическая с учетом последнего, рандомизированный, схема с равными приоритетами, схема LRU Централизованный арбитраж Параллельный арбитражЦентрализованный опрос

Архитектура ЭВМИУ718 Децентрализованный арбитраж Цепочечная схема без централизованного арбитража Распределенный арбитраж

Архитектура ЭВМИУ719 Системная шина процессоров P6 Частота:66,100,133. Количество абонентов: 16 Разрядность адреса: 32 Разрядность данных: 64 Контроль информации: PE и ECC Поддержка операций с кэш Пакетная и транзакционная передача Каждое устройство-агент, подключенное к этой шине (например, любой из процессоров), до инициализации запроса должно получить через механизм арбитража право на использование шины запроса. Запрос выходит за два смежных такта: в первом такте передается адрес, тип обращения (чтение-запись памяти или ввода/вывода) и тому подобная информация. Во втором такте передается уникальный идентификатор транзакции, длина запроса, разрешенные байты шины и т. п. Через три такта после запроса проверяется состояние ошибки (error status) для защиты от ошибок передачи или нарушений протокола. Любая обнаруженная ошибка вызывает повтор запроса, а вторая ошибка для того же запроса вызывает исключение контроля (machine check exception).

Архитектура ЭВМИУ720 Шина PCI Частота:33,66. Количество абонентов: 21 Разрядность адреса/данных: 32,64 ( MБ/сек) Контроль информации: по четности Поддержка операций с кэш Пакетная передача Поддержка иерархии шин (до 256) Plug and Play технология. Поддержка многих управителей шины (Masters) и ведомых (Targets)/ Спецификации: 1.0 (1992),2.0(1993),2.1(1995), 2.2(1999) Локальная шина PCI - это высокопроизводительная 32-битная или 64- битная шина с мультиплексированными линиями адреса и данных. Она предназначена для использования в качестве связующего механизма между высокоинтегрированными периферийными контроллерами ввода- вывода, периферийными встраиваемыми платами и системами процессор/память. Спецификация локальной шины PCI, реализация 2.0, включает протокол, электрическую, механическую и конфигурационную спецификации для локальной шины PCI и плат расширения. Описания электрических сигналов приводятся для напряжений питания 3.3В и 5.0В.

Архитектура ЭВМИУ721 Пример построения систем на основе шины PCI* * - Из книги: Tom Shanley, Don Anderson. PCI System Architecture. Addison-Wesley, 1999

Архитектура ЭВМИУ722 Сигналы шины PCI

Архитектура ЭВМИУ723 Арбитраж PCI шины

Архитектура ЭВМИУ724 Операции на шине PCI C/BE[3::0]# Тип операции 0000 Interrupt Acknowledge (подтверждение прерывания) 0001 Special Cycle (специальный цикл) 0010 I/O Read (чтение при вводе - выводе) 0011 I/O Write (запись при вводе - выводе) 0100 Зарезервировано 0101 Зарезервировано 0110 Memory Read (чтение памяти) 0111 Memory Write (запись в память) 1000 Зарезервировано 1001 Зарезервировано 1010 Configuration Read (чтение конфигурации) 1011 Configuration Write (запись конфигурации) 1100 Memory Read Multiple (множественное чтение памяти) 1101 Dual Address Cycle (двойной цикл адреса) 1110 Memory read Line (линия чтения памяти) 1111 Memory Write and Invalidate (запись в память и недействительные данные) FRAME# - Управляется мастером для того, чтобы он мог указать начало и конец транзакции. IRDY# - Управляется мастером, чтобы он мог инициировать циклы ожидания. TRDY# - Управляется целевым устройством, чтобы оно могло инициировать циклы ожидания.

Архитектура ЭВМИУ725 Адресация на PCI шине Все определено три физических адресных пространства. Пространства адресов памяти и ввода-вывода объединены. Адресное пространство конфигураций было введено для обеспечения аппаратной конфигурации PCI. PCI обеспечивает полную программно управляемую инициализацию и конфигурацию через отдельное адресное пространство конфигурации. PCI устройства должны обеспечить 256 байтов регистров конфигурации для этой цели. Дешифрирование адреса на шине PCI распределено; это означает, что оно выполняется на каждом устройстве. Это устраняет проблемы для центральной дешифрирующей логики, а также для сигналов выбора устройства, независимо от их использования для конфигурации. Каждый агент отвечает только на свой дешифрированный адрес.

Архитектура ЭВМИУ726 Чтение конфигурации Для поддержки иерархии PCI шины используются два типа доступа конфигурации. Тип 1 и тип 0 доступа конфигурации различаются значениями на AD[1::0]. Тип 0 цикла конфигурации (когда AD[1::0] = "00") используется, чтобы выбрать устройство на PCI шине, где цикл выполняется. Тип 1 цикла конфигурации (когда AD[1::0] = "01") используется, чтобы передать запрос конфигурации на другую PCI шину.

Архитектура ЭВМИУ727 Пространство конфигурации Тип 0

Архитектура ЭВМИУ728 Базовая операция чтения Транзакция чтения начинается фазой адреса, которая происходит во 2-ом такте, когда впервые устанавливается сигнал FRAME#. В течение фазы адреса AD[31::00] содержит допустимый адрес, а C/BE[3::0]# - допустимую команду шины.

Архитектура ЭВМИУ729 Транзакция записи начинается в такте 2, когда впервые устанавливается в активное состояние сигнал FRAME#. Транзакция записи подобна транзакции чтения, за исключением того, что после фазы адреса не требуется оборотный цикл, так мастер обеспечивает и адрес, и данные. Фазы данных для транзакции записи такие, как и для транзакции чтения. Базовая операция записи

Архитектура ЭВМИУ730 Выводы для сообщения об ошибках требуются всем устройствам: PERR# s/t/s Вывод Parity Error (ошибка контроля по четности) предназначен только для сообщения об ошибках контроля по четности во время всех транзакций PCI, за исключением специального цикла (Special Cycle). Вывод PERR# - три-стабильный и должен активно управляться агентом, получающим данные в течение двух тактов, после того, как обнаружена ошибка контроля данных по четности. Минимальная продолжительность PERR# - один такт для любой фазы данных, у которой обнаружена ошибка контроля данных по четности (если идут последовательно несколько фаз данных, каждая из которых имеет ошибку контроля данных по четности, то сигнал PERR# будет установлен за более, чем один такт). PERR# должен быть установлен в высокое состояние за один такт прежде, перед тем, как он перейдет в третье состояние со всеми соответствующими тристабильными сигналами. Не существует никаких специальных условий для случая, когда теряется ошибка контроля данных по четности или сообщается об отсроченной ошибке. Агент не может установить PERR#, пока он не разрешил доступ, установив DEVSEL# и завершив фазу данных. Контроль ошибок

Архитектура ЭВМИУ731 Типы шин: -Шины «процессор-память», «процессор-кэш», «процессор-процессор» (HyperTrensport, P6 Back-Side Bus, …) -Шины ввода-вывода (PCI, SCSI, PCI-X, IDE, GX, …) -Системные шины (EISA, Pentium 4 FSB, Multibus II, NuBus, …)

Архитектура ЭВМИУ732 Механические аспекты спецификации шин Механические аспекты спецификации шин включают описание вариантов исполнения, чертежи разъемов, размеры и допуски печатных плат, описание направляющих и ключей, описание способов испытаний и т.д. ПРИМЕР

Архитектура ЭВМИУ733 Электрические аспекты спецификации шин Спецификация динамических и статических характеристик Спецификация синхронизации Спецификация инициализации Спецификация нагрузки Спецификация питания Назначения контактов разъема Для каждого сигнала должны бать определены параметры: Уровни сигналов логического «0» и логической «1» (ТТЛ, ЭСЛ, КМОП и др.). Время переключения Моменты фиксации состояния относительно сигнала синхронизации Условия перевода в третье состояние Способ согласования. При распространении сигналов по параллельным линиям необходимо учитывать: Скорость распространения (обычно составляет ~70% скорости света 0.7*300 мм/нс). Отражение сигнала Перекос сигналов Перекрестные помехи

Архитектура ЭВМИУ734 Типы сигнальных линий: -Линии адреса -Линии данных (линии адреса и данных могут объединяться). -Линии управления для передачи типа танзакции, статуса устройства, сигналов арбитража, запросов прерываний, резервных линий, линий константных зачений. Арбитраж шин Ведущие устройства используют шину в разное время и должны отдавать и захватывать ее. Для определения очередности подключения ведущих устройств и учета их приоритетности используются: статические приоритеты, динамические приоритеты.

Архитектура ЭВМИУ735 По способу арбитража: централизованный арбитраж, децентрализованный арбитраж. Схемы арбитража: циклическая схема, циклическая с учетом последнего, рандомизированный, схема с равными приоритетами, схема LRU Централизованный арбитраж Параллельный арбитражЦентрализованный опрос

Архитектура ЭВМИУ736 Децентрализованный арбитраж Цепочечная схема без централизованного арбитража Распределенный арбитраж

Архитектура ЭВМИУ737 Системная шина процессоров P6 Частота:66,100,133. Количество абонентов: 16 Разрядность адреса: 32 Разрядость данных: 64 Контроль информации: PE и ECC Поддержка операций с кэш Пакетная и транзакционная передача Каждое устройство-агент, подключенное к этой шине (например, любой из процессоров), до инициализации запроса должно получить через механизм арбитража право на использование шины запроса. Запрос выходит за два смежных такта: в первом такте передается адрес, тип обращения (чтение-запись памяти или ввода/вывода) и тому подобная информация. Во втором такте передается уникальный идентификатор транзакции, длина запроса, разрешенные байты шины и т. п. Через три такта после запроса проверяется состояние ошибки (error status) для защиты от ошибок передачи или нарушений протокола. Любая обнаруженная ошибка вызывает повтор запроса, а вторая ошибка для того же запроса вызывает исключение контроля (machine check exception).

Архитектура ЭВМИУ738 XIII. Вычислительные системы Вычислительная машина, позволяющая выполнять параллельную обработку частей программы или различных программ на нескольких процессорных элементах называется вычислительной системой. Уровни параллелизма: - Уровень заданий. ВС решает различные несвязанные задания на разных процессах (многозадачный режим). - Уровень программ. ВС позволяет обрабатывать части одной программы на различных процессорах. - Уровень команд. Фазы команды выполняются параллельно при конвейерной обработке. - Уровень битов. Биты операндов могут обрабатываться параллельно. По связности параллельных частей программ различают: - Крупнозернистый параллелизм. - Среднезернистый параллелизм. - Мелкозернистый параллелизм.

Архитектура ЭВМИУ739 Средний параллелизм Ускорение Эффективность T(n) – количество квантов времени для решения задачи на n процессорах !!! S(n) в некоторых случаях превосходит n. Ускорение неизбежно уменьшается из-за: - программных издержек на распределение заданий по процессорам; - дисбаланса загрузки процессоров; - издержек на коммуникации. Эффективность показывает ускорение в расчете на один процессор. 1/n

Архитектура ЭВМИУ740 Закон Амдала Ускорение обратно пропорционально проценту последовательных команд. Каждая программа состоит из двух типов команд: исполняющихся исключительно последовательно (доля таких команд - f) допускающих параллельное исполнение (доля таких команд (1-f)) Время последовательного исполнения: Т посл Время при параллельной обработке: T пар = f *T посл + (1-f)*T посл /n Ускорение: S = T посл /T пар = n/(1+(n-1)*f) -> 1/f (n-> )

Архитектура ЭВМИУ741 Организация памяти вычислительных систем Основа любой вычислительной системы – принципы взаимодействия памяти и процессоров. Для многопроцессорных ВС память можно сделать общей для всех процессоров (shared memory) и раздельной (distributed memory). SMDM (+) Упрощается пересылка данных, ускоряется обработка. (-) Усложняется память (-) Затрудняется использование глобальных системных таблиц (векторов прерываний и т.д.) (+) Упрощается программирование, упрощается память (-) Усложняется межпроцессорное взаимодействие.

Архитектура ЭВМИУ742 Архитектура с совместной памятью Системы с однородным доступом к памяти Для массива одинаковых процессоров удобно организовать единственный доступ к памяти. UMA (Unified Memory Access). (-) В каждый момент времени к памяти может обращаться только один процессор. Пример: Intel Core Duo, Xeon (SMP), IBM Power5+. NUMA (Non Unified Memory Access). Каждый процессор обладает собственной памятью (кэш). (-) В каждый момент времени к одному блоку памяти может обращаться только один процессор. Системы с неоднородным доступом к памяти Другие SM архитектуры: COMA, CCNUMA (AMD Opteron)

Архитектура ЭВМИУ743 Архитектура с распределенной памятью В вычислительной системе с распределенной памятью каждый процессор имеет свою собственную адресную память Процессор не обращается к удаленной памяти непосредственно, а посылает сообщение тому процессору, к которому она относится. (+) Локальная шина процессоров меньше используется. (+) Количество процессоров в системе можно увеличить. (+) Данные в локальной памяти легко согласовывать. (- ) Дополнительные издержки на обмен данными (передача запроса, подготовка данных, передача данных). Матричные ВС Некоторые типы архитектур ВС ВС с программируемой структурой Кластерные ВС Конвейерные ВС