Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Вероятностные методы оценки выполнимости задач в системах реального времени Дашевский Владимир Павлович

Вероятностные методы оценки выполнимости задач в системах реального времени
<
Вероятностные методы оценки выполнимости задач в системах реального времени Вероятностные методы оценки выполнимости задач в системах реального времени Вероятностные методы оценки выполнимости задач в системах реального времени Вероятностные методы оценки выполнимости задач в системах реального времени Вероятностные методы оценки выполнимости задач в системах реального времени Вероятностные методы оценки выполнимости задач в системах реального времени Вероятностные методы оценки выполнимости задач в системах реального времени Вероятностные методы оценки выполнимости задач в системах реального времени Вероятностные методы оценки выполнимости задач в системах реального времени
>

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

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Дашевский Владимир Павлович. Вероятностные методы оценки выполнимости задач в системах реального времени : Дис. ... канд. техн. наук : 05.13.11 : Санкт-Петербург, 2004 141 c. РГБ ОД, 61:04-5/2235

Содержание к диссертации

Введение

Глава 1. Организация выполнения задач в СРВ 10

1.1. Модель многозадачной СРВ 10

1.1.1. Состояния задачи и переходы между ними... 13

1.1.2. Требования реального времени в вычислительных системах ... 15

1.1.3. Используемые обозначения 17

1.2. Планирование в СРВ... 18

1.2.1. Методы оценки эффективности планирования 18

1.2.2. Парадигмы планирования 21

1.3. Анализ выполнимости задач в СРВ 28

1.3.1. Основные понятия, применяемые для анализа выполнимости 29

1.3.2. Методы детерминироваршого анализа.. 30

1.3.3. Стохастические факторы в системах реального времени ...34

1.3.4. Методы вероятностного анализа 36

1.4. Постановка задачи диссертации 44

1.5. Заключение по главе 1 46

Глава 2. Методы вероятностного анализа СРВ с независимыми периодическими задачами, сроки которых не превышают их периода 49

2.1. Предположения относительно системы задач 50

2.2. Формулировка задачи вероятностного анализа СРВ 52

2.3. Алгоритм вероятностного анализа задачи 56

2.4. Оценка сложности алгоритма 60

2.5. Сравнение результатов вероятностного анализа с результатами численного моделирования 62

2.6. Заключение по главе 2 64

Глава 3. Вероятностный анализ СРВ с независимыми периодическими задачами с произвольными сроками выполнения ... 65

3.1. Буферизация внешних запросов на выполнение задач 65

3.1.1. Постановка задачи вероятностного анализа в системе с буферизацией запросов 67

3.1.2. Применимость вероятностного анализа к системам с буферизацией запросов 69

3.1.3. Сравнение результатов вероятностного анализа с численным моделированием 74

3.1.4. Сравнение системы с буферизацией запросов с системой без буферизации запросов 76

3.2. Порождение нескольких экземпляров одной задачи ,77

3.2.1. Формулировка задачи вероятностного анализа 79

3.2.2. Применимость метода вероятностного анализа к системам с порождением нескольких экземпляров одной задачи 80

3.3. Заключение ло главе 3 80

Глава 4. Взаимное влияние задач, решаемых на одном микропроцессоре 82

4.1. Переключение контекстов задач 82

4.1.1. Релаксационная модель поведения процессора при переключении контекста задач 84

4.1.2. Методы экспериментального исследования характеристик системы при переключении контекста.. 90

4.1.3. Поправки для анализа выполнимости задач 98

4.2. Заключение по главе 4 105

Глава 5, Применение разработанных методов анализа выполнимости при проектировании системы связи удаленных телефонных станций CORAL средствами сети Internet 106

5.1. Общее описание проблемы 107

5.2. Архитектура многоканального шлюза IPG-30 109

5.3. Архитектура программного обеспечения для многоканальной цифровой обработки аудиоданных на одном DSP 112

5.3.1. Задачи обработки аудиоданных ИЗ

5.3.2, Требования реального времени при обработке аудиоданных 118

5.4. Вероятностный анализ набора задач одного DSP 120

