- •Часть 1
- •Тема 1: Принципы построения компьютеров
- •1.1. История развития вычислительной техники
- •1.2 Варианты классификации эвм
- •1.3 Классическая архитектура эвм
- •Выводы по теме
- •Тема 1: Принципы построения компьютеров
- •1.4 Состав компьютера
- •1.5 Биты, байты, слова
- •1.6 Ячейки памяти, порты и регистры
- •Тема 1: Принципы построения компьютеров
- •1.7 История развития пк
- •1.8 Структурная схема
- •1.9 Состав системного блока
- •Контрольные вопросы по теме 1
- •Тема 2: Физические основы представления информации в компьютерах
- •2.1. Информатика, информация, сигналы и их представление
- •1.2 Измерение количества информации
- •1.3 Кодирование символьной информации
- •Тема 2: Физические основы представления информации в компьютерах
- •Контрольные вопросы по теме 2
- •Тема 3: Архитектуры микропроцессоров
- •Тема 3: Архитектуры микропроцессоров
- •Контрольные вопросы
- •Тема 3: Архитектуры микропроцессоров
- •Логические узлы (агрегаты) эвм,
- •Простейшие типы архитектур
- •Контрольные вопросы к теме 3
- •Тема 4: Принцип адресации и структура команд
- •Общие сведения, определения и классификация
- •Логическая организация памяти и методы адресации информации
- •Тема 4: Принцип адресации и структура команд
- •4.3 Командный цикл процессора
- •4.3 Структура команд процессора
- •4.4 Система операций
- •Контрольные вопросы по теме 4
- •Тема 5: Система прерываний и организация ввода/вывода
- •Пространство ввода-вывода
- •Параллельный обмен
- •Последовательный обмен
- •Тема 5: Система прерываний и организация ввода/вывода
- •5.5 Виды прерываний
- •5.6 Обнаружение изменения состояния внешней среды
- •Тема 5: Система прерываний и организация ввода/вывода
- •Распределение системных ресурсов
- •Контрольные вопросы по теме 5
- •Тема 6: Многопроцессорные архитектуры
- •6.1 Представление о вычислительных системах
- •6.2 Основные определения.
- •6.3 Уровни и средства комплексирования.
- •Тема 6: Многопроцессорные архитектуры
- •6.3 Классификация м. Флинном
- •6.4 Другие подходы к классификации вс
- •Тема 6: Многопроцессорные архитектуры
- •6.7 Кластерная архитектура
- •Тема 6: Многопроцессорные архитектуры
- •6.8 Коммуникационные среды
- •6.9 Коммутаторы для многопроцессорных вычислительных систем
- •Контрольные вопросы по теме 6
- •Тема 7: Особенности реализации оперативной памяти в компьютерах типа ibm pc
- •7.1 Виды электронная память
- •7.2 Структура оперативной памяти
- •7.3 Кэширование оперативной памяти
- •Тема 7: Особенности реализации оперативной памяти в компьютерах типа ibm pc
- •Основные характеристики зу
- •Основные принципы работы
- •Тема 7: Особенности реализации оперативной памяти в компьютерах типа ibm pc
- •7.7 Динамическая память
- •7.8 Статическая память
- •Контрольные вопросы к теме 7
Тема 5: Система прерываний и организация ввода/вывода
Тема лекции: Прямой доступ в память
План лекции:
5.7 Прямой доступ к памяти
5.8 Распределение системных ресурсов
Прямой доступ в память (ПДП)
Прямой доступ к памяти (Direct Memory Access, DMA) — это обмен между системной памятью (ОЗУ) и устройством, выполняемый без непосредственного участия процессора. Для устройств ISA в архитектуре PC/AT присутствует централизованный контроллер DMA.
Для устройств шины PCI (и всех ее «родственников») контроллер является частью устройства — мастера шины (bus master). Штатного централизованного контроллера DMA, как это было в архитектуре ISA, для шины PCI нет.
Многоканальный контроллер DMA, программируемый по командам от центрального процессора, присутствует на системной плате PC-совместимого компьютера. Первоначально он использовался устройствами шины ISA, теперь он используется интегрированной традиционной периферией: контроллером НГМД, портами LPT и СОМ и некоторыми встроенными аудиосредствами. Процессор при обмене по DMA занят только инициализацией контроллера, которая сводится к записи в его регистры нескольких байтов, задающих начальный адрес и размер пересылаемого блока памяти, направление и режим обмена. Затем обмен производят системная шина и контроллер DMA, а инициатором обмена выступает устройство, сигнализирующее контроллеру DMA о своей готовности к обмену.
Во время операций DMA процессор может продолжать работу, если выбранный режим обмена не занимает всей пропускной способности шин, задействованных процессором в данный момент (шины памяти, шины PCI, через которые подключается ISA в современных компьютерах).
Контроллер DMA можно считать простейшим сопроцессором ввода-вывода, разгружающим центральный процессор от рутинных операций обмена.
В процессе работы МПС с интерфейсом типа "общая шина" часто возникает необходимость передачи достаточно больших массивов данных между памятью и ВУ (например, копирование сектора диска, загрузка видеопамяти и т. п.). При наличии в системе единственного активного устройства — процессора возможен единственный путь решения этой задачи— программно-управляемый обмен
"Память → Процессор → ВУ" (или "ВУ → Процессор → Память").
Рассмотрим вариант программно-управляемого обмена между памятью и внешним устройством в МПС на базе МП 8080. Пусть необходимо передать массив данных длиной L, начиная с адреса ADR на ВУ с адресом АIO. Положим, что начальный адрес массива загружен в регистровую пару HL, а длина массива — в регистр С.
Таким образом, для того чтобы в рамках процедуры копирования массива данных переслать из памяти в ВУ один байт данных, потребуется десять машинных циклов. Процессоры с более совершенной системой команд (например, х86) могут использовать для этой цели меньшее число МЦ, но все равно их будет более одного.
Управляя обменом, микропроцессор "ведет" два счетчика — адресов массива и количества переданных байтов и формирует на магистраль сигналы управления. Если снабдить ВУ аппаратными счетчиками и схемой формирования управляющих сигналов (т. н. "канал прямого доступа в память" — ПДП), то передачу одного байта (слова) можно осуществить за один МЦ без участия процессора.
Фрагмент программы обмена может иметь вид, представленный в табл. 5.2.
-
Таблица 5.2 -Фрагмент программы обмена
Мнемокод
Комментарий
Количество МЦ
LM: MOV А,М
Чтение байта в Акк
2
OUT AIO
Выдача байта на ВУ
3
INX Н
Модификация адреса
1
DCRC
Модификация счетчика
1
JNZ LM
Переход, если массив не исчерпан
3
Всего машинных циклов: 10
Необходимо лишь на время передачи данных под управлением канала ПДП блокировать работу процессора, отключив его от системной шины. Для этого служит вход захвата шины HLD. Если подать на него активный уровень, то МП по окончании текущего МЦ, безусловно, перейдет в режим ожидания, переведя все свои выходные линии, кроме HLDA, в высокоимпедансное состояние, а выход HLDA — в состояние логической 1. Выходной сигнал HLDA используется для отключения процессорного модуля от системной шины — перевода шинных формирователей, включенных между локальной и системной шиной, в высокоимпедансное состояние.
Если в МПС используется несколько ВУ, снабженных каналом ПДП, то целесообразно использовать специальный контроллер ПДП, который обеспечивает программирование каналов ПДП, подключение их к системной шине и дисциплину обслуживания.
По стандартным каналам DMA возможно обращение как к системной памяти (расположенной на системной плате), так и к памяти, подключенной к шинам ISA и PCI. Обращение к 8-разрядной памяти, расположенной на адаптерах, допустимо только по 8-битным каналам (преобразование циклов выполнять некому). Однако ПУ, использующие эти каналы, могут располагаться лишь в слотах ISA/EISA или на системной плате (контроллер НГМД, LPT-порт в режиме ЕСР или Fast Centronics, аудиокодек). Если эти устройства системной платы используют каналы DMA, то данные каналы становятся недоступными для абонентов шины ISA. Контроллерам AT А, расположенным на системной плате, стандартные каналы DMA не требуются.