Jump to content
Vascom

На Сколько Развиты Технологии Быстрых Многоразрядных Ацп?

Recommended Posts

Подскажите, кто в курсе:

  1. На какой максимальной частоте сейчас могут работать 10-12 разрядные АЦП? Знаю, что на 200-250 МГц могут, а быстрее?
  2. Существуют ли вообще АЦП с частотой порядка 1-2 ГГц и какая у них максимальная разрядность?

Share this post


Link to post
Share on other sites

Технология Maxim Integrated nanoPower: когда малый IQ имеет преимущества

При разработке устройств с батарейным питанием важно выбирать компоненты не просто с малым потреблением, но и с предельно малым током покоя. При этом следует обратить внимание на линейку nanoPower производства компании Maxim Integrated. В статье рассмотрено их применение на примере системы датчиков беспроводной оконной сигнализации.

Подробнее

почитайте про последовательно-параллельные АЦП думаю это именно то что вы ищете,

насчет ГГц-овых например Max109(2.2 ГГц), AD83000(3 ГГц), к сожалению только 8 бит, из-за большого числа компараторов при более высоких разрядах их количество становиться очень большим (2^(N) -1).

Edited by rullfek

Share this post


Link to post
Share on other sites
                     

Платы Nucleo на базе STM32G0: чего можно добиться с помощью связки Nucleo и Arduino

Платы Nucleo и платы расширения X-NUCLEO от STMicroelectronics можно интегрировать в платформу Arduino с помощью библиотеки STM32duino. Связка плат Nucleo и платформы Arduino, и наличие готовых библиотек – представляет удобный инструмент для создания прототипов и конечных приложений в условиях ограниченного времени. Статья содержит пошаговые инструкции по установке библиотек и запуску примеров для Nucleo.

Подробнее...

Осциллографы конечно быстрые, но и потребляют они не мало.

Вообще, хотелось бы оцифровывать спутниковый сигнал, например GPS прямо на несущей частоте. И при этом АЦП не должен очень много потреблять, ну не более 0,5Вт.

Share this post


Link to post
Share on other sites

да 0.5 Вт это хорошее ограничение сверхбыстрого вы не получите, где-то 200 - 250 10^6 выборок в секунду

для GPS (Спутники излучают открытые для использования сигналы в диапазонах: L1=1575,42 МГц и L2=1227,60 МГц (начиная с Блока IIR-M), а модели IIF будут излучать также на L5=1176,45 МГц .)(wik)

Согласно теореме Котельникова ( Найквиста - Шеннона ) твоя частота дискретизации (SPS) должна быть в 2 раза больше чем частота сигнала

в итоге 1575.42 * 2 = ~ 3.2 GSPS разрядности 12 бит думаю хватит да наверное более точных не найти ) и тут 0.5 Вт никак (если конечно я не ошибаюсь))

Share this post


Link to post
Share on other sites
хотелось бы оцифровывать спутниковый сигнал
А нахрена, осмелюсь спросить? Жаль, что краба здесь нет, он популярно бы спросил - "нахрена"...

Share this post


Link to post
Share on other sites

Ну по теореме Котельникова не обязательно в два раза больше частоту, можно и в два раза меньше в данном случае.

А оцифровка на несущей нужна для исключения фазовых искажений и точных фазовых измерений.

Share this post


Link to post
Share on other sites
хотелось бы оцифровывать спутниковый сигнал
А нахрена, осмелюсь спросить? Жаль, что краба здесь нет, он популярно бы спросил - "нахрена"...

Полностью согласен с NebsteR

вам сначала нужно принятый сигнал детектировать (демодулировать) а уж потом на более низких частотах и производить необходимые вам операции над сигналом

Ну по теореме Котельникова не обязательно в два раза больше частоту, можно и в два раза меньше в данном случае.

вот тут пожалуйста обьясните чет я вас перестаю понимать

Edited by rullfek

Share this post


Link to post
Share on other sites

Ну как, это же прямо следует из теоремы Котельникова. Частота дискретизации должна быть в два раза больше наивысшей частоты в спектре сигнала. Это потому, что при оцифровке (дискретизации сигнала), спектр как бы накладывается.

Для примера возьмём частоту дискретизации 200 МГц, это значит что сложатся спектры, находящиеся в диапазонах 0-100 МГц, 100-200 МГц, 200-300 МГц и т.д. до бесконечности. Таким образом, если спектр сигнала находится в любом одном из этих диапазонов (а в других ничего нет), то сигнал будет оцифрован без потерь по теореме Котельникова.

