Компараторы

Компаратором (устройством сравнения) называют функциональный узел, обеспечивающий сравнение двух n-разрядных двоичных числа А и В.

Функции, вырабатываемые компараторами, определяются следующим образом: они принимают единичное значение (истинны), если соблюдается условие, указанное в индексе обозначения функции. Например, функция , если и принимает нулевое значение при . Основными отношениями считаются два – «равно» и «больше». Остальные отношения выражаются через них следующим образом:

 

Компараторы строятся на основе поразрядных операций над одноименными разрядами обоих слов. Слова равны, если попарно равны все одноименные их разряды, т. е. если в обоих нули или единицы. Признак (условие) равенства i-х разрядов сравниваемых слов А и В формируется следующим образом:

 

Условие неравенства i-x разрядов:

 

Признак равенства слов .

Схемная реализация приведенных условий изображена на рис. 26, а, схема n-разрядного компаратора на равенство показана на рис. 26, б.

Построение компаратора на «больше» для одноразрядных слов (табл. 3) требует реализации функции .

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

 

Рис. 26

 

Таблица 3

a b  

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

 

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

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

 

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

 

Рис. 27