5.4.1. ГТостаноака задачи вероятностного анализа для кодирования и декодирования потоков аудиоданных 121

5.4.2. Модельные профили времени выполнения задач 122

5.4.3. Результаты анализа для разного количества задач 123

5.5. Обсуждение результатов исследований 126

5.6. Заключение по главе 5 129

Заключение 131

Литература 133

Введение к работе

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

Актуальность темы. Современные приложения реального времени требуют все большей производительности вычислительных устройств. Проектирование СРВ, построенных на базе современных микропроцессоров, представляет собой довольно трудоемкую задачу. Наличие средств анализа выполнимости требований реального времени в процессе разработки СРВ существенно упрощает ее решение.

Важной особенностью современной микропроцессорной техники является то, что время выполнения задач сильно зависит от множества случайных факторов. Традиционно применяемые методы расчета СРВ позволяют гарантировать предсказуемое поведение системы, ориентируясь на наихудшие времена выполнения задач. В современных условиях эти средства становятся все менее эффективными. Поэтому развитие новых методов расчета СРВ, которые позволяли бы гарантировать предсказуемое поведение СРВ с учетом стохастических факторов, является актуальной темой для исследования. Цель и задачи исследования. Целью данной работы является сокращение необходимых вычислительных ресурсов СРВ с помощью учета влияния

стохастических факторов на времена отклика отдельных задач. Для достижения этой цели необходимо решить следующие задачи:

  1. исследовать известные методы организации выполнения задач в СРВ;

  2. разработать методы вероятностного анализа задач в СРВ, позволяющие оценить снизу вероятность своевременного выполнения задач, исходя из функций плотности распределения времени их выполнения;

  3. предложить способы учета влияния кэш-памяти процессоров на своевременное выполнение задач в СРВ,

Методы и средства исследования. Для проведения исследований в диссертационной работе использовались методы теории множеств, теории вероятностей, комбинаторика, дискретная математика, пакеты программ Mathematica, Microcal Origin, Statistica. Для разработки собственных программ использовались средства Microsoft Visual Studio и Code Composer Studio. Научная новизна полученных результатов.

  1. Разработан базовый метод вероятностного анализа выполнимости независимых задач в СРВ с фиксированными приоритетами при условии, что относительный срок выполнения не превышает периода поступления запроса на решение задачи в систему. Метод позволяет получить нижнюю оценку вероятности выполнения в срок каждой задачи в системе.

  2. Базовый метод анализа выполнимости обобщен на случай задач с буферизацией запросов и порождения нескольких экземпляров одной задачи. Использование этих средств позволяет повысить эффективность функционирования СРВ.

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

  4. Предложены два метода экспериментального изучения релаксации производительности при переключении контекстов задач.

7 Практическое значение полученных результатов. Развитые в диссертации методы вероятностного анализа выполнимости могут применяться для расчета многозадачных СРВ, где время выполнения задач может изменяться случайным образом. С их помощью можно гарантировать определенное качество функционирования системы в реальном времени. Предложенные обобщения базовых методов анализа выполнимости на случай произвольного соотношения сроков и периодов задач позволяют рассчитывать СРВ с буферизацией запросов и множественной активацией задач, благодаря чему пропускная способность и эффективность функционирования системы может быть существенно улучшена.

Предложенная в работе модель восстановления производительности и методы экспериментального измерения ее параметров позволяют учесть влияние переключения контекста задач на время их отклика. Результаты измерений могут быть использованы в качестве поправок к базовому методу вероятностного анализа выполнимости. Тем самым, удается обосновать выполнимость задач в реальном времени при меньшем расходе вычислительных ресурсов.

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

Реализация результатов работы. Предложенные в диссертации методы анализа выполнимости задач в СРВ были использованы при расчете многоканального шлюза для IP-телефонии, встраиваемого в телефонные станции CORAL фирмы TADIRAN.

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

многопроцессорные системы», ИМС2001, Дивноморское, октябрь 2001;

IX Санкт-Петербургской Международной конференции «Региональная информатика-2002», РИ-2002, Санкт-Петербург, ноябрь 2002);