Именно таким и является сигнал GPS, ведь его спектр не 0-1575 МГц, а всего 20-40 МГц с центром на частоте 1575,42 МГц.

Так понятно?

Ну и по поводу детектирования/демодулирования сигнала. В GPS используется фазовая манипуляция, там не требуется что-то заранее демодулировать, можно и нужно (в идеале) оцифровать сигнал и далее обрабатывать его в цифровом виде. Это позволяет исключить нестабильность фазовой характеристики (и группового времени задержки) в аналоговой радиочасти, что положительно сказывается на повышении точности определения координат.

Share this post


Link to post
Share on other sites

вы владеете алгоритмами расчёта координат? Холодный старт сможете осуществить? наносекундную точность? осмелюсь спросить что вы делаете в таком случае на этом форуме? :)

я уж и не спрашиваю про скорости работы ПЛИСины которая будет обсчитывать вам 80 мегавыборок в секунду

Share this post


Link to post
Share on other sites

Владею, могу, и точность наносекундную. Да мне интересно, может ещё кто-то этим владеет :)

Ну это всё делает не плисина, а ASIC, но для моделирования небольшой части достаточно плис на Virtex 4 или Altera 5 например.

Share this post


Link to post
Share on other sites

скремблинг коды спутников тоже знаете?

ну да ладно, вопрос риторический...

Успехов...

Share this post


Link to post
Share on other sites

Конечно, в ICD ведь всё написано, ну а P-code можно принимать и так.

Share this post


Link to post
Share on other sites

Мда, ну тогда поправочка 1575+10 МГц

Именно из-за F < 2 * F0 F- частота дискретизации F0 - верхняя граничная частота спектра и возникает упомянутое вами наложение спектров дискретного сигнала (он у него 1 прост периодический) и это очень плохо т.к. вы не сможете различить нужную вам частоты от гармоник = F0+k*F где k - натуральное число и даже ФНЧ с частотой найквиста вас не спасет (он только если эти помехи от внешнего источника )

P.S. да безусловно наложение кое какое есть т.к. спектр не может быть конечным но все же они отсекаются ФНЧ

Обобщаю: неправильная дискретизация аналогового сигнала приводит к тому, что высокочастотные составляющие накладываются на низкочастотные

все же я считаю что нада детектировать

НО вот я нашел кое-что GPS-приемниках частоту L1 гетеродинируют и пускают на АЦП (видимо это лучше сказывается на стоимости конечного продукта)) вот ознакомтесь http://catalog.gaw.r...ocument&id=1499

Edited by rullfek

Share this post


Link to post
Share on other sites

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

Да, цена является важным фактором, но не всегда.

Share this post


Link to post
Share on other sites

Да хз что вы вобще говрите вы противоречите теореме отсчетов (котельникова) как-будто так и должно быть. Из-за неправильно частоты у вас получится неправильный цифровой код, блин, а то что на спутнике там стоит это его личное дело, наши помехи из окружающей среды попадают там молния жахнет или еще чего но это беда решается ФНЧ. Вы только вдумайтесь что вы говрите для частоты 1500МГц вы собираетесь взять допустим 1000МГц в итоге вы точно не отличите 500МГц 1000Мгц и 1500МГц друг от друга у вас неполучится правильно цифрового сигнала здесь проблема другого рода в свертывании всех частот кратных частоте Наквиста это проблема другого рода ее не отфильтровать.

в общем почитайте если будет http://prapor-kot.narod.ru/Lect11.htm здесь все доступно написано

P.S. и поэтому его обязательно необходимо либо гетеродинировать частоту L1, либо детектировать сигнал модулирующий

Edited by rullfek

Share this post


Link to post
Share on other sites

Я не противоречу теореме Котельникова. Перед АЦП естественно должен стоять полосо-пропускающий фильтр, выделяющий лишь нужный сигнал. Поэтому в вашем примере в диапазоне 500 и 1000 МГц будет всё подавлено фильтром и сигналу из диапазона 1500 МГц ничего мешать не будет. Лишь спектр будет инвертирован, но это сущие мелочи. И никакое гетеродинирование и демодулирование в аналоговом виде не требуется, всё это будет выполнено в цифровом виде со всеми преимуществами подобного способа.

