Главная
страница 1

E.14.O.СОЗДАНИЕ ВИРТУАЛЬНЫХ ПРИБОРОВ НА ОСНОВЕ ПЛАТ С DSP В СРЕДЕ NI LabVIEW

Б.Н. Лыточкин, П.М. Михеев

Лаборатория-практикум «Современные системы автоматизации научных исследований», Физический факультет и МЛЦ МГУ им. М.В. Ломоносова. lytboris@gmail.com, mikheev@femto.phys.msu.ru

1.Что такое DSP?


Формула “умнее, быстрее и… компактнее” всегда двигала область электроники. Разработка технологий микросхем в середине 20го века дала такой стратегии мощный фундамент. На рубеже веков ведущие производители компьютерной техники шагнули в эру нанометровой электроники – технология 65 nm – это уже реальность. Однако создание всё более мощных универсальных процессоров породило проблему тепловыделения – современные процессоры выделяют 100 Вт и более. Поэтому создавать компактные приборы с использованием универсальных процессоров стало невыгодным из-за наличия подчас громоздкой системой охлаждения. Стали появляться кристаллы, ориентированные на решение конкретной задачи не за счёт увеличения тактовой частоты вычислительного центра, а за счёт оптимизации топологии ядра и включения в его состав специфических блоков, ускоряющих обработку данных. Одной из таких «веток» и стали DSP (Digital Signal Processor, цифровой сигнальный процессор).

2.Типовые Характеристики DSP.


Класс DSP (Digital Signal Processor, цифровой сигнальный процессор) предназначается для обработки разнообразных потоков информации (звуковых, видео- или других видов сигналов). Типичные характеристики DSP таковы:

    • широкая системная шина (16 или 32 бита),

    • порты цифрового ввода-вывода,

    • многоканальные АЦП/ЦАП с хорошим разрешением и скоростью,

    • аппаратной реализацией основных функций анализа данных,

    • прогрессивной системой команд ассемблера, ориентированной на области применения процессора и языков высокого уровня (как правило, С),

    • высокая тактовая частота (от 40 до 1000 MHz),

    • DMA-шина (Direct Memory Access) для подключения дополнительной периферии (оперативная память, аудиокодеки, контроллеры интерфейсов, и т.д.).

3.“Plug & Play” платы на основе DSP


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

Автоматическая обработка звука и видео непосредственно в приборе приобретает всё большую важность. Для таких целей как раз можно использовать готовые платформы, основанные на DSP. Типичным представителем такого решения является SPEEDY-33 разработки Hyperception, дочерней компании National Instruments.






    • Процессор: 150 MHz VC33 TI DSP

    • Память программ: 34kW основной и 252 kW расширенной,

    • Flash-память: 512 kW

    • Панель светодиодов и DIP-переключателей

    • 8 цифровых линий ввода-выводаАЦП/ЦАП: 2 канала 16 бит, 48 kHz

    • Возможность ввода информации как с встроенных микрофонов, так и с LineIn

    • Интерфейс: USB 1.1 (FullSpeed, 12Mbit)

4.Принципы программирования DSP


Написание программного обеспечения для DSP можно производить и на ассемблере используемого кристалла. В этом случае необходимы глубокие знания архитектуры и системы команд процессора. Однако, мигрируя на другое семейство или поколение, придётся в значительной мере изучать всё заново – изменения топологии процессора сразу же потребует изменений кода. Кроме этого, код на ассемблере чрезвычайно громоздок и сложен для чтения «непосвящённому» человеку.

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

С июня 2005 года в распоряжении программистов DSP появились новые средства программирования используемых платформ. Этими новинками стали NI LabVIEW DSP Module и LabVIEW Embedded Edition, распространяющие принципы графического программирования и на эту область.

5.LabVIEW DSP Module как средство разработки ПО для плат на основе TI DSP


Основанное на LabVIEW, данный пакет представляет собой среду для графического программирования встраиваемых (embedded) систем. Для этого в среду добавлен специальный компилятор, позволяющий переводить код на языке LabVIEW в ассемблерный код DSP. В настоящий момент LabVIEW DSP Module поддерживает 3 платы на основе Texas Instruments DSP:

    • SPEEDY-33, Hyperception,

    • DSK6713, Spectrum Digital,

    • DSK6711, Texas Instruments.

Работа с этими платами схожа с работой с DAQMX-платами: все необходимые замеры выполняет плата, а LabVIEW служит лишь для отображения полученных данных. Однако существует очень важное отличие – если в LabVIEW все операции (обработка, анализ и т.п.) над данными исполнялись на процессоре компьютера, то в данном случае вся нагрузка исполнения кода ложится на DSP.

Гибкость LabVIEW DSP Module достигается за счёт использования специальных конфигурационных файлов, описывающих особенности каждой из трёх плат. В этих фалах описаны наборы доступных функций, типы входных и выходных данных.

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


    • элементы управления потоком выполнения программы,

    • арифметические, логические, элементы сравнения,

    • работа с массивами данных,

    • генерация основных функций,

    • временные и частотные окна,

    • преобразования Фурье, Гильберта и Хартли, временной анализ.

Кроме этого существует специальное меню примитивного обмена, позволяющее общаться с линиями ввода-вывода платы.

6.Работа с портами ввода-вывода


