Многоядерные процессоры, параллельное программирование, ПЛИС, системы обработки сигналов

Save this PDF as:
 WORD  PNG  TXT  JPG

Размер: px
Начинать показ со страницы:

Download "Многоядерные процессоры, параллельное программирование, ПЛИС, системы обработки сигналов"

Транскрипт

1 МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «АЛТАЙСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ» Многоядерные процессоры, параллельное программирование, ПЛИС, системы обработки сигналов Сборник статей всероссийской научно-практической конференции Барнаул 2013

2 ББК М 735 В сборнике статей всероссийской научно-практической конференции «Многоядерные процессоры, параллельное программирование, ПЛИС, системы обработки сигналов», состоявшейся 28 февраля 2013 г. на базе ФГБОУ ВПО «Алтайский государственный университет», представлены материалы посвященные системным и практическим проблемам параллельных вычислений, разработке высокопроизводительных систем на базе ПЛИС и многоядерных процессоров, системным и практическим проблемам применения ПЛИС и сигнальных процессоров в технике приема и обработки сигналов. В конференции приняли участие технические специалисты предприятий, преподаватели, аспиранты и студенты высших учебных заведений Российской Федерации. Официальным спонсором конференции выступила ведущая компания Алтайского края в области информационных технологий ООО «Научно-технический центр Галэкс». Составители: А.В. Калачев, В.В. Белозерских Многоядерные процессоры, параллельное программирование, ПЛИС, системы обработки сигналов: сб. ст. / [сост. А.В. Калачев, В.В. Белозерских]. Барнаул: Барнаул, с. ISBN ФГБОУ ВПО «Алтайский государственный университет», 2013

3 Программный комитет конференции: Председатель: Землюков Сергей Валентинович, д.ю.н., проф., ректор Алтайского государственного университета; Зам. председателя: Шатохин Александр Семенович, к.т.н., проф. зав. кафедрой Вычислительной техники и электроники, Алтайский государственный университет; Губарев Василий Васильевич, д.т.н. зав. кафедрой Вычислительной техники, Новосибирский государственный технический университет; Титов Виталий Семенович, д. т. н., профессор, заслуженный деятель наук РФ, академик международной академии наук ВШ, Юго-Западный государственный университет; Мещеряков Роман Валерьевич, д.т.н., доцент кафедры Комплексной информационной безопасности электронно-вычислительных систем, Заместитель начальника научного управления, Томский государственный университет систем управления и радиоэлектроники; Тарасов Илья Евгеньевич, д.т.н., доцент кафедры физики Ковровской государственной технологической академии им. В.А. Дегтярева, директор инженерного центра при официальном дистрибьюторе Xilinx в России КТЦ "Инлайн груп"; Савельев Сергей Семенович, ген. директор ОАО "Барнаульское специальное конструкторское бюро "Восток"; Пронин Сергей Петрович, д.т.н., проф., зав. кафедрой Информационных технологий, Алтайский государственный технический университет; Якунин Алексей Григорьевич, д.т.н., проф., зав. кафедрой Вычислительных систем и информационной безопасности, Алтайский государственный технический университет.

4

5 ОГЛАВЛЕНИЕ Часть 1. Многоядерные процессоры, ПЛИС и обработка сигналов... 9 РЕАЛИЗАЦИЯ ОТЛАДОЧНОГО МОДУЛЯ РЕГИСТРАТОРА ПОТОКА ВИДЕОИЗОБРАЖЕНИЙ НА ОСНОВЕ ПЛАТЫ DIGILENT ATLYS SPARTAN-6 FPGA DEVELOPMENT BOARD А.И. Постоев, И.К. Рябченко, В.И. Иордан... 9 МОДУЛЬ ОБРАБОТКИ ИЗОБРАЖЕНИЙ ТРЕКОВ ЧАСТИЦ В ВЫСОКОСКОРОСТНОЙ ИНТЕЛЛЕКТУАЛЬНОЙ ВИДЕОКАМЕРЕ И.К. Рябченко, В.И. Иордан, А.И. Постоев ПРИМЕНЕНИЕТЕХНОЛОГИИ CUDA ДЛЯОБУЧЕНИЯСКРЫТЫХ МАРКОВСКИХ МОДЕЛЕЙ Д.А.Гефке, П.М. Зацепин ОСОБЕННОСТИ ВЫЯВЛЕНИЯ ЗАВИСИМОСТЕЙ ПРОСТРАНСТВ ПРЕДСТАВЛЕНИЯ ПАРАМЕТРОВ ДЕКОМПОЗИЦИИ РЕЧЕВОГО СИГНАЛА ПРИ ЕГО ОБРАБОТКЕ А. А. Афанасьев ОПЫТ ПРОЕКТИРОВАНИЯ УСТРОЙСТВ НА БАЗЕ ПЛИС АРХИТЕКТУРЫ FPGA Н.Ю. Ершова, М.А. Сережина, К.А. Долгий ПРОГРАММНАЯ ПРОШИВКА ПЛИС ДЛЯ ПЛАТЫ СИНТЕЗАТОРОВ ЧАСТОТ Р.С. Широченко, Д.С.Широченко СРАВНИТЕЛЬНЫЙ АНАЛИЗ СУЩЕСТВУЮЩИХ ОБЛАЧНЫХ ПЛАТФОРМ ДЛЯ СОЗДАНИЯ ЭКСПЕРИМЕНТАЛЬНОГО ОБРАЗЦА ЦОД С ПРОГРАММНО-КОНФИГУРИРУЕМЫМИ СЕТЯМИ ЕГО СЕГМЕНТОВ Л.С. Адрова, П.Н. Полежаев ПРИМЕНЕНИЕ СИСТЕМ НА КРИСТАЛЛЕ НА БАЗЕ ПЛИС ДЛЯ РАЗРАБОТКИ ИЗМЕРИТЕЛЕЙ ФАЗОЧАСТОТНЫХ ХАРАКТЕРИСТИК И.Е. Тарасов БАЛАНСИР ТРЕВЕЛЬЯНА: - АНАЛИЗ ЗВУКОВЫХ КОЛЕБАНИЙ Ю.П. Михайличенко ИНТЕРАКТИВНАЯ СИСТЕМА ДИНАМИЧЕСКОЙ АКТИВНОСТИ ЧЕЛОВЕКА А.С. Бубликов 1, А.А. Мураенко 2, А.А. Шадуров НЕОБХОДИМЫЕ УСЛОВИЯ ОПТИМАЛЬНОСТИ ОПЕРАТОРОВ МОДУЛЯЦИИ И ДЕМОДУЛЯЦИИ К. А. Батенков

6 РАЗРАБОТКА ОСНОВ МЕТОДИКИ ИССЛЕДОВАНИЯ СПОСОБОВ МАСКИРОВАНИЯ РЕЧЕВЫХ СИГНАЛОВ Е.Д. Кашаев, М.Н. Симаков, Н.А. Нуждин, М.С. Коршунов ОЦЕНКА ЭФФЕКТИВНОСТИ ИСПОЛЬЗОВАНИЯ МЕТОДА ЦИКЛИЧЕСКОЙ АДРЕСАЦИИ ПАМЯТИ ПРИ РЕАЛИЗАЦИИ КИХ- ФИЛЬТРОВ Д.С. Яговитов, Б.В. Султанов ОСОБЕННОСТИ РЕАЛИЗАЦИИ УСТРОЙСТВА ФОНЕМНОГО РАСПОЗНАВАНИЯ РЕЧИ НА БАЗЕ ПРОГРАММИРУЕМЫХ ЛОГИЧЕСКИХ ИНТЕГРАЛЬНЫХ СХЕМ И.Ю. Беликов СПЕЦИФИКА ПРЕДОБРАБОТКИ БИОИНФОРМАЦИОННЫХ ДАННЫХ ДЛЯ ГРАФИЧЕСКИХ ПРОЦЕССОРОВ М.А. Фарков ПРОЕКТИРОВАНИЕ ОТКАЗОУСТОЙЧИВОЙ АРХИТЕКТУРЫ ПРОЦЕССОРА LEON3 С.А. Чекмарёв АЛГОРИТМЫ ОБРАБОТКИ ЗВУКОВЫХ СИГНАЛОВ ПРИ ФОРМИРОВАНИИ БАЗ ГОЛОСОВЫХ ДАННЫХ П.В. Малинин, В.В. Поляков Часть 2. Параллельное программирование и распределенные системы...90 ДЕКОМПОЗИЦИЯ ЗАДАЧИ МНОГОМАСШТАБНОГО МОДЕЛИРОВАНИЯ СВ-СИНТЕЗА В ГЕТЕРОГЕННЫХ СИСТЕМАХ ЗА СЧЕТ ИСПОЛЬЗОВАНИЯ ПАРАЛЛЕЛИЗМА ДАННЫХ И ПАРАЛЛЕЛИЗМА ПОДЗАДАЧ Д.А. Мершалов, В.И. Иордан, Е.С. Соснина ЭКСПЕРТНАЯ СИСТЕМА С ЭЛЕМЕНТАМИ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ М. С. Науман, П. М. Зацепин РАЗРАБОТКА ДОПОЛНИТЕЛЬНОГО ПРОГРАММНОГО МОДУЛЯ ДЛЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ «GNU RadioCompanion» Эммануэль Китчер АЛГОРИТМ ПОИСКА БАРЬЕРОВ И ЦИКЛОВ ИЗ НЕИСПРАВНЫХ УЗЛОВ, ВОЗНИКАЮЩИХ ПРИ САМОДИАГНОСТИКЕ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ О.В. Молдованова 104 6

7 СТРАТЕГИИ ПРОВЕРКИ КОРРЕКТНОСТИ МЕТОДА ВЫЯСНЕНИЯ ИЗОМОРФИЗМА ГРАФОВ С ИСПОЛЬЗОВАНИЕМ ГРИД-СИСТЕМ НА ДОБРОВОЛЬНОЙ ОСНОВЕ Э.И. Ватутин, В.С. Титов ОБЩАЯ КОНЦЕПЦИЯ И АРХИТЕКТУРА ПРОГРАММНОГО СРЕДСТВА ИНСТРУМЕНТАЛЬНОЙ ПОДДЕРЖКИ МЕТОДОВ ФОРМАЛЬНОЙ ВЕРИФИКАЦИИ ФУНКЦИОНАЛЬНО-ПОТОКОВЫХ ПАРАЛЛЕЛЬНЫХ ПРОГРАММ М.С. Кропачева ПРИМЕНЕНИЕ ТЕХНОЛОГИЙ СИНТЕЗА И РАСПОЗНАВАНИЯ РЕЧИ ДЛЯ МОДЕЛИРОВАНИЯ ИНТЕРФЕЙСОВ В ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ Д.А. Суранова ЭКСПЕРТНАЯ СИСТЕМА ДЛЯ АНАЛИЗА ПРОЕКТИРОВКИ СТРУКТУРНО-КАБЕЛЬНЫХ СИСТЕМ ЗДАНИЯ А. Е. Фролов, А.А. Соловьев РЕАЛИЗАЦИЯ АЛГОРИТМА МОДЕЛИРОВАНИЯ РАСПРОСТРАНЕНИЯ ЦУНАМИ MOST НА БАЗЕ FPGA К.К. Облаухов, К.Ф. Лысаков РЕАЛИЗАЦИЯ ИНТЕРФЕЙСА ПРОГРАММИРОВАНИЯ ПРИКЛАДНЫХ ПРИЛОЖЕНИЙ (API), БЫСТРЫХ ПАРАЛЛЕЛЬНЫХ АЛГОРИТМОВ АНАЛИЗА РЕЧИ Д.А. Вольф ИСПОЛЬЗОВАНИЕ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ ПРИ КОМПЬЮТЕРНОМ МОДЕЛИРОВАНИИ ЛЕСНЫХ ПОЖАРОВ Г.А. Доррер, П.С. Шаталов АНАЛИЗ РЕЖИМОВ РЕПЛИКАЦИИ В БАЗАХ ДАННЫХ РАСПРЕДЕЛЕННОГО ТИПА В.А. Дунаев ИНТЕРПРЕТАЦИЯ СПИСОЧНЫХ СТРУКТУР В ФУНКЦИОНАЛЬНОМ ЯЗЫКЕ ПОТОКОВО-ПАРАЛЛЕЛЬНОГО ПРОГРАММИРОВАНИЯ И.В. Матковский СРЕДСТВА МЕЖМАШИННОГО ВЗАИМОДЕЙСТВИЯ ДЛЯ РЕАЛИЗАЦИИ ПАРАЛЛЕЛЬНЫХ АЛГОРИТМОВ В РАСПРЕДЕЛЕННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ В.В. Губарев, В.К. Мищенко, П.В. Мищенко ИСПОЛЬЗОВАНИЕ ТЕХНОЛОГИИ NVIDIA CUDA ДЛЯ МОДЕЛИРОВАНИЯ ФОТОФОРЕТИЧЕСКОГО ВЗАМОДЕЙСТВИЯ С.В. Черников, В.Н. Никитин

8 ОТЛАДКА ФУНКЦИОНАЛЬНО-ПОТОКОВЫХ ПАРАЛЛЕЛЬНЫХ ПРОГРАММ С ПОДСТАНОВКОЙ ИНТЕРВАЛЬНЫХ ЗНАЧЕНИЙ И ПОЛЬЗОВАТЕЛЬСКИХ ФОРМУЛ Ю.В. Удалова СОВРЕМЕННЫЕ ПРОГРАММНЫЕ ТЕХНОЛОГИИ СОЗДАНИЯ SCADA-СИСТЕМ М.А. Слободян, Г.В. Смольняков, Е.А. Овчаренко, П.М. Зацепин

9 Часть 1. Многоядерные процессоры, ПЛИС и обработка сигналов РЕАЛИЗАЦИЯ ОТЛАДОЧНОГО МОДУЛЯ РЕГИСТРАТОРА ПОТОКА ВИДЕОИЗОБРАЖЕНИЙ НА ОСНОВЕ ПЛАТЫ DIGILENT ATLYS SPARTAN-6 FPGA DEVELOPMENT BOARD А.И. Постоев, И.К. Рябченко, В.И. Иордан ФГБОУ ВПО «Алтайский государственный университет» В статье рассмотрены вопросы проектирования и реализации высокоскоростного регистратора потока изображений на базе высокоскоростного цифрового видеосенсора CMOSIS CMV2000 и отладочной платы Digilent Atlys Spartan-6 FPGA Development Board. Рисунок1. Внешний вид платы Digilent Atlys Spartan-6 FPGA Development Board: 1 контроллер Ethernet; 2 68-контактный VHDC разъем; 3 кнопки управления; 4 разъем Pmod 2x6; 5,11 вход HDMI; 6 DDR2 память, объемом 128Мбайт; 7 FPGA серии Spartan 6 LX45; 8 USB-разъем; 9 выход HDMI; 10 AC-97 аудио кодек. Наличие на плате (рисунок 1) большого набора периферийных устройств высокого уровня, таких как Gigabit Ethernet, HDMI контроллер, память типа DDR2 (128 Мб, с длинной слова 16 бит), разъемы аудио и USB, делают плату Atlys идеальным управляющим устройством для широкого ряда цифровых систем, включая разработку процессоров, основанную на ядре 9

10 MicroBlaze фирмы Xilinx. Логика работы ПЛИС архитектуры FPGA программируется специальными языками описания аппаратуры Verilog, VHDLи др. Разработка видеорегистратора предусматривает загрузку прикладного программного обеспечения в ПЛИС, обеспечивающего быстродействующую обработку потока изображений, позволяющую исследовать, например, волновую динамику и физические характеристики быстропротекающих технологических и других физических процессов [1,2,3]. Предусмотрена возможность вывода изображения на монитор без использования персонального компьютера (ПК) или передачи исходных данных на ПК для дальнейшей более сложной математической обработки и анализа изучаемых быстропротекающих физических процессов. Модель видеосенсора CMOSIS CMV2000 имеет высокое разрешение 2048х1088 пикселей и обеспечивает частоту сканирования до 340 кадров в секунду при полном разрешении кадра. В видеосенсоре применяется кадровый тип затвора (англ. GlobalShutter), который одновременно работает со всеми пикселями матрицы, открывая (перекрывая) световой поток, и при этом накопление происходит сразу во всех пикселях фоточувствительной области матрицы (затем весь кадр отправляется на последующую обработку). Высокая частота кадров достигается за счет использования шестнадцати 10- или 12-битных цифровых последовательных выходов. Максимальная скорость передачи каждого канала 480 Мбит/с. Тактовая частота входного синхронизирующего сигнала может быть установлена от 50 MHz до 480 MHz. Выбором тактового сигнала можно задавать необходимую скорость считывания кадров. Также скорость считывания кадров можно регулировать с помощью выбора количества каналов вывода данных. Возможные варианты выбора каналов 2,4,8,16. Каналы вывода данных представляют собой каналы с низковольтной дифференциальной передачей сигналов LVDS (lowvoltage differential signaling). Кроме того низковольтная дифференциальная передача сигналов используется для каналов входного тактового сигнала, выходного тактового сигнала и управляющего канала сенсора. По управляющему каналу передается информация о подтверждении считывания строки, кадра. Таким образом, всего используется 19 LVDS каналов. Программирование видеосенсора осуществляется посредством SPI (Serial Peripheral Interface) интерфейса. Кроме того, для управления видеосенсором используется еще две линии. Одна линия представляет собой вход запроса кадра. После появления сигнала на данном входе происходит считывание количества кадров, запрограммированных в видеосенсоре. Вторая линия представляет собой вход для сброса видеосенсора. Таким образом, для 10

11 управления и задания режимов работы видеосенсора используется 6 линий. Видеосенсор подключается к плате Atlys Spartan-6 FPGA DevelopmentBoard посредством разъемов для внешних устройств: 68-контактным разъемом VHDC для высокоскоростной параллельной передачи данных, 8- контактным разъемом Pmod для низкоскоростной передачи данных. Разъем VHDC (рисунок 2) включает 40 линий данных (размещенных как 20 управляемых импедансом дифференциальных пар), 20 линий «земли», и восемь линий питания. Этот разъем может поддерживать скорости передачи данных до нескольких сотен мегагерц на каждом контакте. Все контакты FPGA, подключенные к разъему VHDC, располагаются во втором банке ввода-вывода. Контакты питания ячеек ввода-вывода банка 2 и четыре контакта Vcc разъема VHDC соединяются с отдельным слоем печатной платы, который может быть соединен с источником питания 2.5V или 3.3V, в зависимости от позиции перемычки JP12. Такое соединение позволяет периферийным платам и FPGA совместно использовать один источник питания Vcc и одинаковое напряжение уровней сигналов. Нерегулируемый источник питания Vswt подключен к четырем другим контактам VHDC и позволяет передавать дополнительно ток до 1A к периферийным платам. Все контакты ввода-вывода разъема VHDC смонтированы как согласованные пары, чтобы поддерживать LVDS. Разъем использует симметричное расположение контактов по вертикальной оси, чтобы можно было подключать как периферийные платы, так и другие системные платы. Рисунок 2. Схема подключения разъема VHDC. 11

12 Разъем Pmod (рисунок 3) содержит: две линии Vcc, две линии «земли», и восемь сигнальных линий. Линии Vcc и «земли» могут потреблять ток до 1A. Линии данных Pmod не являются согласованными парами и не обеспечивают согласования импеданса и задержек. Рисунок 3. Схема разъема Pmod При запуске Atlys Spartan-6 FPGA Development Board производится конфигурирование видеосенсора через разъем Pmod, после чего с видеосенсора данные поступают через разъем VHDC на ПЛИС в блок обработки видеосигнала (рисунок 4). Рисунок 4. Структурная схема видеорегистратора Данные от видеосенсора могут поступать через разъем VHDC как непосредственно в блок обработки сигнала, так и напрямую, через интерфейс Ethernet в ПК. Выбор режима работы устройства осуществляется посредством набора кнопок расположенных на плате. При поступлении данных в блок обработки данных, данные записываются в память DDR2, после чего производится обработка видеоизображения по запрограммированному алгоритму, затем данные снова записываются в память по адресам, предназначенным для вывода информации. В зависимости от настроек блока управления данные, записанные в память, передаются одному из IP-ядер. 12

13 Для вывода изображения через разъем HDMI можно использовать разработанное компанией Xilinx xps_tft IP-ядро, чтобы получить доступ к порту HDMI. Ядро xps_tft читает видеоданные из памяти DDR2, и отправляет их по порту HDMI для отображения на внешнем мониторе, подключенным непосредственно к плате. Так как HDMI и DVI используют одинаковый TMDS стандарт передачи данных, для управления разъемом DVI через любой из выходных портов HDMI может использоваться обычный переходник, доступный в продаже (в большинстве магазинов электроники). Порт HDMI не поддерживает сигналы VGA, таким образом, аналоговые дисплеи использоваться не могут. Для работы с Ethernet можно использовать разработанное компанией Xilinx IP-ядро xps_ll_temac для проектов со скоростями 10/100/1000 Мбит/с. Используя контроллер Marvell AlaskaTri-mode PHY (the 88E1111), расположенный на плате Atlys, данные с IP-ядра передаются в контроллер, а затем пересылаются через разъем RJ-45 на ПК. Резюмируя, необходимо отметить, что следующий этап работы связан с применением языка описания VHDL для разработки IP-ядер, реализующих блоки управления и обработки изображений. Литература 1. Постоев А.И., Соловьев А.А., Иордан В.И. Высокоскоростной видеорегистратор с использованием «системы на кристалле» на основе ПЛИС архитектуры FPGA // Доклады ТУСУР (24), ч. 2. С Постоев А.И., Иордан В.И., Соловьев А.А. Интеллектуальная цифровая фотокамера для высокоскоростной регистрации и обработки потока изображений быстропротекающих процессов движения самосветящихся объектов // Известия вузов. Физика Т.55. 9/2. С Иордан В.И., Рябченко И.К. Определение поля скоростей и распределения плотности частиц в плазменной струе методами обработки потока изображений при высокоскоростной съемке цифровой камерой // Известия вузов. Физика Т.55. 9/2. С

14 МОДУЛЬ ОБРАБОТКИ ИЗОБРАЖЕНИЙ ТРЕКОВ ЧАСТИЦ В ВЫСОКОСКОРОСТНОЙ ИНТЕЛЛЕКТУАЛЬНОЙ ВИДЕОКАМЕРЕ И.К. Рябченко, В.И. Иордан, А.И. Постоев ФГБОУ ВПО «Алтайский государственный университет» Введение Развитие элементной базы устройств микроэлектроники позволяет качественно улучшать технологии в различных отраслях промышленности. Например, интеллектуальная высокоскоростная камера, основанная на быстродействующем видеосенсоре и высокопроизводительной ПЛИС FPGA, предоставляет возможность в режиме реального времени производить измерение параметров плазменной струи при напылении покрытий с помощью микрокапель расплавов различных порошковых материалов. Видеокамера позволяет производить запись потока изображений на встроенный RAIDмассив с возможностью в режиме реального времени осуществлять по трекам частиц измерение скоростей и плотности распределения частиц в плазменной струе. Общая структурная схема высокоскоростной интеллектуальной камеры В статье обсуждаются некоторые особенности реализации проекта высокоскоростной видеокамеры, описание которого изложено в [1], в частности, рассматриваются некоторые особенности реализации модуля обработки изображений с учетом параллельной структуры конвейеров, в состав которых входят фильтры-алгоритмы обработки в виде IP-ядер. В основе видеокамеры лежит КМОП-ФД видеосенсор (рисунок 1) CMV2000 фирмы CMOSIS с разрешением 2048x1088 пикселей и частотой сканирования до 340 кадров в секунду при полном разрешении кадра. Сигнал с видеосенсора поступает в блок обработки сигнала (рисунок 1), который производит подготовку видеоизображения для записи в RAIDмассив, а также, в режиме реального времени, для каждого видеокадра вычисляет поле скоростей и плотность распределения частиц в плазме. 14

15 Рисунок 1. Структурная схема регистратора потока изображений Результат обработки видеоизображения и подготовленные для записи видеокадры буферизуются в ОЗУ DDR2, откуда поступают в RAIDконтроллер и микроконтроллер с последующей записью видеоизображения на дисковый массив и выводом результатов обработки изображения на консоль и в порт USB. Блок управления формирует управляющие сигналы для видеосенсора, блока обработки сигнала и RAID-контроллера, т.е. управляет процессом регистрации, обработки и сохранения видеоизображения. Микроконтроллер осуществляет конфигурирование и управление видеокамерой, обеспечивает интерфейс пользователя, интерфейс связи с ПК, а также выполняет ряд сервисных функций, связанных с калибровкой, тестированием и настройкой видеокамеры. Для обеспечения гарантированной (без потерь данных) регистрации и обработки видеокадров с разрешением 2048x1088 пикселей и частотой 340 кадров в секунду проект видеокамеры предусматривает использование обладающей достаточно большими ресурсами и производительностью ПЛИС архитектуры FPGA Virtex-7. Описание алгоритма обработки потока видеоизображений Алгоритм обработки потока изображений производит определение поля скоростей и плотности распределения частиц в плазменной струе на основе изображения треков потока частиц (капель расплава никеля), зарегистрированного высокоскоростной цифровой камерой (время экспозиции кадра 40 мкс, рисунок 2). 15

16 Рисунок 2. Фрагмент оптического изображения треков потока частиц Процесс обработки видеокадра включает в себя этапы фильтрации изображения, регистрации треков частиц и их параметризации [2,3]. Фильтрация осуществляется пространственным фильтром Гаусса согласно оператору (1) с параметром 1,4 и размером окна в 5 пикселей. 2 2 x y ( x, y) e 2 g. (1) 2 После сглаживания изображения пространственным фильтром Гаусса, производится вычисление производной от функции профиля яркости F(x,y) в поперечных направлениях (сверху вниз вдоль оси Y) для каждой координаты X вдоль оси струи с помощью дискретного дифференциального оператора Собеля (2): G Y F( x, y). (2) На следующем этапе производится процедура «утончения» линий треков. Пикселями линии трека объявляются те пиксели, в которых достигается локальный максимум значения производной. Затем производится двойная пороговая фильтрация изображения со значениями первого и второго порогов как 0,1 и 0,2 от значения максимального уровня яркости соответственно (рисунок 3). Рисунок 3. Линии треков после «утончения» границ и после двойной пороговой фильтрации На последнем этапе производится параметризация линий треков алгоритмом Хафа с последующим определением поля распределения скоростей 16

17 частиц. Скорость частицы v определяется как отношение длины изображения трека L ко времени экспозиции кадра, умноженное на масштабный коэффициент, преобразующий расстояние на экране изображения в реальный пройденный частицей путь, т.е. v μ L/ τ. Описание блока обработки сигнала Блок обработки изображений (рисунок 4) состоит из набора фильтров, шины обмена данными и менеджера памяти. Сигнал с видеосенсора поступает на вход демультиплексора данных, который перенаправляет его в одну из половин ping-pong буфера. В это время, предыдущий кадр из другой половины ping-pong буфера поступает на вход демультиплексора данных, который разбивает изображение на блоки по 32x32 пикселя с перекрытием соседних блоков в два пикселя, что позволяет обрабатывать каждый блок изображения параллельно и независимо от других. С выхода демультиплексора блок изображения поступает на вход одного из M конвейеров обработки данных. Конвейер осуществляет полный цикл обработки блока изображения согласно выше изложенному алгоритму и представляет собой цепочку, состоящую из набора фильтров, чередующихся со встроенными в ПЛИС блоками памяти по 18 кбит для хранения промежуточных этапов вычисления. Рис. 4. Структурная схема блока обработки сигнала 17

18 Фильтр представляет собой IP-модуль, реализующий часть алгоритма обработки изображений и подключаемый к шине обмена данными блока обработки сигнала по интерфейсу (реализация на языке описания VHDL): entity Filter is Port ( -- output data DI : in std_logic_vector(9 downto 0); DIA : out std_logic_vector(9 downto 0); DIC : out std_logic; -- input data DO : out std_logic_vector(9 downto 0); DOA : out std_logic_vector(9 downto 0); DOC : out std_logic; -- control port CLK : in std_logic; DONE : out std_logic); endfilter; Линии DI, DIA, DIC, DO, DOA и DOC менеджером памяти модуля обработки данных ассоциируются с соответствующими буферами во встроенной памяти. Для чтения данных из входного буфера, фильтр выводит в порт DIA адрес читаемого слова, переводит линию DIC в активное состояние, после чего считывает входное слово с порта DI. Для записи результата в выходной буфер, фильтр выводит в порт DO результат, в порт DOA адрес в выходном буфере, по которому необходимо поместить результат и переводит линию DOC в активное состояние. После завершения обработки блока входных данных фильтр переводит линию DONE в активное состояние, по которому менеджер памяти переключает буферы на обработку следующего блока данных. Результаты обработки блоков изображений с выходов конвейеров поступают на вход мультиплексора, который собирает их в выходном буфере в порядке, в котором они поступали с демультиплексора на вход конвейеров. Литература 1. Постоев А.И., Иордан В.И., Соловьев А.А. Интеллектуальная цифровая фотокамера для высокоскоростной регистрации и обработки потока изображений быстропротекающих процессов движения самосветящихся объектов // Известия вузов. Физика Т.55. 9/2. С

19 2. Айфичер Э., Джервис Б., Барри У. Цифровая обработка сигналов: Практический подход, 2е издание.: Пер. с англ. М.: Издательский дом «Вильямс», с. 3. Иордан В.И., Рябченко И.К. Определение поля скоростей и распределения плотности частиц в плазменной струе методами обработки потока изображений при высокоскоростной съемке цифровой камерой // Известия вузов. Физика Т.55. 9/2. С

20 ПРИМЕНЕНИЕТЕХНОЛОГИИ CUDA ДЛЯОБУЧЕНИЯСКРЫТЫХ МАРКОВСКИХ МОДЕЛЕЙ Д.А.Гефке, П.М. Зацепин ФГБОУ ВПО «Алтайский государственный университет» Введение Современные технологии распознавания речи основаны на совместном применении множества научных дисциплин и технологий, в частности, цифровая обработка сигналов, нейросетевой анализ, лингвистика и т.д. Однако в основе большинства из них лежит аппарат Скрытых Марковских Моделей (СММ). Математический аппарат СММ представляет собой универсальный инструмент моделирования стохастических процессов, для описания которых не существует точных математических моделей, а их свойства меняются с течением времени в соответствии с некоторыми статистическими законами [1]. Применение СММ для построения надежной системы распознавания речи (на этапе акустического распознавания) связано с решением следующих задач: 1. выбор структуры параметрического вектора, описывающего сигнал в каждый момент времени; 2. обработка чрезвычайного большого массива голосовых данных обучающей выборки. Необходимо заметить, что вычислительные ресурсы необходимые для решения второй задачи, имеют квадратичную зависимость от размерности параметрического вектора. Применение современных технологий параллельного программирование, в частности, графических мультипроцессоров, позволяет получить значительный прирост производительности и перейти на качественно более высокий уровень в решении задач распознавания речи. Настоящая работа является продолжением [2], где рассматривалось применение технологии CUDA для оптимизации процесса декодирования СММ. Целью данной работы является реализация алгоритмов обучения СММ (forward-backward и Baum-Welchre-estimation) с помощью графического процессора (CUDA) и оценка прироста производительности относительно центрального процессора (CPU). Структура Скрытой Марковской Модели В основе Скрытой Марковской Модели лежит конечный автомат, состоящий из N состояний. Переходы между состояниями в каждый дискрет- 20

21 ный момент времени t не являются детерминированными, а происходят в соответствии с некоторым вероятностным законом и описываются матрицей вероятностей переходов. Схематическое изображение диаграммы переходов между состояниями в СММ приведено на рисунке 1. S1 S2 S3 Sn Рисунок 1. Структурная схема переходов в СММ При каждом переходе в новое состояние i в момент времени t происходит генерация выходного значения в соответствии с функцией распределения. Результатом работы СММ является последовательность параметрических векторов длиной T. Достоинством СММ является возможность работать с последовательностями и сигналами разной длины, что затруднено при работе с искусственными нейронными сетями, в частности [3]. На практике, как правило, решается обратная задача: при известной структуре Марковской Модели требуется определить какова вероятность, что наблюдаемая последовательность может быть сгенерирована данной СММ. Таким образом, основными параметрами СММ являются: 1. N количество состояний; 2. матрица вероятностей переходов между состояниями; 3. для каждого состояния i функция плотности вероятности. Функция плотности вероятности описывается, как правило, взвешенной Гауссовой смесью: (1) где M-количество компонент смеси, вес компонента смеси, а нормальное распределение вероятностей для D-мерного случая: 21, (2) где вектор математического ожидания, матрица ковариации. Краткое описание алгоритма обучения СММ Процесс обучения Скрытой Марковской Модели заключается в определении на основе набора обучающих образцов следующих параметров:

22 1. матрицы вероятностей переходов между состояниями ; 2. параметров Гауссовых смесей (математическое ожидание, матрица ковариации и весового коэффициента) для каждого состояния. Для решения этих задач совместно применяются два итерационных алгоритма: forward-backward и Baum-Welchre-estemation [3]. В алгоритме forward-backward вводятся две функции: прямого распространения вероятности и обратного. Значение величина последовательности векторов в момент времени : представляет собой вероятность наблюдения и нахождения СММ в состоянии. (3) Величины и связаны итерационным выражением:, (4) где вероятность перехода из состояния в состояние ; Обратная функция вероятность наблюдения вектора в состоянии. представляет собой вероятность нахождения СММ в состоянии в момент времени с последующим наблюдением последовательности. (5) Величины и связаны аналогичным тождеством:. (6) Величины и позволяют определить вероятность нахождения СММ в состоянии в момент времени при наблюдении последовательности :, (7) где общая вероятность наблюдения последовательности данной СММ. Алгоритм Баума-Велча (Baum-Welchre-estemation) на очередном шаге обучения позволяет, используя вышеприведенные выражения, сделать переоценку параметров модели [2]. Пусть имеется R обучающих образцов, тогда вероятность перехода из состояния в состояние определяется как: (8) 22

23 Для каждого состояния и для каждой компоненты Гауссовой смеси математическое ожидание, матрица ковариации и вес определяются следующими выражениями 23 (9) (10) (11) Для качественного обучения Скрытой Марковской Модели требуется множество образцов сигнала: от нескольких десятков до нескольких сотен экземпляров. Также необходимо соблюдать условие линейной независимости обучающих образцов, в противном случае, в процессе обучения происходит вырождение матрицы ковариации, следствием чего является полная неработоспособность модели [3]. Реализация алгоритма обучения СММ с помощью CUDA Пусть R количество обучающих образцов для одной СММ (в работе использовалось 32); N количество состояний модели (8, 16, 32); M количество компонент Гауссовой смеси (16); D размерность параметрического вектора (16, 32). Предварительный анализ показал, что в процедуре forward-backward основную долю времени (порядка 95%), при вычислении вероятностей и, занимает расчет вероятности наблюдения вектора в состоянии j для модели r -. В тоже время эта часть вычислений является менее сложной с алгоритмической точки зрения. Размерность параметрического вектора D выбиралась равной warp или половине warp (количеству потоков выполняемых ядром CUDA одновременно). Это же количество потоков (D) использовалось для реализации матричных операций при вычислении функции плотности вероятности здесь вектора имеет размерность D и матрица имеет размерность DxD. Для видеопроцессора GeForceGTX 580 каждый мультипроцессор содержит 32 ядра CUDA. Таким образом, на одном мультипроцессоре производится одновременный расчет значений функции вероятности для 32 последовательностей в одном из состояний. Вычисления производятся по всей длине последовательности T. В свое время, каждый мультипроцессор об-

