RU2045769C1 - Multifunctional logical unit - Google Patents
Multifunctional logical unit Download PDFInfo
- 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
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
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
Принцип работы устройства. Известно, что произвольная с.б.ф. 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
Непосредственная реализация с.б.ф. 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
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
В дальнейшем при реализации заданной с.б.ф. на других наборах переменных х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
В качестве примера, поясняющего работу предлагаемого модуля,в приводимой ниже таблице представлены значения сигналов на входах/выходах основных узлов модуля при реализации с.б.ф. шести переменных F F(x1, x2, x6) на некоторых наборах переменных х1.х6, а также при начальной загрузке регистра 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
Следует отметить, что, если значения с.б.ф. F на данном наборе переменных х1.хn вычислено "досрочно" (об этом свидетельствует нулевое значение сигнала на инверсном выходе схемы сравнения 4 0), то нет необходимости заканчивать текущую серию из n тактовых импульсов. При этом на выходе 11 модуля уже сформировано значение F, а сигнал =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
Следовательно, многофункциональный логический модуль вычисляет с.б.ф. 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
Таким образом, предлагаемый многофункциональный логический модуль обладает более высокими технико-экономическими показателями, что приведет к высокой эффективности при его реализации современными интегральными технологиями. 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)
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) |
-
1991
- 1991-12-19 RU SU5017924 patent/RU2045769C1/en active
Non-Patent Citations (2)
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 |