Компаратором (устройством сравнения) называют функциональный узел, обеспечивающий сравнение двух n -разрядных двоичных числа А и В.
Функции, вырабатываемые компараторами, определяются следующим образом: они принимают единичное значение (истинны), если соблюдается условие, указанное в индексе обозначения функции. Например, функция, если и принимает нулевое значение при. Основными отношениями считаются два – «равно» и «больше». Остальные отношения выражаются через них следующим образом:
Компараторы строятся на основе поразрядных операций над одноименными разрядами обоих слов. Слова равны, если попарно равны все одноименные их разряды, т. е. если в обоих нули или единицы. Признак (условие) равенства i -х разрядов сравниваемых слов А и В формируется следующим образом:
Условие неравенства i -x разрядов:
Признак равенства слов.
Схемная реализация приведенных условий изображена на рис. 26, а, схема n -разрядного компаратора на равенство показана на рис. 26, б.
Построение компаратора на «больше» для одноразрядных слов (табл. 3) требует реализации функции.
|
|
Функцию для многоразрядных слов проще всего получить на основе рассуждений. Пусть нужно сравнить двухразрядные слова. Если старшие разряды и не равны, то результат известен независимо от младших разрядов: при и имеем, а при и имеем. Если же, результат еще неизвестен, и требуется анализ следующего разряда по тому же алгоритму. Поэтому для двухразрядных слов можно записать.
Рис. 26
Таблица 3
a | b | |
Подобный же подход справедлив и для слов любой разрядности: к анализу следующего разряда нужно переходить только при равенстве предыдущих. Таким образом, для общего случая n -разрядных слов имеем
Однако при этом цель минимизации не ставилась и на самом деле выражения для не минимальны. Однако для построения компаратора с тремя выходами «равно», «больше» и «меньше» (в сериях цифровых элементов обычно имеются компараторы с тремя выходами) полученный вариант остается предпочтительным, поскольку функции, все равно нужны для сравнения на «равно», и для операций сравнения на «больше» они могут быть взяты в готовом виде.
Компараторы для слов большой разрядности получают наращиванием размерности путем использования нескольких компараторов. Принцип наращивания показан на рис. 27 на примере реализации компаратора с тремя выходами для двухразрядных слов. Выработка признака в этой схеме производится по соотношению
где штрихом отмечены функции с выходов младшей группы.
Рис. 27