24 рабатывает одно из N состояний. Итоговая схема расчета приведена на рисунке 2. r = 0; 32 потока f(x) r = 1; 32 потока f(x) r = 0; 32 потока f(x) r = 1; 32 потока f(x) r = 0; 32 потока f(x) r = 1; 32 потока f(x) r = 31; 32 потока f(x) r = 31; 32 потока f(x) r = 31; 32 потока f(x) Мультипроцессор - 1 Рисунок 2. Параллельная схема вычисления значений вероятности В результаты работы алгоритма получается массив вероятностей, который затем используется для вычисления и на CPU. В процессе вычисления одновременно задействовано 32 * 32 * 16 = потоков. В алгоритме Баума-Велча (формулы 8-11) схема распределения вычислений по ядрам аналогична. Векторные и матричные операции для каждого обучающего образца используют по 32 потока (размерность параметрического вектора). При этом каждый мультипроцессор обрабатывает одновременно 32 обучающих образца. После чего осуществляется редуцирование (свертка) для окончательного расчета величин математического ожидания и матрицы ковариации. Каждый мультипроцессор независимо обрабатывает одно из N-состояний модели. Расчет вероятностей переходов между состояниями и весов компонент Гауссовых смесей Мультипроцессор 2 Состояние Мультипроцессор N Состояние - N осуществляется с помощью CPU, т.к. все входящие в формулы (8) и (11) величины были предварительно рассчитаны, и для получения окончательных значений не требуются существенные вычислительные затраты. Тестирование Для тестирования алгоритма использовалась вычислительная машина следующей конфигурации: 1. Центральный процессор IntelCorei ,8 ГГц. 2. Операционная система Windows 7 64-Bit. 3. Оперативная память - Kingston 12 GbRAMDDR3. 4. Видеокарта - NVidiaGeForce GTX 580 (1536 Mb RAM, 512 ядер CUDA). 5. Версия CUDA 4.0.

25 6. Компилятор MicrosoftVisualStudio 2008 (векторизация SSE2). 7. Тип данных double (64 разряда). Результаты приведены в следующей таблице: N D CPU FB GPU FB CPU/GPU FB CPU BW GPU BW CPU/GPU BW ,688с. 1,494 с. 5,815 21,926с. 5,118 с. 4, ,286 с. 1,965 с. 8,797 44,753 с. 5,890 с. 7, ,881 с. 3,778 с. 8,968 95,077 с. 11,574 8, с ,578 с. 2,594 с. 10,631 72,714 с. 8,276 с. 8, ,241 с. 3,153 с. 17, ,278 с. 9,537 с. 15, ,676 с. 6,006 с. 18, ,857 с ,473 с. 16,395 Примечание: 1. FB Forward Backward. BW Baum-Welch. CPU/GPU отношение времени выполнения CPU к GPU. 2. Время пересылки в память GPU включено в общее время. Наибольший прирост производительности достигается при размере параметрического вектора D = 32, и N = 32 состояниях модели, т.к. в этом случае задействованы все ядра GPU. Выводы Применение современных графических процессоров для реализации математического аппарата Скрытых Марковских Моделей позволяет получить значительный прирост производительности относительно центрального процессора, как на этапе обучения, так и при декодировании СММ [2], особенно при построении моделей с большим количеством состояний. Однако с практической точки зрения, целесообразно оптимизировать лишь те участки алгоритма, на которых выполняются ресурсоемкие матричные и векторные операции, в частности, вычисление значений функции Гауссовой смеси для обрабатываемых последовательностей и расчет матрицы ковариации. Итеративная часть алгоритма forward-backward (формулы 4 и 6) занимает малую часть от общего времени вычисления и сложна в реализации на GPU, поэтому ее оптимизация не представляется целесообразной. Такой

26 же вывод можно сделать относительно расчета матрицы вероятностей переходов между состояниями и весов компонент Гауссовой смеси (формулы 8 и 11). Повышение итоговой производительности в несколько десятков раз позволит применять более сложные Марковские Модели, а также, увеличить объем материала, используемого при обучении, что представляется перспективным с точки зрения реализации более качественных систем распознавания речи. Литература 1. Vaseghi, Saeed V. Advanced digital signal processing and noise reduction. 3 rd ed. Chichester, England: John Wiley & Sons, p. 2. Гефке Д.А., Зацепин П.М. Применение технологии CUDA для декодирования Скрытых Марковских Моделей «Многоядерные процессоры, параллельное программирование, ПЛИС, системы обработки сигналов» - Сборник статей II региональной научно-практической конференции, 2012 г., с Hidden Markov Model Toolkit Book. - Cambridge University Engineering Department, NVIDIA CUDA C Programming Guide and CUDA SDK

27 ОСОБЕННОСТИ ВЫЯВЛЕНИЯ ЗАВИСИМОСТЕЙ ПРОСТРАНСТВ ПРЕДСТАВЛЕНИЯ ПАРАМЕТРОВ ДЕКОМПОЗИЦИИ РЕЧЕВОГО СИГНАЛА ПРИ ЕГО ОБРАБОТКЕ А. А. Афанасьев Академия ФСО России При передаче речевых сигналов в цифровом виде по каналам связи одним из основных направлений совершенствования систем обработки является качественное, эффективное и компактное их представление. В основе реализации процедур предсказания лежит декомпозиция речевого сигнала и представления его в виде отклика дискретной системы с постоянными параметрами на локальных временных участках на соответствующий сигнал возбуждения, при этом соответствующие множества параметров декомпозиции считаются взаимно несвязанными между собой [1, 2]. Данные параметры подвергаются обработке и кодированию независимо друг от друга, что приводит к повышению информационной избыточности передаваемого сигнала. Выявление и учет соответствующих зависимостей параметров декомпозиции речевого сигнала при линейном предсказании дает возможность использовать их для повышения качественных характеристик процедур обработки речевых сигналов. В основе систем предсказания лежит использование авторегрессионной модели параметрического цифрового спектрального анализа. В классической постановке задачи параметрического цифрового спектрального анализа возбуждение формирующего фильтра осуществляется сигналом, представляющим собой реализации белого шума с математическим ожиданием равным нулю и единичной дисперсией. Точность идентификации математической модели исследуемого процесса напрямую связана с выбором величины ее порядка. Применительно к задаче линейного предсказания речи повышение порядка передаточных функций фильтров анализа и синтеза приводит к "обелению" сигнала остатка предсказания, который согласно [2] является наилучшим сигналом возбуждения. В классической постановке задачи параметрического цифрового спектрального анализа на основе авторегрессионной модели линейное разностное уравнение формирующего фильтра выглядит следующим образом (3): M 1 nt a ynt mt unt m1 y, (1) m 27

