close

Вход

Забыли?

вход по аккаунту

?

ИПУ моя лаба1

код для вставкиСкачать
 МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
"Ижевский государственный технический университет им. М.Т. Калашникова"
Кафедра "Вычислительная Техника"
Отчет по лабораторной работе №1
по дисциплине "Интерфейсы периферийных устройств "
Выполнил: студент группы 7-78-3
Майоров А.В.
Принял: к.т.н.,
профессор
Казаков В.С.
Ижевск 2013
Оглавление
ISA шина3
Исходное задание8
Ход работы8
Вывод16
Список использованной литературы16
ISA шина ISA Bus (Industry Standard Architecture) - шина расширения, применявшаяся с первых моделей PC и ставшая промышленным стандартом. В компьютере XT использовалась шина с разрядностью данных 8 бит и адреса - 20 бит. В компьютерах AT ее расширили до 16 бит данных и 24 бит адреса. Конструктивно, как показано на рис. 1, шина выполнена в виде двух щелевых разъемов с шагом выводов 2,54 мм (0,1 дюйма). В подмножестве ISA-8 используется только 62-контактный слот (ряды А, В), в ISА-16 применяется дополнительный 36-контактный слот (ряды С, D). Шина РС/104, разработанная для встраиваемых контроллеров на базе PC, отличается от обычной ISA только конструктивно.
Рисунок 1. Слот ISA.
Первая 8 разрядная шина ISA появилась в 1981 году, а в 1984 году появился ее 16 разрядный вариант. 8 разрядная ISA применялась в компьютерах класса ХТ и работала на частоте равной 4,77 МГц, а 16 разрядная - в АТ с частотой в 8,33 МГц. Приведем таблицу 1 сравнений этих двух стандартов:
Таблица 1. Сравнение двух стандартов.
параметрХТАТгод появления19811984разрядность816тактовая частота4,77 МГц8,33 МГцскорость передачи данных4 Мбайт/сек8 Мбайт/секкол-во контактов в разъеме6298 Шина ISA обеспечивает возможность обращения к 8- или 16-битным регистрам устройств, отображенным на пространства ввода-вывода и памяти. Диапазон адресов памяти для устройств ограничен областью верхней памяти UM А (АОООО-FFFFFh).
Родоначальником в семействе шин ISA была появившаяся в 1981 году 8-разрядная шина (8 bit ISA Bus), которую можно встретить в компьютерах ХТ-генерации. 8-разрядная шина имеет 62 линии, контакты которых можно найти на ее слотах. Они включают 8 линий данных, 20 линий адреса, 6 линий запроса прерываний. Шина функционирует на частоте 4.77 MHz. 8-разрядная шина ISA - самая медленная из всех системных шин (теоретически скорость передачи данных могла достигать более 4,5 Мбайт/с, реальная пропускная способность достигала 1,2 Мбайта/с.), поэтому она уже давным давно устарела и поэтому сегодня нигде не используется, ну разве что оочень редко (например, некоторые карточки FM-тюнера могут 8-разрядный ISA-интерфейс, так как там шина используется только для управления, а не для передачи собственно данных, и скорость ее работы является некритичной).
Шина ISA-8 может предоставить до 6 линий запросов прерываний, ISА-16 - 11. Часть из них могут "отобрать" устройства системной платы или шина PCI. Шина ISA-8 позволяет использовать до трех 8-битных каналов DMA.
Все перечисленные ресурсы шины должны быть бесконфликтно распределены. Бесконфликтность подразумевает выполнение перечисленных ниже условий:
1 Каждое устройство-исполнитель должно управлять шиной данных только при чтении по его адресам или по используемому им каналу DMA. Области адресов, по которым выполняется чтение регистров различных устройств, не должны пересекаться. Поскольку при записи шиной данных управляет лишь текущий задатчик, возможность конфликтов, приводящих к искажениям данных, исключена. "Подсматривать" операции записи, адресованные не данному устройству, не возбраняется.
2 Назначенную линию IRQx или DRQx устройство должно держать на низком уровне в пассивном состоянии и переводить в высокий уровень для активации запроса. Неиспользуемыми линиями запросов устройство управлять не имеет права, они должны электрически отсоединяться или подключаться к буферу, находящемуся в третьем состоянии. Одной линией запроса может пользоваться только одно устройство. Такая нелепость (с точки зрения схемотехники ТТЛ) была допущена в первых PC и из требований совместимости тиражируется до сих пор.
Задача распределения ресурсов для старых адаптеров решалась с помощью джамперов, затем появились программно конфигурируемые устройства, которые вытесняются автоматически конфигурируемыми платами PnP. Назначение контактов слотов шин ISA и EISA приведено в таблице 2 и 3 соответственно. Таблица 2. Основной разъем шин ISA-8, ISA-16 и EISA.
Ряд В№Ряд АGND1IOCHK#Reset2SD7+5 В3SD6IRQ2/914SD5-5 В5SD4DRQ26SD3-12В7SD2OWS#28SD1+12ВgSDOGND10IOCHDRYSMEMW#иAENSMEMR#12SA19IOWR#13SA18IORD#14SA17DACK3#15SA16DRQ316SA15DACK1#17SA14DRQ118SA13REFRESH"19SA12BCLK20SA11IRO721SA10IRQ622SA9IRQ523SA8IRQ424SA7IRQ325SA6DACK2#26SA5TC27SA4BALE28SA3+5 В29SA2Osc30SA1GND31SAO
1В4: XT=IRQ2, AT=IRQ9.
2В8: XT-Card Selected.
Таблица 3. Дополнительный разъем шин ISA-16 и ISA.
Ряд О№Ряд СMEMCS16#1SBHE#IOCS16#2LA23IRQ103LA22IRQ 114LA21IRQ125LA20IRQ 156LA19IRQ147LA18DACKO#8LA17DRQO9MEMR#DACK5#10MEMW#DRQ511SD8DACK6#12SD9DRQ613SD10DACK7#14SD11DRQ715SD12+5B16SD13MASTER*17SD14GND18SD15 Сигналы шины ISA естественны для периферийных микросхем фирмы Intel (в стиле семейства 8080). Набор сигналов ISA-8 предельно прост. Программное обращение к ячейкам памяти и пространства ввода-вывода обеспечивают следующие сигналы:
♦ SD[7:0] - шина данных. Иное название сигналов - Data или D.
♦ SA[19:0] (Addr[19:0], A[19:0]) - шина адреса.
♦ AEN - разрешение адресации портов (запрещает ложную дешифрацию адреса в цикле DMA).
♦ IOW# (IOWC#, IOWR#) - запись в порт.
♦ IOR# (IORC#, IORD#) - чтение порта.
♦ SMEMW* (SMEMWR#, SMWTC#) - запись в системную память (в диапазоне адресов 0-FFFFFh).
♦ SMEMR* (SMEMRD#, SMRDC#) - чтение системной памяти (в диапазоне адресов 0-FFFFFh).
Ниже перечислены сигналы, относящиеся к сигналам запросов прерывания и каналам прямого доступа к памяти:
♦IRQ2/9, IRQ[3:7] - запросы прерываний. Положительный перепад сигнала
вызывает запрос аппаратного прерывания. Для идентификации источника
высокий уровень должен сохраняться до подтверждения прерывания процессором, что затрудняет разделение (совместное использование) прерываний. Линия IRQ2/9 в шинах XT вызывает аппаратное прерывание с номером 2, а в AT - с номером 9.
♦ DRQ[1:3] - запросы 8-битных каналов DMA (положительным перепадом).
♦ DACK[1:3]# - подтверждение запросов 8-битных каналов DMA.
♦ ТС - признак завершения счетчика циклов DMA.
Шина имеет и несколько служебных сигналов синхронизации, сброса и регенерации памяти, установленной на адаптерах.
♦ IOCHRDY (CHRDY, I/OCHRDY) - готовность устройства, низкий уровень удлиняет текущий цикл (не более 15 икс).
♦ BALE (ALE) - разрешение защелки адреса. После его спада в каждом цикле процессора линии SA[0:19] гарантированно содержат действительный адрес.
♦ REFRESH* (REF#) - цикл регенерации памяти (в XT называется DACKO#).
Сигнал появляется каждые 15 мкс, при этом шина адреса указывает на очередную регенерируемую строку памяти.
♦ ЮСНК# - контроль канала, низкий уровень вызывает NMI CPU (разрешение и индикация в системных портах 061h, 062h).
♦ RESET (RESDRV, RESETDRV) - сигнал аппаратного сброса (активный уровень -высокий).
♦ BCLK (CLK) - синхронизация шины с частотой около 8 МГц. ПУ могут не использовать этот сигнал, работая только по управляющим сигналам записи и чтения.
♦ OSC - несинхронизированная с шиной частота 14,431818 МГц (использовалась старыми дисплейными адаптерами).
Кроме логических сигналов шина имеет контакты для разводки питания +5, -5, +12 и-12 В.
Регенерация памяти
Динамическая память, применяемая в компьютере в качестве системного ОЗУ, а также, возможно, находящаяся на картах расширения, требует регенерации - периодического обновления (refresh) всех строк матрицы. На системной плате всегда имеется контроллер регенерации памяти, в задачу которого входит регулярный перебор строк памяти с формированием специального цикла регенерации. Каждые 15 мкс контроллер регенерации формирует цикл регенерации (сигнал REFRESH*), диаграмма которого аналогична циклу DMA, но вместо чтения данных выполняется регенерация. В этом цикле считывания данных из микросхем памяти не производится, но стробы строк формируются (подробнее о методах регенерации см. в книге "Аппаратные средств IBM PC. Энциклопедия"). На шине ISA контроллер регенерации работает как нулевой канал DMA (в старых машинах он непосредственно и использовался). Каждые 15 мкс контроллер регенерации формирует сигнал REFRESH*, во время действия которого устанавливается AEN=H и BALE=H, формируется сигнал MEMR#, а на линиях SA[7:0] устанавливается адрес текущей регенерируемой строки. Диаграмма цикла регенерации аналогична циклу DMA, но сигнал REFRESH* указывает на то, что вместо чтения данных выполняется регенерация.
Если какое-либо устройство захватывает управление шиной более чем на 15 мкс, оно должно позаботиться о регенерации памяти. Для этого раз в 15 мкс оно должно вырабатывать сигнал REFRESH*, "отпуская" все адресные и управляющие сигналы. При этом контроллер шины, расположенный на системной плате и отвечающий за регенерацию памяти, сформирует очередной адрес на линиях SA[7:0] и сигнал MEMR*, а также установит AEN=0 и BALE=1 на все время цикла регенерации. Если устройство, надолго захватившее шину, сигнал регенерации не формирует, то запросы регенерации накапливаются в контроллере регенерации, и, как только управление будет возвращено, эти запросы будут немедленно удовлетворены. Однако число безнаказанно пропущенных запросов ограничено свойствами динамической памяти, и очередь запросов в контроллере регенерации может ограничиваться, например, четырьмя.
Прерывания
На шине ISA имеются линии запросов маскируемых и немаскируемых аппаратных прерываний. Линии запросов маскируемых прерываний IRQ2-IRQ7 поступают на входы первичного контроллера прерываний, IRQ9-IRQ15 - на входы вторичного. Контакт В4 (IRQ2/9) запрос IRQ2 вырабатывал только у машин РХ/ХТ. На всех современных машинах (класса AT) он является запросом IRQ9, хотя на многих адаптерах (всех 8-битных) он обозначается как IRQ2. Приоритеты у запросов убывают по порядку IRQ9...IRQ15 и далее IRQ3...IRQ7. Запросы от конкретных линий могут быть замаскированы записью в регистры контроллера (см. п. 12.4), общий запрет/разрешение осуществляется манипулированием флагом разрешения прерываний (IF) процессора. Устройство может использовать одну или несколько линий запроса прерывания. На используемой линии запроса устройство в покое должно формировать низкий уровень сигнала, а при возникновении условия прерывания устанавливать на нем высокий уровень запроса. Неиспользуемые линии должны быть электрически отключены от шины или же их выходные формирователи должны переводиться в третье состояние. Переход из низкого в высокий уровень является сигналом для контроллера прерываний на формирование запроса прерывания к процессору. Устройство должно удерживать высокий уровень запроса до тех пор, пока к нему не обратится программа-обработчик прерывания, что будет означать не только обнаружение, но и правильную идентификацию источника запроса прерывания. Если запрос снят преждевременно, идентификация будет некорректной. Детально механизм обслуживания прерываний рассмотрен в п. 12.4.
Способ подачи сигнала прерывания, принятый в ISA, - чувствительность к уровню, причем к высокому, - имеет меньшую помехозащищенность, чем срабатывание по отрицательному перепаду, и отрезает путь к нормальному разделению (совместному использованию) линий запросов.
Линия ЮСНК# позволяет вызывать немаскируемое прерывание (NMI), на которое процессор реагирует вне зависимости от каких-либо флагов. Это прерывание принято использовать для сообщения о серьезных ошибках, требующих реакции системы, но не для регулярной работы. Вызов NMI от данной линии разрешается установкой бита 3 (EIC) системного порта 06lh, а признаком того, что прерывание NMI вызвано сигналом ЮСНК#, является единичное значение бита 6 (IOCHK) того же порта.
Исходное задание
Нужно составить схемы и временные диаграммы в соответствии с вариантом задания (табл. 4):
Таблица 4. Вариант задания.
Базовые
адресаСмещение
адресаВид
доступаТип циклаУсловие записи в 1 триггере IRQУсловие сбросаПримечаниеЧтЗпСтанд.Замедл.
(в тактах)Ускор.№ бит регистр маски№ бит регистр состояния
г№ бит регистр состояние
┐Запись в регистр МЧтение регистра состояния2F4
1F4
0F410+++Регистр данных00+++4Регистр маски11+14Регистр адреса01+43+Регистр состояния Ход работы
Реализуем интерфейсный контроллер (ИК) периферийных устройств (ПУ) на рисунке 2.
Рисунок 2. Интерфейсный контроллер периферийных устройств.
Теперь разработаем функциональную схему устройства:
Рисунок 3.1. Функциональная схема устройства.
Рисунок 3.2. Функциональная схема устройства.
Рисунок 3.3. Функциональная схема устройства.
Циклограмма стандартного цикла:
Рисунок 4.1. Циклограмма стандартного цикла.
Циклограмма цикла замедления:
Рисунок 4.2. Циклограмма цикла замедления.
Циклограмма ускоренного цикла:
Рисунок 4.3. Циклограмма ускоренного цикла.
Наиболее часто УС проектируются как устройства ввода/ вывода. Временные диаграммы циклов приведены на рис. 4.1 - 4.3 (все временные параметры приведены для частоты SYSCLK, равной 4,77 МГц). Циклы начинаются с выставления задатчиком адреса на линиях SAO...SA15 и сигнала -SBHE. Отметим, что несмотря на потенциальную возможность адресации по 16 линиям адреса, чаще всего используются только 10 младших линий SAO...SA9, так как большинство разработанных ранее плат расширения используют только их, и, следовательно, за исключением особых случаев нет смысла обрабатывать старшие разряды SA10...SA15. В ответ на получение адреса исполнитель, распознавший свой адрес, должен сформировать сигнал -I/O CS16 в случае, если обмен должен быть 16-разрядным. Далее следует собственно команда чтения или записи. При цикле чтения задатчик выставляет сигнал -IOR, в ответ на который исполнитель (УС) должен выдать данные на шину данных. Эти данные должны быть сняты исполнителем после окончания сигнала -IOR. В цикле записи задатчик выставляет записываемые данные и сопровождает их стробом записи -IOW. Здесь надо отметить, что хотя в соответствии со стандартом установка записываемых данных предшествует выставлению -IOW, в некоторых компьютерах реализуется обратный порядок: сначала выставляется -IOW, а затем появляются данные. Поэтому при проектировании УС надо рассматривать как момент действительности данных только задний (положительный) фронт сигнала -IOW. В случае, когда УС не успевает выполнить требуемую от него команду в темпе магистрали, оно может приостановить на целое число периодов сигнала SYSCLK завершение цикла чтения или записи с помощью снятия (перевода в низкий уровень) сигнала I/O CH RDY (так называемый удлиненный цикл). Это производится в ответ на получение сигнала -IOR или -IOW. Сигнал I/O CH RDY может удерживаться низким не более 15,6 мкс, в противном случае процессор переходит в режим обработки немаскируемого прерывания. Отметим, что некоторые изготовители персональных компьютеров указывают в сопроводительной документации другие допустимые величины этого временного интервала (например, 2,5 мкс), так что не следует ориентироваться на максимальную величину, указанную в стандарте, иначе нет гарантии работы УС во всех компьютерах.
Вывод
В ходе выполнения данной лабораторной работы мы спроектировали устройство, построили циклограммы в соответствии своего варианта задания. Были закреплены старые, а также получены новые навыки, касающиеся разработки устройств для ISA. Список использованной литературы
1. М. Гук, "Аппаратные интерфейсы ПК". Энциклопедия-СПб.: Питер, 2002. - 528 с.
2. Ю.В. Новиков, "Разработка устройств сопряжения для персонального компьютера типа IBM PC". - М.: ЭКОМ., 2000 - 224 с. 3. Сайт "ВИКИпедии": http://ru.wikipedia.org/wiki/ISA.
4. Сайт "Циклы магистрали ISA": http://www.cepera.h1.ru/leading/1_2_3.htm
5. Сайт "Шины расширения": http://lib.zabspu.ru/computers/hard/interface/4.htm
6. Сайт "Шины": http://www.whatis.ru/hard/mainb3.shtml
16
Документ
Категория
Рефераты
Просмотров
32
Размер файла
194 Кб
Теги
лаба, ипу
1/--страниц
Пожаловаться на содержимое документа