АВСиКС ЛК5.ppt
- Количество слайдов: 31
Организация ввода-вывода 1
Назначение и состав системы ввода-вывода • Система ввода-вывода (СВВ) предназначена для выполнения трех из пяти основных функций ВМ: – ввод информации; – вывод информации; – долговременное хранение информации; – обработка информации; – управление обработкой информации. 2
Состав системы ввода вывода В состав системы ввода-вывода входят: 1. Периферийные устройства (ПУ): – – устройства ввода информации; устройства вывода (отображения) информации; устройства вывода информации на исполнительные устройства; устройства долговременного хранения информации; 2. Контроллеры (адаптеры) периферийных устройств; 3. Внешние параллельные и последовательные каналы обмена и соответствующие контроллеры этих каналов; 4. Системные шины и их контроллеры; 5. Контроллеры прерываний и прямого доступа к памяти (ПДП, DMA); 6. Подсистемы процессора, отвечающие за ввод/вывод, организацию ПДП и реакцию на прерывания и др. 3
Эволюция системы ввода-вывода • Первые ПК обладали техническими данными следующего порядка: – частота работы процессора менее 10 МГц; – на выполнение самых простых операций затрачивается нескольких тактов. • В таких условиях для обеспечения бесперебойной работы процессора достаточно всего 4 миллионов обращений к памяти в секунду (цикл работы в 250 нс). • Этим условиям удовлетворяла одношинная структура системы ввода-вывода. 4
Одношинная структура системы ввода-вывода • Все устройства компьютера, включая ОЗУ, «общаются» с процессором через общую шину. • Все интерфейсы ПУ подключаются к этой шине. • Наиболее распространённая системная шина этого периода – шина ISA: – разрядность – 8 бит (позднее 16 бит); – частота – 8 МГц. 5
Выделение канала передачи данных ЦП-ОЗУ • С ростом частоты работы ПК и изменения времени доступа к ОЗУ пропускная способность шины ISA стала тормозить работу процессора. • Решение проблемы нашли в выделении канала передачи данных МП-ОЗУ в отдельную шину, построенную на базе внешнего интерфейса МП, и изолированную от медленной шины ISA посредством контроллера шины данных. • Это повысило производительность работы центрального процессора. • Однако все ПУ продолжали взаимодействовать с центральным процессором через системную шину. 6
Введение кэширования памяти • С дальнейшем ростом частоты работы МП тормозом в работе стало ОЗУ. • Для решения проблемы в архитектуру вычислительных систем была введена дополнительная высокоскоростная кэшпамять, что уменьшило простои МП. • Со временем кэш-память приобрела многоуровневую архитектуру: каждый следующий уровень больше по объёму, но медленнее и дешевле. 7
Внедрение высокоскоростных локальных шин • С широким распространением мультимедийных приложений узким местом стало взаимодействие процессора и видеокарты. • Имеющиеся системные шины ISA, ЕISA не удовлетворяли необходимым требованиям по пропускной способности. • Выход был найден с разработкой и внедрением высокоскоростных локальных шин, посредством которых можно было связаться с памятью. 8
Высокоскоростные локальные шины • Исторически первой шиной этого типа была шина VL-bus, практически повторявшая интерфейс ЦП Intel 80486. • Позднее появилась локальная шина РСI: – PCI – процессорно-независимая шина, что обеспечило ей широкое распространение в системах на последующих моделях ЦП; – частота шина PCI – 33 МГц; – пропускная способность 132 Мб/сек (для 32 -битных данных). • Системная шина ISA по-прежнему использовалась в компьютерах, что позволяло применять в новых компьютерах ранее разработанные ПУ. 9
Архитектура системы с шиной PCI 10
Архитектура системы с шиной PCI • В системах с шиной PCI различные ПУ подключались к разным шинам: – высокоскоростные ПУ подключались к шине PCI; – низкоскоростные ПУ подключались к шине ISA. • С появлением шины РСI стало целесообразным использовать высокоскоростные параллельные и последовательные интерфейсы ПУ: – – SCSI; ATA; USB; … • На этом этапе системной стали называть шину ЦП, через которую он взаимодействовал с ОЗУ. • Шины РСI, ISA и подобные назвали шинами вводавывода или шинами расширения. 11
Дальнейшее развитие шинной архитектуры ПК • С распространением приложений, использующих 3 D-графику потребовалась пропускная способность шины в сотни Мб/сек. • В 1996 г. фирма Intel разработала новую шину AGP, предназначенную специально для связи ОЗУ и процессора с видеокартой. • Эта шина непосредственно связывает видеокарту с ОЗУ минуя шину РСI. • Таким образом, спустя годы снова пришли к многомагистральной структуре ввода-вывода с радиально-магистральными интерфейсами ПУ. 12
Понятие моста • Все шины систем ввода-вывода объединяются в единую транспортную среду передачи информации с помощью специальных устройств – мостов. • Мост – устройство, применяемое для объединения шин, использующих разные или одинаковые протоколы обмена. • Мост – это сложное устройство, которое не только осуществляет коммутацию каналов передачи данных, но и производит управление соответствующими шинами. 13
Южный мост и северный мост ПК • Для обеспечения выполнения функций интерфейсов, входящих в систему ввода-вывода, применяются специальные контроллеры и схемы. • К ним можно отнести: – – – – контроллеры прерываний и ПДП; таймер; часы реального времени; буферы шин данных; дешифраторы; мультиплексоры; регистры; другие логические устройства. • В первых компьютерах, построенных с использованием микропроцессоров, контроллеры ПУ и другие устройства строились на базе набора интегральных схем малой, средней и большой степени интеграции. • Адаптеры, таймер и др. выпускались в виде отдельных микросхем (8250, 8255, 8259, 8237 и т. д. ). 14
Южный мост и северный мост ПК • С повышением производительности компьютеров и увеличением степени интеграции все вышеперечисленные устройства и схемы стали объединяться в микросхемы со сверхбольшой степенью интеграции, образуя специальные наборы интегральных схем, объединяемых термином «чипсет» (Chipset). • В настоящее время управление потоками передаваемых данных производится с помощью мостов и контроллеров, входящих в чипсет. • Две главные микросхемы чипсета принято называть южный мост и северный мост. 15
Южный мост и северный мост ПК • Северный мост (Northbridge) обслуживает системную шину, шину памяти и видеоадаптера. • Южный мост (Southbridge) обслуживает работу с ПУ (шины PCI, IDE, SATA). 16
Пример – чипсет Intel X 58 Express 17
Варианты обмена процессора с внешними устройствами Для учета особенностей реализации процессов ввода-вывода и специфики различного типа ПУ используются три режима ввода-вывода информации: • программный обмен (program polling); • обмен по прерываниям (interrupts); • обмен в режиме прямого доступа к памяти – ПДП (direct memory access – DMA). 18
Программный ввод-вывод • Инициализацию и управление процессом вводавывода осуществляет процессор. • Существует три способа его выполнения: – прямой, используется для синхронных ПУ, т. е. устройств, которые всегда готовы к работе и циклов ожидания не требуется; – условный с занятием цикла, когда при не готовности ПУ, процессор ждет до тех пор, пока наступит его готовность; – условный с совмещением: в отличие от предыдущего варианта, процессор не ждет готовности ПУ, а переходит к продолжению программы с периодической проверкой готовности ПУ. 19
Программный ввод-вывод прямой программный ввод-вывод условный программный ввод -вывод с занятием цикла условный программный ввод -вывод с совмещением 20
Ввод-вывод в режиме прерываний • Инициатором начала процесса ввода-вывода является ПУ. • По готовности ПУ подает ЦП сигнал «запрос на прерывание» . • ЦП, если ПУ разрешен такой режим, завершает текущую команду и переходит к выполнению процесса ввода-вывод: – ЦП осуществляет контекстное переключение, т. е. запоминает свое состояние, чтобы можно было после продолжить программу; – ЦП идентифицирует ПУ (идентификация ПУ производится с помощью адреса вектора прерывания, который содержит номер ячейки, где хранится первая команда этого драйвера); – ЦП передает управление драйверу данного ПУ (ПП), который и осуществляет ввод или вывод информации; – По окончании ввода-вывода по команде возврата из прерывания ЦП восстанавливает сохранённый контекст и продолжает выполнение программы. • Адрес вектора прерывания ПУ передается ЦП от контроллера прерываний (КП). 21
Ввод-вывод в режиме прерываний 22
Ввод-вывод в режиме прерываний • При вводе-выводе в режиме прерываний ПУ должно иметь предварительно установленное, разрешение на работу в режиме прерываний. • Возможны коллизии, когда несколько ПУ выставляют процессору запрос прерывания. • Эта коллизия разрешается с помощью механизма задания уровня приоритетов для каждого ПУ. • Возможна организация вложенных прерываний, когда ПУ с большим приоритетом прерывает работу ПУ с меньшим приоритетом. 23
Прямой доступ к памяти (DMA) • Режим прямого доступа к памяти (ПДП, Direct Memory Access, DMA) используется для высокоскоростных ПУ. • Для использования этого режима требуется специальное устройство – контроллер прямого доступа к памяти (КПДП), которое в современных ПК входит в состав чипсета. 24
Организация прямого доступа к памяти • ЦП, получив от КПДП заявку на прямой доступ, прерывает свою работу и отключается от интерфейса, передавая его КПДП. • ЦП при этом не выполняет контекстного переключения, а может продолжать свою работу, если она не требует доступа к интерфейсу. • Управление интерфейсом переходит к КПДП, который посредством выполнения операций чтения и записи передает информацию между ОЗУ и ПУ с соответствующим заданием адресов памяти. • В этом режиме также используется механизм задания уровня приоритетов для тех ПУ, которые работают с прямым доступом к памяти. 25
Организация прямого доступа к памяти 26
Основные принципы организации передачи информации в вычислительных системах • В процессе работы компьютера передача информации по одному и тому же интерфейсу в один и тот же момент времени идет только между двумя устройствами (модулями) по принципу «точка-точка» . • При этом одно из устройств является активным (ведущим, задатчиком), другое – пассивным (исполнителем, ведомым). • Активное устройство начинает процедуру обмена и управляет ею. • Пассивное устройство выполняет предписания активного. 27
Возможные комбинации активных и пассивных устройств • В компьютере одни устройства всегда является задатчиками (активными), другие только исполнителями (пассивными), третьи в разные моменты времени могут быть как задатчиками, так и исполнителями. • ЦП всегда активное устройство. • ОЗУ всегда пассивное устройство. • ПУ при работе с ЦП являются пассивными, а при работе с ОЗУ (через ПДП) – активными. • Возможна передача между двумя ПУ, тогда одно – активное, а другое – пасивное. 28
Понятие драйвера • С точки зрения ЦП процесс управления ПУ в сравнении с процессом работы с ОЗУ, намного сложнее и требует большего времени и учета специфики работы. • Управление передачей процессор – ОЗУ реализуется в рамках одной компьютерной команды на уровне микрокоманд. • Управление процессом ввода-вывода с реализуется с учетом специфики ПУ с помощью специальной подпрограммы. • Эта программа называется драйвером. 29
Физическая реализация ввода-вывода • Передача информации от задатчика к исполнителю реализуется операцией записи, а обратная – операцией чтения. • Процесс передачи между ПУ и ЦП называют вводом-выводом информации. • Ввод реализуется с помощью операции чтения, а вывод – операцией записи. • При этом чтение и запись производятся не в ОЗУ, а в специальную ячейку памяти – порт ввода-вывода, находящуюся в другом адресном пространстве. 30
Понятие порта ввода-вывода • Порт ввода-вывода – это ячейка памяти внутри ПУ, доступная ЦП для чтения и/или записи. • При выводе информации через ПУ информация передаётся путём записи значений в порты вводавывода этого ПУ. • Аналогично передаются и команды для ПУ. • При вводе данных из ПУ без использования ПДП процессор читает данные из портов ввода-вывода ПУ. • Аналогичным образом определяется текущее состояние ПУ (готов/занят и т. п. ). 31


