устройство выбора минимального или максимального числового значения из двух n-разрядных чисел

Классы МПК:G06F7/02 сравнение цифровых данных
G06F7/06 устройства для сортировки, выборки, подборки или сравнения данных на отдельных носителях информации
Автор(ы):
Патентообладатель(и):Грушин Анатолий Иванович (RU)
Приоритеты:
подача заявки:
2003-11-28
публикация патента:

Изобретение относится к области вычислительной техники и может быть использовано при разработке узлов микропроцессора, в частности арифметических устройств, устройств приоритета и тому подобного. Техническим результатом является увеличение быстродействия устройства. Устройство содержит блок преобразования чисел в поразрядные сигналы, блок формирования выбирающих стробов, коммутатор выбора минимального или максимального числа. 3 з.п. ф-лы, 3 ил., 1 табл. устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Формула изобретения

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

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

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 и устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 , где i=1, 2,..., n, аi и bi - i-е разряды двух n-разрядных двоичных чисел А и В, причем a1 и b1 - старшие разряды чисел, a an и b n - младшие разряды чисел.

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

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

или для каждой группы по k разрядов следующие логические функции:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

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

min1=a1b 1 - для первого разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 - для второго разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 , где i=3, 4, 5,..., n, - для 3÷n разрядов,

max 1=a1+b1 - для первого разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 - для второго разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 где i=3, 4, 5,..., n, - для 3÷n разрядов,

или для каждого разряда каждой группы по k разрядов реализует следующие логические функции:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 - для n/k группы из k разрядов.

Описание изобретения к патенту

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

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

Известно устройство выбора минимальной или максимальной величины, содержащее сумматор, усилитель знака разности, коммутатор (US №5515306, кл. G 06 F 7/00, 1996).

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

Наиболее близким по технической сущности к заявляемому изобретению является устройство выбора максимального значения из n-разрядных чисел, содержащее блок анализа величины чисел, выход которого подключен через усилитель сигнала выбора к блоку выбора минимального числа, выход которого является выходом устройства (US №5721809, кл. G 06 F 7/00, 1998).

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

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

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

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 и устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 ,

где i=1, 2, ..., n, аi и bi - i-ые разряды двух n-разрядных двоичных чисел А и В, причем ai и bi - старшие разряды чисел, a an и bn - младшие разряды чисел, при этом блок формирования выбирающих стробов для выбора минимального или максимального числа реализует для каждого разряда следующие две логические функции:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

или для каждой группы по k разрядов:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

а коммутатор выбора минимального или максимального числа реализует следующие логические функции:

min1 =a1b1 - для первого разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 - для второго разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 , где i=3, 4, 5,..., n, - для 3÷n разрядов,

max 1=a1+b1 - для первого разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 - для второго разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 , где i=3, 4, 5, ..., n, - для 3÷n разрядов,

или для каждого разряда каждой группы по k разрядов реализует следующие логические функции:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

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

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

Предварительные испытания позволяют судить о возможности широкого промышленного использования.

На фиг.1 представлен ближайший аналог, на фиг.2 - функциональная блок-схема предложенного устройства, а на фиг.3 иллюстрация разбиения сравниваемых чисел на k-разрядные группы.

Устройство выбора минимальной или максимальной числовой величины из двух n-разрядных чисел содержит блок 1 преобразования чисел в поразрядные сигналы, блок 2 формирования выбирающих стробов и коммутатор 3 выбора минимального или максимального числа. Входы блока 1 являются входами 4-1 и 4-2 устройства, выход 5 через блок 2 формирования выбирающих стробов, имеющий вход 6 и выход 7, подключен к входу 8 управления коммутатора 3 выбора минимального или максимального числа. Выход коммутатора 3 является выходом 9 устройства, а первый и второй информационные входы 10-1 и 10-2 подключены к соответствующим входам 4-1 и 4-2 устройства.

Блок 1 преобразования чисел в поразрядные сигналы обеспечивает формирование в каждом разряде чисел двух сигналов

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 и устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 , где i=1, 2,..., n, ai и bi - i-ые разряды n-разрядных двоичных чисел А и В.

Блок 2 формирования выбирающих стробов для выбора минимального или максимального числа реализует для каждого разряда чисел следующие логические функции:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

или для каждой группы по k разрядов:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Коммутатор 3 выбора минимальной или максимальной величины реализует следующие логические функции:

min1 =a1b1 - для первого разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 - для второго разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 , где i=3, 4, 5,..., n - для 3÷n разрядов,

max 1=a1+b1 - для первого разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 - для второго разряда,

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 , где i=3, 4, 5, ..., n - для 3-n разрядов,

или для каждого разряда каждой группы по k разрядов реализует следующие логические функции:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Устройство работает следующим образом.

