Разностно-итерационные алгоритмы для микропроцессорных систем

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Abramenko T, Gorish A., Bogush M., Mitko V. Main characteristics analysis of the piezoelectric sensors under finite-element method. - Proceeding of the Tenth International Congress on Sound and Vibration, Stockholm, Sweden, 2003, v.3, p 951-959.

2. Пьезоэлектрическое приборостроение: Сборник в 3 томах. Т. 3. Богуш М.В. Пьезоэлектрические датчики для экстремальных условий эксплуатации. Ростов-на-Дону. Изд-во СКНЦ ВШ, 2006. 346 с: ил.

3. Туричин А.М. Электрические измерения неэлектрических величин. - М. -Л.: Энергия, 1966. - С.52-61

4. Левшина К.С., Новицкий И.В. Электрические измерения физических величин. - М.: Энергоатомиздат, 1973. - С. 107-130.

5. Проектирование датчиков для измерения механических величин/ Под общ. ред. Е.П. Осадчего. - М.: Машиностроение, 1979. - 480 с.

6. Датчики теплофизических и механических параметров: Справочник в трех томах / Под общ. ред. Ю.Н. Коптева; Под ред. Е.Е. Богдатьева, А.В. Гориша, Я.В. Малкова. - М.: ИПРЖР. Т.1 (кн.2). 1998. - 512 с., Т.2. 1999. - 688 с.

7. Пьезоэлектрические приборы для измерения давлений, усилий, ускорений. Проспект фирмы Kistler Insnrument AG., 1999. - 12 с.

8. Физические величины: Справочник / А.П. Бабичев, Н.А. Бабушкина, А.М. Братковский и др.; Под ред. И.С. Григорьева, Е.З. Мейлихова. - М.: Энергоатомиздат, 1991. - 1232 с.

Н.С. Анишин, И.Н. Булатникова,

Н.Н. Гершунина

РАЗНОСТНО-ИТЕРАЦИОННЫЕ АЛГОРИТМЫ ДЛЯ МИКРОПРОЦЕССОРНЫХ СИСТЕМ

Широкое внедрение микропроцессоров (МП) и микроконтроллеров (МК) в системы автоматизации и управления технологическими процессами потребовало интенсивного развития их алгоритмического обеспечения.

Технико-экономические требования к МП и МК (дешевизна, быстродействие, простота конструкции вычислителя) привели к востребованности целочисленных алгоритмов.

Их достоинства - ограниченный набор простых операций (сложения, вычитания, сдвиги, условные переходы) и быстродействие - были успешно продемонстрированы при их аппаратной реализации (цифровые линейные, круговые интерполяторы [1], спецвычислители, например, для навигации [2]).

Исторически разностно-итерационные алгоритмы своё применение ведут от всемирно известных алгоритмов Волдера и Меджита [3,4].

Впоследствии они были развиты в трудах многих зарубежных и отечественных учёных. Однако в основном - на применении аппаратурно, в том числе и в микроэлектронном исполнении [2,5].

Причём абсолютное большинство этих алгоритмов создавалось эвристическим путём, т.е. они имели сугубо специфическое применение на

реализацию конкретной функции (экспонента, тригонометрические функции).

Каждый такой алгоритм был уникальным (для конкретной функции) и обычно заявлялся как изобретение на функциональный преобразователь. В этом плане характерен такой [6] (для х > 0, у > 0):

где у = 1,2,... - номер итерации,

(п+2) - разрядность аргументов, включая знак.

Алгоритм (1), как и ему подобные, является неаналитическим и слу-

Обращаем внимание на то, что РИА не содержат умножения и деления, хотя и реализуют аналитические выражения с присутствием последних.

В этом существенное преимущество при их реализации на простейших микропроцессорах (без команд умножения и деления), на скоростных микропроцессорах с сокращённым набором команд (ИКС - архитектура).

Кроме простоты требуемого вычислителя, РИА обладают преимуществами по точности вычисления (при данной разрядности вычислителя).

Действительно, при умножении результат получается двойной длины, который в обычных алгоритмах усекается до одной длины. А при делении аналогичным образом теряется остаток.

