Базовые средства микропроцессорной техники

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

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

В сложных случаях микропроцессорные средства объединяются в универсальную микро-ЭВМ, имеющую сложные аппаратные уст­ройства и развитое программное обеспечение.

Примером может служить измерительно-вычислительная систе­ма (ИВС) на основе "Pentium", оснащённая платой АЦП. При объёме ОЗУ в 32 мегабайт, жёстком диске до одного гигабайта и тактовой частоте 200 мегагерц, такая ИВС может удовлетворить большинству современных требований. Аналогично применяется портативная вы­числительная система на основе "Notebook" с такими же вычисли­тельными возможностями. Для программирования задач обработки измерительной инфор­мации используется ассемблер и языки высокого уровня, например, C/C++ со всеми известными на данный момент программными нара­ботками.

Высокая степень интеграции во всех случаях позволяет выпол­нять микропроцессорные средства компактными, гибкими в настрой­ке и надёжными в эксплуатации. На рис. 13.1. приведена обобщён­ная структура аппаратной части микропроцессора семейства 8086...80486. Отличительная особенность архитектуры микропроцес­сора характеризуется рядом структурных и схемотехнических реше­ний, среди которых, прежде всего нужно выделить следующие:

1 - микропроцессор имеет развитую регистровую структуру, что дает возможность снизить количество обращений к памяти;

2 - использование конвейерного принципа выполнения команд с предварительной выборкой обеспечивает максимальную пропускную способность канала;

3 - распределённое аппаратно-микропрограммное устройство управления позволяет совмещать операции выборки команд с ариф­метико-логическими операциями;

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

Рисунок 13.1 - Аппаратная часть микропроцессора

Микропроцессоры, стоящие на разных уровнях этого ряда отли­чаются друг от друга только разрядностью и методами технологиче­ских реализаций. В микропроцессорах этого ряда ЦПЭ разделён на два специализированных процессорных устройства: устройство обмена (УО) и устройство сопряжения с каналом (УСК). Это позволило совместить в командах следующие этапы:

1 - извлечение кодов и операторов команд из памяти;

2 - выполнение команд в операционном блоке;

3 - запись результата в регистры общего назначения или во внеш­нюю память микроЭВМ или выдача во внешние устройства.

Таблица 13.1 - Обозначение выводов микропроцессора

Устройство обмена включает в себя 64, 32 (или 16 в зависимости от уровня в ряду) - разрядное арифметико-логическое устройство (АЛУ) с регистром признаков, восемь 64, 32 или 16 - разрядных реги­стров общего назначения (РОН) и микропрограммное устройство управления. Устройство сопряжения с каналом состоит из конвейера команд, представляющего собой очередь из шести регистров команд, регистра обмена и сумматора для вычисления адреса. Между собой УО и УСК соединены шиной данных и шиной команд. Координация и управление блоками ЦПЭ осуществляется общим блоком управле­ния и синхронизации.

Устройство обработки предназначено для осуществления ариф­метико-логических операций с данными: сложения и вычитания, ум­ножения и деления, инверсии, конъюнкции, дизъюнкции и тестиро­вания операнда. Арифметические операции производятся с четырьмя различными типами представления чисел: двоичными числами со знаком и без знака, упакованными и неупакованными форматами чи­сел со знаком и без знака. Произведение и делимое представляются числами двойной длины.

Команды по запросам от УО выбираются из памяти и записы­ваются в регистры конвейера команд УСК. Очередь команд из кон­вейера поступает по внутренней магистрали команд на вход микро­программного устройства управления УО, где они декодируются, и вырабатывается последовательность микрокоманд, управляющая вы­полнением операций в соответствии с кодом команды. УО не имеет непосредственной связи с внешней магистралью вычислительной системы и обменивается данными посредством регистра обмена УСК.

Устройство сопряжения с каналом выполняет функции, связан­ные с формированием физического адреса памяти, выборку из памяти команд и операндов, формирование очереди в конвейере команд и за­поминание в памяти результатов выполнения команд. После освобо­ждения двух регистров конвейера УСК заполняет их следующими командами. Состояние конвейера команд индицируется специальны­ми сигналами, выдаваемыми на внешние выводы СКО и СК1.

Однопроцессорный (минимальный) режим ЦПЭ обеспечивается посредством соединения вывода "Режим" с выводом +Unиm, а много­процессорная конфигурация (максимальная) - посредством соедине­ния этого вывода с "землёй". В минимачьном и максимальном режи­мах управления внешние выводы ЦПЭ несут различные функции, от­меченные в таблице 13.1.

С точки зрения программиста микропроцессор может быть пред­ставлен следующей совокупностью адресуемых регистров (рис. 13.2). Все программно-доступные регистры микропроцессора можно разде­лить на три группы.

Рисунок 13.2 - Регистры микропроцессора.

