Часть3 (1028412), страница 6
Текст из файла (страница 6)
Встроенный, общий............................для восьми каналов, источник опорного12АУ8 напряжения определяет диапазон преобРг8ЦАПразования от 0 до 10,24 В.Оптронная развязка в каждом канаРис. 6. 15.ле между регистрами Рг и ЦАП гальванически развязывает объект управления и вычислительное ядро контроллера и защищаетшину Q-bus от помех с объекта.
Повторитель на операционном усилителе допускает токовую нагрузку по каждому из каналов до 20-и мА.Для преобразования по какому либо из каналов достаточно записать требуемыйдискретный код в 12 младших бит соответствующего регистра. Попробуйте самостоятельно составить фрагмент программы, в котором значение напряжения в вольтах, хранящееся в переменной AU_out типа real выдается на третий канал платы МВА. Третий регистр этой платы – аппаратная переменная с именем RG3.В. Шина ISA: основы устройства и работы, предоставляемые ресурсыПрежде все, сравним рассмотренные нами контроллеры УТК-5 и ОРИОН.
Структура контроллера ОРИОН получилась более однородной. Программировать на нем проще,быстрее обращаться к элементам объекта, здесь возможна не только программная, но иаппаратная реализация событий.Контроллер же УТК-5, несмотря на более сложную структуру, получился дешевле.Введение специальной шины микроконтроллера позволило упростить интерфейс модулей,реализующих связь с объектом управления.
Здесь на специальной шине применена простейшая географическая адресация, когда каждому регистру, реализующему связь с элементами объекта, выделена собственная линия его активации.В микроконтроллере ОРИОН для каждого модуля применен собственный, достаточно сложный контроллер общей шины, позволяющий обращаться к различным регистрам модуля. Этот контроллер включает дешифратор адреса, выделяющий из всех цикловобщей шины, циклы обращения к регистрам модуля. Дешифрация идет в полном адресном пространстве микроЭВМ, т.е.
дешифратор должен иметь шестнадцать входов и уметьвыделять на них заданные уникальные комбинации для каждого регистра.Шина Q-bus является асинхронной по умолчанию, поэтому контроллер общей шины, встретив одну из предписанных ему комбинаций на шине адресов, должен проверить,готов ли регистр к обмену и ответить ведущему микропроцессору о готовности. Толькопосле этого начинается собственно обмен, запись или чтение.Рябов Владимир Тимофеевич.
Кафедра «Электронные технологии в машиностроении»МГТУ им. Н. Э. Баумана, V_Ryabov@mail.ru17Из-за аппаратной сложности непосредственного подключения регистров связи собъектом к общей шине стоимость контроллера ОРИОН оказалась существенно дороже.Если бы цикл обращения по шине Q-bus был бы проще, а дешифрация регистров шла вболее узком пространстве памяти, преимущество ОРИОН-а было бы неоспоримо.В первых компьютерах РС, разработанных на фирме IBM в 1981 году было заложено разделение памяти ЭВМ, использовано два адресных пространства памяти. В основнойпамяти (МЕМ) размещались коды программ и данные. Именно в этой памяти шла основная работа микропроцессора.
Кроме нее была память ввода-вывода (I/O, Input/Output), обращаясь к которой можно было вести обмен с периферийными устройствами, подключенными к компьютеру. Требования к объему памяти устройств I/O было невелико.Разработчики фирмы IBM стремились всячески упростить аппаратное решение компьютера. Они применили шестнадцатиразрядный микропроцессор Intel 8088, но обмен свнешним устройствами у этого микропроцессора был восьмиразрядным. В системе командмикропроцессора были предусмотрены команды обмена с основной памятью с различнымиметодами адресации. Эта память была разбита на 16 страниц (сегментов) по 64 КБ каждый.Управление циклом на шине велось линиями MEMR (чтение из памяти) и MEMW (запись впамять).Для обмена с памятью ввода-вывода была использована только прямая адресация впределах 64 КБ и предусмотрены две команды: записать в порт с заданным адресом и считать из порта с заданным адресом.
Управление циклом на шине велось линиями IOR (чтениеиз памяти ввода-вывода) и IOW (запись в память ввода-вывода).По циклам чтения или записи с памятью ввода-вывода и основной памятью шина былаасинхронной по требованию. Адресуемое устройство могло удлинить цикл обмена, установивнизкий уровень на линию I/O CH RDY (готовность канала ввода-вывода) в момент активизации сигналов управления памятью IOR или IOW . В этом случае сигналы управления памятью задерживались до появления высокого уровня на линии I/O CH RDY.
Если сигнал задержки не снимался более 10-и тактов, возникало системное прерывание «Авария шины"Векторная система прерываний микропроцессора в компьютере была заменена наавтовекторную. Специальный контроллер прерываний имел 8 входов IRQ (запросов прерывания). С каждым входом был связан восьмиразрядный регистр, в котором хранилсявектор прерывания. Содержимое этих регистров могло быть изменено программно, ониимели свои адреса в пространстве ввода-вывода. Получив запрос IRQ по какой либо линии, контроллер прерываний отправлял его микропроцессору. По сигналу подтвержденияпрерывания от микропроцессора INTE , контроллер прерываний выставлял на шину данных содержимое восьмиразрядного регистра, соответствующего этой линии, т.е.
векторпрерывания.Для обмена с дисковыми накопителями и адаптером видеомонитора был использован режим прямого доступа к памяти, когда внешнее устройство, выставив запрос на прямой доступ и получив подтверждение от микропроцессора, становилось ведущим на шинеи могло производить чтение и запись. Реализовал этот режим контроллер прямого доступа, в регистры которого предварительно следовало записать начальные адреса памяти источника и приемника и длину блока. Контроллер автоматически реализовал предписанную операцию, последовательно выставляя все требуемые адреса и сигналы чтения илизаписи, и освобождал шину.
Обмен при этом велся быстрее, чем в программном режиме,поскольку не нужно было в каждом цикле считывать код команды, а читались и переписывались только данные. В первоначальном варианте персонального компьютера былопредусмотрено 4 канала прямого доступа.Сначала шина, примененная в РС, была восьмиразрядной, объем основной памятисоставлял 1 МБ, памяти I/O – всего 1 КБ.
Хотя микропроцессор мог адресовать 64 КБ памяти I/O, фактически дешифрация на материнской плате и платах ввода вывода велась подесяти младшим разрядам и адреса, например 222316 и 662316 не различались.Рябов Владимир Тимофеевич. Кафедра «Электронные технологии в машиностроении»МГТУ им.
Н. Э. Баумана, V_Ryabov@mail.ru18Буквально через год в персональном компьютере фирмы IBM был применен ужеполностью шестнадцатиразрядный микропроцессор Intel 8086. Шина была расширена и, кпервоначальному разъему на 64 вывода, был добавлен еще один на 32. Обмен данными пошине стал восьми или шестнадцати разрядным. Основная память стала адресоваться 24-мялиниями, ее непосредственно адресуемый объем составил 16 МБ. Дешифрация памятиввода-вывода была оставлена, как и ранее, по десяти линиям.Фирма IBM, выпустив свои персональные компьютеры на рынок, опубликоваласпецификацию шины и протоколы обмена по ней.
В основе конструкции лежала материнская плата с дополнительными разъемами шины, позволяющими подключать различныепериферийные устройства: адаптеры мониторов, дисковых накопителей и накопителей намагнитной ленте, принтеров, последовательных каналов и т.п.Компьютеры имели коммерческий успех и многие фирмы в США и за рубежомстали производить для них платы расширения, а потом и сами компьютеры, поскольку архитектура компьютеров была открытой и не была запатентована. Так и появилась шинаISA (Industrial Standard Architecture), ставшая стандартом де-факто. Это явление уникально и не нашло еще должного отражения в художественной литературе, хотя во многомопределило технический прогресс и историю человечества на всей планете.Шина не была очень уж удачной, по крайней мере, была слишком медленной дляустройств, которым требовался быстрый обмен большими массивами информации.
Голубойгигант - фирма IBM попробовала сама подчинить себе и победить свое детище. Она выпустила компьютеры PS-2 с лучшей шиной MCA (Micro Channel Architecture), конструкция ипротоколы обмена по которой были запатентованы. Фирма понесла огромные убытки, но«демократичная», пусть и худшая ISA, дала сто очков вперед монополисту «МС». Ктонибудь из Вас работал на PS-2? А про умение работать на компьютерах клона РС молодыхлюдей сейчас как-то не удобно спрашивать.
Это практически эквивалентно вопросу: а грамотны ли Вы?Конструктив разъема этой шины на плате расширения представлен на рис. 6.16.Вид со стороны элементовC18C1 A31A1Вид со стороны проводниковВ1В31 D1D18Рис. 6.16. Внешний вид разъема шины ISA на плате расширения.Посмотрим на шину ISA глазами разработчика программного обеспечения контроллера. Для программирования процессов управления технологическим оборудованиемона предоставляет нам в распоряжение четыре вида ресурсов:− собственно память объемом в 16 МБ;− память пространства ввода-вывода объемом в 1 КБ;− пятнадцать линий автовекторных прерываний, приоритетный порядок которых впорядке убывания составляет IRQ 0, 1, 2, 8, 9, 10, 11, 12, 13, 14, 15, 3, 4, 5, 6, 7;− восемь линий прямого доступа в память.Объем памяти ввода-вывода весьма ограничен, и часть ее жестко занята неотъемлемыми элементами компьютера, которые понадобятся нам в составе вычислительногоядра (см.
рис. 6.1). Это элементы человеко-машинного интерфейса (монитор, клавиатура,мышь), последовательные каналы (com1, com2), возможно, сетевой адаптер. Мы, естественно, будем стремиться использовать существующие аппаратные средства и программРябов Владимир Тимофеевич. Кафедра «Электронные технологии в машиностроении»МГТУ им. Н. Э. Баумана, V_Ryabov@mail.ru19ные утилиты для управления этими устройствами, поэтому должны будем оставить неизменными адреса регистров управления и данных для этих устройств, не занимать используемые ими линии прерываний и линии прямого доступа в память.Первоочередной задачей разработчика при комплектации микроконтроллера архитектуры РС – выбор ресурсов, которые можно использовать в устройстве связи с объектом:− свободных зон в пространстве ввода-вывода;− свободных линий прерываний;− свободных каналов прямого доступа в память.Вопросы к экзамену1.