IV международной научно-технической конференции «Интеллектуальные и многопроцессорные системы», ИМС^ООЗ, Дивноморское, сентябрь 2003;

I Всероссийской научной конференции «Методы и средства обработки информации», МСО'2003, Москва, октябрь 2003;

на 2 научных семинарах СПИИРАН.

Публикации. Материалы диссертации опубликованы в 6 печатных работах [81,

83, 78, 82, 79, 80].

Структура и объем работы. В главе 1 приведены наиболее значимые

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

проектирования программного обеспечения для СРВ. На основе проведенного

исследования сформулирована задача диссертации.

В главе 2 представлен базовый метод вероятностного анализа независимых

периодических задач, выполняемых в СРВ с вытесняющей многозадачностью и

фиксированными приоритетами задач. Базовый метод позволяет учитывать

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

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

не превышает их периода, а время переключения контекста задач

пренебрежимо мало по сравнению со временем их выполнения.

В главе 3 представлены два важных обобщения базового метода анализа

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

СРВ (буферизации запросов и множественной активации экземпляров задачи)

базовый алгоритм анализа выполнимости может быть использован для

получения оценки снизу вероятности решения задач в срок. Использование

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

вероятности и эффективность функционирования системы.

В главе 4 рассмотрены способы повышения точности базового метода

вероятностного анализа при помощи учета неявного взаимного влияния задач,

ш выполняющихся на одном процессоре. Предложена релаксационная модель

функции производительности процессора и способы экспериментального измерения параметров релаксационной модели реальных процессоров на примере сигнальных процессоров фирмы Texas Instruments, Использование этих результатов позволило усовершенствовать базовый метод анализа выполнимости.

Требования реального времени в вычислительных системах

Подход к проектированию СРВ в значительной степени определяется требованиями реального времени (РВ), предъявляемыми к различным задачам в системе. Задачи могут иметь различные временные ограничения, причем для некоторых задач эти ограничения могут отсутствовать.

Важнейшими характеристиками задач, которые необходимо учитывать при проектировании СРВ, являются период повторения запросов на решение задачи [37,35] и относительный срок выполнения задачи [2]. Период повторения запросов характеризует темп поступления входных данных задачи извне и используется для расчета средней загрузки системы данной задачей. Относительный срок выполнения представляет собой максимально допустимое время отклика каждого экземпляра задачи. Ограничение времени отклика является ключевым требованием в СРВ.

Для многих задач характерно отсутствие четко определенного периода повторения событий, диктуемого внешней средой. Например, в системе передачи голоса по цифровым каналам связи обработка звуковых данных производится небольшими фрагментами, период пакетизации составляет обычно 10-30 мс. Выбор конкретного значения периода определяется разработчиком, исходя из оптимального соотношения нескольких параметров: (а) задержки распространения сигнала, (б) отношения размера полезных и служебных данных в одном сетевом пакете, (в) степени искажения информации в случае потери одного или нескольких пакетов. При этом сам процесс порождения акустического сигнала во внешней среде не связан с каким-либо конкретным периодом. Таким образом, период повторения запросов и относительный срок выполнения задачи могут быть не связаны с временными особенностями процесса во внешней среде, а произвольно назначаться и изменяться разработчиком.

В зависимости от требований РВ традиционно СРВ делятся на две категории [39,20,13,40,23]. Традиционно, к категории систем жесткого реального времени (hard realime) относят системы, которые способны гарантировать обработку любого внешнего воздействия (каждого экземпляра каждой задачи) за ограниченное и, как правило, небольшое время. К категории систем мягкого реального времени (soft realime) относят системы, которые способны гарантировать своевременность обработки лишь в среднем, или, по крайней мере, не попадают в категорию систем жесткого реального времени. Учитывая, что требования РВ относятся в первую очередь к задачам, можно сделать вывод о том, что существует большое число промежуточных градаций между системами жесткого и мягкого реального времени. Задачи жесткого РВ требуют больше ресурсов памяти и процессора, что удорожает разработку СРВ. Задачи мягкого РВ позволяют сэкономить значительную часть ресурсов за счет уменьшения гарантий выполнения временных ограничений. Поэтому, для снижения стоимости СРВ желательно формулировать требования к задачам таким образом, чтобы их (редкое) нарушение не приводило к непредсказуемым или катастрофическим последствиям. Иными словами, при проектировании СРВ число задач с жесткими требованиями реального времени должно быть минимальным.

