- •Наименование работы
- •Цель работы
- •Задание к лабораторной работе
- •Перечень используемого оборудования и программного обеспечения
- •Основные определения
- •Основные операции
- •Контроллер DМА 8237
- •Назначение выводов и сигналов
- •Порядок выполнения лабораторной работы
- •Порядок проведения работы на макете
- •Содержание отчета
- •Контрольные вопросы
- •Литература
Рис.2. Схема формирования системных управляющих сигналов для обслуживания DMA
Скорость передачи данных определяется скоростью работы памяти или контроллера DМА, который часто управляет передачами DМА.
В том случае когда быстродействие памяти составляет 100 нс, то обмен информацией с помощью DМА может происходить с частотой 1/100 нc или 10 МГц. Если же при работе контроллера DМА на максимальной частоте 5 МГц используется память с быстродействием 100 нс, то максимальная частота передачи данных составит 5 МГц, т. к. контроллер DМА работает медленнее, чем память. Во многих случаях контроллер DМА замедляет скорость системы во время обмена с помощью DМА.
Контроллер DМА 8237
Контроллер DМА 8237 во время обмена информацией с помощью ПДП снабжает память и устройство ввода-вывода управляющими сигналами и адресом для обращения к памяти.
Контроллер DМА обеспечивает формирование только 16 младших разрядов адреса памяти. Причем старшая часть адреса во время цикла ОМА по шине данных поступает для дальнейшего хранения в отдельную защелку.
Восемь разрядов младшей части 16-разрядного адреса выдаются контроллером непосредственно на шину адреса. Старшая же часть адреса памяти, дополняющая 16-разрядный адрес, сформированный контроллером 8237, при выполнении процедуры DМА хранится в специальном, находящемся в системе регистре страниц DMA.
Контроллер DМА 8237 фактически является специализированным микропроцессором, задачей которого является высокоскоростная передача данных между памятью и устройством ввода-вывода. На рис.3 представлена блок-схема программируемого контроллера DМА 8237.
Несмотря на то, что в современных системах на базе микропроцессоров этого контроллера в качестве дискретного компонента может и не быть, в большинстве компьютерных систем он имеется в микропроцессорном наборе микросхем, который иначе называют чипсетом (chip set). В одну из микросхем чипсета, например, в интегральный системный периферийный контроллер 82357 ISР (ISР — Integrated System Peripheral Controller), не описанный здесь ввиду его сложности, входят два интегрированных контроллера DМА, которые программируются точно так же, как и отдельный контроллер DМА 8237.
Кроме того, в состав интегрального системного периферийного контроллера входят два программируемых контроллера прерываний 8259А, изучение которых актуально и в настоящее время, когда применяются чипсеты, а не дискретные микросхемы.
Контроллер DМА 8237 имеет четыре независимых DМА канала, которые совместимы с микропроцессорами 8086/8088. Хотя для многих небольших систем этих четырех каналов и достаточно, систему можно расширить с помощью
каскадирования, контроллеров 8237 до любого необходимого количества входных каналов.
Контроллер DМА 8237 способен осуществлять обмен данными со скоростью 1,6 Мбайт/с. При однократном программировании каждый канал способен адресоваться к и может передать блок данных размером до 64 Кбайт.
Рис.3. Структурная схема контроллера ПДП 8237
Назначение выводов и сигналов
CLK
На вывод СLК (с1оск) подается тактирующий сигнал с частотой не более 5 МГц. Скважность тактирующего сигнала должна быть равна 2. В системе на микропроцессоре 8086/8088 для правильной работы контроллера 8237 при использовании системного тактирующего сигнала он должен быть усилен с помощью инвертора.
СS
Сигнал, подаваемый на вывод СS (chip select), разрешает программирование контроллера 8237. Вывод СS обычно соединяется с выходом дешифратора. Декодер не использует управляющие сигналы IO/М (М/IO) микропроцессоров 8086/8088, т.к. в системе используются иные сигналы для управления памятью и устройствами вводавывода (МЕМR. , МЕМW , IOR и IOW ).
RESET
Сигнал, поступающий на этот вывод, переводит контроллер 8237 в исходное состояние, т.е. сбрасывает регистры управления, состояния, запроса и временного хранения, а также устанавливает регистр масок.
READY
Активный сигнал на этом выводе указывает на готовность устройства. Сигнал низкого логического уровня на этом выводе переводит контроллер 8237 в состояние ожидания. Сигнал используется, если быстродействие памяти недостаточно для совместной работы с внешним устройством ввода-вывода, и тогда с его помощью удлиняются циклы обращения к памяти.
HLDA
Установка сигнала на выводе HLDA (hold acknowledge) сигнализирует устройству о том, что микропроцессор освободил шину адреса, данных и управления для устройства запросившего прямого доступа к памяти.
DREQ3-DREQ0
Выводы DREQ3—DREQ0 (DМА request) используются для запроса передач с использованием прямого доступа к памяти для каждого из четырех каналов DМА. Поскольку чувствительность этих вводов к полярности входных сигналов программируется, то они могут быть выводами, возбуждаемыми сигналами высокого или низкого уровня.
DB7-DB0
Выводы DB7—DB0 (data bus) подключаются к линиям шины данных микропроцессора и используются во время программирования контроллера DМА 8237.
IOR
Двунаправленный вывод IOR (I/O read) используется во время программирова-
ния контроллера 3237 и в течение выполнения операции записи при использовании процедуры DМА.
IOW
Двунаправленный вывод IOW/ (I/O write) используется во время программирования контроллера 8237 и в течение выполнения операции чтения при использовании процедуры DМА.
EOP
Двунаправленный вывод завершения процесса прямого доступа к памяти ЕОР (end of process). Сигнал на этом выводе активизируется контроллером при достижении нуля счетчиком передаваемых байт для соответствующего канала. Кроме того, контроллер 8237 позволяет прекратить процесс DМА извне. В этом случае на вывод ЕОР должен быть передан сигнал низкого логического уровня. При появлении внутреннего или внешнего сигнала ЕОР контроллер прекращает процедуру прямого доступа к памяти и сбрасывает запрос DМА.
А3-АО
Выводы шины адреса АЗ—АО (address). В режиме программирования комбинациями сигналов, поступающих на эти выводы, выбирается один из внутренних регистров контроллера. В режиме обслуживания процесса ОМА на эти выводы контроллером выставляется часть адреса.
А7-А4
Адресные выводы А7—А4 (address) являются выходами, с помощью которых контроллер осуществляет формирование части адреса в режиме обслуживания процесса DМА.
HRQ
Вывод НRQ (hold request) подключают к выводу HOLD микропроцессора, для того чтобы посредством соответствующего сигнала запросить у микропроцессора системную шину для выполнения контроллером обмена по прямому доступу к памяти.
DАСКЗ-DАСКО
Сигналы на выводах DАСКЗ—DАСКО (DМА acknowledge) являются сигналами, подтверждающими выполнение процедуры прямого доступа к памяти по соответствующему каналу. Активный уровень сигналов (низкий или высокий) на этих выводах может программироваться. С помощью этих сигналов устройство, приславшее запрос на выполнение процесса DМА, информируется о возможности выполнения передачи по каналу DМА. Часто эти сигналы используются для выбора устройства ввода-вывода в течение выполнения DМА-передач.
АЕN
Сигнал разрешения адреса AEN(address enable) разрешает работу адресной защелке DМА, соединенной с выводами DВ7—DBО контроллера DМА 8237, и предназначенной для формирования восьми разрядов старшей части адреса при
выполнении процесса прямого доступа к памяти. Он также используется для блокировки