И то, и другое существенно снижает точность всей цепочки вычисления. Чтобы этого не допустить, программисты переходят на удвоенную разрядную сетку либо на алгоритмы с двойной точностью представления величин.

В первом случае это более сложный микропроцессор (вычислитель), во втором случае более медленно работающий алгоритм.

Всё это сдерживало широкое и эффективное применение микропроцессорных устройств автоматизации (т.е. локальная автоматики). Выход из этого положения мы видим в использовании РИА как наиболее подходящих для микропроцессорной реализации.

Однако у разработчиков алгоритмического обеспечения микропроцессорных систем возникали трудности с анализом известных и синтезом новых разностно-итерационных алгоритмов.

Дело значительно упрощается, если манипулировать не с самими РИА, а с их математическими моделями. В этом случае алгоритмист имеет дело не с рекуррентными выражениями, а с обычными алгебраическими. Обычными исключениями и подстановками внутри системы таких выражений легко определяется:

- условия сходимости РИА;

- пределы, к которым стремятся интегрируемые величины;

Чу-1 = sign( Ху-1 - уу-1);

Х0 = х Ху = Ху-1 - Чу-1 •у •2 3, X

У0 = у Уу = Уу -1 + Чу -1 • у • 2 3 ,

х+у У  X

АП ~Г ^П’

- возможные модификации известных РИА для получения новых, требуемых по условиям автоматизации.

Основные положения анализа и синтеза РИА приведены в [7-9]. Приведём краткую классификацию РИА. Они бывают двух типов:

1) с аддитивным разложением частного двух величин, например м> и

и:

Чу-1 = ^Щп^у-1),

ж0 = w W, = W,-1 - Ч,-1 • и • 2~], ^  0;

w

2о = 2 = 2}-1 + Чу-1 • V• 2], ^п  2 + и'

На первом этапе частное от деления w/u представляется в виде суммы

е =ЪЧу-1 • 2-] ,

у=1

где Чу е {-1;+1} - индикаторы у-й итерации.

На втором этапе происходит функциональное преобразование (например, умножение) е на другие константы или итерируемые величины. Однако, это, допустим, умножение выполняется на каждый из членов суммы (3) и что самое главное, - последовательно во времени, по мере поступления очередных членов Чу-1 на первом этапе. Из-за особого характера такого умножения эта процедура носит название «квазиумножение»;

2) второй структурой РИА является мультипликативное разложение

w/u

Чу-1 = SІgnУу-1

У0 = И - |и|, У у = У у-1 - Чу-1 • 2 -у+1 • Ху-1, Уп  0;

Хо = |и|, Ху = Ху-1 + Чу-1 • 2~у • Ху-1, Хп  |w|,

где у = 1,1,2,2,...,п,п - номер двойных итераций.

Представление е стремится к величине w/u

е = й

у=1

*

где Чу-1 - индикатор после первой половины (}-1)-й итерации.

РИА второго типа (4) используются для некоторых преобразований (возведение дроби в натуральную степень, вычисление логарифма от дроби, вычисление обратной величины и др.).

Большие потенциальные возможности расширения типов функциональных зависимостей предоставляют предложенные нами математиче-

ские модели РИА [7].

Покажем это на примере РИА типа (1). С использованием его матмо-дели нами он был модифицирован так (для x,y,u,w - любого знака):

Чу-1 = sign(Xу-1 - Уу-1) • sign(u + w);

У0 = у, У. = У.-1 + ч .-1 • 2_•3+1 • u, Уп  Хп;

х • u + у • w

Хо = х, Ху = Ху , -чу 1 • 2-у+1 • w, Хп =---------------.

у у - 1 -1 U + №

Таким образом, получена возможность вычисления

.

х, у, w, u) =---------------, т.е средневзвешенного двух величин.

Дальнейшее расширение области применимости РИА (6) состоит в представлении x,y,u,w как функций нового аргумента Р.

х = к • t + т„, и = к,„ • t + т,„,

У = ку • ґ + my, и = ки • ґ + ти.

лф2 + та

Тогда Уп = Хп = -

Лґ2 + Бґ + С

Бґ + Е где

Л = кхки + кукм>,

Б = кхШи + киШх + к^Шу + куШ^,

С = ШхШи + ШуШм,,