28 где nt y - выходной сигнал, T - интервал дискретизации, a }- коэффициенты фильтра, M- порядок фильтра. Его спектральная плотность мощности определяется согласно (2): 2 { u( n)} T G, (2) M M 1 cos sin am mt am mt m1 m1 где - круговая частота дискретного преобразования Фурье. Повышение порядка модели в выражениях (1) и (2) приводит к получению более точных оценок относительно анализируемого речевого сигнала S [3]. В идеале e 2 ( n) 0при M. Однако на практике при реализации линейного предсказания значение M всегда ограничено, что приводит к возникновению сигнала e (n), являющегося сигналом возбуждения фильтра синтеза модели линейного предсказания. Таким образом, сигнал e(n) уже не является реализациями белого шума с математическим ожиданием равным нулю и единичной дисперсией. Сигнал e(n) становится квазидетерминированным относительно множества { a m } и связан с ним соответствующими зависимостями. i При формировании ограниченных множеств параметров голосового тракта { ( n)} и сигналов возбуждения в виде кодовых книг данные зависимости вырождаются в соответствующие классы подпространств соответствий между собой. Процесс в виде турбулентного шума формируемый при произнесении речевого сигнала согласно [4], как уже говорилось, представляет собой белый шум, однако на самом деле этого не происходит ввиду наличия ограниченного порядка формирующего фильтра модели линейного предсказания. Присутствие зависимостей между параметрами, описывающими передаточную функцию голосового тракта на участке квазистационарности и соответствующего сигнала возбуждения, объясняется особенностями постановки и решения обратной задачи цифрового спектрального анализа при фиксированном порядке формирующего фильтра [3,5]. В результате использования такого подхода при реализации систем с линейным предсказанием существует возможность уменьшения данных о сигнале возбуждения. Данное сокращение количества выделяемых бит на представление сигнала возбуждения связано с уменьшением мощности пространства представлений данного сигнала. { m 28

29 Практические исследования данных зависимостей показали отсутствие возможности полного устранения информации о сигнале возбуждения, так как точную индивидуальную взаимосвязь соответствующих векторов кодовых книг параметров передаточных функций голосового тракта и соответствующих им сигналов возбуждения при обработке речи на основе процедуры линейного предсказания реализовать не удалось. К достоинствам такого подхода следует отнести тот факт, что сокращение информации о сигнале возбуждения в кадре передачи позволяет значительно снизить скорость передачи данных в канале связи, а также уменьшить вычислительную сложность алгоритма кодирования речевого сигнала на передающей стороне. При этом возможно значительное понижение скорости передачи данных в канале связи по сравнению с известными способами кодирования, либо перераспределение информационного ресурса, предоставляемого каналом связи, на формирование дополнительных сервисов абонентского обслуживания. При реализации предлагаемых решений было выявлено, что использование взаимозависимостей параметров голосового тракта и сигналов возбуждения при разработке низкоскоростных систем кодирования речи дает возможность сокращения средней скорости передачи при сохранении разборчивости синтезированной речи. Применение предлагаемого подхода возможно в системах обработки речевых сигналов, использующих в своей основе процедуру линейного предсказания. Литература 1. Шелухин, О. И. Цифровая обработка и передача речи / Под ред. Шелухина О. И. М.: Радио и связь, с. : ил. 2. Рабинер, Л. Р. Цифровая обработка речевых сигналов / Л. Р. Рабинер, Р. В. Шафер. М. : Радио и связь, с. 3. Марпл-мл., С. Л. Цифровой спектральный анализ и его приложения: пер. с англ. М.: Мир, с., ил. 4. Маркел, Дж. Д. Линейное предсказание речи / Д. Маркел, А. Х. Грей.пер. с англ. / под ред. Ю. Н. Прохорова и В. С. Звездина. М. : Связь, с. : ил. 5. Самарский, А.А. Численные методы решения обратных задач математической физики / Вабищевич П.Н. М.: ЛКИ, с. 29

30 ОПЫТ ПРОЕКТИРОВАНИЯ УСТРОЙСТВ НА БАЗЕ ПЛИС АРХИТЕКТУРЫ FPGA Н.Ю. Ершова, М.А. Сережина, К.А. Долгий Петрозаводский государственный университет, физико-технический факультет Применение интегральных схем с программируемой логикой (ПЛИС) в самых различных областях в суперкомпьютерах, на рынке проводных и беспроводных коммуникаций, в области цифровой обработки сигналов и т.п. требует формирования у сегодняшних студентов «готовности проектировать и конструировать типовые детали и узлы с использованием стандартных средств компьютерного проектирования» на современной элементной базе [1]. Отвечая этим требованиям, в Петрозаводском государственном университете внесены изменения в программно-аппаратное обеспечение дисциплины «Основы проектирования приборов и систем» бакалавриатов по направлениям подготовки «Приборостроение», «Информатика и вычислительная техника» и «Электроника и наноэлектроника». Так, в 2011/2012 году студентам 3 курса специальности «Физическая электроника» и направления «Информатика и вычислительная техника» впервые были предложены творческие индивидуальные задания в среде Quartus II, выполнение которых приравнивалось к сдаче зачета по дисциплине. Из пяти студентов, выразивших желание освоить новый программный продукт, отчитались в выполнении только двое, отметив, что задание было действительно интересным и заставило восстановить знания по ряду ранее изученных дисциплин, но довольно трудоемким. В 2012/2013 учебном году изучение языка описания аппаратных средств VHDL (Very high-speed integrated circuits Hardware Design Language) введено в учебный процесс. Сначала студентам предлагается краткий лекционный материал о проектировании интегральных схем на языках программирования аппаратных средств, а далее они выполняют несколько лабораторных работ в системе моделирования Model Sim и САПР Quartus II Web Edition. Формирование компетенций, таких как: способность участвовать в разработке аппаратных и/или программных средств вычислительной техники; применять современные технологии разработки программных комплексов организовывать работу и руководить коллективами разработчи- 30

31 ков аппаратных и/или программных средств информационных и автоматизированных систем [1] было продолжено в рамках дисциплины «Проектирование микропроцессорных систем» магистратур по направлениям подготовки «Информатика и вычислительная техника» и «Приборостроение». Изначально лабораторный практикум по этой дисциплине студенты выполняли на программно-аппаратном комплексе, базирующемся на технологии FPSLIC (Field Programmable System Level Integration Circuts). Микросхемы FPSLIC фирмы Atmel объединяют на одном кристалле фиксированную (FPGA матрица) и программируемую логику (AVR-микроконтроллер). Ядра FPGA и AVR связаны гибким интерфейсом, который позволяет реализовывать различные методы системной интеграции. Часть работ была ориентирована на моделирование в программе ModelSim, встроенной в интегрированную среду разработки устройств на основе FPSLIC фирмы Atmel System Designer, и изучение всех происходящих процессов в том или ином логическом устройстве, описанном на языке VHDL. Вторая часть лабораторных работ выполнялась на стендахstk-500 и STK-594 (фирмы Atmel) и была посвящена непосредственному программированию AVR-микроконтроллера и FPGA матрицы, а также изучению интерфейса их взаимодействия. На рисунке 1 представлен результат выполнения одной из лабораторных работ отображение двоичного счетчика на светодиодах. Рисунок 1. Работа FPSLIC в режиме двоичного счетчика Однако, в силу того, что в последнее время технология FPSLIC не развивается, было принято решение о модернизации лабораторного практикума. В текущем учебном году он был поставлен не только на новом программном обеспечении Quartus II, поддерживающим весь цикл проектирования циф- 31

32 ровых устройств на основе программируемой и реконфигурируемой логики, но и на новой элементной базе платах minidilab CIV с ПЛИС Cyclone IV фирмы Altera EP4CE6E22C8N (рисунок 2) [2]. Наличие разъемов расширения позволяет ставить интересные и творческие лабораторные работы. Рисунок 2. Структурная схема стенда minidilab-civ Лабораторный практикум представлен шестью работами, часть из которых выполняется в командах по 2-3 магистра. На рисунке 3 представлены результаты работы, целью которой являлась разработка алгоритма на языке VHDL, выводящего геометрическую фигуру на экран VGA монитора. Рисунок 3. Программа, отображающая заданную геометрическую фигуру на экране VGA монитора На рисунке 4 семисегментный индикатор, соединенный с платой minidilab-civ, отображает результат операции сложения двух операндов. Операция выполнена в упрощенном блоке АЛУ, разработанном студентами. 32

33 Рисунок 4. Результат операции сложения двух операндов в разработанном блоке АЛУ В результате прохождения нового комплекса лабораторных работ (курс проходил в первом семестре учебного года), студенты изучили язык VHDL, освоили новый САПР, приобрели навыки программирования ПЛИС. Отметим, что в освоении нового программного и аппаратного обеспечения, разработке лабораторных работ активную роль играют сами студенты. Так магистрами были успешно защищены две диссертации [3, 4], и в настоящее время еще три магистра выполняют выпускные работы на ПЛИС. Кроме этого, ведется разработка сетевого образовательного модуля, где будут представлены рабочие программы дисциплин, в рамках которых изучаются ПЛИС, лекционные материалы, задания лабораторных практикумов, глоссарий, промежуточные и контрольные тесты по дисциплинам, ссылки на актуальные источники литературы и т.д. Выпускники также активно используют знания и навыки программирования ПЛИС в своей дальнейшей научной работе в аспирантуре. Таким образом, опыт применения ПЛИС отражает заинтересованность со стороны студентов, и формирует востребованные рынком труда профессиональные компетенции. Литература 1. Федеральные государственные образовательные стандарты (ФГОС) по специальностям и направлениям обучения ПетрГУ [Электронный ресурс]. Режим доступа: (дата обращения: ). 2. Ершова Н. Ю., Сережина М. А. Модернизация лабораторного практикума на новой элементной базе / Н.Ю. Ершова, М.А. Сережина// Университеты в образовательном пространстве региона: опыт, 33

34 традиции и инновации: Материалы VI региональной научнометодической конф. (22-23 ноября 2012 г., г. Петрозаводск).- Петрозаводск, С Манасеев Ф.Н. Создание программно-аппаратного лабораторного комплекса по технологии FPSLIC: Диссертация на соискание степени «Магистр техники и технологий» по направлению «Информатика и вычислительная техника». Петрозаводск, с. 4. Прожеева В.В. Разработка IP-ядра типового микропроцессора с возможностью внесения проектных изменений: Диссертация на соискание степени «Магистр техники и технологий» по направлению «Приборостроение». Петрозаводск, с. 34

35 ПРОГРАММНАЯ ПРОШИВКА ПЛИС ДЛЯ ПЛАТЫ СИНТЕЗАТОРОВ ЧАСТОТ Р.С. Широченко, Д.С.Широченко ТУСУР, Радиотехнический факультет, кафедра ТОР Схема ФАПЧ используется в качестве основного элемента при построении синтезаторов частоты, которые вырабатывают сетку высокостабильных частот, кратных частоте опорного генератора. Для обеспечения высокой стабильности используют опорный генератор с кварцевым резонатором. Рисунок 1. Структурная схема синтезатора частоты с ФАПЧ Частота опорного генератора f ОП делится на целое число R с помощью входного делителя. На его выходе вырабатывается сигнал с частотой f REF /R. Частота ГУН также делится на целое число N при помощи делителя в петле ФАПЧ, принимая значения f 0 /N. Когда схема ФАПЧ работает в режиме захвата опорного сигнала, имеет место равенство: f REF R При получении различных коэффициентов деления применяют программируемые делители. Тем самым обеспечивается широкий спектр выходных частот синтезатора, кратных частоте опорного сигнала. Диапазон выходных частот синтезатора определяется полосой захвата ФАПЧ, а абсолютные значения границ этого диапазона зависят от собственной частоты ГУН, относительно которой располагается полоса захвата. Величина шага изменения частоты синтезатора 35 f 0 N. f (разрешающая способность синтезатора) в пределах диапазона его перестройки зависит от величины коэффициента деления делитель N и от времени захвата ФАПЧ. При уменьшении f требуется уменьшение времени захвата(времени установления),то есть уменьше-

36 ние времени перехода от одного устойчивого состояния с частотой f 01 до другого устойчивого состояния с частотой f f.[1] f Ключевой особенностью ADF4154 является быстрый режим блокировки с таймером. Пользователь может запрограммировать отсчет заданного значение времени, так что PLL остается в широкополосном режиме. Управление всеми чиповыми регистрами происходит с помощью простого 3-проводного интерфейса. Устройство работает с источником питания от 2,7 В до 3,3 В и может быть выключен, когда он не используется.[2] Рисунок 2.Структурная схема ADF4153 Задачей проекта было написание программной прошивки ПЛИС для платы, состоящей из 4 синтезаторов частот ADF4153. Каждый синтезатор должен был настроен на свою определенную частоту. Необходимо было для каждого синтезатора подать необходимые для него данные четырех загрузочных регистров. Обеспечить систему коммутации синтезаторов, и проверки захвата всех синтезаторов. Создавать HDL-проект мы будем в популярной среде для отладки и симулирования ПЛИС Model Sim от Mentor Graphics. Помимо головного модуля synt.v добавляем также следующие пустые файлы: synt_tb.v; rom_synt.v; Где synt_tb.v - файл тестирования, rom_synt.v файл таблицы информации для регистов, хранящися в ROM. Теперь для моделирования нашего проекта необходимо создать модуль synt_tb. Этот модуль не содержит входных и выходных портов. Директивой 36

37 timescale задаем размерность временных задержек, необходимых при моделировании. По умолчанию значение директивы timescale равно 1ns/1ns. Но в тестбенче нам необходимо будет задавать длительность полупериода тактовой частоты 20 МГц. Первое значение директивы timescale это единица времени, в которой будут указываться временные задержки в тестбенче, а второе разрешение по времени. Указав значение директивы timescale равным 1ns/100ps, мы сможем прописывать временные задержки, имеющие не целое значение. Добавим тактовый сигнал частоты 20 МГЦ: initial begin my_synt.clk = 0; in_clk = 0; forever #25 in_clk=!in_clk; end Добавим сигнал проверки загрузки синтезатора. initial begin synt_ld = 1'b1; #40000; synt_ld = 1'b0; #10000; synt_ld =1'b1; end Добавим сигнал запуска загрузки с разными состояниями. initial begin for (i = 8; i< 15; i = i + 1) begin pp = i; #100; next_p = 1; #100; next_p = 0; #16000; end 37

38 end Подключим головной модуль нашего проекта. syntmy_synt(.in_clk(in_clk),.next_p(next_p),.point(point),.synt_clk(synt_clk),.mosi(mosi),.synt_cs(synt_cs),.synt_ld(synt_ld),.lock(lock) ); Сохраним do-файл под именем, например, «start.do» в директорию проекта. Добавим в файл все интересующие для нас входные и выходные сигналы. Опишем модуль загрузки 1 синтезатора. modulesynt ( in_clk, //тактовая частота 40Мгц next_p, //импульс перестройка на частотную точку point, //номер частотной точки synt_ld, //индикация захвата синтезатора synt_clk, //тактовая частота mosi, //данные для регистров синтезатора synt_cs, //сигнла разрешенных данных lock //сигнал наличия захвата); Работа модуля загрузки синтезатора начинается по приходу импульса next_p, каждому модулю соответствует своя частотная точка (частота настройка синтезатора на определенную частоту). Для каждой частотной точки соответствуют информации для регистров из таблицы, записанные в ROM ПЛИС. Данные из таблицы для четырех регистров последовательно подаются на синтезатор, происходит загрузка (или захват). Далее происходит проверка захвата синтезатора. Для этого каждую секунду снимаем значения с синтезатора(1или 0) synt_ld(индикация захвата синтезатора), если пять значений равны единице, значит загрузка синтезатора произошла. И сигнал lock выставляем в значение 1. Все действия происходит с помощью автомата(на основе case). Приведем очередность состояний. //состояния автомата 38

39 parameter ST_WAIT = 4'h0; //ожидание начала работы по импульсу next_p parameter ST_POINT = 4'h1; // определение номера частотной точки point[7:0] parameter ST_ZAGR3 = 4'h2; //загрузка регистра RO в ROM ПЛИС parameter ST_ZAGR2 = 4'h3; //прогрузка регистров R1-R3 parameter ST_ZAGR1 = 4'h4; parameter ST_ZAGR0 = 4'h5; parameter ST_SYNT = 4'h6; //проверка наличия сигнала synt_ld parameter ST_END = 4'hF; //конец цикла Литература 1. Микросхемы ФАПЧ и синтезатора на их основе производства компании Analog Devices, Михалев Павел, журнал «Компоненты и технологии», Fractional-N Frequency Synthesizer, Analog Devices data sheet. 39

40 СРАВНИТЕЛЬНЫЙ АНАЛИЗ СУЩЕСТВУЮЩИХ ОБЛАЧНЫХ ПЛАТФОРМ ДЛЯ СОЗДАНИЯ ЭКСПЕРИМЕНТАЛЬНОГО ОБРАЗЦА ЦОД С ПРОГРАММНО-КОНФИГУРИРУЕМЫМИ СЕТЯМИ ЕГО СЕГМЕНТОВ Л.С. Адрова, П.Н. Полежаев ФГБОУ ВПО «Оренбургский государственный университет» В настоящее время активно развиваются облачные технологии. Большинство организаций переводят собственную информационную инфраструктуру на облачные системы. Это снижает затраты на ее создание и администрирование, обеспечивает гибкость в плане масштабируемости и оплаты только реально потребляемых бизнес-приложениями ресурсов процессоров, памяти и пропускной способности каналов связи. В рамках реализуемого в Оренбургском государственном университете проекта планируется создание экспериментального образца распределенного центра обработки данных (ЦОД) на основе программно-конфигурируемых сетей (ПКС) его сегментов, который будет использован для исследования: методов маршрутизации потоков данных; алгоритмов планирования групп виртуальных машин, обеспечивающих локализацию их размещения с целью снижения сетевой конкуренции; алгоритмов сбора сетевой статистики, счетчиков производительности вычислительных и сетевых ресурсов; принципов соединения алгоритмов планирования групп виртуальных машин с методами маршрутизации потоков данных между ними на основе проактивной схемы; принципов реализации высокопроизводительных вычислений поверх облачных систем. В основе подхода ПКС лежит возможность динамически управлять пересылкой данных в сети с помощью открытого протокола OpenFlow [1]. Все активные сетевые устройства объединяются под управлением сетевой операционной системы (СОС), которая обеспечивает приложениям доступ к управлению сетью. Сетевые контроллеры могут быть централизованными, использовать общие абстракции для пересылки пакетов. За счет управления пересылкой данных в сети использование ПКС в ЦОД позволяет реализовать схемы одновременной многопутевой передачи данных, управление потоками на основе приоритетов, виртуализацию сети, обеспечить QoS, эффективно распределить нагрузку на сеть. Централизация и открытость средств управления ПКС позволяет гибко и эффективно адаптировать работу ЦОД под возникающие потребности бизнеса, что ускоряет внедрение инноваций и обеспечивает конкурентоспособность компаний. 40

41 При реализации данного центра обработки данных возникла задача анализа существующих облачных платформ для выбора. Для анализа были выбраны лучшие программные решения, существующие на рынке облачных IaaS платформ: OpenStack, WMWarevSphere и Eucalyptus. Сводные результаты анализа по выбранным основным критериям приведены в таблице 1. Таблица 1 Сводные результаты сравнения облачных платформ Критерии Облачные платформы vsphere 5.1 Eucalyptus 3.2 OpenStack Интеграция с ПКС Нет Нет Нет Учет топологии сети Нет Нет Нет припланирова- ния групп экземпляров виртуальных машин Расширяемость Ограничена Да Да решениями VMWare Тип лицензии Проприетарный GPL v3 Apache 2.0 продукт Масштабируемость Значительная по количеству разворачиваемых Ограниченная масштабируемость, проблемы Значительная по количеству узлов Computer, Swiftили сегальных вирту- с развертываниментов машин ем большого числа серверов. Надежность работы и хранения данных Реализована с помощью vcentersite Recovery Manager и vcloudconnect or Реализована резервированием контроллера 41 Дублирование данных сразу на несколько серверов. API vcloud API API EC2 OpenStack API VMware vcloud Suite комплексный пакет продуктов, для ускоренной инициализации услуг и обеспечивающий высокий уровень обслуживания

42 для всех приложений.suite включает в себя множество компонентов, которые позволяют: 1. Собирать приложения по принципу «сверху вниз» с использованием стандартных компонентов и последующим развертыванием на портале самообслуживания и виртуальных машин по требованию с помощью VMware vcloud. 2. Осуществлять более адаптивное реагирование ИТ-отдела на бизнеспотребности. Виртуальные ЦОД абстрагируют и создают пулы сетевых, вычислительных ресурсов и ресурсов хранения, а также предоставляют службы безопасности и доступности. Программно определяемые сетевые службы предоставляют виртуальным машинам в облаке VMware возможность использования ресурсов в любой точке ЦОД независимо от границ сети [2]. 3. Возможность подготовиться к пикам нагрузки за счет использования надежных общедоступных облаков по мере необходимости [2]. Для адаптивной среды характерны эластичная масштабируемость и постоянное изменение рабочих нагрузок, мониторинг производительности и упреждающие оповещения на проблемы облака, планирование и оптимизация ресурсов, а также создание отчетов, управление конфигурациями. Так же есть услуги подписки и поддержки, стартовые семинары. Средство vcloud Director, основные особенности возможность внешнего доступа к функциям самообслуживания, например каталогу служб сетевой инфраструктуры, системам биллинга и т. д. vcloud API это интерфейс, предоставляющий более гибкую настройку элементов vcloud, например более детальную настройку пулов ресурсов или самостоятельную настройку необходимых сервисов. Eucalyptus представляет собой инфраструктуру для реализации модели облачных вычислений уровня IaaS. Eucalyptus обладает следующими характеристиками [3]: интерфейс, совместимый с EC2 и S3; поддержка Xen и KVM; простота установки и развертывания, поддержка большинства дистрибутивов; наличие инструментов для администрирования облака, управления профилями пользователей; возможность объединения множества кластеров, каждый из которых располагается в отдельном сегменте сети, в единое облако; журналирование событий для более быстрой диагностики и решения проблем. Усиленный контроллер узлов повышает стабильность и отказоустойчивость приложений, как и надежность всего облака. Eucalyptus обеспечивает самообслуживание пользователей в части выделения вычислительных и сетевых ресурсов и ресурсов хранения данных. 42

43 Консоль ПО позволяет осуществлять разнообразные операции самообслуживания, включая выделение экземпляров ОС [4]. OpenStack open source проект, по разработке платформы, позволяющей строить частные и публичные облака [5]. Проект характеризуется следующими особенностями [5]: 1. Поддерживает только официальный API (OpenStack API). Поддержка всех прочих API реализовывается во внешних расширениях. 2. Надежность хранения данных достигается за счет дублирования сразу на несколько серверов, так что если один из них выйдет из строя, система сможет восстановить данные с другого сервера и вновь продублировать их. 3. Прозрачная масштабируемость, чтобы расширить хранилище, необходимо всего лишь подключить новый узел к кластеру, а синхронизацию с хранилищем обеспечивает компонент Swift. Основа облачной инфраструктуры OpenStack это контроллеры вычислений. Как правило, их количество превосходит количество всех остальных машин сети. В функции контроллеров входит прием запросов на создание новой виртуальной машины, ее запуск, слежение за состоянием виртуальных машин, перезапуск и так далее [5]. OpenStack не является замкнутой обособленной системой и использует сторонние продукты. Для управления им можно использовать стандартные клиенты сервиса Amazon EC2, а для запуска виртуальных машин применять системы виртуализации (поддерживаются KVM, UML, XEN, HyperV и qemu). Код OpenStack свободно распространяется под лицензией Apache 2.0, которая обеспечивает возможность запустить программное обеспечение, добавить дополнительные настройки либо вернуть его в исходное состояние. Ни одно из рассматриваемых облачных решений не поддерживает интеграцию с программно-конфигурируемыми сетями, используемые алгоритмы планирования групп экземпляров виртуальных машин недостаточно эффекты, т.к. при их назначении на физические узлы не используют информацию о топологии и состоянии сети. Анализ показал, что платформа OpenStack является наиболее адекватным решением для целей проекта. Ее основные недостатки отсутствие интеграции с ПКС и основанные на ранжировании, алгоритмы планирования групп экземпляров виртуальных машин будут исправлены в рамках настоящего проекта. 43

44 Исследования поддержаны федеральной целевой программой «Исследования и разработки по приоритетным направлениям развития научнотехнологического комплекса России на годы» (госконтракт ) и РФФИ (проект ). Литература 1. IntrotoOpenFlow [Электронный ресурс]. Режим доступа: 2. Технический проспект VMware vcloud Suite [Электронный ресурс]. Режим доступа: Suite-Datasheet.pdf 3. Зобнин, Е. По дороге с облаками. Пошаговое руководство по созданию инфраструктуры облачных вычислений на базе Eucalyptus // Журнал "Хакер" 11(131) С Тафт, Д. Eucalyptus 3.2 добавляет новые функции управления и хранения данных // Журнал "PCWEEK" [Электронный ресурс]. Режим доступа: 5. Компоненты OpenStack [Электронный ресурс]. Режим доступа: 44

45 ПРИМЕНЕНИЕ СИСТЕМ НА КРИСТАЛЛЕ НА БАЗЕ ПЛИС ДЛЯ РАЗРАБОТКИ ИЗМЕРИТЕЛЕЙ ФАЗОЧАСТОТНЫХ ХАРАКТЕРИСТИК И.Е. Тарасов ФБГОУ ВПО «Ковровская государственная технологическая академия имени В.А. Дегтярева», кафедра физики При разработке контрольно-измерительной аппаратуры на базе цифровых систем важную роль играет выбор используемых алгоритмов обработки сигналов. В зависимости от производительности аппаратной платформы разработчику становятся доступными более или менее ресурсоемкие алгоритмы, применение которых для обработки измерительной информации способно улучшить метрологические характеристики разрабатываемой аппаратуры, повысить помехоустойчивость, расширить полосу пропускания и т.д. Развитие элементной базы программируемых логических интегральных схем (ПЛИС) позволяет рассматривать применение ресурсоемких методов и алгоритмов обработки измерительной информации, которые ранее не могли применяться по организационно-экономическим соображениям. Устойчивой тенденцией развития архитектуры ПЛИС с архитектурой FPGA является повышение производительности в задачах цифровой обработки сигналов. В частности, новые семейства FPGA Xilinx содержат (семействоartix) и (семейство Kintex) аппаратных блоков «умножение с накоплением». Указанные семейства имеют относительно невысокую стоимость и могут быть использованы в качестве аппаратной платформы для создания контрольно-измерительной аппаратуры высокого класса. Применение ПЛИС FPGA представляется эффективным для измерения параметров физических величин, которые могут быть сведены к цифровой фильтрации, спектральному и вейвлет-анализу и другим методам, основанным на массовом применении операций «умножение с накоплением». Это позволяет в полной мере использовать высокие значения абсолютной производительности FPGA, поскольку операции с несколькими частотными каналами могут быть эффективно распараллелены, что и позволяет задействовать вычислительные блоки, входящие в состав FPGA. Однако применение программируемой элементной базы формирует ряд задач, подлежащих решению при создании конкретных образцов аппаратуры. С точки зрения архитектуры измерительного устройства, реализация параллельных вычислительных структур еще не образует системы в целом. 45

46 Современные требования к контрольно-измерительной аппаратуре, помимо метрологических характеристик, включают в себя требования к интерфейсам, системам хранения результатов измерений, диагностики и калибровки, автоматического управления режимами работы и др. Устоявшейся практикой является реализация измерительных устройств на базе процессорной системы. Повышение степени интеграции компонентов на кристалле ПЛИС позволяет перейти от архитектуры «процессор + ПЛИС» к архитектуре «система на кристалле» (СНК), в рамках которой параллельная вычислительная система размещается в той же ПЛИС, что и управляющий процессор, периферийные компоненты и отдельные компоненты памяти. Аппаратный состав современныхfpga делает такой подход не только возможным, но и предпочтительным. В составе FPGAсерии 7, выпускаемых Xilinx, имеется семейство Zynq 7000, представляющее собой пример СНК на базе двухядерного процессора ARM Cortex-A и матрицы программируемых логических ячеек, аналогичных применяемым в FPGAArtix (в младших кристаллах) и Kintex (в старших кристаллах Zynq). Подсистема ARM имеет собственный набор периферийных устройств, облегчающих начальный запуск СНК, включая аппаратную поддержку распространенных операционных систем (Linux, Android, VxWorks и др.). При этом производительность матрицы программируемых ресурсов многократно превышает производительность процессорной подсистемы, достигая величины 1,3 TMAC/s. Такое сочетание параметров делает Zynq 7000 эффективной аппаратной платформой для реализации контрольноизмерительной аппаратуры. Ряд разработок кафедры физики КГТА основан на определении фазочастотных характеристик периодических сигналов. В качестве примеров можно привести: устройство обработки сигнала доплеровского смещения частоты в лазерном измерителе скорости; модуль обработки сигнала синус-косинусного вращающегося трансформатора (СКВТ); широкополосный измеритель тангенса угла диэлектрических потерь. Особенностью перечисленных систем являются жесткие требования к точности измерения фазы и/или частоты. Относительно высокая стоимость первичных преобразователей (СКВТ, лазерный модуль) делает возможным применение FPGA среднего логического объема, таких как младшие модели Kintex-7 и Zynq Использование вычислительных модулей класса «сис- 46

47 тема на кристалле», реализуемых на базе ПЛИС, позволяет не только минимизировать габариты печатных плат, что важно для изделий на базе СКВТ, но и снизить влияние внешних помех на работу системы в целом, а также упростить разработку на системном уровне путем оперативного переноса части функциональности между компонентами СНК, а также между программной и аппаратной составляющими. При разработке СНК были учтены основные тенденции развития архитектуры FPGA. Прежде всего, соотношение аппаратных блоков, выполняющих умножение с накоплением, и блоков статической памяти в FPGA существенно отличается от такового в микроконтроллерах и сигнальных процессорах. Если, как упоминалось выше, количество блоков MAC достаточно велико, то объемы памяти, хотя и растут с каждым последующим семейством FPGA, все еще недостаточны для размещения кода операционной системы или отдельных системных библиотек в накристальной памяти. Поэтому при разработке следует уделять внимание достижению компактности программного кода и избегать применения табличного представления данных для систем цифровой обработки сигналов. Одним из инструментов повышения компактности кода в СНК на базе ПЛИС является переход к нуль-операндному представлению команд в центральном процессоре. При этом центральный процессор не выполняет основной объем вычислений по цифровой обработке сигналов, что перенесено в специализированные блоки обработки, интенсивно использующие аппаратные компоненты «умножение с накоплением». Ориентация на компактность кода обуславливает применение в СНК форт-процессоров, аппаратно выполняющих стековые команды языка Форт, что и обеспечивает компактность кода. Дополнительно, поскольку речь идет о софт-процессоре, выбрано 6-разрядное представление команды, что позволило дополнительно повысить эффективность использования встроенной памяти. Архитектура СНК, предназначенной для определения фазочастотных параметров периодических сигналов, представлена на рисунке 1. 47

48 Рисунок 1. Архитектура СНК, предназначенной для определения фазочастотных параметров периодических сигналов В представленной архитектуре используются от 2 каналов цифровой обработки сигналов, каждый из которых вычисляет линейную свертку входного сигнала и анализирующей функции, представленной в виде коэффициентов фильтра, или генерируемой специальным модулем. В частности, при необходимости представить анализирующую функцию длиной в несколько тысяч отсчетов (что требуется, например, для широкополосного измерителя тангенса угла диэлектрических потерь), используется генератор, реализующий алгоритм CORDIC для вычисления трансцендентных функций sin, cosи exp, которые являются компонентами вейвлет-функции Морле, используемой в качестве анализирующей: 1) где k постоянный коэффициент, регулирующий затухание гауссовского окна, модулирующего синус-косинусный ряд. Поскольку функция Морле является комплексной, вычисление линейной свертки для нее также дает результат в комплексной форме в виде вещественной и мнимой составляющих вектора, характеризующего сигнал на интервале интегрирования. Знание этих компонент позволяет вычислить фазу для гармоники сигнала, соответствующей базовой частоте анализирующей функции. РазработанноеIP-ядро генератора вейвлет-функции Морле является достаточно ресурсоемким, однако позволяет эффективно использовать ре- 48

49 сурсы ПЛИС для достижения высоких метрологических характеристик разрабатываемых систем. Особенностью генератора является использование двухкомпонентного представления экспоненты, так как аргумент экспоненты в алгоритме CORDIC ограничен величиной. Поэтому экспонента представляется в виде произведения экспоненты дробной части и части, кратной 0,5. Таблица значений экспоненты для аргументов, кратных 0,5, хранится в IP-ядре. В зависимости от разрядности отдельных составляющих IP-ядро использует до 32 блоков «умножение с накоплением». Модульное построение СНК позволяет использовать методы проектирования, рекомендуемые Xilinx в связи с выходом новой САПР Vivado[1]. Для упрощения трассировки в проектах применяется набор проектных ограничений, определяющих размещение отдельных компонентов СНК на кристалле ПЛИС. Применение ПЛИС для разработки измерителей фазочастотных характеристик позволило в конечном итоге создать серию устройств, проектируемых по сходному маршруту и обладающих высокими метрологическими показателями. При этом архитектура является хорошо масштабируемой, что позволяет последовательно улучшать характеристики измерителей при появлении новых семейств ПЛИС FPGA и средств проектирования. Литература 1. VivadoDesignSuite [Электронный ресурс]. Режим доступа: 49

50 БАЛАНСИР ТРЕВЕЛЬЯНА: - АНАЛИЗ ЗВУКОВЫХ КОЛЕБАНИЙ Ю.П. Михайличенко Томский государственный университет, физический факультет Артур Тревельян в феврале 1829 года обнаружил случайно, что нагретый железный стержень, положенный одним концом на блок из свинца, начинал вибрировать и издавал звуки, подобные тем, которые возникают у эоловой арфы [1]. В последующих опытах он получил такие же результаты с нагретыми стержнями из меди, цинка, бронзы. Размеры металлического бруска были следующие: длина равнялась 4 дюйма, сечение - 1,5х1,5 дюйма. К концу бруска была в качестве ручки прикреплен стержень длиной 7 дюймов. В последующих конструкция, дошедших уже до нашего времени размеры были несколько меньше и снизу по центру был сделан желобок, глубиной несколько миллиметров. В сечении брусок напоминал букву W и опирался на свинец двумя нижними ребрами. Если сначала брусок немного наклонить, чтобы он опирался на одно нижнее ребро, а затем аккуратно отпустить, то он будет постукивать по основанию, балансируя поочередно на гранях. В кабинете лекционных демонстраций Томского университета есть такой балансир Тревельяна (Treveliyn'srocker). Но демонстрировался он редко по двум причинам. Во-первых у него тихое звучание и, во-вторых, нет ясного понимания принципа его работы. Наша задача заключается в том, чтобы внести большую ясность в физику этого явления и сделать его более наглядным. Звук записывали на диктофон и звуковые файлы переводили в формат.wav. Для анализа звуковых колебаний, которые производятся балансиром в процессе работы, мы применили доступную программу Sony Sound Forge 9.0. На рисунке 1 приведен звуковой трек колебаний холодного балансира. Общее время колебаний составило 1,5 с. Рисунок 1.звуковой трек колебаний холодного балансира 50

51 При малой скорости соударения, когда можно не учитывать деформационные и инерционные свойства материала, в образцах возникают звуковые колебания. Время прохождения возмущения до противоположной плоскости образца длиною l туда и обратно, то есть период, можно оценить по формуле (1) из [2]. В формуле скорость звука c определяется характеристиками металла: плотностью ρ и модулем ЮнгаE. t= 2l =2l (1) c На рисунке 2 приведена кривая колебаний для второго удара, длительностью 0,02 с. Рисунок 2. кривая колебаний для второго удара В работе [3] выведена приближенная формула для периода колебания балансира Тревельяна Период зависит от момента инерции и конструктивных параметров бруска, отраженных в константахk и α. Он уменьшается с уменьшением угла наклона β. На первом рисунке видно, как период уменьшается с уменьшением амплитуды колебаний. В этой же работе приведены экспериментальные результаты для сравнения с расчетной формулой. Для измерения периода колебаний к ручке балансира прикреплялось маленькое зеркало и на движущейся фотопластинке записывались кривая колебания балансира совместно с записью колебаний камертона известной частоты. Авторы отмечали, что на слух воспринимались еще колебания более высокого тона, но методами песчаных фигур Хладни подобные колебания им зарегистрировать не удалось. Уникальность свинца определяется сочетанием большого коэффициента объемного расширения с малым значением коэффициента теплопроводности. Это приводит к тому, что в месте теплового контакта свинец настолько быстро расширяется, что его поверхность быстро вспучивается и подбрасывает нагретый брусок вверх. На рисунке 3 приведен звуковой трек колебания 51 (2)

52 нагретого примерно до С балансира, помещенного на свинцовый брусок. Длительность звучания здесь составила 23 с. Программа позволяет анализировать различные участки трека, проводить анализ Фурье колебаний и т.д. На рисунке 4 приведена сонограмма по Блекману-Харрису для узкой области частот около 1 КГц, чтобы различить гармоники. На сонограмме видно увеличение частот гармоник по мере затухания колебаний. Но характер установления колебаний в начале процесса остается нерасшифрованным. Рисунок 3. Звуковой трек колебания нагретого балансира Рисунок 4.Сонограмма по Блекману-Харрису для узкой области частот На рисунке 5 приведена начальная часть трека длительностью 1,4 с. Здесь отчетливо виден характер установления автоколебаний, что позволяет нам рассматривать балансир Тревельяна в процессе его звучания, говоря современным языком, как самоорганизующуюся систему. 52

53 Рисунок 5. Начальная часть трека Стокс в своем фундаментальном труде по акустике [4] отмечал, что задача о принципе действия прибора Тревельяна интересовала многих физиков 19-го столетия. Можно отметить, что в настоящее время все более четко определяется теория термоупругости, в которой рассматриваются и динамические эффекты при резко нестационарных процессах нагрева и, в частности, термоупругие колебания тонкостенных конструкций при теплом ударе [5]. Литература 1. Trevelyan Arthur. Notice regarding some Experiments on the Vibration of Heated MetalsTransactions - The Royal Society of Edinburg (Read 17th January и 21st March 1831.) 2. Пановко Я.Г. Основы прикладной теории колебаний и удара. Л., Машиностроение, с. 3. Bhargava S. and Ghosh R. N. Note on Trevelyan's Rocker. Phys. Rev. 1923, 22, Стретт Дж. В. Теория звука. Т с. 5. Коваленко А.Д. Основы термоупругости. Наукова думка. Киев с. 53

54 ИНТЕРАКТИВНАЯ СИСТЕМА ДИНАМИЧЕСКОЙ АКТИВНОСТИ ЧЕЛОВЕКА А.С. Бубликов 1, А.А. Мураенко 2, А.А. Шадуров 1 1 ФГБОУ ВПО «Алтайский государственный университет», 2 ООО "Шаг вперед" Введение В настоящее момент актуальной является задача сбора и анализа данных динамической активности человека. Но, к сожалению, отсутствует доступный инструмент. Такая ситуация сложилась в силу того, что профессиональные средства очень дорогостоящие и применяются как правило при профессиональной подготовке спортсменов или же в очень дорогостоящих лечебных заведениях. А также не могут отразить всю полноту картины поведения человека. Так как для сбора используются физические маркеры, которые крепятся на тело человека. Дабы решить эту проблему, было предложено разработать интерактивную систему, которая по своим характеристикам позволяла выполнять основные функции профессиональных систем и стоила на порядок меньше. Ключевым средством в решении данной проблемы, является продукт, разработанный компанией Microsoft контроллер Kinect. Так как данный контроллер позволяет получать данные, не используя физические маркеры. Постановка задачи Создать программно-аппаратный комплекс для сбора и анализа данных о динамической активности человека, состоящий из контроллера Kinect и специализированного программного обеспечения, который позволят считывать данные, не используя физические датчики. Аппаратная часть Kinect- это игровой контроллер выпущенный в двух вариациях: Kinect for Xbox и Kinect for Windows. Датчик изображенный на рисунке 1 состоит из нескольких частей [1]: IR Emitter Инфракрасный излучатель. Его назначение испускать инфракрасные лучи, которые, отражаясь от предметов, попадают назад в сенсор, где их принимает: IR Depth Sensor ИК датчик глубины. Собирает отраженные лучи, преобразуя их в расстояние от сенсора до объекта(ов). И таким образом строится, можно сказать, матрица расстояний целый кадр. Максимальное разрешение 640x480 (30 fps). 54

55 ColorSensor Цветная камера. Захват видео с максимальным разрешением 1280x960 (12fps). Угол обзора камеры: 43 по вертикали и 57 по горизонтали (угол обзора дальномера идентичный). Можно выбрать формат картинки: RGB или YUV. MicrophoneArray набор микрофонов. 4 встроенных микрофона позволяют определить местоположение источника звука и направление звуковых волн. Встроенный обработчик звукового сигнала включает подавление эха и уменьшение шума. TiltMotor Коррекция наклона. Позволяет программно настраивать наклон сенсора в диапазоне ±27 по вертикали. Рисунок 1. Схема расположения датчиков на контроллере Kinect Другой важный аспект аппаратной части диапазон «рабочих» расстояний изображен на рисунке 2, т.е. на каком расстоянии сенсор способен видеть объекты (данные дальномера). Рисунок 2. Спектр "рабочих" расстояний контроллера Kinect 55

56 Режим DefaultRange доступен как для KinectforWindows, так и для KinectforXBox, но NearRange доступен только для сенсора KinectforWindows. Kinect передает данные по трем потокам схема передачи данных изображена на рисунке 3: Видеопоток (ColorStream), Aудиопоток (AudioStream) и данные дальномера (DepthStream). Система сбора данных строиться на перехвате данных с этих потоков. Рисунок 3. Схема передачи обработки потоков контроллера Kinect Программная часть Программная часть реализована на языке C# с помощью Kinect SDK 1.5. Реализация стала возможной благодаря возможности сенсора распознать фигуру человека и его движения [2]. Одновременно сенсор может определять наличие 6 человек в кадре. Но собирать информацию представляться возможным только с двух, но этот параметр возможно изменить. Данная функция, распознавая скелет человека, наносит на него маркеры, в SDK они называются Joint [3], число маркеров ровняется 20. И это число неизменно. Программа позволяет собирать данные о перемещении маркеров расположенных на теле человека. Причем эти маркеры не являются отдельными датчиками, а наносятся непосредственно Kinect. Поскольку контроллер не обладает функцией сохранения данных. Это приложение создается отдельно и вызывается, как отдельная функция программного обеспечения. На вход программы подаются данные, которые полученные путем вызова функции описанной выше, на выходе программы формируются файл, содержащие координаты перемещения маркеров и файл, содержащие видеозапись эксперимента. Представляя данные в удобной для анализ, в математических пакетах, форме. Литература 1. Схема расположения датчиков на контроллере KinectURL[Электронный ресурс]. Режим доступа: 56

57 2. Описания функционала контроллера KinectURL[Электронный ресурс]. Режим доступа: 3. Программная спецификация URL[Электронный ресурс]. Режим доступа: 57

58 НЕОБХОДИМЫЕ УСЛОВИЯ ОПТИМАЛЬНОСТИ ОПЕРАТОРОВ МОДУЛЯЦИИ И ДЕМОДУЛЯЦИИ К. А. Батенков Академия ФСО России В ходе исследований была сформулирована и доказана теорема, позволяющая путем решения системы уравнений находить оптимальные условные плотности вероятностей, представляющие собой наиболее общие рандомизированные операторы модуляции и демодуляции, для задачи синтеза дискретного отображения непрерывного многопараметрического канала связи. Теорема. Необходимым условием оптимальности рандомизированных операторов модуляции и демодуляции, определяемых решением задачи синтеза дискретного отображения непрерывного многопараметрического канала связи по критерию минимального среднего риска, является неотрицательность соответствующих им условных плотностей только в областях пространств сигналов, в которых функции z (5) и z' (6) принимают минимальные значения, то есть: : z x, y min z x, x, x, x, (1) : z' y', x' min z' x', x', x', x', (2) : z x, y min z x, x, x, x, (3) : z' y', x' min z' x', x', x', x'. (4) где : x x x, x; t j, rj и ' : x ' x' x', x'; t ' j, r' j стохастические операторы модуляции Ф и демодуляции Ф', представляющие собой условные плотности вероятностей; y, x;, 0 x t r x y', x'; ', ' 0 j j x' x' t j r j x' y, x;, 0 x t r x y', x'; ', ' 0 j j x' x' t j r j x' P x' j x t ', r ' x xt, r j j j j j условная плотность вероятности сигнала на выходе канала связи x'(t',r') при известном входном x(t,r), по сути описывающая в общем виде модель непрерывного многопараметрического канала связи; x x : x' x t', r', t r x ', x;, j j j j 58

59 g где z N N N v v0 v j 1, j 2,..., j k x x' x'... k 1 j1 1 jk 1 g z' j1, j2,..., j k x x g x' x'... x' x' x' x N p x' x G j1, j2,..., j k операторов со степенью вложенности i, N N N v v0 v j 1, j 2,..., j k k 1 j1 1 jk 1 g x x j1, j2,..., jk g x (5) (6), (7) вектор линейных интегральных, при этом элементы данного вектора, j1 1, Nv, j i 1, N v, являются линейными интегральными операторами функции, при этом G j G,, при i = 1, G j G, g j g, при i = 2 и т. д.; вектор функций, аргументами которой могут выступать условные плотности и, вектора производных D ω и D ω', а также вектор линейных интегральных операторов G i+1 со степенью вложенности i+1, при этом элементы данного вектора являются в общем случае нелинейными функциями; f N 1 p1 p j1, j 1... p p1 i1 1i 2 1 i p 1 dx' dx' a i 1 G N p f ' j1, j2,..., jk i x t r... x 2 x M dtdr, упорядоченный вектор производных до N p го порядка включительно условной плотности вероятностей сигнала на выходе модулятора x(t,r) при заданном входном x по переменным, соответствую- 1 i1 k m1 x x i2 g p x1 G j1, j2,..., jm1 j1, j2,..., jm i p g x, x' 1 p1 p j1, j p dxdx. G j1, j2,..., j k G ' p1 i1 1i 2 1 i p 1 x x N i i j1, j2,..., jk x i1 m1 x... x i2 p k g j1, j2,..., jm1 G i p j1, j2,..., j m g 2,..., jk x x xi, x,..., x 1 i2 i p x, x',..., jk x' x' xi, x,..., x 1 i2 ip x x' g G g,, D, D, G g,, D, D, G..., 1 1 x x x' x' ' 2 2 x x x' x' ' 3 g3 G i G j j,...,1, G j, j,..., 2,..., G j, j,..., j G,..., g j g g 1, j1, j2 j i 0 1, j2,..., ji j1 1, j2,..., ji j1, j T i g j, j,...,1, g j, j,..., 2,..., g j1, j2,..., ji 1 2 D D, D,..., D N T p i T i 1, N v j1, j2,..., j i 1 g,..., j1, j2 j i 1, j2,..., ji j1 2 x x 1 j2,..., ji j1,, j x' x ' 2 g j1, j2,..., j i 59

60 k k x x x, x1, x2,..., xn ; t j, rj щим входному сигналу x, а D, k 1, N, k p j x 1 i j i j 1, N упорядоченный вектор всех производных k-го порядка условной плотности вероятностей сигнала на выходе модулятора x(t,r) при заданном входном x по переменным, соответствующим входному сигналу x; D' D', D',..., D' упорядоченный вектор производных до N' p го порядка включительно условной плотности вероятностей сигнала на выходе демодулятора x' при заданном входном x'(t,r) по переменным, соответст- k k x' x' x' 1, x' 2,..., x' N ', x'; t' j, r' j вующим выходному сигналу x', а D ', k j x' 1 i j k, i j 1, N' упорядоченный вектор всех производных k-го порядка условной плотности вероятностей сигнала на выходе демодулятора x' при заданном входном x'(t,r) по переменным, соответствующим выходному сигналу x'; 1, x, x Dxx G j... G, 1 j1, j2,..., jk fg x, x (8) j1, j2,..., jk 0, x, x Dxx G j... G,,...,, 1 j1 j2 jk 1, x', x' Dx' x' G j... G, 1 j1, j2,..., jk f ' G x', x' (9) j1, j2,..., jk 0, x', x' Dx' x' G j... G,,...,. 1 j1 j2 jk где D xx G j G j j,..., j k, D ограниченные области определения 1 1, 2 x' x' G j G j j k 1 j 1, 2,..., декартовых произведений x x и x ' x' интегральных операторов G j 1... G j1, j 2,..., j k ; где 1, N' p 1 x' x u... x' x 2 x, x' y y x, x' y y G j G j j,..., , 2 (10) (11) некоторая функция, заданная на области определения операторов j k. N ' T p x, x' G... G y, yu... x x j1 j1, j2,..., jk y, y f y, yg x, x' u... G j1, j2,..., jk x x j1, j2,..., jk x, x' G... G y, yu... x' x' j1 j1, j2,..., jk x' x' dxdx' dydy, x, x' dxdx' dydy, y, y f ' y, yg ' x, x' u... G j1, j2,..., jk j1, j2,..., jk x, x' 60

61 Данная теорема позволяет находить оптимальные рандомизированные операторы модуляции и демодуляции в виде условных плотностей вероятности. Используемый в формуле (5), определяющей область неотрицательности условной плотности модулятора, коэффициент a 1, по сути, ограничивает мощность сигналов, поступающих в непрерывный канал связи, не позволяя модулятору безгранично её увеличивать. Решение полученной системы уравнений (1) и (2) является достаточно трудоёмким. Однако доказанная теорема позволяет существенно сократить область варьирования переменных (условных плотностей), поскольку указывает на ту часть пространства в которой данные переменные должны точно обращаются в нуль, а следовательно никоим образом не влияют на величину целевого функционала. Кроме того, необходимые условия оптимальности (1) и (2) позволяют значительно упростить решение задачи синтеза, так как позволяют в ряде частных случаев указать на обязательный детерминированный характер оптимальных операторов модуляции и демодуляции. Так, достаточно просто можно доказать следующие следствия теоремы. Следствие 1. Оптимальные операторы модуляции и демодуляции, определяемые решением задачи синтеза дискретного отображения непрерывного многопараметрического канала связи по критерию минимального среднего риска с явной штрафной функцией являются детерминированными. Следствие 2. Оптимальные операторы модуляции и демодуляции, определяемые решением задачи синтеза дискретного отображения непрерывного многопараметрического канала связи по критерию минимума средних потерь информации, являются детерминированными. Следствие 1 о детерминированности операторов модуляции и демодуляции для функций потерь, не зависящих от этих операторов, является некоторым обобщением результатов полученных в работах [1, 2]. В них рассматриваются байесовы решающие правила при условии полного описания на уровне вероятностных мер наблюдаемых данных и исходных неизвестных параметров. Данная задача близка к исследуемой задаче оптимизации дискретного отображения с той лишь разницей, что варьируемым параметром является только оператор демодуляции. В работе [3] рассматривается случай квадратичной функции потерь и рандомизированных правил принятия решения. Данная задача также сходна с исследуемой задачей оптимизации, но для критерия минимального среднеквадратического отклонения, являющегося частным случаем критерия среднего риска с функцией штрафа, не зависящей от правила принятия решений. Следствие теоремы Рао Блекуэлла [4] также рассматривает рандомизированные оценки и показывает, что при вы- 61

62 пуклой функции потерь существует, по крайней мере, не худшая детерминированная оценка. Аналогично данная задача близка к задаче оптимизации модулятора и демодулятора при среднем риске с выпуклой функцией штрафа и можно сказать, что также является частным случаем доказанного следствия 1. Таким образом, для случая независящей от операторов модуляции и демодуляции функции штрафа данное следствие оказывается более общим по сравнению с известными результатами, полученными как в области теории оценок, так и статистического приема. Однако при зависящей от условных плотностей функции потерь данное следствие оказывается не применимо и необходимо использовать более общую теорему. Согласно же доказанному следствию 2 теоремы при синтезе дискретного отображения непрерывного многопараметрического канала связи по критерию минимума средних потерь информации возможно ограничиться рассмотрением лишь нерандомизированных операторов модуляции и демодуляции. При этом синтез операторов в общем виде оказывается не только весьма трудоёмкой оптимизационной задачей, но и достаточно сложной в последующей технической реализации. В связи с этим целесообразно использовать представления операторов в виде ряда Вольтерра, которые позволяют не только ограничить число используемых базисных функций (в общем случае их бесчисленное множество), но и их степень нелинейности (которая также в общем случае бесконечна). Литература 1. Репин В. Г., Тартаковский Г. П. Статистический синтез при априорной неопределенности и адаптация информационных систем. М.: Советское радио, с. 2. Репин В. Г., Тартаковский Г. П., Слепокуров А. А. Проверка многоальтернативных гипотез в условиях априорной неопределенности // Проблемы передачи информации Т. 27. Вып. 3. С Ченцов Н. Н. Статистические решающие правила и оптимальные выводы. М.: Наука. Гл. ред. физ.-мат. лит., с. 4. Леман Э. Теория точечного оценивания: Пер. с англ. М.: Наука. Гл. ред. физ.-мат. лит., с. 62

63 РАЗРАБОТКА ОСНОВ МЕТОДИКИ ИССЛЕДОВАНИЯ СПОСОБОВ МАСКИРОВАНИЯ РЕЧЕВЫХ СИГНАЛОВ Е.Д. Кашаев, М.Н. Симаков, Н.А. Нуждин, М.С. Коршунов ФГБОУ ВПО «Пензенский государственный университет» Образовательный стандарт по специальностям (090106) предусматривает дисциплину «Криптографические методы и средства защиты информации». В соответствие с программой этой дисциплины должны проводиться лабораторные работы, которые позволят более глубоко осмыслить проблемы защиты информации, в частности, защиты речевой информации при передаче по каналам связи силовых ведомств. Современная элементная база позволяет речевые сигналы маскировать (зашифровывать) в аналоговом, аналого-цифровом и в цифровом виде. Исторически в первых маскираторах речи использовались частотные, временные и частотно-временные преобразования в аналоговом виде. При этом речевой сигнал делится на временные отрезки, над которыми могут выполняться различные преобразования. Для повышения качества маскирования желательно уменьшать длительность временных отрезков. Однако, по мере уменьшения длительности временных отрезков, начинает проявляться влияние частотновременных характеристик телефонных каналов связи. В первую очередь сказывается влияние неравномерности группового времени прохождения сигнала в полосе телефонного канала. Величина неравномерности группового времени прохождения возрастает с увеличением числа переприемных участков. Качество размаскированного (расшифрованного) - восстановленного речевого сигнала будет ухудшаться по мере увеличения числа переприемных участков в телефонном канале при фиксированной длительности временного отрезка. В развернутых системах связи для уменьшения влияния неравномерности группового времени прохождения, используются различные устройства, корректирующие частотно-временные характеристики каналов связи, например корректоры частотных характеристик. В общем случае качество маскирования речи зависит от сложности частотно-временных преобразований, от длительности временных отрезков и от гаммы шифра. Для ослабления влияния параметров канала необходимо увеличивать длительность отрезков, но при этом снижается качество маскирования. При уменьшении длительности временного отрезка повышается качество маскирования, но при этом начинает наблюдаться ухудшение качества восстановленного сигнала на приемной стороне из-за влияния парамет- 63

64 ров телефонного канала, что приводит к снижению разборчивости речи и узнаваемости диктора. В цифровом виде речь можно передавать по каналам с импульснокодовой модуляцией со скоростью 64 кбит/с. При этом может обеспечиваться необходимая степень стойкости зашифрованного речевого сигнала. Однако для передачи зашифрованного речевого сигнала требуется канал связи с широкой полосой пропускания. А аналоговые маскираторы обеспечивают работу по стандартному телефонному каналу в полосе 0,3-3,4 кгц. Таким образом, существует противоречие между стойкостью шифрования речевого сигнала, полосой пропускания канала связи и количеством переприемных участков. Для разрешения указанного противоречия по мере развития элементной базы были разработаны способы компрессии речевого сигнала, которые позволили снизить скорость передачи с 64 кбит/с до стандартных скоростей 16; 9,6; 4,8; 2,4 кбит/с, при которых можно передавать «сжатый» речевой сигнал в двоичном виде по стандартному телефонному каналу «канал тональной частоты (ТЧ)». Но и при таком подходе сохраняется противоречие между количеством переприемных участков и скоростью передачи речи в двоичном виде. При снижении скорости передачи речевого сигнала в двоичном виде начинает сказываться влияние способов компрессии речевого сигнала на качество расшифрованного синтезированного сигнала на приеме. А при увеличении количества переприемных участков канала ТЧ появляется необходимость снижения скорости передачи информации в двоичном виде из-за увеличения вероятности ошибочно принятых символов. Так как указанная скорость изменяется в несколько раз, то для передачи речевого сообщения с более низкой скоростью необходимо использовать более сложные методы преобразования речевых сигналов. Однако у существующих методов компрессии и преобразования аналогового сигнала в цифровой вид и наоборот наблюдается ухудшение качества синтезированной речи на приемной стороне по мере уменьшения скорости передачи речевого сообщения. В разрабатываемой демонстрационно-лабораторной работе студентам предлагается приобрести навыки по выявлению противоречий между желаемым результатом и техническими возможностями используемых средств на основе системного подхода. Целью выполнения демонстрационно-лабораторной работы является поиск студентами компромисса между длительностью временных отрезков аналогового речевого сигнала и заданными частотно-временными характеристиками телефонного канала связи. 64

65 В результате выполнения исследований студенты должны определить численное значение временного отрезка, при котором обеспечивается наилучшее качество маскирования речевого сигнала для заданного преподавателем алгоритма маскирования. Простейшим критерием оценки качества маскирования речевого сигнала предлагается использовать многократное прослушивание замаскированного, а также восстановленного речевых сигналов. Количество разных прослушиваемых фраз не менее 3. Количество прослушиваний фраз не менее 10. Количество студентов в бригаде 3 человека. По результатам прослушивания каждый студент высказывает свое мнение (предварительную оценку). В предлагаемой лабораторной работе реализован алгоритм временного преобразования речевого сигнала в среде Microsoft Visual С Реализованный алгоритм позволяет разбивать исходный речевой сигнал на выбранное студентом количество временных отрезков (циклов). Каждый цикл, в свою очередь, также разбивается на выбранное количество временных отрезков (блоков). Пример временной диаграммы исходного речевого сигнала, соответствующего фразе «курсовая работа выполнена самостоятельно», представлена на рисунке 1. Рисунок 1. Временная диаграмма исходного сигнала В программе реализован генератор псевдослучайной последовательности, вырабатывающий гамму маскирования (длина гаммы зависит от количества блоков в цикле), в соответствии с которой осуществляется перестановка блоков в цикле. Для каждого цикла вырабатывается новая гамма, то есть блоки в каждом цикле переставляются по своему закону перестановки. После выполнения перестановок алгоритмом предполагается инверсия речевого сигнала по времени. Временная диаграмма замаскированного сигнала представлена на рисунке 2. После вышеописанных временных преобразований замаскированный речевой сигнал передается в канал связи. 65

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

67 Рисунок 4. Временная диаграмма восстановленного сигнала Таким образом, предложенные основы методики могут быть использованы в лабораторной работе, которая позволит студентам более глубоко осознать существующие противоречия между желаемым результатом и техническими возможностями используемых средств криптографической защиты информации, возникающие в реальных системах связи силовых ведомств. Литература 1. Волобуев С.В. Безопасность социотехнических систем. Обнинск: Викинг, с. 2. Кирина В.И. Специальная техника и информационная безопасность. М.: Академия управления МВД России, с. 67

68 ОЦЕНКА ЭФФЕКТИВНОСТИ ИСПОЛЬЗОВАНИЯ МЕТОДА ЦИКЛИЧЕСКОЙ АДРЕСАЦИИ ПАМЯТИ ПРИ РЕАЛИЗАЦИИ КИХ-ФИЛЬТРОВ Д.С. Яговитов, Б.В. Султанов ФГБОУ ВПО «Пензенский государственный университет» Современные системы связи предполагают цифровую реализацию каналообразующей аппаратуры ввиду известных преимуществ такого подхода. Одним из основных элементов аппаратуры при этом являются цифровые фильтры. Ввиду таких достоинств, как безусловная устойчивость, возможность обеспечения простыми средствами строгой линейности ФЧХ широкое распространение получили КИХ-фильтры [1], реализуемые на сигнальных микропроцессорах. При этом чем рациональнее выполняется реализация фильтров, тем более сложные алгоритмы цифровой обработки могут быть реализованы при наличии заданного вычислительного ресурса, и тем лучшие характеристики аппаратуры получены. Одним из способов уменьшения вычислительных затрат при реализации КИХ-фильтров является метод циклической адресации памяти. Целью данной работы является оценка эффективности использования этого метода при реализации КИХ-фильтра. При этом рассматривались следующие подходы к построению КИХ-фильтров, основанные на использовании: неоптимизированной функции для разрядности данных типа FLOAT, написанной на языке Си (обозначим ее как «Функция 1»); неоптимизированной функции для разрядности данных типа INT16, написанная на языке Си («Функция 2»); оптимизированной средствами языка Си функции для разрядности данных типа FLOAT («Функция 3»); оптимизированной функции для разрядности данных типа INT16 с использованием метода циркулярной адресации, написанная наязыке линейного ассемблера («Функция 4»). Оценивание эффективности использования данного метода производилось с помощью подсчета тактов процессора, требующихся для нахождения одного выходного отсчета фильтра. В качестве среды разработки использовалась Code Composer Studio v5.3.0, версия компилятора 7.3.9, уровень оптимизации средствами компилятора по умолчанию для конфигурации debug, целевая конфигурация - семейство процессоров TMS320C674x [2]. 68

69 Метод циклической адресации памяти заключается в специальном конфигурировании управляющих регистров процессора и отличается от метода линейной адресации тем, что в выделенном блоке памяти при инкременте адреса и достижении указателя конца этого блока памяти следующая операция инкремента запишет в указатель адрес начала этого же блока. Дальнейшее инкрементирование указателя осуществляется так же, как и при линейной адресации, то есть последовательно. Как только указатель достигнет конца блока, происходит очередной возврат на начало этого же блока. Схематически метод линейной адресации памяти применительно к разработке функции КИХ-фильтра представлен в соответствии с рисунком 1 [3]: Рисунок 1. Линейный метод адресации памяти Как видно, новый входной (очередной) отсчет x[n] поступает в начало выделенного для этих целей блока памяти, а уже записанные в этот блок памяти существующие входные отсчеты (предыстория) сдвигаются на одну ячейку вниз. Схематически метод циклической адресации памяти применительно к разработке функции КИХ-фильтра представлен в соответствии с рисунком 2 [3]: Рисунок 2. Циклический метод адресации памяти 69

70 На рисунке 2 иллюстрирована ситуация, когда предыстория полностью заполнила выделенный блок памяти, произошел перенос указателя текущей позиции на начало блока памяти, и новый (очередной) входной отсчет x[n] записывается в ячейку этого блока. Отсчет, записанный в этой ячейке, удаляется. Достоинствами метода циклической адресации памяти является его крайне высокое быстродействие, поскольку при его использовании не осуществляются операции сдвига значения отсчетов в блоке, являющиеся наиболее затратными с точки зрения тактов работы процессора. Кроме того, при использовании циклической адресации памяти нет необходимости выделять массивы памяти большого объема. Для функций «Функция 1», «Функция 2», «Функция 3» нет необходимости приводить пример кода, поскольку они широко освещены в Интернете, листинг «Функции 4» приведен в соответствии с рисунком 3. В строках 1-3 обозначаются служебные операции по инициализации функции и ее локальных переменных. Строка 5 отвечает за позиционирование выделенного блока памяти (смещения от его начала в соответствии с заданным индексом). В строках 7-10 происходит конфигурирование служебного регистра процессора AMR для возможности циклической адресации памяти. В строках организован цикл, представляющий собой операцию умножения с накоплением входного отсчета сигнала и импульсной характеристики фильтра. Строки 21 и 22 отвечают за корректное завершение функции и возврат ею значения (одного выходного отсчета сигнала). Рисунок 3. Листинг функции КИХ-фильтра 70

71 Результаты экспериментов для последующей оценки эффективности использования метода циклической адресации памяти представлены в виде гистограммы в соответствии с рисунком 4: Рисунок 4. Результаты экспериментов Из рисунка 4 видно, что использование функции, написанной на языке линейного ассемблера с использованием метода циклической адресации памяти («Функция 4»), требует наименьшее число тактов работы процессора (по сравнению с «Функцией 1» число тактов уменьшается в 4,31 раза). Таким образом, полученные данные количественно характеризуют и доказывают существенную эффективность использования метода циклической адресации памяти при реализации КИХ-фильтров. Литература 1. Ричард Лайонс. Цифровая обработка сигналов: Второе издание. Пер. с англ. М.: ООО «Бином-Пресс», с.; 2. C674x/OMAPL1x Introductory Information [Электронный ресурс] TI.com, Июль Режим доступа: _Information. Инф. с экрана. Яз.англ. 3. Circular Bufferingon TMS320C600 [Электронный ресурс] DipaRao, Апрель Режим доступа: Инф. с экрана. Яз.англ. 71

72 ОСОБЕННОСТИ РЕАЛИЗАЦИИ УСТРОЙСТВА ФОНЕМНОГО РАСПОЗНАВАНИЯ РЕЧИ НА БАЗЕ ПРОГРАММИРУЕМЫХ ЛОГИЧЕСКИХ ИНТЕГРАЛЬНЫХ СХЕМ И.Ю. Беликов Южно-Российский государственный технический университет (НПИ), кафедра «Электронные вычислительные машины», г. Новочеркасск Предлагаемые методы и алгоритмы фонемной классификации[1] являются основой для создания элементов цифрового устройства, реализованных с помощью языка описания электронных схем VHDL. В качестве метода анализа речевого сигнала используется вейвлет-преобразование на основе материнской функции Хаара[2]. Формируется огибающая спектральных экстремумов в окне. Классификацию предложено проводить в два этапа. На первом этапе выделяется фонемная группа на основе бинарного дерева решений. Второй этап заключается в вероятностном определении фонемы на основе нечеткой логики. Проанализированы и выполнены необходимые этапы разработки устройства. Разработана программная реализация фонемной модели, структурно-функциональная схема, которая отображена на рисунке 1. АЦП и УВИ представляют собой дополнительные периферийные устройства. Все остальные элементы предлагается реализовать внутри кристалла ПЛИС. Рисунок 1. Структурно-функциональная схема устройства Структурно-функциональная схема состоит из следующих блоков: МВ микрофонный вход; ЛВ линейный вход; АЦП аналого-цифровой преобразователь; ВКС вычисления коэффициентов спектра[3]; ПУБД проверки условий бинарного дерева; ВПК вычисления параметров классификации; НКС нормализации коэффициентов спектра; ФК фонемной классификации; ФФПС формирования фонемной последовательности символов; УВИ устройства вывода информации. На основе представленных данных была реализована схема устройства фонемной классификации (рисунок 2). 72

73 Рисунок 2. Схема устройства. Общее количество параллельных операций выполненных за 12 тактирующих сигналов составляет более двух тысяч. Предлагаемое устройство состоит из 6 основных элементов: формирователя тактирующих частот, интерфейса I²C, формирователя дискретных отсчетов, фонемной классификации речевого сигнала, клавиш и переключателей, вывода фонемного символа на внешние периферийные устройства. Методы и алгоритмы фонемной классификации реализуются в качестве элементов цифровой схемы в блоке «haar» устройства фонемной классификации. САПР синтезирует схему устройства на уровне регистровых передач (RTL) в зависимости от архитектуры макроячеек. Синтезируемая схема имеет сложную организацию и большие размеры, поэтому ее изображение не приводится. Результатом синтеза является файл конфигурирования ПЛИС. Для проведения экспериментальных исследований в качестве прототипа была выбрана отладочная плата TerasicDe2-115 с ПЛИС CycloneEP4CE115, которая представлена на рисунке 3. 73

74 Рисунок 3. Прототип устройства фонемной классификации речи. В результате, время на формирование фонемного кода с учетом получения дискретного отсчета с частотой работы кристалла CLK=50 МГц составляет: T ф 12 ti i1 CLK 1575/50*10 Для каждой из фонем произносилось по 100 фраз, содержащих исследуемую фонему. Опыт проводился по одному разу в течении 10 дней. Средневыборочное значение правильно классифицируемых фонем представлено на рисунке 4. Точность фонемной классификации оценивается математическим ожиданием M и составляет порядка 84%, а доверительный интервал с надежностью 0.95 составляет 80,4<M<87.6. Современные устройства распознавания речи на основе фонемного анализа позволяют получить результат с точностью 70-83%. Большинство из них работают в диалоговом времени и распознают лишь отдельные команды. Результат распознавания речевого сигнала в предлагаемом устройстве формируется в реальном времени в виде *10 5 сек.

75 символьной последовательности фонем. Например, при произношении фраз «шина-ложка-фаза» была получена последовательность «шыына-лошх(к)афаза». Рисунок 4. Результат фонемной классификации. Устройство можно доработать и предусмотреть логическую, синтаксическую и грамматическую надстройку. Это позволит вводить речевую информацию в виде «осмысленного» текста. Устройство не требует IP-ядер производителя, что позволяет использовать цифровую схему на кристаллах ПЛИС любой фирмы. Устройство использует порядка 21 тыс. эквивалентных логических ячеек и 33 тыс. бит блочной памяти кристалла. Небольшой объем ресурсов позволяет размещать цифровую схему устройства в ПЛИС начального уровня, которые находятся в ценовом диапазоне от 900 до 1400 руб. Литература 1. Беликов И.Ю. Математическое моделирование речевых сигналов на основе нечеткой логики / Изв. Вузов. Сев.-Кавк. регион. Техн. науки С Беликов И.Ю., Ковалев О.Ф. Вейвлет анализ речевых сигналов на ПЛИС в квазиреальном времени// Микропроцессорные, аналоговые и цифровые системы : проектирование и схемотехника, теория и вопросы применения : материалы XII Междунар. науч.-практ. конф., г Новочеркасск, 23 апр. 2012г. / Юж.-Рос. гос. техн. ун-т (НПИ). - Новочеркасск : ЮРГТУ (НПИ), С Патент на полезную модель РФ МПК G06F 17/00. Устройство определения частотно-временного спектра на основе вейвлетпреобразований / О.Ф. Ковалев, И.Ю. Беликов ; заявлено ; опубл , Бюл

76 СПЕЦИФИКА ПРЕДОБРАБОТКИ БИОИНФОРМАЦИОННЫХ ДАННЫХ ДЛЯ ГРАФИЧЕСКИХ ПРОЦЕССОРОВ М.А. Фарков Сибирский Федеральный Университет Важной особенностью биоинформационных данных, с которой приходится считаться при разработке программного обеспечения является их объём, который измеряется десятками и сотнями гигабайт, особенно если речь идёт об обработке генетической информации или информации о взаимодействии молекул лекарственных препаратов и белков в организме. Вполне очевидно, что для быстрой и качественной обработки подобной информации следует привлекать высокопроизводительные решения: многоядерные процессоры, кластерные системы, графические процессоры. Последние отлично подходят для обработки больших объёмов структурированных данных за счёт наличия многоуровневой иерархии памяти, а также большого количества вычислителей. Ключом к получению существенного ускорения является, прежде всего, наличие значительного параллелизма по данным (что, в большинстве случаев, имеет место при работе с биоинформационными данными), а также, грамотная предобработка данных с учётом архитектурных и программных особенностей графических процессоров (GPU). Особенностью иерархии памяти типового NVIDIA CUDA GPU (как и любого GPU ориентированного на открытый стандарт OpenCL), является отсутствие достаточного объёма памяти, сравнимой по скорости работы с оперативной памяти доступной центральному процессору (CPU). В связи с этим, весь объём информации приходится размещать и работать с ним в глобальной памяти GPU, которая существенно уступает в скорости оперативной памяти CPU, и, по факту, является самым медленным типом памяти в иерархии памяти графического процессора. Для ускорения работы с глобальной памятью GPU существует ряд приёмов, а точнее правил обращения к данным в глобальной памяти, для получения максимальной пропускной способности работы с памятью. Два основных правила это: локальность обращений различных нитей GPU к глобальной памяти; выровненные обращения к памяти. Первое правило подразумевает чтение или запись различными нитями GPU данных из глобальной памяти расположенных единым блоком. Второе правило требует чтения или записи данных, выровненных в памяти по 16-ти байтным участкам (рисунок 1) [1]. 76

77 Рисунок 1. Пример выровненного и локализованного обращения к глобальной памяти Для соответствия первому правилу, данные подаваемые на GPU следует располагать не построчно, а «по столбцам». Это обусловлено тем, что, для некоторых типов биоинформационных данных, длина одной последовательности данных меньше количества запускаемых на GPU нитей. Например, при выполнении локального выравнивания, как правило, используются короткие последовательности генетической информации, полученные с секвенатора. Длина таких последовательностей в разы меньше количества запущенных нитей GPU. Уменьшить количества нитей невозможно, так как это чревато существенным падением производительности и невозможностью компенсировать латентность памяти при операциях копирования между оперативной памятью CPU и глобальной памятью GPU [2,3]. Таким образом, распределение вычислений по одной последовательности генетической информации является нежелательным и предпочтительнее распределить вычисления по принципу: одна нить GPU одна последовательность. В свою очередь, при таком распределении вычислений, для соблюдения локальности обращений к глобальной памяти становится очевидным необходимость распределения данных «по столбцам» (рисунок 2). Рисунок 2. Пример распределения последовательностей генетической информации «по столбцам» 77

78 Для соблюдения второго правила эффективного обращения с памятью GPU, может потребоваться выполнить выравнивание данных в памяти. Более того, такое выравнивание потребуется в большинстве случаев, так как невозможно предсказать какой объём данных придётся обрабатывать программному обеспечению. Например, развивая представленный выше пример, на обработку было получено 9994 последовательности длинной в 90 нуклеотидов. Для упрощения, положим, что для представления одного нуклеотида выделяется 1 байт памяти. Таким образом, при распределении памяти «по столбцам», мы получим не выровненные обращения к памяти, начиная со второго столбца. Для того, чтобы избежать этого необходимо просто дополнить наш набор пустыми значениями. В данном случае, при 9994 последовательностях необходимо добавить всего 6 пустых последовательностей, для выровненного обращения к памяти. Стоит отметить, что здесь проявляется ещё одно преимущество распределения данных «по столбцам». При распределении данных построчно и длине последовательности в 90 нуклеотидов, необходимо для каждой последовательности добавить 6 пустых ячеек памяти. Таким образом, на одну последовательность приходится по 6 байт бесполезной информации, т.е. на все последовательности ~59 Кбайт. При распределении же информации «по столбцам» дополнительно необходимо выделить по 6 последовательностей длиной в 90 байт, т.е. дополнительно затрачивается 540 байт. Отдельно следует учитывать ситуации, при которых последовательности данных имеют неравномерную длину. В случае, когда варьирование длины незначительное целесообразно выделять для каждой последовательности одинаковое количество памяти равное объёму памяти, требуемому для самой длинной последовательности. При этом следует заполнять «лишнюю» память для каждой последовательности значениями, которые, при обработке, не влияют на вычисления. Не следует применять терминирующие значения, которые сигнализировали бы программе об окончании одной последовательности и начале другой. Данный подход, оправданный для вычисления на центральном процессоре, не подходит для вычислений на CUDAGPU, так как чреват либо значительной дивергенцией нитей внутри варпа вычисления, либо простое значительного количества нитей. Например, при вычислении совпадений между различными небольшими участками генома, не используемую память можно заполнять любым значением, которыми не кодируются элементы последовательностей (рисунок 3). 78

79 Рисунок 3. Пример размещения неравномерных данных При этом, при подсчёте совпадений нуклеотидов условие совпадения можно записать в виде: intersection += (sequence[i][k]==sequence[j][k])&&(sequence[i][k]!=-1), где sequence[i] и sequence[j] это различные последовательности, а k это индекс нуклеотида в этих последовательностях. Такой подход к предобработке неравномерных данных, позволяет работать с данными, как с единым монолитным блоком, не заботясь о размерности, т.е. исключив из процесса вычислений лишние проверки на длину каждой конкретной последовательности, которые негативно сказываются на скорости вычисления GPU. Следует подчеркнуть, что такой подход оправдан только в случае, когда длина последовательностей варьирует незначительно. Приведённые подходы к предобработке данных для GPU хорошо зарекомендовали себя при работе с различными биоинформационными данными: генетической информацией, силовыми полями лиганд-белкового взаимодействия. Вместе с тем, следует понимать, что применимость данных подходов не ограничивается классом задач из биоинформатики и их можно использоваться для оптимизации работы GPU с подходящими по структуре данными из любой другой прикладной области. Литература 1. CUDACProgrammingGuide. [Электронный ресурс]. Режим доступа: 2. Сандерс Дж., Кэндрот Э. Технология CUDA в примерах: введение в програмирование графических процессоров: Пер. с англ. Слинкина А.А., научный редактор Боресков А.В. - М.: ДМК Пресс, с.: ил. ISBN Боресков А.В., Харламов А.А. Основы работы с технологией CUDA. - М.:ДМК Пресс, с.: ил. ISBN

80 ПРОЕКТИРОВАНИЕ ОТКАЗОУСТОЙЧИВОЙ АРХИТЕКТУРЫ ПРОЦЕССОРА LEON3 С.А. Чекмарёв «Сибирский государственный аэрокосмический университет имени академика М.Ф. Решетнёва», кафедра «Безопасность информационных технологий», г. Красноярск На функционирование бортового комплекса управления (БКУ) при его эксплуатации влияют многочисленные факторы: потоки электронов и ионов высокой энергии, плазмы, солнечного электромагнитного излучения, метеорных частиц и т.д. При этом возникновение отказов в работе электронной компонентной базы (ЭКБ) связано преимущественно с теми или иными радиационными эффектами, вызываемыми воздействием на материалы ЭКБ электронов и ионов, энергии которых лежат в очень широком диапазоне: ~ эв [1]. Существующие в космическом пространстве потоки заряженных частиц с такими энергиями называют космическим ионизирующим излучением (ИИ), или космической радиацией. В околоземном космическом пространстве, где функционирует подавляющее большинство МКА, основными компонентами ИИ являются излучения заряженных частиц естественного радиационного поля Земли (ЕРПЗ), галактических и солнечных космических лучей (ГКЛ и СКЛ). ЕРПЗ образовано электронами и протонами, захваченными магнитосферой Земли, а ГКЛ и СКЛ - это потоки тяжёлых заряженных частиц (ТЗЧ) - протонов, ядер химических элементов, ионов, обладающих относительно высокой энергией. В работе [2] приводится классификация случайных воздействий ИИ (Single Event Effects, SEE) на ЭКБ КА. Одиночный сбой (Single-event Upset, SEU) является наиболее распространенным последствием воздействия ИИ. Обычно SEU происходят при попадании ионов в схемы памяти или статических триггеров. Импульс тока, вызванный рекомбинацией индуцированных ионом дырок и электронов, изменяет состояние логического элемента (например, 1 меняется на 0). Таким образом, к современным интегральным микросхемам, используемым в космических приборах, предъявляются повышенные требования по радиационной стойкости и сбоеустойчивости, в то же время уменьшение проектных норм приводит к росту числа сбоев. Увеличение надёжности БКУ МКА достигается путём применения схем горячего/холодного резервирования, проектированием схем мажорирования [3]. Данные подходы повышают надёжность системы, однако, введён- 80

81 ная в результате избыточность неизбежно увеличивает стоимость проекта, энергопотребление, массогабаритные характеристики. Наиболее перспективным путем разрешения данного противоречия является придание свойств отказоустойчивости процессору БКУ МКА на уровне его архитектуры. Наибольшую опасность, с точки зрения уязвимости к SEU представляет внутрикристальная память процессора (кэш память и регистровый файл). Для защиты памяти от возможных одиночных сбоев применяется помехоустойчивое кодирование. В работе [4] было определено, что наиболее пригодными для повышения сбоеустойчивости ОЗУ являются линейные коды общего вида из-за относительно малых аппаратурных затрат, наличия функции коррекции ошибок и высокого быстродействия. При проектировании бортового компьютера БКУ малым космическим аппаратом разработаны варианты реализации схем парирования одиночных сбоев с использованием помехоустойчивого кодирования. Исследование проводилось на базе процессорногоip-ядра LEON3 [5]. Дополнительно разработанные IP-блоки включены в состав ядра процессора LEON3, осуществляли кодирование/декодирование 32-х битных слов при обращении к кэш памяти и регистровому файлу. Был проведён сравнительный анализ разработанных IP-блоков по количеству обнаруживаемых и исправляемых ошибок и по количеству занимаемых ресурсов внутри кристалла ПЛИС. В таблице 1 представлены результаты моделирования. Таблица 1 Сравнительные характеристики схем парирования одиночных сбоев с использованием помехоустойчивого кодирования наименование Кол-во обнаруживаемых ошибок 1 Код Хемминга(38,32) 2 Код CRC4 с использованием дублирования Кол-во исправляемых ошибок Полученная логическая емкость в ПЛИС ACTEL ProASIC3E А3PE1500 (38400 логических элементов) < менее 1 % ПЛИС Все нечётные +пакетные ошибки - 87<менее 1 % ПЛИС 81

82 3 4-ёх битный бит чётности с использованием дублирования До 4 в 32-х битном слове До 4 в 32-х битном слове 112<менее 1 % ПЛИС В первом варианте в качестве помехоустойчивого кода был выбран код Хэмминга. Для его реализации потребовалось ввести дополнительно 6 проверочных битов во внутрикристальной памяти, что повлияло на количество потребляемых ресурсов ПЛИС. Применение данного подхода хорошо зарекомендовало себя при работе с регистровым файлом процессора. Код CRC4 был использован для обнаружения всех нечётных ошибок, а также пакетных ошибок в 32-битном слове. Для сокращения потребляемых ресурсов ПЛИС использовался табличный метод реализации алгоритма CRC. При детектировании ошибки в кэш памяти процессора данные могут быть восстановлены из ОЗУ. Третий вариант парирования одиночного сбоя предполагает следующий алгоритм: 32-х битное слово делится на 4 группы по 1 байту. Для каждого байта считается бит чётности. При обнаружении одиночного сбоя повреждённое слово подменяется из дубля (читается из ОЗУ). Таким образом, возможно восстановление до 4 сбоев в 32-х битном слове. Разбиение на группы происходит таким образом, чтобы исключить возможность возникновения двойной ошибки в одном байте. Варианты разбиения зависят от технологических норм ПЛИС. К достоинствам данного метода стоит отнести простоту реализации и скорость обработки данных. При невозможности парирования сбоя каждый из вариантов предусматривает информирование системы о возникшей ошибке. При этом должна быть обработана исключительная ситуация «Ошибка при чтении из памяти». Данный функционал позволяет повысить безопасность работы системы в целом. Статистика отказов в памяти может информировать бортовое программное обеспечение (ПО) о состоянии системы. Для сбора рассматриваемой статистической информации было предложено добавить в архитектуру процессора специальные регистры статистики, структура которых приведена на рисунке1. Здеcь actualrf, actual_ci, actual_cd показывают актуальность считываемых данных. Данные считаются неактуальными при переполнении счётчиков ошибок (err_cnt_reg_file_iu, err_cnt_reg_file_fpu, err_cnt_ci_tag, err_cnt_ci_data, err_cnt_cd_tag, err_cnt_cd_data ). 7-ми разрядные счётчики обеспечивают регистрацию 127 одиночных сбоев. При работе кэш мониторятся как поля данных и инструкций, так и поля тэгов. Статистика регистра 82

83 «статус регистрового файла» предоставляет информацию как про ошибки, обнаруженные в регистровом файле блока целочисленной арифметики, так и в регистровом файле блока IEEE-754 FPU. При чтении статистических данных из указанных регистров происходит сброс значений счетчиков. Значения addr_reg_file_iu, addr_reg_file_fpu, addr_ci, addr_cd содержат информацию о месте последнего обнаруженного сбоя. Количество разрядов адреса зависит от архитектурной реализации процессора и может меняться. В стандартной реализации LEON3 этот параметр равен 8. actualrf double addr_reg_file_iu addr_reg_file_fpu err_cnt_reg_file_iu err_cnt_reg _file_fpu а) регистр «статус регистрового файла» actual_ci double addr_ci err_cnt_ci_tag err_cnt_ci_data RESERVED б) регистр «статус кэша инструкций» actual_cd double addr_cd err_cnt_cd_tag err_cnt_cd_data RESERVED в) регистр «статус кэша данных» Рисунок 1. Регистры статистики SEU Данные из регистров статистики могут также помочь определить наиболее часто отказывающий участок во внутрикристальной памяти ПЛИС. Эта информация может быть обработана соответствующим образом ПО БКУ МКА. Наличие резервных блоков внутрикристальной памяти делает возможным переключение памяти процессора на резервный комплект. Переключение осуществляется установкой в значение 1 бита double. На базе рассмотренных подходов был предложен вариант реализации (рисунок 2) отказоустойчивой версии процессора LEON3. На схеме, реализованный функционал по обеспечению отказоустойчивости, заключён в пунктирную рамку. Блоки «ECC CODER/DECODER» передают информацию об обнаруженных ошибках в блок «Регистр статистики». Процедуры кодирования/декодирования/обнаружения ошибки выполняются «на лету», что обеспечивает прозрачность данного функционала для работы остальных стандартных блоков процессора LEON3. Контролируемое переключение на дублированный блок кэша либо регистрового файла защищает процессор от ошибок, вызванных обращением к вышедшим из строя ячейкам внутрикристальной памяти в ПЛИС. 83

