Устройство для сравнения двоичных чисел
BINARY CODE COMPARATOR DEVICE

Изобретение относится к области цифровой вычислительной техники и автоматики и может быть использовано для анализа и сложения двоичных кодов в блоках и устройствах ЭВМ.
Известны способы и устройства сравнения и сложения двоичных кодов, заключающиеся в последовательном выполнении элементарных операций приема и сравнения кодов чисел в схемах, содержащие триггерные регистры, элементы СЛОЖЕНИЕ ПО MOD2, элементы формирования переноса в каждом разряде.
Способы и устройство сравнения и суммирования двоичных кодов детально рассмотрены в кн.: Карцев М.А. «Арифметика цифровых машин». М.: изд-во «Наука», 1969 г., с. 247-252, рис. 2.45 и Дроздов Е.А. и др. «Электронные вычислительные машины Единой системы». М.: изд-во «Машиностроение», 1981 г., с. 76-80. При увеличений разрядности сложность этих схем сравнения быстро растет и существенно снижается их надежность. Поэтому для сравнения многоразрядных чисел используют следующий алгоритм. Сначала сравнивают значения старших разрядов: если они различны, то эти разряды и определяют результаты сравнения; если же они равны, то необходимо сравнивать следующие за ними последующие младшие разряды и т.д.
Общим недостатком известных устройств является необходимость использования трех регистров, выполненных на основе RS-триггеров, и затрат не менее четырех-пяти временных тактов для выполнения операции сравнения. Это определяет малое быстродействие работы и большие затраты оборудования для построения устройства.
Наиболее близким, принятым за прототип, является устройство [1], содержащее четыре элемента СЛОЖЕНИЕ ПО MOD2, четыре замыкающих ключа и четыре размыкающих ключа.
Недостатком прототипа является ограниченность разрядности сравниваемых кодов и низкое быстродействие, зависящее от разрядности сравниваемых кодов.
Задача изобретения - создать устройство, обеспечивающее расширение функциональных возможностей за счет обработки n-разрядных кодов для сравнения и повышение среднего быстродействия устройства.
i
i
i
i
i
i
i
1
1
1
2
2
i
i
i
i
i
i
i
i
i
i
i
Это решение достигается тем, что в устройство, содержащее первую группу элементов И 2 (i=1…n, где n - разрядность сравниваемых двоичных кодов чисел А и В), группу 3 (i=1…n) элементов СЛОЖЕНИЕ ПО MOD2, первый и второй входы i-го элемента (i=1…n) СЛОЖЕНИЕ ПО MOD2 соединены соответственно с 13 (i=1…n) и 14 (i=1…n) входами устройства, вход 13 (i=1…n) подсоединен к первому входу элемента И 2 (i=1…n), отличающееся тем, что в него дополнительно введены второй элемент И 1, третий элемент И 5, группа четвертых элементов И 4 (i=1…n), первый элемент ИЛИ 6, пятый элемент И 7, второй элемент ИЛИ 8, первый триггер 9, второй триггер 10, третий триггер 11, третий элемент ИЛИ 12, вход 15 устройства подсоединен к первому входу второго элемента И 1, второй вход которого подсоединен к инверсному выходу третьего элемента ИЛИ 12, а выход - к первому входу третьего элемента И 5, к управляющим входам первой группы элементов И 2 и к первому входу четвертой группы элементов И 4, второй вход третьего элемента И 5 подсоединен к выходу элемента 3 СЛОЖЕНИЕ ПО MOD2, а выход - к управляющим входам первой группы элементов И 2 и к первому входу четвертой группы элементов И 4, входы устройства 13 (i=1…n) подсоединены к инверсным входам четвертой группы элементов И 4, входы устройства 14 (i=1…n) подсоединены к инверсным входам первой группы элементов И 2, выходы i-го элемента (i=2…n) СЛОЖЕНИЕ ПО MOD2 3 подсоединены к одноименным входам пятого элемента И 7, к управляющим входам первой группы элементов И 2 (i=2…n) и четвертой группы элементов И 4, вторые входы четвертой группы элементов И 4 (i=2…n) подсоединены к входам устройства 14 (i=1…n), выходы четвертой группы элементов И 4 подсоединены к одноименным входам второго элемента ИЛИ 8, выход которого подсоединен к входу третьего триггера 11, выход которого является выходом 19 устройства и подсоединен к первому входу третьего элемента ИЛИ 12, выход пятого элемента И 5 подсоединен к первому входу пятого элемента И 7, выход которого подсоединен к входу второго триггера 10, выход которого является выходом 18 устройства и подсоединен к второму входу третьего элемента ИЛИ 12, выходы первой группы элементов И 2 (i=1…n) подсоединены к одноименным входам первого элемента ИЛИ 6, выход которого подсоединен к входу первого триггера 9, выход которого является выходом 17 устройства и подсоединен к третьему входу третьего элемента ИЛИ 12, прямой выход которого является выходом 16 окончания работы устройства.
Проведенный поиск в известной научно-технической литературе не выявил наличие подобных технических решений.
1
n
1
n
1
n
1
n
1
n
Сущность изобретения поясняется чертежом (фиг. 1), где представлены элемент И 1, группа элементов И 2 … И 2, группа элементов СЛОЖЕНИЕ ПО MOD2 3…3, группа элементов И 4 … И 4, элемент И 5, элемент ИЛИ 6, элемент И 7, элемент ИЛИ 8, триггер 9, триггер 10, триггер 11, элемент ИЛИ 12, входы 13…13, входы 14…14, вход 15, выход 16, выход 17, выход 18, выход 19.
1
n
1
1
n
1
1
n
В исходном состоянии на входы 13…13 подается двоичный код числа А (на a поступает старший разряд), а на входы 14…14 подается двоичный код числа В (на b поступает старший разряд). В случае равенства кодов (А=В) на выходах элементов СЛОЖЕНИЕ ПО MOD2 3…3 будет единичный сигнал, который, кроме первого, подается на одноименный вход элемента И 7. Триггеры 9, 10 и 11 находятся в нулевом состоянии.
1
n
1
Работа предлагаемого устройства осуществляется следующим образом. На его пусковой вход 15 подается единичный сигнал, после чего в случае равенства кодов (если А=В) на инверсных выходах элементов СЛОЖЕНИЕ ПО MOD2 3…3 будет единичный сигнал, который, кроме первого, подается на одноименный вход элемента И 7, а с выхода элемента СЛОЖЕНИЕ ПО MOD2 3 единичный сигнал через открытый элемент И 5 подается на одноименный вход элемента И 7.
1
1
1
1
1
1
1
1
В случае неравенства кодов (если a>b) на первом входе элемента И 2 будет единичный сигнал (так как a=1), на втором (управляющем) входе элемента И 2 будет единичный пусковой сигнал с выхода элемента И 1, на третьем инверсном входе элемента И 2 будет нулевой сигнал, так как b=0. Поэтому на выходе элемента И 2 будет единичный сигнал, который через элемент ИЛИ 6 устанавливает в единичное состояние триггер 9. Единичный сигнал на выходе триггера 9 поступает на выход 17 устройства и на одноименный вход элемента ИЛИ 12, с инверсного выхода которого нулевой сигнал закрывает элемент И 1. С прямого выхода элемента ИЛИ 12 единичный сигнал поступает на выход 16 - конец работы устройства.
1
1
1
1
1
1
1
1
Аналогично в случае неравенства кодов (если a<b) на первом инверсном входе элемента И 4 будет нулевой сигнал (a=0), на втором (управляющем) входе элемента И 4 будет единичный пусковой сигнал с выхода элемента И 1, на третьем входе элемента И 4 будет единичный сигнал, так как b=1. Поэтому на выходе элемента И 4 будет единичный сигнал, который через элемент ИЛИ 8 устанавливает в единичное состояние триггер 11. Единичный сигнал на выходе триггера 11 поступает на выход 19 устройства и на одноименный вход элемента ИЛИ 12, с инверсного выхода которого нулевой сигнал закрывает элемент И 1. С прямого выхода элемента ИЛИ единичный сигнал поступает на выход 16 - конец работы устройства.
1
1
2
2
1
В случае равенства a=b на выходе элемента И 5 будет единичный сигнал, который подается на одноименный вход элемента И 7 и на управляющие входы элемента И 2 и элемента И 4, после чего сравнение очередных двух младших разрядов чисел А и В будет продолжаться аналогично. При этом с выхода элемента 3 единичный сигнал через открытый элемент И 5 подается на одноименный вход элемента И 7.
Единичный сигнал на выходе элемента И 7 устанавливает в единичное состояние триггер 10. Единичный сигнал на выходе триггера 10 поступает на выход 18 устройства и на одноименный вход элемента ИЛИ 12, с инверсного выхода которого нулевой сигнал закрывает элемент И 1. С прямого выхода элемента ИЛИ единичный сигнал поступает на выход 16 - конец работы устройства.
зад
зад
Таким образом, минимальное время Т работы устройства равно времени задержки сигнала элементами И1, И 2, ИЛИ 6 и триггером 9, а среднее время составляет (Т*n)/2, где n - разрядность сравниваемых кодов.
Результатом работы устройства являются единичные сигналы на выходах 17 - (если А>В), 18 - (если А=В), 19 - (если А<В) и 16 - конец работы устройства.
Использованные источники
1. SU N 2504825, кл. G06F 7/02.