В = ки + км,,

Е = Ши + ШV .

Для того, чтобы упростить вычисление (7) для заданного ґ выберем к (і є {х,у,^,и} ) равными ± 2-2 или 0 (где г - целое неотрицательное число).

Если же требуется решить обратную задачу: назначить такие к и ш, чтобы У„ = Хп = ¥(ґ) на заданном промежутке ґ є [а ;Р], то находим аппроксимацию ¥(ґ) в виде (8), т.е. набор коэффициентов Л,Б,С,В,Е.

По ним, решая систему из 5 уравнений с 8 неизвестными, находим набор к и ш, наиболее точно удовлетворяющих системе уравнений

кхки + кукм> = Л кхШи + киШх + к^Шу + куШ„ = Б,

ШхШи + ШуШ^ = С,

ки + кV = D,

Ши + Шм> = Е .

Способы поиска рационального представления (8) и методика решения системы (9) нами разработаны. Все это сведено в диалоговую систему

- автоматизированное рабочее место (АРМ) «Булат - 2» на базе персонального компьютера [8]. Система выдаёт блок-схему алгоритма и его программу.

Преимущество этого АРМа состоит в том, что он позволяет все функциональные зависимости реализовать по одной и той же подпрограмме, реализующей РИА (6). Сама исходная функция может быть задана как аналитически, так и таблично.

Ввиду краткости и целочисленности РИА (6) его быстродействие велико и не зависит от сложности аналитического или табличного задания функции.

Предложенная система автоматизированного проектирования разностно-итерационных алгоритмов функционального преобразования и обработки информации рекомендуется для микропроцессорных устройств локальной автоматики в различных областях науки и техники.

Работа выполнена в Академии маркетинга и социальноинформационных технологий (ИНФИТ), г. Краснодар.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Ратмиров В.А. Основы программного управления станками - М.: Машиностроение, 1978. -С. 121-125.

2. Байков В.Д., Смолов В.Б. Специализированные процессоры: итерационные алгоритмы и структуры. - М.: Радиосвязь, 1985. -288 с.

3. Voider J.E. The CORDIC trigonometric computing technique// The Trans. Electronic Comp. 1959., Vol. 8. N3. p. 330-334.

4. Meggitt J.E. Pseudovision and Pseudomultiplication // IBM J. Res. And Develop., 1965, Vol.6, N2, p. 210 - 226.

5. Оранский А.М. Аппаратные методы в цифровой вычислительной технике. -Минск: Изд-во БГУ, 1977. -208с.

6. А.С. 744 595 СССР, МКИ2 G06F/34. Цифровой функциональный преобразователь/ А.М. Оранский, Л.А. Рейнхерберг (СССР). - 2379674/ 12-24; Заяв. 7.7.76 Опубл. 30.6.80; Бюл. 24. -2с.

7. Анишин Н. С. и др. Математические модели разностно-итерационных алгоритмов //Новые информационные технологии: Сборник трудов 7-й Всероссийской н/т конференции. - М.: МГАПИ 2004.-С.3-5.

8. Анишин Н.С. и др. АРМ проектировщика алгоритма для микропроцессорных систем. Материалы Всероссийской н/т конференции «Компьютерные технологии в инженерной и управленческой деятельности». -Таганрог: Изд-во ТРТУ, 2000. -C. 442-445.

Б.А. Державец

УСТАНОВКА БИНАРНОЙ ВЕРСИИ XEN 3.1 В СРЕДЕ DEBIAN

ETCH 4.0

Статья отвечает на замечание в известном online издании HowTo-Forge [3] издаваемым Falko Timme.

В руководстве “The Perfect Xen 3.1.0 Setup For Debian Etch (i386)” Falko_____утверждает______(язык______оригинала______сохранен)___________:

A note on x86_64 systems: I tried to install Xen 3.1.0 on Debian Etch AMD64 as well,but regardless of the method (Xen source install vs. Xen x86_64 binary install),the Xen kernel didn’t boot (no error messages, but the boot process was incredibly slow and never finished...).

При тестировании Debian Etch 4.0 (amd64) был установлен на машину со следующими характеристиками:

1) процессор - Core 2 Duo E6600;