Share this post


Link to post
Share on other sites

ну да конечно нобеля епт, решили извечную проблему щелкнув пальцами, все что ты говорите доказывает вашу некомпетентность (Полосо-пропускаущий 100500 порядка поможет вам у него полоса пропускания должна быть в форме Прямоугольника! ))) это нереально я уверен что вы даже 5 порядка не соберете ))

налагаются спектры дискретного сигнала видимо именно этого вы не понимали

image064.gif

При дискретизации с частотой image031.gifспектр аналогового сигнала Xa() не может быть точно восстановлен пропусканием его через ФНЧ из-за наложения репликаций(повторений) соседних спектров. Происходит наложение (aliasing) соседних копий спектра на основную полосу частот сигнала.

image030.gif

Все гармоники с частотами image075.gifв результате дискретизации налагаются друг на друга (подменяют друг друга)

Например, если частота отсчетов Fs = 40 Гц и частота одной гармоники f1 = 10 Гц, а другой f2 = 50 Гц, то image063.gif.

Представим эти дискретные гармоники при дискретизации с частотой 40 Гц

image065.gif

Отсюда видно, что image067.gif, т.е. при такой частоте дискретизации гармоники с частотами 10 Гц и 50 Гц не различимы. Произошло наложение (aliasing) гармоник.

Edited by rullfek

Share this post


Link to post
Share on other sites

Ну а что мешает нам подавить гармонику 10 Гц фильтром, скажем децибел на 30? Тогда проблема исчезнет?

Share this post


Link to post
Share on other sites

Например возьмём ситуацию приближенную к реальной. Попробуем оцифровать сигнал GPS в диапазоне L1 на частоте 1575 Мгц. Частоту дискретизации выберем 2 ГГц, что кажется недостаточным (ведь все считают частота должна быть больше 2х1575), но вы убедитесь, что это не так. Перед дискретизацией применим аналоговый фильтр, его АЧХ не должна быть слишком крутой, такие фильтры сделать не сложно.

Посмотрим на схематическое изображение спектров сигнала до и после преобразований:

post-164632-0-64169300-1357460448_thumb.gif

На первом графике изображён спектр аналогового сигнала на входе антенны (спектры изображены схематично). Как видим, сам сигнал GPS занимает лишь малую часть, остальное помехи.

На втором графике спектр сигнала, после прохождения через аналоговый фильтр, подавляющий помехи. Остаётся лишь сигнал GPS и помехи возле него.

На третьем графике изображён спектр оцифрованного сигнала. Как видим, сигнал GPS цифрован без существенных искажений в полном соответствии с теоремой Котельникова (Найквиста).

Далее с этим цифровым сигналом можно делать всё, что угодно, например удалить оставшиеся помехи цифровым фильтром, переместить спектр GPS в нужное место, ну и подавать полученный сигнал на корреляторы.

То есть вся суть теоремы Котельникова не в "максимальной" частоте в спектре сигнала, а в полосе, занимаемой сигналом. Кстати, то что мы получили перевёрнутый спектр не имеет ни какого значения, его очень просто сдвинуть на половину частоты дискретизации, а можно вообще не двигать, корреляцию можно и так проводить.

Так понятно?

Edited by Vascom

Share this post


Link to post
Share on other sites

будем считать что нет помех вам удалось выделить только нужный сигнал и все

ваш 3-й график справедлив для частоты дискретизации в два раза превышающую максимальную спектральную составляющую

ed1235b0d64e.jpg

Share this post


Link to post
Share on other sites

