SU1501033A1 - Устройство дл вычислени булевых функций - Google Patents
Устройство дл вычислени булевых функций Download PDFInfo
- Publication number
- SU1501033A1 SU1501033A1 SU884369489A SU4369489A SU1501033A1 SU 1501033 A1 SU1501033 A1 SU 1501033A1 SU 884369489 A SU884369489 A SU 884369489A SU 4369489 A SU4369489 A SU 4369489A SU 1501033 A1 SU1501033 A1 SU 1501033A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- inputs
- code
- input
- outputs
- address
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Изобретение относитс к автоматике и вычислительной технике и предназначено дл вычислени булевых функций. Цель изобретени - сокращение объема пам ти, необходимого дл записи программы вычислени булевых функций за счет обеспечени возможности перехода к следующей по номеру команде при неравенстве значений аргумента и его признака. Устройство содержит мультиплексор 1, блок 2 пам ти программ, дешифратор 3, две группы 4 и 11 триггеров, генератор 5 импульсов, вход 6 начальной установки, элемент НЕ 7, триггер 8, формирователь 9 импульсов, элемент И 10, информационные входы 12 и выходы 13, элемент СУММА ПО МОДУЛЮ ДВА 14, коммутатор 15, сумматор 16, шину 17 логического нул . Устройство вычисл ет булевые функции по заданной программе. При этом обеспечиваетс возможность перехода к следующей по номеру команде в случае, когда значение аргумента и его признака неравны между собой. 2 ил. 1 табл.
Description
/о
(Л
сд
со со
3,50
команде при неравенстве значений аргумента и его признака. Устройство содержит мультиплексор 1, блок 2 пам ти программ, дешифратор 3, две группы 4 и 11 триггеров, генератор 5 импульсов, вход 6 начальной установки , элемент НЕ 7, триггер 8, формирователь 9 импульсов, элеуент И 10, информационные входы 12 и выходы 13,
1033
элемент СУММА ПО МОДУЛЮ ДВА 14, коммутатор 15,, сумматор 16, шину 17 логического нул . Устройство вычисл ет
5 булевые функции по заданной программе . При этом обеспечиваетс возможность перехода к следующей по номеру команде в случае, когда значение аргумента и его признака не равны межд
10 собой. 2 ил. 1 табл.
.
Изобретение относитс к области автоматики и вычислительной техники и может быть использовано дл вычислени булевых функций в системах контрол и управлени техническими и тех нологическими средствами.
Целью изобретени вл етс упро-- щение устройства за счет сокращени объема пам ти.
На фиг. 1 представлена схема устройства дл вычислени булевых функций; на фиг. 2 - граф-схема алгоритма вычислени двух булевых функций.
Устройство дл вычислени булевых функций содержит мультиплексор 1, блок 2 пам ти программ, дешифратор 3, группу триггеров 4, генератор 5 импульсов , вход 6 начальной установки, элемент НЕ 7, триггер 8,формирователь 9 импульсов, элемент И 10, группу триггеров 11, информационные рходы 12, выходы 13-, элемент СУММА ПО МОДУЛЮ ДВА 14, -коммутатор 15,сумматор 16, шину 17 логического нул .
Устройство работает следующим об- 1разом.
Когда на входе 6 начальной установки имеет место сигнал, запрещающий работу устр-ойства, по отрицательному фронту первого после по влени сигнала запрета импульса на выходе триггера 8 сформируетс сигнал установки группы триггеров 4 в начальное состо ние. При этом на выходах группы триггеров 4 будет иметь место нулевой код, независимо от поступлени на его тактовые входы тактовых импульсов, а устройство будет находитьс в состо нии ожидани . При по влении на входе 6 сигнала,, разрешающего работу устрой ства, по отрицательному фронту первого тактового импульса, поступающего с выхода генератора 5 импульсов, на выходе триггера 8 сформируетс сиг-O
25
30
35
40
45 JQ 55
нал, разрешающий работу группы триггеров 4 по тактовым входам. По положительным фронтам тактовых импульсов производитс вызов команд программь вычислени булевых функций, записанной в блоке 2 пам ти программ. Кажда команда содержит код адреса опрашивав мого аргумента, поступающий на управл ющие входы мультиплексора 1; код признака аргумента, равный 1, если аргумент входит в линейную граф-схему алгоритма с отрицанием, и О в противном случае, и поступающий на второй вход элемента СУММА ПО МОДУЛЮ ДВА 14; код адреса команды, к выполнению которой устройство приступит на следующем такте, если в данном такте на выходе элемента СУММА ПО МОДУЛЮ ДВА 14 сформировалс сигнал О, этот код поступает на первые входы коммутатора 15; код адреса результата вычисл емой функции, который поступает на ., адресные входы дешифратора 3; код разрешени записи результата вычислени логической функции, которьй поступает на первый вход этуемента И 10; код результата вычислени логической фуркции, который поступает на информационные входы триггеров группы 11.
Процедура вычислени булевьгх функций заключаетс в следующем.
По первой команде программы, наход щейс в блоке 2 пам ти программ по нулевому адресу и формирующейс на выходах блока 2 пам ти программ, когда устройство находитс э состо нии ожидани , на первьп вход элемента СУММА ПО МОДУЛЮ ДВА 14 поступает сигнал , соответствующий значению первого опрашиваемого, аргумента первой функции. На второй вход элемента СУММА ПО МОДУЛЮ ДВА 14 поступает сигнал , соответствующий признаку этого аргумента. Могут иметь место два
случа : на первый и второй входы элемента СУММА ПО МОДУЛЮ ДВА 14 поступают разные сигналы; на первый и второй входы элемента ПО МОДУЛЮ ДВА 14 поступают одинаковые сигналы.
В первом случае на выходе элемен- |Та СУММА ПО МОДУЛЮ ДВА 14 сЛормирует- с сигнал 1, по которому на вторых входах сумматора 16 сформируетс код соответствующий числу 1, а на первые входы сумматора 16 через коммутатор 15 поступит код с выходов триггеров группы 4. Обозначим число, соответствующее этому коду,А, Тогда на выходах сумматора 16 сформируетс код, соответсТвуюпщй числу (A+l)
Во втором случае на выходе элемента СУММА ПО МОДУЛЮ ДВА 14 сформируетс сигнал О, по которому на вторых входах сумматора 16 сформируетс нулевой код, а на первые входы сумматора 16 через коммутатор 15 поступит код адреса команды с выходов ко20 входе сигнала разрешени записи результата , который лоступает из блока 2 пам ти программ. Дл перехода к вычислению следующей функции в команде , по которой производитс запись
да адреса команды блока 2 пам ти про- 25 результата вычислени , в поле кода грамм. В этом случае этот же код сфор- адреса аргумента записьшаетс код
30
35
40
мируетс и на выходах сумматора 16,
Код на выходах сумматора 16 определ ет , какую команду устройство выполнит на следующем такте работы. В первом случае это будет следующа по пор дку команда, во втором - команда , код которой записан в поле номера команды выполн емой команды. После по влени на установочных входах группы триггеров 4 сигнала, разрешающего его работу по тактовым входам, по положительному фронту первого тактового импульса код, имеющий место на выходах сумматора 16, записываетс в группу триггеров 4 и формируетс на его выходах. По этому коду на выходах блока 2 пам ти программ формируетс код новой команды . В первом случае это будет код следующей по пор дку команды, во вто ром - код той команды, котора записана в блоке 2 пам ти пррграмм по адресу , равному коду номера команды, записанному в предьщущей команде.При этом, если значение опрошенного аргумента не полностью определ ет значение функции, то по этой команде осуществл етс опрос другого аргумента этой же функции, если значение функции полностью определ етс значе- 55 нием опрошенного аргумента, то осуществл етс запись результата вычислени функции в один из триггеров груп .-45
50
станты и , т.е. код номера того информационного входа мультиплексора 1, который соединен с шиной 17 логического нул . В поле признака аргумента записываетс сигнал О, в поле адреса команды записываетс код адреса команды, по которой п роизво- дитс опрос и анализ первого аргумента следующей функции. После вычислени всех логических функций устройство может оп ть перейти к вычислению первой функции. Дл этого в поле адреса команды двух последних команд . njiorpaMMbi необходимо записать адреса первой команды программы. Кроме этого , устройство может прекратить вычислени , дл чего в поле адреса команды двух последних команд программы вычислени записываетс код адреса дополнительной пустой команды в поле адреса опрашиваемого аргумента которой записываетс адрес константы О, в поле адреса команды - адрес ее самой, в поле признака аргумента - О. Тогда устройство будет посто нно выполн ть эту команду до перевода его в состо ние ожидани сигналом с входа 6.
Дл примера и по снени работы устройства, а также спос оба его про- граммировани в таблице представлена программа вычислени двух функций.
пы 11 и формируетс Kfi, Vr :IM|. ц.-)1 II 111 рехода к герной ксп пил - прчт р.чмм пы- числе.ни следующей функтп . Эчо происходит следующим обр.ччиг-. i.-iyin Mi результата осуществи етс . по олиому из тактовых входов riiyniHii ipnrr-ej nn 1 1 . Результат вычислени поступает на блока 2 пам ти программ, номер тактового входа определ етс кодом адреса результата, который поступает на адресные входы дешифратора 3 из блока 2 пам ти программ. Депгифратор 3 стро- бируетс импульсом, формируемым по
отрицательному фронту тактового импульса формирователем 9 импульс.)в. Этот импульс поступает на.стробирую- щий вход дешифратора 3 с ллс- ,мента И 10 при наличии на его первом
входе сигнала разрешени записи результата , который лоступает из блока 2 пам ти программ. Дл перехода к вычислению следующей функции в команде , по которой производитс запись
результата вычислени , в поле кода адреса аргумента записьшаетс код
30
35
40
55 45
50
станты и , т.е. код номера того информационного входа мультиплексора 1, который соединен с шиной 17 логического нул . В поле признака аргумента записываетс сигнал О, в поле адреса команды записываетс код адреса команды, по которой п роизво- дитс опрос и анализ первого аргумента следующей функции. После вычислени всех логических функций устройство может оп ть перейти к вычислению первой функции. Дл этого в поле адреса команды двух последних команд . njiorpaMMbi необходимо записать адреса первой команды программы. Кроме этого , устройство может прекратить вычислени , дл чего в поле адреса команды двух последних команд программы вычислени записываетс код адреса дополнительной пустой команды в поле адреса опрашиваемого аргумента которой записываетс адрес константы О, в поле адреса команды - адрес ее самой, в поле признака аргумента - О. Тогда устройство будет посто нно выполн ть эту команду до перевода его в состо ние ожидани сигналом с входа 6.
Дл примера и по снени работы устройства, а также спос оба его про- граммировани в таблице представлена программа вычислени двух функций.
рассмотренных в описании устройства- прототипа
YO. X,,(X,V Хг (X,VX4- Xj) V Х X Y, Х. X,VX,. XgCXgVX,.
Дл составле}1и пpoгpaм iЬ .вычислени этих функций необходи о построит блок-схему алгоритма бинарной програмы вычислени , котора представлена на фиг. 2а. Далее необходимо перейти к линейной блок-схеме алгоритма бинарной программы (к линейному бинарному графу - ЛБГ), котора показана на фиг. 25. Дл этого все аргументы функции записываютс в линию в том пор дке, в котором они сто т в блок- схеме алгоритма бинарной программы. По этой линии фиксируютс единичные переходы от аргумента к аргументу. Далее, в блок-схеме алгоритма бинарной программы переход от X - к Xj осуществл етс по нулевому значению X,, в ЛБГ аргумент Х беретс с отрицанием . Остальные переходы, перехо- ды по нулевому значению аргументов, стро тс в соответствии с блок-схемой алгоритма бинарной программы с учетом проставленных инверсий.
Составление программы вычислени производитс следующим образом:
1)в столбец таблицы Код адреса аргумента записываютс коды адресов аргументов первой функции в том пор дке , в котором эти аргументы рас- положены в ЛБГ;
2)в каждую .строку столбца таблицы Признак аргумента записываетс 1, если аргумент, код адреса которого записан в этой строке, входит в ЛБГ с инверсией, в противном случае записываетс
3)в каждую строку столбца Код адреса команды записываетс код адреса той команды, к выполнению кото- рой необходимо перейти по нулевому значению выражени , сто щего в соответствующей этой строке вершине ЛБГ;
4)в каждую строку столбца Разрешение записи результата записы- ваетс
5)что будет записано в столбцах Результат вычислени и Адрес результата значени не имеет;
6)в следу1эщей пй пор дку строке записываетс команда записи результата вычислени функции по единичному значению выражений, сто щего в последней вершине ЛБГ первой функции.
0
0
0
5
0
5
g
5
далее записываетс команда записи противоположного результата;
7) в последующих строках таким же образом формируетс программа вычислени второй функции и т.д.
.Отметим особенности формировани команд записи результата. В поле адреса аргумента этих команд записываетс адрес константы О, в поле Признак аргумента - тоже О, в поле Код адреса команды - код но- .мера команды, следующей за этими командами , или, если необходимо после их выполнепи организовать циклическое выполнение всей программы, нулевой код (т.е. начальной команды). В поле Адрес результата заноситс код номера функции, в поле Результат вычислени - соответств тощий результат , в поле Разрешение записи - 1.
Вычислени указанных функций при значени х аргументов Хр - 1; Х 0;
6 2 1 j 9 1 5 X Q О состоит в следующем.
При нулевом коде па адресном входе блока 2 пам ти программ производитс опрос аргумента Хд, вход щего в первую функцию. Поскольку Хд 1, то на выходе сумматора 16 сформируетс код 00001, этот же код сформируетс на выходах группы триггеров 4 по положительному фронту первого тактового импульса.
По адресу 00001 в блоке 2 пам ти программ записана команды № 2, по этой команде будет анализироватьс значение аргумента X,. Так как Х 1, то следующей будет вьшолн тьс команда , код адреса которой равен 000014 00001 00010 (суммирование производитс в двоичном коде), т.е. команда № 3. По этой команде анализируетс значение Х, так как Х 1, то код
адреса следующей команды равен 00010-i- 00001 00011, т.е. будет выполн тьс команда № 4. Поскольку значение аргумента Х О и, следовательно, 1 , то код адреса следующей команды 0001 1 + 0001- - 00100, т.е. на следующем такте будет выполн тьс команда № 5 и анализироватьс аргумент Х. Так как Xj 1 и входит в ЛБГ с инверсией, то н.а. этом такте на выходе элемента СУММА ПО МОДУЛЮ ДВА 14 сформируетс сигнал О. По этому сигналу на первые входы сумматора 16 через коммутатор 15 поступит код с выходов кода адреса команды блока 2 пам ти программ, т.е.
код 01000. При этом на вторых входах сумматора 16 сформируетс код 00000, а на выходах, следовательно, код 01000, т.е. код адреса команды № 9, котора и будет выполн тьс на следующем такте работы. По этой команде осуществл етс запись результата YO О по адресу j О в группе триггеров 11. При этом на информационных входах группы триггеров 4 сформируетс код 01010 - код адреса команды, котора будет выполн тьс на следующем такте. Это команда № 11 - перва команда программы вычислени функции Y. По этой команде производитс анализ переменной X , так как X , О, то осуществл етс переход к команде № 13, по которой осуществл етс анализ Хд. Поскольку Хд 1, ТО осутце- ствл етс переход к следующей по пор дку команде, т.е. к команде № 14. По команде № 14 проводитс анализ переменной Х и, поскольку О, осуществл етс переход к команде, код номера которой 10000, это код команды № 17, по этой команде осуществл етс запись результата Y О по адресу j 1 и формируетс код адреса первой команды программы 00000.
Форм у л а изобретени
Устройство дл вычислени булевых функций, содержащее мультиплексор , блок пам ти программ, дешифратор , первую и вторую группы триггеров , элемент НЕ, триггер, формирователь импульсов, элемент И, причем выходы кода адреса опрашиваемого аргумента блока пам ти программ соединены с управл ющими входами мультиплексора , первые информационные входы которого соединены с информацион- ными входами устройства, выходы кода адреса результата блока пам ти программ соединены с адресными входами дешифратора, стробирующий вход кото Q 5 0 5 о
5
0
5
рого соединен с выходом И, первьп вход которого соединен с выходом разрешени записи результата блока пам ти программ, второй вход элемента И соединен с выходом формировател импульсов, вход которого соединен с тактовым входом триггера и выходом элемента НЕ, вход которого соединен с тактовьпч входом устройства и тактовьми входами тригге- ров первой группы, установочные входы которых соединены с выходом триггера , информационный вход которого соединен с входом начальной установки устройства, выходы которого соединены с выходами триггеров второй группы, тактовые входы которых соединены с выходами дешифратора, а информационные входы триггеров второй группы соединены с выходом значени результата блока пам ти программ, адресные входы которого соединены с выходами триггеров первой группы, отличающеес тем, что, с целью упрощени за счет сокращени объема пам ти, оно содержит элемент СУММА ПО МОДУЛЮ ДВА, коммутатор и сумматор, причем выход мультиплексора соединен с первым входом элемента СУММА ПО МОДУЛЮ ДВА, второй вход которого соединен с выходом признака аргументов блока пам ти программ, выходы кода адреса условного перехода которого соединены с первыг-ш входами коммутатора, выходы которого соединены с первыми входами сумматора , старшие разр ды вторых входов которого соединены с вторьм информационным входом мультиплексора и с 1Ш1Ной логического нул , вход младшего разр да вторых входов сумматора соединен с выходом элемента СУММА ПО МОДУЛЮ ДВА и с управл ющим входом коммутатора , вторые входы которого соединены с выходами триггеров первой группы , информационные входы которых соединены с выходами сумматора..
11
-X Разр д может принимать любое значение.
1 fe fffJ
V f n t г i 4. t
I 2 Продолжение таблицы
Ч у
Claims (1)
- Форм ул а изобретенияУстройство для вычисления булевых функций, содержащее мультиплексор, блок памяти программ, дешифра- ** тор, первую и вторую группы триггеров, элемент НЕ, триггер, формирователь импульсов, элемент И, причем выходы кода адреса опрашиваемого аргумента блока памяти программ соединены с управляющими входами мультиплексора, первые информационные входы которого соединены с информационными входами устройства, выходы кода адреса результата блока памяти программ соединены с адресными входами дешифратора, стробирующий вход кото рого соединен с выходом элемента И, первый вход которого соединен с выходом разрешения записи результата блока памяти программ, второй вход элемента И соединен с выходом формирователя импульсов, вход которого соединен с тактовым входом триггера и выходом элемента НЕ, вход которого соединен с тактовым входом устройства и тактовыми входами триггеров первой группы, установочные входы которых соединены с выходом триггера, информационный вход которого соединен с входом начальной установки устройства, выходы которого соединены с выходами триггеров второй группы, тактовые входы которых соединены с выходами дешифратора, а информационные входы триггеров второй группы соединены с выходом значения результата блока памяти программ, адресные входы которого соединены с выходами триггеров первой группы, отличающееся тем, что, с целью упрощения за счет сокращения объема памяти, оно содержит элемент СУММА ПО МОДУЛЮ ДВА, коммутатор и сумматор, причем выход мультиплексора соединен с первым входом элемента СУММА ПО МОДУЛЮ ДВА, второй вход которого соединен с выходом признака аргументов блока памяти программ, выходы кода адреса условного перехода которого соединены с первыми входами коммутатора, выходы которого соединены с первыми входами сумматора, старшие разряды вторых входов которого соединены с вторым информационным входом мультиплексора и с шиной логического нуля, вход младшего разряда вторых входов сумматора соединен с выходом элемента СУММА ПО МОДУЛЮ ДВА и с управляющим входом коммутатора, вторые входы которого соединены с выходами триггеров первой группы, информационные входы которых соединены с выходами сумматора..
№ команды Код команды Диализируемый аргумент Xi Программа вычисления лог.функций Код адреса V . Признак X-i . Код адреса команды Код j Код разреш.записи д 1 00000 х0 0000 0 01000 Λ 0 А ' 2 00001 Х< 0001 1 01001 А 0 А 3' 00010 . Хб 0110 0 00100 * 0 А I I1 5()1()331 2Продолжение таблицы№ ко- Код Анализи- манды комаи- руемый ды аргумент Х( Код ад ре саV .Программа вычисления лог.функций YrКод разреш. 'записиКод адреса командыКод jПризнакХз4 0001 1 Хт 01 1 1 1 01001 * 0 А 5 00100 V “2 0010 1 01000 Λ 0 А 6 00101 х3 001 1 1 01001 А 0 А 7 01100 х5 0101 0 01000 * 0 А 8 001 11 Х4 0100 0 01001 А Ό А 9 01000 0 1111 0 01010 0 1 0 10 01001 0 1111 0 01010 0 1 1 1 1 01010 Хз 0001 0 01100 Λ 0 А 12 01011 хг 0010 1 10001 0 А 13 01100 х9 1001 0 01110 * 0 А 14 01101 Хзо 1010 0 10000 А 0 А 15 01 110 Х8 1000 0 . 10000 А 0 А 16 01111 Х7 01 11 0 10001 А 0 А 17 10000 и 1111 0 00000 1 1 0 18 10001 0 1111 0 00000 1 1 1 •^Разряд может принимать любое значение.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU884369489A SU1501033A1 (ru) | 1988-01-26 | 1988-01-26 | Устройство дл вычислени булевых функций |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU884369489A SU1501033A1 (ru) | 1988-01-26 | 1988-01-26 | Устройство дл вычислени булевых функций |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1501033A1 true SU1501033A1 (ru) | 1989-08-15 |
Family
ID=21352034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU884369489A SU1501033A1 (ru) | 1988-01-26 | 1988-01-26 | Устройство дл вычислени булевых функций |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1501033A1 (ru) |
-
1988
- 1988-01-26 SU SU884369489A patent/SU1501033A1/ru active
Non-Patent Citations (1)
Title |
---|
Авторское свидетельство.СССР № 955027, кл. G 06 F 7/00, 1980. Авторское свидетельство СССР № 1339545, кл. G 06 F 7/00, 1986. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5844851A (en) | Anti-noise and auto-stand-by memory architecture | |
US4270181A (en) | Data processing system having a high speed pipeline processing architecture | |
US4326101A (en) | System for recognizing a word sequence by dynamic programming and by the use of a state transition diagram | |
USRE27251E (en) | Memory protection system | |
US2954165A (en) | Cyclic digital decoder | |
US3761882A (en) | Process control computer | |
SU1501033A1 (ru) | Устройство дл вычислени булевых функций | |
KR920003176B1 (ko) | 정렬처리장치의 제어데이타 생성장치 | |
US5155826A (en) | Memory paging method and apparatus | |
US4758983A (en) | Method and circuit arrangement for content controlled addressing of a memory | |
US5412368A (en) | Digital signal comparison circuitry | |
US5386377A (en) | Parallelized borrow look ahead subtractor | |
SU1608641A1 (ru) | Устройство дл вычислени булевых функций | |
US3064895A (en) | Sensing instruction apparatus for data processing machine | |
RU2095846C1 (ru) | Программируемое устройство для логического управления электроприводами и сигнализацией | |
SU1251103A1 (ru) | Функциональный преобразователь | |
SU1022153A1 (ru) | Устройство дл суммировани двоичных чисел | |
SU1418705A1 (ru) | Накапливающий сумматор | |
SU1716507A1 (ru) | Генератор случайных чисел | |
SU1645942A2 (ru) | Устройство дл контрол напр жени | |
SU1092484A1 (ru) | Устройство дл ввода информации | |
SU1173414A1 (ru) | Программное устройство управлени | |
SU1228116A1 (ru) | Устройство дл поиска информации | |
SU187406A1 (ru) | ||
SU572846A1 (ru) | Блок управлени дл запоминающего устройства |