84 Рисунок 2. Блок схема отказоустойчивой версии процессора LEON3 Таким образом, в результате проведенных работ разработан и реализован вариант отказоустойчивой версии процессора LEON3, отличающийся возможностью детектирования вышедшего из строя фрагмента внутрикристальной памяти и переключение на резервный блок памяти. Литература 1. Новиков Л. С. Радиационные воздействия на материалы космических аппаратов: учебное пособие / Л. С. Новиков. М. : Университетская книга, с. 2. Юдинцев В. Радиационно стойкие интегральные схемы. Надежность в космосе и на земле / [статья] - // Электроника: Наука, технология, бизнес Вып C Попович А.Ф. Практический подход к резервированию вычислительно-управляющей системы средствами сети SpaceWire. [статья] - КОМПОНЕНТЫ И ТЕХНОЛОГИИ г. С Краснюк А.А., Петров К.А., Особенности помехоустойчивого кодирования в радиационно-стойких ОЗУ /[статья]-// Научная сессия МИФИ Т.1 Физико-технические проблемы ядерной энергетики. Экологическая и радиационная безопасность. Прикладная ядерная физика. Ядерная медицина , -С GRLIB IP Library User s Manual [Текст] AeroflexGaisler, р. 84

85 АЛГОРИТМЫ ОБРАБОТКИ ЗВУКОВЫХ СИГНАЛОВ ПРИ ФОРМИРОВАНИИ БАЗ ГОЛОСОВЫХ ДАННЫХ П.В. Малинин, В.В. Поляков ФГБОУ ВПО «Алтайский государственный университет» Разработка новых методов защиты информации является одной из наиболее актуальных задач в сфере информационной безопасности. К числу таких методов относятся различные способы биометрической идентификации личности, в том числе основанные на анализе голосовых данных. Важной составной частью такой идентификации является формирование баз голосовых данных, роль которых существенно возросла в связи с развитием новых технических средств обработки и хранения информации [1]. Такие базы данных используются в различных системах разграничения доступа, в том числе основанных на телекоммуникационных каналах связи. Они применяются при создании технических средств защиты голосовой информации, а также при апробации и проверке методов оценки ее защищенности от утечки по различным каналам. Кроме того, базы голосовых данных могут фигурировать в задачах идентификации личности, возникающих при расследовании компьютерных преступлений, когда возникает необходимость проведения идентификации неизвестной голосовой записи. Это делает актуальным исследование общих алгоритмов построения баз голосовых данных, проводимое в настоящей работе. Принципиальная структура рассматриваемой базы данных может быть представлена как система ячеек, изображенная на рис. 1, где П ijk повторение фразы, i номер диктора, j номер фразы, k номер повторения фразы (Дi диктор, Фj фраза). Каждая ячейка многомерной базы данных содержит одну запись. Рис. 1. Структура базы голосовых данных. 85

86 При построении баз голосовых данных обычно используются фонемы, представляющие из себя наименьшие элементы речи. В качестве фраз удобно применять короткие слова, представляющие из себя сочетания цифр. Такого набора достаточно чтобы охватить основные информативные фонемы и тем самым создать возможность для идентификации дикторов по индивидуальным частотным особенностям голоса [2]. Для разработки алгоритма формирования баз голосовых данных производилась запись фраз, произносимых различными дикторами. Эта запись велась в реальном режиме времени с помощью микрофона, соединенного с компьютером посредством аналого-цифрового преобразователя. Для иллюстрации на рис. 2 приведены в виде амплитудно-временной зависимости A(t) типичные сигналы, полученные при записи голоса одного и того же диктора, произносившего слово «пять» три раза. Зависимости на рис. 2а и рис. 2б соответствуют разной громкости произношения при одном темпе речи, на рис. 2в и рис. 2г - разным темпам при одной громкости. а б в г Рис. 2. Голосовые сигналы одного диктора. а - низкая громкость, б - высокая громкость, в - быстрый темп речи, г - медленный темп речи. Представленные на рис. 2 зависимости показывают, что вид голосового сигнала существенно зависит от его амплитуды (громкости произношения) и продолжительности (темпа речи). Эти факторы являются случайными 86

87 и при формировании базы голосовых данных от них необходимо избавиться. Для этого прежде на первом этапе формирования базы проводилось нормирование сигналов по амплитуде. Приведение зависимостей A(t) к одной амплитуде осуществлялось программно по формуле A i В i = A, max где A i - измеряемая амплитуда, A max - максимальная амплитуда, В i - нормированная амплитуда, i=0,1,,k. Для того, чтобы избавиться от второго фактора (темпа речи), на следующем этапе производилась нормировка по времени. Эта нормировка осуществлялась программно путем использования одинакового числа отсчетов при обработке частотных спектров записанных звуковых сигналов [3]. Спектры рассчитывались в программной среде MatLab и имели вид зависимостей A/A max от частоты f. Типичный спектр голосовых сигналов, получаемый в результате нормировки по амплитуде и по времени, изображен на рис. 3. Рис. 3. Спектр голосового сигнала, нормированного по амплитуде и времени. При формировании базы голосовых данных в реальных условиях необходимо учитывать такой случайный фактор, как аппаратные помехи, связанные с использованием конкретных технических средств и каналов связи. Возможные аппаратные помехи исключались на заключительном этапе построения баз данных. Для этой цели использовалась медианная фильтрация, заключавшаяся в удалении из исходного сигнала выбросов. На рис. 4 показан пример действия медианного фильтра третьего порядка, в котором проводится усреднение трех отсчетов (в верхней части рис. 4 приведен исходный сигнал с выбросами, в нижней части выбросы заменены медианными значениями). Процедура медианной фильтрации компьютерных записей 87

88 конкретных голосовых данных в настоящей работе проводилась в программной среде MatLab. Рис. 4. Действие медианного фильтра третьего порядка. Описанные алгоритмы были апробированы при построении базы голосовых данных «Акустические речевые сигналы для системы идентификации личности по голосовым данным» [4]. Эта база включала в себя голосовые записи для группы из 50 дикторов разного возраста и пола, произносивших цифры от 0 до 9. Построенная база была применена при разработке нового подхода к идентификации личности, основанного на проекционных методах многомерного анализа данных [5], и показала эффективность и удобство в использовании. Предложенные и апробированные алгоритмы построения баз голосовых данных могут использоваться для исследования параметров речевых сигналов при идентификации личности по голосу, а также при оценке надежности и достоверности различных систем голосовой идентификации личности. Литература 1. Галяшина Е.И. Прикладные основы фоноскопической экспертизы // СПб.: Питер, с. 2. Малинин П.В., Поляков В.В. Иерархический подход в задаче идентификации личности по голосу с помощью проекционных методов классификации многомерных данных // Доклады ТУСУР Часть 1. - С Рабинер Л.Р., Шафер Р.В. Цифровая обработка речевых сигналов // М.: Радио и связь, с. 4. Малинин П.В. Акустическме речевые сигналы для системы идентификации личности по голосовым данным // Свидетельство о гос. регистрации базы данных от

89 5. Эсбенсен К. Анализ многомерных данных / Пер. с англ. С.В. Кучерявского; под ред. О.Е. Родионовой // Черноголовка: Изд-во ИПХФ РАН, с. 89

90 Часть 2. Параллельное программирование и распределенные системы ДЕКОМПОЗИЦИЯ ЗАДАЧИ МНОГОМАСШТАБНОГО МОДЕЛИРОВАНИЯ СВ-СИНТЕЗА В ГЕТЕРОГЕННЫХ СИСТЕМАХ ЗА СЧЕТ ИСПОЛЬЗОВАНИЯ ПАРАЛЛЕЛИЗМА ДАННЫХ И ПАРАЛЛЕЛИЗМА ПОДЗАДАЧ Д.А. Мершалов, В.И. Иордан, Е.С. Соснина ФГБОУ ВПО «Алтайский государственный университет» Различные тугоплавкие и сверхтвердые сплавы, используемые в машиностроении, электротехнике и электронике, авиационно-космической технике и других отраслях, получают в т.ч. и методом «самораспространяющегося высокотемпературного синтеза (СВС)», в котором используются реагенты в виде мелкодисперсных порошков, тонких пленок, жидкостей и газов. В прессованном образце под воздействием теплового импульса зона экзотермической реакции горения в тонком слое взаимодействующих реагентов, разделяющем исходную смесь и конечный целевой продукт, самопроизвольно распространяется по образцу путем теплопередачи от слоя к слою. Продуктам СВС присуще разнообразие микро-, мезо- и макроструктур. Для исследования режимов горения и разнообразия структур продуктов СВС в [1] предложена комбинированная модель волновой динамики горения с учетом комплекса структурных и многофазных превращений в процессе СВ-синтеза интерметаллических фаз в гетерогенных системах. Использование такого подхода моделирования, который в концептуальном аспекте можно отнести к многомасштабному предсказательному моделированию, позволяет корректно учитывать влияние явлений и элементарных процессов, происходящих на нано-, микро- и мезоуровнях структурной и функциональной иерархии гетерогенных систем, на явления и процессы, происходящие на ее макроуровне и, тем самым, достовернее и количественно точнее определять (предсказывать) структуру и свойства целевых продуктов СВС. Процессы теплопереноса и температурной динамики горения в предвоспламенительной зоне и во фронте горения рассчитываются по традиционной модели горения в виде уравнений теплопроводности (1)и кинетики химического взаимодействия реагентов (3) с учетом внутренних источников тепловыделения в процессе СВ-синтеза и теплообмена с внешней средой [1] (c ρ T)/ t=div(λ grad(t))+f(t,η), (1) f(t,η)=q ρ k(t) φ(η) f(s)+α (T-T 0 ), (2) η/ t=k(t) φ(η) f(s), (3) 90

91 где T=T(x,y,z,t), c=c(x,y,z,t(x,y,z,t)), ρ=ρ(x,y,z,t(x,y,z,t)) соответственно, температура, удельная теплоемкость и плотность в текущей расчетной пространственной точке порошковой смеси в момент времени t, пространственное распределение компонентов которой смоделировано с учетом их гистограмм распределения по размерам;q=q(x,y,z,t(x,y,z,t)) тепловой эффект реакции на единицу массы продукта; λ=λ(x,y,z,t(x,y,z,t)) теплопроводность материала частицы (компонента смеси), покрывающей текущую расчетную точку; T 0 температура внешней среды; η=η(x,y,z,t) глубина химического превращения (массовая доля продукта по отношению к массе реакционной смеси и продукта); S=S(x,y,z,T(x,y,z,t)) площадь реакционной контактной межфазной поверхности частиц в окрестности расчетной точки; α коэффициент, учитывающий теплопотери во внешнюю среду. Первое слагаемое в правой части (2) является функцией источника тепловыделения, в которой константа химической реакции (температурно-активационная функция) равна k(t)=k 0 exp(-e/(rt)), (4) где k 0 предэкспонент, а E энергия активации реакции, определяемая законом Аррениуса. Аналогично тепловому эффекту Q=Q(x,y,z,T(x,y,z,t)) энергия активации E=E(x,y,z,T(x,y,z,t)) соответствует определенной фазе продукта (разновидности интерметаллидов) согласно диаграмме состояния системы с учетом процентного соотношения массовых долей компонентов смеси и температуры в расчетной точке. Кинетическую функцию φ(η) можно представлять известным классом функций φ(η)=(1-η) n exp(-m η)/η β (5) для трех случаев: 1) β 0, m=n=0 (степенной закон); 2) m 0, β=n=0 (экспоненциальный закон); 3) n 0, β=m=0 (гомогенная кинетика). В первых двух случаях (масштаб гетерогенности превышает молекулярно-кинетический размер порядка 1 нм) кинетика определяется диффузионным торможением через слой продуктов, в 3-м случае (масштаб гетерогенности менее 1 нм) скорость реакции контролируется самой реакцией. Реализуются сеточные вычисления, соответствующие (1), с помощью абсолютно устойчивых «экономичных» неявных схем двуциклического расщепления на основе схемы Кранка-Николсона, 91

92 которые, являясь схемами суммарной аппроксимации, реализуются с помощью метода прогонки и имеют второй порядок точности по времени (верхние «дробные» индексы соответствуют промежуточным слоям по времени: t j+i/8 = t j + i τ/8,i=1,2,...,7). Кластер образца смеси частиц может достигать порядка частиц, поэтому для ускорения вычислений используются МВС с распределенной памятью в сочетании с принципом «геометрического параллелизма», предполагающего декомпозицию расчетной области. Кроме того, можно использовать «параллелизм приложений (подзадач)» (параллельное выполнение подсистем программного комплекса). Например, подготовку структуры данных в расчетной области для предстоящих сеточных вычислений для каждого отдельного кластера можно производить заранее и независимо от сеточных вычислений, либо по конвейерной технологической схеме, что ускоряет расчеты. Для обеспечения корректности расчетов построение сеточных схем уравнений должно опираться на корректное представление (описание) структуры необходимых данных и в т.ч. на дискретный (пористый) характер смеси в пространственной расчетной области в соответствии с конкретной структурой упаковки частиц реагирующей смеси. Т.е., различные узловые точки расчетной сетки могут приходиться либо на частицы различных элементов (например, Ni, Al и т.п.), либо на «воздушную пору» (отсутствие частиц). Разработанный программный комплекс [2], представляющий собой симбиоз методов мезочастиц и молекулярной динамики (учитывающий многомасштабный подход), позволяет на предварительном этапе перед сеточными вычислениями генерировать и сохранять на диске «псевдослучайные» реализации3dструктур упаковок сфероидальных частиц различных элементов (например, Ni и Al) с учетом их гистограмм распределения по размерам. 92

93 Программный комплекс [2], генерирующий структуру упаковки кластера частиц, сохраняет информацию о структуре на жестком диске компьютера в виде массива записей с определенным набором полей. Список полей одной записи (одной частицы) содержит: три координаты центра частицы, радиус частицы, коэффициент упругости материала частицы, код материала. Сканируя трехмерную сетку расчетной области ω x ={x i =ih, i=0,1,.,n x },ω y ={y j =jh, j=0,1,.,n y },ω z ={z k =kh, k=0,1,..,n z }, и связывая каждую узловую точку трехмерной сетки расчетной области с определенной частицей из массива структуры упаковки, по коду материала частицы можно из справочной базы данных программного комплекса извлечь необходимые значения физических параметров (плотность, теплоемкость, теплопроводность и т.п.) и записать эти данные в дополнительные поля записи для каждой текущей узловой точки. Процессу сканирования со всей очевидностью присущ параллелизм «по данным» (геометрический параллелизм), так как для трехмерной расчетной области, ограниченной параллелепипедом, можно, например, вдоль оси Zcшагом K z произвести декомпозицию на независимые блоки с номерами m=1,2,,m. Т.е. блок с номером m это часть сетки: ω x ={x i =ih;i=0,1,,n x },ω y ={y j =jh;j=0,1,.,n y },ω z,m ={z k =kh;k=(m-1)k z,=(m- 1)K z +1,,mK z }, где N z =MK z. Таким образом, заполнение дополнительных полей (справочными данными по плотности, теплоемкости, теплопроводностии рассчитываемыми позднее данными по температуре) для каждой записи, соответствующей узловой точке трехмерной расчетной области, можно производить с помощью параллельных процессов. Производя внутри каждого независимого блока по каждому из оставшихся направлений XиY аналогичным образом декомпозицию (рисунок 1), можно наращивать степень «геометрического параллелизма» (при наличии достаточного числа физических процессоров/ядер). Рисунок 1.Декомпозиция расчётной области: а) вдоль оси Z(по одной координате); б) по двум координатам; в) по трём координатам. 93