Отнюдь. При частоте дискретизации 4 ГГц, спектр будет выглядеть иначе. А это именно для 2 ГГц.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By artos5
      Приветствую всех на этом форуме!
      Есть необходимость измерять сигнал при помощи данного АЦП. С помощью этого АЦП можно измерять 4 аналоговых не дифференциальных сигнала . Схема следующая:
      Schematic_Temp_opto_sens_V2_20190817124112.pdf
      Картинками с более низким разрешением:
      библиотеку за основу взял эту:
      https://github.com/nsaspook/nidaq700/blob/master/supermoon/example/ADS1220.c
      Путем незначительного допиливания, получилась такая библиотека:
       
      Поправил только эти функции:
      void ADS1220SendByte(unsigned char Byte) { unsigned char Result = 0x01, i=0, flg=0; MOSI_LO; Delay_us(1); for(i=0;i<8;i++) { SCK_LO; //ADC_CLK=0 Delay_us(4); if (flg) MOSI_LO; Delay_us(1); SCK_HI; //ADC_CLK=1 Delay_us(1); if (Byte&Result){ MOSI_HI; flg=1; } else MOSI_LO; Delay_us(4); Result<<=1; } SCK_LO; //ADC_CLK=0 } unsigned char ADS1220ReceiveByte(void) { unsigned char Result = 0, i=0; for(i=0;i<8;i++) { Result<<=1; SCK_LO; //ADC_CLK=0 Delay_us(5); //Delay_us(5); SCK_HI; //ADC_CLK=1 Delay_us(3); if (MISO) Result++; Delay_us(2); } SCK_LO; //ADC_CLK=0 return Result; } И добавил эту функцию:
      void ADS1220Config_MUX_GAIN(uint8_t mux, uint8_t gain) { unsigned Temp; ADS1220ReadRegister(ADS1220_0_REGISTER, 0x01, &Temp); // clear prev value; Temp &= 0x0f; Temp |= gain; Temp |= mux; // write the register value containing the new value back to the ADS ADS1220WriteRegister(ADS1220_0_REGISTER, 0x01, &Temp); ADS1220ReadRegister(ADS1220_1_REGISTER, 0x01, &Temp); // clear prev DataRate code; Temp &= 0x1f; Temp |= (ADS1220_DR_600 + ADS1220_CC); // Set default start mode to 600sps and continuous conversions // write the register value containing the new value back to the ADS ADS1220WriteRegister(ADS1220_1_REGISTER, 0x01, &Temp); } ADS1220.h :
      в результате получаю такую осциллограмму :

      То есть , постоянно считывается 0.
      А вот регистры конфигурации:
      Задаю номер входа MUX и усиление :
       

       
      Читаю данные так:
      ADS1220Config_MUX_GAIN(ADS1220_MUX_0_G, ADS1220_GAIN_1); HAL_Delay(10); temp_[0] = ADS1220ReadData(); Это для 0 канала. 
      Пробовал и так:
      ADS1220SetChannel(ADS1220_MUX_0_G); ADS1220SetGain(ADS1220_GAIN_1); temp_[0] = ADS1220ReadData(); Результат аналогичный. Кто что подскажет? Может кто заметит какой косяк в коде? Уже голова дымит ..
    • By maxssau
      Продам адаптеры USB-I2S. 

       
      Возможности:
       
      стерео ввод/вывод PCM 16-32 бита, 44.1-384 кГц. Ввода DSD нет, как и драйверов для ввода DSD.
      вывод DSD в режиме DoP 64-128, в режиме Native 64-256. Native доступен в Linux без "хитрых" драйверов.
      Тактирование от платы ЦАП/АЦП, частоты 512 fs (22.5792/24.576 МГц). Теоретически возможно и 1024fs(скорости 768кГц и DSD512 Native), но это не опробовано.
      Гальваническая изоляция на Si8662/Si8640.
      Питание возможно как Self так и Bus Powered. В режиме Bus Powered необходимо самостоятельно позаботиться о мастерклоке, т.к. возможны сильные глюки при выключенном генераторе мастерклока.
       
      Тема: 
      срок изготовления 3-5 недель (сильно зависит от поставок процессоров).
      На данный момент полностью реализован интерфейс Legacy. Для отладки Native режима пока нет платы ЦАП, в процессе разработки, будет не раньше осени.
      Цена 6000 + пересылка (в среднем 250 р.).
    • By pryanic
      Доброго времени суток. Понадобилось разобраться с АЦП.  Основной материал использовал Евстифеева (микроконтроллеры семейства мега) и учебный курс Di-Halt.
      На первый раз задача простая - обработать напряжение с переменного резистора и послать по UART в терминал. С терминалом уже кое-что делал, так что тут вряд ли косяк есть.
      Кратко опишу программу: каждую секунду в обработчике прерывания таймера (не совсем точно, прерывание по переполнению Т0) запускаю преобразование АЦП установкой в 1 бита ADSC. 
      В обработчике прерывания АЦП читаю байт ADCH (выравнивание по левому краю ADLAR=1) и шлю по уарт. Но в терминал приходят одни FF независимо от положения движка потенциометра (подключен к PC1 средним контактом, крайними на землю и AVCC)
       
       
      ADC_test.zip
×
×
  • Create New...