|
|
  |
Как поднять разрешающую способность АЦП, с 10-разрядов до 12..16 разрядов |
|
|
|
Feb 21 2008, 05:15
|
Бывалый
    
Группа: Свой
Сообщений: 1 584
Регистрация: 7-08-07
Пользователь №: 29 615

|
Цитата(tyro @ Feb 20 2008, 18:01)  А теперь, если возможно, поподробней: как делается усреднение во временной области и как усредняются амплитудные спектры?  Первый подход используется как правило в АСУТПышных задачах, второй в локации, сейсмике, поиске нефти, может быть, в астрономии и газоанализе (на выбор, может еще какие-то направления). Для усреднения во временной области не требуется БПФ, для второго варианта требуется обязательно, т.к.сигнал намного меньше уровня шума.
|
|
|
|
|
Feb 21 2008, 08:11
|

Любитель Кошек
    
Группа: Свой
Сообщений: 1 593
Регистрация: 8-06-06
Пользователь №: 17 873

|
Цитата(729 @ Feb 20 2008, 18:16)  Вы серьезно? Конечно серьезно (особенно если учесть тематику подфорума)  . Изначально резануло слух (математику учил давно, и поэтому вполне возможно что термины понимаю неправильно) - "Я амплитудные спектры усредняю, а не сигнал во временной области", при этом для получения спектра сигнала используется БПФ, и соответственнокак получить отсчеты для него не на временном интервале для меня "уму не растяжимо"  . После "не растяжения" пришло (может и не правильное) понимание, что описывается фильтрация входного сигнала. Особенно паразило число исходных отсчетов, число прореженных (усредненых) и соответствующее им число БПФ, а также число усреднений. Вот и хотелось бы узнать, каким образом предлагаемый алгоритм поднимает разрешающую способность АЦП? Накладные расходы для его реализации (как в описанном примере) в режиме реального времени , мягко говоря, не хилые. Если описанный алгоритм поднимает разрешающую способность АЦП, то хотелось бы что-то типа "Солдатской инструкции": - Имеем N- разрядный АЦП, у которого нелинейность (ILN,DNL) - такая то. С целью достижения отсутствия ошибок от нелинейности (или их снижения до величены) делаем следующее: 1. Проиводим выборку исходя из ... ...................................................... N.получаем результат Или может здесь решается другая задача: - Имеем N- разрядный АЦП, с цель получения достоверных результатов с разрядностью, превышающих разрядность АЦП на К разрядов делаем следующее: 1. ......... .............. N. получаем результат Или здесь описан алгоритм фильтрации сигнала не имющий непосредственного отношения к повышению разрешающей способности АЦП?
--------------------
По современному этикету, в левой руке держат вилку, в правой - мышку.
|
|
|
|
|
Feb 21 2008, 21:21
|
Местный
  
Группа: Участник
Сообщений: 312
Регистрация: 21-10-05
Пользователь №: 9 952