94 Соответствующая схема декомпозиции (рисунок 1, а, б, в) используется и для распараллеливания вычислений по сеточным схемам двуциклического расщепления Кранка-Николсона. Кроме того, объединяя в структуру объектного типа (class) поля записи для каждой узловой точки с «полями-методами» потоковой обработки этих полей, в каждом параллельном процессе можно использовать многопоточность (подключая, например, библиотеку Qt Concurrent Namespace). Для кластера, в состав которого входят сотни тысяч частиц и более, в процессе сеточных вычислений и заполнения 3-х мерного массива записей практически не хватает доступного объема оперативной памяти. Однако, учитывая физическую особенность послойного характера распространения волны горения, которая совмещается с послойным характером сеточных вычислений в расчетной области, можно использовать процедуру «вывода рассчитанных данных определенного количества текущих слоев на диск и подкачки с диска очередной порции исходных данных для расчета последующих слоев» (конвейерная технология). Резюмируя, можно отметить, что успешное осуществление многомасштабного моделирования СВ-синтеза в гетерогенных системах немыслимо без параллельных вычислений с использованием вычислительных кластерных систем и суперкомпьютеров на базе многоядерных процессоров. Литература 1. Иордан В.И. Концептуальный подход и комбинированная модель волновой динамики горения с учетом комплекса структурных и многофазных превращений при СВ-синтезе интерметаллических фаз в гетерогенных системах // Известия Алтайского государственного университета. Серия Физика /2(69). - С Иордан В.И., Локтионов А.М. 3D-моделирование структуры упаковки сфероидальных частиц в многокомпонентной смеси методом молекулярной динамики // Моделирование неравновесных систем: материалы XIV-го Всероссийского семинара, 7-9 октября 2011 г./под ред. В.В. Слабко; отв. за вып. Г.М. Садовская.- Красноярск: ИПК СФУ, c.- С

95 ЭКСПЕРТНАЯ СИСТЕМА С ЭЛЕМЕНТАМИ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ М. С. Науман, П. М. Зацепин ФГБОУ ВПО «Алтайский государственный университет» Введение Экспертная система это вычислительная система, в которую включены знания экспертов о некоторой предметной области в форме базы знаний. Экспертные системы умеют принимать решения вместо экспертов в заданной области знаний. Области применения систем могут быть сгруппированы в несколько классов: медицинская диагностика, контроль и управление, диагностика неисправностей в механических и электрических устройствах, обучение. В данной работе рассматривается экспертная система с элементами параллельных вычислений и нечеткой логикой. Структура и состав экспертной системы Экспертные системы предназначены для решения задач в определенной области. Классифицировать экспертные системы можно по разным признакам. Одним из возможных способов является классификация экспертных систем по решаемой задаче: интерпретация данных, диагностирование, прогнозирование, обучение, управление. Типичная экспертная система представлена на рисунке 1. Рабочая память предназначена для хранения исходных и промежуточных фактов решаемой в текущий момент задачи. База знаний предназначена для хранения долгосрочных фактов, описывающих рассматриваемую область, правил, описывающих отношения между этими фактами и других типов декларативных знаний о предметной области. Подсистема объяснения объясняет, как система получила решение задачи (или почему она не получила решения) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату. 95

96 Рисунок 1. Типичная экспертная система Подсистема диалога ориентирована на организацию дружественного интерфейса со всеми категориями пользователей.[3] Как и большинство современных систем, экспертные системы имеют свои преимущества и недостатки. Преимуществом экспертных систем является: 1) Постоянство. Экспертные системы ничего не забывают. 2) Документация. Экспертная система может документировать процесс решения. 3) Своевременность. Погрешности в конструкциях и (или) могут быть своевременно найдены. 4) Широта. Могут быть объединены знания многих экспертов Недостатки экспертных систем: 1) Здравый смысл 2) Творческий потенциал. Человек-эксперт может реагировать творчески на необычные ситуации, экспертные системы не могут. 3) Обучение. Человек-эксперт автоматически адаптируются к изменению среды; 4) Сенсорный опыт. [1] Среди приведенных недостатков можно выделить основные недостатки: формализм и последовательное выполнение операций. Решение, принимаемое экспертной системой формально, поскольку структура правил входящих в базу знаний имеет следующий вид: Если X 1 и X 2 и X 3 и X n то Y 1, где {X 1, X 2, X 3,, X n } множество исходных признаков, а Y 1 экспертное заключение, т е экспертное заключе- 96

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

98 Рисунок 2. Экспертные системы с элементами параллельного вычисления После такой обработки мы получаем несколько результатов, из которых нужно выбрать один. Выбор производится следующим образом: конечный результат получается пересечением результатов первичной обработки. Это позволит найти наиболее точный результат поиска. Схема представлена на рисунке 3. Рисунок 3. Экспертные системы с элементами параллельного вычисления и нечеткой логикой Результатом работы системы является пересечение всех запросов экспертных систем, которое схематически представлено на рисунке 4. Рисунок 4. Схема пересечение всех запросов Для более точной и гибкой работы, эксперт должен оценить полученные результаты и присвоить им ранги. Ранги могут быть расставлены путем 98

99 нахождения расстояния Хэмминга между пересечением и результатами первичной обработки экспертных систем. Эксперт может согласиться с полученным результатом или уточнить его, что позволит более точно произвести оценку запросов. В результате мы получаем базу данных, имеющую иерархическую структуру. База содержит запросы и присвоенные им ранги. Одна из важнейших проблем экспертных систем формальная логика, основанная на бинарном принципе. Для решения данной проблемы можно перейти к нечеткой логике путем введения весов решений экспертной системы и как следствие весов исходных запросов. Это позволит более гибко принимать решение. Система сможет с большей вероятностью говорить о верности выбранного решения, сможет отличать важные от незначительных признаков. Это позволит оценку сделать более точной и обоснованной. Путем повторного запроса, содержащего похожую информацию, результаты весов будут пересчитываться и более точно выполнять поиск по базе данных. Обученная таким образом экспертная система сможет самостоятельно сравнивать результаты и находить самый оптимальный ответ на заданный запрос. Она сможет сравнить все веса и выдать результат с наибольшим рейтингом, найти верный ответ или предоставить наиболее вероятные и отбросить точно неверные решения поставленной задачи. Вывод В статье рассмотрена экспертная система с элементами параллельного вычисления и нечеткой логикой. Система позволяет получить ускоренный поиск за счет параллельных вычислений и уточнять результаты за счет применения нечеткой логики. Динамическая база данных запросов позволит последовательно улучшать результаты поиска при повторных применениях системы. Литература 1. К. В. Козадаев, Д. В. Щегрикович. Организация баз данных и экспертных систем: лабораторный практикум Минск: БГУ, с. 2. Андрейчиков, А. В. Интеллектуальные информационные системы : учебник для вузов М.: Финансы и статистика, с. 3. Режим доступа: 4. А. А. Шайдуров, П. М. Зацепин. Информационно-поисковые системы для intranet-сетей // Известия / АлтГУ. Барнаул, Вып. 1(15) 2 с. 99

100 РАЗРАБОТКА ДОПОЛНИТЕЛЬНОГО ПРОГРАММНОГО МОДУЛЯ ДЛЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ «GNU RadioCompanion» Эммануэль Китчер Владимирский Государственный Университет Необходимость обновления радио приемопередатчиков приводит к введению концепции программно-определяемое радио (SoftwareDefinedRadio, SDR). В рамках SDR процесс обработки данных происходит через вызов конкретного метода (функции) C++. Пользователи которые не заинтересованы в основных деталях реализации, нуждаются в графическом интерфейсе пользователя (GraphicalUserInterface,GUI) для описания сигналов [1]. Такие высокоуровневые графические интерфейсы отлично подходят для целей визуализации процесса обработки сигналов. GNU RadioCompanion (GRC) представляет собой GUI для создания потоковых графов сигнала и генерации исходного кода. С помощью набора инструментов (блоков или модулей) для обработки сигналов, GRC обеспечивает возможность симуляции радиосистемы. Блоки обработки сигналов могут быть подключены для верификации выходов. В GRC имеются инструменты для запуска графа. После запуски графа, генерируется код программного языка Python. Нужно отметить, что знание языка Python не является требованием для использования GRC. В настоящее время, GRC находится в стадии разработки [2]. Инструментарий GRC является расширением основной SDRплатформы GNURadio. Посредством GNURadio, GRC предоставляет библиотеку нескольких блоков в виде пакета программ, которые доступны пользователю. В случае отсутствии нужного блока, можно его создать. GRC является программным обеспечением с открытым исходным кодом, поэтому пользователь может разработать новые блоки [2] в виде блоков MATLAB Simulink и использовать их для создания разных приложений. Для упрощения задач разработки нового блока разработчики рекомендуют использовать пакет файлов (tarfile), которые доступны [3] на основном сайте GNURadio. После извлечения файла с расширением «.tar», получают файлы следующих типов: C++, Python, SWIG и XML. Они определяют образцы пары блоков «squareи square2» для возведения в квадрат числа. Для создания блока square в GRC, необходимо выполнить следующие команды на терминале операционной системы LinuxUbuntu после ввода в каталог, который имеет извлеченные файлы. >>./bootstrap 100

101 >>./configure >>cd swig >>make generatemakefile swig >>cd Далее снова войдите в каталог, содержащий извлеченные файлы и выполните следующие команды: >>sudomakeinstall >>sudoldconfig После этого создается новая папка HOWTO в GRC, которая содержит блоки squareи square2. Блок обработки сигнала может быть создан путем редактирования доступных кодов XML и C++. Блоки GRC описываются с помощью расширяемого языка разметки (XML). Файл XML описывает внешний вид блока. Любые внесенные изменения в код,которые включают в себя изменения в количестве входов и выходов, а также для получения параметров от пользователя, должны отражаться в файле XML. Если имеем блок с двумя входами, тогда изменения в соответствующий файл XML (например, square_ff.xml) дают следующие два (2) порта, которые требует блок: <sink> <name>n</name> <type>float</type> </sink> <sink> <name>ngb</name> <type>float</type> </sink> Следующий фрагмент кода это пара портов, которая обеспечит блок с требуемыми параметрами, например, N. <make>square_ff($n)</make> <callback>set_n($n)</callback> <param> <name>n</name> <key>n</key> <type>int</type> </param> Любая информация о блоке для пользователя, может быть предоставлена в качестве документации: <doc> 101

102 details...about block </doc> Существует файл «makefile» в основном каталоге, который должен быть скомпилирован для проверки наличия ошибок. Если все скомпилировано без ошибок, то можно увидеть созданный блок в GRC. Для компиляции нужно дать следующую команду на терминале: >>sudomakeinstall Необходимо выполнить одно из следующих действий для того, чтобы GRC видел новый XML файл, и это будет достаточно: поместить XML файл (.xml) в каталоге «~/.grc_gnuradio/», где, «~/» - это Ваш основной каталог. Если такой каталог не существует нужно его создать: mkdir ~/.grc_gnuradio/; создать или редактировать файл «~/.gnuradio/config.conf» добавляя следующие строки: [grc] local_blocks_path=/path/to/my/blocks Параметр local_blocks_path может содержать несколько путей, разделенных двоеточиями: local_blocks_path=/path/to/blocks1:/path/to/blocks2 установить параметр GRC_BLOCKS_PATH переменной среды (environmentvariable), который содержит блок пользовательской оболочки. Данный параметр может содержать несколько путей, разделенных двоеточиями: GRC_BLOCKS_PATH=/path/to/blocks1:/path/to/blocks2 В GNURadio, все блоки реализованы в языке программирования C++ [4]. Поэтому, запуск графов GRC вводят в действие коды C++. Есть три (3) файла, которые связаны с любым блоком GRC (XML файл): 1. заголовочный файл C++ с расширением «.h» и файл исходного кода «.cc», определяющий класс (class) нового блока; 2. файл «.i» описывающий способ импортирования (import) блока используяswig; 3. установка блоков в общую библиотеку. Файлами «.h» и «.cc» являются заголовочный файл и соответствующий файл исходного кода C++ для заданного блока. В файле «.cc» имеется ссылку на файл «.h», а базовой класс (baseclass) gr_block для всех блоков обработки сигналов включен в файле «.h». Любой новый созданный блок порождается от базового класса gr_block или одного из его подклассов. 102

103 Файл «.i» определяет механизм импортирования (import) блоков в код Python используя SWIG. Файл «.i» похож на заголовочный файл C++ «.h» в том, что он объявляет различные функции. Однако, «.i» объявляет только те функции, которым нужен доступ из Python. Нужно отметить, что редактирование этих файлов требует хорошего понимания языка программирования C++. Далее необходимо редактировать файл Makefile.am соответствующим образом [4]. Установка блоков в общую библиотеку включает в себя размещение различных файлов в правильных каталогах (табл. 1) для обеспечения успешной компоновки. Отметим, что все файлы «.h», «.cc» и «.i» помещаются в каталоге ~/newblock/src/lib. Таблица 1. Содержание каталоги нового блока Каталог Содержание /home/user/newblock Makefile /home/user/newblock/ Файлы для GNU Autotools config /home/user/newblock/ Каталог верхнего уровня для файлов C++ и src Python /home/user/newblock/ src/lib Каталог для заголовочных и исходных файлов C++ Литература 1. MichaelDickens и др. Seamless dynamic runtime reconfiguration in a software-defined radio. 2. Jean-Philippe Lang. GNU Radio Companion. wiki/gnuradiocompanion Shravan Sriram и др. Plug-ins for GNU Radio Companion. International journal of computer applications ( ) volume 52 No.16, August

104 АЛГОРИТМ ПОИСКА БАРЬЕРОВ И ЦИКЛОВ ИЗ НЕИСПРАВНЫХ УЗЛОВ, ВОЗНИКАЮЩИХ ПРИ САМОДИАГНОСТИКЕ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ 1 О.В. Молдованова Сибирский государственный университет телекоммуникаций и информатики Использование распределенных вычислительных систем (ВС) определяется их надежностью и способами организации функционирования. Несмотря на высокую надежность микроэлектронной базы, вероятность возникновения отказов в распределенных ВС повышается с ростом количества элементарных машин (ЭМ) [1]. Следовательно, организация эффективного отказоустойчивого функционирования распределенных ВС требует создания алгоритмов и программных средств, обеспечивающих контроль и диагностику функционирования этих систем. Для контроля правильности работы ЭМ и локализации их неисправностей применяется подход, основанный на самоконтроле и самодиагностике ВС. В работе [2] предлагается децентрализованный событийноориентированный алгоритм самодиагностики распределенных ВС, допускающий изменение состояния ЭМ во время фазы тестирования, не накладывающий ограничений на тестовую топологию системы и характеризующийся параллельным выполнением фаз тестирования и распространения диагностической информации. Разработанный алгоритм является адаптивным, поэтому тестовая топология, используемая им, изменяется в зависимости от результатов тестирования, полученных на предыдущем раунде. Диагностируемость алгоритма равна N 1, где N количество ЭМ в распределенной ВС. Так как при выполнении децентрализованного алгоритма самодиагностики каждая ЭМ тестируется только одной исправной соседней ЭМ, количество тестов, выполняемых в течение одного раунда тестирования, равно N. Таким образом, разработанный алгоритм является оптимальным по количеству исполняемых тестов. В течение раунда тестирования в системе передается 2N сообщений в отсутствии событий и 2NV сообщений при наличии событий, где V количество событий. 1 Работа выполнена при поддержке Совета по грантам Президента РФ (ведущая научная школа НШ ), Российского фонда фундаментальных исследований (гранты а, а, а, а, а, мол_а), в рамках государственного контракта с Минобрнауки РФ и интеграционного проекта 39 СО РАН. 104

105 Латентность алгоритма формируется из времени T test тестирования и времени T trans передачи диагностической информации по максимальному пути между двумя ЭМ в распределенной ВС. Моделирование алгоритма проводилось для распространенных топологий распределенных вычислительных систем: решетка, тор, гиперкуб, D n - граф. Результаты моделирования показали, что загрузка системы при выполнении алгоритма в отсутствии неисправностей очень мала, и она увеличивается незначительно при наличии неисправностей. Например, для топологии «3D-решетка» загрузка системы при выполнении алгоритма в отсутствии неисправностей составляет 15,1 единиц модельного времени (1,51% от общего времени моделирования) и увеличивается при наличии одного отказа до 66,47 (6,647%) или при наличии одного восстановления после отказа до 80,42 (8,042%). В результате исследований предложенного алгоритма были выявлены ситуации, при которых неисправные ЭМ формируют барьеры и циклы, препятствующие самодиагностике распределенной ВС. Барьеры и циклы из неисправных машин разбивают систему на две отдельные подсистемы (рисунок 1), которые не могут обмениваться своими диагностическими образами. Барьер (рисунок 1а) представляет собой непрерывную цепочку соседних неисправных ЭМ, простирающуюся от одной границы топологии до другой. Таким образом, барьеры могут возникать только в топологиях типа «решётка». Цикл это кольцо из соседних неисправных ЭМ, изолирующее свою внутреннюю область от остальной системы (рисунок 1б). Циклы возможны в распределенных ВС различных топологий. Рисунок 1. Примеры барьеров и циклов из неисправных элементарных машин: а) цикл; б) барьер. Алгоритм обнаружения барьеров и циклов приведен на рисунке

106 Рис. 2. Псевдокод алгоритма обнаружения барьеров и циклов Входными данными для алгоритма является множество FAULTS номеров узлов, диагностированных как неисправные. Множество BARRIER формируется во время выполнения алгоритма, в него помещаются номера узлов, которые образуют барьер или цикл. BORDER это множество, состоящее из двух элементов: номера начального узла барьера и номера конечного узла. Во множество SUSPECTS помещаются номера неисправных узлов, «подозреваемых» в формировании барьера или цикла. При выполнении алгоритма номера u i узлов последовательно удаляются из SUSPECTS и помещаются в BARRIER. Затем анализируются все соседние с u i узлы. Если оказывается, что соседний неисправный узел u j уже находится во множестве SUSPECTS, но при этом еще не помещен в BARRIER, значит цикл найден, можно прекращать работу алгоритма. Иначе узел u j добавляется к множеству SUSPECTS. Барьер найден в том случае, если очередной узел из SUSPECTS является граничным узлом, и множество BORDER непустое. Проведены экспериментальные исследования предложенного алгоритма обнаружения барьеров и циклов, которые показали его работоспособность для различных топологий распределенных ВС. Разработанный алгоритм встроен в программный инструментарий децентрализованной самодиагностики распределенных ВС и вызывается каждый раз тем узлом системы, который диагностировал неисправность соседнего с ним узла. Если барьер или цикл найден, генерируется сообщение для администратора системы. 106

107 Применение этого алгоритма позволяет обеспечить целостность диагностического образа распределенной вычислительной системы. Литература 1. Хорошевский В.Г. Распределенные вычислительные системы с программируемой структурой. // Вестник СибГУТИ, С Молдованова О.В. Децентрализованный алгоритм самодиагностики для крупномасштабных распределенных вычислительных систем различных топологий // Проблемы информатики. Новосибирск: СО РАН, (14). С

108 СТРАТЕГИИ ПРОВЕРКИ КОРРЕКТНОСТИ МЕТОДА ВЫЯСНЕНИЯ ИЗОМОРФИЗМА ГРАФОВ С ИСПОЛЬЗОВАНИЕМ ГРИД-СИСТЕМ НА ДОБРОВОЛЬНОЙ ОСНОВЕ Э.И. Ватутин, В.С. Титов Юго-Западный государственный университет, факультет информатики и вычислительной техники max Одной из задач в области теории графов является задача проверки изоморфизма графов G1 = A1, V и 1 G2 = A2, V, где A множество вершин, 2 V множество дуг, с целью выяснения факта наличия/отсутствия изоморфизма либо отыскания подстановки изоморфизма F, являющейся биекцией между множествами вершин A 1 и A 2. Для проверки изоморфизма графов частного вида известен ряд быстрых полиномиальных алгоритмов (например, [1]), однако, в то же время, неизвестен полиномиальный алгоритм для проверки изоморфизма графов общего вида, но и не доказана невозможность его построения. На протяжении последних десятилетий предпринимались неоднократные попытки его отыскания, однако для известных подходов либо известны контрпримеры, либо не существует общепризнанного аналитического доказательства. Проверку корректности интересующего алгоритма можно провести в ходе вычислительного эксперимента, при котором инвариант проверяемого метода сопоставляется с предположительно полным инвариантом, образованным совокупностью известных быстро вычислимых инвариантов. При несовпадении результатов сравнения предположительно полных инвариантов и проверяемого инварианта может быть найден искомый контрпример, опровергающий корректность проверяемого метода. Если же подобных несовпадений не выявлено, например, при проверке всех графов с числом вершин N= A меньше заданного N max, можно утверждать, что метод корректно работает в области N< N. Ввиду того, что взятый за эталон для сравнения предположительно полный инвариант не является на самом деле полным, возможны ситуации, когда несовпадение результатов проверки на изоморфизм вызвано низкой дифференцирующей способностью выбранного предположительно полного инварианта, а не отысканием контрпримера для тестируемого метода. В таком случае необходимо либо доопределение предположительно полного инварианта дополнительными частными инвариантами (что невозможно в общем случае, т.к. иначе данный предположительно 108

109 полный инвариант был бы по настоящему полным и быстровычислимым, а таковой на данный момент неизвестен), либо автоматизированная ручная проверка полученных результатов. В качестве компонентов предположительно полного инварианта были взяты следующие быстровычислимые инварианты: число вершин графа N (на самом деле оно совпадает в рамках проводимых вычислительных экспериментов); число дуг графа M = V ; отсортированный вектор степеней вершин где d( a i ) степень вершины, т.е. число инцидентных ей дуг; детерминант матрицы смежности графа D= det M, где m = 0, если вершины a i и a не связаны дугой, и j m ij = 1в противном случае, i, j = 1, N ; ( i j) ( i) ( j) 1 индекс Рандича[2] r = е и две его модификации, повы- " a, a ОV d a d a шающие дифференциальную способность; число компонент связности графа N C ; вектор мощностей компонент связности графа V = [ v1, v2,..., vn], в котором значение v i показывает, что компонента связности из iвершин встретиласьv i раз; диаметр графа, определяемый как минимальное число дуг ( i, j) максимально удаленной парой вершин: d( G) = max l( ai, a j). 109 i, j= 1, N ij l a a между Для графов с числом вершин N Ј 7указанный предположительно полный инвариант является полным, т.к. обеспечивает формирование числа классов изоморфизма, в точности равного известному (последовательность A по классификатору целочисленных последовательностей [3]), для N = 8формируемое число классов изоморфизма равно вместо искомого 12346, что говорит о наличии 27 дополнительных не выявленных классов изоморфизма. В качестве метода, претендующего на построение полного инварианта, был взят метод, предложенный в работе [4].С целью поиска контрпримера осуществлялось попарное сравнение инвариантов для выбранной пары матриц смежности графов M и M, где нижний индекс обозначает код матрицы, i j полученный путем построчного выписывания двоичных значений верхней

110 треугольной подматрицы и перевода полученной битовой строки в десятичную форму: Несложно показать, что для графов из N вершин существует ( N- 1) + ( N- 2 ) ) NN ( - 1) 2 n = 2 = 2 различных матриц смежности, а необходимое число попарных сопоставлений инварианта составляет ( ) ( ) N( N- 1) N( N- 1) 2 2 nn x = ( n- 1) + ( n- 2 ) = =. Так для графов из 2 2 N = 5вершин число различных матриц смежности n = 1024, необходимое число сопоставлений x = При реализации подобной стратегии «в лоб» время вычислительного эксперимента составило 6 часов на компьютере с процессором Core 2 Duo 1,86 ГГц для однопоточной реализации расчетного модуля. Для N = 6число матриц смежности n = , необходимое число попарных сопоставлений x = , на которые потребовалось бы часов (256 дней) вычислительного времени. При дальнейшем увеличении Nнеобходимые затраты стремительно растут: при увеличении числа вершин в графе на 1 число различных матриц смежности возрастает в 2 N раз, а необходимое число попарных сопоставлений приблизительно в раз (т.е. для N = 7затраты вычислительного времени будут еще в 14 2 = раз больше, для N = 8 еще в больше и т.д.). Наблюдаемый «комбинаторный взрыв» не позволяет реализовать на практике данную стратегию для графов с большим числом вершин. Вычислительную сложность проверки можно существенно снизить путем разбиения множества всех матриц смежности на классы эквивалентности. Так, например, для N = 4 имеют местоc = 11 классов изоморфизма: c 1 = { 0, } c 2 = { 1, 2, 4, 8,16, 32}, c 3 = { 3, 5, 6, 9,10,17, 20, 24, 34, 36, 40, 48}, c 4 = { 7, 25, 42, 52}, c 5 = { 12,18, 33}, c 6 = { 11, 21, 38, 56}, c 7 = { 13,14,19, 22, 26, 28, 35, 37, 41, 44, 49, 50}, c 8 = { 15, 23, 27, 29, 39, 43, 46, 53, 54, 57, 58, 60}, c 9 = { 30, 45, 51}, c 10 = { 31, 47, 55, 59, 61, 62}, c 11 = { 63}, 2 2 N 110

111 где числа в составе множеств обозначают коды матриц смежности. При наличии подобного множества проверку метода, претендующего на построение полного инварианта, можно организовать в два этапа: путем сопоставления на равенство инвариантов для всех графов в рамках 111 ( c - 1) C ci i каждого класса эквивалентности c i, что потребует е < NC i= 1 2 сопоставлений; путем сопоставления на неравенство инвариантов для одного графа из CCсопоставлений. ( 1) каждого класса изоморфизма, что потребует 2 Общее число сопоставлений в данном случае составляет величину порядка O( NC ), что ощутимо лучше полученной выше экспоненциальной зависимости O ( 2 N 2 ). С использованием данной стратегии для N Ј 7 были построены множества классов изоморфизма и совпадения инвариантов для графов из различных классов выявлено не было (при использовании подхода [4] несовпадение инварианта в рамках одного класса изоморфизма представляется невозможным), для чего потребовалось более 2 часов вычислительного времени. При переходе к графам с большим числом вершин затраты вычислительного времени существенно возрастают. Так при N = 8число классов изоморфизма, построение которого также становится вычислительно сложной задачей, составляет уже C = , что при попарных сопоставлениях инвариантов потребует приблизительно сопоставлений, на что потребуется не менее 12 дней; при N = 9 C = , число сопоставлений , необходимые затраты вычислительного времени не менее 16 лет вычислительного времени и т.д. Таким образом, данная стратегия позволяет расширить область проверки до N 10 с использованием параллельных вычислительных средств (кластеров, суперкомпьютеров или грид-систем), но не более того. При рассмотрении графов с числом вершин N > 10 точная проверка корректности представляется практически невозможной и она может быть заменена вероятностным сравнением для большого числа граф-схем (по аналогии, например, с тестом Миллера Рабина, используемым для вероятностной проверки чисел на простоту). Наиболее перспективным классом вычислительных средств для подобного вычислительного эксперимента представляются грид-системы на

112 добровольной основе, крупнейшая из которых построена на платформе BOINC [5] и характеризуется интегральной производительностью 8,5 PFLOPS. При этом на удаленные компьютеры необходима передача данных о множестве кодов матриц смежности для поиска попарных совпадений инварианта (принадлежащих к разным классам эквивалентности при N Ј 10 или сгенерированных случайно при N > 10 ), искомым результатом ответа клиентской машины может служить факт нахождения пары неизоморфных графов, распознаваемых тестируемым методом как изоморфные (контрпример). Подобные расчеты планируются к реализации в рамках проекта распределенных вычислений Работа выполнена в рамках программы «Научные и научнопедагогические кадры инновационной России на годы» (проект 14.B «Теоретические основы и методы использования распределенных и высокопроизводительных вычислительных систем для решения дискретных оптимизационных задач»). Литература 1. Ватутин Э.И., Зотов И.В., Титов В.С. Выявление изоморфных вхождений R-выражений при построении множества сечений параллельных алгоритмов логического управления // Информационно-измерительные и управляющие системы. 11, Т. 7. М.: «Радиотехника», С Валяев В.В., Ватутин Э.И. Метод определения изоморфизма графов общего вида за полиномиальное время // Известия ЮЗГУ. Серия «Управление, вычислительная техника, информатика. Медицинское приборостроение». 2. Ч С

113 ОБЩАЯ КОНЦЕПЦИЯ И АРХИТЕКТУРА ПРОГРАММНОГО СРЕДСТВА ИНСТРУМЕНТАЛЬНОЙ ПОДДЕРЖКИ МЕТОДОВ ФОРМАЛЬНОЙ ВЕРИФИКАЦИИ ФУНКЦИОНАЛЬНО-ПОТОКОВЫХ ПАРАЛЛЕЛЬНЫХ ПРОГРАММ М.С. Кропачева ФГОУ ВПО «Сибирский федеральный университет», институт космических и информационных технологий Всё возрастающие в последнее время требования к надёжности программного обеспечения могут быть удовлетворены с помощью формальной верификации. Под формальной верификацией понимается доказательство корректности программы, которое заключается в установлении соответствия между программой и её спецификацией, описывающей цель разработки [1]. Главным преимуществом формальной верификации является возможность доказать отсутствие ошибок в программе. Кроме того, в настоящее время существует тенденция к развитию высокопроизводительных вычислений за счёт распараллеливания работы программ, что обусловлено широким применением многоядерных процессоров и распределённых вычислительных систем. Однако разнообразие архитектур и преимущественное использование императивного подхода усложняет процесс формальной верификации параллельных программ. Главной проблемой являются конфликты из-за ресурсов. Например, неправильное совместное использование общей памяти или взаимные блокировки процессов в случае работы с распределённой памятью. Альтернативой императивному подходу является функциональнопотоковая параллельная (ФПП) парадигма и предложенный для её поддержки язык программирования Пифагор[2]. Параллелизм в данной модели реализуется на уровне операций, что позволяет достичь максимального параллелизма программы. Поэтому, такая программа может быть перенесена на конкретную архитектуру с конечными ресурсами, при необходимости, с ограничением её параллелизма. В связи с тем, что в основе модели лежит управление вычислениями по готовности данных, и вычисления протекают внутри бесконечных ресурсов, сложность формальной верификации ФПП программ сравнима со сложностью верификации последовательных программ. Таким образом, если доказать корректность ФПП программы и верифицировать процесс переноса ФПП программ на конкретную архитектуру, то полученная после переноса программа также будет корректной. Поэтому 113

114 развитие методов анализа и формальной верификации ФПП программ является актуальным. Методы верификации подразделяются на методы дедуктивного анализа и методы проверки моделей. Они предоставляют различные подходы к форме спецификации программы и к приёмам подтверждения корректности. Методы первой группы более универсальны и применимы для верификации ФПП программ. Недостатком, как и в случае последовательных программ, является высокая сложность автоматизации, в то время как достоинство - возможность подтверждения корректности для начальных данных, заданных в общем виде[3]. Одним из методов дедуктивного анализа является аксиоматический подход на базе исчисления Хоара [4]. Исчисление Хоара это расширение какой-либо формальной теории введением в неё формул специального вида, которые называются тройками Хоара. Тройка Хоара - это программа, к которой приписаны две формулы формальной теории, описывающие ограничения на входные переменные (предусловие) и требования к результату работы программы (постусловие). Этот метод имеет более высокий уровень абстракции, что предоставляет большую возможность для автоматизации процесса доказательства, в отличие от менее формализованных методов дедуктивного анализа. С позиций аксиоматического подхода, язык программирования можно определить как формальную теорию (исчисление) с набором аксиом и правил вывода, пользуясь которыми можно вывести утверждения о тех или иных свойствах программ, в частности, о свойствах корректности программы. Таким образом, для верификации ФПП программ в качестве базового метода выбрано исчисление Хоара и метод индукции на базе ограничивающих функций для анализа завершения рекурсий. Для функционально-потокового языка параллельного программирования Пифагор разработана аксиоматическая теория. Для каждой встроенной функции языка задаётся набор аксиом, описывающих работу этой функции; также используются два правила вывода: «правило прямого прослеживания» и «правило преобразования в формулу». «Правило прямого прослеживания» позволяет на основе аксиом для встроенных функций преобразовывать тройки Хоара любой программы на языке Пифагор, так как любая программа, в конечном счёте, состоит из встроенных функций. Применение правила приводит к «сокращению» («свёртке») программы и связанному с этим изменению предусловия и постусловия. После последовательных применений «правила прямого прослеживания» получается тройка Хоара с «пустой про- 114

115 граммой», которая переводится в формулу с помощью «правила преобразования в формулу». Далее можно доказывать истинность формулы, из которой будет следовать корректность программы. Однако процесс доказательства корректности ФПП программ, также как и императивных последовательных программ, достаточно трудоёмок, так как требует рассмотрения большого числа вариантов выполнения программы и работы с громоздкими формулами. Поэтому целесообразно автоматизировать данный процесс. В виду того, что проблема корректности программ алгоритмически неразрешима, процесс доказательства нельзя полностью автоматизировать. Этапы определения тройки Хоара для конкретной программы и доказательства условий корректности не могут быть автоматическими, а должны проводиться в диалоговом режиме. Этап генерации условий корректности, напротив, может выполняться автоматически [1]. В общем виде систему, позволяющую автоматизировать доказательство корректности функционально-потоковых параллельных программ на языке Пифагор, можно представить в виде схемы, приведённой на рисунке 1[5]. Рисунок 1.Схема системы автоматизированного доказательства корректности функционально-потоковых параллельных программ 115

116 В упрощенном виде работа системы должна состоять в следующем: пользователь передаёт системе программу на языке Пифагор и требования к программе в виде тройки Хоара. Система осуществляет процесс доказательства посредством формирования формул на языке исчисления предикатов, используя информацию об аксиомах и уже доказанных теоремах. Если системе не удаётся доказать истинность какой-либо из полученных формул, то пользователь должен выполнить процесс доказательства самостоятельно. Рассмотренная система автоматизированного доказательства корректности ФПП программ, позволит упростить и частично автоматизировать процесс доказательство корректности функционально-потоковых параллельных программ. Литература 1. Непомнящий В.А., Рякин О.М. Прикладные методы верификации программ. - М.: Радио и связь, с. 2. Легалов А.И. Функциональный язык для создания архитектурнонезависимых параллельных программ // Вычислительные технологии (10). С Удалова Ю.В., Легалов А.И., Сиротинина Н.Ю. Методы отладки и верификации функционально-потоковых параллельных программ // Журнал Сибирского федерального университета. Серия «Техника и технологии». Апрель Т. 4, 2. С Hoare C. A. R. An axiomatic basis for computer programming / C. A. R. Hoare // Communications of the ACM Vol. 10. No 12. P Кропачева М.С. Система автоматизированного доказательства корректности функционально-потоковых параллельных программ / М.С. Кропачева // Молодёжь и наука: сборник материалов VIII Всероссийской научно-технической конференции. - Красноярск :Сиб. федер. унт.,

117 ПРИМЕНЕНИЕ ТЕХНОЛОГИЙ СИНТЕЗА И РАСПОЗНАВАНИЯ РЕЧИ ДЛЯ МОДЕЛИРОВАНИЯ ИНТЕРФЕЙСОВ В ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ Д.А. Суранова АГУ, математический факультет, кафедра теоретической кибернетики и прикладной математики. Прогресс в области речевых технологий позволяет использовать голосовые решения в управлении сложными интеллектуальными системами. В данном докладе рассматривается пример использования речевых технологий и оптимизированного способа хранения информации для получения отчетной информации в биллинговой системе. В рамках исследования была создана модель программы в виде интернет-сайта, в качестве системы синтеза и распознавания речи использованы сервисы Google. Запросы, сформированные на основе фразы пользователя, должны иметь максимально простую структуру и высокую производительность. Для этого можно воспользоваться технологией OLAP [1] и хранить нужные данные в таблице в виде числа и набора атрибутов, определенных для такого числа. Пример представлен в таблице 1. Таблица 1 Пример хранения данных с использованием OLAP-технологии Тип суммы Лицевой счет Услуга Сумма Начисление 1234 Отопление 200 Начисление 2345 Вода 300 Оплата 1234 Отопление 200 Рассмотрим способ получения необходимой пользователю информации на основе работы с объемами данных по услугам лицевых счетов биллинговой системы. Потребление, начисление, оплаты, счисления, перерасчеты все это числовые значения, определяемые для набора атрибутов. Даже если в системе они хранятся по-разному, для более эффективного построения пользовательских запросов их можно объединить в одну агрегированную таблицу с использованием технологии OLAP. В биллинговых системах для расчета платы за жилищно-коммунальные ресурсы минимальным отрезком времени для получения отчетности является календарный месяц. Следовательно, необходимые для отчета данные 117

