РАДИОТЕХНИЧЕСКИЙ ИНСТИТУТ РТФ ЭВМ и периферийные устройства Авторы курса лекций: Хмелевский Игорь Васильевич, канд.техн.наук., доцент кафедры «Автоматика и телемеханика», Шегал Анна Айзиковна, канд.техн.наук., доцент кафедры «Технологии и средства связи» УГТУ-УПИ Екатеринбург 2008 Лекция 16 Режимы обмена информацией между ядром ЭВМ и ВУ 4 Цели изучения Рассмотрение преимуществ и недостатков программно - управляемого обмена. Изучение особенностей построения подсистемы прерываний различных ЭВМ и их сравнительный анализ. Организация режима прямого доступа к памяти от внешних устройств ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 5 Содержание 1. Программно-управляемый обмен между процессором и ВУ. Команды управления, проверки состояния ВУ, записи и чтения данных. 2.Организация обмена в режиме прерываний Понятие и функции выполняемые подсистемой прерывания ЭВМ. Типовые характеристики подсистемы прерываний. Особенности идентификации источника прерываний: радиальная и векторная подсистема прерываний. Типовые примеры реализации подсистемы прерываний в ЭВМ. 3. Обмен информацией непосредственно между ОЗУ и ВУ ( режим ПДП) Типовая структура контроллера ПДП. Время реакции процессора на требование ПДП. Варианты организации режима. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 6 Методы выполнения процедур ввода-вывода 1. Программно-управляемый обмен; 2. ввод-вывод по прерыванию; 3. прямой доступ к памяти. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 7 Программно-управляемый ввод-вывод Типы команд, которые процессор может передавать МВВ: Команды управления. Служат для активизации внешнего устройства и задают тип операции, которую устройство должно выполнить. Команды опроса состояния. Используются для анализа ЦП текущего состояния МВВ и (или) непосредственно ВУ, с которым программа ведет обмен информации. Команды чтения. Инициирует прием МВВ очередной порции данных от ВУ. Команда записи. Инициирует прием МВВ очередной порции данных от ЦП по системной магистрали в буферный регистр данных модуля. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 8 Ввод - вывод по прерываниям Подсистема прерываний - совокупность аппаратных и программных средств, обеспечивающая обмен между ВУ и ЦП в режиме прерывания программы. Типы прерываний, обслуживаемых процессором: аппаратные (внешние); программные (внутренние). Используются специальные команды прерываний; системные ( внутренние). Вызываются аварийными ситуациями при работе программы. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 9 Прерывание программы ЭВМ Прерывающие программы (обработчики) Внутренний Прерываемая программа Внешняя среда запрос Внешний запрос Рис. 6.1. Прерывание программы ЭВМ и периферийные устройства Принципы организации систем прерывания программ 10 Функции подсистемы прерываний 1. Обнаружение изменения состояния во внешней среде; 2. идентификацию источника запроса; 3. разрешение конфликтной ситуации в случае одновременного возникновения нескольких запросов от разных МВВ (ВУ); 4. определение возможности прерывания текущей программы, выполняемой ЦП; 5. фиксацию (запоминание) состояния прерываемой (текущей) программы; 6. переход к программе, соответствующей обслуживаемому прерыванию; 7. возврат к прерванной программе после окончания работы прерываемой программы. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 11 Алгоритм ввода/вывода в режиме прерываний МВВ формирует сигнал запроса прерывания ЦП завершает выполнение текущей команды ЦП формирует сигнал предоставление прерывания ЦП сохраняет в стеке PSW и счетчик команд ЦП загружает в счетчик команд адрес обработчика прерываний Программа обработки прерывания Восстановление счетчика команд и PSW ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ Упрощенная временная диаграмма процесса прерывания Прерываемая программа Запрос прерываний t Прерывающая программа (обработчик) t t tр tз tппр tв tp – время реакции системы на прерывание; tз – время запоминания состояния прерываемой программы; tппр – время собственно прерывающей программы; tв – время восстановления состояния прерванной программы Рис. 6.2. Упрощенная временная диаграмма процесса прерывания ЭВМ и периферийные устройства Принципы организации систем прерывания программ 12 Упрощенная временная диаграмма процесса 13 прерывания в системах с различной глубиной Запрос прерываний 2 1 3 1 2 3 t Глубина прерывания 1 3 2 Глубина прерывания = 1 1 t 2 1 t Рис.6.3. Упрощенная временная диаграмма процесса прерывания в системах с различной глубиной ЭВМ и периферийные устройства Принципы организации систем прерывания программ Схема реализации управления приоритетами с помощью маски прерывания ЗП1 ЗП2 ЗПk 1 2 k РгЗП Схема выделения незамаскированных запросов макс. приоритета & & & 1 2 k ОСП Код приоритетного запроса РгМ Код маски ЗП – запрос на прерывание; РгЗП – регистр запросов прерываний; ОСП – общий сигнал прерывания; РгМ – регистр маски Рис. 6.9. Схема реализации управления приоритетами с помощью маски прерывания ЭВМ и периферийные устройства Принципы организации систем прерывания программ 14 15 Способы идентификации источника прерываний Радиальный. В процессоре имеется несколько входов запросов на прерывание. Каждый радиальный вход связан с определенным адресом памяти, по которому размещается либо указатель на обслуживающую программу (косвенная адресация), либо начинается сама программа. Векторный. Процессор имеет один вход запроса на прерывание. Если сигнал запроса на прерывание активизируется , то процессор выставляет сигнал разрешения прерывания , который поступает ко всем источникам запроса. ВУ, выставившее запрос, посылает на системную шину данных байт данных (вектор) – указатель на обслуживающую программу. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 16 Векторная система прерывания Шина данных (ШД) Адрес вектора прерывания Процессор ЛПП ПП ИЗП ЗП ПП ОСП ЛЗП ЛПП РгЗП Контроллер прерываний ИЗП1 ЛЗПi РгЗП ОСП ЛЗП1 ЗПk ЛЗПk ИЗПk – источник запросов прерывания; – сигнал запроса прерывания; – сигнал подтверждения прерывания; – общий сигнал прерывания; – линия запросов прерывания; – линия подтверждения прерывания; – регистр запросов прерывания Рис. 6.5. Радиальная структура системы прерывания ЭВМ и периферийные устройства Принципы организации систем прерывания программ 17 Удобно приоритет запросов на прерывание организовывать при помощи специальных микросхем – контроллеров приоритетных прерываний. Каждый из входов контроллера имеет определенный приоритет, который может быть запрограммирован процессором тремя способам: вложенный, приоритет запроса определяется тем, к какому входу контроллера подключен сигнал запроса циклический, приоритеты на входах контроллера циклически меняются (вход, на который поступил сигнал подтверждения прерывания, после его обслуживания изменяет приоритет на самый низкий); маскируемый, в этом режиме процессор может заблокировать прерывания от устройств, которые подключены к определенным, «маскируемым» входам контроллера. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 18 Ввод-вывод в режиме прямого доступа к памяти (DMA) Прямым доступом к памяти называется способ обмена данными, обеспечивающий автономно от процессора передачу данных между ВУ и ОЗУ. Типовой состав одного канала контроллера DMA Счетчик данных Регистр данных Шина данных Шина адреса Запрос ПДП Предоставление ПДП Запрос прерывания Чт/Зап Регистр адреса Узел управления ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ Распределение времени командного цикла между процессором и контроллером DMA Командный цикл Извлечение команды Дешифрация Извлечение операнда Точки занятия цикла магистрали контроллером DMA Выполне ние команды Сохранение результата Анализ запрсов прерыв. Есть запрос прерывания ? ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 19 Радиальная структура арбитража контроллера DMA 20 Системная магистраль СУМ Арбитр РПД Контроллер ПДП ПроцесОЗПД сор ИЗПД1 ЛЗПД1 Запросчик ЛЗПДi ЛЗПДk ЗПДk ИЗПДk Запросчик ИЗПД – источник запросов прямого доступа; РПД – сигнал разрешения прямого доступа; СУМ – средства управления магистралью; ЗПД – сигнал запроса прямого доступа; ОЗПД – общий сигнал запроса прямого доступа; ЛЗПД – линия запросов прямого доступа Рис. 11.1. Радиальная структура системы: а – Slave DMA ЭВМ и периферийные устройства Принципы организации систем прямого доступа к памяти 21 Выводы 1. Программно - управляемый обмен между процессором и ВУ логически прост и осуществляется по инициативе процессора, но всегда связан с запаздыванием в реакции процессора на изменения в ВУ. 2. Если ВУ работает в реальном времени, то для его обслуживания используется обмен по прерываниям, при котором процессор начинает обмен информации только «по инициативе ВУ». 3. В современных процессорах наиболее распространена векторная подсистема прерываний, при которой для всех источников используется только один вход запроса на прерывание, а адрес обслуживающей программы определяется идентификационным кодом источника. 4. Режим прямого доступа к памяти в классических ЭВМ производится с использованием специального ВУ – контроллера ПДП. Этот режим является альтернативой программно- управляемому обмену, а при загрузке ядра ОС - единственно возможный. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ 22 Информационное обеспечение лекции Литература по теме: Древс Ю.Г. Организация ЭВМ и вычислительных систем. Учебник для вузов./ Ю.Г. Древс. - М.: Высшая школа, 2006. Степанов А.Н. Архитектура вычислительных систем и компьютерных сетей ЭВМ: учебное пособие / А.Н. Степанов. СПб: «Питер», 2007 Горнец Н.Н. Организация ЭВМ и систем : учебное пособие / Н.Н. Горнец, А.Г. Рощин, В.В. Соломенцев . М.: Издательский центр «Академия», 2006. ЭВМ и периферийные устройства Лекция 16. Режимы обмена между ядром ЭВМ и ВУ