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

Классы МПК:H03M7/12 в системе счисления с двумя основаниями, например двоично-десятичный код
Автор(ы):, ,
Патентообладатель(и):Научно-исследовательский институт электронных вычислительных машин
Приоритеты:
подача заявки:
1990-07-17
публикация патента:

Изобретение относится к вычислительной технике и может быть использовано в универсальных и специализированных вычислительных машинах для построения преобразователей больших потоков двоично-десятичной и двоичной информации. Целью изобретения является упрощение реверсивного преобразователя двоично-десятичного кода в двоичный. Реверсивный преобразователь двоично-десятичного кода в двоичный содержит m масштабирующих сумматоров 11-1m реверсивный преобразователь двоично-десятичного кода в   двоичный, патент № 2022467, где n - число разрядов входного входа; k - число разрядов входного кода, обрабатываемых одним масштабирующим сумматором; ]x[ - ближайшее целое, большее или равное (X), (m+1) k-разрядных преобразователей 21-2m+1 и коммутатор 3. На основе изобретения возможно построение конвейерных структур для преобразования кодов с любым количеством ступеней конвейера путем размещения регистров между масштабирующими сумматорами и подачей на входы преобразователя соответствующих групп разрядов, принадлежащих различным операндам. 1 ил.
Рисунок 1

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

РЕВЕРСИВНЫЙ ПРЕОБРАЗОВАТЕЛЬ ДВОИЧНО-ДЕСЯТИЧНОГО КОДА В ДВОИЧНЫЙ, содержащий группу из m масштабирующих сумматоров (m=реверсивный преобразователь двоично-десятичного кода в   двоичный, патент № 2022467-1 , где n - число разрядов входного кода, k - число разрядов входного кода, обрабатываемых одним масштабирующим сумматором, ] x[ - ближайшее целое, большее или равное x), группу из (m + 1) k-разрядных преобразователей и коммутатор, причем выход каждого масштабирующего сумматора, кроме последнего, соединен с входом множимого соседнего старшего масштабирующего сумматора, выход последнего масштабирующего сумматора является информационным выходом реверсивного преобразователя, вход режима работы соединен с управляющими входами всех масштабирующих сумматоров и k-разрядных преобразователей и с управляющим входом коммутатора, выход которого соединен с входом множителя первого масштабирующего сумматора, вход множимого которого соединен с выходом первого k-разрядного преобразователя, информационный вход которого соединен с входом первой группы разрядов входного кода преобразователя, информационный вход i-го k-разрядного преобразователя (i= 2,3,...,m+1) соединен с входом i-й группы разрядов входного кода преобразователя, выход i-го k-разрядного преобразователя - с входом слагаемого (i=1)-го масштабирующего сумматора, первый и второй входы коммутатора соединены соответственно с входами двоичной и двоично-десятичной констант преобразователя, отличающийся тем, что , с целью упрощения преобразователя, вход множителя масштабирующих сумматоров с второго по m-й соединен с входом множителя первого масштабирующего сумматора.

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

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

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

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

Наиболее близким по технической сущности к изобретению является реверсивный преобразователь двоично-десятичного кода в двоичный, содержащий группу из m масштабирующих сумматоров (m =] m=реверсивный преобразователь двоично-десятичного кода в   двоичный, патент № 2022467-1 [-1, где n - число разрядов входного кода; k - число разрядов входного кода, обрабатываемых одним масштабирующим сумматором; ]x[ - ближайшее целое, большее или равное х), группу из (m+1)k-разрядных преобразователей, группу из m коммутаторов, причем выход каждого масштабирующего сумматора, кроме последнего, соединен с входом множимого соседнего старшего масштабирующего сумматора, выход последнего масштабирующего сумматора является информационным выходом преобразователя, вход режима работы которого соединен с управляющими входами всех масштабирующих сумматоров, k-разрядных преобразователей и коммутаторов, вход множимого первого масштабирующего сумматора соединен с выходом первого k-разрядного преобразователя, информационный вход которого соединен с входом первой группы разрядов входного кода преобразователя, информационный вход i-го k-разрядного преобразователя (i = 2,3...m+1) соединен с входом i-й группы разрядов входного кода преобразователя, выход i-го k-разрядного преобразователя соединен с входом слагаемого (i-1)-го масштабирующего сумматора, вход множителя которого соединен с выходом (i-1)-го коммутатора, первые и вторые входы всех коммутаторов соединены соответственно с входами двоичной и двоично-десятичной констант преобразователя [2].

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

Целью изобретения является упрощение реверсивного преобразователя за счет сокращения аппаратурных затрат.

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

Реверсивный преобразователь двоично-десятичного кода в двоичный содержит группу масштабирующих сумматоров, 11 = =1m, группу разрядных преобразователей 21-2m+1и коммутатор 3.

В основу предлагаемого преобразователя положен следующий принцип. При преобразовании двоично-десятичного кода в двоичный исходный n-разрядный код разбивается на группы по k десятичных цифр в каждой. Преобразование происходит по схеме Горнера, т. е. первая (самая старшая) группа десятичных разрядов преобразуется в двоичный код и умножается на двоичную константу, значение которой определяется значением k. Так, например, при k = 1 двоичная константа равна 1010 при х = 2 - 1100100 и т.д. К получившемуся двоичному произведению прибавляется двоичное значение соседней младшей группы десятичных разрядов. Результат суммирования опять умножается на двоичную константу и суммируется с двоичным значением следующей далее младшей группы десятичных разрядов и т.д. до тех пор, пока не будет подсуммировано двоичное значение самой младшей группы десятичных разрядов.

Преобразование из двоичного кода в двоично-десятичный происходит аналогично, но все действия выполняются в десятичной системе счисления. Значение двоично-десятичной константы в этом случае также зависит от количества двоичных разрядов в группах р. Так, например, при р= = 3 двоично-десятичная константа равна 8 (код 1000) при р = 6 - 64 ( код 01100100) и т.д.

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

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

К-разрядные преобразователи 21-2m+1 предназначены для преобразования из двоично-десятичного кода в двоичный и наоборот значений групп разрядов, поступающих с входов соответственно преобразователя. Они могут быть реализованы самыми различными способами и средствами в зависимости от разрядности группы. Следует особо отметить, что при k = 1 и р реверсивный преобразователь двоично-десятичного кода в   двоичный, патент № 2022467 3 необходимость в преобразователях отпадает. Управление работой преобразователей 21-2m+1 осуществляется потенциалом с входа 7 реверсивного преобразователя.

Коммутатор 3 предназначен для передачи на входы множителя масштабирующих сумматоров 11-1m значения либо двоично-десятичной (с входа 5 устройства), либо двоичной констант (с входа 6 устройства). Управление работой коммутатора 3 осуществляется потенциалом с входа 7 реверсивного преобразователя.

Реверсивный преобразователь работает следующим образом.

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

Рассмотрим сначала преобразование из двоично-десятичного кода в двоичный. Пусть преобразуемое число равно 98356528. Перед началом выполнения операции на входах 41, 42, 43 и 44 устанавливаются двоично-десятичные значения групп разрядов соответственно 98, 35, 65 и 28. Управляющий потенциал с входа 7 выбора режима работы преобразователя настраивает масштабирующие сумматоры 11-13 на обработку двоичных кодов, k-разрядные преобразователи 21-24 на преобразование в двоичный код, а коммутатор 3 на передачу двоичной константы 1100100 с входа 6 двоичных констант реверсивного преобразователя. В масштабирующем сумматоре 11 происходит умножение преобразованного в двухразрядном преобразователе 21 в двоичный код значения 98 на двоичную константу и одновременно прибавляется двоичное значение числа 35, сформированное на выходе преобразователя 22. С выхода масштабирующего сумматора 11 первый промежуточный результат преобразования поступает на вход множимого масштабирующего сумматора 12, где умножается на двоичную константу и к произведению прибавляется двоичное значение соседней младшей пары десятичных цифр 65, образованное на выходе преобразователя 23. Второй промежуточный результат в масштабирующем сумматоре 13 умножается на двоичную константу и к произведению прибавляется двоичное значение числа 28, полученное на выходе преобразователя 24. С выхода масштабирующего сумматора 13 считывается окончательный двоичный результат через информационный выход 8 реверсивного преобразователя.

При преобразовании из двоичного в двоично-десятичной код на входе 7 преобразователя устанавливается управляющий потенциал, настраивающий масштабирующие сумматоры 11-13 на обработку двоично-десятичных кодов, преобразователей 21-24 на преобразование из двоичного кода в двоично-десятичный и коммутатор 3 на передачу двоично-десятичный константы 01100100 (число 64) с входа 5 реверсивного преобразователя. На каждый из входов 41-44 подается по шесть двоичных разрядов преобразуемого числа (на вход 41 - самые старшие шесть двоичных разрядов, на вход 42 - соседние младшие шесть двоичных разрядов и т. д. ). После срабатывания масштабирующих сумматоров 11-13 на выходе 8 реверсивного преобразователя образуется двоично-десятичный код преобразованного числа.

Класс H03M7/12 в системе счисления с двумя основаниями, например двоично-десятичный код

способ декодирования манчестерского сигнала -  патент 2493650 (20.09.2013)
устройство для индикации с увеличенной информационной емкостью -  патент 2249912 (10.04.2005)
устройство преобразования из десятичной системы счисления в двоичную -  патент 2248094 (10.03.2005)
преобразователь кода в сигнал с временной модуляцией -  патент 2089044 (27.08.1997)
преобразователь четырехразрядного двоичного кода в двоично- десятичный код -  патент 2040115 (20.07.1995)
формирователь адреса -  патент 2025046 (15.12.1994)
устройство для преобразования кодов -  патент 2022468 (30.10.1994)
преобразователь двоичного кода в двоично-десятичный -  патент 2019033 (30.08.1994)
преобразователь кодов -  патент 2012135 (30.04.1994)
преобразователь кодов -  патент 2007031 (30.01.1994)
Наверх