49447 (Шина расширения ISA), страница 2

2016-07-30СтудИзба

Описание файла

Документ из архива "Шина расширения ISA", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "49447"

Текст 2 страницы из документа "49447"

I/OR [8] [8/16] Сигнал - I/OR (I/O Read - Чтение устройства ввода/вывода) разрешается задатчиком на шине для чтения данных из устройства ввода/вывода по адресу, определяемому сигналами SA.

I/OW [8] [8/16] Сигнал - I/OW (I/O Write - Запись в устройства ввода/вывода) разрешается задатчиком на шине для записи данных в устройство ввода/вывода по адресу, определяемому сигналами SA.

MEM CS16 Сигнал - MEM CS16 (Memory Cycle Select - Выбор цикла для памяти) разрешается 16-разрядной памятью для сообщения задатчику шины о том, что память, к которой он обращается, имеет 16-разрядную организацию и ему следует выполнить 16-разрядный цикл доступа. Если этот сигнал запрещен, то только 8-разрядный цикл доступа может быть выполнен на шине. Память, к которой выполняется цикл доступа, должна выработать этот сигнал из адресных сигналов LA.

I/O CS16 Сигнал - I/O CS16 (I/O Cycle Select - Выбор цикла для УВВ) разрешается 16 - разрядным УВВ для сообщения задатчику шины о том, что УВВ, к которому он обращается, имеет 16-разрядную организацию и ему следует выполнить 16-разрядный цикл доступа. Если этот сигнал запрещен, то только 8-разрядный цикл доступа к УВВ может быть выполнен на шине. УВВ, к которому выполняется цикл доступа, должна выработать этот сигнал из адресных сигналов SA.

I/O CH RDY [8] [8/16] Сигнал I/O CH RDY (I/O Channel Ready - Готовность канала ввода/вывода) является асинхронным сигналом, вырабатываемый тем устройством, к которому осуществляется доступ на шине. Если этот сигнал запрещен, то цикл доступа удлиняется, так как в него будут добавлены такты ожидания на время запрещения. Когда задатчиком на шине является центральный процессор или внешняя плата, то каждый такт ожидания по длительности - половина периода частоты.

SYSCLK (для тактовой частоты SYSCLK=8 МГц длительность такта ожидания - 62.5 нс). Если задатчиком на шине является контроллер ПДП, то каждый такт ожидания - один период SYSCLK (для SYSCLK=8 МГц - 125 нс). При обращении к памяти на внешней плате ЦП всегда автоматически вставляет один такт ожидания (если сигнал - 0WS запрещен), поэтому, если внешней плате достаточно времени цикла с одним тактом ожидания, то запрещать сигнал I/O CH RDY не требуется.

RESET DRV [8] [8/16] Сигнал RESET DRV (Reset Driver - Сброс Устройства) вырабатывается центральным процессором для начальной установки всех ресурсов доступа на шине после включения питания или падения его напряжения. Минимальное время разрешения этого сигнала - 1 мс.

Благодаря простоте сопряжения устройства с шиной ISA, программирование устройства не составляет труда. Необходимо лишь сравнивать числа, поступившие с линий SA [19; 0] - шина адреса, с выбранным адресом устройства. Также я учитываю состояние линий IOWR, IORD - эти сигналы указывают на попытку записи/чтения из порта.

Селектор адреса необходим для выборки соответствующего адреса в этом ЗУ, по которому находится какая-либо управляющая последовательность, или нули. При выборе адреса, который попадает в диапазон зарезервированных адресов устройством, происходит выборка управляющих четырёх бит, и передача их далее на устройство, либо элементы сравнения.

4.2 Описание работы интерфейсной части устройства

При совпадении адреса на шине с базовым, формируется бит разрешения на выходе инвертора DD9.2. После этого рассматриваются сигналы - I/OR и - I/OW. Следует отметить, что все сигналы пропущены через буферные элемента микросхемы К155АП6. Если на линии взведен сигнал - I/OR, происходит стробирование регистра хранения, и данные с шины SD [0. .7] записываются в этот регистр. Младший бит регистра не рассматривается, т.к используется для записи информации о состоянии датчика температуры в шину. Второй бит отвечает за включение-выключение нагрузки. Следовательно, если записать во второй бит 1 - включится нагреватель, и наоборот. Остальные биты данных используются для управления мультиплексором (ключами). Допустимые значения для этих бит:

