Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4К.2С.ЗФО-ИСТ / Схемотехника ЭВМ / Схемотехника ЭВМ ч.2.doc
Скачиваний:
488
Добавлен:
10.04.2015
Размер:
18.35 Mб
Скачать

4.3 Приоритетный шифратор.

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

Пусть имеется система, содержащая процессор и ряд внешних устройств ВУ0 – ВУN-1 cкоторыми ему требуется осуществлять обмен информацией. Данные при обмене передаются по общей шине, но работа с каждым конкретным устройством имеет свои особенности. В качестве внешних устройств в персональном компьютере могут выступать клавиатура, монитор, модем и т. п.

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

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

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

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

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

Однако в последних двух случаях возникает проблема, когда сигналы запроса приходят от нескольких устройств одновременно. Логически эта задача неразрешима, так как если устройства равнозначны, то выбрать одно из них невозможно.

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

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

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

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

Гарантий, что полученная форма представления окажется минимальной не будет, но ее можно использовать как основу для дальнейшей модификации.

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

Так, если нулевой сигнал поступал на вход (при этом независимо от сигналов на входахформировался выходной код 100,), а затем появился нулевой уровень на входе, то в соответствии с таблицей, будет формироваться код 001, соответствующий номеру линии, по которой пришел сигнал запроса.

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

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

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

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

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

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

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

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

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

Причина этого объясняется структурой выражений, описывающих функции и.

Они задают последовательное выполнение действий над входными переменными. Для функциивсе четыре аргумента обрабатываются одновременно (параллельно), а так как задержка логического элемента практически не зависит от числа его входов, то значение функции сформируется через. Однако, используя законы алгебры логики,можно представить и в таком виде. Здесь задержка ее формирования окажется равной.

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

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

Аналогичные преобразования можно провести и для

Исходя из полученных выражений структура шифратора приоритетов будет иметь вид, представленный на стр. 71. Максимальные задержки формирования выходных сигналов в таком устройстве уменьшатся до.

В реальных шифраторах, реализованных в микросхемах К155ИВ1 (шифратор 8→3) и К555ИВ3 (шифратор 10→4), имеются дополнительные входы расширения, позволяющие наращивать разрядность обрабатываемых сигналов путем соответствующего объединения функционально законченных устройств.

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

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