Для работы с цифровыми и аналоговыми линиями используется элементы из меню примитивного IO-обмена. Соответствующая ветка меню на блок-схеме показана на рисунке. Возможны 3 режима работы:

    • аналоговый IO,

    • цифровой IO из порта (1 байт),

    • побитный цифровой IO.

После добавления на блок-схему любого из описанных элементов, необходимо его настроить. Меню конфигуратора вызывается двойным кликом по иконке.

Для первого и второго режимов работы есть возможность использования буферизированного IO с настраиваемой длинной буфера, что позволяет увеличить отношение сигнал/шум для аналогового сигнала и уменьшить временной джиттер цифровых линий. Также на плате установлен двухканальный аудиокодек, работающий с максимальной частотой дискретизации 48 кГц. В кодеке 1 тракт на ввод и один – на вывод. Возможны 4 конфигурации каждого из трактов:



    • 1 канал («моно»), 1 значение

    • 1 канал, через буферный массив

    • 2 канала («стерео»), 1 значение по каждой из двух линий

    • 2 канала, через буферный массив каждой из двух линий

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

Процесс написания кода LabVIEW DSP Module ничем не отличается от программирования LabVIEW под Windows.


7.Запуск программы. Режим автономной работы.


Процесс запуска программы можно разделить на 3 этапа.


На первом этапе сборки проекта код LabVIEW собирается в код для RIDE, сторонней утилиты от Hyperception. После этого полученный код передаётся в RIDE, где и происходит создание бинарного кода. Далее этот код загружается во flash-память процессора и подаётся команда на запуск. В этом случае работа может происходить в двух режимах:

    • с подключённой лицевой панелью,

    • с отключённой лицевой панелью.

В первом режиме ежесекундно данные лицевой панели посылаются на DSP, а с него приходят данные для отображения. Поскольку в данном режиме DSP приходится «отвлекаться» от работы основной программы и тратить время на создание потока данных для компьютера, этот режим рекомендуется использовать только при необходимости изменения параметров программы. Сразу после перенастройки рекомендуется отключить лицевую панель. Данная настройка находится в специальном окне DSP Module Status Monitor, в котором отображаются все процессы взаимодействия с платой.

Описанные режимы работы требуют постоянного подключения к компьютеру для работы, что не является предметом нашего внимания, поскольку в этом случае можно применить решения NI для PC. Отличительной особенностью LabVIEW DSP Module является возможность запрограммировать плату так, чтобы ей не требовалось подключение к компьютеру вообще – программа сохраняется во встроенной flash-памяти платы. При этом в качестве значений всех элементов управления берутся их значения на момент компиляции. После переноса программы на плату работа с лицевой панелью невозможна, поскольку в бинарном коде были удалены все процедуры обмена с LabVIEW. Доступными для управления остаются элементы, расположенные на самой плате (DSP-панель переключателей, LED-линейка, порты цифрового IO). В итоге получается прибор, абсолютно независимый от компьютера.


8.Примеры приборов.

Генератор основных функций


Двуканальный генератор основных функций выполнен на базе платы SPEEDY-33. Реализована генерация синусоидального, пилообразного, прямоугольного и треугольного сигналов, наложение белого шума и фильтров низких и высоких частот. Возможна работа как в связке с компьютером, так и без непосредственного его участия (по USB подаётся только питание). На базе генератора создан лабораторный практикум «Создание генератора сигналов стандартных функций на основе DSP в среде LabVIEW DSP Module», целью которого является получение навыков работы с LabVIEW DSP Module и аппаратной платформой SPEEDY-33.

Система цифровой фильтрации


В данном приборе аппаратной платформой является плата,Spectrum Digital DSK 6713. Стереосингал для обработки поступают на линейный вход с любого источника звука. При помощи DIP-переключателей можно переключать фильтры для каждого канала. При использовании режима отключённой лицевой панели появляются практически неограниченные возможности изменения параметров фильтрации.


Смотрите также:
Практикум «Современные системы автоматизации научных исследований»
71.52kb.
1 стр.
Каждый на проведение научных исследований в течение 3 лет (2013 2015 гг.) с возможным продлением проведения научных исследований на 2 года
32.44kb.
1 стр.
Центр религиоведческих исследований и международных духовных отношений, украина
34.19kb.
1 стр.
Цифровой фильтр для фотоэлектромагнитного комплекса определения рекомбинационно-диффузионных параметров носителей заряда в пленках узкозонных полупроводников
76.74kb.
1 стр.
Системы автоматизации технологических процессов. Требования к выполнению электроустановок систем автоматизации в пожароопасных зонах
1426.22kb.
7 стр.
Дипломная работа «Построение системы хранения и управления результатами научных исследований»
242.06kb.
1 стр.
Учебно-методический комплекс по курсу Современные отечественные системы автоматизации
1274.23kb.
9 стр.
Отчет о выполнении плана реализации мероприятий
1001.41kb.
7 стр.
"Разработка архитектуры и методов организации слабосвязанных архивных систем для автоматизации проектирования"
6.8kb.
1 стр.
Конкурс по мероприятию «Проведение научных исследований коллективами под руководством приглашенных исследователей»
26.91kb.
1 стр.
Программа «Социальные трансформации в Пограничье
140.91kb.
1 стр.
Анализ общих и частных методологических проблем в сфере научных исследований по профилю психического и психологического здоровья в Республике Казахстан
326.46kb.
1 стр.