RU2045769C1 - Multifunctional logical unit - Google Patents

Multifunctional logical unit Download PDF

Info

Publication number
RU2045769C1
RU2045769C1 SU5017924A RU2045769C1 RU 2045769 C1 RU2045769 C1 RU 2045769C1 SU 5017924 A SU5017924 A SU 5017924A RU 2045769 C1 RU2045769 C1 RU 2045769C1
Authority
RU
Russia
Prior art keywords
input
counter
output
module
register
Prior art date
Application number
Other languages
Russian (ru)
Inventor
Леонид Болеславович Авгуль
Валерий Павлович Супрун
Original Assignee
Белорусский государственный университет им.В.И.Ленина
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Белорусский государственный университет им.В.И.Ленина filed Critical Белорусский государственный университет им.В.И.Ленина
Priority to SU5017924 priority Critical patent/RU2045769C1/en
Application granted granted Critical
Publication of RU2045769C1 publication Critical patent/RU2045769C1/en

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

FIELD: computer engineering. SUBSTANCE: device has counter, shift register, AND gate, OR gate, comparison unit having inverse input, single-bit adder having multiple inputs, n information inputs, tuning input, reset input, synchronization input and output. Multifunctional logical unit operates as follows. When pulse is sent to reset input, shift register and counter are set to zero. Then vector n(F) is stored to register. Logical one is sent to all information inputs of unit (adder inputs). Binary code that determines number of logical ones containing in input word is generated at output of adder. Unit is tuned to implement symmetric boolean functions F which are encoded in binary code n(F). It speed is nτ/2,, where τ is period of clock pulses. EFFECT: simplified design, increased speed. 1 dwg, 1 tbl

Description

Изобретение относится к вычислительной технике и может быть использовано при построении многофункциональных устройств цифровой обработки информации. The invention relates to computer technology and can be used to build multifunctional devices for digital information processing.

Известен многофункциональный логический модуль, реализующий булевы функции n переменных, в том числе и все симметрические булевы функции (с.б.ф.) n переменных, который содержит счетчик, схему сравнения, сдвигающий регистр, мультиплексор, генератор импульсов, два элемента ИЛИ и элемент ЗАПРЕТ [1] Модуль реализует булевы функции в многотактном режиме работы. A multifunctional logic module is known that implements Boolean functions of n variables, including all symmetric Boolean functions (SBF) of n variables, which contains a counter, a comparison circuit, a shift register, a multiplexer, a pulse generator, two OR elements, and an element FORBID [1] The module implements Boolean functions in multi-cycle operation.

Недостатком модуля является высокая конструктивная сложность. The disadvantage of the module is its high structural complexity.

Наиболее близким по функциональным возможностям и конструкции техническим решением к предлагаемому является многофункциональный логический модуль, содержащий сдвигающий регистр, демультиплексор, шифратор, блок вычисления элементарных с. б. ф. счетчик, триггер, элемент И и элемент ИЛИ [2] Модуль реализует с.б.ф. n переменных за несколько тактов работы. The closest in functionality and design technical solution to the proposed one is a multifunctional logic module containing a shift register, demultiplexer, encoder, unit for calculating elementary s. b. f. counter, trigger, AND element, and OR element [2] The module implements SBF n variables for several clock cycles.

Недостатком известного модуля является сложная конструкция. A disadvantage of the known module is its complex design.

Предлагаемый многофункциональный логический модуль содержит счетчик, сдвигающий регистр, элемент И, элемент ИЛИ, схему сравнения и многовходовый одноразрядный сумматор. Причем первый вход элемента ИЛИ соединен с входом настройки модуля, второй вход соединен с выходом старшего разряда сдвигающего регистра, а выход соединен с входом младшего разряда сдвигающего регистра. Вход установки в ноль сдвигающего регистра соединен с входом сброса модуля и входом установки в ноль счетчика, счетный вход которого соединен с входом синхронизации сдвигающего регистра и выходом элемента И. Первый вход элемента И соединен с входом синхронизации модуля. Выходы многовходового одноразрядного сумматора соединены соответственно с первыми входами схемы сравнения, вторые входы которой соединены соответственно с выходами счетчика, а инверсный выход соединен со вторым входом элемента И. The proposed multifunctional logic module contains a counter, a shift register, an AND element, an OR element, a comparison circuit, and a multi-input single-bit adder. Moreover, the first input of the OR element is connected to the input settings of the module, the second input is connected to the output of the senior bit of the shift register, and the output is connected to the input of the least significant bit of the shift register. The input of the zero shift register is connected to the reset input of the module and the zero input of the counter, the counting input of which is connected to the synchronization input of the shift register and the output of the element I. The first input of the And element is connected to the synchronization input of the module. The outputs of a multi-input single-bit adder are connected respectively to the first inputs of the comparison circuit, the second inputs of which are connected respectively to the outputs of the counter, and the inverse output is connected to the second input of the element I.