|
Цитата(alexander55 @ Feb 21 2008, 08:15)  Первый подход используется как правило в АСУТПышных задачах, второй в локации, сейсмике, поиске нефти, может быть, в астрономии и газоанализе (на выбор, может еще какие-то направления). Для усреднения во временной области не требуется БПФ, для второго варианта требуется обязательно, т.к.сигнал намного меньше уровня шума. Попытаюсь ответить сразу всем участниками ветки. Первый подход - усреднение во временной области - классическая фильтрация скользящим средним. АЧХ такого фильтра хорошо известна. Напомню, что фильтрация во временной области (свертка последовательности отсчетов с ИХ фильтра, ИХ фильтра в данном случае является последовательностью их N единиц) равносильна умножению спектра последовательности (отсчетов сигнала) на АЧХ фильтра. Второй подход - усреднение амплитудныхспектров - имеет два аспекта. 1. Очевидно, что ОДПФ от амплитудного спектра какого-то сигнала даёт АКФ исходного сигнала, но не сам сигнал. То есть, усреднение амплитудных спектров не эквивалентно усреднению сигнала во временной оласти. 2. Усреднение амплитудных спектров не эквивалентно усреднению АКФ исходного сигнала (ИМХО, нужны доказательства, которых у меня сейчас нет). Усреднение амплитудных спектров используется в стат. обработке шумоподобных сигналов для повышения достоверности оценок их спектральной плотности. Сие можно посмотреть у Марпла-ил., там достаточно хорошо про это написано. Ну а если совсем в лоб, то усреднение амплитудных спектров эквивалентно умножению АКФ исходного сигнала на АВХ (амплитудно временную характеристику) фильтра скользящего среднего в частотной области (тут необходимо пересчитать или перевести АЧХ скользящего среднего во временную область). Для понимания сего необходимо выписать все формулы (непрерывное ПФ и ДПФ) в виде преобразования обобщенных f(x) в F(y) (пусть х - время, y - частота). А затем во всех формулах тупо заменить x на y и наоборот. При этом надо иметь в в виду, что ряд Фурье и проебразование Фурье есть совершенно разные вещи. Кстати, через такую замену очень наглядно доказывается теорема Котельникова. И именно так доказывается, что модель дискретизированного во времени сигнала имеет вид не широко распространённого xd(t)=Sum(k)(x(kdt)*delta(t-kdt)), а точного xd(t)=dt*Sum(k)(x(kdt)*delta(t-kdt)), Где xd(t) - дискретизированный во времени сигнал (принадлежит пространству непрерывных по времени функций, или пространству L, и имеет размерность исходного сигнала x(t)). Цитата(tyro @ Feb 21 2008, 11:11)  Конечно серьезно (особенно если учесть тематику подфорума)  . Изначально резануло слух (математику учил давно, и поэтому вполне возможно что термины понимаю неправильно) - "Я амплитудные спектры усредняю, а не сигнал во временной области", при этом для получения спектра сигнала используется БПФ, и соответственнокак получить отсчеты для него не на временном интервале для меня "уму не растяжимо"  . После "не растяжения" пришло (может и не правильное) понимание, что описывается фильтрация входного сигнала. Особенно паразило число исходных отсчетов, число прореженных (усредненых) и соответствующее им число БПФ, а также число усреднений. Вот и хотелось бы узнать, каким образом предлагаемый алгоритм поднимает разрешающую способность АЦП? Накладные расходы для его реализации (как в описанном примере) в режиме реального времени , мягко говоря, не хилые. Если описанный алгоритм поднимает разрешающую способность АЦП, то хотелось бы что-то типа "Солдатской инструкции": - Имеем N- разрядный АЦП, у которого нелинейность (ILN,DNL) - такая то. С целью достижения отсутствия ошибок от нелинейности (или их снижения до величены) делаем следующее: 1. Проиводим выборку исходя из ... ...................................................... N.получаем результат Или может здесь решается другая задача: - Имеем N- разрядный АЦП, с цель получения достоверных результатов с разрядностью, превышающих разрядность АЦП на К разрядов делаем следующее: 1. ......... .............. N. получаем результат Или здесь описан алгоритм фильтрации сигнала не имющий непосредственного отношения к повышению разрешающей способности АЦП?  Попытаюсь пояснить, но попозже. Сейчас просто уже поздно.
|
|
|
|
|
Feb 21 2008, 22:35
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(729 @ Feb 20 2008, 15:20)  ...Давайте рассуждать так. INL определяется через DNL разных кодов. Фактически, INL говорит только о том, каково максимальное число последовательно идущих ошибок одного знака от DNL в коде АЦП при линейно возрастающем напряжении. Простите, но мне кажется, что Ваше определение не совсем верно, и уж, во всяком случае, весьма расплывчато. INL определяется как функция отклонения реальной характеристики преобразования АЦП от идеальной (некого отрезка прямой, который разными производителями может быть проведен различными способами). Т.е., просто разность этих характеристик. DNL определяется, как производная уже от INL. Если говорить об INL и DNL в численном смысле, то это максимум модуля этих функций (реже приводят + и - значения раздельно). В этом смысле, конечно, dither уменьшает также и INL. Об уменьшении именно DNL здесь речь шла, насколько я понимаю, из-за того, что этот параметр шумом в 1-2 EMR RMS уменьшается радикально, т.е., в несколько раз, тогда, как INL - в гораздо меньшей степени. Дальнейшее уменьшение INL может быть достигнуто увеличением уровня шума (особенно внеполосного). В случае широкополосного шума эффективность такого метода весьма низка - дальнейшее уменьшение получается небольшим, а степень передискретизации для достижения заданного уровня выходного шума резко растёт (квадратично по отношению к RMS шума). Цитата(729 @ Feb 20 2008, 15:20)  ...При этом уровень INL не связан с энергией и спектром сигнала ошибок. Не могли бы пояснить? Простите, но я считал точно наоборот. Цитата(729 @ Feb 20 2008, 15:20)  ...Можно привести примеры последовательностей кодов с малым INL, но большой энергией сигнала ошибки. И наоборот... Здесь, видимо, путаница в определениях. Если не трудно, дайте Ваше определение, только более чётко, чем ранее. Иначе непонятно... Цитата(729 @ Feb 20 2008, 15:20)  ...И теперь давайте посмотрим на спектрограммы AD9042, приведенные в статье по первой ссылке. INL у AD9042 = 0.75 LSB, а DNL = 1.25 LSB, соизмеримые числа. В этом нет ничего удивительного. Например, если соседние значения INL будут +0,75LSB и -0,75LSB, то из первая разность (производная) даст даже 1,5 LSB DNL на этом участке. Цитата(729 @ Feb 20 2008, 15:20)  ...Частокол в спектре продуктов обеих нелинейностей весьма внушителен, уровни -90дБ и выше. После подмешивания шума продукты нелинейностей «приподняли» шумовую дорожку (что и понятно), но их уровни ниже -100дБ. Вопрос – где в спектре неубитые продукты от INL?.. Сделаем уровень сигнала побольше, и увидим гармоники. Эти хитрецы не зря подают входной сигнал низким уровнем, но нас-то не проведёшь.  А вот подай они сигнал с размахом в полную шкалу, тогда мы и полюбовались бы на "малый" уровень гармоник... Они и есть ничто иное, как "остатки" нелинейности, которые дизером уже подавить практически не получается. Кроме того, статьи по ссылкам посвящены, в общем-то, не увеличению динамического диапазона (он как раз на диаграммах уменьшается), а борьбе с артефактами преобразования, имеющими периодическую структуру (они будут даже в идеальном N-разрядном АЦП). ............................................ Цитата(alexander55 @ Feb 18 2008, 13:15)  PS. Единственное, что могу сказать, корень квадратный - это без проблем, а логарифм - это от лукавого. Не спорю. Цитата(Alex255 @ Feb 18 2008, 14:30)  Дело наверно и есть в том, что понимать под эффективным числом разрядов. Число возможных значений повысить ес-но можно, это банально. Но, ежели 10 битный АЦП имеет интегральную нелинейность (ИН) +-1МЗР, то соответствующий "16 битный" будет иметь +-64МЗР ИН и соответвенно такую же точность. Насколько корректно называть его 16 битным?.. Не корректно. Корректно говорить о 16-битном разрешении. Собссно, о чём и тема; о точности речь здесь не идёт. Цитата(Alex255 @ Feb 18 2008, 14:30)  ...Подобный подход можно использовать в случаях, где достаточно монотонности, а точность особого значения не имеет. Видимо, так. Вероятно, это важно в случаях, когда нужно измерить быстропротекающий слабый процесс на фоне медленно протекающего. Во всяком случае, перефразируя незабвенного Остапа: "увеличение разрешающей способности АЦП никакими немедленными осложнениями нам не грозит".
Сообщение отредактировал Stanislav - Feb 22 2008, 06:23
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Feb 21 2008, 23:56
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Цитата(Stanislav) В этом нет ничего удивительного. Например, если соседние значения INL будут +0,75LSB и -0,75LSB, то из первая разность (производная) даст даже 1,5 LSB DNL на этом участке. Очень смешно     А куда подевался 1 LSB, который обязан быть при переходе к следующему значению? Цитата(Stanislav) Вероятно, это важно в случаях, когда нужно измерить быстропротекающий слабый процесс на фоне медленно протекающего. И здесь неправильно. Это выгодно применять в 90% случаев для измерения не важно быстро или слабопротекающего, но именно переменного сигнала на фоне постоянного или низкочастотного, занимающего большой динамический диапазон АЦП. Таким образом мы имеем гораздо больший динамический диапазон "нового" АЦП и высокую чувствительность (разрядность)
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
|
Feb 22 2008, 06:09
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(GetSmart @ Feb 22 2008, 02:56)  Поясните, что Вам показалось смешным из написанного мной. ЗЫ. Ссылки для изучения. Арифметика, 1-й класс. Понятие разности. Алгебра и начала анализа, 10, или ещё какой там класс. Понятие производной. Курс выч. математики. Производная точечной функции. Цитата(GetSmart @ Feb 22 2008, 02:56)  ...И здесь неправильно. Когда Вы пишете "неправильно", следует опровергнуть утверждение. Вот это: Цитата(Stanislav @ Feb 22 2008, 01:35)  Вероятно, это важно в случаях, когда нужно измерить быстропротекающий слабый процесс на фоне медленно протекающего. , и пояснить, что в нём не соответствует действительности. В противном случае, написанное Вами следует трактовать как чистой воды флейм, и засорение темы, и так уже порядком истоптанной и изъезженной ранее. Цитата(GetSmart @ Feb 22 2008, 02:56)  ...Это выгодно применять в 90% случаев для измерения не важно быстро или слабопротекающего,..  А это как, типа "мокрого или холодного"? Цитата(GetSmart @ Feb 22 2008, 02:56)  ...но именно переменного сигнала на фоне постоянного или низкочастотного,... А низкочастотный, что, переменным не является? Цитата(GetSmart @ Feb 22 2008, 02:56)  ...занимающего большой динамический диапазон АЦП. Таким образом мы имеем гораздо больший динамический диапазон "нового" АЦП и высокую чувствительность (разрядность) Призываю Вас вдуматься в то, чтО Вы пишете. Изложенное Вами совершенно неверно. Могу показать на примере.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Feb 22 2008, 09:51
|
Местный
  