000001**

000010**

000100**

001000**

010000**

100000**

Т. е. в каждый момент времени должен быть включен только один ключ. Ключи в свою очередь подключают в схем датчика сопротивления разного номинала, осуществляя тем самым регулировку порога срабатывания датчика.

В момент режима - I/OW происходит считывание данных, анализируя которые можно говорить о текущем состоянии порога датчика, включен или нет нагреватель и срабатывание ключа датчика. Анализируя полученную информацию можно в широких пределах управлять работой регулятора.


5. Описание работы принципиальной схемы

5.1 Выбор элементной базы

Вся элементная база "отечественная", предложенные варианты деталей автора приняты и в данном проекте. Критериев энергосбережения, скорости и пр. в задании нет, поэтому данные вопросы опускались, и выбирались компоненты по требуемому функционалу.

Симистор.

Единственный симистор на схеме - симистор VD2 серии КУ208Г.

Светодиод

Для индикации работы нагревателя ввели светодиод HL1 серии АЛ307БМ, который служит так же как нагрузка для высокочастотного трансформатора.

Резисторы.

В схеме используются резисторы с сопротивлением 1, 5.6, 10, 22, 47, 68 кОм. Также присутствует терморезистор RK1 серии ММТ-4.

Номинальная мощность при 70С- 0.25 Вт

Рабочее напряжение - 200 В

Максимально допустимое напряжение - 400 В

Диапазон рабочих температур - 55 +125С

Температурный коэффициент сопротивления - 100 ppm/С

Трансформатор

Т1 - стальной трансформатор Ш3x6, обмотка 1 - 600, обмотка 2 - 1000 витков провода ПЭВ-2 0.08.

Транзисторы.

Все транзисторы на схеме общего назначения КТ315Г.

Конденсаторы

C1 - К73-17 (0.47мк * 630В)

С2 (4700)

С3 (10мк * 25В)

С4-С5 (500мк * 16В)

Диоды

VD2 - КД209Б

VD3 - КД522А

Логические элементы

DD1.1-DD1.4 - К561ЛП2.

Операционный усилитель

См. пункт 5.2

Ключи

КМОП ключ К176КТ1.

5.2 Выбор интегральных микросхем

В устройстве применены микросхемы ТТЛ логики серии 155, 555, 1533. Выбор микросхем данной логики обоснован уровнями сигналов ISA, соответствующим уровням ТТЛ логики. Ниже приведены микросхемы, применяемые в устройстве.

К155ЛН1 - содержит шесть логических элементов выполняющих функцию НЕ. Условное графическое изображение микросхемы показано на рисунке 5.1.

Рисунок 5.1 – Микросхема

К155ЛН1

Микросхема типа КР1533АП6 содержит 8 двунаправленных шинных усилителей с третьим состоянием. Микросхема имеет вход переключения направления каналов и вход перехода в третье состояние E0. Условное графическое обозначение микросхемы представлено на рис.5.2.

Рис.5.2 Условное графическое обозначение микросхемы КР1533АП6.

КР155ЛЕ5 - Микросхема представляет собой четыре логических элемента 2И-НЕ.

Рисунок 5.3 Условное графическое изображение микросхемы ЛЕ5

КР1533ИД3 - представляет собой дешифратор 4-хзначного двоичного кода. При высоком уровне напряжения на входы разрешения Е выходы устанавливаются в состояние высокого уровня.

Рисунок 5.4 - Микросхема КР1533ИД3

К155ЛП5 - микросхема представляет собой 4 двухвходовых логических элемента "исключающее ИЛИ".

Рисунок 5.5 Условное графическое изображение К155ЛП5

Операционный усилитель К140УД12

Этот тип ОУ имеет следующие характеристики:

Iвх, мкА 7-50

fс, Мгц 0.3-1

Uвых, в/мкс' 0.1-0.8