На чертеже представлена схема предлагаемого многофункционального логического модуля. Модуль содержит сдвигающий регистр 1, счетчик 2, многовходовый одноразрядный сумматор 3, схему сравнения с инверсным выходом 4, элемент ИЛИ 5, элемент И 6, n информационных входов 71.7n, вход настройки 8, вход сброса 9, вход синхронизации 10, выход 11.The drawing shows a diagram of the proposed multifunctional logic module. The module contains a shift register 1, counter 2, multi-input single-digit adder 3, a comparison circuit with inverse output 4, element OR 5, element AND 6, n information inputs 7 1 .7 n , setting input 8, reset input 9, synchronization input 10, exit 11.

Принцип работы устройства. Известно, что произвольная с.б.ф. n переменных F F(x1, x2, xn) однозначно задается (n+1)-разрядным двоичным вектором n(F) (no, n1, nn), где ni F на (любом) наборе переменных х1, х2, хn, содержащем ровно i единиц (0 ≅ i ≅ n). Следовательно, при реализации с.б.ф. F можно воспользоваться следующей процедурой: хранить в некотором регистре двоичный код n(F); определить количество единиц в данном наборе переменных х1, х2, хn (т.е. найти сумму х1 + х2 + + хn а, где 0 ≅ а ≅ n; выделить компоненту naвектора n(F) в регистре и занести ее в выходную шину модуля. Именно на этом принципе и основана работа предлагаемого устройства.The principle of operation of the device. It is known that arbitrary s.b.f. n variables FF (x 1 , x 2 , x n ) is uniquely determined by the (n + 1) -bit binary vector n (F) (n o , n 1 , n n ), where n i F on (any) the set of variables x 1 , x 2 , x n containing exactly i units (0 ≅ i ≅ n). Therefore, in the implementation of the SBF F you can use the following procedure: store binary code n (F) in some register; determine the number of units in a given set of variables x 1 , x 2 , x n (i.e., find the sum x 1 + x 2 + + x n a, where 0 ≅ a ≅ n; select the component n a of the vector n (F) in register and put it in the output bus of the module. It is on this principle that the operation of the proposed device is based.

Многофункциональный логический модуль работает следующим образом. Импульсом, подаваемым на вход сброса 9, сдвигающий регистр 1 и счетчик 2 обнуляются. Затем производится запись вектора n(F) в регистр 1. Для этого компоненты no, n1, nn вектора n(F) в сопровождении серии из n+1 тактовых импульсов, подаваемых на вход синхронизации 10, последовательно поступают на вход настройки 8 модуля. Для прохождения тактовых импульсов с входа 10 на вход синхронизации регистра 1, сигналы на котором обеспечивают сдвиг информации в регистре 1, формируется сигнал логической единицы на инверсном выходе схемы сравнения 4, который соединен сo вторым входом элемента И 6. Для этого на все информационные входы модуля 71.7n (входы сумматора 3) подаются сигналы логической единицы. На выходе сумматора 3 формируется (k+1)-й разрядный двоичный код f (fo, f1, fk), где k [log2n] определяющий количество N 2ofo + 21f1 + 22f2 + + 2kfk логических единиц, содержащихся во входном слове. Так как счетчик 2 обнулен, то на инверсном выходе схемы сравнения 4 будет сигнал логической единицы, и первые n тактовых импульсов поступят на вход синхронизации регистра 1, а следовательно, компоненты no, n1, nnвектора n(F), будут занесены в регистр 1. Чтобы произвести запись последней компоненты nn вектора n(F) достаточно изменить код на входах сумматора 3 и подать на вход 10 очередной, (n+1)-й тактовый импульс. После этого в закольцованном (через элемент ИЛИ5) сдвигающем регистре будет находиться вектор n(F), причем в старшем n-м разряде компонента no, а в младшем нулевом компонента nn. Отметим, что сдвиг в регистре 1 осуществляется в сторону старших разрядов, а счетчик 2 обнуляется (n+1)-м тактовым импульсом (коэффициент счета счетчика 2 равен n+1). Модуль настроен на реализацию с.б.ф. F F(x1, x2, xn), заданной двоичным кодом n(F).Multifunctional logic module operates as follows. The pulse supplied to the reset input 9, the shift register 1 and the counter 2 are reset. Then the vector n (F) is written to register 1. For this, the components n o , n 1 , n n of the vector n (F), accompanied by a series of n + 1 clock pulses supplied to the synchronization input 10, are sequentially fed to the tuning input 8 module. To pass clock pulses from input 10 to the synchronization input of register 1, the signals on which provide a shift of information in register 1, a signal of a logical unit is generated at the inverse output of comparison circuit 4, which is connected to the second input of element 6. For this, all information inputs of the module 7 1 .7 n (inputs of adder 3) signals of a logical unit are given. At the output of adder 3, the (k + 1) -th bit binary code f (f o , f 1 , f k ) is formed, where k [log 2 n] determining the number N 2 o f o + 2 1 f 1 + 2 2 f 2 + + 2 k f k logical units contained in the input word. Since the counter 2 is reset, the logic unit signal will be at the inverse output of the comparison circuit 4, and the first n clock pulses will go to the synchronization input of register 1, and therefore, the components n o , n 1 , n n of the vector n (F) will be entered in register 1. To record the last component n n of the vector n (F), it is enough to change the code at the inputs of adder 3 and apply another (n + 1) -th clock pulse to input 10. After that, the vector n (F) will be in the loopback (through the OR5 element) shift register, moreover, the component will be in the highest n-th digit of the component n o , and in the lower zero component n n . Note that the shift in register 1 is in the direction of the higher digits, and counter 2 is reset to the (n + 1) -th clock pulse (counter coefficient of counter 2 is n + 1). The module is configured to implement sbf FF (x 1 , x 2 , x n ) given by the binary code n (F).

Непосредственная реализация с.б.ф. F F(x1, x2, xn) на наборах переменных х1, х2, хn выполняется следующим образом. На информационные входы 71.7n подаются двоичные переменные х1, х2, хn (в произвольном порядке), на вход синхронизации 10 серия из n тактовых импульсов, после окончания которой с выхода 11 модуля снимается значение с.б.ф. F на данном наборе переменных х1, х2, хn. Действительно, сумматор 3 подсчитывает сумму
a x1 + х2 + + xn 2ofo + 21f1 + + 2kfk, где k [log2n] fo, f1, fk значения булевых функций, формируемых соответственно на 0-м, 1-м, k-м выходах сумматора (схемы таких многовходовых одноразрядных сумматоров известны, см. например, устройства по а.с. СССР N 1575172, 1592846 и др. кл. G 06 F 7/50). Сигналы с выхода сумматора 3 с помощью схемы сравнения 4 сравниваются с содержимым счетчика 2. Так как счетный вход счетчика 2 соединен с входом синхронизации регистра 1, то код состояния счетчика 2 всегда указывает номер компоненты na, содержащейся в старшем разряде регистра 1, выход которого соединен с выходом 11 модуля. Следовательно, когда код а с выхода сумматора 3 сравнивается с кодом счетчика 2, на инверсном выходе схемы сравнения 4 сигнал логического нуля запретит дальнейшее прохождение тактовых импульсов на счетный вход счетчика 2 и вход синхронизации регистра 1. При этом в n-м разряде регистра 1 будет находиться компонента na, подаваемая на выход 11 модуля и совпадающая со значением с.б.ф. на данном наборе переменных х1, х2, хn, для которого х1 + х2 + + хn а.
The direct implementation of the SBF FF (x 1 , x 2 , x n ) on sets of variables x 1 , x 2 , x n is performed as follows. The binary variables x 1 , x 2 , x n (in random order) are fed to the information inputs 7 1 .7 n, a series of n clock pulses is sent to the synchronization input 10, after which the SBF value is removed from the output of module 11. F on a given set of variables x 1 , x 2 , x n . Indeed, adder 3 counts the sum
ax 1 + x 2 + + x n 2 o f o + 2 1 f 1 + + 2 k f k , where k [log 2 n] f o , f 1 , f k are the values of Boolean functions generated respectively on the 0th , The 1st, kth outputs of the adder (the schemes of such multi-input single-digit adders are known, see, for example, devices according to the AS of the USSR N 1575172, 1592846 and other class G 06 F 7/50). The signals from the output of the adder 3 using the comparison circuit 4 are compared with the contents of the counter 2. Since the counting input of the counter 2 is connected to the synchronization input of the register 1, the status code of the counter 2 always indicates the component number n a contained in the high order bit of the register 1, the output of which connected to the output 11 of the module. Therefore, when the code a from the output of the adder 3 is compared with the code of the counter 2, at the inverse output of the comparison circuit 4, the logic zero signal will prohibit the further passage of clock pulses to the counting input of the counter 2 and the synchronization input of register 1. In this case, in the nth digit of register 1, there is a component n a supplied to the output 11 of the module and coinciding with the value of the SBF on this set of variables x 1 , x 2 , x n , for which x 1 + x 2 + + x n a.

В дальнейшем при реализации заданной с.б.ф. на других наборах переменных х1. хn регистр 1 и счетчик 2 не обнуляются. На информационные входы 71.7n подаются другие значения переменных x1.xn, а на вход 10 серия из n тактовых импульсов.In the future, when implementing a given SBF on other sets of variables x 1 . x n register 1 and counter 2 are not reset. The information inputs 7 1 .7 n are supplied with other values of the variables x 1 .x n , and input 10 is a series of n clock pulses.

В качестве примера, поясняющего работу предлагаемого модуля,в приводимой ниже таблице представлены значения сигналов на входах/выходах основных узлов модуля при реализации с.б.ф. шести переменных F F(x1, x2, x6) на некоторых наборах переменных х16, а также при начальной загрузке регистра 1.As an example, explaining the operation of the proposed module, the table below shows the values of the signals at the inputs / outputs of the main nodes of the module during the implementation of SBF six variables FF (x 1 , x 2 , x 6 ) on some sets of variables x 1 .x 6 , as well as during the initial loading of register 1.

Следует отметить, что, если значения с.б.ф. F на данном наборе переменных х1n вычислено "досрочно" (об этом свидетельствует нулевое значение сигнала на инверсном выходе схемы сравнения 4

Figure 00000001
0), то нет необходимости заканчивать текущую серию из n тактовых импульсов. При этом на выходе 11 модуля уже сформировано значение F, а сигнал
Figure 00000002
=0 запрещает прохождение тактовых импульсов с входа 10 на входы синхронизации регистра 1 и счетный вход счетчика 2.It should be noted that if the values of F on this set of variables x 1 .x n calculated "ahead of schedule" (this is evidenced by the zero value of the signal at the inverse output of the comparison circuit 4
Figure 00000001
0), then there is no need to end the current series of n clock pulses. In this case, the value F is already generated at the output of the module 11, and the signal
Figure 00000002
= 0 prohibits the passage of clock pulses from input 10 to the synchronization inputs of register 1 and the counting input of counter 2.

Следовательно, многофункциональный логический модуль вычисляет с.б.ф. n переменных, причем его код настройки и значения реализуемых с.б.ф. хранятся в соответствующем регистре. Therefore, the multifunctional logic module calculates the b.s. n variables, moreover, its setting code and the values of the implemented stored in the appropriate register.

По сравнению с устройством-прототипом предлагаемый модуль обладает более простой конструкцией. Действительно, в состав как предлагаемого модуля, так и прототипа входят регистр, счетчик, элемент ИЛИ и элемент И. Прототип содержит блок вычисления элементарных с.б.ф. который, как показывает анализ, сложнее по конструкции многовходового одноразрядного сумматора, входящего в состав предлагаемого устройства. К тому же суммарная сложность демультиплексора, шифратора и выходного триггера прототипа превышает сложность поразрядной схемы сравнения предлагаемого модуля. Compared with the prototype device, the proposed module has a simpler design. Indeed, both the proposed module and the prototype include a register, a counter, an OR element, and an I. element. The prototype contains a block for calculating elementary SBFs. which, as analysis shows, is more complicated in design of a multi-input single-bit adder, which is part of the proposed device. In addition, the total complexity of the demultiplexer, encoder and output trigger of the prototype exceeds the complexity of the bitwise comparison scheme of the proposed module.

Дополнительным положительным эффектом является более высокое быстродействие предлагаемого модуля по сравнению с прототипом. Среднее быстродействие прототипа составляет Тпр. 0,5(n+1) τ, где τ период следования тактовых импульсов. У предлагаемого модуля Тзаявл. 0,5n˙τ. При этом "τ" прототипа превосходит "τ" предлагаемого устройства, так как глубина схемы, по которой распространяются тактовые сигналы в прототипе, больше, чем в предлагаемом устройстве (в прототипе цепочка прохождения тактовых сигналов: "элемент И счетчик (регистр) демультиплексор шифратор блок вычисления элементарных с.б. ф. триггер"; в предлагаемом устройстве: "элемент И счетчик схема сравнения"). Кроме того, на увеличение времени вычисления с.б.ф. в прототипе влияет необходимость обнуления выходного триггера перед каждым новым набором переменных с.б.ф.An additional positive effect is a higher performance of the proposed module compared to the prototype. The average speed of the prototype is T ave. 0,5 (n + 1) τ, where τ is the period of repetition of clock pulses. The proposed module T decl. 0.5n˙τ. In this case, the prototype “τ” exceeds the “τ” of the proposed device, since the depth of the circuit along which the clock signals propagate in the prototype is greater than in the proposed device (in the prototype the clock signal flow chain: “element AND counter (register) demultiplexer encoder block computing elementary SBF trigger "; in the proposed device:" element AND counter comparison circuit "). In addition, to increase the computational time of the SBF the prototype affects the need to reset the output trigger before each new set of variables

Таким образом, предлагаемый многофункциональный логический модуль обладает более высокими технико-экономическими показателями, что приведет к высокой эффективности при его реализации современными интегральными технологиями. Thus, the proposed multifunctional logic module has higher technical and economic indicators, which will lead to high efficiency in its implementation by modern integrated technologies.

Claims (1)

МНОГОФУНКЦИОНАЛЬНЫЙ ЛОГИЧЕСКИЙ МОДУЛЬ, содержащий счетчик, сдвигающий регистр, элемент И и элемент ИЛИ, первый вход которого соединен с входом настройки модуля, второй вход соединен с выходом старшего разряда сдвигающего регистра, а выход соединен с входом младшего разряда сдвигающего регистра, вход установки в "0" которого соединен с входом сброса модуля и входом установки в "0" счетчика, счетный вход которого соединен с входом синхронизации сдвигающего регистра и выходом элемента И, первый вход которого соединен с входом синхронизации модуля, отличающийся тем, что содержит блок сравнения и моноговходовый одноразрядный сумматор, выходы которого соединены соответственно с первыми входами блока сравнения, вторые входы которого соединены соответственно с выходами счетчика, а инверсный выход соединен с вторым входом элемента И. MULTI-FUNCTIONAL LOGIC MODULE containing a counter, a shift register, an AND element and an OR element, the first input of which is connected to the module setup input, the second input is connected to the high-order bit of the shift register, and the output is connected to the low-order input of the shift register, the setup input is "0 "which is connected to the reset input of the module and the installation input to" 0 "counter, the counting input of which is connected to the synchronization input of the shift register and the output of the element And, the first input of which is connected to the synchronization input m modulus, characterized in that it comprises a comparison unit and monogovhodovy one-bit adder, the outputs of which are connected respectively to the first inputs of the comparator, whose second inputs are connected respectively to the outputs of the counter, and inverse output is connected to the second input element I.
SU5017924 1991-12-19 1991-12-19 Multifunctional logical unit RU2045769C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU5017924 RU2045769C1 (en) 1991-12-19 1991-12-19 Multifunctional logical unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU5017924 RU2045769C1 (en) 1991-12-19 1991-12-19 Multifunctional logical unit

Publications (1)

Publication Number Publication Date
RU2045769C1 true RU2045769C1 (en) 1995-10-10

Family

ID=21592251

Family Applications (1)

Application Number Title Priority Date Filing Date
SU5017924 RU2045769C1 (en) 1991-12-19 1991-12-19 Multifunctional logical unit

Country Status (1)

Country Link
RU (1) RU2045769C1 (en)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
1. Авторское свидетельство СССР N 1137457, кл. G 06F 7/00, 1985. *
2. Авторское свидетельство СССР N 1661752, кл. G 06F 7/00, 1991. *

Similar Documents

Publication Publication Date Title
US3811038A (en) Pseudo-random number generators
RU2045769C1 (en) Multifunctional logical unit
RU2081450C1 (en) Generator of n-bit random sequence
US5761100A (en) Period generator for semiconductor testing apparatus
SU634276A1 (en) Storing adder
SU1101804A1 (en) Stochastic walsh function generator
RU2080651C1 (en) Generator of random n-bit binary numbers
SU1120321A1 (en) Device for extracting 7-th root of number
SU642704A1 (en) Arrangement for computing the function: (x2-y2) raised to the minus 1/2 power
RU2020759C1 (en) Device for forming remainder for random module of number
SU1264165A1 (en) Adder-accumulator
SU748394A1 (en) N-digit generator of pseudorandom binary trains
SU696452A1 (en) Serial adder
SU1163340A1 (en) Device for determining characteristic function
SU744570A1 (en) Device for multiplying by three
SU1124293A1 (en) Random process generator
SU1277387A2 (en) Pulse repetition frequency divider
RU2010311C1 (en) Device for parallel division of real numbers
SU907547A1 (en) Pseudo-random number generator
SU711560A1 (en) Arrangement for taking logarithms
RU2010312C1 (en) Device for calculating natural log of complex number
SU911508A1 (en) Device for comparing two numbers
SU1637013A1 (en) Threshold gate
SU991409A1 (en) Device for determination of number of ones in a binary number
SU864279A1 (en) Number comparator