Группа: Участник
Сообщений: 312
Регистрация: 21-10-05
Пользователь №: 9 952

|
Цитата(Stanislav @ Feb 22 2008, 01:35)  Простите, но мне кажется, что Ваше определение не совсем верно, и уж, во всяком случае, весьма расплывчато. INL определяется как функция отклонения реальной характеристики преобразования АЦП от идеальной (некого отрезка прямой, который разными производителями может быть проведен различными способами). Т.е., просто разность этих характеристик. DNL определяется, как производная уже от INL. Если говорить об INL и DNL в численном смысле, то это максимум модуля этих функций (реже приводят + и - значения раздельно). В этом смысле, конечно, dither уменьшает также и INL. Да, INL определяется так, как Вы написали, но считается как max(по n, где n номера кодов от минимального к максимальному)DNL(n). То есть, INL есть максимум из INL(n), где INL(n)=sum(DNL(n)). Я использую такое определение. Других не встречал. Если поможете в этом вопросе, то буду только признателен. DNL(n) равен разности между идеальным n-ым кодом и реальным, выраженным в единицах LSB. Цитата(Stanislav @ Feb 22 2008, 01:35)  Об уменьшении именно DNL здесь речь шла, насколько я понимаю, из-за того, что этот параметр шумом в 1-2 EMR RMS уменьшается радикально, т.е., в несколько раз, тогда, как INL - в гораздо меньшей степени. Дальнейшее уменьшение INL может быть достигнуто увеличением уровня шума (особенно внеполосного). В случае широкополосного шума эффективность такого метода весьма низка - дальнейшее уменьшение получается небольшим, а степень передискретизации для достижения заданного уровня выходного шума резко растёт (квадратично по отношению к RMS шума). В практике использования ditherа есть два подхода. Первый - подмешивание слабых широкополосных шумов. Второй - подмешивание сильных внеполосных шумов или детерминированных сигналов (часто просто несучек на частотах близких к DC или к Fs/2). Если первый подход действительно в основном влияет на продукты DNL, то второй подход влияет на все нелинейности, в том числе и на интермоды. Поэтому, говоря об использовании ditherа, я имею в виду только второй подход, как более эффективный. И практика это подтверждает. Цитата(Stanislav @ Feb 22 2008, 01:35)  Не могли бы пояснить? Простите, но я считал точно наоборот. Попробую, но только на основании приведенных ранее определений INL и DNL. Пусть на всей шкале есть только DNL(n,n+4,n+8,n+12)={1,1,1,1} (коды с номерами n,n+4,n+8,n+12 имеют ошибку +1LSB, значение n при этом не важно). Тогда DNL=+1LSB, INL=+4LSB. Сигнал ошибки для линейно возрастающего напряжения на входе АЦП равен 0,...,1,0,0,0,1,0,0,0,1,0,0,0,1,0,...,0. Энергия его равна 4 у.е. Пусть теперь DNL(n,n+4,n+8,n+12,n+16,n+20)={1,-1,1,-1,1,-1}. Тогда DNL=+-1, INL=+-1. Но энергия сигнала ошибки уже будет не 4, а 6 у.е. Цитата(Stanislav @ Feb 22 2008, 01:35)  Сделаем уровень сигнала побольше, и увидим гармоники. Эти хитрецы не зря подают входной сигнал низким уровнем, но нас-то не проведёшь.  А вот подай они сигнал с размахом в полную шкалу, тогда мы и полюбовались бы на "малый" уровень гармоник... Они и есть ничто иное, как "остатки" нелинейности, которые дизером уже подавить практически не получается. Тут не совсем так. Продукты DNL не зависят от уровня самого сигнала, если сигнал "цепляет" все DNL коды. А вот подмешивание сильного по уровню, но внеполосного ditherа, влияет на продукты нелинейностей и для сильных сигналов. Цитата(Stanislav @ Feb 22 2008, 01:35)  Кроме того, статьи по ссылкам посвящены, в общем-то, не увеличению динамического диапазона (он как раз на диаграммах уменьшается), а борьбе с артефактами преобразования, имеющими периодическую структуру (они будут даже в идеальном N-разрядном АЦП). А вот этот момент у Вас я не понял. Статьи посвящены именно увеличению SFDR за счет подмешивания сильных помех. Естественно, что имеется в виду SFDR в интересующей полосе. AD дают прибавку в SFDR от 16 до 25дБ. Есть еще один момент в подмешивании сильного внеполосного сигнала. Если подмешивать внеполосный шум, то увеличивается фазовый шум полезного сигнала. Маненько, но увеличивается. Поэтому подмешивать лучше мощный (порядка -30дБFs) внеполосный, но не шумоподобный сигнал.
|
|
|
|
|
Feb 22 2008, 10:35
|
Местный
  