При поступлении на входы 4-1 и 4-2 устройства, например, двух двоичных чисел А и В блок 1 преобразования чисел в поразрядные сигналы формирует для каждого разряда поразрядные сигналы li и g i, которые поступают на вход 6 блока 2 формирования выбирающих стробов, который формирует для каждого разряда или для каждой группы выбирающие стробы для коммутатора 3 выбора минимального или максимального числа согласно вышеуказанным формулам.

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

Табл.1 представляет собой таблицу истинности для определения двух старших разрядов минимальной и максимальной величин по двум старшим разрядам чисел А и В.

Из табл.1 получаем выражение для min1:

min 1=a1b1

Действительно, если старший разряд хотя бы одного из чисел равняется "0", то и старший разряд минимальной величины будет равняться "0"; min1="1", только в случае равенства "1" старших разрядов обоих чисел.

Для второго разряда минимальной величины получаем:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Так как устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 и устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 , и l1 равно "1", если старший разряд числа А меньше, чем старший разряд числа В, g1 равно "1", если старший разряд числа А больше, чем старший разряд числа В, то выражение для min2 примет вид:

min 2=a2l1+b2g1 +a2b2

Таблица 1
a1 a2 b1b 2min1 min2max 1max2
00 000 000
00 010 001
00 100 010
00 110 011
01 000 001
01 010 101
01 100 110
01 110 111
10 000 010
10 010 110
10 101 010
10 111 011
11 000 011
11 010 111
11 101 011
11 111 111

а это выражение имеет следующий смысл: если старший разряд числа А меньше, чем старший разряд числа В, то в качестве второго разряда минимальной величины выбирается а2. Если старший разряд числа А больше, чем старший разряд числа В, то в качестве второго разряда минимальной величины выбирается b2 . Если старший разряд числа А не меньше и не больше, чем старший разряд числа В (то есть, они равны), то второй разряд минимальной величины равен "1", только если вторые разряды обоих чисел равны "1".

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

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Так как выражение в первых скобках равно Li-1 , а во вторых скобках - Gi-1, то выражение для min i примет вид:

mini=aiL i-1+biGi-1+aib i,

а после разложения по Li-1 получим:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Так как Gs i-1=g1+g 2+...+gi-1, то

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

т.е. выражение для i-ого разряда минимальной величины примет вид:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Последнее выражение можно реализовать на мультиплексоре с двух направлений, на управляющий вход которого подается сигнал Li-1, а на информационные входы ai и b i(Gs i-1+a1) соответственно.

Использование функций Li-1, Gi-1 и Gs i-1 позволяет распараллелить анализ сравниваемых чисел (см. фиг.3). Вычислим для каждой k-разрядной группы групповые функции Li gr, Gi gr и Gi sgr (здесь индекс i обозначает номер группы), при этом функции используют все разряды только своей группы. Так, для первой группы L1 gr=Lk, G1 gr=Gk , G1 sgr=Gs k функции второй группы используют разряды с номера k+1 до 2k, функции третьей группы используют разряды с номера 2k+1 до 3k и так далее. Для третьей группы справедливо следующее выражение для вычисления разрядов минимальной величины:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Так как выражение в первой и второй скобках равно L 3 res и G3 res соответственно, то

min2k+1-3k=a2k+1-3kL3 res+b2k+1-3kG3 res +a2k+1-3kb2k+1-3k.

Это выражение можно разложить по L3 res, избавляясь от функции G3 res и заменяя ее более простой функцией устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130 :

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Полученное выражение также реализуется на мультиплексоре с двух направлений, управляемом сигналом L3 res .

Из табл. 1 следует, что старший разряд максимальной величины равен логической сумме старших разрядов чисел А и В:

max1=a1+b1

Для второго разряда получаем:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Используя вышеприведенные рассуждения, аналогичные для определения разрядов минимальной величины, получим следующие выражения для максимальной величины:

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

устройство выбора минимального или максимального числового значения   из двух n-разрядных чисел, патент № 2262130

Полученные выражения также реализуется на мультиплексоре с двух направлений.

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

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

Класс G06F7/02 сравнение цифровых данных

устройство сравнения двоичных чисел -  патент 2507564 (20.02.2014)
устройство сравнения двоичных чисел -  патент 2504825 (20.01.2014)
устройство для сравнения чисел, представленных в системе остаточных классов -  патент 2503992 (10.01.2014)
способ пространственно-временной коммутации -  патент 2458383 (10.08.2012)
система и способ сравнения файлов на основе шаблонов функциональности -  патент 2427890 (27.08.2011)
отслеживание и синхронизация частичного изменения элементов -  патент 2421780 (20.06.2011)
устройство сравнения двоичных чисел -  патент 2420789 (10.06.2011)
компаратор двоичных чисел -  патент 2393526 (27.06.2010)
компаратор двоичных чисел -  патент 2389063 (10.05.2010)
селектор двоичных чисел -  патент 2365975 (27.08.2009)

Класс G06F7/06 устройства для сортировки, выборки, подборки или сравнения данных на отдельных носителях информации

Наверх