КОМПАРАТОР ДВОИЧНЫХ ЧИСЕЛ В ПОСЛЕДОВАТЕЛЬНОМ КОДЕ

Полезная модель относится к электронике и предназначена для использования в счетных и управляющих устройствах, в первую очередь выполняемых на микросхемах малой степени интеграции.
Микросхемы малой степени интеграции остаются актуальными, так как их продолжают применять в специализированных устройствах локальной обработки сигналов на периферии сложных систем.
Главным критерием выбора решений для реализации на интегральных микросхемах малой степени интеграции является наличие микросхем требуемого функционального назначения.
С этой точки зрения хорошо подходит компаратор двоичных чисел, описанный в патенте РФ на полезную модель №189024 МПК G06F 7/02, H03K 5/22, G05B 1/03, опубликованном 06 мая 2019 г. [1]. В нем используются одни только элементы 2ИЛИ-НЕ, представленные в большинстве широко применяемых серий логических микросхем. Вместе с тем, большое значение также имеет возможность сокращения количества микросхем, но в этом устройстве, работающем по параллельному принципу, их довольно много.
В таком смысле предпочтителен последовательный алгоритм, по которому, например, работает компаратор двоичных чисел, описанный в патенте РФ №2757832 МПК G06F 7/02, опубликованном 21 октября 2021 г. [2]. По своей технической сущности он наиболее близок патентуемой полезной модели.
Данное устройство содержит всего семь широкодоступных логических элементов: элемент 2И, элемент 2ИЛИ, инвертор, два мажоритарных элемента и два элемента задержки. Однако, все они с большим избытком входят в состав разных микросхем, что приводит к увеличению требуемого числа микросхем при неполном их использовании.
Устройство-аналог выполняет сравнение двоичных чисел в последовательном коде, поступающем младшим разрядом вперед. В некоторых случаях применения более рационально начинать проверку со старших разрядов, так как это часто позволяет определить отношение чисел до завершения полного сравнения.
Важной особенностью микросхем малой степени интеграции, которую необходимо учитывать при разработке содержащих их устройств, являются большие задержки прохождения сигналов от входов до выходов. Это обусловлено наличием в составе микросхем, даже с самыми простыми логическими функциями мощных выходных каскадов, обеспечивающих распространение сигналов во внешних цепях, создающих существенные как токовые, так и емкостные нагрузки. И это еще усугубляет негативные явления, вызываемые различием задержек в параллельных цепях.
В устройстве-аналоге элементы 2И и 2ИЛИ принимают сигналы сравниваемых разрядов на первые входы через инвертор, а на вторые - прямо со входов устройства. Одновременное переключение входных сигналов с высокого уровня в низкий, которое не должно изменить единичное состояние элемента 2ИЛИ, вызывает на его выходе отрицательный импульс помехи. В случае параллельного переключения входных сигналов из нуля в единицу положительный импульс помехи возникает на выходе остающегося в нулевом логическом состоянии элемента 2И. Импульсы помехи проникают на выходы компаратора.
Этот недостаток проявляется в еще большей степени, когда логические уровни входных сигналов изменяются с некоторой разницей по времени, тогда помехи могут настолько увеличиться по длительности, что вызовут ложное срабатывание устройства.
Технический результат полезной модели заключается в упрощении устройства в случае его реализации на микросхемах малой степени интеграции за счет уменьшения числа видов используемых логических элементов, а также в реализации функции стробирования входных сигналов и возможности сравнения чисел, поступающих старшим разрядом вперед.
Технический результат достигается тем, что в компараторе двоичных чисел в последовательном коде, содержащем первый и второй элементы, первые входы которых соединены с выходом третьего элемента, второй вход первого и первый вход третьего элементов соответственно подключены ко входам разрядов первого и второго сравниваемых чисел А и В, четвертый и пятый элементы, первые входы которых соответственно соединены с выходами первого и второго элементов, дополнительно введены шестой и седьмой элементы, все элементы устройства выполняют логическую функцию ИЛИ-НЕ, вторые входы второго и третьего элементов соответственно подключены ко входам разрядов второго и первого сравниваемых чисел В и А, выходы шестого и седьмого элементов соответственно соединены со вторыми входами четвертого и пятого элементов и являются первым и вторым выходами устройства для сигнала превышения первого числа вторым А<В и сигнала превышения первым числом второго А>В, а выходы четвертого и пятого элементов соответственно подключены к первым входам шестого и седьмого элементов, вторые входы которых соответственно соединены с выходами второго и первого элементов, если сравниваемые числа поступают младшим разрядом вперед, или - со вторым и первым выходами устройства, если разряды сравниваемых чисел следуют, начиная со старшего, третьи входы первого и второго элементов соединены и являются входом устройства для сигнала стробирования входных данных, а третьи входы шестого и седьмого элементов соединены и являются входом устройства для сигнала сброса результатов сравнения.
Указанное выполнение устройства позволяет использовать в нем логические элементы только двух видов - 2ИЛИ-НЕ и 3ИЛИ-НЕ.
Отличительными признаками полезной модели являются виды и наличие дополнительных элементов, а также их электрические связи.
Полезную модель поясняют чертежи. Фиг. 1 и 3 представляют электрические схемы компаратора двоичных чисел в двух вариантах выполнения, когда сравниваемые числа поступают соответственно младшим и старшим разрядом вперед, соответствующие временные диаграммы работы устройства приведены на фиг. 2 и 4.
i
Компаратор двоичных чисел в последовательном коде содержит с первого по седьмой логические элементы 1, … 7 ИЛИ-НЕ. Первые входы элементов 1 и 2 соединены с выходом элемента 3, первый вход которого вместе со вторым входом элемента 2 подключены ко входу разряда b второго из сравниваемых чисел В. Вторые входы элементов 1 и 3 подключены ко входу разряда а, первого из сравниваемых чисел А. Выходы элементов 6 и 7 соответственно соединены со вторыми входами элементов 4 и 5, а также являются первым и вторым выходами устройства для сигнала превышения первого числа вторым А<В и сигнала превышения первым числом второго А>В. Выходы элементов 4 и 5 соответственно подключены к первым входам элементов 6 и 7, вторые входы которых соответственно соединены с выходами элементов 2 и 1, если сравниваемые числа поступают младшим разрядом вперед, как на фиг. 1, или - со вторым и первым выходами устройства (фиг. 3), если разряды сравниваемых чисел следуют, начиная со старшего. Третьи входы элементов 1 и 2 соединены и являются входом устройства для сигнала стробирования входных данных -  а третьи входы элементов 6 и 7 соединены и являются входом устройства для сигнала сброса результатов сравнения - Сброс.
Устройство может быть дополнено элементом 8 2ИЛИ-НЕ, входы которого соединены с первым и вторым выходами сигналов А<В и А>В устройства, а его выход являются третьим выходом устройства для сигнала равенства сравниваемых чисел А=В.
Устройство работает следующим образом.
i
i
Сравнение пар разрядов a и b одного порядка i чисел А и В поясняет следующая таблица.
i
i
i
i
i
i
i
i
i
i
i
i
i
i
Из таблицы видно, что признаком истинности неравенства a<bявляется единичное значение конъюнкции  а неравенства a>b - Инверсные им логические выражения  соответствуют обратным соотношениям a≥b и a≤b, а равенство разрядов a=bможно рассматривать как случай одновременного выполнения неравенств a≥b и a≤b, представляемый логическим произведением соответствующих выражений
i
i
В последовательном поразрядном сравнении чисел А и В вновь поступающие разряды a и b относительно ранее проверенных могут выступать как более старшие, так и как более младшие.
i
i
i
i
i
i-1
0
i
i-1
0
i
i-1
0
i
i-1
0
i
i
i
i
i-1
0
i-1
0
i
i
i
i
i-1
0
i-1
0
В первом случае справедливость неравенства a<b или a>bоднозначно определяет соотношение состоящих из всех проверенных разрядов частей А и В - aa…a<bb…b или aa…a>bb…b. Истинность расширенного неравенства a≤b, обратного a>b, оставляет в силе ложность или истинность ранее установленного соотношения частей из предыдущих разрядов a…а<b…b для всех проверенных. Неравенство a≥b, обратное a<b, также проявляет себя применительно к соотношению a…а>b…b.
Алгоритм сравнения чисел, следующих младшим разрядом вперед, описывают следующие формулы, в которых взятые в фигурные скобки неравенства представляют логические переменные, истинные и ложные значения которых соответствуют выполнению и невыполнению заключенных в скобки выражений.
i
i
i
i
i
i
i
i
n-1
i+1
n-1
i+1
n-1
i+1
n-1
i+1
В случае следования разрядов сравниваемых чисел А и В в порядке убывания старшинства превышение одного числа другим устанавливается при первом же выполнении любого из неравенств a<b или a>b. Поэтому истинность неравенства a<b или a>bдля очередной пары разрядов сможет повлиять на общий результат только при невыполнении противонаправленного ему неравенства a…a>b…b или a…a<b…b для предыдущих разрядов. Логические формулы представляют это следующим образом.
i
i
i
i
i
i
В схемах фиг. 1 и 3 сигналы переменных {a<b} и  и  формируют элементы 1 и 2 с помощью элемента 3, выдающего конъюнкцию инверсий сигналов a и b. Элементы 1 и 2 выполняют инверсии логических сумм конъюнкции  с сигналами a и bсоответственно, когда на входе стробирования присутствует сигнал логического нуля. При единичном уровне на входе  элементы 1 и 2 имеют нулевые логические состояния.
Элементы 4 и 5 формируют из выходных сигналов устройства и сигналов признаков сравнения очередной пары входных разрядов дизъюнкции и с инверсиями передают их соответственно на входы элементов 6 и 7, которые выполняют конъюнкции этих дизъюнкций, согласно следующим выражениям. Для схемы фиг. 1:
Для схемы фиг. 3:
i
i
Связи выходов элементов 6 и 7 со входами элементов 4 и 5 соответственно замыкают пары элементов 4, 6 и 5, 7 в кольцевые триггерные цепи, которые воспринимают сигналы логической единицы на первых входах элементов 4 и 5 как команды установки в единичное состояние, а на вторых и третьих входах элементов 6 и 7 как имеющие преимущество команды обнуления. При нулевом уровне на входе Сброс и на выходах элементов 1 и 2 триггеры на элементах 4, 6 и 5, 7 сохраняют состояния сигналов на выходах устройства, что позволяет стробировать элементы 1 и 2, то есть разрешать им выдавать сигналы Логических единиц только при нулевом уровне на входе  Это предотвращает сбои устройства, которые могли бы вызвать ложные импульсы на выходах элементов 1 и 2, возникающие из-за задержки сигнала  с выхода элемента 3 относительно входных сигналов a, b и временного сдвига между ними при одинаковом переключении их логических уровней из единичного в нулевой.
Временные диаграммы работы компараторов двоичных чисел в последовательном коде, поступающих младшим и старшим разрядом вперед, представляют фиг. 2 и 4 соответственно. Тонкими вертикальными линиями на них показаны временные интервалы, равные средней задержки переключений логических элементов.
i
i
Сравнение каждой пары чисел А и В начинается с установки триггеров на элементах 4, 6 и 5, 7 в нулевые состояния, то есть со сброса результата предыдущего сравнения. При единичном уровне сигнала на входе Сброс выходные сигналы признаков сравнения А<В и А>В обнуляются и остаются в нулевых значениях независимо от логических уровней на входах a, b и сигналов на входе
i
i
i
i
Момент прекращения сигнала Сброс на обеих диаграммах совпадает с началом активной фазы сигнала  во время которой актуальный сигнал a<b или a>b для первоочередной пары разрядов получает возможность установить соответствующий триггер на элементах 4, 6 или 5, 7 в состояние логической единицы.
Если в результате сравнения разрядов первоочередной и следующих пар на выходах элементов 1 и 2 не появились единичные импульсы, на выходах устройства остаются логические нули.
i
i
i
i
При появлении на входах устройства пары разрядов, связанных отношением a<b или a>b его выход для соответствующего признака сравнения А<В или А>В переходит в состояние логической единицы и оно будет сохраняться для варранта на фиг. 1 до появления очередной пары в противоположном соотношении или до появления активного сигнала на входе Сброс, а на фиг. 3 его можно изменить, то есть перевести в ноль только по сигналу сброса.
Таким образом, компаратор двоичных чисел в последовательном коде, которые следуют младшим либо старшим разрядом вперед, выполняет сравнение чисел А и В по признакам А<В, А>В и А=В, имея в своем составе четыре логических элемента 2ИЛИ-НЕ и четыре - 3ИЛИ-НЕ. Прием разрядов сравниваемых чисел синхронизирован по нулевому уровню сигнала стробирования.