SU1019455A1 - Device for table implementation of polyadic logic functions - Google Patents
Device for table implementation of polyadic logic functions Download PDFInfo
- Publication number
- SU1019455A1 SU1019455A1 SU823374383A SU3374383A SU1019455A1 SU 1019455 A1 SU1019455 A1 SU 1019455A1 SU 823374383 A SU823374383 A SU 823374383A SU 3374383 A SU3374383 A SU 3374383A SU 1019455 A1 SU1019455 A1 SU 1019455A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- output
- register
- input
- address
- outputs
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Description
вход которого соединен с входом блока, а выход - с адресным входом блока пам ти микропрограмм, управл ющий вход которого соединен с первым выходом генератора тактовых импульсов второй выход которого соединен с управл ющим входом регистра микрокоманд , информационный вход которого соединен с выходом блока пам ти микропрограмм , втора группа выходов регистра микрокоманд соединена с вторым выходом блока, третий выход генератора тактовых импульсов соединен с первыми входами первого, второго , третьего, четвертого и п того элементов И, четвертый выход генератора тактовых импульсов подключен к первому входу шестого элемента И, выход которого подключен к четвертому выходу блока, треть группа выходов регистра микрокоманд подключена к вторым входам первого, второго , третьего, четвертого, п того иthe input of which is connected to the input of the unit, and the output - with the address input of the microprogram memory unit, the control input of which is connected to the first output of the clock generator, the second output of which is connected to the control input of the microinstructions register, the information input of which is connected to the output of the microprogram memory block , the second group of outputs of the register of micro-commands is connected to the second output of the block, the third output of the clock generator is connected to the first inputs of the first, second, third, fourth and fifth elements And, th Werth output clock generator is connected to a first input of a sixth AND gate, whose output is connected to the fourth output block, a third group of microinstructions register outputs connected to second inputs of the first, second, third, fourth, fifth and
шестого элементов И, выходы третьего четвертого и п того элементов Иof the sixth elements And, the outputs of the third fourth and fifth elements And
подключены соответственно к первому , третьему и п тому выходам блока.connected to the first, third and fifth outputs of the unit respectively.
Изобретение относитс к вычислительной и управл ющей технике. Мини и микро-ЭВМ наход т широкое применение в системах управлени технологическими процессами и промышленными установками. Основные пре образователи при этом выполн ютс в арифметико-логическом устройстве, приспособленном дл выполнени двухместных арифметических операций с . многозар дными переменными, а также двухместных поразр дных логических операций. Однако при реализации алгоритмов управлени часто возникает задача выполнени многоместных логических функций и систем функций от нескольких двоичных переменных, упакованных в одно слово и образующих вектор двоичных переменных. Функ ции эти могут отличатьс большим раз нообразием и измен тьс как по виду так и по числу аргументов от задачи к задаче. Поэтому использование комбинационных схем с жесткой структуро программируемых логических матриц ли бо функциональных преобразователей на основе. ПЗУ оказываетс неэффектив ным. Известен процессор данных, содержащий обрабатывающее ПЗУ и стек дл хранени промежуточных результатов, содержащий ПЗУ дл логической обработки 1 . Недостатком его вл етс необходимость использовани сравнительно дорогого дополнительного блока ПЗУ с обрамлением, что снижает зкономичность устройства. Кроме того, программирова1 е ПЗУ дл настройки его применительно к решению различных задач вл етс более трудоемкой операцией , чем программирование ОЗУ. Известно устройство хранени и преобразовани информации, в котором обеспечиваетс таблична реализаци поразр дных двухместных логических функций в накопителе ОЗУ 2 Однако дл реализации многоместных логических функций от вектора двоичных переменных при использовании этого устройства также потребуетс программный метод на основе команд условного перехода, недостатком которого вл етс сложность программировани , большой объем программ и констант, необходимых дл выделени переменных и вычислени логических функций и низка производительность . С целью устранени этих недостатков предлагаетс : использовать устройство , обеспечивающее реализацию многоместных логических функций от вектора двоичных переменных на основе таблиц, хранимых в накопителе блока пам ти. Это способствует повышению экономичности, так как основу составл ют наиболее дешевые, надежные и технологичные элементы - запоминающие элементы единого блока пам ти , используемого и дл других целей (хранение программ, констант данных). Кроме того, хранение таблиц в блоке пам ти позвол ет легко их из менйть. Смена таблиц менее трудоемка , чем изменение программ при программн Л реализации логических функций . Предлагаемое устройство обеспе .чивает реализацию функций с помощью одной команды, выполн емой за два обращени к блоку пам ти, что существнно повышает производитель- ность в сравнении с программным способом . Цель изобретени ,- повышение производительности устройства. Поставленна цель достигаетс тем, что устройство дл табличной реализации многоместных логических функций, содержащее блок пам ти,, выход которого подключен к информационным входам регистра операнда и регистра команд, И1 ормацйойный вход подключен к первому входу устройства , а адресный вход - к выхкэду коммутатора адреса, первый инфорндционный вход которого подключен к второму входу устройства, второй инфс рмационн1з1й вход - к выходу адреса первого операнда регистра команд, третий и четвертый информационные входы коммутатора адреса соединены с выходом адреса второго операнда регистра команд и третьим входом устройства соответственно, выходы мпа/рих разр дов регистра операнда соединены с п тым информационным вхо дом коммутатора адреса, шестой информационный вход которого соединен с выходом номера сегмента регистра команд, Дополнительно содержит блок микропрограммного управлени , элементов ИЛИ, коммутатор разр дов дан иых и триггер результата, причем вы ход Kofia операций регистра команд подключен к входу блока микропрограм много у правлени :, первый, втррЫ1«тре Ti, четвертый и п тый выходы которого подключены соответственно к уп равл ющим входам регистра команд, коммутатора адреса, регистр операнд блока пам ти и триггера результата, выход которого подключен к выхо/ устройства, а установочный вход к выходу коммутатора разр дов данных , информационнЁ й вход которого со с выходом блока пам ти, выход старших разр дов регистра операнда подключены к первым входам элементов ИЛИ группы, вторые входы которы соединены с выходом адреса таблицы в сегменте, выходы элементов ИЛИ группы подключены к информационному входу, коммутатора адреса, выход номера разр да регистра команд соединен с управл ющим входом коммутатора разр дов данных. Блок микропрограммного управлени содержит блок пам ти микропрограмм, регистр МИКРОКОМ5Г.НД, регистр адреса микрокоманд, генератор тактовых импульсов и шесть элементов И, причем выходы первого и второго элементов И подключены к первому и второму управл ющим входам регистра адреса микроко манд, перва группа выходов регистра микрокоманд соединена с .первым информационным входом регистра адреса микрокоманд , второй информационный вход которого соединен с входом блока, а выход - с адресным входом блока пам ти микропрограмм, управл ющий вход которого соединен с первым выходом генератора тактовых импульсов, второй выход которого соединен с управл ющим входом регистра микрокоманд, информационный вход которого соединен с выходом блока пам ти микропрограмм, втора группа выходов регистра микрокоманд соединена с вторым выходом блока, третий выход генератора тактовых импульсов соединен с первыми входами .первого, второго, третьего, четвертого и п того элементов И, четвертый выход генератора тактовых импульсов подключен к первому входу шестого элемента И, выход которого подключен к четвертому выходу б тока , треть группа выходов регистра микрокоманд подключена к вторым входам , первого, второго, третьего, четвертого , п того и шестого элементов И выходы третьего, четвертого и п того элементов И подключены соответственно к первому, третьему и п т ому выходам блока. На фиг.1 показана функциональна схема предлагаемого устрсмства; на фиг12 - пример реализации коммута тора ауЕ)реса; на фиг.3 - пример реализации коммутатора разр дов данных; на фиг. - .функциональна схема генератора тактошх импульсов; на фиг.5 временна диаграмма работы устройства; на фиг.6 - преобразовани , св занныес Формированием адреса. Устройство содержит блок J пам ти с выходом 2, адресным входом 3, управл ющим входом 4 и информационным $ входом 5t регистр 6 операнда с выходом 7 младших разр дов, выходом 8 старших разр дов, информационным вхо дом 9 и управл ющим входом 10, регистр 11 команд с выходом 12 кода операций, выходом 13 адреса первого операнда, выходом 1k номера разр да выходом 15 номера сегмента, выходом 16 адреса таблицы в сегменте, информационным входом 17 управл ющим вхо дом 18 и выходом 19 адреса второго операнда, включающего выходы Й-16, коммутатор 20 адреса с информационными входами 21-23 и входом 2k, вклю чающим информационные входы 25-28, управл ющим входом 29 и выходом 30, группу элепентов ИЛИ 31 с выходами 32, выход 33 устройства, коммутатор З разр дных данных с информационным входом 33, управл ющим входом Зб и информационным выходом 37- Триггер 38 результата с управл ющим входом 39, блок kQ микропрограммного управлени , содержащий регистр Ц адреса микрокоманд с информационными входами k2 и 43, управл ющим входом kk, блок пам ти микропрограмм с адрес ным входом , управл ющим входом 47, регистр 48 микрокоманд с информационным входом 9, управл ющим вхо дом 50, первой группой выходов 51, второй и третьей группами выходов 52 и 53, первый, второй, третий, чет вертый, п тый и шестой элементы И 54-59. генератор 60 тактовых импульсов с выходами 61-б. Коммутатор 20 (фиг.2) содержит : группу Мультиплексоров б5, коммутато 3 (фиг.З) мультиплексоры 66-68, генератор 60 (фиг.) содержит генератор б9 импульсов, элемент 70 задержки с входом 71 и выходами 72-7 и элементы И 75 и 7б. Работа устройства синхронизируетс импульсными сигналами на выходах 616 генератора 60 тактовых импульсов. Временна диаграмма цикла Т работы устройства (фиг. 5) зависит от особен ностей блока 1 пам ти, блока kS пам ти микропрограмм и задержек исполь . зуемых элементов. Цикл работы можно разбить, например, на 4 такта (1 , t ,f, Т): 1 такт - чтение микрокоманды из блока 5 пам ти микропрограмм; П такт - запись кода микрокоманды в регистр микрокоманды, фор мирование кода адреса на входе 3 блока 1 пам ти; llj такт - чтение из блока 1 пам ти; 1У такт - запись ко55 да, считанного из блока 1 пам ти;, в один из регистров, В соответствии с этим сигнал на выходе 61 соответствует Т-ому и И-ому тактам, на выходе 62 - 1 У-ому такту, на выходе 63 -W-ьему и 1У-ому тактам , на выходе 6 - |У-ому такту.Выход 61 генератора 60 тактовых импульсов подключен к управл ющему входу 7 блока kS пам ти микропрограмм,выход 62 - к управл ющему входу 50 ре- . гистра t8 микрокоманд, выход 63 - к второму входу элемента И 59, выход б - к вторым входам элементов и . Устройство работает следующим образом . Из счетчика команд (не показан на вход 21 поступает код адреса команды реализации функции f(x,X2, х).Команда считываетс из блока 1 пам ти по адресу, подаваемому на вход 3 через коммутатор 20 с входа 21, « записываетс в регистр 11 команд. В регистр по входу k2 записываетс код адреса 1-ой микропрограммы реализации многоместных логических функций. По адресу,поступающему с выхода 3 регистра 11 команд, из блока 1 пам ти считываетс операнд (вектор .1) и записываетс в регистр 6 операнда. В регистр адреса микрокоманд по входу k3 записываетс адрес П-ой микрокоманды. В соответствии с приведенными на Фиг.1 соединени ми код на входе 2 Коммутатора 20 адреса состоит из k-x частей: X,&«H C2gCvHig:f3oXi-,i:w2. OX2 i:Vyii6-.43o) где C gt ze- Ф РОванный код, подаваемый на . ВХОД 28; Xj.,,i.,HD г V jgCHii -.ll, (т. Ьб t 63-Y,fetMi 6-43,8 CvMeM, (№4 101 g); i3-Yiitim-,: 13, СкитгИ1.), де - код на i-м входе; V: - код J, 1ф - номера позиций э фиг1; о - знак конкатенации, Числа разр дов у выделенных групп еременных должны выбиратьс из слеующих условий: Oeog,NC }Г-- °еа с -. e l TMOKc , 1- «a5 i-,, где Ы, n - число меек и число разр дов в блоке 1 пам ти; af - целое удовлетвор ющее неравенствам as3att Q4 i тмакс мми максимальное и минимальное число разр дов в векторе двоичных переменных, дл которого можно вычисл ть логическую функ цию табличным способом. Рассмотрим пример выбора чисел разр дов. Пусть N 2 ijK чеек,m 3, n; 32. Тогда получим: m 3eog- Nt-n КУ)г5 1 Ь Wg-5 ч Необходимость вычислени различ«« ных многоместных логических функций более чем от 8-ми переменных в задачах управлени возникает сравнительно редко. Таблицы при 8 станов тс громоздкими и выделение сегментов ОЗУ дл их хранени экономически нёоправдлны. При необходимос ти, в тех случа х, когда число аргументов 40 8,логические функции можно реализовать программно-таблич ным методом. Использу выделение переменных и команды условного перехода по их значени м, задача может быть Сведена к вычислению нескольких восьместных функций. Двухместные функции можно реализовать программным способом либо ис пользовать избыточное представление в виде: U,,x.i)(x-,,Xa( записи таблиц реализуемых функций используютс один или несколько сегментов.накопител блока 1 пам ти, содержащих по N 2-гмок чеек. ., 8, N, 256 чее Таблица восьмиместной функции ра Метаетс в запоминающих элементах, принадлежащих одному разр ду Сегме та из 256 чеек. Адрес чейки в се 1 8 менте соответствует набору двоичных переменных, на которых определена функци , В одном разр де этого же сегмента могут быть размещены 2 таблицы семиместных , k таблицы - шеСтиместных, 8 таблиц .- п тиместных, 1б таблиц четырёхместных и 32 таблицы трехместных функций. Всего в одном cei- менте может быть записано следующее число таблиц: KgisG+k ne k К К.,,, где Кц - число таблиц - местных функций, f 3-8, Максимальное число сегментов накопител блока 1 пам ти, которое может быть использовано дл записи таблиц реализуемых функций, определ етс одомис,а 2, В рассмотренном примере УСТРОЙСТВО может выполн ть команду реализации многоместной логической функции от вектора двоичных переменных . При этом используетс следующий фэрмат .команды, имеющей 5 полей соответственно числу выходов в регистре 11 команд. В поле выхода 12 указываетс код операции; в поле выхода 13 - адрес операнда; в поле выхода 1 - номер разр да накбпител , в котором записана таблица реализуемой функции; в поле выхода 15 номер требуемого сегмента накопите-: л из числа выделенных дл хранени таблиц; в поле выхода 1б - адрес таблицы внутри сегмента при числе аргументов о Т монетеКод : 1 1 У бС5:ГЗ адреса таблицы внутри сегмента, указываемый в формате команды, определ етс следующим образом. При числе аргументов т., 8: Y-16 5-Ч QOO QПри Пд 7: Y eL5:lD , о 256(0,1. В одном разр де сегмента ОЗУ из 256 чеек может быть записано 2 таблицы семиместных функций. Старший разр д 2- кода Y определ ет положение требуемой аблицы в выделенном 9 сегменте. Сегмент выбиваетс кодом ° 27 3. прй1% .43-2524000 , Wa l5Z425(OA-f a5: fl6t5H3-j приWvQ-i-4ibt5:43- 25Z4Z Z ,3,Z,Z5i4 aZiGM8 последнем случае код Y| может указывать положение одной из 32 таблиц трехместной логической функции . Таким образом, код в формате команды и группа 31 элементов ИЛИ обеспечивают адресацию таблиц функций от различного числа переменных при упакорке этих таблиц в сегменте из 256 чеек. Следует отметить, что при старше 8 - т разр дов в регистре 6 операнда содержит нули. А в коде Y. (5:t) могут быть отличными от нул только те разр ды, которые соответствуют отсутствующим в регистре б двоичным переменным старших разр дов. Работу устройства при выполнении команды реализации многоместной логи ческой функции рассмотрим на примере использу иллюстрацию преобразований св занных с формированием адреса и в делением разр да считанного слова из сегмента таблиц, представленную на фиг.6. Пусть требуетс реализовать трехместную функцию: 1 XiCBV-i Пусть код вектора х., х, ) хранит , с в чейке с адресом А1. Допустим, что блок.. 1 пам ти имеет емкость N. К и дл хранени таблиц реализуемых функций используетс послед ний сегмент, содержащий 256 чеек с двоичными адресами: (111.100.000.000 ..( ri1.111.111.111). Таблица реализуемой функции занимает 8 чеек. Допустим, что дл ее хранени используетс 17-ый разр д выделенного сегмента. В этом разр де, 256 бит, и могут быть размещены и другие таблицы. Пусть под таблицу ре ализуемой функции в выбранном сегмен те выделены 8 чеек с номерами: (11. 000),... (11 .111). .6 схема 55 тически показано положение таблицы в накопителе блока 1 пам ти. В поле }g команды-должен быть указан код адреса таблицы реализуемой функции f в выделенном сегменте из 256 чеек. В нашем случае это код номера восьмерки чеек (одной из 32-ух. В соответствии с прин тым местом положени таблицы XifitSr-D-OOOH. В поле команды до.пжен быть указан код номера сегмента из 256 йчеек, который исгюльзован дл хранени таблиц. При числе разр дов этого пол можно указать различных сегмента. Поскольку дл записи таблицы функции f использован последний сегмент с номером 11, то Y (2:1)11. В поле команды указываетс код номера разр да, в котором записана таблица. В нашем примере- это код 17-го разр да: 10001 .Поскольку прин то, что дл хранени таблиц отводитс конец накопи ,тел , то фиксированный код на входе 28: C2.g2:1 П. Этот код определ ет область пам ти в примере емкостью tK , в которой могут быть выделены сегменты по 256 чеек дл хранени таблиц. Рассмотрим эффект, св занный с повышением производительности. При програм(1ном способе реализации вычисление функции от 6-и аргументов потребуетс при распаковке аргументов не менее 6 команд, кажда из которых потребует не менее 3-х обращений к ОЗУ, при вычислении ФУН.КЦИИ потребуетс не менее 6-и команд условного перехода, выполнение каждой из которых потребуетс не менее 2-х обращений к ОЗУ. Таким образом, врем вычислени шестиместной функции можно представить так: (Щ -ЬOro, где Тд - врем цикла обращени к ОЗУ. В предлагаемом устройстве выполнение команды реализации шестиместной логической функции, включа выборку команды, потребует .The invention relates to computing and control technology. Mini and micro computers are widely used in process control systems and industrial installations. In this case, the main converters are executed in an arithmetic logic unit adapted to perform double arithmetic operations. multi-variable variables, as well as two-place bitwise logical operations. However, the implementation of control algorithms often involves the task of performing multi-place logical functions and systems of functions of several binary variables, packed in one word and forming a vector of binary variables. These functions can be very diverse and vary both in appearance and in the number of arguments from task to task. Therefore, the use of combinational circuits with rigid structured programmable logic arrays or functional based transducers. ROM is ineffective. A data processor is known that contains a processing ROM and a stack for storing intermediate results, which contains a ROM for logic processing 1. Its disadvantage is the need to use a relatively expensive additional block of ROM with a frame, which reduces the cost-effectiveness of the device. In addition, programming a ROM for setting it up for solving various tasks is a more laborious operation than programming a RAM. A device for storing and transforming information is known, which provides a table implementation of binary double logic functions in RAM 2 memory. However, to implement multi-seat logical functions from a vector of binary variables using this device, a program method based on conditional jump commands is also required, the lack of which is complexity programming, a large amount of programs and constants necessary for extracting variables and calculating logical functions and low n performance In order to eliminate these drawbacks, it is proposed: to use a device that provides implementation of multi-place logical functions from a vector of binary variables based on tables stored in a memory storage unit. This contributes to economic efficiency, since the basis is made up of the cheapest, most reliable and technologically advanced elements - the storage elements of a single memory block used for other purposes (storing programs, data constants). In addition, storing tables in a storage unit makes them easy to manage. Changing tables is less time consuming than changing programs with software implementation of logical functions. The proposed device provides the implementation of functions with the help of a single command, which is performed in two accesses to the memory unit, which significantly improves performance compared to software. The purpose of the invention is to improve the performance of the device. The goal is achieved by the fact that the device for a tabular implementation of multi-seat logical functions, containing a memory block whose output is connected to the information inputs of the operand register and command register, I1 is connected to the first input of the device, and the address input to the output switch of the address switch, The first information input of which is connected to the second input of the device, the second info input input - to the output address of the first operand of the command register, the third and fourth information inputs of the address switch connected to the output of the address of the second operand of the command register and the third input of the device, respectively, the outputs of the digital bits of the register of the operand are connected to the fifth information input of the address switch, the sixth information input of which is connected to the output of the segment number of the command register, additionally contains a firmware control block, the OR elements, the switch of the data bits and the result trigger, the output of the Kofia command register operations connected to the input of the microprogram block of the multi-station: first, Vr11 “ti Ti, the fourth and fifth outputs of which are connected respectively to the control inputs of the command register, the address switch, the register operand of the memory block and the result trigger, the output of which is connected to the output / device, and the setup input to the output switch of the data bits whose information input with the output of the memory block, the output of the higher bits of the register of the operand is connected to the first inputs of the elements of the OR group, the second inputs of which are connected to the output of the address of the table in the segment, the outputs of the elements of the OR group are connected to the information onnomu input switch addresses, discharge instruction register output connected to a control input of the switch data bit rows. The microprogram control block contains the microprogram memory block, the MICROCOM5G.ND register, the microinstructor address register, the clock pulse generator and six AND elements, the outputs of the first and second AND elements are connected to the first and second microcontrol addresses register, the first group of register outputs microinstructions connected to the first information input of the register of the microinstructions address, the second information input of which is connected to the input of the block, and the output to the address input of the microprogram memory unit that controls the input of which is connected to the first output of the clock pulse generator, the second output of which is connected to the control input of the micro-register register, whose information input is connected to the output of the microprogram memory unit, the second group of outputs of the micro-register register is connected to the second output of the block, the third output of the clock generator is connected to the first inputs of the first, second, third, fourth and fifth elements And, the fourth output of the generator of clock pulses connected to the first input of the sixth element And, the output of which connected to the fourth output b of the current, the third group of outputs of the register of microcommands is connected to the second inputs of the first, second, third, fourth, fifth and sixth elements AND the outputs of the third, fourth and fifth elements AND are connected respectively to the first, third and fifth block outputs. Figure 1 shows the functional diagram of the proposed device; FIG. 12 shows an example of the implementation of an aUE) RES switch; 3 shows an example implementation of a data bits switch; in fig. - .functional circuit of the clock pulse generator; figure 5 is a temporary diagram of the operation of the device; 6, transformations associated with Address Formation. The device contains a memory J with output 2, address input 3, control input 4 and information input 5t register 6 operand output 7 lower bits, output 8 high bits, information input 9 and control input 10, register 11 commands with output 12 of the operation code, output 13 of the address of the first operand, output 1k of the bit number, output 15 of the segment number, output 16 of the address of the table in the segment, information input 17 of the control input 18 and output 19 of the address of the second operand, including the outputs Y 16, the switch 20 addresses with information and inputs 21-23 and input 2k, including information inputs 25-28, control input 29 and output 30, a group of elements OR 31 with outputs 32, an output 33 of the device, a switch 3 of the bit data with information input 33, a control input ST and information output 37- Result trigger 38 with control input 39, microprogram control block kQ, containing the microinstructor address register C with information inputs k2 and 43, control input kk, microprogram memory block with address input control input 47 , register of 48 microinstructions with information input 9, control input 50, first group of outputs 51, second and third groups of outputs 52 and 53, first, second, third, fourth, fifth and sixth elements And 54-59. 60 clock pulse generator with 61-b outputs. The switch 20 (FIG. 2) contains: a group of Multiplexers B5, a switch 3 (FIG. 3) multiplexers 66-68, a generator 60 (FIG.) Contains a generator B9 of pulses, a delay element 70 with an input 71 and outputs 72-7, and elements AND 75 and 7b. The operation of the device is synchronized with pulse signals at the outputs 616 of the generator 60 clock pulses. The timing diagram of the cycle T of the device operation (Fig. 5) depends on the features of memory block 1, kS memory of firmware, and delays used. zyuyh elements. The work cycle can be divided, for example, into 4 clock cycles (1, t, f, T): 1 clock cycle — reading the microcommand from block 5 of the microprogram memory; T clock - writing the micro-command code to the micro-command register, generating the address code at the input 3 of the 1 memory block; llj tact — reading from memory block 1; 1U clock - recording of the code 55, read from memory block 1 ;, into one of the registers. Accordingly, the signal at output 61 corresponds to the T-th and I-th cycles, at output 62 - 1 to the U-th cycle, at the output 63-W-th and 1-th clock, output 6 - | U th cycle. Output 61 of the generator 60 clock pulses are connected to control input 7 of the kS memory of the firmware, output 62 to control input 50 of the re-. gistra t8 microinstructions, output 63 - to the second input of the element And 59, output b - to the second inputs of the elements and. The device works as follows. From the command counter (not shown, input 21 receives the code of the command address for implementing the function f (x, X2, x). The command is read from memory block 1 at the address supplied to input 3 through switch 20 from input 21, "is written to register 11 commands. The address code of the 1st firmware implementation of multi-seat logic functions is written to the register at input k2. An address (vector .1) is read from the address coming from the output 3 of the register 11 commands 11, and stored in memory 6 of the operand. the microinstructor address register at input k3 is written to the address of the nth micro Commands. In accordance with the connections given in FIG. 1, the code at input 2 of the Switch 20 address consists of kx parts: X, & H C2gCvHig: f3oXi, i: w2. OX2 i: Vyii6-.43o) where C gt ze- F ROW code supplied to. INPUT 28; Xj. ,, i., HD g V jgCHii -.ll, (t. Bb t 63-Y, fetMi 6-43,8 CvMeM, (# 4 101 g); i3-Yiitim- ,: 13, SkitI1.) , de - code on the i-th input; V: - code J, 1f - position numbers e fig1; o is the sign of concatenation. The numbers of bits for the selected groups of variables must be chosen from the following conditions: Oeog, NC} D - ° ea s -. e l TMOKc, 1- “a5 i- ,, where Ы, n is the number of meek and the number of bits in memory block 1; af is an integer satisfying the as3att Q4 i tmax mmi inequalities of the maximum and minimum number of bits in the binary variable vector for which the logic function can be calculated in tabular fashion. Consider an example of choosing numbers of bits. Let N 2 ijK cells, m 3, n; 32. Then we get: m 3eog-Nt-n KU) r5 1 L Wg-5 h. The need to calculate different “multiplace logical functions from more than 8 variables in control tasks arises relatively rarely. The tables at 8 become cumbersome and allocating RAM segments for their storage is economically unjustified. If necessary, in those cases when the number of arguments is 40 8, logic functions can be implemented using a program-tabular method. Using the selection of variables and conditional jump instructions by their values, the task can be reduced to calculating several eight-place functions. Double functions can be implemented programmatically or use a redundant representation in the form: U ,, xi) (x - ,, Xa (records of tables of implemented functions use one or more segments of the memory block 1 memory containing N 2-Gmok cells). ., 8, N, 256, the table of the eight-place function is thrown in memory elements belonging to one bit of a Segmot of 256 cells. The address of a cell in one 1 8 cops corresponds to the set of binary variables on which the function is defined, In one bit of the same segments can be placed 2 tons seven-place tables, k-tables are six-seat, 8.-p tables, 1b quadruple tables, and 32 tables of triple functions. In total, the following number of tables can be written: KgisG + k ne k К К. ,,, where Kc - the number of tables — local functions, f 3-8; The maximum number of segments of the storage unit of memory 1, which can be used to record the tables of implemented functions, is determined odomis, and 2, In the considered example, the DEVICE can execute the command to implement a multi-seat logical function from the binary variable vector . In this case, the following farmat command is used, having 5 fields according to the number of outputs in the register of 11 commands. The exit field 12 indicates the opcode; in output field 13 - the address of the operand; in output field 1, the number of the bit number in which the table of the implemented function is written; in exit field 15, the number of the required segment of the accumulator: 1 out of the tables allocated for storage; in the output field 1b, the address of the table within the segment with the number of arguments about T coin Code: 1 1 At BS5: The HS of the address of the table within the segment specified in the command format is defined as follows. With the number of arguments t., 8: Y-16 5-H QOO QPri Pd 7: Y eL5: lD, about 256 (0.1. In one bit of the RAM segment of 256 cells, two tables of seven-seater functions can be written. Senior bit The 2-Y code determines the position of the required ablitz in the selected 9th segment. The segment is knocked out by the code ° 27 3. pry1% .43-2524000, Wa l5Z425 (OA-f a5: fl6t5H3-j with WvQ-i-4ibt5: 43-25Z4Z Z , 3, Z, Z5i4 aZiGM8, the latter case, the Y | code can indicate the position of one of the 32 tables of a triple logic function. Thus, the code in the command format and a group of 31 elements OR provide for the addressing of the function tables from different variables when packing these tables in a segment of 256 cells. It should be noted that if over 8 - m bits in the register 6 of the operand contains zeros. And in the code Y. (5: t) only those bits can be different from zero, which correspond to the binary high-order binary variables absent in register B. The operation of the device when executing the command to implement a multi-place logical function is considered using the illustration of transformations associated with the formation of an address and dividing the bit of a read word from a table segment, represented by an example shown in FIG. Let it be required to implement a triple function: 1 XiCBV-i Let the vector code x., X,) store, with the cell with the address A1. Assume that memory block .. 1 has a capacity of N. K and for storing the tables of the functions implemented, the last segment containing 256 cells with binary addresses is used: (111.100.000.000 .. (ri1.111.111.111). The table of the implemented function takes 8 cells. Assume that the 17th bit of the selected segment is used to store it.This bit is 256 bits and other tables can be placed. Let 8 cells with the following table be allocated to the table of the function to be implemented: (11. 000), ... (11 .111). .6 diagram 55 is a diagram of the position of the table in the memory of memory block 1. In the field g of the command, the address code of the table of the realized function f in the selected segment of 256 cells must be specified. The code for the segment number of 256 cells, which is used to store tables, can be specified in the field of the command doc.Please specify different segments for the number of digits of this field. Since the last segment with the number 11 is used to write the table of the function f, then Y (2: 1) 11. The command field indicates the code of the position number in which the table is recorded. In our example, this is the 17th bit code: 10001. Since it was assumed that the end of the accumulated body was set aside for storing the tables, then the fixed code at input 28: C2.g2: 1 P. This code defines the memory area in an example with a capacity tK, in which segments of 256 cells can be allocated for storing tables. Consider the effect of increasing productivity. In the program (in the first method of implementation, the calculation of the function of 6 arguments will require at least 6 instructions to unpack the arguments, each of which will require at least 3 RAM calls, and at least 6 conditional branch instructions will be required when calculating the FUN.KTsI each of which requires at least 2 calls to the RAM. Thus, the calculation time of the six-place function can be represented as follows: (U – Oro, where Td is the cycle time for accessing the RAM. In the proposed device, the command to implement the six-place logical function, Key selection commands require.
Среднее врем Т выполнени операции в известном устройстве;The average time T to perform an operation in a known device;
T Pit- c - U-POtT Pit- c - U-POt
Ср,Wed,
где Р. - веро тность по влени в программах задачи вычислени многоместных логических функций;where R. is the probability of the appearance in programs of the task of calculating multiplace logical functions;
t - среднее врем выполнени t is the average execution time
Р одной операции. Примем t(-p , R, 0,01. Получим Т 0,01-30 ч- (1-0,01) ц TO it,26 VP single operation. Take t (-p, R, 0.01. We get T 0.01-30 h- (1-0.01) c TO it, 26 V
Аналогично в предлагаемом устройствеSimilarly, in the proposed device
,,)tcp-Л 9Toг5,,) tcp-L 9Tog5
,15,15
ВAT
пP
11eleven
6565
6565
1515
3535
6666
Фиг.ЗFig.Z
..
6565
6565
Фиг.11
6868
§3§3
gifgif
ФигЛFy
«« 4v"" 4v
«ч «л"H" l
TlTl
1 .....IL 1 ..... IL
Фчг 5Fchg 5
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU823374383A SU1019455A1 (en) | 1982-01-04 | 1982-01-04 | Device for table implementation of polyadic logic functions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU823374383A SU1019455A1 (en) | 1982-01-04 | 1982-01-04 | Device for table implementation of polyadic logic functions |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1019455A1 true SU1019455A1 (en) | 1983-05-23 |
Family
ID=20989698
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU823374383A SU1019455A1 (en) | 1982-01-04 | 1982-01-04 | Device for table implementation of polyadic logic functions |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1019455A1 (en) |
-
1982
- 1982-01-04 SU SU823374383A patent/SU1019455A1/en active
Non-Patent Citations (1)
Title |
---|
1. Патент US If i 092730, кл. G 06 F 15/00, опублик. 1978. 2. Авторское свидетельство СССР № , кл. G 06 F 15/00, 1978 (прототип). * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3689895A (en) | Micro-program control system | |
US3303477A (en) | Apparatus for forming effective memory addresses | |
US3226694A (en) | Interrupt system | |
US4001565A (en) | Digital interpolator | |
US3325785A (en) | Efficient utilization of control storage and access controls therefor | |
US4047245A (en) | Indirect memory addressing | |
US3939452A (en) | Desk-top electronic computer with MOS circuit logic | |
US4598358A (en) | Pipelined digital signal processor using a common data and control bus | |
SU1019455A1 (en) | Device for table implementation of polyadic logic functions | |
CN101025730A (en) | Reconfigurable circuit | |
RU2066067C1 (en) | Central processor for multiple-processor computer system | |
US3201760A (en) | Information handling apparatus | |
JPS61195015A (en) | Digital filtering circuit apparatus for image signal | |
US4947358A (en) | Normalizer for determining the positions of bits that are set in a mask | |
JPS6285343A (en) | Memory reading-out circuit | |
US4415890A (en) | Character generator capable of storing character patterns at different addresses | |
RU2254603C1 (en) | Device for building programmable digital microprocessor systems | |
SU993262A1 (en) | Information processing device | |
RU2042182C1 (en) | Microprocessor for information input and output | |
JPS58151644A (en) | Digital operating device | |
US3343137A (en) | Pulse distribution system | |
SU1120340A1 (en) | Control vector computer system | |
SU960954A1 (en) | Logic memory device | |
SU742939A1 (en) | Address shaping device | |
SU1513443A1 (en) | Data processing device |