118 можно записывать в виде суммы для каждого уникального набора атрибутов в разбивке по периодам времени, равным месяцу. Все атрибуты такой таблицы, назовем ее «BillingData», являются внешними ключами к справочникам системы. Для удобства работы справочники имеют единообразную структуру, содержащую поля «уникальный ключ», «название» и некоторый набор дополнительных полей. Так, например, таблица «Service» («Услуги») будет содержать поля «Id_Service» и «Name». Пользователь сможет получить интересующие его данные по услугам лицевого счета, сформировав соответствующую фразу [2]. Фраза должна отвечать на вопросы о том, какие данные выбрать и каким условиям они должны удовлетворять. Если определить правила для построения такой фразы, то ее можно преобразовать в SQL-запрос к таблице «BillingData». Запрос должен содержать: ключевые слова, справочные слова и значения справочных слов. Ключевые слова должны делить фразу на смысловые части, справочные слова и их значения должны определять конкретные значения выборки и ее условия. SQL-запрос к таблице «BillingData» будет сформирован из следующих частей: 1. Select 2. FromBillingData 3. Where 4. Groupby В первой части будут заданы поля, которые необходимо выбрать. Вторая часть содержит источник данных таблицу «BillingData». Третья определяет условия, которым должна удовлетворять выборка. Четвертая часть задает разрез данных. Например, фраза может быть построена так: отчет выбрать начисление адрес город Барнаул улица Попова дом 19 месяц январь разрез лицевой и услуга. Данная фраза содержит ключевые слова «отчет», «разрез», «выбрать». Справочными словами являются: «адрес», «город», «улица», «дом», «месяц», «лицевой и услуга». Значения справочных слов это «Барнаул», «Попова», «19», «январь», «начисление». Проанализировав слова в той последовательности, в которой они записаны, и сверив данные с соответствующими справочниками, получаем готовую структуру. В структуру в процессе сверки со справочниками заносится идентификатор объекта в базе данных и ставится признак корректности, если значение в справочнике найдено. По ненайденным словам происходит уточнение через диалог с пользователем и заносится правильное значение. 118

119 Результат выполненного запроса. Таблица 2 Лицевой Услуга Сумма 4567 Холодная вода Электроэнергия Электроэнергия 1180 На основании данной структуры и данных справочников «ключевые слова» и «разрез данных» динамически формируется SQL-запрос. Далее на основе запроса происходит формирование отчетной страницы в формате PDF. Для получения возможности генерации файла средствами PHP был использован открытый и свободно распространяемый класс tfpdf [3], поддерживающий кодировку UTF-8 и кириллицу. Исходный код класса и документацию можно скачать по адресу Для корректного отображения таблицы используются php-функции определения количества столбцов и их параметров, таких, как ширина столбца, его название и тип. Результаты запроса выводятся на странице в виде сформированной таблицы. Алгоритм и технологию хранения данных, разработанные и рассмотренные в рамках доклада, можно использовать для формирования запроса через голосовой ввод данных. Схема взаимодействия с пользователем в этом случае выглядит следующим образом (рисунок 1): Рисунок 1. Схема взаимодействия с пользователем 119

120 Литература 1. Технологии анализа данных. DataMining, VisualMining, TextMining, OLAP / А.А. Барсегян, М.С. Куприянов, В.В. Степаненко, И.И. Холод. СПб: БХВ-Петербург, с. 2. Батура Т.В. К вопросу об анализе текстов на естественном языке// Новые информационные технологии в науке и образовании / Т.В. Батура, О.Н. Еркаева, Ф.А. Мурзин. Новосибирск, с Олищук А. Введение в FPDF [электронный ресурс] Режим доступа: свободный (дата обращения: ). 120

121 ЭКСПЕРТНАЯ СИСТЕМА ДЛЯ АНАЛИЗА ПРОЕКТИРОВКИ СТРУКТУРНО-КАБЕЛЬНЫХ СИСТЕМ ЗДАНИЯ А. Е. Фролов, А.А. Соловьев ФГБОУ ВПО «Алтайский государственный университет» Не смотря на широкое распространение беспроводных систем, значительную роль в сетевых технологиях продолжают играть структурные кабельные системы (СКС). К выбору СКС следует отнести следующие преимущества: дешевизна; распространенность; технологичность. К недостаткам СКС следует отнести сложность процесса проектирования (под ключ). Главными проблемами проектирования СКС являются: анализ существующей СКС на предмет: o целостности; o безопасности; o модернизации; анализ создания СКС на предмет: o удовлетворения различным критериям; o удовлетворения реперным точкам; анализ проектировки СКС на предмет: o подбора необходимых материалов; o затрат на создание СКС. Так же проблемой является отсутствие в бюджете малых и средних организациях средств на заказ проекта СКС в профильных организациях, и как следствие, эта задача зачастую ложится на плечи инженера занимающегося поддержкой существующей IT-инфраструктуры организации. Одним из способов решения проблем в проектировании СКС может быть создание специализированных узкофункциональных case-систем, которые позволят облегчить процесс проектирования. Существуют программные продукты для проектирования компьютерной сети, но при всех своих достоинствах они обладают широким набором функций, универсальны, и как следствие, являются громоздкими и дорогими. Преимуществом разрабатываемого программного продукта перед его аналогами заключается в узконаправленной функциональности, вследствие чего он будет дешевле в производстве и эксплуатации. 121

122 Для решения поставленной задачи создаваемый продукт должен быть оснащен экспертной системой для решения общих вопросов проектирования сетей, вопросов безопасности и администрирования модели будущей сетевой инфраструктуры [1]. Основной особенностью экспертной системы является анализ и обработка результатов спроектированной модели сетевой инфраструктуры, вывод результатов анализа и возможные пути решения возникших трудностей. В результате анализа было выявлено, что экспертная система должна быть реализована на основе логической модели знаний, что позволит давать точные результаты анализа [2]. Основные функции анализа экспертной системы: анализ существующей СКС на предмет: o целостности; o безопасности; создание СКС на предмет: o удовлетворения различным критериям; o удовлетворения реперным точкам; правильности по существующим ГОСТам на создание СКС; анализ проектировки СКС на предмет: o оптимизации по кабелю и возможности исправления в интерактивном режиме; o вывода оптимальных критериев для подбора материалов. Структурная схема предлагаемой экспертной системы представлена на рисунке

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

124 организаций, чей бюджет не позволяет заказывать проекты сетевой инфраструктуры здания, в котором они находятся. Так же это облегчит работу инженера, занимающегося поддержкой, ремонтом и модернизацией сетевой инфраструктуры, за которой он закреплен. Это позволит ориентироваться как на большие организации, так и на организации среднего и малого размера и позволит сократить расходы на проектирование СКС. Литература 1. Э. В.Попов, И.Б. Фоминых, Е.В. Кисель, М.Д. Шапот. Статически и динамические экспертные системы. - М.: Финансы и статистика, с

125 РЕАЛИЗАЦИЯ АЛГОРИТМА МОДЕЛИРОВАНИЯ РАСПРОСТРАНЕНИЯ ЦУНАМИ MOST НА БАЗЕ FPGA К.К. Облаухов, К.Ф. Лысаков Институт Автоматики и Электрометрии СО РАН, Новосибирский государственный университет При возникновении цунами необходимо уметь предсказывать поведение волны для своевременного предупреждения людей в опасных районах. Данная задача требует оперативной обработки больших объемов данных. Применение спецпроцессоров позволяет сократить время моделирования и, как следствие, уменьшить материальные и людские потери в зоне стихийного бедствия. На данный момент не существует общей математической модели, достаточно точно описывающей явление цунами. Принято разделять моделирование цунами на три основных этапа: исследование зарождения начальной волны, распространение цунами и взаимодействие с берегом. Для моделирования цунами в национальном управлении океанических и атмосферных исследований (NOAA) применяется пакет MOST, реализующий математическую модель распространения волны предложенную В. В. Титовым. Применяемый в MOST метод численного моделирования распространения волны описывается с помощью нелинейных уравнений мелкой воды. Эти уравнения решаются с помощью алгоритма численного моделирования с использованием разностных схем, что позволяет применять широкое распараллеливание вычислений. Современная программируемая логика FPGA (Field-Programmable Gate Array) обладает возможностью параллельно исполнять до сотен тысяч параллельных потоков исполнения, одновременно создавая специализированные вычислительные конвейерные архитектуры. Цель работы проектирование специализированного вычислительного конвейера для реализации алгоритма распространения цунами из пакета MOST на базе FPGA. В алгоритме моделирования используется явная двумерная разностная схема на пятиточечном шаблоне, которая получается в результате последовательного применения двух одинаковых одномерных схем для различных направлений. Входными данными для задачи являются: пространственная сетка с переменным шагом; значения глубины бассейна в узлах сетки; значения скоростей вдоль осей; 125

126 высота волны; временной шаг. Для реализации граничных условий применяется замена исходных переменных (скорости, высота волны), что приводит к усложнению вычислительной схемы. Рисунок 1. Схема вычислителя В результате исследования алгоритма был выделен независимый вычислительный блок, необходимый для решения задачи. Этот блок является конвейером, на вход которого каждый такт подаются значения переменных на предыдущем временном шаге для очередной координаты пространственной сетки. Выходом являются значения переменных на текущем шаге согласно разностной схеме. Исходные данные для вычислений хранятся во внутренней статической памяти FPGA (BRAM), подгружаясь из памяти ПК по мере необходимости в режиме DMA. Промежуточные результаты хранятся во внешней динамической памяти аппаратного решения на базе FPGA, что позволяет уменьшить обмен данными с ПК и, как следствие, увеличить быстродействие. Такой подход позволяет применять различные разбиения пространства моделирования и строить масштабированные конвейеры на FPGA любого объема. Так, в кристалл Xilinx xc5vlx50t вмещается только один вычислительный блок, а в кристалл Xilinx xc6vsx315t 15. Спроектированный модуль был реализован и протестирован на языке описания аппаратуры VHDL. Все операции выполняются над числами с плавающей запятой одинарной точности с использованием IP-ядер фирмы Xilinx. Один вычислительный блок использует 40 сумматоров, 27 умножителей, 1 делитель и операцию извлечения квадратного корня. Для увеличения производительности при использовании FPGA Xilinx рекомендуется применять кристаллы со встроенными блоками DSP

127 РЕАЛИЗАЦИЯ ИНТЕРФЕЙСА ПРОГРАММИРОВАНИЯ ПРИКЛАДНЫХ ПРИЛОЖЕНИЙ (API), БЫСТРЫХ ПАРАЛЛЕЛЬНЫХ АЛГОРИТМОВ АНАЛИЗА РЕЧИ Д.А. Вольф Томский государственный университет систем управления и радиоэлектроники, кафедра КИБЭВС Цель Осуществлялся поиск принципа параллельного вычисления быстрого преобразования Фурье (БПФ) для дальнейшей реализации в виде интерфейса программирования прикладных приложений (API) с использованием ресурсов графического процессора NVIDIA технологии CUDA [1]. Введение Развитие и появление в последние пять лет доступных устройств параллельного вычисления на базе графических процессоров (GPU), движет к переносу устаревших и последовательных алгоритмов численных методов на новые вычислительные параллельные системы. Проблема К сожалению, официальный каталог приложений [2], использующий технологию NVIDIACUDA, не пестрит приложениями API, которые могли быть применены в массовых проектах (приложениях) анализа, компрессии, передачи и оценки качества речь.а, если и существуют решения, то в виде отдельных частных, ограниченных решений вроде [3], без описания внутренних алгоритмов и реализаций, а так же не возможностью коммерческого использования или в других авторских решениях. Поэтому, прежде чем осуществлять реализацию параллельного вычисления БПФ в виде программного кода, с начала необходимо разрешить вопрос технологии распараллеливания алгоритма БПФ на GPU. Решение В качестве быстрого численного метода анализа данных, выбран алгоритм быстрого преобразования Фурье (БПФ) с прореживанием по времени предложенный в [4].В программной среде MathCad 15 смоделирован процесс быстрого численного метода по анализу 16 точечной выборки (рисунок 1). Суть модели, заключается в замене операций умножения, комплексных чисел, более простыми эквивалентами операций суммирования с учетом 127

128 периодичности гармонических функций, содержащихся в исследуемом сигнале [5]. На основе построенной модели (рисунок 1) осуществлялся поиск технологии (принцип) распараллеливания вычислений БПФ, для того, что бы, можно было в дальнейшем этот принцип реализовать в APIс применением параллельных вычислений CUDA. Из модели стало очевидным, что процесс вычисления БПФ можно осуществлять параллельно для каждой гармоники в виде отдельного треда, как это показано на рисунках 2 и 3. Рисунок 1. Модель процесса БПФ для 16 точечного преобразования в среде MathCad 15 На рисунке 2 показана структурная схема вычисления БПФ для нулевой гармоники, реализованной в качестве одного треда, а на рисунке 3 для первой гармоники. 128

129 Рисунок 2. Структурная схема вычисления БПФ отдельного треда для нулевой гармоники Аналогичным образом индуктируется процедура распараллеливания процессов БПФ в виде отдельных тредов для всех остальных гармоник анализируемого речевого сигнала. Например, с помощью полученной модели и полученной технологии параллельного БПФ можно доказать [6], что для взрослых мужчин Гауссово (или среднее) распределение основной гармоники варьируется около 130 Гц, а для женщин 260 Гц. На рисунке 4 (а) представлен сигнал звука «У» записанный диктором (сигнал масштабирован до периода основного тона). Для выделения гармоники основного тона, полученный сигнал был пропущен через систему состоящей из 1024 параллельных входов X0..X1023 модели и соответственно 1024 отдельных потоков БПФ, результат преобразования Гц показан на рисунке 4 (б), вывод диктор мужчина (автор). 129

130 Рисунок 3. Структурная схема вычисления БПФ отдельного треда для первой гармоники а) б) Рисунок 4. Сигнал гласной буквы «У» произнесенный мужским диктором (а). Частота основанной гармоника гласной буквы «У» (б). Из рисунка 4 (а) не сложно проверить, что частота основной гармоники для буквы «У», произнесенной диктором, равна: 1/( )=120.5 Гц, т.е. частота гармоники основного тона для мужчины, рассчитанная при 130

131 помощи полученной модели, примерно попадает в Гауссово распределение 130Гц. Число 1024 было выбрано не случайно: во первых объединено Гауссово распределение для мужского и женского голоса, поэтому границы определены на диапазоне [ ] Гц; во вторых для выбранного БПФ число отсчетов выбиралось равным степени двойки, а самое ближайшее от 380 это 512; в третьих сохранялись требования теоремы Котельникова (Найквиста Шеннона), поэтому оставалось выбрать только 2x512=1024 отсчетов, а в пустые выборки были записаны нули. Такой поток легко реализовывается на картах GeForce GTX 4xx, 5xx, 6xx, NvidiaTesla C/S1xxx и старше. На рисунке 5 (а, б) представлен сигнал звука «У» и результат преобразования соответствующий 266 Гц, записанный женским диктором. а) б) Рисунок 5. Сигнал гласной буквы «У» произнесенный женским диктором (а). Частота основанной гармоника гласной буквы «У» (б). Те же выкладки, что и для мужского диктора применяем для женского: 1/( )=266 Гц, т.е. частота гармоники основного тона для женщины, рассчитанная при помощи полученной модели, примерно попадает в Гауссово распределение 260Гц. Вывод. Осуществлен поиск и найден принцип параллельного вычисления БПФ, который в дальнейшем будет реализован в APIс использованием ресурсов GPUтехнологии CUDA. 131

132 Для быстрого нахождения частоты основного тона звука речи можно выбирать максимальное значение амплитуды на выходе параллельной системы на интервале [ ]Гц т.е. выходах [Y60..Y380] соответственно. Литература 1. THENVIDIACUDASITE [Электронный ресурс]. Режим доступа: 2. Каталог приложений использующих технологию NVIDIACUDA -сайт: 3. The NVIDIA CUDA Fast Fourier Transform library (cufft)- сайт: 4.. Кестер У. Проектирование систем цифровой и смешанной обработки сигналов // Техносфера 2010, c Сато Ю. Без паники! Цифровая обработка сигналов // М.: Додэка-XXI 2010, c Раев А.Н., Матвеев Ю.Н., Голощапова Т.И. Анализ влияния состояния наркотического опьянения на характеристики голосов дикторов // Научно-технический вестник информационных технологий, механики и оптики 2012, 5, с

133 ИСПОЛЬЗОВАНИЕ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ ПРИ КОМПЬЮТЕРНОМ МОДЕЛИРОВАНИИ ЛЕСНЫХ ПОЖАРОВ Г.А. Доррер, П.С. Шаталов Сибирский Государственный Технологический Университет Введение Работа посвящена созданию математических моделей и вычислительных алгоритмов для расчета параметров лесных пожаров. Программноинформационные комплексы, способные достаточно точно прогнозировать ход распространения пожара, необходимы для управления борьбой с лесными пожарами, и их создание является важной прикладной задачей. В зависимости от целей моделирования и уровня принимаемых решений можно выделить три уровня моделей: оперативные, тактические и стратегические [1]. Наиболее сложными в вычислительном отношении являются оперативные модели, основанные на трехмерных уравнениях тепло- и массообмена при горении лесного горючего. В качестве примера модели, описывающей процесс горения растительных материалов в пологе леса, можно привести модель А.М. Гришина [2], которая включает в себя систему трехмерных дифференциальных уравнений в частных производных с множеством граничных и начальных условий. Такие уравнения могут быть решены численно с помощью достаточно мощных компьютеров, однако для этого требуется знание большого числа трудно определяемых параметров, что делает применение такой модели в режиме реального времени затруднительным. Эта сложность значительно возрастает при расчете одновременно возникающих в неблагоприятные годы многочисленных пожаров на лесных территориях, особенно вблизи населенных пунктов. Поэтому в настоящее время для управления на тактическом и стратегическом уровне используются упрощенные модели, в значительной мере основанные на спутниковых данных. Однако развитие средств моделирования и вычислительных технологий открывает возможность использовать точные физически обоснованные модели и в задачах управления пожарной ситуацией на всех указанных уровнях. 1. Использование параллельных алгоритмов при моделировании лесных пожаров Отмеченная выше особенность расчетных задач требует значительных вычислительных ресурсов. Без использования высокопроизводительных кла- 133

134 стерных систем и методов параллельного программирования моделирование таких процессов практически невозможно. При моделировании на тактическом уровне одновременно рассматривается распространение множества пожаров, возникших в определенном регионе. При этом используются менее подробные модели, описывающие, в основном, конфигурацию пожаров и их пространственную динамику. В таких задачах параллелизм возникает естественным образом путем геометрической декомпозиции, т.е. разбиения территории на участки, где действует не более одного пожара, а расчетные алгоритмы идентичны для всех участков [3]. Большинство математических моделей горения содержат дифференциальные уравнения в частных производных и комплекс начальных и граничных условий, решение которых, в основном, осуществляется с помощью сеточных методов. При компьютерном моделировании лесного пожара решающим критериями являются время расчетов и точность вычислений.в таком случае, использование эффективных параллельных алгоритмов, реализующих данные численные методы, позволяет эффективно применять математические модели горения при компьютерном моделировании на высокопроизводительных вычислительных ресурсах. В общем виде алгоритм для реализации одного из сеточных методов с использованием стандарта MPIвыглядит следующим образом (рисунок 1), [4]. 134

135 Рисунок 1. Общий вид параллельного алгоритма для метода сеток 2. Применение программного продукта WFDS для моделирования процесса лесного пожара В настоящее время существует достаточное количество программных комплексов, с помощью которых возможно моделирование процессов горения при лесном пожаре. В данной статье рассматривается программа WFDS (Wildland-urbanFireDynamicsSimulator), в отличие от аналогов распространяющаяся бесплатно, реализующая вычислительную гидродинамическую модель (CFD) тепломассопереноса при горении. В программе WFDS численно решаются уравнения Навье-Стокса для низкоскоростных температурно-зависимых потоков, особое внимание уделяется распространению дыма и теплопередаче при пожаре [5]. В качестве численных методов решения дифференциальных уравнений в частных производных используются метод конечных разностей, метод конечных объемов и метод конечных элементов. WFDS позволяет выполнение расчетов в режиме распараллеливания, что существенно ускоряет процесс моделирования. 135

136 Исследования доказали, что результаты вычислений с помощью WFDSдостаточно хорошо совпадают с экспериментальными данными [6], и это позволяет использовать данный продукт для вычислительного моделирования лесных пожаров и его взаимодействия с объектами инфраструктуры, а так же при оценке пожарных рисков. На рисунках 2 и 3 показаны результаты моделирования. Рисунок 2 Моделирование распространения фронта лесного пожара Рисунок 3. Моделирование распространения фронта степного пожара Моделирование проводилось на вычислительном кластере Сибирского Федерального Университета на 8 узлах. Каждый узел включает в себя 16 Gb оперативной памяти и два четырехъядерных процессора Xeon Quad Core GHz. На Рисунке 4 приводится график зависимости ускорения алгоритма и эффективности распараллеливания в зависимости от количества используемых процессоров [3]. Результаты вычислительного эксперимента показали наличие хорошего ускорения при решении данной задачи, и, следовательно, 136

137 подтвердили эффективность использования методов параллельных вычислений. Рисунок 4 Зависимость ускорения алгоритма от количества процессоров В таблице 1 приводятся результаты проведения эксперимента на разном количестве процессоров. Таблица 1 Результаты проведения эксперимента на разном количестве процессоров Количество процессоров, p Время выполнения цикла, T[c] 700,86 359,84 207,08 105,26 87,268 Ускорение, S 1,00 1,95 3,38 6,66 8,03 Эффективность, E = S/p 1,00 0,97 0,85 0,83 0,50 Заключение Применение методов высокопроизводительных вычислений в прикладных задачах, таких как компьютерное моделирование динамики лесных пожаров, является актуальной и важной проблемой. Как показали расчеты, вычисления, параллельно производимые на нескольких узлах, существенно снижают общее время расчета процесса горения и увеличивают эффективность применения таких программных комплексов в реальных условиях. 137

138 Литература 1. Доррер, Г. А. Динамика лесных пожаров. [Текст]/ Г.А. Доррер Новосибирск, Изд-во СО РАН, с. 2. Гришин А. М. Моделирование и прогноз катастроф: Учебное пособие. В 2 ч. Ч.2 [Текст]/ А.М. Гришин, - Томск, Изд-во ТГУ, с. 3. Вдовенко М. С., Доррер Г. А., Шаталов П.С. Параллельные алгоритмы моделирования процессов распространения лесных пожаров на основе математических моделей различных типов [Текст] / М.С. Вдовенко, Г.А. Доррер, П.С. Шаталов // Журнал Вычислительные технологии Т. 18, 1. - С Корнеев В. Д. Параллельное программирование в MPI / В. Д. Корнеев. - 2-е изд. Новосибирск: Изд-воИВМиМГСОРАН, с. 5. McGrattan K., Forney G. Fire Dynamics Simulator (Version 5), User s Guide. // National Institute of Standards and Technology, Gaithersburg, Maryland, p. 6. Mell W., Maranghides A., McDermott R., ManzelloNumerical simulation and experiments of burning Douglas fir trees. // W. Mell et al //Combustion and Flame. 2010, Vol. 156 P

139 АНАЛИЗ РЕЖИМОВ РЕПЛИКАЦИИ В БАЗАХ ДАННЫХ РАСПРЕДЕЛЕННОГО ТИПА В.А. Дунаев Академия ФСО России В простейшем виде распределенную базу данных (РБД) можно представить совокупностью N серверов РБД, объединенных телекоммуникационной подсистемой, и совокупностью N групп рабочих станций (РС), соединенных с серверами РБД средствами подсистемы доступа. При этом каждая группа РС имеет прямое соединение только с одним сервером РБД (локальным сервером РБД). Телекоммуникационная подсистема, выполняющая функции узлов коммутации, связанных каналами передачи данных, предназначена для организации логических каналов между точками логического подключения серверов РБД. В качестве подсистемы доступа выступает совокупность коммуникационного оборудования и каналов передачи данных, отвечающих за обмен данными между серверами РБД и рабочими станциями. При оценке эффективности процесса обработки запросов к РБД выделяются существенные свойства РБД и по этим свойствам оцениваются результаты процесса выполнения запросов в различных вариантах исполнения РБД. Оценивание соответствия результатов функционирования РБД требованиям проводится на основе частных показателей эффективности для каждого свойства. Проведение оценки относительно полного вектора показателей сопряжено с большой трудоемкостью, поэтому на практике, как правило, ограничиваются получением значений показателей эффективности по доминирующему свойству [1]. При функционировании РБД основная нагрузка на телекоммуникационную подсистему создается реплицируемыми данными и удаленными запросами/ответами. Однако, с учетом алгоритмов оптимального размещения данных по удаленным северам РБД, доля удаленных запросов среди всего множества запросов пользователей минимальна [2]. Основная нагрузка на телекоммуникационную подсистему создается процессом репликации. В случаях, когда интенсивность обновления данных в распределенной системе велика, а доступной пропускная способность относительно мала, возможны ситуации возникновения дефицита пропускной способности сети. И, как следствие, ухудшение реактивности РБД. Пропускная способность телекоммуникационной подсистемы РБД от- 139

140 ражает потенциальный объем данных, который может быть передан сетью или ее частью в единицу времени. Пропускная способность определяется, как скорость выполнения внутренних операций сети - передачи пакетов данных между узлами РБД через различные коммуникационные устройства [3]. Серверы РБД содержат 2 типа данных: участвующие в процессе репликации и не задействованные в нем. При этом реплицируемые данные можно условно разбить на R фрагментов, имеющих различные значения для характеристик: 1. Интенсивность поисковых запросов к r - му фрагменту реплики на n - ом узле, где r { 1.. R}, а n { 1.. R}. r, n 2. Интенсивность поступления заявок на обновление r во всей РБД, где r { 1.. R}. 3. Размер r - го фрагмента реплики C r, где r { 1.. R}. В процессе функционирования РБД, по мере поступления заявок на обновление данных, фрагменты реплик теряют свою актуальность. Если запрос на выборку данных попадает в промежуток времени, когда данные в локальном узле РБД неактуальны, то запрос передается на удаленный сервер с актуальными данными. После чего происходит передача копии актуального фрагмента реплики с удаленного сервера РБД на локальный и ее фиксация. Так как характеристики отдельных фрагментов реплик r, n, r, C r различны, то в РБД с репликацией в режиме реального времени, в условиях ограниченной доступной пропускной способности сети, время отклика системы на запросы к реплицирующимся данным будет меняться в широком диапазоне значений. При этом некоторые запросы будут иметь существенную задержку отклика, тогда как другие будут выполняться намного быстрее. На практике это проявляется в превышении требуемых значений времени отклика РБД для запросов к некоторым фрагментам реплики. При дифференцированном подходе к обслуживанию фрагментов реплик с различными характеристиками можно добиться уменьшения дисперсии времени отклика РБД, что особенно важно для систем с ограниченной доступной пропускной способностью телекоммуникационной подсистемы, когда время отклика РБД существенно отличается для различных фрагментов реплик. В результате возникает противоречие, выраженное в несоответствии времени отклика РБД, в условиях ограниченной доступной пропускной способности сети, требуемым значениям при запросах к фрагментам с наименьшим временем отклика. 140

141 Время отклика РБД на i - ый запрос к r - му фрагменту реплики, в простейшем случае определяется выражением: t ri t t, (1) locri ydalr i где t - время обслуживания i - го запроса к locr r - му фрагменту реплики по локальному циклу i обслуживания; t ydal ri - время обслуживания i - го запроса к r - му фрагменту реплики по удаленному циклу обслуживания. t locri t t t, (2) zapros_ sd r i otvet _ sd r i loc_ obslr i где t _ - время, затрачиваемое на передачу i - го запроса к r - му zapros sd ri фрагменту реплики от РС до локального узла РБД; t _ - время, затрачиваемое на передачу отклика системы на i - ый otvet sd ri loc obsl ri запрос к r - му фрагменту реплики от локального узла РБД до РС; t - время обслуживания i - го запроса к _ r - му фрагменту реплики на локальном сервере РБД. t ydalr i t _ t t t t, (3) zan tksi zapros_ tks r i ovet _ tks r i ydal _ obsl r i obnovlr i где t _ - время занятости телекоммуникационной подсистемы при i zan tksi zapros tks ri - ом запросе обслуживанием процессов репликации инициализированных ранее; t - длительность передачи i - го запроса к _ r - му фрагменту реплики с локального сервера РБД на удаленный; t _ - время передачи отклика системы на i - ый запрос к r - му ovet tks ri ydal obsl ri фрагменту реплики от удаленного сервера РБД до локального; t - время обслуживания i - го запроса к _ r - му фрагменту реплики на удаленном сервере РБД; t - продолжительность обновления r - ого фрагмента реплики на obnovlr i локальном узле РБД при i - ом запросе. Среднее время отклика РБД для различных фрагментов реплики изменяется в широком диапазоне значений, так как характеристики фрагментов 141

142 r,n, r, C r имеют большой разброс значений. При этом фрагменты с наибольшим временем отклика, в условиях дефицита пропускной способности сети, как правило, выходят за рамки требований по времени отклика на запросы. Таким образом, имеется задача минимизации максимального среднего времени отклика РБД на запросы среди всех фрагментов реплики. max t r min, (4) r Решение данной задачи возможно за счет искусственного введения некоторой задержки Z проведения репликации в режиме реального времени r r для фрагментов реплики с наименьшим средним временем отклика на запросы. Однако, при увеличении задержки проведения репликации фрагмента реплики Z вероятность обслуживания запроса к этому фрагменту по удаленному циклу p ydal увеличивается, но время занятости телекоммуникационной подсистемы РБД t r _ уменьшается, так как телекоммуникационная zan tks подсистема с меньшей вероятностью занята обслуживанием процесса репликации. И, наоборот, при уменьшении задержки проведения репликации фрагмента реплики Z r вероятность обслуживания запроса к этому фрагменту реплики по удаленному циклу p ydal уменьшается, а время занятости телекоммуникационной подсистемы РБД t r _ увеличивается, так как телекоммуникационная подсистема с большей вероятностью занята обслуживанием процесса репликации. Литература 1. А.Ю. Иванов. Обеспечение выполнения требований к информационным системам МЧС России на основе структурной адаптации распределенных баз данных. «Вестник Санкт-Петербургского института. ГПС МЧС России», 3 (10), С В.Н. Кухарев. Модели и алгоритмы распределения реплицированных баз данных в информационных системах: Диссертация на соискание ученой степени кандидата технических наук. Новочеркасск, В.Г. Олифер, Н.А. Олифер. Компьютерные сети. Принципы, технологии, протоколы. Издание 4-ое: Учебник для ВУЗов СПб.: Питер, с. zan tks 142

143 ИНТЕРПРЕТАЦИЯ СПИСОЧНЫХ СТРУКТУР В ФУНКЦИОНАЛЬНОМ ЯЗЫКЕ ПОТОКОВО-ПАРАЛЛЕЛЬНОГО ПРОГРАММИРОВАНИЯ И.В. Матковский Сибирский Федеральный Университет Популяризация параллельных вычислений привела к появлению большого количества разнообразных параллельных вычислительных систем (ПВС). Каждая из этих ПВС имеет свои особенности, которые необходимо учитывать для создания эффективных приложений. Это затрудняет разработку переносимых приложений в ряде случаев перевод программы с одной ПВС на другую либо требует серьезной переработки программы, либо приводит к падению эффективности работы приложения. Одним из методов создания легко переносимых приложений является архитектурно-независимое программирование. Данный метод предполагает, что программа разрабатывается для максимально возможного параллелизма и неограниченного объема вычислительных ресурсов; соответствующие той или иной ПВС ограничения могут быть наложены на уже отлаженную программу исполняющей средой. Пифагор это функционально-потоковый язык параллельного программирования. Исполняемые программы разделяются на информационный граф (ИГ) описание потоков данных и управляющий граф описание стратегии обработки этих потоков. В языке Пифагор, как и во многих функциональных языках, большую роль играют списочные структуры данных. Всего в языке Пифагор существует четыре типа списков: 1. Списки данных (datalist). 2. Параллельные списки (parallel list). 3. Задержанные списки (delayed list). 4. Асинхронные списки (asynchronous list). Списки данных представляют собой связный набор из возможно разнородных данных. На основе списков данных можно реализовывать массивы данных и составные структуры. На основе списков данных в языке Пифагор реализована передача в функции (встроенные или пользовательские) наборов аргументов. Выражение (1, a, (2,3)):f обозначает вызов пользовательской функции f с аргументами 1, а и (2,3). В отличие от списков данных, параллельные списки являются не составными объектами, но группами независимо существующих друг от друга 143

144 отдельных объектов. Именно с помощью таких списков в языке Пифагор реализуется параллелизм. Передача параллельного списка A в функцию F в качестве аргумента равнозначно одновременному вызову функции Fс каждым из элементов списка A в качестве аргумента; результаты вызовов функции будут помещены в новый параллельный список. Так, результатом вычисления выражения [1,2,3,4]:f станет [1:f, 2:f, 3:f, 4:f]. Передача одного аргумента X в параллельный список A из нескольких функций равнозначна одновременному вызову входящих в список Aфункций с аргументом Х; результаты вызовов функций будут помещены в новый параллельный список. Так, результатом вычисления выражения 1:[f1,f2,f3,f4] станет [1:f1, 1:f2, 1:f3, 1:f4]. Передача параллельного списка аргументов A в параллельный список функций F равнозначна одновременному вызову всех существующих комбинаций (аргумент:функция). Результаты вызовов помещаются в новый параллельный список. Так, результатом вычисления выражений [A1,A2,A3]:[F1,F2] станет [A1:F1, A1:F2, A2:F1, A2:F2,,A3:F1, A3:F2]. Рассмотрим интерпретацию параллельного списка аргументов параллельного списка функций на примере. Изначально оба параллельных списка пусты (рисунок 1а). Пусть первыми поступают аргументы A1 и A2 (рисунок 1б); на данном этапе ни для одной из существующих операций интерпретации данных еще не достаточно. Пусть далее в список поступает аргумент A3 (рисунок 1в); это также операцию интерпретации не запустит. Пусть после этого в список функций поступит функция F1; это даст возможность запустить операции A1:F1, A2:F1, A3:F1 (рисунок 1г). Пусть после этого в список функций поступит F2; её также необходимо применить к каждому из имеющихся аргументов проделав A1:F2, A2:F2, A3:F2 (рисунок 1д). Пусть после этого в список аргументов поступит аргумент A4; применим к нему все имеющиеся на данный момент функции F1 и F2 (операции A4:F1 и A4:F2) (рисунок 1е). 144

