Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


E440: баг в железе или в прошивке?

Вы не вошли.

 Поиск | Регистрация | Вход 

Сергей
31.01.2005 18:05:40
#1

Гость

E440: баг в железе или в прошивке?

Как-то странно себя ведёт E-440. Если кто может, попробуйте поставить такой эксперимент (ничего сложного делать не надо): подключите 1-й канал ЦАП (контакт 1 аналогового разъёма) к 1-му каналу АЦП (контакт 37) и соедините общие выводы ЦАП и АЦП (контакты 3 и 21). Т.е. просто надо подать выход ЦАП на АЦП. Теперь, запустите PowerGraph 3.1 (можно демоверсию), зайдите в конфигурирование E-440, сконфигурируйте 1-й канал АЦП на работу без синхронизации, на Single X1, а в ЦАП включите вывод пилообразного напражения (Ramp) с максимальной амплитудой и частотой 1 или 5 Гц. Далее, нажмите Start для ЦАП закройте диалог конфигурации E-440.

В основном окне, установите показ только одного канала, проверьте, что он соответствует каналу 1 АЦП. Поставьте максимальную частоту опроса АЦП (400 кГц), а временной масштаб (внизу слева) - на 200:1. Включите запись (Start) и через секунд 5-10 - Stop.

Не знаю как у вас, а у меня получается очень странная пила: половина "зуба" - более или менее, а вторая половина состоит из двух коротких "зубьев" с косой "лестницей". Такое ощущение, что после вывода половины буфера ЦАП пытается дёргать USB, занимая полосу и не пуская поток с АЦП.

Такое наблюдается на частотах опроса ЦАП 200-400 кГц. Ниже - всё нормально. Плата E-440 загружалась штатным BIOS с версией 2.00 (кажется 2003-й год). Пробовал версию 0 - всё то же самое.

Вопрос 1: почему так получается? Возможный ответ про ограниченную полосу USB 1.1 не принимается, т.к. точно такое же поведение платы наблюдалось, когда в другой программе заполнение буфера ЦАП проводилось заранее, и во время работы АЦП передача должна была идти только в одну сторону (не считая контрольных пересылок). Кроме этого, я попробовал, как тут выражаются, "подрихтовать" код DSP и убрал дёргание по PF3 вообще. В результате все "зубья" стали одинаковыми, но - с косой лестницей, т.е. всё равно данные где-то теряются.

Вопрос 2: как сделать, чтобы ЦАП спокойно циклически выводил свой буфер, не трогая USB, а АЦП при этом ровно заполнял свой буфер на частотах 200-400 кГц и без потерь выводил по USB набранные данные?

А пока получается, что у меня E-440 не соответствует заявленным характеристикам, поскольку не работает надлежащим образом на частоте 400 кГц, гарантированной производителем. Или я не прав?

31.01.2005 19:51:31
#2

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,494

Re: E440: баг в железе или в прошивке?

Одновременно АЦП и ЦАП могут работать на частотах до 100 кГц. Если же АЦП работает один, то его максимальная частота составляет 400 кГц.

Сергей
31.01.2005 20:10:27
#3

Гость

Re: E440: баг в железе или в прошивке?

Ну, во-первых, об этом следовало бы указать в технических характеристиках модуля. Ведь мы его покупали под задачу, где нужно выводить и вводить сигнал одновременно на частоте 100 кГц, но при этом, АЦП должен собирать данные с 4х каналов. Когда я увидел, что это не получается, пришлось заняться экспериментами, заметьте - в своё рабочее и свободное время. Вот в результате и обнаружилась эта неприятность.

Кроме этого, может быть Вы всё-таки объясните, почему нельзя реализовать такой режим? Пропускной способности USB 1.1 должно хватать - при цикличном автономном выводе из своего буфера АЦП не должен трогать USB, а 400 кГц на 16 бит вполне должны пропускаться по интерфейсу. Режим автобуфферризации ЦАП, судя по описанию платы и ADSP 2185 - работает. Что мешает?

Сергей
31.01.2005 21:41:21
#4

Гость

Re: E440: баг в железе или в прошивке?

> ... при цикличном автономном выводе из своего
> буфера АЦП не должен трогать USB ...

Я имел в виду ЦАП, конечно. Пардон за очепятку.

И ещё - почему, все-таки отключение "дёргания" PF3 не помогает? AVR сам проверяет ЦАП на "заворот" по буферу?