МНОГОПРОЦЕССОРНАЯ СИСТЕМА СБОРА И ОБРАБОТКИ
ДАННЫХ НАУЧНОГО ЭКСПЕРИМЕНТА
М.Л. Гольдштейн, А.В. Матвеев
Институт математики и механики УрО РАН, Екатеринбург
Рассматривается один из возможных вариантов построения много-
процессорной системы сбора и обработки данных (МССОД) с точки
зрения получения заданных временных характеристик на примере ав-
томатизированных систем научных исследований (АСНИ) для физиче-
ского эксперимента в области высокотемпературной электрохимии и
медицинского эксперимента для исследования нервно-мышечного ап-
парата человека. Конкретные временные характеристики АСНИ обу-
словлены типом объекта и характером эксперимента и лежат во вре-
менном диапазоне 10
-3
– 10
-7
с. В обоих случаях МССОД является со-
ставной частью АСНИ с n количеством входов, регистрирующих ряд
показателей. В случае электрохимического эксперимента к основным
можно отнести ток, потенциал рабочего электрода, количество элек-
тричества, температуру, давление и др, в случае медицинского –
информацию о форме воздействующих импульсов и реакцию на них.
Подсистема ввода и первичной обработки информации построена
как многопроцессорная среда с использованием интеллектуальных
плат ввода-вывода (ИПВВ) с цифровыми сигнальными процессорами
(DSP) на борту. В настоящее время на одной плате может быть от 1 до
16 DSP, связь между которыми возможна как слабая, так и сильная.
Слабая, когда каждый процессор выполняет свою подпрограмму и об-
рабатывает данные, хранящиеся в собственной локальной памяти, а
обмен данными выполняется через порты ввода-вывода. Сильная, ко-
гда каждый процессор обрабатывает данные из некоторого централи-
зованного хранилища, а обмен данными между процессорами выпол-
няется через разделяемую память. Компьютер, содержащий несколько
таких плат, обладает достаточно высокой производительностью, одна-
ко стоимость подобной системы может оказаться слишком высокой и
для многих проектов неприемлемой. Поэтому необходимо разделить
53
обработку данных между быстрыми и дорогими ИПВВ и более мед-
ленными и дешевыми многоканальными платами ввода-вывода без
процессора (МПВВ). В качестве ИПВВ нами были использованы пла-
ты L-783 производства фирмы L-Card, содержащие один процессор
ADSP2186. В качестве МПВВ – платы А812PG фирмы ICP DAS.
В общем случае, каждая из рассматриваемых АСНИ реализует че-
тыре основные функции:
1. Фиксация откликов объекта и режимозадающего оборудования
Ff
x
;
2. Формирование управляющих воздействий Fс;
3. Визуализация экспериментальных данных (как прямых, так и рас-
четных) Fv;
4. Накопление данных Fd.
Обозначим Ff
x
для функций 2, 3, 4 Ff
c
, Ff
v
и Ff
d
соответственно.
Каждая функция выполняется с определенной частотой. Пусть система
имеет n входов: u
1
, u
2
, … u
n
(n внешних сигналов). Обозначим х
ik
k-тый
отсчет (цифровое значение сигнала) с i-го входа системы. Тогда
Fc = Fc (x
i1
1
, …, x
i1
c1
; x
i2
1
, …, x
i2
c2
;
…
; x
i
α
1
, …, x
i
α
ck
),
где ij, j = 1,
α – номер входа системы; сj, j = 1,k – номер отсчета.
Аналогично можно определить:
Fv = Fv (x
j1
1
, …, x
j1
v1
; x
j2
1
, …, x
j2
v2
;
…
; x
j
β
1
, …, x
j
β
vl
),
Fd = Fd (x
y1
1
, …, x
y1
d1
; x
y2
1
, …, x
y2
d2
;
…
; x
y
χ
1
, …, x
y
χ
dm
),
Обозначим:
T(Ff
c
) – критическое время выполнения функции Ff
c
для данных
x
i1
1
, …, x
i1
c1
; x
i2
1
, …, x
i2
c2
;
…
; x
i
α
1
, …, x
i
α
ck.
T(Fc) – критическое время выполнения функции Fc.
Аналогично определяются T(Ff
v
), T(Fv), T(Ff
d
), T(Fd).
Важным показателем системы является время ее реакции на внеш-
ние события (термин «время реакции» применим не только ко времени
формирования управляющих воздействий, то есть к функции Fc, но
также и ко времени визуализации информации и времени сбора дан-
ных, например, успеть сохранить блок данных до момента поступле-
ния следующего блока). Рассмотрим, каким образом можно сократить
его, то есть сумму T(Ff
c
) + T(Fc), T(Ff
v
) + T(Fv), T(Ff
d
) + T(Fd).
Функции Ff
c,
Ff
v
и
Ff
d
не имеют принципиального отличия, поэтому
далее под функцией Ff будем понимать любую из вышеперечислен-
ных.
54
Обозначим F’f такие функции Ff, для выполнения которых приме-
няются ИПВВ, F’’f – остальные функции Ff. Аналогично вводятся по-
нятия F’с, F’’c, F’v, F’’v, F’d, F’’d.
В случае малых временных диапазонов (T(Ff) порядка микросе-
кунд и менее) ввод данных в реальном времени однопроцессорной
АСНИ затрудняется временными задержками, которые возникают при
передаче данных по каналам связи из внешнего мира в вычислитель-
ную среду, а также задержками операционной системы (современные
операционные системы реального времени имеют задержки порядка
нескольких микросекунд). Поэтому во многих случаях единственно
возможным решением является перенос вычислительной среды как
можно ближе к источникам сигналов, то есть на ИПВВ. Тогда решает-
ся вопрос о временных задержках, связанных с передачей данных по
шинам расширения, таким как ISA, PCI, VME и т.п. В случае электро-
химического и медицинского эксперимента применение ИПВВ было
необходимым в силу требования непрерывного сбора и обработки
группы данных на частоте до 3 МГц (T(F’f) = 0.3 мкс). Однако, в целях
снижения стоимости системы, для фиксации относительно медленно
меняющихся величин, таких как температура или давление (T(F’’f) = 1
мс), мы применили МПВВ.
Установка в компьютер нескольких плат с одним DSP позволила
организовать одновременный сбор и первичную обработку данных на
высокой частоте сразу от нескольких источников. До недавнего вре-
мени традиционный подход заключался в формировании последова-
тельных управляющих воздействий центральным процессором и не
позволял добиться многоканального сбора и обработки данных на вы-
сокой частоте из-за относительно больших временных затрат на пере-
дачу данных по каналам связи. В случае с DSP управляющие команды
на сбор данных, например, в медицинском эксперименте, осуществля-
ет этот процессор, определяя с какого канала и в какое время получить
данные. Таким образом, один DSP может последовательно опросить
несколько каналов. Вопрос о применении дополнительных плат с DSP
решался с учетом времени аналого-цифрового преобразования, кото-
рое выполняется последовательно для каждого канала, а также пре-
дельно допустимой частоты сбора данных одним DSP. На плате L-783
время составило 0.3 мкс. Таким образом, применение нескольких
ИПВВ позволяет существенно сократить время T(F’f).
55
Следующее преимущество ИПВВ – это первичная параллельная
обработка полученных данных. Сокращение общего времени обработ-
ки T(F’c) + T(F’’c)
,
T(F’v) + T(F’’v)
,
T(F’d) + T(F’’d) происходит как за
счет применения параллелизма, так и за счет снижения объема полез-
ных данных, необходимых для централизованной обработки главным
процессором. Так, в медицинском эксперименте ИПВВ выделяет из
непрерывного потока данных полезный сигнал, и только эти данные
передает центральному процессору системы.
В общем случае время реакции системы определяется суммой
Т(Ff) + Т(F). Это относится ко всем ее функциям: Fc, Fv и Fd. Однако,
организовав двухступенчатый конвейер из периферийного и централь-
ного процессора, можно сократить время реакции до следующей вели-
чины: max(Т(F’f), Т(F’’)), что и было сделано в разработанных нами
АСНИ. Пока центральный процессор выполняет функции F’’c, F’’v и
F’’d, DSP выполняет F’f
c
, F’f
v
, F’f
d
.
Для Fv и Fd данные необходимо передать главному процессору
системы, так как только через него возможна связь с устройствами
визуализации информации и с устройствами хранения данных. Одна-
ко, в случае Fc все данные обрабатываются непосредственно на плате
ввода-вывода и здесь же может быть сформировано управляющее воз-
действие. Тогда Т(F’f
c
) + Т(F’c) составляет сотни наносекунд, а приме-
нение нескольких жестко связанных процессоров на одной плате по-
зволяет существенно сократить время выполнения определенных ал-
горитмов. В электрохимическом эксперименте, например, одно из
управляющих воздействий вырабатывается при прохождении через
электролит заданного количества электричества путем непрерывного
подсчета, которым занимается DSP. Время реакции системы в этом
случае составляет:
Т(F’f
c
) + Т(F’c) = 0.3 мкс + 0.1 мкс = 0.4 мкс,
что полностью удовлетворяет исходным требованиям.
Алгоритмы, выполняемые на подобных платах, как правило, не
являются большими, поскольку основное их предназначение – быстрая
обработка данных в непосредственной близости от источников сигна-
лов и средств формирования управляющих воздействий, когда время
передачи данных в центральный процессор является критичным.
DSP-мультипроцессинг активно применен в разработанных нами
АСНИ для электрохимического и медицинского экспериментов, что
56
обеспечило получение заданных временных характеристик и позволи-
ло избежать использования такого дорогостоящего программного про-
дукта, как операционная система реального времени.
Достарыңызбен бөлісу: |