Полная версия этой страницы:
проблема с АЦП
alexPec
Nov 9 2010, 22:44
Господа, подскажите, что за эффект нехороший такой: АЦП AD7625, когда код на выходе -8000..+8000 все вроде нормально более менее сходится с даташитом, когда код больше 8000 (цифра примерная) или меньше -8000 почему-то дискретность изменения вырастает до 64 дискретов (на картинках). Самое странное, что когда на один вход сигнал подаешь(дифф. вход у АЦП, сигнал подаю только на 1 вход, второй - на VCM-середина рефренса) ступеньки больше на фронте сигнала проявляются, на другой вход подаешь - на спаде (два рисунка, один когда сигнал на + подан, второй - когда на -).
Вряд ли шина, думаю, т.к. выход последовательный, кз между битами быть не может, да и на одном фронте ведь нормально все. Может все-таки неправильно поцепил чего? Использую внутренний рефренс и буфер. Непонятно!
Гуру, поясните пожалуйста физику процесса!!!
rezident
Nov 9 2010, 23:32
Симптомы напоминают выход из допустимого диапазона входных синфазных напряжений.
firstvald
Nov 9 2010, 23:51
Посмотрите табл 2 даташита самое начало. Вы по входу за опору пополам не вышли?
Common Mode Input Range VREF/2 – 0.1 VREF/2 VREF/2 + 0.1 V
alexPec
Nov 10 2010, 07:25
Цитата(firstvald @ Nov 10 2010, 02:51)