К первой группе относятся регистры, предназначенные для вре­менного хранения данных: 16-разрядный регистр - аккумулятор АХ, 16-разрядный регистр базы ВХ, 16-разрядный регистр-счётчик СХ и 16-разрядный регистр данных DX. Эти регистры допускают раздельную адресацию старших АН, ВН, СН, DH и младших AL, BL, CL, DL 8-разрядных регистров. Двойственный характер этих регистров обес­печивает простую обработку 8- и 16-разрядных данных. Все эти реги­стры могут одинаково использоваться при арифметико-логической обработке данных. Но имеется значительное число команд, которые специализируют регистры данных, что отражено в аббревиатуре их названий. Например, регистр АХ выполняет функции аккумулятора, он является источником и получателем в операциях ввода-вывода, с ним связаны операции преобразования, десятичной коррекции, ум­ножения и деления. Регистр ВХ в некоторых командах участвует как регистр базового адреса.

Регистр СХ используется как счётчик в операциях с цепочками байт и слов, в операциях сдвигов и командах зацикливания. Наконец, регистр косвенной адресации для указания адресов портов ввода-вывода.

DX может неявно адресоваться в операциях умножения и деле­ния, а также используется в режиме хранения информации.

Ко второй группе относятся регистры SI и DI и указатели SP и ВР, предназначенные для извлечения информации из сегментов па­мяти. Содержимое этих регистров задаёт смещения в сегментах при определении логических адресов. Это позволяет компактно писать программы каждый раз непосредственно, не приводя используемого адреса. Обычно в индексных регистрах записывается адресное сме­щение по отношению к сегменту данных, а в указателях - адресное смещение по отношению к стековому сегменту.

Несмотря на то, что регистры специализированы и каждый имеет своё мнемоническое обозначение, они могут участвовать в арифме­тико-логических операциях как регистры общего назначения, что придаёт гибкость при программировании

К третьей группе относятся сегментные регистры: 16-разрядный регистр начального адреса сегмента кода CS, 16-разрядный регистр начального адреса сегмента данных DS, 16-разрядный регистр на­чального адреса сегмента стека SS и 16-разрядный регистр начально­го адреса дополнительного сегмента ES.

Коды команд извлекаются из сегмента текущего кода с исполь­зованием смещения, задаваемого 16-разрядным регистром адреса ко­манд IP, а операнды команд обычно извлекаются путём записи спе­циального однобайтного префикса перед командой. Префикс позво­ляет отличать операнд от кода команды.

Микропроцессор имеет 16-разрядный регистр признаков, девять разрядов которого задействованы для флагов состояний, а остальные семь не используются, т.е. заполнены постоянными нулями или еди­ницами. По функциональным признакам флаги состояний можно раз­делить на две категории: флаги, характеризующие результат, и флаги, предназначаемые для управления режимами ЦПЭ. Выполнение ка­кой-либо операции в ЦПЭ может ставиться в зависимость от резуль­тата выполнения предыдущей операции. При этом флаги признаков результата могут быть установлены в нуль или единицу и содержать сведения об информации, обмениваемой между АЛУ и аккумулято­ром.

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

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

Разновидностью признака переноса является признак вспомога­тельного переноса, изображаемый флагом AF . Этот флаг участвует при работе с числами, кодированными в двоично-десятичном коде. Независимо от причин, порождающих перенос из третьего разряда в четвёртый в каждой тетради чисел, участвующих в арифметических операциях, возникновение этого переноса говорит о необходимости применения десятичной коррекции.

Признак нуля отмечает случай появления в АЛУ после выпол­нения какой-либо операции нулевого результата и изображается фла­гом ZF. Признак нуля используется для программной реализации счётчиков циклов, а также для сравнения двух чисел на равенство.

Признак знака необходим для различения положительных и от­рицательных чисел и изображается флагом SF. Старший знак любого числа всегда несёт информацию о знаке: 0 - положительное число, 1 -отрицательное. При наличии единицы во флаге SF числа автоматиче­ски преобразуются в дополнительный код. Значение флага SF участ­вует в арифметических операциях наравне со значащими разрядами чисел.

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

Признак чётного паритета изображается флагом PF и применя­ется для выявления одиночных ошибок при передаче информации между блоками микро-ЭВМ. Флаг устанавливается равным единице, если в результате операции общее число единиц является чётным. При нечётном числе единиц в результате в сопровождающем кон­трольном бите устанавливается единица, так что при контроле пере­даваемый результат всегда является чётным. В случае нарушения чётности передаваемой информации вычисление длины автоматиче­ски прекращается. Сигналом для этого является нулевое значение во флаге PF.

Флаг DF определяет направление сканирования массива в опе­рациях цепочками, а флаг IF выполняет функцию маскирования внешних прерываний. Прерывания воспринимаются между команда­ми, причём запросы по входу маскируемых прерываний "мзпр" вос­принимаются только при условии, что флаг IF имеет единичное зна­чение.

Флаг TF применяется для организации пошагового выполнения команд программ при их отладке. При установке флага TF=l микро­процессор сразу после выполнения любой текущей команды автома­тически формирует прерывания. Следующая команда выполняется подачей сигнала на вход готовности.

Система команд микропроцессора классифицирована в традици­онные для микропроцессоров группы по функциональным призна­кам: команды пересылок, арифметические команды, команды пораз­рядной обработки данных, строковые команды, команды передачи управления и команды управления микропроцессором. Система ко­манд разработана с учётом опыта программирования микропроцессо­ров предыдущих серий, она позволяет повысить производительность, сократить трудоёмкость программирования, обеспечить проектиро­вание измерительно-вычислительных систем.








Дата добавления: 2015-04-21; просмотров: 1375;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.01 сек.