Цифровая обработка сигналов

Программа модуля МЦ 4.01 представляет собой код, написанный на специализированном ассемблере процессоров NM. Данная программа загружается из памяти HOST машины в память МЦ 4.01. Исходя из этой программы модуль считывает данные по LINK портам каждого процессора, осуществляет преобразование данных в формат, понятный HOST машине и отправляет их в свою память. Данная программа работает в режиме реа

льного времени и загружается отдельно для каждого процессора. Таким образом информационные потоки для каждого процессора независимы.

Программа на ПЭВМ предназначена для работы под управлением операционной системы типа Windows XP/2003/2000. Она имеет графический интерфейс и обладает рядом функций. При запуске программа осуществляет поиск модуля МЦ 4.01 в системе и осуществляет его загрузку программой, управляющей процессорами NM. При нажатии соответствующих клавиш, программа на ПЭВМ начинает принимать данные с процессорного модуля в непрерывном режиме. Прием осуществляется либо с одного, либо с другого, либо с двух физических каналов одновременно. При этом происходит вывод данных на осциллограммы в графическом интерфейсе. Можно менять вид кода: дополнительный, прямой, беззнаковый. На осциллограмме отображаются развернутые во времени сигналы с каждого из физических каналов. Линиями разных цветов отображаются сигналы логических каналов. Кроме того, программа позволяет рассчитывать и графически выводить нормированную автокорреляционную функцию сигналов, а также спектр сигналов. Изначально программа рассчитана для работы с комплексными оцифрованными сигналами (поэтому на каждой осциллограмме два логических канала), но существует возможность просмотра действительных сигналов с удвоенной скоростью приема. Существуют гибкие возможности по нормировке сигналов в различных единицах, как по оси абсцисс [отсчет, сек, мс, мкс], так и по оси ординат [ЕМР, В, мВ, мкВ]. При построении спектра осуществляется автоматический перевод единиц в Гц, кГц, МГц. Все настройки вынесены на специальную панель. Существует возможность графического усреднения сигналов по заданному числу отсчетов. Кроме вышеперечисленного, программа осуществляет расчет параметров сигнала: размах амплитуды, максимум, минимум, математическое ожидание, дисперсия, эффективное значение, динамический диапазон и др. Также в программе предусмотрены установки верхних и нижних пределов отображения на графиках по оси ординат, а также количество принятых отсчетов по оси абсцисс.

Для удобства обработки и хранения данных программа имеет возможность записи принятых векторов данных по всем логическим каналам с заданным числом отсчетов. Формат выходного файла: .txt (Блокнот), .xls (Excel), .bin (двоичный формат данных). Также программе есть возможность печати и сохранения данных в формате .bmp (Рисунок) графических данных.

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

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

Интерфейс программы настраиваемый: позволяет менять размеры осциллограмм и панелей, что немаловажно при работе пользователя. Есть возможность масштабирования графических результатов. Построение спектра и НАКФ_для удобства вынесено на отдельные формы. Каждое графическое отображение может быть развернуто на весь экран монитора ПЭВМ.

Программа-установщик представляет собой один файл, при запуске которого появляется стандартный диалог установки программ. Пользователю предлагается выбрать директорию установки программы, а также возможность добавления ярлыков на рабочий стол и т.п. Установщик записывает данные о программе в реестр Windows, а также устанавливает драйвера для модуля МЦ 4.01 в автоматическом режиме, после чего комплекс программ готов к работе.

Комплекс программно-аппаратных средств, разработанных на данном этапе был протестирован с тестовыми данными, сформированными в пакете Mathcad. Были сформированы исходные комплексные сигналы для двух физических каналов. Затем рассчитаны параметры сигналов, спектр. Исходные вектора были загружены в ПЗУ ПЛИС. Результаты моделирования совпали с результатами, отображаемыми разработанной программой. Затем был проведён тест с реальным устройством, подключенным к программно-аппаратному комплексу, что дало также положительные результаты.

3.3 Разработка и описание проекта ПЛИС с учетом временных диаграмм (моделирование)

Два блока формируют тест. Здесь X и Y – данные. На одном канале на входе сделана земля, а на другом входе записаны некие данные. На другом канале на X и Y только данные, т.е. сделаны некие квадратуры. Стоит счётчик и на него подаётся сигнал MCLK (основной clock) и ST20_MCLK – это некая редкая серия, которая в нашем случае из 40МГц формирует редкий импульс.

На входе выставляются данные, т.е. некие числа, далее стоит мультиплексор. Когда на входе 20_MCLK «0», через инвертор включается «1»,т.е. data1, соответственно, когда «1» через инвертор включается data0. Таким образом, получается, что мы мультиплексируем шину, т.е. сначала с одной памяти стоят данные, потом с другой. Они переключаются, и так в цикле по ST20_MCLK. Данные формируются на входе 20_MCLK. В режиме теста, если сигнал проходит через data1, это означает, что подана «1» на вход sel, который принимает данные. Принимает, и здесь происходит их упаковка. Бит представляет собой X младший, X старший и Y младший, Y старший. В старшем разряде у нас стоит «1», остальные соответственно «0». Получается, что по нулю на входе 20_MCLK, поскольку стоит инвертор, имеем то, что на единичном входе, а по единице то, что на нулевом.

Рассмотрим ситуацию когда стоит «0», т.е режим X. Бит, от которого зависит признак срабатывания, соответственно зависит от 2-х сигналов (XY low [6…0]). Далее у нас стоит элемент «И» с инверсией на входе. Таким образом «1» на выходе только в том случае, когда на входе «11», но так как мы берём с инверсией то «00». Получается, когда «00» выдаётся «1». На входе 20_MCLK в рассматриваемом нами режиме будет «0». Другими словами, два сигнала 20_MCLK и 10_MCLK выдают «00», а это означает, что вырабатывается признак о том, что на входе X младший. X low [6…0] – это младшая часть (6 разрядов - это младшие разряды X). Берётся эта младшая часть и дописывается признак. И получаем 10_MCLK работает таким образом, что если «0», то он берёт младшую часть. В младшую часть в этот момент дописывается «1» – старший разряд, и берётся младшая часть через мультиплексор. Дальше мы берём сигнал STR_OUT и «защёлкиваем» её в выходной регистр. В итоге данные мы защёлкнули. Имеем такую картину как X младший, но потом идёт X старший, т.е. 20_MCLK так и осталось в нуле, следовательно, ещё не переключилось, и данные все стоят, которые были на X. Но при этом мультиплексор перешёл в «1» и взял старшую часть. В старшую часть записывается «0» в старший разряд, потому что нет признака, что это X младший. «0» мы записываем потому, что мы не можем оставить шину «висящей» в воздухе, поэтому мы используем только 7 разрядов, а 8-ой разряд – есть признак. Таким образом, мы мультиплексор перевели на старшую часть и опять же «защёлкнули».

Страница:  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15 
 16  17  18  19  20  21  22  23  24  25 


Другие рефераты на тему «Коммуникации, связь и радиоэлектроника»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы