Устройство для
регистрации и цифровой обработки аналоговых сигналов с частотой дискретизации 50 Мгц.
ADC-3U-4-01
АЦП 8х12 Бит, 50 МГц
MASTER PCI 32/33

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ
Основные технические характеристики:
l Тип шины обмена данными — MASTER PCI32/33
l
Конструктивное исполнение – CompactPCI 3U
l Количество каналов АЦП — 8
l Разрядность АЦП — 12 бит
l Отсутствие пропуска кодов, гарантировано бит — 12
l Количество эффективных разрядов на частоте 49Мгц — 11.2* бит
l Максимальная частота дискретизации 50 МГц
l Входное сопротивление аналогового входа 50 ± 1 Ом
l Диапазон входного сигнала не более ± 0.5 В
l Среднеквадратичное значение апертурного дребезга при температуре +25С, пс (типовое значение) 1**
l Интегральная нелинейность преобразования ± 0.6* ЕМР, (тип.)
l Дифференциальная нелинейность преобразования ±0.5* ЕМР (тип.)
l Вход внешнего запуска
l Количество входных цифровых линий, не более 3
l Количество выходных цифровых линий, не более 3
l Входное сопротивление линии для цифровых сигналов 500±1 Ом
l Входная емкость линий для цифровых сигналов не более 10 пФ
l Уровни входных цифровых сигналов — LVTTL,LVCMOS33
l Максимальный объем буферного ЗУ — 8 M отсчетов сигнала на канал
l Потребляемая мощность не более 10 Вт
l Напряжения питания — 5 В
l Питание устройства осуществляется через PCI шину персонального компьютера
l Плата позволяет устанавливать перепрограммируемые вентильные матрицы фирмы XILINX семейства Virtex -2 Pro - до 5 миллионов вентилей
l Программирование схемы цифрового автомата осуществляется от микросхемы Flash SPROM, установленной на плате
l Схема цифрового автомата обработки сигнала может быть изменена по требованию заказчика
l Плата поддерживает работу PCI интерфейса в режиме "Master" (DMA, средняя скорость передачи данных 100 MB/Sec)
* - параметры контролируются косвенными методами;
** - значение для микросхемы АЦП. Для устройства в целом параметр зависит от применяемого осциллятора который может быть установлен по ТЗ заказчика.
Общее описание
платы
Устройство ADC-3U-4-01 предназначено для преобразования аналоговых сигналов в цифровые коды, хранения этих кодов и передачи их по шине PCI.
Аналоговая часть устройства собрана на основе микросхем АЦП фирмы Analog Device. Буферный усилитель АЦП имеет входное сопротивление 50 Ом и расчитан на работу с источником сигнала имеющим выходное сопротивление 50 Ом. В случае отсутствия источника сигнала (режим холостого хода) на входе АЦП присутствует небольшое постоянное смещение.
Максимальная тактовая частота АЦП составляет 50 МГц (частота дискретизации задается коэффициентом деления тактовой частоты от 1 до 256). Результаты преобразования записываются в буферную память устройства ADC-3U-4-01. Общий объем записываемой реализации 8 M данных на канал.
Использование ПЛИС семейства Virtex-2 Pro фирмы XILINX позволяет перепрограммировать устройство ADC-3U-4-01 для реализации обработки аналоговых и цифровых сигналов по алгоритмам заказчика. Типовая конфигурация платы - цифровой осциллограф.
Процесс дискретизации запускается по команде с компьютера или по сигналу со входа внешнего запуска и продолжается до заполнения буферной памяти. Общий объем буферной памяти 128 МБ (4 микросхемы по 32 МБ). Оцифрованные данные из внутреннего буфера пересылаются в DMA буфер ПК со средней скоростью 100 MB/sec (работа PCI интерфейса в режиме "Master"). Центральный процессор ПК не принимает участие в передаче данных из буферной памяти платы в DMA буфер и в это время может выполнять другие задачи. По окончании процесса дискретизации плата выставляет сигнал аппаратного прерывания, который обрабатывается программой пользователя.
Плата формирует сигнал на разрешение внешнего запуска и сигнал «временного окна», которые могут использоваться для синхронного запуска внешнего процесса. Также плата может быть использована для регистрации цифровых сигналов, используя цифровые входы установленные на плате, и позволяет генерировать цифровые и специальные сигналы на цифровых выходах.
Плата выполнена в стандарте CompactPCI, 3U.
В комплект поставки входят:
· плата ADC-3U-4-01;
· комплект разъемов для подключения к плате цифровых и аналоговых сигналов
· драйвер устройства для операционных систем Windows 2000\XP;
· тестовое программное обеспечение WIN_DO_Oscilloscope (исходный текст проекта для Delphi 7.0);
· DLL библиотека API функций для использования платы в проектах пользователя;
· руководство пользователя
Установка и использование платы.
Плата выполнена в виде стандартного расширения CompactPCI. После установки платы в свободный разъем и загрузки компьютера операционная система обнаружит устройство в системе. На запрос о местонахождении драйвера необходимо указать путь к файлу "MDMAI.inf". Данный файл входит в комплект ПО платы. При установке драйвера под операционными системами Windows 2000\XP, в случае появления диалогового окна "Цифровая подпись не найдена" на запрос "Продолжить установку?" необходимо ответить "Да".
Входящий в состав программного обеспечения, поставляемого с платой, драйвер обеспечивает работу платы под управлением операционных систем Windows 9x\ME\2000\XP.
После установки платы в свободный PCI слот компьютера и включения ПК, BIOS обнаружит новое устройство и идентифицирует его как "сопроцессор". В списке инсталлированных устройств должна появится запись: Vendor ID = 0x2004 и Device ID = 0x680C (на многих компьютерах таблица с инсталлированными устройствами не появляется, а сразу начинается загрузка операционной системы).
После загрузки, операционная система обнаружит в системе новое устройство "PCI Co-processor CPU (Сопроцессор)" и предложит установить для него драйвер. Выберите пункт "установка из указанного места". Далее укажите "Поиск наиболее подходящего драйвера" (с пометкой на дискете A:\), если ПО поставляемое с платой находится на дискете, иначе укажите полный путь к директории в которой находится драйвер"MDMAI.sys" и файл "MDMAI.inf".
При установке драйвера вручную, в окне с предложением поиска наилучшего драйвера выберите "Установить с диска..." и выберите каталог в котором находится драйвер"MDMAI.sys" и файл "MDMAI.inf". Далее продолжайте установку в соответствии с подсказками системы.
При установке драйвера под операционными системами Windows 2000\XP, в случае появления диалогового окна "Цифровая подпись не найдена", на запрос "Продолжить установку?" необходимо указать "Да". После установки драйвера необходимо перезагрузить компьютер.
После успешной установки драйвера можно перейти в диспетчер устройств ("Свойства системы" - "Оборудование" - "Диспетчер устройств") и убедиться, что устройство и драйвер работают нормально (класс устройств XDSPDEVICES).
Если при старте операционной системы устройство не было обнаружено, то этому могут быть две причины: либо устройство не работает, либо оно уже устанавливалось ранее в систему и у менеджера устройств уже есть соответствующая запись. В этом случае откройте менеджер устройств, разверните класс устройств "XDSPDEVICES" и выберите запись, отмеченную как "Adc3U". В свойствах этой записи выберите закладку "Драйвер" и нажмите кнопку "Обновить...". Далее следуйте указаниям описанным выше.
После установки драйвера необходимо перезагрузить компъютер. Для проверки работоспособности платы после успешной установки драйвера устройства можно воспользоваться тестовой программой WIN_DO_Oscilloscope, входящей в комплект ПО платы.
Описание тестовой программы цифрового осциллографа
WIN_DO_Oscilloscope.
Программа цифрового осциллографа "WIN_DO_Oscilloscope" предназначена для тестирования работоспособности платы ADC-3U-4-01 и демонстрации ее основных функций. Программа поставляется с исходным текстом проекта для среды программирования Delphi.
Программный продукт распространяется "AS IS" и
служит для демонстрации основных возможностей и механизмов работы с платой.
Поставщик не несет ответственности за некорректность работы программы и ущерб
принесенный в следствии ее возможного зависания.
Пользователь может дорабатывать и модифицировать программу для использования в
собственном проекте.
Программа предоставляет пользователю следующие основные возможности:
· Побанковый просмотр оцифрованного сигнала (размер банка может изменяться произвольно);
· Просмотр 8 каналов (по 2 канала одновременно);
· Однократная и циклическая дискретизация;
· Автомасштабирование сигнала, наложение сигнала, программная синхронизация;
· Вычисление глобальных и локальных (в пределах банка) минимума и максимума;
· Просмотр значения сигнала в точке;
· Диагностика процесса дискретизации: количество корректных дискретизаций и ошибок;
· Измерением среднеквадратического уровня собственного шума платы и построение гистограмм распределения значений сигнала и уровня шума;
· Сохранение сигналов в текстовом файле для дальнейшей обработки;
· Сохранения и загрузка конфигурационного файла с уставками программы;
·
Работа в режиме модели
(при отсутствии подключенной платы в системе).
Программа запускается выполнением файла "Win_do_.exe" из каталога "\WIN_DO_Oscilloscope".
Если в системе обнаружена плата, то на вкладке выбора текущего источника
появится закладка "Device". Если устройство
не обнаружено, то активной становится закладка "Model"
и программа переходит в режим моделирования входного сигнала.

Рисунок 1. Внешний вид окна программы с активной
закладкой "View".
В нижнем правом углу программы находятся кнопки "Start" и "Stop" обеспечивающие пуск и останов процесса дискретизации, соответственно.
Левая часть окна программы содержит панель графического отображения сигналов и закладки для выбора текущего источника сигнала и режима работы программы. В правой части окна программы находится панель с вкладками, которые обеспечивают переключение между элементами управления программы сгруппированными по функциональному признаку.
Для смешения сигнала внутри отображаемого банка предназначена панель кнопок "BankOffset". Кнопка "Clear" позволяет сбросить смещение в ноль. Кнопки "<<10", "<<1", ">>1" и ">>10" позволяют задавать смещение в отсчетах для просмотра от начала текущего отображаемого банка. Данная панель позволяет более точно задать отображаемую область сигнала и работает во всех режимах работы с графиками.
Закладка "View".
Закладка "View"
содержит элементы для управления режимами отображения оцифрованного сигнала, а
также элементы для управления платой. Все элементы объединены в группы с
названиями по функциональному признаку.
На рис.2,3 представлены скриншоты
программы при различных положениях элементов управления на вкладку “View”.
Таблица 1. Элементы закладки “View”
|
Группа "Sampling" |
Задает режим циклической (Cyclical) или однократной (Onetime) дискретизации. |
|
Группа "View Channel" |
Выбирает отображаемые каналы. Channel 1 & 2 - одновременный просмотр 1(низ) и 2(верх) каналов. Channel 3 & 4 - одновременный просмотр 3(низ) и 4(верх) каналов. Channel 5 & 6 - одновременный просмотр 5(низ) и 6(верх) каналов. Channel 7 & 8 - одновременный просмотр 7(низ) и 8(верх) каналов. |
|
Группа "Bank Select" |
Задает размер отображаемого банка и текущий банк. View Bank - индицирует текущий отображаемый банк. Полоса прокрутки позволяет изменять текущий отображаемый банк для перемещения по оцифрованному сигналу во времени. Bank Size - позволяет выбрать из списка или задать произвольно текущий размер банка. |
|
Группа "Signal Options" |
Позволяет выбрать следующие режимы: AutoScale Signal - вкл.\выкл. режим автомасштабирования отображаемого сигнала. При выключенном режиме AutoScale можно задавать коэффициент масштабирования с помощью кнопок "<<", "<", ">" и ">>". При нажатии этих кнопок текущий коэффициент масштабирования будет отображаться в строке статуса. Synchronize Signal - вкл.\выкл. режим программной синхронизации сигнала (параметры синхронизации задаются на вкладке Synchro). HistBuff Enable - вкл.\выкл. на плате буфера предистории (используется при необходимости получения данных предшествовавших сигналу внешнего запуска). Enable External Start - вкл.\выкл. режим внешнего запуска процесса дискретизации; ExternalPuskEdgeNegative - внешний запуск по переднему(выкл.)/заднему(вкл.) фронту сигнала; Enable Address Counter Test - вкл.\выкл. режим аппаратной подмены данных АЦП счетчиком (используется для диагностики работы внутренних схем платы); OverWrite Drawing Mode - вкл.\выкл. режим наложения отображаемого сигнала (отображения сигнала без удаления предыдущего изображения); Draw Signal By Dots - вкл.\выкл. прорисовку графика сигнала точками. |
|
Кнопка "Clear Signal Drawing
Area" |
Позволяет отчистить область отображения сигнала, удобна для использования при включенном режиме наложения "OverWrite Drawing Mode". |
|
Frequency Divider |
Значение делителя частоты дискретизации, устанавливается по нажатию кнопки "OK". |
|
Группа "Sampling Status Message" |
В случае корректного завершения текущей дискретизации отображается строка "Корректное считывание", в противном случае - "Некорректное считывание"; |
|
Группа "Sampling Process Information" |
Отображает информацию о количестве успешных и ошибочных дискретизаций. Cycles from program start - число корректных считываний от старта программы. Cycle from last start - число корректных считываний от последнего нажатия кнопки "Start". Timeouts from program start - число некорректных считываний от старта программы (число тайм-аутов ожидания прерывания). |


Рисунок 2. Внешний вид окна программы - работа при включенном режиме "AutoScale Signal".
Рисунок 3.Внешний вид окна программы - работа при включенных режимах "OverWriteDrawingMode" и "Synchronize Signal".

Закладка "Synchro"
Рисунок 4.Внешний вид окна программы с активной закладкой "Synchro".
Таблица 2. Элементы закладкт “Synchro”
|
Группа "Synchro
Level" |
Позволяет с помощью ползунка задать порог синхронизации. Текущий порог отображается на сигнале горизонтальной красной линией*. |
|
Группа "Synch Edge" |
Позволяет выбрать фронт по которому будет выполняться программная синхронизация: Rising - по возрастающему фронту; Falling – по спадающему фронту; |
*При вкл. режиме AutoScale Signal графическое отображение уровня синхронизации не соответствует действительному.

Закладка "MinMax"
Рисунок 5. Внешний вид окна программы с активной закладкой "MinMax".
Таблица 3. Элементы закладки "MinMax"
|
Группа "Signal Local MinMax" |
Отображает текущие локальные (в пределах текущего отображаемого банка) минимум и максимум раздельно по каналам. |
|
Группа "Signal Global MinMax" |
Отображает текущие глобальные (по всему буферу оцифрованного сигнала) минимум и максимум раздельно по каналам* |
* Значения глобальных максимумов/минимумов расчитываются при включенном режиме "CalculateGlobalMinMax", т.к. этот режим замедляет работу программы.
Закладка
"ADC Control".
Используется для доступа к управляющим регистрам АЦП. Производит запись данных "DATA" по адресу "ADDR" в соответствии с документацией АЦП (datasheet на ADS5271).

Рисунок 6. Внешний вид окна программы с активной закладкой "ADC Control".
Закладка
"Statistic"

Рисунок 7. Внешний вид окна программы с активной закладкой "Statistic".
Таблица 5.
|
Группа "Histogramms
Properties" |
Позволяет активизировать процесс вычисления статистических значений и гистограмм, а также задать параметры для их построения: Calculate Statistic - Вкл.\выкл. расчет уровня нуля и уровня шума по каналам; Calculate Histogramms - Вкл.\выкл. построение гистограмм с текущими установленными параметрами(для работы этого режима необходимо чтобы был включен режим рассчета статистических данных - режим Calculate Statistic); Clear histogramms - позволяет отчистить гистограммы и инициировать процесс накопление заново с новыми параметрами; In Active Bank - Вкл.\выкл. отбработка данных из активного банка; |
|
Группа "Input Data Source" |
Позволяет задать входные данные для построения гистограмм: Channel Signals - построение гистограмм будет осуществляться на основе оцифрованных данных по всей выборке (поканально); Signals Noise Level - построение гистограмм будет осуществляться на основе расчитанного уровня шума по каналам; Calculate Count - отображает текущее число обработанных входных данных для построения гистограмм; |
|
Группа "Histogram 1 (2)" |
Позволяет задать параметры для построения гистограмм: Bars Number - количество полосок разбиения диаппазона значений гистограммы; Min Value - минимальное значение диаппазона значений гистограммы; Max Value - максимальное значение диаппазона значений гистограммы; |
|
Группа "Signal Statistic" |
Отображает рассчитанный средний уровень и уровень шума сигналов по каналам (для работы этого режима необходимо чтобы был включен режим рассчета статистических данных - режим Calculate Statistic): |
Меню "File"

Рисунок 8. Меню "File".
1. Сохранение и считывание данных.
Для хранения данных в программе используется текстовый файл без ограничений на имя и расширения. Программа позволяет сохранять и считывать данные всех 8-ми каналов. Выбор файла для чтения или записи осуществляется после активизации соответствующего пункта меню "File": Load Signal - прочитать данные, Save Signal - сохранить данные. Все 8 каналов записываются в один файл.
2. Работа с файлами конфигурации.
Файл конфигурации предназначен для сохранения и считывания текущий установок программы (например, текущий канал, размер банка и т.д.). Пункты меню "Load Config" и "Save Config" предназначены для сохранения и считывания уставок программы из произвольного файла.
Описание библиотеки "Xdspapi.dll".
Библиотека "xdspapi.dll" предназначена для применения платы в прикладных программах. Библиотека реализуюет высокоуровневые API функции для управления режимами работы платы и получения оцифрованных данных из буферной памяти. Вместе с библиотекой поставляются: lib-файл xdspapi.lib для использования библиотеки под C-компилятором (например, Visual C++), заголовочные файлы xdspapi.pas и xdspapi.h для подключения библиотеки к проекту на Pascal и C соответственно.
В комплекте ПО поставляемого с платой (каталог \WIN_DO_Oscilloscope) находится проект в исходных текстах демонстрирующий работу с библиотекой в Delphi.
Плата поддерживает работу PCI интерфейса в режиме "Master". В этом режиме плата производит копирование внутренней памяти в физическую память компьютера без участия центального процессора, так называемый DMA (Direct Memory Access) режим. Работа платы в режиме "Master" обеспечивает передачу внутренней памяти платы в память компьютера со скорость до 100 MB/Sec.
При работе платы в "Master" режиме используется следующий механизм пересылки оцифрованного сигнала из памяти АЦП в память компьютера:
· при инициализации платы, в оперативной памяти компьютера выделяется 4 буфера (DMA буфер) по 32 МБ каждый (для хранения данных 2-х каналов).
· после завершения процесса дискретизации плата автоматически производит копирование участка внутренней памяти АЦП (длинна копируемого участка задается) в DMA 1-й буфер компьютера, без участия центрального процессора;
· остальные 3 DMA буфера копируются непосредственно по команде cтарта DMA транзакции;
· пользовательское приложение получает доступ к буферу напрямую, через указатель на DMA буфер;
Плата поддерживает генерацию аппаратного прерывания. Прерывание генерируется после завершения процесса DMA транзакции или после завершения дискретизации и автоматической DMA транзакции.
Основной режим работы платы - цифровой осцилограф с циклическим запуском процесса оцифровки. В этом режиме очередной цикл оцифровки запускается командой XdspSampleStart или сигналом внешнего запуска, если такой режим включен. Оцифровынные данные (8 каналов) сохраняются в буферной памяти платы и, затем, по команде XdspDMATransactionStart или автоматически при вызове XdspSampleStart передаются в один из 4-х DMA буферов компьютера для обработки(при вызове XdspSampleStart всегда в 1-й DMA буфер).
DLL библиотека "xdspapi.dll" подключается к проекту программы стандартными методами для используемой среды программирования.
Модуль "xdspapi.pas" (xdspapi.h), описывающий импортируемые функции, а также дополнительные константы и типы для среды программирования Delphi (Visual C++), поставляется в комплекте ПО с платой.
Библиотека поддерживает следующие группы функций:
· открытие (инициализация), закрытие (деинициализация) платы;
· обслуживание DMA транзакции, DMA буфера ("Master" режим);
· запуск процесса дискретизации и DMA транзакции;
· управление режимом внешнего запуска;
· управление АЦП;
· управление буфером предистории;
· настройка процесса оцифровки данных.
Перечень функций:
· открытие (инициализация), закрытие (деинициализация) платы:
XdspOpenDevice - Открыть устройство
XdspCloseDevice - Закрыть устройство
XdspResetAll - Выполнить RESET платы
· обслуживание DMA транзакции, DMA буфера ("Master" режим):
XdspGetDMABufferUserPtr - Получить указатель на DMA буфер компьютера
· запуск процесса дискретизации и DMA транзакции:
XdspSampleStart - запуск процесса дискретизации (оцифровки)
XdspDMATransactionStart - запуск DMA транзакции сброса данных из буферной памяти платы в ОЗУ компьютера
· управление режимом внешнего запуска:
XdspExternalStartEnable - Вкл. режим внешнего запуска
XdspExternalStartDisable - Выкл. режим внешнего запуска
SetRExtPuskEdge - Внешний запуск по переднему фронту
SetFExtPuskEdge - Внешний запуск по заднему фронту
· управление АЦП:
XdspWriteDataToADC -
Запись данных в АЦП
· управление буфером предистории;
HistBuffEn - Вкл. буфера предыстории
HistBuffDs - Выкл. буфера предыстории
· настройка процесса оцифровки данных.
XdspSetProcessLength - Установить
количество отсчетов дискретизации и длинну DMA
транзакции
XdspSetSampleFrequencyDivider - Установить делитель частоты процесса оцифровки
XdspAddrCntrToADCDataEnable - Вкл. режим подмены данных АЦП адресным счетчиком
XdspAddrCntrToADCDataDisable - Выкл. режим подмены данных АЦП адресным счетчиком
Сигналы цифровых входов - выходов.
Рисунок 9. Разъем на передней панели (вид спереди).
15 PIN HIGHDENSITY D-SUB FEMALE.
Таблица 6.
|
Имя сигнала |
Назначение |
Номер
контакта на передней панели |
Номера
контакта GND |
|
FPGA_IN1 |
Сигнал
внешнего запуска. |
1 |
2 |
|
FPGA_IN2 |
При
необходимости могут быть задействованны в соответствиии с ТЗ заказчика. |
3 |
4 |
|
FPGA_IN3 |
5 |
6 |
|
|
FPGA_OUT1 |
Сигнал
«временное окно». (Равен
лог. 1 в момент времени когда производится оцифровка
сигнала) |
11 |
12 |
|
FPGA_OUT2 |
Разрешение
внешнего запуска. |
13 |
14 |
|
FPGA_OUT3 |
Инверсиясигнала разрешения внешнего запуска. |
15 |
- |
В комплект входит ответная часть разъема. (Вид спереди).

Рисунок 10. Ответная часть
разъема (вид спереди).
15 PIN
HIGHDENSITY D-SUB MALE.
Размещение
аналоговых входов.

Рисунок 11. Сигналы аналоговых входов.