УДК681.325(088.8)
СПЕЦИАЛИЗИРОВАННЫЙ ВЫЧИСЛИТЕЛЬ ДЛЯ ИЗВЛЕЧЕНИЯ КОРНЯ КВАДРАТНОГО ИЗ СУММЫ КВАДРАТОВ
ЛАРЧЕНКО Л. В., ХАХАНОВА А.В._______________
В настоящее время в специализированных цифровых вычислителях операцию извлечения корня квадратного из суммы квадратов чисел, представленных числоимпульсным кодом, осуществляют последовательно во времени в два этапа: на первом - накапливают сумму квадратов чисел, на втором - из полученной суммы извлекают корень квадратный. Предлагается устройство, позволяющее совместить во времени выполнение названных операций, сократив при этом время вычисления и упростив его техническую реализацию.
1. Введение
В [1] был предложен метод формирования приращений ступенчатых функций
у = [f(x) + |8max |], (1)
ограниченных условиями: х, у > 0, у; > \ j } у < х, функция у = f(х) имеет обратную x = v|/(y). где 0, 5 £ | Smax | < 1 - заданное предельное значение абсолютной погрешности воспроизведения соответствующих непрерывных функций у* = f(х*) В (1) квадратные скобки обозначают целую часть числа.
Было показано, что процесс воспроизведения функции (1) с числоимпульсной формой представления аргумента может быть сведен к выборке определенной части импульсов из исходной последовательности х, номера которых вычисляют по формуле
ху =[v|/(y)-|8max|] + l, (2)
где у=1,2,3,.... Такой метод обеспечивает непрерывный процесс воспроизведения функции (1) в реальном времени в темпе поступления разрядов аргумента х.
Названным ограничениям удовлетворяет и функция y = [^SxM8lraax ||+|62maX II. (3)
| 1 " 2 v _
так как J ~ Lxi < xj - где \j - выборочное V n i=i i=l
значение аргумента; п-количество выборок; | 51тах |-предельное значение абсолютной погрешности делеД 2
ния величины 2,х, на п; 15 2 тах | - предельное значе-
Ы
ние абсолютной погрешности извлечения корня квадратного.
В частном случае при | 5lmax | = | 52тах | = 0,5 обеспечивается минимально возможная погрешность вос-
произведения функции (3), так как и результат деления, и результат извлечения корня округляется до ближайшего целого числа.
В специализированных цифровых вычислителях [2], [3] функцию (3) реализуют соответственно в анализаторах спектра частотно-модулированных сигналов для определения модуля комплексных спектральных составляющих, в цифровых амперметрах и вольтметрах - для определения действующих значений несинусоидальных периодических токов и напряжений.
В области низких и инфранизких частоттакие вычислители, как правило, работают с запасом по скорости. Поэтому в данном диапазоне частот в подавляющем большинстве случаев выборочные значения х; представляют числоимпульсным кодом, что существенно у прощает их техническую реализацию.
В каждом цикле работы таких устройств квадрат числа, полученного при i-й выборке, прибавляют к уже накопленной за i-1 предшествующих выборок сумме квадратов с последующим делением накопленной по всем выборкам суммы на коэффициет деления п и извлечением квадратного корня. Этот же алгоритм вычислений используют и в микропроцессорах [4].
Несмотря на названное преимущество представления выборочных значений х; числоимпульсным кодом, такие устройств а имеют два существенных недостатка, одним из которых является необходимость в боль-
V -2
шой памяти для хранения суммы z_, xi при большом
" i=l
числе выборок п и большой разрядности чисел х;, а другим - разнесение во времени операций возведения чисел в квадрат и их суммирования с одной стороны, деления и извлечения корня - с другой, что во многих случаях не обеспечиваетвыполнение предъявляемых требований к измерительным системам, в которых используются такие устройства [5].
Цель исследования — обеспечить время вычисления функции (3) за время ввода аргумента при более простой технической реализации вычислителя.
Задача исследования - на основе разработанного в [1] метода обработки единичных кодов добиться поставленной целина базе известных унифицированных у стройств посредством введения новых связей между ними.
2. Структурно - функциональная схема вычислителя с низкочастотным входным сигналом
Анализ функции (3) показывает, что возможен такой способ ее реализации в специализированном вычислителе, при котором устраняются названные выше недостатки.
На рис. 1 приведена структурно-функциональная схема устройства, которое реализует этот способ.
Рис. 1 Структурно-функциональная схема вычислителя с низкочастотным входным сигналом
В его состав входят:
- квадратор, содержащий суммирующий счетчик (АС), группу элементов И(&) и элемент задержки (DE);
- делитель чисел, содержащий накапливающий сумматор параллельного Tnna(PS) и элемент задержки;
-устройство для извлечения квадратного корня (УИК), содержащее суммирующий счетчик, счетчик результата (RC). группу логических элементов И и элемент задержки. Счетчик результататакже работает в режиме суммирования. В нем образуется результат вычисления функции (3).
В процессе функционирования вычислителя каждый его входной импульс, с одной стороны, посредством группы элементов И квадратора заносит число, хранящееся в его счетчике, в сумматор делителя со сдвигом на один разряд в сторону старших разрядов, а с другой - пройдя элемент задержки, поступает на счетный вход второго триггера счетчика со стороны младших разрядов. В результате каждым входным импульсом вычислителя в сумматор заносится удвоенное значение числа, хранящегося в счетчике, а в счетчик - число 2.
После поступления навход квадратора каждой пачки импульсов xj импульсом сброса триггеры счетчика устанавливаются в исходное состояние (на рис. эта связь не показана).
Выход сумматора делителя через элемент задержки соединен со счетными входами тех его триггеров, чтобы каждым выходным импульсом сумматора по
I
цепи обратной связи в него заносилось число 214 -2п, где к - число триггеров сумматора. Этим обеспечивается деление непрерывно накапливаемой суммы
2V х2 -
■'j . заносимой в сумматор со стороны счетчика
i=i '
квадратора, на коэффициент деления 2п, определяемый числом выборок в выражении (3). В результате такого деления на выходе сумматора формируется
1 п 2 .
пачка импульсов с числом [ — Xxi +0-5] импуль-
’ ni=i '
сов в ней.
В УИК посредством группы элементов И число, записанное в счетчике результата, заносится в суммирующий счетчик в обратном коде со сдвигом на один разряд в сторону старших разрядов. В результате в суммирующий счетчик заносится дополнительный код числа 2(N + 1), т.е. число 21 -2(N + 1), где i -число его триггеров. N - число, записанное в счетчике результата.
Рассмотрим принцип действия вычислителя.
В исходном состоянии в счетчике квадратора записано число 1, в накапливающем сумматоре делителя -число 2k - п, в суммирующем счетчике УИК - число 21 -1, а показания счетчика результата нулевые.
Первый импульс из пачки xj, посту пивший на вход квадратора, посредством группы элементов И заносит удвоенное число, хранящееся в его счетчике, в сумматор делителя. В результате в сумматоре образуется число 21 -п + 2. Этот же импульс, пройдя элемент задержки, записываете счетчик квадратора число 2. В результате в нем образуется число 3.
В дальнейшем с поступлением очередных импульсов пачки Х| описанные процессы в этой части схемы буд\ т циклически повторяться. За время поступления в квадратор х | импульсов со стороны счетчика квадратора в сумматор делителя будет введено число 2xf.
Действительно, для квадратов чисел нату рального ряда 1,4,9,16,25,... арифметические ряды разностей первого и второго порядков соответственно будут такими:
3. 5. 7. 9. 11. .
2. 2. 2. 2. . . .
Так как каждый входной импульс квадратора заносит в счетчик постоянное число 2, соответствующее постоянному7 члену7 арифметического ряда разностей второго порядка, в счетчике бу дут последовательно образовываться члены арифметического ряда разностей первого порядка, а в су мматор будут записываться ихудвоенные значения. Так как после посту'пления на вход вычислителя пачки импу льсов х | импульсом сброса триггеры счетчика устанавливаются в исходное состояние, описанные процессы в устройстве в этой части схемы будут циклически повторяться при поступлении на его вход каждой очередной пачки импульсов х;. Нетрудно видеть, что за время ввода в вычислитель и пачек импульсов со стороны счетчика квадратора в сумматор делителя будет введено число
2£xi . А так как коэффициент деления делителя
i=i
равен 2п, на его выходе за это же время появится ровно I — Xxi + 0, 5] импульсов переполнения. По-
11 i=i '
стоянная 0,5, которая фигурирует в этом выражении,
обусловлена тем. что в исходном состоянии в сумма-
-.к ’
торе записано число 2 - п .
При поступлении первого выходного импульса сумматора на вход УИК суммирующий счетчик переполняется, и его показания станут равными нулю. Импульс переполнения посредством группы элементов И заносит число, хранящееся в счетчике результата, в суммирующий счетчик и, пройдя через элемент задержки, поступает на вход счетчика результата. В результате в суммирующем счетчике будет записано число 2 - 2 , а в счетчике результата - число 1.
Второй импульс переполнения на выходе суммирующего счетчика появится при поступлении на его вход очередных двух импульсов с выхода сумматора,
после чего его показания станут равными 21 - 4 , а счетчика результата - равными двум. В дальнейшем с поступлением очередных импульсов на вход су ммирующего счетчика описанные процессы в УИК будут циклически повторяться. В результате из пачки импульсов, поступивших на вход суммирующего счетчика, на выходе вычислителя в канал у будут выбраны импульсы с номерами 1, 3, 7, 13, 21, . . ., что полностью совпадает с расчетами по формуле (2), которая в случае извлечения квадратного корня принимает вид
ху =[(у-0,5)2] + 1 = у2 -у+1, где у = 1. 2. 3, . . .
Нетрудно видеть, что дополнительные коды чисел 2,4, 6, 8, ... , заносимые в суммирующий счетчик со стороны счетчика результата УИК, являются дополнительными кодами членов арифметического ряда разностей первого порядка числовой последовательности 1, 3, 7, 13, 21....
В заключительнойчастиописаниярабо гы вычислителя целесообразно более подробно остановиться на анализе операции деления чисел в сумматоре, поскольку время ее выполнения предъявляеттребования кчастоте следования импульсов в пачках х, входного сигнала.
Исходным при таком анализе является число 2 х - -1, которое образуется в счетчике квадратора при поступлении на его вход х; -1 импульсов каждой пачки. С приходом же импульса с номером х j у двоенное
значение 2(2х; -1) этого числа посредством гру ппы элементов И заносится в сумматор, где суммируется с записанным в нем числом д < п. В результате на выходе сумматора должно появиться ровно
2(2х; -1) + А
I------------| импульсов переполнения, на что зат-
r2(2xi-l) + A,
рачивается время i = 1----------| т. где т - вре-
2п
мя, определяемое временем суммирования параллельных кодов в сумматоре и временем задержки в цепи его обратной связи.
Если 2(2х; — 1) + Д 2п — импульс переполнения на
выходе сумматора отсутствует. Если 2(2х; -1) + Д
1< [-
2 п
<2 -
на выходе сумматора по-
явится один импульс переполнения, если РИ, 2010. № 1
2(2х; -1) + Д
q I-------------| < q ! 1 - q импульсов, на что
затрачивается время qt. В этом случае сумматор работает в режиме генерации пачек импульсов. Очевидно, максимальное число переполнений сумматора будет иметь место при поступления на вход устройства пачки Xjmax с наибольшим количеством импу льсов, число которых задается при проектировании вычислителя.
Из сказанного следует, что период следования импульсов в пачках х j должен быть не меньше Tq и при больших q может быть значительным, что ограничивает верхнюю границу частотного диапазона измеряемых параметров (например, напряжений в цифровых вольтметрах действутощих значений с промежуточным время - импу льсным преобразованием).
3. Структурно - функциональная схема вычислителя с высокочастотным входным сигналом
Из формулы (3) следует, что расширить частотные возможности таких у стройств можно путем соответствующего выбора числа выборок п. Например, если
~ 9
число п есть точный квадрат, п = р" , реализуемое вычислителем выражение (3) принимает вид
У — [— [ -./ “Н ^ 2max ll+l^lmax I I. (4)
Р V 1=1
Из этой записи следует, что привычислении функции у операции деления и извлечения корня в вычислителе можно поменять местами, т.е. параллельные коды фрагментов накапливаемых квадратов чисел х; с выхода счетчика квадратора можно подавать непосредственно на вход УИК, заменив в нем суммирующий счетчик накапливающим сумматором параллельного типа и подключив к выходу вычислителя пере-счетнуто схему (С) с коэффициентом пересчета р .
Этот вывод приводит к стру ктуре вычислителя, изображенного на рис. 2.
В отличие от первого, в этом варианте вычислителя числа в УИК заносятся не числоимпульсным, а параллельным кодом из квадратора поразрядно без сдвига в сторону старших разрядов. При этом счетчик резу льта-
Рис. 2. Структурно-функциональная схема вычислителя с высокочастотным входным сигналом
та УИК уже не будет в ыполнять эту функцию. поскольку результат вычисления у формируется в виде числа импульсов на выходе пересчетной схемы, выполненной на суммирующем счетчике, охваченном обратной связью, по цепи которой каждый выходной импульс
о
вычислителя заносит в счетчик число 2' -2р, где X -число триггеров счетчика. Рассмотрим принцип действия вычислителя по второму варианту.
В исходном состоянии в счетчике квадратора записано число 1, показания суммирующего счетчика УИК нулевые, в сумматоре записано число 21 -1, а в счетчике пересчетной схемы - число 2/ч - р.
При поступлении на вход вычислителя X] импульсов первой пачки, со стороны счетчика квадратора в сумматор делителя будут последовательно вводиться числа 1,3,5,..., а по цепи обратной связи со стороны суммирующего счетчика УИК - числа 21 - 2, 21 - 4, 21 - 6,.... При этом каждому входному импульсу вычислителя будет соответствовать только один импульс переполнения сумматора. Покажем это.
С поступлением первого импульса пачки х ( на вход вычислителя в сумматоре число 21 -1 суммируется с числом 1. В результате на выходе его показания станут равными нулю. Импульс переполнения по цепи обратной связи вводит в сумматор число 21 - 2 и записывает в суммирующий счетчик УИК число 1.
С приходом второго импульса пачки х | на вход вычислителя в сумматоре суммируются числа 21 -2 и 3. В результате на его выходе появится второй импульс переполнения, а в нем останется записанным число 1 в прямом коде. Аналогично предыдущему, импульс переполнения посредством обратной связи записывает в сумматор число 21 - 4 и поступает на вход счетчика УИК. В результате показания сумматора станут равными 21 -3, а счетчика УИК - равными двум. Аналогично, с приходом третьего импульса показания сумматора станут равными 21 - 4, а счетчика УИК - равными трем.
При посту плении на вход вычислителя очередных импульсов пачки X] на вход устройства описанные процессы в вычислителе будут циклически повторяться. Так как после каждого очередного переполнения сумматора в нем остается записанным в прямом коде число меньше заносимого по цепи обратной связи со стороны счетчика УИК в дополнительном коде, второй импульс переполнения сумматора появиться не может. Это подтверждает ранее высказанное утверждение о том, что с поступлением первой пачки импульсов на вход вычислителя каждому входному импульсу соответствует только один импульс переполнения сумматора, что не противоречитравен-
ству д/х?~ = х j. А так как после ввода в устройство пачки Х| триггеры счетчика квадратора устанавлива-
ются в исходное состояние и в сумматоре остается записанным в дополнительном коде число, большее единицы, с поступлением каждой последующей пачки х; на вход вычислителя частота следования импульсов на выходе сумматора будет только уменьшаться.
Последнее подтверждает то, что в этом варианте вычислителя сумматор не может работать в режиме генерации пачек импульсов, что позволяет существенно поднять верхнюю границу частоты следования входных импульсов устройства и, следовательно, частотного диапазона работы приборов, в которых он используется.
4. Выводы
Предложен цифровой специализированный вычислитель среднеквадратических значений различных физических величин, выборочные значения которых представлены числоимпульсным кодом.
1. Научная новизна состоит в разработке такого алгоритма преобразования входного числоимпульсного кода в выходной числоимпульсный и параллельный код, при котором обеспечивается минимально возможное время вычисления заданной функции.
2. Практическая значимость предложенного технического решения состоит в улучшении временных, метрологических и эксплуатационных характеристик цифровых контрольно-измерительных средств различного назначения, в которой используется данный вычислитель.
Дальнейшие исследования будут направлены на разработку новых технических решений на основе предложенного в [1] метода функциональной обработки единичных кодов
Литература: \.Ларченко Л.В. Метод формирования приращений при функциональной обработке единичных кодов //Радиоэлектроника и информатика. 2001. № 3(16). С. 61 - 63. 2..Добрыденъ В.А. Устройство для вычисления суммы квадратов к числоимпульсных величин. Описание изобретения по авторскому свидетельству № 1092500, М.Кл. G06F, 7/552, Бюллетень№ 18,1984. Ъ.ВанюишнВ.П., Бондаренко А.В., Адамов ДН. Устройство для определения корня квадратного из суммы квадратов. Описание изобретения по авторскому свидетельству № 1324026, М. Кл. G06F, 7/552, 1985. 4МирскийГ.Я. Микропроцессоры в измерительных приборах. М: Радио и связь, 1984. 160с.
5. Б.Г. Келехсаев. Устройство для извлечения корня квадратного из N величин. Патент 7218 на полезную модель. MF1KG06G7/20.2006.6. ДжексонР. Г. Новейшие датчики. М.: Техносфера, 2008. 400с.
Поступила в редколлегию 27.02.2010
Рецензент: д-р техн. наук, проф. Кривуля Г.Ф.
Ларченко Лина Викторовна, канд. техн. наук, доцент кафедры АПВТ ХНУРЭ. Научные интересы: функционально-ориентированные устройства, частотно-импульсные вычислительные устройства. Адрес: Украина, 61166, Харьков, пр. Ленина, 14.
Хаханова Анна Владимировна, канд. техн. наук, ст. пре-под. кафедры АПВТ ХНУРЭ. Научные интересы: функционально-ориентированные устройства, частотно-импульсные вычислительные устройства. Адрес: Украина, 61166, Харьков, пр. Ленина, 14.