Группа: Участник
Сообщений: 312
Регистрация: 21-10-05
Пользователь №: 9 952

|
Цитата(tyro @ Feb 21 2008, 11:11)  Конечно серьезно (особенно если учесть тематику подфорума)  . Изначально резануло слух (математику учил давно, и поэтому вполне возможно что термины понимаю неправильно) - "Я амплитудные спектры усредняю, а не сигнал во временной области", при этом для получения спектра сигнала используется БПФ, и соответственнокак получить отсчеты для него не на временном интервале для меня "уму не растяжимо"  . После "не растяжения" пришло (может и не правильное) понимание, что описывается фильтрация входного сигнала. Особенно паразило число исходных отсчетов, число прореженных (усредненых) и соответствующее им число БПФ, а также число усреднений. Вот и хотелось бы узнать, каким образом предлагаемый алгоритм поднимает разрешающую способность АЦП? Накладные расходы для его реализации (как в описанном примере) в режиме реального времени , мягко говоря, не хилые.  Усреднение спектров не есть часть алгоритма "повышения разрядности АЦП". Просто с помощью такого усреднения шумовая дорожка вне полосы сигнала становится почти прямой линией (если шум белый). Это значительно облегчает расчет уровней. И тут нельзя забывать, что шум - это очень "ехидный" сигнал. Вероятность появления в спектре шума выброса на какой-то частоте в пол шкалы АЦП не равна нулю. То есть по одному блоку в N временных отсчетов сказать что-либо о СПМ шума очень трудно. Но главное не в этом. Главное в том, что в отсчетах 14-ти битного АЦП есть информация об очень слабых, значительно меньших по уровню 1 LSB (минимум в десяток раз), сигналах. Чтобы такие синалы "принять" нужна, естественно, соответствующая база сигнала (число отсчетов). Но это - классическая теория. "Солдатской инструкции", по-моему, по INL и DNL создать невозможно. А вот по зачениям THD и SNR что-то можно и просчитать. В общих чертах примерно так: 1. Из THD получаем мощность всех нелинеек. Далее, тем или иным способом равномерно "размазываем" энергию нелинеек по всему спектру. 2. "Размазанную" энергию нелинеек суммируем с энергией собственных шумов АЦП (расчитанных через SNR и THD). Имеем новый (пересчитанный) SNR. 3. Считакем ENOB для всей полосы 4. Считаем отношение Fs/2dF, где dF - интересующая полоса сигнала. 5. Считаем прибавку к SNR из п.2 из-за сужения полосы - 10log(Fs/2dF). 6. Пересчитываем ENOB для суженной полосы. Уже на этом этапе ENOB получается больше разрядности АЦП. 7. Всё остальное очень сильно зависит от задачи, но прибавка есть и тут. Вроде, так. Прошу прощения, в неотредактированном сообщении остался хвост от сообщения коллеги. Теперь я его убрал.
Сообщение отредактировал 729 - Feb 22 2008, 10:43
|
|
|
|
|
Feb 22 2008, 17:49
|
Местный
  
Группа: Участник
Сообщений: 312
Регистрация: 21-10-05
Пользователь №: 9 952

|
Цитата(tyro @ Feb 22 2008, 20:39)  Из Ваших постов чьято-то рука изъяла утверждения о не сужении полосы при усреднении.  Сам этого не делал. Но готов повторить снова - усреднение амплитудных спектров не сужает полосу исходного сигнала. Но, по-моему, Вы не совсем правы - http://electronix.ru/forum/index.php?showt...1970&st=105Или Вы имели в виду другую фразу?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|