Виртуальный измерительный комплекс
Рефераты >> Программирование и компьютеры >> Виртуальный измерительный комплекс

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

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

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

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

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

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

Если программа определяет, что процессор оборудован технологией ММХ, то она активно использует все преимущества этой технологии.

При разработке использованы и другие способы оптимизации машинного кода. В качестве примера приведем следующие полученные результаты. Функции прямого и обратного преобразований Фурье выполняются на процессоре Pentium с частотой 166 МГц за 0,5 мс, что вдвое быстрее, чем библиотечные функции, распространяемые по сети Internet, в том числе и фирмой Intel. Работа функций, выполняющих циклическое суммирование или перемножение, осуществляется более чем в два раза быстрее, чем самые скоростные аналоги, выполненные по рекомендациям фирмы Intel.[4]

4.2. Описание работы программного комплекса

Рассмотрим подробнее работу всего комплекса. Он построен по модульному типу. Основу составляет персональный компьютер, который обеспечивает управление всеми устройствами, измерение основных параметров сигналов, их анализ и обработку. Связь программного обеспечения с приемопередающей аппаратурой осуществлена через специальные устройства аналого-цифрового и цифро-аналового преобразования, выполненные в виде плат, размещаемых в слотах материнской платы компьютера. (ЛА – н10М*)

Программный комплекс выполнен в виде стандартного многооконного интерфейса Windows’95. Для обеспечения

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

Программное обеспечение поставляется в двух версиях:

Win_95-32-1. Коплект программного обеспечения, состоящего из 32 разрядной динамической библиотеки (DLL) , обеспечивающей интерфейс и полностью реализующий функционал устройства и виртуального драйвера, обеспечивающий эффективное взаимодействие с ПЭВМ (прерывания и канал ПДП) под управлением Windows’95. Для плат с частотой дискретизации АЦП до 1МГц.

Win_95-32-2. Для плат с частотой дискретизации АЦП более 1МГц.

4.3. Требования предъявляемые ПО к аппаратному обеспечению.

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

наличие операционной системы Windows’95 и занимаемый ею объем дискового пространства.

Объем поставляемого ПО и требования изготовителя.

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

Емкость и быстродействие оперативной памяти

Возможность обновления библиотек и получение технической поддержки с помощью сети Internet.

Учитывая эти критерии, определим минимальные и рекомендуемые требования к аппаратному обеспечению. Результаты преведены в табл. 4.3.1.

Таблица 4.3.1.

Требования

Минимальные

Рекомендуемые

Материнская плата 1

256 К

512 К

Процессор 2

(МГц)

133

166 ММХ

ОЗУ

(Мбайт)

8

16

Емкость HDD

(ГБайт)

1,3

1,7

CD-ROM

8 –X

32-X

VIDEO

1 M

2 M

МОНИТОР 3

14’’

15”

INTERNET

модем

HUB

SOUND CARD 4

Любая SB 16.

АС 5

Любые активные .

Клавиатура, мышь

Стандартные

1. Так как, х-ки “железа” будут рассмотрены позже, ограничимся размером “кэша”.

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


Страница: