1
где f., , f,,,j , f;,,,, , fu,,J.i -- зна чения функции Z, соответствующие парам значений узловых точек аргумен- тов Х; Yi , X,,-, Y. , X,Y,,i ,X,,,Y,.
ближайшим к точкам Х, ph, Y- + qk, h и k - посстоянный шаг размещения узловых, точек по осям X и Y соответственно, Og:qtlHO pi1- переменные, определяющие положение аргументов X и Y в пределах шага соот- аетственно, X,, Yj - ближайшие значения узловых точек по осям X и У
247893
соответственно, меньших аргументоз X и Y соответственно. Интерполятор содержит счетчики 1 и 2 старших разрядов первого и второго аргументов, регистры 3 и 4 младших разрядов первого и второго аргументов, блок 5 постоянной памяти, сумматор 6, три сумматора 7, 8, 9 по модулю два, мультиплексор 10, умножитель-сумматор 11, буферный регистр 12, выход которого является выходом интерполированного значения функции. 1 ил.
Интерполятор функций предназначен для использования в качестве аппаратного расширителя в ч икропроцессор ных системах и может найти применение в приборостроении, управляющих и информационно-измерительных систел ax, |
Цель изобретения - повьшение быстродействия за счет независимого формирования слагаемых и сомножителей в интерполяционном выражении.
На чертеже изображена схема предлагаемого устройства.
Предлагаемое устройство содержит счетчики 1 и 2 старших разрядов первого и второго аргументов, регистры 3 и 4 младщих разрядов первого и второго аргументов,, блок 5 постоянной памяти, сумматор 6, сумматоры 7, 8, 9 по модулю два., мультиплексор 10, умножитель-сумматор 11, буферный регистр 12, и блок управления, который образуют триггеры 13 и 14, элементы И 15-22, элементы ИЛИ 23-255 элемент НЕ 26.
Устройство работает следующим образом.
; При приеме аргументов X и Y они разделяются на группы старших разрядов X и Y, которые заносятся в счет„чики 1 и 2, и группы младших разрядов, которые заносятся в регистры 3 и 4 соответственно. Выполнение интерполяции функции двух аргументов осуществляется по интерполяционной формуле
Z
«.f(X. -f ph, Y. + qk)
-(1 - Р - q)f,; pf;,,, + qf.,.,.,, если р + q .с 1
(-1 + Р + q)fi.,,,4,, + (1 - p)f
и 1,J
+ (1 - q)fi,,., если Р + q 1,
.
i4j, j, i i ,j4iJ ,j4i
значения функции, соответствующие парам значений узловых точек аргу- ментов X,Y, , X.J, , Х, Y,, , X;,, Y., ближайшим к XI + ph, Y ; + qk, где h - постоянный шаг размещения
узловых точек по оси Х-, k - постоянный шаг размещения
узловых точек по оси Y; - переменная, определяющая положение аргумента Y в пределах шага квантования; переменная, определяющая положение аргумента X в пределах шага квантования; X. - ближайшее значение узловой точки по оси X, меньшее аргумента XJ
Y - ближайшее значение узловой точки по оси YS меньшее аргумента Y
В интерполяторе функций X| и Yj представляют собой значения старших разрядов аргументов Х. и Y , заносимые в счетчики t и 2 соответственно. Коды, считываемые с этик счетчиков,.
выступают в роли адреса блока 5 постоянной памяти, адресное слово кото- рого формируется путем объединения значений X, и Y., считьшаемых со счетчиков. Значения Р и q представляют собой младшие разряды кодов аргумен3
тов X и Y, считываемые с регистро 3 и 4 соответственно.
Процедура интерполяции значений функции двух переменных выполняется в предлагаемом устройстве за три так та. Первый такт начинается после выдачи сигнала на вход пуска устройства, синхронизируемого синхросерией С При этом триггеры 13 и 14 устанавливаются в нулевое состояние, буферный регистр 12 обнуляется, а в счетчики
1и 2, регистры 3 и 4 заносятся аргументы X и Y, разделенные на группы разрядов Xj., Х„, Yj , Y. Управляющий код 00, устанавливаемый на триг- герах 13 и 14, поступает на логические элементы на входах счетчиков 1,
2и обеспечивает увеличение на единицу кода в счетчике. Управляющий сигнал на вход +1 счетчика 1 поступает
с выхода элемента И 19, на который поступают сигналы с инверсных плеч триггеров 13 и 14. Такое изменение кода счетчика 1 обеспечивает адресацию узловой точки j , в блоке 5 постоянной памяти. Коды входных регистров 3 и 4 поступают на входы первого и второго операндов сумматора 6 и суммируются в нем. Если сумма р + , то в первом такте нужно вы-
числить интерполяционный член .р если р + , то вычисляется (1 - р)- f/ j .Значение указанного неравенства определяется по разряду переноса сумматора 6, который поступает на третий вход управления мультнплек- сора 10 и на элементы 26, 16 и 18. Если разряд переноса равен О, то р + , если разряд переноса равен 1, то р + . В зависимости от значения разряда переноса на выход М1 льти- плексора 10 поступает код с входа А или с входа В. Соответственно с входа А поступает код 1 - р, ас входа В -. код р. Последний поступает с прямого выхода регистра 3, а код 1 - р формируется путем прибавления единицы в младший разряд инверсии кода р, снимаемого с инверсного выхода регистра 3. Это преобразование осуществляется в сумматоре по модулю два 7. Результат первого такта запоминается в буферном регистре 12 при поступлении синхросигнала G, который устанавливает также в триггере 13 код 1, т.е код второго такта. Собственно умножение значения узловой точки функции на код, считываемый с мультиплексора ;10, производится асинхронно и не тре1
в
- 5 . 10
15
о,„
20
25
40
247893. 4
бует сигналов управления. Для реализации такого матричного умножителя - сумматора 11 целесообразно использование матричного умножителя типа К531ИК1.
Во втором такте производится вы- числение следующего частичного произведения и суммирование его с результатом, полученным в первом такте. Частичное произведение, вычисляемое во втором такте, имеет вид (1 - - Р - q) f,j , если .бит переноса на выходе сумматора 6 равен нулю, и (р н- q - 1)fi+i,j,-i, если бит переноса на выходе сумматора 6 равен единице. Соответствующее изменение адреса памяти обеспечивается путем уменьшения кода счетчика 1 на единицу, если бит переноса равен нулю, или путём увеличения кода счетчика 2 на единицу, если бит переноса равен единице. Уменьшение кода счетчика 1 ос тцествляется подачей управляющего сигнала на вход счетчика 1 через элемент И 15 и элемент ИЛИ 23. Увеличение кода счетчика 2 осуществляется подачей управляющего сигнала на вход +1 этого счетчика через элемент И 18 и элемент ИЛИ 24. Сомножитель (1 - р - q) поступает на информационный вход С мультиплексора 1JI с выхода сумматора 8 по. модулю два, где к инверсии кода р т q добавляется единица младшего разряда. Сомножитель р - q - 1 поступает с прямого выхода сумматора 6 при игнорировании единицы переноса. Прямой выход сумматора 6 соединен в устройстве с информационным входом D мультиплексора 10. В зависимости от значения бита переноса на выходе сумматора 6 управляю1ций код на входе управления мультиплексора 10 обеспечивает подачу на выход мультиплексора 10 либо кода с входа С, либо кода с входа D, что и обеспечивает получение на входе Y матричного умножителя-сумматора 11 искомого сомножителя. Результат второго такта запоминается в буферном регистре 12 при поступлении синхросигнала С, который устанавливает также в триггерах 13 и 14 код 01, т.е. код третьего такта.
4S
50
55
В третьем такте производится вычисление следующего частичного произведения и суммирование его с результатом, полученным во втором такте. Частичное произведениеj вьгчисляе мое в третьем такте имеет вид q« fj j. j если: p + или (1 - q)s ftf.j., если p 4- „
Выбор табличного значения функции пооизводится следую1р1м образом
Если бит переноса на вьссоде- сут.4ма тора 6 равен нулю,, то в счетчике I код не изменяется, а в счетчике 2 через элемент И 17 и элемент ИЖ 24 поступает управляющими сигнал на вход +1, Если бит переноса ракен единице то управляющий сигнал постутгает на вход -1 счетчика 1 через элемент И 16 и элемент ИЛИ 23 Сомножитель q или сомножитель 1 - q га)ступает на вход У матричного умнозю гтеля 1 1 либо с входа ЕЭ ллбо с входа мультиаяексо- ра 10 в зависимости от значения бита переноса. Формирование кода 1 - q в сумматоре 9 по модулю два осу1о;еств.ляется та.юке как и в суг-маторах 7 н 8« Результат третьего такта запоьшна- ется в буферном регистре 12 при поступлении синхросигнала С Поскольку третий такт это последний такт то .поступление синхросигнала на вход С буферного регистра 12 не должно сопровождаться изменением кода з триггерах 13 и 14,., Это обеспечивается в устройстве следующим образом,.
После аервь,сх: двух тав;тов синхро- сигнш Ш поступает с выхода элеме,нта И 21J который в третьем такте блокируется сигналом с ,ииверсного Ш шча триггера 14 „ В связи с э ,окм после третьего такта синхросигнала на счет вход триггера 13 не иост л хает. На вход С буферного регистра 12 симх . росигнал поступает через эо1емвнт И 22, который открывается сигналом с прямого выхода триггера 14, Выходы элементов И 21 и 22 соедь:неяь с , дом С бу ферно,го регистра 12 через элемент ИЛИ 25, Признаком того,, что в устройстве наступит последний такт вычисленийS является сигнал Готов ,,, считываемьй с прямого вьпсода триггера 14„ При необходимости получения стробированного признака готовности в качестве такового признака может быть использован сигнал на выходе элемента И 22,
Таким образомя в результате опиг санных тактов интерполяции на выходе буферного pe-rHC fp,s. 12 сфор мровап ис комый результат.
0
0
;$
Ф о р м у л а и 3 о б р е т е н и я
Инте рполятор функций дв5 аргументов, содержащий счетчики старших разрядов перв.ого и второго аргументов, блок постоянной памяти, регистры младших разрядов первого н второго аргументов, сумматор, буферный регистр блок управления, выходы счетчиков старпшх разрядов первого и рого аргументов подключены к первому и .второму адресным входам блока постоянной памяти прямые выходы регист- ров младших разрядов первого и второго аргументов подключены к входам первого и второго операндов сумматора, причем блок управления содержит два триггера, пять элементов И, три элемента ИЛИ и элемент НЕ, прямые выходы первого и второго триггеров подключены к первьи входам первого и второго элементов И,, о т л и ч а - 10 щ и и с я тем,, что, с целью по- вы1 1ения быстродействия за счет независимости формирования слагаемых . и сомножителей в интерполяционном выражешш, в него введены умножитель- сумматор, мультиплексор, три сумматора по модулю два, входы младших. разрядов первых операндов которых подключены к шине потенциала логической единицы интерполятораэ входы вторых операндов с первого по третий сумматор по модулю два подключены к инверсным выходам регистров младших разрядов первого и второго аргументов и к HHBepcHONry выходу суммы сумматора, соответственно с первого по шестой информационные входы мультиплексора подключены к выходам с , первого по третий сут- матор по модулю цва, прямым выходом регистров млад- 1ЛИХ разрядов первого и второго аргументов и к прямому выходу суммы су.мматора соответственно, выходы блока постоянной памяти с культи- плексора подключены к входам первого и второго сомножителей у шожителя - .,атора5 выход которого подключен к информационном - входу буферного регистра,, вьиод которого подключен к входу слагаемого умножителя-сумматора и является выходок значения функции интерполятора, информационные входы счетчиков старших разрядов первого и второго аргументов являются входами старших разрядов первого и второго аргументов интерполятоpa, информационные входы регистра младших разрядов первого и второго Аргументов являются входами младших разрядов первого и второго аргументов интерполятора, причем в блок управления дополнительно введены три элемента И, выходы первого и второго элементов И подключены к первому и второму входам первого элемента ИЛИ, выход которого подключен к входу режима вычитания счетчика старших разрядов первого аргумента, прямые выходы первого и второго триггеров подключены к первому и втором входам адреса мультиплексора и к первым входам третьего и четвертого элементов И соответственно, выходы которых подключены к первому и второму входам второго элемента ИЛИ, выход кото- грого подключен к входу режима суммирования счетчика старших разрядов второго аргумента, выход переноса сумматора подключен к третьему входу адреса мультиплексора, к вторым входам второго и третьего элементов И и через элемент НЕ к вторым входам первого и четвертого элементов И, инверсный и прямой выходы первого триггера подключены к первому входу пяРедактор Т.Митейко Заказ 4128/50
Составитель А.Ушаков
Техред М.Ходанич Корректор М.Максимишинец
Тираж 671Подписное
ВНИИПИ Государственного комитета СССР
по делам изобретений и открытий 113035, Москва, Ж-35, Раушская наб., д. 4/5
.Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4
того элемента Инк счетному входу второго триггера, инверсный выход которого подключен к второму входу пя- того элемента И и первому входу шестого элемента И, ВЬЕСОД которого под-, ключен к счетному входу первого триггера и к первому входу третьего элемента ИЛИ, выход и вход которого
подключены к входу синхронизации буферного регистра°и к выходу седьмого элемента И, первьй вход восьмого элемента И является входом пуска интерполятора, выход готовности результата которого соединен с прямым выходом второго триггера и с первым входом седьмого элемента И, вход синхронизации интерполятора соединен , с вторыми входами с шестого по вось-
мой элементов И, выход восьмого элемента И подключен к входам сброса первого и второго триггеров и буферного регистра и к входам синхронизации счетчиков старших разрядов первого и второго аргументов и регистров младших разрядов первого и второго аргументов, вькод шестого элемента И подключен к входу режима суммирова- НИН счетчика старших разрядов первого аргумента.
название | год | авторы | номер документа |
---|---|---|---|
Устройство для вычисления функций | 1985 |
|
SU1280391A1 |
Устройство для интерполяции | 1984 |
|
SU1171807A1 |
Устройство для умножения | 1986 |
|
SU1427361A1 |
Двумерный линейный интерполятор | 1985 |
|
SU1269152A1 |
Устройство для вычисления экспоненциальной функции в модулярной системе счисления | 1985 |
|
SU1317433A1 |
Устройство для вычисления функций в модулярной системе счисления | 1985 |
|
SU1322268A1 |
Устройство для вычисления функций в модулярном коде | 1985 |
|
SU1278839A1 |
Устройство для умножения | 1985 |
|
SU1254473A1 |
Линейный интерполятор | 1987 |
|
SU1439534A1 |
Устройство для вычисления элементарных функций в модулярной системе счисления | 1985 |
|
SU1291977A1 |
Изобретение относится к области вычислительной техники и позволяет сократить время интерполяции функций двух аргументов за счет независимого формирования слагаемых и сомножителей в интерполяционном выражении, которое имеет следующий вид: q)f;j + .i +. qf,,j.,, при р -ь q)f4,,, +(1-p)fi. - 4)fi,Vi , при р + q:5l, (Л н 00 ko со
Устройство для аппроксимации функций | 1980 |
|
SU934481A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
, Авторское свидетельство СССР -№ 942040, кл | |||
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Z f(X, | |||
- ph, J; + qk) |
Авторы
Даты
1986-07-30—Публикация
1984-12-10—Подача