Uпит, В + - (5% 15)

Iпотр., мА 0.03-0.6

Uсм, мВ 5

Кус Ц*103 50

Рис.5.6 Условное обозначение и цоколёвка операционного

усилителя К140УД12


6. Разработка графического структурного алгоритма программы

Прикладная программа, управляющая разработанным устройством, представляет собой исполняемый файл main.com. Работу устройства можно задать изначально в начале выполнения main.com, с помощью параметра D - число, заносимое в регистр RG для установки соответствующего сопротивления.

Программа должна:

1. Запросить управляющий байт.

2. Занести в указанный порт введённый байт.

3. Ожидать сигнала с шины данных, если он получен - вывести сообщение

В программе можно выделить 3 основных логических блока - занесение управляющего слова в регистр, перехват прерывания 08h, параллельное слежение за шиной данных.

Блок схема работы программы (структурный графический алгоритм) приведен в Приложении данного курсового проекта.

6.1 Разработка прикладной программы и описание её возможностей

По сложности программирования интерфейс ISA занимает среднее место между Centronics с одной стороны, и PCI и SCSI с другой. Особенностью программирования Centronics является абсолютная простота, т.к все сигналы доступны для программирования. ISA - доступность только шины данных и портов ввода-вывода, PCI - сложность программирования шины в целом.

Данная прикладная программа управляет разработанным нестандартным периферийным устройством. Это управление довольно просто, так как изначально устройство работало абсолютно автономно, и мне пришлось вводить дополнительные управляющие регистры и делать параллельные отводы от схемы, что ввело лишь небольшие усложнения в работу устройства в целом.

Программа является резидентной, т.е. находится постоянно в памяти. Загружается командой “main.com”, инициализирует устройство, и предлагает ввести байт D, где D - число, заносимое в управляющий регистр (по умолчанию оно равно 0), и выгружается “main.com u".

Находясь в памяти, программа постоянно следит за шиной данных, и если пришло сообщение о включении/выключении нагревателя, выдаёт соответствующее сообщение.

6.2 Листинг программы

comsegment segment para

org 100h

start:

main proc near

jmp first_instruction

saved_int08labeldword

old_offsdw ?

old_segdw ?

vector= (08h)

isworkingdb 0

_TCCdb 0

uninst_message db 10,13,"Uninstalling... ",'$'

message db 10,13,"Already loaded!",10,13

db "'main u' for uninstall",10,13,'$'

string db " ",'$'

input_message db “Enter number (0-7): ”,'$'

begin_message db "Wormer started",10,13,'$'

end_message db "Wormer stopped",10,13,'$'

int08_treater:

jmp gonow

db '08hook'

gonow:

push ax bx

mov bl, 0102h

in al, bl; пытаемся получить статус устройства из порта 258

and al, 10000000b

cmp al, 10000000b

je start_loop

cmp cs: isworking, 1

je end_loop

jmp leave_treater

start_loop:

mov cs: isworking, 1

push bx ax

mov bx, ds

mov ax, cs

mov ds, ax

xor ax, ax

mov ah, 09h; если нагреватель включился - выдаём сообщение об этом

lea dx, begin_message

int 21h

mov ds, ax

pop ax bx

jmp leave_treater

end_loop:

mov cs: isworking, 0

push bx ax

mov bx, ds

mov ax, cs

mov ds, ax

xor ax, ax

mov ah, 09h; если нагреватель выключен - включаем

lea dx, end_message

int 21h

mov ds, ax

pop ax bx

leave_treater: ; выход из обработчика

pop bx ax

jmp cs: saved_int08

release:

mov ah, 09h

lea dx, uninst_message

int 21h

mov ax,3508h

int 21h

mov ax,es: old_seg

mov ds,ax

mov ax,es: old_offs

mov dx,ax

mov ax,2508h

int 21h

mov ah,49h

int 21h

mov ax,4c00h

int 21h

first_instruction:

cmp byte ptr [es: 80h],1

jbe resume

mov bx, 82h

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5137
Авторов
на СтудИзбе
440
Средний доход
с одного платного файла
Обучение Подробнее