Посмотрите табл 2 даташита самое начало. Вы по входу за опору пополам не вышли?
Common Mode Input Range VREF/2 – 0.1 VREF/2 VREF/2 + 0.1 V
Блин, я олень, согласен. По ходу вышел. Я цеплял сигнал только на один вход, другой - к VCM (2,048В), Опора-4,096В. А тогда вопрос такой, может любезно просвятите?
Драйвить входы надо строго в противофазе? Из-за этого и беда, ведь если один вход на VCM, а другой - на сигнале, тогда получается что common mode прыгает, я правильно понял?
Спасибо за ответ!
alexPec
Nov 10 2010, 22:25
А все таки, в чем собственно суть-то процесса? Хочется понять, почему при смещении common mode на разряд АЦП ошибается. Если на приведенном сигнале появляются ступеньки, то на другом сигнале появляются выбросы, причем не в 64, а в 8192 дискрета. Хотя в этом случае драйвится АЦП дифф. сигналом, но похоже из-за неодинакового импеданса + и - ацп common прыгает (меряю осцилом на середине делителеля 1:1 подключенного между + и - ). С отключенными входами АЦП все нормально, common не прыгает (когда к выходу источника цепляешь только делитель). Причина та же? И главное ПОЧЕМУ ТАК?
firstvald
Nov 10 2010, 22:42
Коротко отвечу. Это режим для мостовых датчиков - тензомостов. В датчиках давления такие используются. К диагонали моста подключаемся входами ацп и все сразу получается. Один разряд наверное знаковый, я конкретно ваш ацп не смотрел - заглянул в пдф и все, пользую 7793, но грабли похожие.
Немножко добавлю. Вполне может быть и баг какой. Я когда разбирался со своим ацпшником то увидел, что он работает вовсе не так как можно было бы предположить. Пришлось изучать. Нащупал метод как с него получить правдоподобный сигнал. Посмотрите - может вам надо считывать пару раз , а то и три раза и брать последний результат считывания. Вполне может быть, что считывать надо в определнном временном окне, после преобразования. Чуть дольше подождал - мусор. Я с этим столкнулся. Попробуйте в цикле почитать после преобразования и писать в массив, может даже удивитесь.
alexPec
Nov 22 2010, 22:09
Помогите, люди добрые, ничего не понимаю. Думал вся беда (ошибки на разряд) в том что common voltage прыгает за пределы допустимого. Дождался оперов, рекомендованных в пдф-е, запаял, common voltage в пределах допустимого, но картина та же! Ошибки на разряд. Уточню - ошибки повляются при коде большем по модулю 6000..6200. При этом старшие два бита почему-то одинаковы ВСЕГДА (т.е. знаковый и старший числовой разряд), Поэтому код не выходит никогда за пределы +/- 14500. Пробовал и временные интервалы двигать, и частоту дискретизации менять - картина не меняется. Читаю ПЛИСом, ошибок в формировании сигналов и считывании нет - все проверил сигналтапом, все как в пдф-е. АЦП ДОХЛЫЙ??? Хочу услышать мнения специалистов до того как АЦП менять. Может еще что проверить, из-за чего такое может быть?
alexPec
Nov 23 2010, 09:42
ПОМЕНЯЛ АЦП - НИКАКОГО ЭФФЕКТА!!! ЧТО ДЕЛАТЬ???
Проверяю на сигнале (нарисован в посте #5)f. Также выбросы 8192 дискрета. Отклонение Common mode порядка 25 мВ от середины Vref. Че за ботва??? Pdf уже наизусь скоро выучу. Кого бы вызвать, с каким бубном по какому кругу пройти??
Тут в подобных случаях предлагают разве что биографии великих людей читать. Попрактиковать чтоли???
Цитата(alexPec @ Nov 23 2010, 12:42)

Тут в подобных случаях предлагают разве что биографии великих людей читать. Попрактиковать чтоли???
Есть книги, семинары от AD. В том числе переведенные и доступные в сети. Рекомендации там глубже, чем в даташитах.
(прямо на обложке пример связки ad8139 с ad7674 с внешним vref)
alexPec
Nov 25 2010, 12:09
Творческий поиск привел к следующему, может понадобится кому.
При амплитудах ниже +/-6000 отсчетов все работает нормально. Если амплитуда выше +/-6000 то:
1. При входных частотах (частотах аналогового сигнала) ниже ровно 1,5*fд – полторы частоты дискретизации также все нормально.
2. При входных частотах выше 1,5*fд появляются выбросы, причем зависимость такая: чем входной аналоговый сигнал выше планки в 1,5*fд, тем больше выбросов, и чем выше входной сигнал планки +/-6000 отсчетов, тем больше выбросов.
На рисунках привел два синуса оцифрованных, один (без выбросов) чуууть меньше 1,5*fд, другой (с выбросами) чуууть больше 1,5*fд. То что выбросы зависят от частоты входного сигнала подтверждается следующим: подаю на вход сигнал порядка 25 кГц, но прямоугольный (т.е. получается с высшими гармониками), вижу (две картинки прямоугольного сигнала): при амплитуде меньше +/-6000 все ОК, выше 6000 – выбросы при некоторых переходах сигнала. Пробовал подавать прямоугольники вплоть до килогерца – выбросы все равно есть при больших амплитудах. Дальше только эмоции!
А хотя (за ногу их!!!) в даташите есть строчка: Input analog signal bandwidth – (аж!) 100 MHz. Какие уж там, простите, на хрен 100 МГц, для какого такого сигнала???
Как такое понимать, к чему это написано, нельзя было написать просто <1.5*Fд???
Обратил внимание на графики – все графики заканчиваются на сотнях килогерц или приведены для сигналов 2кГц, 20кГц.
Че делать – не знаю! Похоже менять АЦП и плату переразводить. На что менять? Опять нарвешся!
PS. Два АЦП поменял, ведут себя абсолютно одинаково.
Вот такая ботва, бывает не до смеха (С)!
firstvald
Nov 25 2010, 12:33
блин, а вы для начала на постоянном токе не пробовали смотреть как ацп работает?
alexPec
Nov 25 2010, 18:04
Цитата(firstvald @ Nov 25 2010, 15:33)

блин, а вы для начала на постоянном токе не пробовали смотреть как ацп работает?
А на постоянке все ОК, я же пишу, все ОК от постоянного тока до 1,5*Fд. Свистопляска начинается с частот (входного сигнала) 1,5*Fд и выше.
В данном случае АЦП вообще не обязан вменяемо работать, так как рабочая полоса частот входного сигнала выше половины частоты дискретизации.
Цитата(Timmy @ Nov 27 2010, 13:23)

В данном случае АЦП вообще не обязан вменяемо работать, так как рабочая полоса частот входного сигнала выше половины частоты дискретизации.
Работать как бы всё равно должен, непонятно другое: для чего это нужно?
Alexashka
Nov 28 2010, 12:26
Цитата(alexPec @ Nov 25 2010, 21:04)

А на постоянке все ОК, я же пишу, все ОК от постоянного тока до 1,5*Fд. Свистопляска начинается с частот (входного сигнала) 1,5*Fд и выше.
Вот для этого и делаются оценочные платы, купил, поигрался- не понравилось-выкинул. Тока я сильно сомневаюсь что с их оценочной платой будут какието проблемы, скорей всего проблема тут не в АЦП. Тайминги не те, разводка плохая, ОУ по входу не те стоят. Пульсары очень критичны к вопросу драйвления. Можно в поддержку написать, возможно вопрос известный, подскажут.
Understanding PulSAR ADC Support Circuitry
alexPec
Nov 29 2010, 09:07
Цитата(Alexashka @ Nov 28 2010, 15:26)

Вот для этого и делаются оценочные платы, купил, поигрался- не понравилось-выкинул. Тока я сильно сомневаюсь что с их оценочной платой будут какието проблемы, скорей всего проблема тут не в АЦП. Тайминги не те, разводка плохая, ОУ по входу не те стоят. Пульсары очень критичны к вопросу драйвления. Можно в поддержку написать, возможно вопрос известный, подскажут.
Understanding PulSAR ADC Support Circuitry А я думаю в АЦП!
1. Тайминги формируются Плл-ом, на симуляторе все идеально, везде с запасом.
2. По входу все точно так как в даташите уже сделал, с теми же операми - не помогает
3. Разводка - дифпары 50 Ом, по рекомендациям Альтеры, длина максимум 3 см., частота считывания по LVDS 100 МГц.
А тогда как Вы объясните что пики появляются СТРОГО после 1,5*Fд, с точностью до 100 Гц при частоте дискретизации 6 МГц ? ДО 1,5*Fд ВСЕ ОК, НА ЛЮБЫХ АМПЛИТУДАХ. Не может же быть косяк в разводке, который проявляется строго после 1,5Fд.
Цитата
В данном случае АЦП вообще не обязан вменяемо работать, так как рабочая полоса частот входного сигнала выше половины частоты дискретизации.
Здравствуйте! Аналог почти во всех АЦП пишет и графики приводит для частот сигнала выше частот дискретизации. У них же на входе T/H (по русски УВХ) стоит. А зачем, простите, делать тогда полосу аналогового сигнала 100 МГц для АЦП с частотой дискретизации 6 МГц?
Цитата(alexPec @ Nov 29 2010, 11:07)

Здравствуйте! Аналог почти во всех АЦП пишет и графики приводит для частот сигнала выше частот дискретизации. У них же на входе T/H (по русски УВХ) стоит. А зачем, простите, делать тогда полосу аналогового сигнала 100 МГц для АЦП с частотой дискретизации 6 МГц?
Так УВХ, насколько я понимаю, также синхронизировано с частотой дискретизации. Выбросы, можно предположить, связаны именно с быстрым изменением входного сигнала во время смены состояний "сэмпл-холд"и биениями. А широкую полосу они, имхо, лишь для минимизации искажений сигнала делают.
А Вы, конкретно, что хотите получить от оцифровки частот выше частоты Найквиста? Стробоскопический эффект?
alexPec
Nov 29 2010, 16:56
Цитата(Herz @ Nov 29 2010, 18:24)

Так УВХ, насколько я понимаю, также синхронизировано с частотой дискретизации. Выбросы, можно предположить, связаны именно с быстрым изменением входного сигнала во время смены состояний "сэмпл-холд"и биениями. А широкую полосу они, имхо, лишь для минимизации искажений сигнала делают.
А Вы, конкретно, что хотите получить от оцифровки частот выше частоты Найквиста? Стробоскопический эффект?
А все просто: если оцифровываем например частоту ПЧ 38 МГц, выхватывая оттуда семплы с частотой 6 МГц, то получаем на выходе оцифрованный сигнал с частотой (центральной) (38-6*6) = 2 МГц. А так бы пришлось к примеру ставить АЦП с дискретизацией не меньше 76 МГц. Это из документов аналог девайса прочитал, только щас не найду уже. Они там каким-то АЦП на дискретизацию порядка 5-10 МГц оцифровывали сигнал на несущей порядка 50 МГц. Если полоса сигнала не выше половины частоты дискретизации, то это самое то- на много дешевле чем ставить АЦП с дискретизацией 2*fвх
Ясно. А с ПЧ в этом случае надо делать синхронизацию?
alexPec
Nov 30 2010, 06:17
Цитата(Herz @ Nov 29 2010, 22:36)

Ясно. А с ПЧ в этом случае надо делать синхронизацию?
Нет, в том то и красота. Просто неточность генератора приведет к смещению на trunc(fпч/fд)*(смещение частоты генератора) всех частот спктра.
Цитата(alexPec @ Nov 29 2010, 15:07)

Здравствуйте! Аналог почти во всех АЦП пишет и графики приводит для частот сигнала выше частот дискретизации. У них же на входе T/H (по русски УВХ) стоит. А зачем, простите, делать тогда полосу аналогового сигнала 100 МГц для АЦП с частотой дискретизации 6 МГц?
Не следует путать понятия полосы частот и несущей частоты. Действительно, многие АЦП могут нормально работать с сигналом, несущая частота которого превышает частоту дискретизации АЦП(кстати, строгой синхронизации с несущей это не требует). Естественно, такой сигнал должен быть синусообразным, а иначе он будет широкополосным, что уже недопустимо.
В частности, сигнал после УПЧ можно корректно оцифровать с частотой ниже ПЧ, если полоса пропускания УПЧ меньше половины частоты дискретизации. Плюс еще требуется определенная разность(но нестрогая) несущей частоты и частоты дискретизации.
alexPec
Dec 17 2010, 17:45
Цитата(Timmy @ Dec 17 2010, 22:57)

В частности, сигнал после УПЧ можно корректно оцифровать с частотой ниже ПЧ, если полоса пропускания УПЧ меньше половины частоты дискретизации. Плюс еще требуется определенная разность(но нестрогая) несущей частоты и частоты дискретизации.
Можно, но не этим АЦП. У меня полоса сигнала в 20 раз ниже половины частоты дискретизации, а вот несущая примерно в 2 раза выше частоты дискретизации - все равно, с позволенья сказать, жопа!
Собственно я об этом и писал в посте #18...
rudy_b
Dec 17 2010, 21:26
Очень похоже на сбои в тайминге. Попробуйте тщательно проверить все задержки и моменты защелкивания сигналов в PLD. И, заодно, моменты выдачи CNV относительно фронтов Clk. С учетом задержек в PLD.
Цитата(alexPec @ Dec 17 2010, 23:45)

Можно, но не этим АЦП. У меня полоса сигнала в 20 раз ниже половины частоты дискретизации, а вот несущая примерно в 2 раза выше частоты дискретизации - все равно, с позволенья сказать, жопа!
Собственно я об этом и писал в посте #18...
Просто меня смущает, что на осциллограмме Вы приводите прямоугольный сигнал. Хотя оцифровывать 50МГц этот АЦП действительно никак не сможет, что следует из характеристик его входной цепи(там в даташите нарисовано) и acquisition time. С 10МГц, возможно, он еще кое-как справится, с деградацией SFDR и еще чего-нибудь. А то, что в даташите написано про 100МГц - это, похоже, какая-то ошибка.
alexPec
Dec 18 2010, 05:55
Цитата(rudy_b @ Dec 18 2010, 03:26)

Очень похоже на сбои в тайминге. Попробуйте тщательно проверить все задержки и моменты защелкивания сигналов в PLD. И, заодно, моменты выдачи CNV относительно фронтов Clk. С учетом задержек в PLD.
Не может быть там сбоев, весь уже из...ся, в симуляторах проверял, сигнал-тапом в квартусе, осциллографом - все ОК, с запасом. Пришел к выводу - неизбежно менять АЦП.
rudy_b
Dec 18 2010, 12:05
Я тоже несколько раз так думал. Проверяя все, до единиц наносекунд. А потом обнаруживал либо незамеченное ранее требование к запаздыванию сигналов, либо свою ошибку в формировании тайминга.
Green_Smoke
Dec 18 2010, 13:55
Очень похоже на гличи!!!
На некоторых частотах происходит рассинхронизация данных и такта. Это может быть из-за неудачной разводки сигналов на ПП. Необходимо проверить в какой момент считываются данные. Все это надо сделать на интересующей вас частоте.
EvgenyNik
Dec 18 2010, 18:07
Знаете, на что это похоже? На проникновение входного сигнала в цепи управления автомата АЦП через емкостные связи или защитные диоды по питанию (если такие есть внешние и выбраны низкочастотные). Причём, либо непосредственно в цепи управления, либо через подъём нуля, если подводка нуля к АЦП реализована слабо. Такое встречается, если источник сигнала имеет либо общий ноль с блоком питания АЦП, либо хорошую емкостную связь между гальванической развязкой.
Соответственно, происходит ситуация, когда АЦП "ловит" лишний тактовый или преждевременный старт конверсии.
У меня была такая ситуация, когда при испытании на наносекундный импульс, АЦП срывался и "нёс ахинею". Вылечилось добавкой малых емкостей непосредственно у управляющих пинов АЦП. Но не такой шустрый, конечно, был АЦП.
alexPec
Dec 19 2010, 19:09
Цитата(Евгений Николаев @ Dec 19 2010, 00:07)

Знаете, на что это похоже? На проникновение входного сигнала в цепи управления автомата АЦП через емкостные связи или защитные диоды по питанию (если такие есть внешние и выбраны низкочастотные). Причём, либо непосредственно в цепи управления, либо через подъём нуля, если подводка нуля к АЦП реализована слабо. Такое встречается, если источник сигнала имеет либо общий ноль с блоком питания АЦП, либо хорошую емкостную связь между гальванической развязкой.
Соответственно, происходит ситуация, когда АЦП "ловит" лишний тактовый или преждевременный старт конверсии.
У меня была такая ситуация, когда при испытании на наносекундный импульс, АЦП срывался и "нёс ахинею". Вылечилось добавкой малых емкостей непосредственно у управляющих пинов АЦП. Но не такой шустрый, конечно, был АЦП.
Воткстатида! Спасибо, надо проверить. Хотя развязка вроде хорошо сделана: земля - плейн на двух слоях с кучей переходных отв., на каждое (аналоговое) питание - ряд кондеров (керамика) 0603, 0805, 1201, номиналы 1000п, 0,1мкф, 10 мкф, оттащены от ног АЦП буквально на 2 мм. Все-таки грешу на АЦП, уж очень напрягает то, что пики появляются (на синусе) ровно после 1,5Fд. Это ж как я удачно должен накосячить в разводке, кондерах по питанию и т.д. чтоб такую ровную граничную цифру получить.

Уже плату под другой АЦП готовлю.
Цитата
Очень похоже на гличи!!!
На некоторых частотах происходит рассинхронизация данных и такта. Это может быть из-за неудачной разводки сигналов на ПП. Необходимо проверить в какой момент считываются данные. Все это надо сделать на интересующей вас частоте.
Не, ну как гличи? Какая рассинхронизация? Получается что если ВХОДНОЙ сигнал (синус) частотой до 1,5Fд - ниче не гличит, а подаешь на ВХОД синус выше (в цифровой части ничего не меняется, ни частоты, ни фазы - только меняем частоту входного аналогового сигнала) - гличи появляются. Так не бывает, ну разве что ооочень редко, как тут писали, раз в миллирад лет может...
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.