145 Рисунок 1. Обработка параллельных списков Задержанные списки используются для организации задержанных вычислений; элементами таких списков являются целые выражения. По сути своей задержанный список представляет собой часть ИГ, обработку которого было решено отложить до определенного этапа. Не раскрытый список передается по связям данных в качестве объектаярлыка; в этом ярлыке хранится номер задержанного списка, номер связанной с ним вершины-выхода и прямая ссылка на эту вершину. После операции раскрытия будет создана новая связь между вершиной-выходом списка и вершиной, где этот список был раскрыт. Процесс преобразования связей продемонстрирован на рисунке 3. На рисунке 2a показан исходный ИГ. В задержанный список номер 1 входят узлы 2,4 и 5; кроме того, внутрь списка поступают данные из вершин 0, 1 и 3. Сам список формируется в вершине 5; именно из этой вершины далее и передается описанный выше ярлык. Он хранит в себе номер задержанного списка 1 и номер его корневой вершины 5. Ярлык раскрывается в 18-ой вершине. После этого события из вершин 0, 1 и 3 поступают в общую очередь задач и попадают в вершины 2 и 4. Попутно создается новая виртуальная связь, обозначенная на рисунке 2б пунктиром; она соединяет вершину интерпретации с вершиной, чей номер хранился в ярлыке. 145