Сравнение результатов вероятностного анализа с результатами численного моделирования

В действительности же, наихудшее число вытеснений реализуется не для каждого запроса на решение задачи, поэтому доля запросов, обработанных в срок, оказывается больше величиныр(. Тем не менее, можно ожидать, что дополнения этих величин до единицы окажутся одного порядка. Для оценки точности метода вероятностного анализа была реализована программа прямого моделирования набора задач, которая в течение длительного времени набирает статистику обработки в срок периодически поступающих в систему запросов. В качестве примера для сравнения был использован набор задач, характеристики которого приведены в таблице 3. Все задачи в этом наборе обладали функциями распределения вида Результаты обоих методов, представленные в таблице 4, позволяют сделать следующие выводы; — Вероятность, полученная с помощью рассматриваемого метода, действительно не больше значения, полученного в результате численного эксперимента. — Вероятность, полученная с помощью рассматриваемого метода, по порядку величины совпадает с долей успешно обработанных запросов, полученной с помощью численного моделирования. Наблюдаемые отличия (в особенности у задач 2 и 3) связаны с тем, что анализируется лишь критический участок, из-за чего вероятность занижается. — Вероятность решения в срок задачи с меньшим приоритетом может быть больше вероятности решения в срок задачи с большим приоритетом, как в случае задач 3 и 4. Метод вероятностного анализа позволяет замечать подобные особенности. Таким образом, метод вероятностного анализа действительно позволяет с приемлемой точностью оценить вероятность выполнения задач. В данной главе рассмотрен метод вероятностного анализа набора периодических задач, выполняемых на одном процессоре в СРВ. Наряду с изложением алгоритма анализа набора задач получена оценка его сложности, а также оценка объема оперативной памяти, требуемой для хранения данных. Сравнение результатов работы алгоритма с численным моделированием показывает, что оценка вероятности оказывается близкой к численному эксперименту. Предложенный метод вероятностного анализа позволяет учитывать стохастические факторы, связанные с прикладной областью решаемых задач. Важной особенностью данного метода является то, что он позволяет определить нижнюю границу вероятности своевременного выполнения каждой задачи и, тем самым, гарантировать определенные характеристики СРВ по отношению к каждой решаемой задаче, что особенно важно в системах с жесткими требованиями реального времени.

Одним из ограничений метода вероятностного анализа, предложенной в главе 2, является предположение о том, что срок выполнения задачи не должен превышать периода прихода запросов на ее решение (см. раздел 2.1, предположение 1). Однако, имеется ряд предпосылок для устранения этого ограничения: - увеличение вероятности выполнения задачи в срок; - расширение возможностей для изменения приоритетов задач; - улучшение планирования приложений в распределенных системах. Таким образом, базовый метод вероятностного анализа требует обобщения на случай произвольного соотношения между сроком и периодом повторения задачи. В данной главе рассмотрены два способа организации вычислений, при которых срок выполнения задачи может превышать период ее повторения: - буферизация внешних запросов; - порождение нескольких экземпляров одной задачи. Метод вероятностного анализа может быть использован при любом из них.

В системах реального времени выполнение задачи связано, как правило, с обработкой определенных данных, принимаемых вычислительной системой извне. Например, в системе управления производится считывание состояния внешних датчиков, в системе цифровой телефонной связи производится периодический прием информации с микрофона, а также прием данных от удаленного телефона. Таким образом, каждому запросу на решение задачи соответствует определенный объем памяти, требуемый для хранения информации, которую требуется обработать. В некоторых случаях требования реального времени на обработку запроса продиктованы ограниченным объемом памяти, и, возможно, других ресурсов системы, в результате чего обработка следующих запросов не может быть начата, пока не закончена обработка предыдущих. Другими словами, срок выполнения задачи не ограничен периодом повторения запросов на ее решение, но может быть и больше, если система способна сохранять данные нескольких запросов (см. рис. 4).

Применимость метода вероятностного анализа к системам с порождением нескольких экземпляров одной задачи

Метод вероятностного анализа (см. главу 2) позволяет оценить снизу вероятность выполнения в срок каждой задачи. В тех случаях, когда оценка оказывается слишком низкой, требуется внесение изменений в проект системы. Вносимые изменения должны каким-либо образом способствовать увеличению вероятностей своевременного выполнения задач.

В главе 3 были предложены два способа организации вычислений, с помощью которых можно решить указанную проблему: буферизация запросов; порождение нескольких экземпляров задачи. Оба перечисленных способа основаны на том предположении, что срок выполнения задачи обусловлен ограничением на ресурсы памяти при приеме и обработке информации. Если ресурсы памяти позволяют разместить в системе данные, связанные сразу с несколькими последовательными запросами на выполнение одной задачи, вероятность выполнения задачи без потери данных может быть повышена.

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

Предложенные способы организации вычислений позволяют достичь более высокой пропускной способности системы за счет более равномерного распределения ее нагрузки по времени. Однако необходимо подчеркнуть, что повышение вероятности выполнения каждой задачи без потери данных связано с увеличением максимально допустимой задержки при обработке информации. Рассмотренное обобщение базового метода вероятностного анализа позволяет разработчику исследовать влияние этой задержки на вероятность своевременного выполнения задачи с целью нахождения оптимального соотношения, удовлетворительного как по качеству, так и по стоимости. В настоящей главе рассмотрены некоторые аспекты влияния задач друг на друга посредством общей, разделяемой среды выполнения. В современных вычислительных системах выполнение задачи сопровождается с изменением внутреннего состояния процессора, занимающего большой объем внутренней памяти. Взаимное влияние задач друг на друга происходит путем явного и неявного изменения содержимого внутренней памяти (регистров, кэш-памяти), и в подавляющем большинстве случаев это влияние трудно предсказать. Таким образом, внутренние ресурсы процессора можно отнести к стохастическим факторам вычислительной среды. Задача данной главы заключается в том, чтобы предложить способы определения количественного влияния этих факторов на время выполнения задач и учесть их влияние на выполнимость задач в СРВ.

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

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

Контекст задачи РВ, решаемой на одном процессоре, имеет несколько составляющих: Регистровый файл процессора. Переключение контекста приводит к явному сохранению регистров для выходящей задачи и загрузке новых значений для входящей задачи. Потеря времени на эту операцию относительно невелика и сосредоточена в промежутке между решением самих задач. Внутренняя кэш-память процессора. Переключение контекста приводит к переходу процессора на работу с другими данными и кодом, что способствует росту числа промахов в кэш-памяти и весьма существенному снижению производительности. Потери времени на повторное заполнение кэш-памяти могут быть велики и не так хорошо сосредоточены, как потери, связанные с перезагрузкой регистров. Внутреннее состояние внешних устройств. Примером устройства, влияющего на время смены контекста, может служить жесткий диск и состояние его привода магнитных головок. Переключение контекста между двумя задачами, осуществляющими ввод-вывод в различных областях диска, будет сопровождаться дополнительными потерями времени на позиционирование головок чтения-записи.

Архитектура программного обеспечения для многоканальной цифровой обработки аудиоданных на одном DSP

Шина расширения станции CORAL позволяет вывести на каждый модуль расширения до 30 каналов. Таким образом, каждый из четырех DSP должен обеспечивать обработку до 8 каналов. Задачи обработки аудиоданных требуют наибольшего времени вычисления по сравнению с прочими второстепенными задачами. Поскольку все каналы являются равноправными, то при обработке сигналов целесообразно применять алгоритмы невытесняющего планирования. Это позволяет избежать сложностей, связанных с обеспечением независимых стеков, сократить контексты задач, а значит, уменьшить затраты времени на их переключение.

Среди всех задач, решаемых на одном DSP, можно особо выделить следующие задачи: 1. Ввод и вывод данных всех каналов через многоканальный последовательный порт. Эта задача обладает высокими требованиями к реактивности системы. Прием и выдача данных по всем каналам должна осуществляться с частотой 8000 Гц. Ее решение наиболее эффективно достигается с помощью встроенных контроллеров прямого доступа в память (DMA), которые могут быть настроены на синхронную работу с последовательным портом без участия ядра DSP, занимающегося обработкой уже введенных данных. 2. Обмен сообщениями с HOST-процессором. Сообщения делятся на два типа: служебные (установка, удаление соединения по каналу и т.п.) и медийные (передача упакованных аудиоданных между шлюзами). Обмен и обработка сообщений первого типа не имеет требований реального времени, в то время как медийные сообщения должны периодически отправляться и приниматься по всем каналам, по которым установлено соединение. Передача медийных сообщений должна осуществляться в реальном времени. 3. Обработка аудиоданных. Данная задача является наиболее сложной и трудоемкой. Ее выполнение должно производиться синхронно и с задачей ввода-вывода, и с задачей обмена с HOST процессором. По времени обработка аудиоданных занимает более 99% времени, потраченного на все задачи. Обработка аудиоданных в каждом канале производится периодически, с периодом пакетизации 30 мс. Таким образом, среди всех задач, решаемых на одном DSP, наиболее существенным с точки зрения реального времени являются задачи обработки аудиоданных. Они не могут быть полностью вынесены на аппаратный уровень и представляют наиболее жесткие требования к регулярной обработке.

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

Обработка данных прямого потока каждого из каналов заключается в следующем. После ввода одного кадра длительностью 30 мс (на частоте дискретизации 8000 Гц это соответствует массиву из 240 16-разрядных чисел) производится компенсация эхо принятого сигнала в соответствии с рекомендацией G.165.4 После компенсации эхо производится выделение тоновых сигналов DTMF, применяемых для кодирования цифровых клавиш при тоновом наборе. Необходимость выделения тоновых сигналов, их кодирования, а затем последующего восстановления обусловлена двумя причинами. Во-первых, при передаче по сети возможна потеря пакетов, что может привести к разрыву тоновых сигналов и неправильному их детектированию на удаленной стороне. Во-вторых, алгоритмы сжатия голоса с потерями, как правило, сильно искажают гармонические сигналы, что приводит к существенному снижению качества сигналов тонового набора. Поэтому приходится выделять эти сигналы и кодировать отдельно от остальных. Вслед за выделением DTMF и других сигналов, управляющих оборудованием линий связи, производится детектирование речевой активности абонентов. В случае, если активность обнаружена, данные подаются на один из речевых кодеров, выполненных в соответствии с рекомендациями G.7I1, G.723, G.729.5 Использование речевых кодеров позволяет сократить объем данных, передаваемых по сети от 2 до 20 раз. В случае отсутствия речевой активности фиксируется перерыв передачи, и данные в сеть временно не посылаются. Данные для отправки упаковываются в соответствии с протоколом RTP [54], который разрабатывается специально для синхронизации мультимедийных приложений реального времени. После упаковки данные передаются в HOST-процессор, откуда они отправляется в сеть.

Важной особенностью прямого потока является то, что обрабатываемые данные поступают с последовательного порта регулярно; очередной кадр появляется с периодом 30 мс. Таким образом, задача обработки прямого потока каждого канала является периодической. Однако время обработки данных существенно зависит от типа данных и режима работы канала. Основное время обработки одного кадра речи в прямом потоке приходится на функцию кодера, вызов которой осуществляется лишь при выполнении нескольких условий. Обнаружение тоновых сигналов производится быстрее всего и устраняет необходимость дальнейшей обработки. При отсутствии тоновых сигналов время обработки зависит от решения, принятого детектором речевой активности (voice activity detector). Экспериментально полученные данные о времени работы алгоритмов кодера G.723 представлены на рис. 23, а. Как показали измерения, даже при нормальной речи говорящего примерно 10-15 % кадров приходятся на отсутствие речевой активности. В этом случае время работы кодера сокращается примерно в 3,5 раза.

Похожие диссертации на Вероятностные методы оценки выполнимости задач в системах реального времени