Математическое моделирование физических полей и процессов, методы и системы обработки данных физического эксперимента

 

Ответственный исполнитель НИР по направлению: Отдел математического моделирования и методов обработки экспериментальных данных  (Отдел №14)



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

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

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

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

5. Создание систем контроля и диагностики комплексов бортовой аппаратуры перспективных космических аппаратов.

 

 

 

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

 

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

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

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

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

 

ИНС в задаче демодуляции ФМ-сигналов

ИНС в задаче демодуляции ФМ-сигналов

 

 

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

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

 

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

 

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

 

 

Комплекс обработки сигналов

Комплекс обработки сигналов

 

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

    Численные эксперименты показывают, что при использовании специальных высокопроизводительных библиотек (таких как Intel IPP), каждое ядро блэйд-сервера способно производить порядка нескольких миллиардов операций в секунду. Например, вычисление быстрого преобразования Фурье (БПФ) над выборкой в 1024 комплексных 32-разрядных отсчетов занимает единицы микросекунд. Кроме этого, блэйд-серверы допускает подключение профессиональных графических многоядерных процессоров NVIDIA

    Поскольку вычислительная эффективность программного обеспечения оказывает определяющее влияние на характеристики работы многопроцессорной системы обработки сигналов в целом, то для его разработки используются кросс-платформенные высокопроизводительные библиотеки распределенной обработки данных на процессорах общего назначения: Intel IPP, Intel MKL, VSIPL, OpenMP, Intel TBB. Кроме этого, широкое применение находят инструменты разработчика, оптимальным образом использующие вычислительные ресурсы графических процессоров: GPU-accelerated BLAS library, GPU-accelerated FFT library, NPP, GPU VSIPL. Средства разработки и отладки программного обеспечения многопроцессорных систем включают компилятор GNU gcc и Intel C++ , отладчик GNU gdb, профилировщик Intel Thread Checker, анализатор производительности Intel VTune.

 

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

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

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

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

    Одним из современных направлений в области радиосвязи являются программно-определяемые радиосистемы (Software-Defined Radio). Главной отличительной чертой таких систем является использование микропроцессоров для программной обработки цифровых отсчетов сигнала на промежуточной частоте, что позволяет адаптировать коммуникационные устройства к различным стандартам телефонной и телекодовой связи. Однако при использовании программируемых логических микросхем возможно достичь гораздо большей производительности за счет использования большего и в общем случае переменного числа процессорных ядер на одном кристалле. Кроме этого, наиболее трудоемкие операции могут быть переданы специальным сопроцессорам, реализованным на том же кристалле. Также становится возможным применять ядра спецпроцессоров, оптимизированных для выполнения определенных задач (матричные/векторные операции, обработка последовательных битовых потоков и др.). Высокая гибкость такой системы обеспечивается возможностью частичной или полной реконфигурации, что позволяет адаптировать полученную систему обработки сигналов для работы с любым стандартом связи.

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

 

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

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

    Для обеспечения требуемого уровня надежности процесса разработки ПО исходный код разрабатываемых комплексов хранится в системе версионного контроля ClearCase. В качестве сервера автоматизированной сборки используется свободно распространяемое программное обеспечение CruiseControl.Net. Основной задачей, возлагаемой на сервер сборки, является автоматизация каждого этапа процесса интеграции на всех используемых операционных системах (WindowsXP, Windows 2003 Server, QNX, Linux): сборка комплекса по расписанию, покомпонентная (после каждого изменения исходного кода), покомпонентное модульное тестирование (NUnit, CUnit, CppUnit), инспекция исходного кода (NDepend) и уведомление разработчиков о результатах сборки по e-mail.

 

Схема процесса интеграции после автоматизации

Схема процесса интеграции после автоматизации

 

    Внедрение непрерывной интеграции позволило повысить эффективность процесса разработки программного обеспечения комплексов, значительно сократив временные затраты как на создание очередной версии ПО, так и на ее тестирование.

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

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

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

 

5. Создание систем контроля и диагностики комплексов бортовой аппаратуры перспективных космических аппаратов.

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

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

Программный модуль системы контроля параметров аппаратуры

Программный модуль системы контроля параметров аппаратуры

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