146 Рисунок 2.Преобразование ИГ при раскрытии задержанного списка. Асинхронные списки [3] используются для обработки данных по мере их поступления. Такой список может находиться одном из двух состояний либо быть абсолютно пустым, либо содержать минимум один элемент. Точное количество элементов и порядок их поступления в асинхронный список внешним структурам неизвестны. Асинхронный список из N элементов A N можно представить в виде выражения A N =(H, A N-1 ), где H первый (головной) элемент списка, A N-1 асинхронный список, составленный из всех кроме первого элементов исходного. Асинхронный список A 0 состоит из одного пустого элемента. Ниже приведен пример функции на языке Пифагор, производящей суммирование элементов асинхронного списка. Async_Sum<<funcdef A { x1<< A:1; tail_1<< A:-1; [(tail_1:[isemptydatalist, IsNotEmptyDataList]:?]^ (x1, {block { x2<< tail_1:1; s<< (x1,x2):+; tail_2<< tail_1:-1; [(tail_2:[isemptydatalist, IsNotEmptyDataList]:?]^ (s, { asynch( tail_2:[], s):a_vecsum } ):. >>break;} }):. >>return;} 146

147 Для начала выделяется первый (головной) элемент асинхронного списка x1 (получаемый командой выборки A:1); после этого проверяется хвост списка tail_1 (получаемый командой исключающей выборки-исключения A:- 1). Если хвост списка tail_1 пуст, то асинхронный список A состоит из одного элемента х1, который и следует вернуть в качестве результата. Если хвост списка tail_1 не пуст, то выделяем его головной элемент x2 и суммируем его с x1. Проверяем хвост хвоста tail_2; если tail_2 пуст, то A содержал только элементы х1 и х2. Возвращаем их сумму. Если tail_2 не пуст, то создаем новый асинхронный список, в который помещаем сумму х1 и x2 и tail_2; вызываем для него рекурсивно функцию суммирования. На рисунке 3 описанная выше обработка проиллюстрирована на примере. Поступающие в обрабатываемый массив данные в порядке поступления заносятся в асинхронный список; по мере формирования набора данных нужного размера производится его обработка. Результаты обработки помещаются в конец очереди. Рисунок 3. Обработка асинхронного списка Использование списочных структур позволяет реализовывать различные приемы архитектурно-независимого программирование конструирование списков, параллельную обработку данных, задержанные вычисления, обработку асинхронно поступающих данных. Литература 1. Легалов А.И. Функциональный язык для создания архитектурнонезависимых параллельных программ // Вычислительные технологии (10). С

148 2. Редькин А.В., Легалов А.И. Событийное управление выполнением функционально-потоковых параллельных программ // Научный вестник НГТУ (32). С Легалов А.И., Редькин А.В. Расширение асинхронного управления по готовности данных / Труды III Международной конференции «Параллельные вычисления и задачи управления» PACO ISBN / М.: Институт проблем управления им. В.А. Трапезникова РАН, С (Электронное издание) 148

149 СРЕДСТВА МЕЖМАШИННОГО ВЗАИМОДЕЙСТВИЯ ДЛЯ РЕАЛИЗАЦИИ ПАРАЛЛЕЛЬНЫХ АЛГОРИТМОВ В РАСПРЕДЕЛЕННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ В.В. Губарев, В.К. Мищенко, П.В. Мищенко Новосибирский государственный технический университет В настоящее время является актуальным вопрос решения сложных научных, производственных и инженерных задач, которые невозможно решить в разумные сроки на отдельных вычислительных установках. Примерами таких задач могут служить многопараметрический анализ данных, задачи оптимизации, задачи распознавания образов, моделирование различных процессов и объектов. Для решения таких задач можно использовать вычислительную систему, состоящую из нескольких вычислительных машин. Для объединения разрозненных вычислительных мощностей предлагается построить распределенную вычислительную систему с программируемой структурой (РВС ПС), основанную на модели коллектива вычислителей. Под коллективом вычислителей понимается совокупность вычислительных средств, динамично программно-аппаратным способом настраиваемая на решение конкретной задачи. В нашем случае РВС ПС представляет собой совокупность территориально разнесенных ЭВМ (или ВС), соединенных друг с другом сетью связей так, что между элементами системы обеспечиваются необходимые обменные взаимодействия, предоставляющие возможность реализации алгоритмов, представленных в параллельной форме. Поскольку параллельный алгоритм представляет собой совокупность последовательных алгоритмов (ветвей), в каждом из которых имеется по крайней мере один подалгоритм, его следует рассматривать как операнд обменных взаимодействий. При этом каждая ветвь параллельного алгоритма выполняется параллельно с другими ветвями. На фазе обмена реализуются необходимые обменные взаимодействия, которые определяются структурной схемой решаемой задачи. Несмотря на огромное разнообразие задач большой размерности (по объему данных, сложности расчетов, т.е. требуемому объему памяти и/или процессорному времени), все взаимодействия между ветвями параллельного алгоритма могут быть сведены к конечному ограниченному множеству основных (типовых) процедур: трансляционных, трансляционно-циклических, коллекторных, дифференцированных обменов, обменов сдвигами [2]. Эти обменные взаимодействия осуществляются с помощью набора системных операций: операций настройки, обмена (передачи и приема), обобщенного условного и безусловного переходов, синхронизации. 149

150 Приведенный набор системных операций является полным, поскольку с его помощью можно осуществить самые разнообразные схемы организации параллельного вычислительного процесса [1]. Организацию вышеупомянутых межмашинных взаимодействий предлагается осуществить с помощью наиболее популярного средства организации сетей - стека протоколов TCP/IP. Данный стек протоколов применяется для построения как локальных, так и глобальных сетей, включая Интернет [4]. На основании вышеизложенного, можно сформулировать следующие отличительные особенности разрабатываемой РВС ПС: в роли вычислителей выступают уже существующие серийные ЭВМ; стать элементом системы может любая ЭВМ. Любой житель страны, учебное заведение, любая организация или предприятие может обратиться с предложением о предоставлении имеющихся у них подключенные к сети ЭВМ для использования их в фоновом режиме; управление вычислительным процессом, а также ввод исходных данных и вывод результата могут осуществляться на любой ЭВМ; на каждую ЭВМ устанавливается специализированное ПО, обеспечивающие ввод и вывод данных, а также согласованное взаимодействие вычислителей при решении задачи; обменные взаимодействия осуществляются посредством стека протоколов TCP/IP. Таким образом, для построения описываемой РВС необходимо разработать специализированное сетевое приложение, которое осуществляло бы посредством сети согласованное взаимодействие ЭВМ системы. При этом внесение изменений в аппаратное обеспечение ЭВМ, операционную систему и стек сетевых протоколов не допускается. Разрабатываемое приложение РВС ПС является связующим звеном между программной реализацией параллельного алгоритма и стеком TCP/IP. Взаимодействие со стеком TCP/IP осуществляется через сокеты, которые представляют собой интерфейс между прикладным и транспортным уровнями. Такой подход позволяет обеспечить использование существующих протоколов, не прибегая к их изменению. Сетевое приложение РВС ПС копируется в ЭВМ в виде исполняемого файла и запускается (выполняется), как прикладная программа. При этом не создается дополнительных файлов на дисках ЭВМ. Работа приложения не мешает работе ОС, т.к. приложение является надстройкой над ней. Взаимодействие с другими ЭВМ происходит через высокоуровневый интерфейс се- 150

151 тевого взаимодействия сокеты, предоставляемые операционной системой. Сокеты позволяют передавать данные через сетевой адаптер по физическому каналу связи, соединяющий ЭВМ с сетью Internet [3]. Разрабатываемое сетевое приложение предусматривает следующие режимы работы РВС ПС: решение одной задачи с использованием всей вычислительной мощности системы; решение набора независимых задач, когда возникает необходимость организации подсистем, каждая из которых ориентирована на решение конкретной задачи из набора; решение потока задач, когда параметры задач заранее неизвестны; режим автономной работы (в этом режиме предоставляется возможность ручного управления системой, рассылки программных модулей, блоков данных, а также возможность осуществлять функциональный контроль, диагностику и тестирование). В соответствии с выбранным режимом осуществляется организация подсистемы (решение одной задачи) или требуемого количества подсистем (решение набора или потока задач). Рассмотрим алгоритм создания подсистемы. Суть алгоритма заключается в обмене флагами с целью опросить доступные ЭВМ, получить их IP-адреса, построить таблицу IP-адресов, разослать построенную таблицу на все ЭВМ подсистемы [5]. Стоит отметить, что динамические IP-адреса можно преобразовать в статические с помощью специальной программы. Процесс создания подсистемы может быть инициирован с любой ЭВМ, назовем её ЭВМ-инициатор. Она обладает правом распределить порядковые номера остальным ЭВМ системы и разослать построенную IPтаблицу. Создание таблицы происходит в три этапа. На первом этапе ЭВМинициатор осуществляет опрос всех машин методом широковещательной рассылки флага «1» по протоколу UDP. ЭВМ, принявшие флаг «1», отвечают флагами «2». На втором этапе ЭВМ-инициатор получает флаг «2», добавляет адрес источника в IP-таблицу и назначает порядковый номер. Порядковый номер ЭВМ соответствует положению IP-адреса в таблице. Затем ЭВМ-инициатор отправляет в ответ флаг «3» и назначенный порядковый номер. На третьем этапе каждая ЭВМ принимает флаг «3» и свой уникальный порядковый номер, который она сохраняет в виде переменной. Формирование таблицы завершено, ЭВМ-инициатор рассылает её всем имеющимся в списке ЭВМ. Таким образом, разрозненные ЭВМ могут обращаться друг к 151

152 другу, используя порядковые номера. Назначение порядковых номеров введено для возможности реализации обращений к ЭВМ из Р-алгоритма. Вышеизложенный алгоритм успешно прошел апробацию на фрагменте экспериментальной РВС ПС кафедры вычислительной техники НГТУ. Литература 1. Хорошевский В.Г. Архитектура вычислительных систем / В.Г. Хорошевский. - М.: Изд-во МГТУ имени Н.Э. Баумана, с. 2. Евреинов Э.В. Однородные вычислительные системы, структуры и среды/ Э.В. Евреинов. - М.: Радио и связь, с. 3. Куроуз Дж. Компьютерные сети, многоуровневая архитектура Интернета, 2-е изд. / Дж. Куроуз, К. Росс. - СПб.: Питер, c. 4. Мищенко П. В. Вопросы построения распределенных вычислительных систем с применением стека протоколов TCP/IP / П. В. Мищенко // Информационно-телекоммуникационные системы и управление: Сборник тезисов докладов. Новосибирск: Изд-во «КАНТ», c Мищенко П. В. К вопросу организации подсистем в распределенных вычислительных системах / П. В. Мищенко // НАУКА. ТЕХНОЛО- ГИИ. ИННОВАЦИИ: Материалы всероссийской научной конференции молодых ученых в 7 частях. Новосибирск: Изд-во НГТУ, Часть 2-с

153 ИСПОЛЬЗОВАНИЕ ТЕХНОЛОГИИ NVIDIA CUDA ДЛЯ МОДЕЛИРОВАНИЯ ФОТОФОРЕТИЧЕСКОГО ВЗАМОДЕЙСТВИЯ С.В. Черников, В.Н. Никитин ФГАОУ ВПО «Сибирский федеральный университет», Институт космических и информационных технологий Изучение аэрозольных систем является очень важным направлением, поскольку хорошо известно, что аэрозоли играют существенную роль в общем балансе явлений, влияющих на такие важные процессы, происходящие в атмосфере, как перенос солнечного и теплового излучения, облакообразования, фотохимию озона. Одним из важнейших явлений, которые происходят с участием аэрозоля, является процесс его коагуляции, когда в результате броуновского движения, действия внешних сил, изначально отдельные мелкие частицы сталкиваются и в результате процессов адгезии образуют более крупные образования агломераты или аэрозольные кластеры. Зачастую они обладают свойствами фракталов. Описание простого процесса тепловой коагуляции основано на представлениях о броуновском движении и диффузии аэрозольных частиц. При этом учитываются и возможные межчастичные потенциалы взаимодействия. Как правило, это электростатическое взаимодействие, в случае если частицы заряжены, и силы Ван-дер-Ваальса, когда расстояние между частицами очень мало. Однако, в последнее время, стали появляться работы, посвящённые изучению влияния на коагуляцию аэрозоля других видов взаимодействий, возникающих в результате газокинетических явлений термофореза[1] и фотофореза[2]. Термофорез явление направленного движения частицы при наличии температурных полей в газе[3]. Фотофорез[7, 8, 9, 10] возникает в результате поглощения частицами электромагнитного излучения (солнечного света, лазерного излучения, ИК источников и д.р.), которое приводит к неравномерному разогреву поверхности частицы и, как следствие, к нескомпенсированности импульса, передаваемого молекулами окружающего газа, поскольку после соударения с поверхностью частицы, молекулы покидают её с большей скоростью там, где поверхность разогрета сильнее ( T фотофорез). 153

154 Также сила может возникнуть из-за неравномерности распределения по поверхности частицы параметра, определяющего результат аккомодации энергии молекулы коэффициента аккомодации, трактуемого в рамках зеркально-диффузионной модели, предложенной ещё Максвеллом. По смыслу коэффициент аккомодации есть вероятность того, что молекула, упавшая на поверхность частицы, примет температуру этой поверхности и отразится от нее диффузионно. Соответственно 1 - есть вероятность зеркального отражения молекулы, при котором она не меняет свой температуры. Рассмотрим фотофорез, при котором движение возникает благодаря разности коэффициента аккомодации на поверхности частицы. Входящий поток молекул на поверхность такой частицы одинаков во всех её точках. На рисунке нижняя часть частицы обладает большим коэффициентом аккомодации. Это приводит к тому, что в общем исходящем потоке молекул с нижней части, большая доля молекул отраженных диффузно, нежели для верхней части, а значит большая доля молекул принявших температуру частицы и покинувших её с большей скоростью. Следствием этого является нескомпенсированность передаваемого молекулами импульса по поверхности частицы и ее движение вверх. С целью изучения явления фотофореза[5,6], движения аэрозольных частиц и кластеров под действием фотофоретической силы, а также влияния фотофореза на процессы, протекающие в аэрозольных системах, была разработана модель[4]. Задача моделирования очень сильно усложняется для реальных аэрозольных кластеров. До сих пор не существует какой-либо приемлемой оценки потоков молекулярного тепла и переноса импульса в случае, когда система состоит из множества частиц с различными параметрами. Здесь становится выгодным применение метода Монте-Карло, на основе которого и был построен алгоритм. Техника расчёта основана на газокинетических уравнениях Больцмана, которые решаются в приближении свободномолекулярного режима (когда свободный пробег молекулы много больше расстояния между частицами). Порядок задачи понижается за счёт специального разложения рядов Неймана по разделяющимся переменным скоростям и пространственным координатам молекул. Тогда можно использовать специальные матри- 154

155 цы переноса, сократить объёмы вычислений, повысить точность, простым образом получить зависимости физических величин от неизвестных температур частиц. Это позволяет решить нелинейную задачу теплового баланса существенно проще. Этот алгоритм хорошо поддаётся распараллеливанию на архитектуре CUDA[11, 12]. Для каждой молекулы отводится один поток, все потоки взаимодействуют с массивом структур частиц, представляющих аэрозольный кластер, помещенный внутрь опорной сферы, которая так же представлена как структура в массиве. Для простоты все элементы приняты сферами с радиусом определенным относительно опорной сферы, что позволяет легко произвести масштабирование. При разработке параллельного алгоритма были учтены многие особенности архитектуры графического процессора, что позволило максимально увеличить прирост производительности по сравнению с предыдущими непараллельными реализациями. На текущем этапе работы созданы два алгоритма, реализующие два подхода к распараллеливанию: 1. Максимально переложить работу на вычислительное ядро и освободить центральный процессор от вычислений, при этом минимизируется число обращений в глобальную память, но создаются условия расхождения потоков, что замедляет выполнение, так как CUDA по сути является архитектурой типа SIMD. 2. Равномерно распределить работу между центральным процессором, графическим процессором и подсистемой работ копирования (взаимодействия с GPU). В этом случае реализован, так называемый, функциональный параллелизм. В этом случае более эффективно используется вычислительные ресурсы, но при этом имеют место быть задержки в системе копирования. На практике первый вариант алгоритма подходит для аэрозольных систем с небольшим числом частиц, второй, в свою очередь для больших аэрозольных кластеров. Оптимизационные параметры, такие как число потоков, подобраны с учетом конкретной аппаратной платформы. Программа является оптимизированной под оборудование кластера СФУ. Технология NVIDIACUDA на данный момент является передовой в сфере высокопроизводительных вычислений на графических устройствах. Одним из ее плюсов на данный момент является высокая доступность - в 155

156 общем случае требуется обыкновенный персональный компьютер, поддерживающий данную технологию. Полученный опыт может быть использован в будущем при построении моделей коагуляции со сложными типами межчастичных взаимодействий, плохо поддающихся аналитическому описанию. Литература 1. H. J. Keh, S. H. Chen, Particle interactions in thermophoresis, Chemical Engineering Science 50 (21) (1995) Черемисин А.А., Кушнаренко А.В. Оценка фотофоретического взаимодействия аэрозольных частиц в стратосфере Оптика атмосферы и океана Т С S. Bakanov, Thermophoresis of aerosols: a review, Journal of Aerosol Science 22, Supplement 1 (0) (1991) S215 S Cheremisin, Transfer matrices and solution of the heat-mass transfer problem for aerosol clasters in a rarefied gas medium by the montecarlo method, Russian Journal Numeric Analysis Mathematics 25 (2010) Cheremisin, Y. Vassilyev, H. Horvath, Gravito-photophoresis and aerosol stratification in the atmosphere, Journal of Aerosol Science 36 (11) (2005) A. Cheremisin, Yu. V. Vassilyev, and A. V. Kushnarenko.Photophoretic forces for bispherical aerosol particles. volume 5027, pages SPIE, H. Rohatschek, Direction, magnitude and causes of photophoretic forces, Journal of Aerosol Science 16 (1) (1985) G.F.S., Photophoresis, Journal of the Franklin Institute 202 (3) (1926) S. Lin, Onphotophoresis, Journal of Colloid and Interface Science 51 (1) (1975) V. Chernyak, S. Beresnev, Photophoresis of aerosol particles, Journal of Aerosol Science 24 (7) (1993) Борееков А. В., Харламов А. А. Основы работы с технолоrиейcuda. М.: ДМК Пресс, с.: ил. 12. Сандерс Дж., Кэндрот Э. Технология CUDA в примерах: введение в программирование графических процессоров: пер. с англ. Слинкина А. А., научный редактор Боресков А. В. М.: ДМК Пресс, с.: ил. 156

157 ОТЛАДКА ФУНКЦИОНАЛЬНО-ПОТОКОВЫХ ПАРАЛЛЕЛЬНЫХ ПРОГРАММ С ПОДСТАНОВКОЙ ИНТЕРВАЛЬНЫХ ЗНАЧЕНИЙ И ПОЛЬЗОВАТЕЛЬСКИХ ФОРМУЛ Ю.В. Удалова Институт Космических и Информационных Технологий Сибирского Федерального Университета Введение В теории и практике параллельного программирования задачи повышения надежности, отладки и верификации параллельных программ занимают одно из доминирующих положений из-за значительного числа вариантов взаимодействий параллельных участков программы, в которых легко скрываются логические ошибки, риски появления ошибок, связанных с механизмами синхронизации и передачи сообщений, риски тупиковых ситуаций и ресурсных конфликтов. В настоящее время, кроме императивного программирования, считается одним из перспективных направлений для параллельных вычислений функционально-потоковая (ФПП) парадигма программирования [1,2], ориентированная на разработку программ, напрямую не связанных с архитектурой конкретных вычислительных систем, поддерживающих параллелизм на уровне базовых операций языка и управление вычислениями по готовности данных. Существующие отладчики ФПП программ [3,4] гораздо менее развиты, чем отладчики императивных параллельных программ. В статье представлен один из разработанных режимов [5] отладки ФПП программ, а именно режим проверки формул, использующий и текст программы и ее графическое представление (графы функций), способный оперировать как точными вычисленными значениями, так и их интервальными оценками, проверяющий соответствие вычислений программы спецификации разработчика. Режим проверки формул Режим проверки формул позволяет пользователю закрепить за произвольными узлами-операторами графа программы собственные утверждения, являющиеся выражениями на языке программирования, использующие в качестве значений известные величины, аргументы функции или значения, вычисленные любым узлом-оператором графа. Если отлаживаемая функция не является рекурсивной, отладка выполняется за один шаг, на котором вычис- 157

158 ляются все узлы графа и все дополнительные утверждения. Если отлаживаемая функция является рекурсивной, число шагов отладки совпадает с числом итераций рекурсивной функции, то есть пользовательские формулы повторно проверяются на каждой итерации. Вершины графа, содержащие утверждения, помечаются как истинные, если выражения, введенные пользователем, возвращают истину, или как ложные, если хотя бы одно из выражений не равно истине. Для каждой такой вершины вместе со значением соответствующего оператора программы можно увидеть вычисленные значения утверждений. Пользовательская формула может иметь не только логическое значение, но и любое другое: целочисленное, вещественное, строковое, но в этом случае узел графа будет помечен как ложный. Значение формулы или нескольких входящих в нее операндов может быть и интервальным, обработка таких данных возможна только при отладке и не поддерживается при непосредственном выполнении программы. Интервальные значения пользователь может указать среди входных данных отлаживаемой функции, для чего используются следующие конструкции: ~unknownnumber неизвестное число; ~unknownbool неизвестное логическое значение (ложь или истина); ~gt А число большее чем указанное число А; ~lt А число меньшее чем указанное число А; ~ge А число больше либо равное указанному число А; ~le А число меньше либо равное указанному число А; ~А interval В число лежащее в указанном интервале [A, B]. Таким образом, спецификация начальных данных может иметь, например следующий вид: (5, ~lt 0, ~unknownbool) список, первый элемент которого равен пяти, второй меньше нуля и третий является ложью или истиной. Пример отладки ФПП программы в режиме проверки формул с подстановкой интервальных значений Функция Add (рисунок 1) должна находить сумму положительных элементов списка произвольной длины. Add<<funcdefv { [((v:,1):[<=,>]):?]^ //сравнение длины списка с единицей //если длина списка <= 1 ( {(0,v:1): //ноль или элемент списка v:1 [((v:1,0):<=,(v:1,0):>):?]}, //в зависимости от знака v:1 158

159 //если длина списка > 1 /*сумма первых двух элементов списка и список v после удаления двух его первых элементов или только список v с изъятой первой парой элементов подаются на вход рекурсивной функции Add*/ { ( ((v:1,v:2):+, v:-1:-1:[]):add:., (v:-1:-1:[]):add:. ): [((v:1,0):>,(v:2,0):>):?]} //в зависимости от знаков v:1, v:2 ) :. >>return; } Рисунок 1. Сокращенный граф функции Add Функция записана не правильно, ошибка заключается в условии [((v:1,0):>,(v:2,0):>):?]. Вместо того чтобы суммировать положительные элементы, будет производиться команда ((v:1,v:2):+, v:-1:-1:[]):add:., если первый элемент положительный (v:1,0):> и команда (v:-1:-1:[]):add:., если второй элемент списка положительный (v:2,0):>. Таким образом, если второй слагаемый элемент отрицательный, то все равно находится сумма элементов и дополнительно, если оба элемента положительные, то выполнятся обе команды, произойдут два рекурсивных вызова. Для отслеживания корректности вычислений программы в режиме проверки формул добавлены пользовательские условия к вершинамоператорам: 24 (NODE,0):>= - результат оператора больше либо равен нулю; 159

160 20 ((NODE:1,0):>,(NODE6,0):>,(NODE7,0):>):* результат оператора список, первый элемент которого больше нуля и первый элемент списка v (NODE6 это результат оператора с автоматически присвоенным номером 6, то есть v:1) больше нуля и второй элемент списка v больше 0. Пусть спецификация начальных данных имеет вид (~ge0,~lt0). Тогда первая итерация рекурсии даст следующие результаты (рисунок 2). Рисунок 2. Первая итерация функции Add над данными (~ge0,~lt0) На рисунке 2 цветом выделены те вершины-операторы, которые были вычислены при заданном виде входных данных. Пользовательские условия на графе при входных данных (~ge0,~lt0), примут следующие значения: 24 (NODE,0):>= - ~unknown, так как оператор #24 не был вычислен при указанных входных данных; 20 ((NODE:1,0):>, (NODE6,0):>, (NODE7,0):>):* (true, true, false):* даст значение false, и оператор 20 будет помечен на графе как не корректный, то есть не соответствующий требованию пользователя. Таким образом, результат, полученный на первом шаге отладки в режиме проверки формул, показал, что вычисления итерации рекурсии не соответствуют спецификации и программа содержит логические ошибки. Однако необходимо заметить, что ошибочные команды могут содержаться не в самом операторе, к которому приписана формула, а в других вычисленных вершинах-операторах. Более того, при анализе результатов отладки в режи- 160

161 ме проверки формул, надо учитывать, что ошибки могут быть не в программе, а в самой спецификации. Заключение Режим проверки формул и возможность выполнения программы в режиме отладки над интервальными оценками входных значений предоставляют инструментарий для исследования корректности ФПП программы относительно спецификации пользователя над обобщенным множеством начальных данных. Литература 1. Хьюз Джон. Сильные стороны функционального программирования. [Электронный ресурс] / Д. Хьюз // Режим доступа: - Загл. с экрана. 2. Легалов А.И. Функциональная модель параллельных вычислений и язык программирования "Пифагор". [Электронный ресурс] / А.И. Легалов, Ф.А. Казаков, Д.А. Кузьмин, Д.В. Привалихин // Режим доступа: - Загл. с экрана. 3. Гордеев Д.С. Визуализация внутреннего представления программ в системе функционального программирования SFP. [Электронный ресурс] / Д.С. Гордеев // Режим доступа: - Загл. с экрана. 4. Bernard Pope. Buddha - A declarative debugger for Haskell. [Электронный ресурс] - Режим доступа: - Загл. с экрана. 5. Удалова Ю.В. Методы отладки и верификации функциональнопотоковых параллельных программ. / Ю.В. Удалова, А.И. Легалов, Н.Ю. Сиротинина // JournalofSiberianFederalUniversity. Engineering&Technologies 2 (2011 4) С ISSN X 161

162 СОВРЕМЕННЫЕ ПРОГРАММНЫЕ ТЕХНОЛОГИИ СОЗДАНИЯ SCADA-СИСТЕМ М.А. Слободян, Г.В. Смольняков, Е.А. Овчаренко, П.М. Зацепин ФГБОУ ВПО Алтайский государственный университет, физико-технический факультет Современный мир насыщен различными системами в области жизни деятельности человека, для уменьшения трудозатрат в области эксплуатации данных систем, необходимы автоматизированные системы управления, диспетчеризации, и хранения данных о системе за период времени. Данный класс задач решают различные программируемые контроллеры в совместной работе со SCADA системами. SCADA (Supervisory Control And Data Acquisition: диспетчерское управление и сбор данных) что является в свою очередь комплексом программных средств минимизирующим количество прямых затрат и сроков реализации автоматизированных систем. Данные задачи в полном объеме можно реализовать при помощи любой современной SCADA системы. Конкурирующими особенностями при практически одинаковом функционале является удобство использования и необходимая платформа в виде операционной системы. Основная проблема SCADA систем, стремление охватить все возможные интерфейсы. У данного стремления есть несомненный плюс, система, работающая с большим количеством устройств разных производителей без каких либо затруднений, например TRACE MODE компании AdAstra, или использование большого количества API функции операционной системы, Genesis 32. Все данные удешевления при производстве самой SCADA системы и стремление к совершенству приводит к невозможности установке на разных операционных системах, что приводит к смене SCADA которая подходит под требования заказчика, и его информационных политик, в области информационных технологий. Также большие SCADA проекты по своей априори являются децентрализованными системами. Достаточно большое количество персональных компьютеров, серверов вызвано от горячего резервирования системы, до невозможности в реальном времени отображать, архивировать, данные на одном мониторе (в данном случае подразумевается устройства вывода информации для оператора от одной вычислительной машины). И как одно из основных условий современной SCADA является возможность создания сетевой архитектуры.[1] 162

163 Технологии постоянно развиваются, причем новые технологии, появляются с все возрастающей скоростью. И одна из причин необходимости создание новой SCADA системы это возможность устранения недостатков существующих, за счет утрачивания большой, но при этом не являющейся бесследно невозможно используемой технологией. Целью данной работы разбор основных функциональных возможностей SCADA-систем для создания систем, удовлетворяющих современным и будущим требованиям. Попробуем описать основные функциональные возможности некоторых SCADA Систем для выявления общих функции. TRACE MODE Система по своей функциональности уже давно переросла рамки традиционной SCADA, и тем не менее она является таковой. Прежде всего это единая среда разработки, технология авто построения проекта, а также это возможность связи системы с огромным количеством всевозможных устройств для которых в систему бесплатно интегрировано около 2500 драйверов. Использование всех языков стандарта МЭК [3] с расширенным функциональным набором. Система наверно больше напоминают среду визуального программирования. Чем просто SCADA систему. MasterSCADA программный пакет для создания SCADA систем имеет объект ориентированный подход к созданию. Группа объектов объединяется и представляет собой новый объект со своими свойствами, что бесспорно является современным подходом для проектирования систем. [2] В целом все описанные выше системы обладают необходимой функциональностью, но при этом являются платформо-зависимыми. Таким образом, основной проблемой является платформа. Если взять за основу среду разработки, которая уже является кроссплатформенной, то мы получим систему работающую на большом количестве аппаратных и программных платформ. Такой средой разработки является Java. Java-система имеет полный набор библиотек работы с сетью TCP/IP и встраивается в браузеры. Наличие библиотек работы с базами данных позволят реализовать систему архивирования, и все это вместе вполне можно назвать универсальной, визуальной средой программирования с возможностью децентрализации вычислений, что значительно повышает надежность системы. 163

164 Рис. 1. Структура SCADA-системы. На рис. 1 квадрат является вычислительной машиной с определенной операционной системой, Треугольник устройством типа ПЛК (Программируемый логический контроллер). Кружок вычислительная машина с операционной системой отличной от квадрата. Двойной линией отображается невозможная связь при использовании одной SCADA системы. Заключение Вывод данного исследования говорит нам о том, что платформа Java и собственно сам язык позволяет реализовать SCADA систему, позволяющую легко конкурировать на рынке за счет современной функциональности, и простой расширяемости. Кроме того, данная система может развиваться достаточно быстро, за счет того, что количество специалистов работающих на Java постоянно растет из-за популярности и удобства системы. Литература 1. обращения: ) обращения: ). 3. IEC раздел международного стандарта МЭК (также существует соответствующий европейский стандарт EN 61131), описывающий языки программирования для программируемых логических контроллеров. 4. Шопин А.Г., Занин И.В. Эволюция SCADA и информационных систем производства. Автоматизация в промышленности C Михайлов М.Ф. SIMATIC WinCC V 7.0 обзор новых возможностей, Rational Enterprise Management C

Календарно-тематический план «Микропроцессорные системы» Лекции

Календарно-тематический план «Микропроцессорные системы» Лекции Календарно-тематический план «Микропроцессорные системы» Лекции п/п Наименование раздела дисциплины Содержание раздела Преподаватель 1. Основы организации и задачи проектирования микропроцессорных систем

Подробнее

Специализация «Интеллектуальные робототехнические системы»

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

Подробнее

LabVIEW ДЛЯ ИЗУЧАЮЩИХ ТЕОРИЮ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ: ЛАБОРАТОРНЫЙ ПРАКТИКУМ

LabVIEW ДЛЯ ИЗУЧАЮЩИХ ТЕОРИЮ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ: ЛАБОРАТОРНЫЙ ПРАКТИКУМ В. Г. Васильев, к.т.н., доцент (Тверской государственный технический университет, Тверь) LabVIEW ДЛЯ ИЗУЧАЮЩИХ ТЕОРИЮ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ: ЛАБОРАТОРНЫЙ ПРАКТИКУМ 1. Постановка задачи. Моделирование

Подробнее

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА СОДЕРЖАНИЕ МАТЕРИАЛА

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА СОДЕРЖАНИЕ МАТЕРИАЛА Учреждение образования «Могилевский государственный университет продовольствия» ПРОГРАММА ВСТУПИТЕЛЬНОГО ИСПЫТАНИЯ по микропроцессорной технике для абитуриентов, на основе среднего специального образования

Подробнее

2. Требования к уровню освоения содержания дисциплины

2. Требования к уровню освоения содержания дисциплины 1. Цели и задачи дисциплины Дисциплина "Информатика" является одной из современных дисциплин, обеспечивающей технологическую поддержку всех областей деятельности человека, и имеет своей целью приобретение

Подробнее

МАГИСТЕРСКАЯ ПРОГРАММА «КОМПЬЮТЕРНЫЕ НАУКИ» НАПРАВЛЕНИЕ «ФУНДАМЕНТАЛЬНАЯ ИНФОРМАТИКА И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ»

МАГИСТЕРСКАЯ ПРОГРАММА «КОМПЬЮТЕРНЫЕ НАУКИ» НАПРАВЛЕНИЕ «ФУНДАМЕНТАЛЬНАЯ ИНФОРМАТИКА И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ» МАГИСТЕРСКАЯ ПРОГРАММА «КОМПЬЮТЕРНЫЕ НАУКИ» НАПРАВЛЕНИЕ 010300 «ФУНДАМЕНТАЛЬНАЯ ИНФОРМАТИКА И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ» Магистратура ФИ и ИТ, «Компьютерные науки» Цель магистерской программы Цель магистерской

Подробнее

108 «Информатика и компьютерные технологии-2012»

108 «Информатика и компьютерные технологии-2012» 08 «Информатика и компьютерные технологии-202» УДК 004.35 УСТРОЙСТВО ВВОДА АНАЛОГОВЫХ СИГНАЛОВ ДЛЯ ИССЛЕДОВАНИЯ АЛГОРИТМОВ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ В СИСТЕМЕ MATLAB Ткаченко С.В., Гусев Б.С., Краснокутский

Подробнее

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» Факультет летательных аппаратов УТВЕРЖДАЮ

Подробнее

? Fm. АЦП м ЦАП

? Fm.  АЦП м ЦАП АЦП м ЦАП http://www.gaw.ru/html.cgi/txt/doc/adc/index.htm Общие сведения Параллельные АЦП Последовательно-параллельные АЦП Многоступенчатые АЦП Многотактные последовательно-параллельные АЦП Конвеерные

Подробнее

АНАЛИЗАТОР СПЕКТРОВ ШУМОПОДОБНЫХ СИГНАЛОВ НА БАЗЕ ПЛИС

АНАЛИЗАТОР СПЕКТРОВ ШУМОПОДОБНЫХ СИГНАЛОВ НА БАЗЕ ПЛИС УДК 681.2 ББК 22.321 АНАЛИЗАТОР СПЕКТРОВ ШУМОПОДОБНЫХ СИГНАЛОВ НА БАЗЕ ПЛИС А.И. Квочкин Разработано устройство, которое позволяет измерять спектральную плотность мощности шумоподобных сигналов. Основным

Подробнее

Интеграционная платформа для АСУ ТП - Система Оператор

Интеграционная платформа для АСУ ТП - Система Оператор Интеграционная платформа для АСУ ТП - Система Оператор Описание применения 1. НАЗНАЧЕНИЕ И СВОЙСТВА Данный комплекс программ представляет собой инструментальное средство разработки прикладного программного

Подробнее

Отладочный комплект AN231K04-DVLP3

Отладочный комплект AN231K04-DVLP3 Александр Щерба shcherba@prosoft.ru. Описание Отладочный комплект AN23K04-DVLP3 Отладочная плата AN23K04-DVLP3 простая к использованию платформа, позволяющая быстро внедрить и протестировать аналоговую

Подробнее

АННОТАЦИИ РАБОЧИХ ПРОГРАММ ПРОФЕССИОНАЛЬНЫХ МОДУЛЕЙ

АННОТАЦИИ РАБОЧИХ ПРОГРАММ ПРОФЕССИОНАЛЬНЫХ МОДУЛЕЙ 1 2 АННОТАЦИИ РАБОЧИХ ПРОГРАММ ПРОФЕССИОНАЛЬНЫХ МОДУЛЕЙ основной профессиональной образовательной программы среднего профессионального образования базового подготовки по специальности среднего профессионального

Подробнее

Цифровая и микропроцессорная техника. Часть 2

Цифровая и микропроцессорная техника. Часть 2 МИНОБРНАУКИ РОССИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Алтайский государственный университет" (ФГБОУ ВПО «АлтГУ») УТВЕРЖДАЮ Декан Поляков

Подробнее

Б1.Б.9 Информатика Цели и задачи изучения дисциплины (модуля) Информатика Цель дисциплины: Задачи дисциплины:

Б1.Б.9 Информатика Цели и задачи изучения дисциплины (модуля) Информатика Цель дисциплины: Задачи дисциплины: Б1.Б.9 Информатика Цели и задачи изучения дисциплины (модуля) Дисциплина Информатика является начальным разделом общей компьютерной подготовки студентов, закладывающим базис под дальнейшее применение студентами

Подробнее

ПРОГРАММА вступительного экзамена в аспирантуру по кафедре «Автоматизации»

ПРОГРАММА вступительного экзамена в аспирантуру по кафедре «Автоматизации» Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Национальный исследовательский технологический университет «МИСиС» ПРОГРАММА вступительного экзамена

Подробнее

Сайт для регистрации на семинары MIPSfpga в университетах bit.ly/mipsfpga-russia-registration

Сайт для регистрации на семинары MIPSfpga в университетах bit.ly/mipsfpga-russia-registration Уважаемый преподаватель компьютерной архитектуры, схемотехники или системного программирования: Разработчик микропроцессорных ядер MIPS, компания Imagination Technologies, в сотрудничестве с ведущими российскими

Подробнее

1887ВЕ1У 8 разрядный RISC микроконтроллер. Единица измерения Разрядность АЛУ N ALU. Обозначение

1887ВЕ1У 8 разрядный RISC микроконтроллер. Единица измерения Разрядность АЛУ N ALU. Обозначение Внутрисистемно программируемый 8 разрядный RISC микроконтроллер с ПЗУ типа Flash Корпус 5133.48-3 Предназначен для применения во встроенных системах управления и обработки информации Тактовая частота 8

Подробнее

ООО «Электронные приборы и устройства» МУК-МП1 Применение микроконтроллеров

ООО «Электронные приборы и устройства» МУК-МП1 Применение микроконтроллеров ГОУ ВПО «Новосибирский государственный технический университет» ООО «Электронные приборы и устройства» МУК-МП1 Применение микроконтроллеров 4 КОМПЛЕКС ЛАБОРАТОРНЫХ РАБОТ 4.4 Лабораторная работа 4. «Работа

Подробнее

АННОТАЦИЯ РАБОЧЕЙ ПРОГРАММЫ ДИСЦИПЛИНЫ Б1.Б5 ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ

АННОТАЦИЯ РАБОЧЕЙ ПРОГРАММЫ ДИСЦИПЛИНЫ Б1.Б5 ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ АННОТАЦИЯ РАБОЧЕЙ ПРОГРАММЫ ДИСЦИПЛИНЫ Б1.Б5 ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ Направление подготовки: 09.04.01 Информатика и вычислительная техника Трудоемкость: 5 зе Промежуточная аттестация: экзамен Автор: А.Ф.

Подробнее

1.2. Методология применения языка Verilog при проектировании цифровых устройств на основе программируемой логики

1.2. Методология применения языка Verilog при проектировании цифровых устройств на основе программируемой логики Учебное 1. Применение пособие языка Verilog и методология проектирования цифровых устройств 13 1.2. Методология применения языка Verilog при проектировании цифровых устройств на основе программируемой

Подробнее

УДК 681.5: Калиниченко Ю.В. К ВОПРОСУ О ВЫДЕЛЕНИИ ГРАНИЦ ДЕТЕКТОРОМ КЕННИ Луганский национальный университет имени Тараса Шевченко

УДК 681.5: Калиниченко Ю.В. К ВОПРОСУ О ВЫДЕЛЕНИИ ГРАНИЦ ДЕТЕКТОРОМ КЕННИ Луганский национальный университет имени Тараса Шевченко УДК 681.5:004.93 Калиниченко Ю.В. К ВОПРОСУ О ВЫДЕЛЕНИИ ГРАНИЦ ДЕТЕКТОРОМ КЕННИ Луганский национальный университет имени Тараса Шевченко Рассмотрен вопрос выделения границ детектором Кенни. Алгоритм реализован

Подробнее

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

Рабочая программа дисциплины. Теория вероятностей, математическая статистика и случайные процессы МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Саратовский государственный университет имени Н.Г.Чернышевского Факультет компьютерных наук и информационных технологий УТВЕРЖДАЮ 20 г. Рабочая программа

Подробнее

СОДЕРЖАНИЕ 2. СТРУКТУРА И ПРИМЕРНОЕ СОДЕРЖАНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ 3. УСЛОВИЯ РЕАЛИЗАЦИИ УЧЕБНОЙ ДИСЦИПЛИНЫ 12

СОДЕРЖАНИЕ 2. СТРУКТУРА И ПРИМЕРНОЕ СОДЕРЖАНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ 3. УСЛОВИЯ РЕАЛИЗАЦИИ УЧЕБНОЙ ДИСЦИПЛИНЫ 12 СОДЕРЖАНИЕ 1. ПАСПОРТ ПРОФЕССИОНАЛЬНОГО МОДУЛЯ УЧЕБНОЙ ДИСЦИПЛИНЫ. СТРУКТУРА И ПРИМЕРНОЕ СОДЕРЖАНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ стр. 4 5 3. УСЛОВИЯ РЕАЛИЗАЦИИ УЧЕБНОЙ ДИСЦИПЛИНЫ 1 4. КОНТРОЛЬ И ОЦЕНКА РЕЗУЛЬТАТОВ

Подробнее

интерфейсу, при котором восьмибитные данные передаются тетрадами в два этапа. При таком режиме работы выводы DB0 DB3 индикатора не используются.

интерфейсу, при котором восьмибитные данные передаются тетрадами в два этапа. При таком режиме работы выводы DB0 DB3 индикатора не используются. "ЭЛЕКТРОННАЯ КНИГА" Новая элементная база позволяет создавать компактные и экономичные устройства, способные с помощью персонального компьютера записывать в память устройства текст, а затем в автономном

Подробнее

Цифровая и микропроцессорная техника. Часть 1

Цифровая и микропроцессорная техника. Часть 1 МИНОБРНАУКИ РОССИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Алтайский государственный университет" (ФГБОУ ВПО «АлтГУ») УТВЕРЖДАЮ Декан Поляков

Подробнее

Белов В.И., Панимаскин Е.И. Быстрое преобразование Фурье (БПФ) с прореживанием по времени

Белов В.И., Панимаскин Е.И. Быстрое преобразование Фурье (БПФ) с прореживанием по времени Белов В.И., Панимаскин Е.И. Быстрое преобразование Фурье (БПФ) с прореживанием по времени. Описание преобразования Теория БПФ рассматривается во многих работах. В некоторых из них приведены программы реализации

Подробнее

Использование программатора Teleprog TLP1503E для программирования микросхем модулей управления стиральными машинами 1. Введение Предупреждение:

Использование программатора Teleprog TLP1503E для программирования микросхем модулей управления стиральными машинами 1. Введение Предупреждение: Использование программатора Teleprog TLP1503E для программирования микросхем модулей управления стиральными машинами 1. Введение В данном материале будет показана возможность и простота использования универсального

Подробнее

УДК : АЛГОРИТМ ВЕКТОРИЗАЦИИ РАСТРОВЫХ ИЗОБРАЖЕНИЙ В ОБЩЕМ ВИДЕ. С.Ю. Сташевский

УДК : АЛГОРИТМ ВЕКТОРИЗАЦИИ РАСТРОВЫХ ИЗОБРАЖЕНИЙ В ОБЩЕМ ВИДЕ. С.Ю. Сташевский 124 УДК 519.876.5:621.865.8 АЛГОРИТМ ВЕКТОРИЗАЦИИ РАСТРОВЫХ ИЗОБРАЖЕНИЙ В ОБЩЕМ ВИДЕ С.Ю. Сташевский Данная работа посвящена процессам автоматизации обработки растровых изображений с целью преобразования

Подробнее

ОТЕЧЕСТВЕННЫЕ USB МИКРОКОНТРОЛЛЕРЫ, РАЗРАБАТЫВАЕМЫЕ ФИРМОЙ ЗАО «ПКК МИЛАНДР»

ОТЕЧЕСТВЕННЫЕ USB МИКРОКОНТРОЛЛЕРЫ, РАЗРАБАТЫВАЕМЫЕ ФИРМОЙ ЗАО «ПКК МИЛАНДР» ОТЕЧЕСТВЕННЫЕ USB МИКРОКОНТРОЛЛЕРЫ, РАЗРАБАТЫВАЕМЫЕ ФИРМОЙ ЗАО «ПКК МИЛАНДР» Сергей Шумилин, начальник отдела проектирования цифровых ИС, ЗАО «ПКК Миландр» Роман Калинкин, зам. Директора по маркетингу,

Подробнее

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ВОЗДУШНОГО ТРАНСПОРТА ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ВОЗДУШНОГО ТРАНСПОРТА ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ФЕДЕРАЛЬНОЕ АГЕНТСТВО ВОЗДУШНОГО ТРАНСПОРТА ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ГРАЖДАНСКОЙ

Подробнее

Лабораторная работа 3 Архитектуры с фиксированным набором устройств

Лабораторная работа 3 Архитектуры с фиксированным набором устройств Лабораторная работа 3 Архитектуры с фиксированным набором устройств Тема программы: Архитектура ЭВМ. Архитектуры с фиксированным набором устройств Цель работы: получить представление об архитектуре с фиксированным

Подробнее

О.Ю. Заславская, О.Я. Кравец, А.Э. Говорский. АРХИТЕКТУРА КОМПЬЮТЕРА И ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ (лекции, лабораторные работы, контрольные задания)

О.Ю. Заславская, О.Я. Кравец, А.Э. Говорский. АРХИТЕКТУРА КОМПЬЮТЕРА И ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ (лекции, лабораторные работы, контрольные задания) О.Ю. Заславская, О.Я. Кравец, А.Э. Говорский АРХИТЕКТУРА КОМПЬЮТЕРА И ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ (лекции, лабораторные работы, контрольные задания) Учебник Рекомендовано учебно-методическим объединением по

Подробнее

1. Цели и задачи дисциплины

1. Цели и задачи дисциплины 1.1. Цель дисциплины 1. Цели и задачи дисциплины Дисциплина «Системное программное обеспечение» относится к специальному циклу дисциплин и имеет своей целью привить обучающимся навыки разработки современных

Подробнее

ПРЕИМУЩЕСТВА ПРИМЕНЕНИЯ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛА С ИСПОЛЬЗОВАНИЕМ СПЕКТРАЛЬНОГО АНАЛИЗА В ВИХРЕВЫХ РАСХОДОМЕРАХ.

ПРЕИМУЩЕСТВА ПРИМЕНЕНИЯ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛА С ИСПОЛЬЗОВАНИЕМ СПЕКТРАЛЬНОГО АНАЛИЗА В ВИХРЕВЫХ РАСХОДОМЕРАХ. ПРЕИМУЩЕСТВА ПРИМЕНЕНИЯ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛА С ИСПОЛЬЗОВАНИЕМ СПЕКТРАЛЬНОГО АНАЛИЗА В ВИХРЕВЫХ РАСХОДОМЕРАХ. С каждым днём условия конкуренции среди производителей контрольноизмерительных приборов

Подробнее

РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫ

РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫ ПЕРВОЕ ВЫСШЕЕ ТЕХНИЧЕСКОЕ УЧЕБНОЕ ЗАВЕДЕНИЕ РОССИИ ПЕРВОЕ ВЫСШЕЕ ТЕХНИЧЕСКОЕ УЧЕБНОЕ ЗАВЕДЕНИЕ РОССИИ МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ федеральное государственное бюджетное образовательное

Подробнее

ТЕМА 2.2. ИНТЕРФЕЙСЫ ШИН. КОРПУСА. БЛОКИ ПИТАНИЯ.

ТЕМА 2.2. ИНТЕРФЕЙСЫ ШИН. КОРПУСА. БЛОКИ ПИТАНИЯ. ТЕМА 2.2. ИНТЕРФЕЙСЫ ШИН. КОРПУСА. БЛОКИ ПИТАНИЯ. УПРАВЛЕНИЕ ВНЕШНИМИ УСТРОЙСТВАМИ Состав вычислительных машин: Процессор, Основная память, Периферийные устройства (ПУ): внешние запоминающие устройства

Подробнее

УДК ОБ ИССЛЕДОВАНИИ ПАРАЛЛЕЛЬНЫХ АЛГОРИТМОВ ПОСТРОЕНИЯ МАРКОВСКИХ МОДЕЛЕЙ ВЫЧИСЛИТЕЛЬНЫХ КЛАСТЕРОВ

УДК ОБ ИССЛЕДОВАНИИ ПАРАЛЛЕЛЬНЫХ АЛГОРИТМОВ ПОСТРОЕНИЯ МАРКОВСКИХ МОДЕЛЕЙ ВЫЧИСЛИТЕЛЬНЫХ КЛАСТЕРОВ УДК 004.75 ОБ ИССЛЕДОВАНИИ ПАРАЛЛЕЛЬНЫХ АЛГОРИТМОВ ПОСТРОЕНИЯ МАРКОВСКИХ МОДЕЛЕЙ ВЫЧИСЛИТЕЛЬНЫХ КЛАСТЕРОВ Михайлова Т.В., Абдулина О.Р. Донецкий национальный технический университет Кафедра прикладной

Подробнее

Система автоматизированного сбора данных с абонентских устройств учёта по силовой сети "Меркурий-PLC"

Система автоматизированного сбора данных с абонентских устройств учёта по силовой сети Меркурий-PLC Система автоматизированного сбора данных с абонентских устройств учёта по силовой сети "Меркурий-PLC" ООО ИНКОТЕКС, 105484, г.москва, 16-я Парковая, 26 1 Лист учёта версий Дата Примечания 17.02.2005 Исходная

Подробнее

ПРОГРАММА учебной дисциплины

ПРОГРАММА учебной дисциплины Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Академия гражданской защиты Министерства Российской Федерации по делам гражданской обороны, чрезвычайным

Подробнее

Строительная информатика

Строительная информатика Строительная информатика Модуль 1. «Теоретические основы информатики» ЛЕКЦИЯ 1 Составители: Гвоздева И.Г. Глебова Т.А. Термином информатика обозначают совокупность дисциплин, изучающих свойства информации,

Подробнее

Б1.В.ДВ.8.1 Программирование микроконтроллеров

Б1.В.ДВ.8.1 Программирование микроконтроллеров Б1.В.ДВ.8.1 Программирование микроконтроллеров Цели и задачи изучения дисциплины Целью изучения дисциплины является формирование теоретических знаний и практических навыков в области разработки электронных

Подробнее

УДК Программно-аппаратная библиотека математических функций для систем на ПЛИС Зинченко Ю.Е., Гриценко А.А., Зеленева И.Я., Войтов Г.В.

УДК Программно-аппаратная библиотека математических функций для систем на ПЛИС Зинченко Ю.Е., Гриценко А.А., Зеленева И.Я., Войтов Г.В. УДК 681.324 Программно-аппаратная библиотека математических функций для систем на ПЛИС Зинченко Ю.Е., Гриценко А.А., Зеленева И.Я., Войтов Г.В. Аннотация Зинченко Ю.Е., Гриценко А.А., Зеленева И.Я., Войтов

Подробнее

КУРС «ОО ПК и сетей» Лекция Персональный. 29 ноября 2012 г. Архитектура IBM PC 1

КУРС «ОО ПК и сетей» Лекция Персональный. 29 ноября 2012 г. Архитектура IBM PC 1 КУРС «ОО ПК и сетей» Лекция Персональный компьютер IBM PC (Принципы выполнения программ). 29 ноября 2012 г. Архитектура IBM PC 1 Intel 4004 29 ноября 2012 г. Архитектура IBM PC 2 Структурная схема микропроцесс

Подробнее

Факультет энергетики и электроники

Факультет энергетики и электроники МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ФГБОУ ВПО «Брянский государственный технический университет» Факультет энергетики и электроники Кафедра «Электронные, радиоэлектронные и электротехнические системы»

Подробнее

Учебный план подготовки бакалавра

Учебный план подготовки бакалавра Учебный план подготовки бакалавра «Утверждаю»: Ректор (декан) 20 г. Минобрнауки РФ федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Новосибирский

Подробнее

УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС Дисциплина: Б3.Б.2 Аппаратные средства вычислительной техники

УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС Дисциплина: Б3.Б.2 Аппаратные средства вычислительной техники Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Сыктывкарский государственный университет»

Подробнее

Информатика и ИКТ. 11 класс. Профильный уровень

Информатика и ИКТ. 11 класс. Профильный уровень п/п Информатика и ИКТ. класс. Профильный уровень Дата Тема Знать уметь, понимать уметь Количество часов теории -5 Информационная культура общества и личности. Восстановление навыков работы на Информатизация

Подробнее

КОМПЛЕКСНАЯ ПРОГРАММА РАЗВИТИЯ ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ТАМБОВСКОЙ ОБЛАСТИ НА ГОДЫ

КОМПЛЕКСНАЯ ПРОГРАММА РАЗВИТИЯ ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ТАМБОВСКОЙ ОБЛАСТИ НА ГОДЫ КОМПЛЕКСНАЯ ПРОГРАММА РАЗВИТИЯ ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ТАМБОВСКОЙ ОБЛАСТИ НА 014 016 ГОДЫ Базовая отрасль: «Промышленность» Ведущие предприятия: ОАО «Завод «Тамбоваппарат» ОАО «Тамбовский завод «Ревтруд»

Подробнее

ТЕОРИЯ И ПРИМЕНЕНИЕ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ (THEORY AND APPLICATION OF DIGITAL SIGNAL PROCESSING)

ТЕОРИЯ И ПРИМЕНЕНИЕ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ (THEORY AND APPLICATION OF DIGITAL SIGNAL PROCESSING) Л.РАБИНЕР, Б.ГОУЛД ТЕОРИЯ И ПРИМЕНЕНИЕ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ (THEORY AND APPLICATION OF DIGITAL SIGNAL PROCESSING) ОГЛАВЛЕНИЕ Предисловие 5 Глава 1. Введение 9 1.1. Краткий исторический очерк и некоторые

Подробнее

МИКРОТРЕНАЖЕР МТ1804

МИКРОТРЕНАЖЕР МТ1804 МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ (ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ) А.В.Бруханский МИКРОТРЕНАЖЕР МТ1804 Учебное пособие к лабораторной работе МОСКВА 2002 Цель работы ознакомление с архитектурой микропрограммируемых

Подробнее

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ. Томский государственный университет. Факультет прикладной математики и кибернетики

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ. Томский государственный университет. Факультет прикладной математики и кибернетики МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Томский государственный университет Факультет прикладной математики и кибернетики УТВЕРЖДАЮ Декан факультета прикладной математики и кибернетики, профессор

Подробнее

Методы повышения быстродействия низкоуровневых моделей вычислительных комплексов, проектируемых с использованием ПЛИС

Методы повышения быстродействия низкоуровневых моделей вычислительных комплексов, проектируемых с использованием ПЛИС Методы повышения быстродействия низкоуровневых моделей вычислительных комплексов, проектируемых с использованием ПЛИС А.Г. Ермошкин Введение В процессе проектирования систем, состоящих из множества электронных

Подробнее

«Утверждаю» Проректор по УМР ОмГТУ Л.О. Штриплинг 20 год

«Утверждаю» Проректор по УМР ОмГТУ Л.О. Штриплинг 20 год Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «ОМСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» «Утверждаю» Проректор по УМР ОмГТУ Л.О. Штриплинг

Подробнее

ИС кабельного повторителя под USB 1.1, а также удлинитель USB 2.0 для передачи сигнала на расстояние до 40 метров от ОМИКС

ИС кабельного повторителя под USB 1.1, а также удлинитель USB 2.0 для передачи сигнала на расстояние до 40 метров от ОМИКС 124460 Москва, Зеленоград, Панфиловский проспект, дом 10, стр. 1, помещение III Тел: 8-909-688-88-83 ИС кабельного повторителя под USB 1.1, а также удлинитель USB 2.0 для передачи сигнала на расстояние

Подробнее

Архитектура персонального компьютера

Архитектура персонального компьютера Архитектура персонального компьютера Поколения ЭВМ 1-е поколение (начало 1950-х гг.) Элементная база электронные лампы. ЭВМ отличались большими габаритами, большим потреблением энергии, малым быстродействием,

Подробнее

Б а й е с о в с к а я к л а с с и ф и к а ц и я

Б а й е с о в с к а я к л а с с и ф и к а ц и я МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ имени академика С.П.КОРОЛЕВА

Подробнее

Тестовый проект ЭЛЕКТРОНИКА

Тестовый проект ЭЛЕКТРОНИКА Тестовый проект ЭЛЕКТРОНИКА WS Belarus 2016 Разработчики: Терехович Леонид Казимирович Снетков Роман Андреевич 1 ОПИСАНИЕ ТЕСТОВОГО ПРОЕКТА Участникам предлагается выполнить задание, состоящее из трех

Подробнее

Основы архитектуры, устройство и функционирование вычислительных систем

Основы архитектуры, устройство и функционирование вычислительных систем КОМПЛЕКСНАЯ ПРОГРАММА РАЗВИТИЯ ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ТАМБОВСКОЙ ОБЛАСТИ НА 014 016 ГОДЫ Базовая отрасль: «Промышленность» Ведущие предприятия: ОАО «Завод «Тамбоваппарат» ОАО «Тамбовский завод «Ревтруд»

Подробнее

Рекомендации по применению В данных рекомендациях по применению приведено сравнение качества отображения различных

Рекомендации по применению В данных рекомендациях по применению приведено сравнение качества отображения различных Влияние качества отображения на экране осциллографа на способность обнаружения аномалий сигнала Сравнение осциллографа серии 6000 компании Agilent Technologies и цифрового осциллографа другого производителя

Подробнее

ЭЛЕКТРОНИКА И МИКРОПРОЦЕССОРНАЯ ТЕХНИКА

ЭЛЕКТРОНИКА И МИКРОПРОЦЕССОРНАЯ ТЕХНИКА Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Сибирская Государственная Геодезическая Академия»

Подробнее

РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ " Проблемно-ориентированные пакеты прикладных программ в радиотехнике " Специальность

РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ  Проблемно-ориентированные пакеты прикладных программ в радиотехнике  Специальность ФЕДЕРАЛЬНОЕ АГЕНТСТВО ВОЗДУШНОГО ТРАНСПОРТА ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ГРАЖДАНСКОЙ

Подробнее

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

Относительная оценка частоты приема от центральной частоты канала в телевизионных цифровых наземных вещательных системах Безруков В.Н. д.т.н, профессор, зав кафедрой телевидения им.с.и. Катаева МТУСИ Власюк И. В. к.т.н., доцент кафедры телевидения им.с.и. Катаева МТУСИ Канев С.А. аспирант МТУСИ Аннотация. В современных вещательных

Подробнее

Виртуальные информационно-измерительные приборы Коннова А.А., Зубченко Е.С. Мурманский Государственный Университет Мурманск, Россия

Виртуальные информационно-измерительные приборы Коннова А.А., Зубченко Е.С. Мурманский Государственный Университет Мурманск, Россия Виртуальные информационно-измерительные приборы Коннова А.А., Зубченко Е.С. Мурманский Государственный Университет Мурманск, Россия В последнее время измерения почти полностью перешли на цифровые методы,

Подробнее

АННОТАЦИЯ ПРИМЕРНОЙ ОСНОВНОЙ ПРОФЕССИОНАЛЬНОЙ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ ПО ПРОФЕССИИ ( ) Наладчик компьютерных сетей

АННОТАЦИЯ ПРИМЕРНОЙ ОСНОВНОЙ ПРОФЕССИОНАЛЬНОЙ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ ПО ПРОФЕССИИ ( ) Наладчик компьютерных сетей АННОТАЦИЯ ПРИМЕРНОЙ ОСНОВНОЙ ПРОФЕССИОНАЛЬНОЙ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ ПО ПРОФЕССИИ 09.01.02 (230103.03) Наладчик компьютерных сетей Правообладатель: Федеральное государственное автономное учреждение

Подробнее

Устройство компьютера

Устройство компьютера Устройство компьютера Тема 0. Типы компьютеров К.Ю. Поляков, 2007-2008 Настольные компьютеры (desktop) звуковые монитор колонкидля вывода для вывода информации звука на экран системный блок принтер для

Подробнее

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» Факультет энергетики УТВЕРЖДАЮ Декан ФЭН профессор,

Подробнее

1. Пояснительная записка. Рабочая программа по информатике для 9 класса основной школы разработана

1. Пояснительная записка. Рабочая программа по информатике для 9 класса основной школы разработана 1. Пояснительная записка Рабочая программа по информатике для 9 класса основной школы разработана в соответствии: 1.С требованиями Федерального Государственного образовательного стандарта общего образования

Подробнее

Программа дисциплины

Программа дисциплины МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное автономное учреждение высшего профессионального образования "Казанский (Приволжский) федеральный университет" Институт

Подробнее

КЛЕТОЧНЫЙ АСИНХРОННЫЙ МЕТОД РЕШЕНИЯ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ В ЧАСТНЫХ ПРОИЗВОДНЫХ НА ГПУ

КЛЕТОЧНЫЙ АСИНХРОННЫЙ МЕТОД РЕШЕНИЯ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ В ЧАСТНЫХ ПРОИЗВОДНЫХ НА ГПУ КЛЕТОЧНЫЙ АСИНХРОННЫЙ МЕТОД РЕШЕНИЯ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ В ЧАСТНЫХ ПРОИЗВОДНЫХ НА ГПУ А.П. Карпенко, М.П. Погосский Введение. Численное решение краевых задач для уравнений в частных производных (ДУЧП)

Подробнее

Применение параллельных вычислений в задаче компьютерной томографии

Применение параллельных вычислений в задаче компьютерной томографии Применение параллельных вычислений в задаче компьютерной томографии А.Е. Ковтанюк 1,2, А.А. Хандорин 1 1 Дальневосточный Федеральный Университет, Суханова 8, Владивосток, Россия 2 Институт прикладной математики

Подробнее

Контрольно-измерительные материалы по информатике и ИКТ для 8-9 классов основной школы

Контрольно-измерительные материалы по информатике и ИКТ для 8-9 классов основной школы Приложение 2 к рабочей программе по информатике и ИКТ Контрольно-измерительные материалы по информатике и ИКТ для 8-9 классов основной школы 8 класс Тест по теме «Информация и информационные процессы»

Подробнее

ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Факультет вычислительной техники Кафедра систем автоматизации проектирования. Рабочая программа дисциплины

ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Факультет вычислительной техники Кафедра систем автоматизации проектирования. Рабочая программа дисциплины ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Факультет вычислительной техники Кафедра систем автоматизации проектирования "Утверждаю" Декан ФВТ Б.Д.Шашков " " 2002 г. Рабочая программа дисциплины Схемотехника

Подробнее

Аппаратная архитектура CUDA

Аппаратная архитектура CUDA Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Новосибирский национальный исследовательский

Подробнее

Программа «АДИ Конфигуратор»

Программа «АДИ Конфигуратор» Программа «АДИ Конфигуратор» Руководство пользователя Содержание Назначение программы... 2 Интерфейс пользователя... 2 Уровни доступа к параметрам настройки... 2 Настройка параметров связи... 3 Установка

Подробнее

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

Методические указания для подготовки к входному компьютерному тестированию УТВЕРЖДАЮ Заведующий кафедрой Е.Н. Кирюхова Методические указания для подготовки к входному компьютерному тестированию по дисциплине «Информатика» для специальности (-ей): 1-27 01 01 «Экономика и организация

Подробнее

Алтайская академия экономики и права. Рабочая программа. Информационных технологий

Алтайская академия экономики и права. Рабочая программа. Информационных технологий Алтайская академия экономики и права Кафедра Рабочая программа. (Наименование кафедры, обеспечивающей преподавание дисциплины) Информационных технологий Шифр и наименование дисциплины Вычислительные машины,

Подробнее

4. Планируемые результаты обучения по дисциплине (модулю) Формируемые компетенции

4. Планируемые результаты обучения по дисциплине (модулю) Формируемые компетенции I. Аннотация 1. Цель и задачи дисциплины (модуля) Целью освоения дисциплины является: изучение принципов организации цифровых устройств. Задачами освоения дисциплины являются: привить знания о функционировании

Подробнее

ПРОГРАММА КАНДИДАТСКОГО ЭКЗАМЕНА ПО СПЕЦИАЛЬНОЙ ДИСЦИПЛИНЕ Математическое моделирование, численные методы и комплексы программ

ПРОГРАММА КАНДИДАТСКОГО ЭКЗАМЕНА ПО СПЕЦИАЛЬНОЙ ДИСЦИПЛИНЕ Математическое моделирование, численные методы и комплексы программ МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Марийский государственный университет» Физико-математический

Подробнее

9 сентября 2006 г. РАБОЧАЯ ПРОГРАММА

9 сентября 2006 г. РАБОЧАЯ ПРОГРАММА НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ФАКУЛЬТЕТ АВТОМАТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ КАФЕДРА АВТОНОМНЫХ ИНФОРМАЦИОННЫХ И УПРАВЛЯЮЩИХ СИСТЕМ УТВЕРЖДАЮ Декан АВТФ, проф. В.В.ГУБАРЕВ 9 сентября

Подробнее

Центральные контроллеры сети CNC-08 и CNC-16

Центральные контроллеры сети CNC-08 и CNC-16 Интегрированная система безопасности ParsecNET 2 Центральные контроллеры сети CNC-08 и CNC-16 Описание и инструкция по эксплуатации Версия 3.3 Введение Введение Назначение Центральный контроллер сети (ЦКС)

Подробнее

Федеральное государственное бюджетное образовательное учреждение высшего образования «Горно-Алтайский государственный университет»

Федеральное государственное бюджетное образовательное учреждение высшего образования «Горно-Алтайский государственный университет» Федеральное государственное бюджетное образовательное учреждение высшего образования «Горно-Алтайский государственный университет» МЕТОДИЧЕСКИЕ УКАЗАНИЯ для обучающихся по освоению дисциплины Информационные

Подробнее

АССОЦИАТИВНАЯ ПАМЯТЬ: НОВОЕ - ХОРОШО ЗАБЫТОЕ СТАРОЕ

АССОЦИАТИВНАЯ ПАМЯТЬ: НОВОЕ - ХОРОШО ЗАБЫТОЕ СТАРОЕ АССОЦИАТИВНАЯ ПАМЯТЬ: НОВОЕ - ХОРОШО ЗАБЫТОЕ СТАРОЕ Кафтанников Игорь Леопольдович, к.т.н., доцент, Южно-Уральский государственный университет, кафедра ЭВМ kil@is74.ru В настоящее время активно продолжаются

Подробнее

Цели и задачи дисциплины

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

Подробнее

Рабочая программа дисциплины Теория и системы управления

Рабочая программа дисциплины Теория и системы управления МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ Государственное бюджетное образовательное учреждение высшего профессионального образования «Тверской государственный университет» Факультет прикладной математики и кибернетики

Подробнее

Представление чисел в ЭВМ

Представление чисел в ЭВМ А. А. Вылиток Представление чисел в ЭВМ 1. Информация и данные Информация (от лат. information разъяснение, изложение) содержание (смысл) сообщения или сигнала, сведения, рассматриваемые в процессе их

Подробнее

МИНОБРНАУКИ РОССИИ ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ФАКУЛЬТЕТ ИНФОРМАТИКИ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫ Математические модели вычислительных систем и компьютерных сетей Направление подготовки 02.04.02

Подробнее

Программируемый логический контроллер в теплотехническом эксперименте /535435

Программируемый логический контроллер в теплотехническом эксперименте /535435 Программируемый логический контроллер в теплотехническом эксперименте 77-48211/535435 # 01, январь 2013 Новожилов Б. М. УДК 53.087.4 Введение Россия, МГТУ им. Н.Э. Баумана boris@disys.ru При проведении

Подробнее

СИБИРСКИЙ УНИВЕРСИТЕТ ПОТРЕБИТЕЛЬСКОЙ КООПЕРАЦИИ

СИБИРСКИЙ УНИВЕРСИТЕТ ПОТРЕБИТЕЛЬСКОЙ КООПЕРАЦИИ СИБИРСКИЙ УНИВЕРСИТЕТ ПОТРЕБИТЕЛЬСКОЙ КООПЕРАЦИИ ПРОГРАММА ВСТУПИТЕЛЬНЫХ ИСПЫТАНИЙ ПО НАПРАВЛЕНИЮ 230100.68 Информатика и вычислительная техника Новосибирск ВВЕДЕНИЕ Вступительные испытания для абитуриентов,

Подробнее

Ай Ти Ви групп. Программный комплекс. «Интеллект» Пакет детекторов: Руководство Пользователя. Версия 1.0.6

Ай Ти Ви групп. Программный комплекс. «Интеллект» Пакет детекторов: Руководство Пользователя. Версия 1.0.6 Ай Ти Ви групп Программный комплекс «Интеллект» Пакет детекторов: Руководство Пользователя Версия 1.0.6 Москва 2012 1 Содержание СОДЕРЖАНИЕ... 2 1 ВВЕДЕНИЕ... 3 1.1 Общая информация... 3 1.2 Назначение

Подробнее

Входные порты: 2 порта HDMI, 1 порт DisplayPort, 1 порт DualLink DVI-I (поддержка HDMI, DVI, VGA)

Входные порты: 2 порта HDMI, 1 порт DisplayPort, 1 порт DualLink DVI-I (поддержка HDMI, DVI, VGA) 1. Введение нный 4-канальный контроллер видеостен VWC-45 оснащается 10-битным процессором, имеет функцию 3D-motion адаптивного устранения чересстрочной развертки, алгоритм сглаживания углов, а также поддерживает

Подробнее

2. Место данной дисциплины в учебном процессе: Дисциплина относится к общим математическим и естественнонаучным дисциплинам.

2. Место данной дисциплины в учебном процессе: Дисциплина относится к общим математическим и естественнонаучным дисциплинам. 1. Цели и задачи дисциплины: Цель изучения: Дать необходимые знания по формированию основ для использования современных средств вычислительной техники и пакетов прикладных программ в своей дальнейшей деятельности.

Подробнее

Использование программатора Teleprog TLP1506 для программирования микроконтроллеров и микросхем памяти модулей управления стиральными машинами

Использование программатора Teleprog TLP1506 для программирования микроконтроллеров и микросхем памяти модулей управления стиральными машинами Использование программатора Teleprog TLP1506 для программирования микроконтроллеров и микросхем памяти модулей управления стиральными машинами 1. Введение В данном материале будет показана возможность

Подробнее