- •Организация эвм и систем
- •Глава 6 Организация памяти
- •Глава 1. Структура современного компьютера
- •1.1 Основные понятия
- •1.2 Принцип действия компьютера
- •Цикл работы компьютера
- •1.3 Программное обеспечение компьютера
- •1.4 Надежность, производительность и показатели быстродействия
- •Производительность компьютера
- •Технико-эксплуатационные характеристики
- •1.5 Вычислительные системы и сети
- •Вопросы для самопроверки
- •Глава 2 представление информации в компьютере
- •5.2 Система команд. Форматы команд и способы адресации
- •5.3 Система прерываний и приостановок, состояние процессора
- •Характеристики системы прерываний
- •Организация перехода к прерывающей программе
- •5.4 Режимы работы процессора: однопрограммный, пакетный, разделения времени, реального времени
- •5.5 CisCиRisCкомпьютеры
- •Процессоры персональных компьютеров
- •5.6 Устройства управления
- •Устройства управления с хранимой в памяти логикой
- •5.7 Методы и средства повышения производительности процессоров персональных компьютеров
- •Суперскалярная обработка
- •Переименование регистров
- •Динамическое прогнозирование условных переходов
- •Контроллер памяти Контроллер pci
- •Вопросы для самопроверки
- •Глава 6. Организация памяти
- •6.1 Адресное пространство
- •6.2 Виды памяти
- •6.3 Оперативная память
- •Статическая и динамическая память
- •6.5 Внешняя память
- •6.6 Организация виртуальной памяти
- •Страничное, сегментное и странично-сегментное распределение
- •Свопинг
- •6.7 Защита памяти
- •Вопросы для самопроверки
- •Глава 7. Интерфейсы
- •7.1 Понятие интерфейса и его характеристики
- •7.1 Состав линий системной шины
- •Передача данных по проводным линиям связи По линиям связи современных интерфейсов преимущественно передаются низкочастотные дискретные одно - и биполярные сигналы (рисунок 7.Х).
- •Адрес верный
- •7.2 Подключение устройств
- •7.4 Интерфейсы внешней памяти
- •7.5 Малые интерфейсы (usb,ide,rs-232c,scsi)
- •Вопросы для самопроверки
- •Глава 8. Периферийные устройства компьютеров
- •8.1 Организация систем ввода-вывода. Каналы, контроллеры
- •Основные функции свв
- •Программный ввод-вывод
- •Прямой доступ в память
- •8.2 Клавиатура и мышь
- •8.3 Дисплеи
- •8.4 Принтеры
- •8.5 Накопители на магнитных дисках
- •Структура накопителя на жестких дисках
- •Структура и особенности накопителя на гмд
- •8.6 Накопители на компакт-дисках (cd-rom, cd-r, cd-rw, dvd)
- •8.7 Другие виды периферийных устройств
- •Вопросы для самопроверки
- •Какие особенности пу делают возможным организацию параллельной обработки и ввода-вывода?
- •Закон Амдала
- •Совместно используемая и распределенная память
- •Когерентность кэш-памяти
- •Наибольшее распространение получили следующие аппаратные механизмы, реализующие протокол когерентности кэш-памяти: это протоколы наблюдения и на основе справочника.
- •9.2 Конвейерные системы
- •Векторные регистры
- •9.3 Симметричные системы
- •9.4 Вычислительные системы со сверхдлинным командным словом
- •9.5 Другие виды мультипроцессорных систем
- •Машины с массовым параллелизмом
- •Нейрокомпьютеры
- •9.6 Проблемно-ориентированные системы
- •Вопросы для самопроверки
- •Глава 10. Организация вычислительного процесса
- •12.2 Системы автоматического контроля и диагностики
- •Контроль передач информации
- •Контроль арифметических операций
- •12.3 Защита памяти. Raid-массивы
- •12.4 Построение «безотказных» систем питания Вопросы для самопроверки
- •Список литературы
Программный ввод-вывод
Определение текущего адреса, куда в ОП должны быть помещены (или откуда взяты) данные, производится процессором программным путем. Если ПУ подготовило данные для передачи в память компьютера, оно формирует сигнал прерывания и передает его в процессор. Этот сигнал переводит один разряд специального регистра в состояние единицы. Выполнение каждой команды в процессоре завершается опросом этого регистра. При обнаружении сигнала прерывания происходит «переключение» процессора с текущей программы на программу обслуживания устройства, приславшего сигнал прерывания.
Программа обслуживания ПУ получает слово данных (обычно, байт), передаваемое устройством, и определяет адрес ячейки памяти, куда (или откуда) оно должно быть направлено. Эта программа, помимо определения адреса, осуществляет буферизацию, определяет количество подлежащих передаче слов, выполняет контроль передачи и преобразование форматов. После завершения передачи одного или нескольких слов из ПУ в память компьютера происходит восстановление текущей программы процессора. Это и есть программный ввод-вывод.
При программном вводе-выводе не может быть обеспечена работа быстрых ПУ, например, дисковых накопителей. Затраты времени на передачу одного байта из ПУ в память машины, т.е. на выполнение процессором функций «канала», даже при высоком быстродействии современных процессоров, сравнительно велики, поэтому для обслуживания быстрых ПУ используют прямой доступ к памяти. Программный ввод-вывод характерен для персональных компьютеров и микроЭВМ при подключении к ним сравнительно медленных ПУ.
Прямой доступ в память
Для реализации прямого доступа в память предусматривают специальные аппаратные средства, на которые возлагают выполнение наиболее затратных по времени функций, а именно, буферизацию данных и преобразование их форматов, определение текущего адреса ОП, куда пересылается байты данных, и количества еще не переданных байт. Выполнение остальных функций по установлению связи и образованию «канала» между ПУ и ОП и по завершению операции могут осуществляться как центральным процессором, так и специальными процессорами ввода-вывода.
В персональных компьютерах настройку канала прямого доступа ЦП выполняет программно. Получив сигнал прерывания, он переключается на выполнение программы-драйвера и передает в контроллер ПУ команду, начальный адрес, количество подлежащих передаче байт, а также информацию о размещении этих байт на носителе (например, номер сектора на диске). После завершения передачи управляющей информации ЦП возвращается к первоначальной программе, а контроллер ПУ начинает процедуру прямого доступа в память, т.е. принимает передаваемый байт из ПУ (при вводе), передает этот байт в ячейку ОП по хранящемуся в регистре контроллера адресу, увеличивает этот адрес и уменьшает число байт, подлежащих передаче. Управление передачей каждого байта не требует вмешательства со стороны ЦП, а возможные конфликты при обращении к памяти разрешаются посредством приостановок. Процедура передачи байт в ОП завершится, как только в счетчике байт окажется нуль. Здесь нужно отметить, что при прямом доступе в память возможно совмещение операций ввода-вывода и обработки, но только если в ЦП предусмотрена большая буферная память, так как в современных компьютерах устройства прямого доступа (например, дисковая память) обладают высоким быстродействием и при обращении к ним полностью захватывают магистраль для передачи данных.
В маинфреймах и суперкомпьютерах все функции ввода-вывода выполняются специально выделенными средствами, работающими под управлением собственной программы. Таким образом, эти средства превращаются в особый процессор, называемый процессором ввода-вывода (ПВВ). Однако работа такого ПВВ подчинена программам ЦП: она инициируется по команде ЦП, после этого выполняется автономно до своего завершения, а после окончания работы ПВВ сообщает центральному процессору о том, как она завершилась. Наличие ПВВ позволяет существенно разгрузить ЦП от работ, связанных с вводом-выводом, но не от инициирования их.