|
|
  |
Farrow из моделей petrov, Проясните в чем фокус |
|
|
|
Oct 13 2009, 10:51
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Добрый день уважаемый petrov и коллеги! Не могли бы вы прояснить вот какой момент. Фарроу в ваших моделях это модифицированный фарроу 3 го порядка. Тогда как исходный кубический фарроу имеет диапазон mu [0:3] и рабочую точку [1:2], этот имеет постоянную задержку в 2 символа и рабочую точку [-1:0]. Следуя логике вещей, при mu ==0 интерполятор дает задержку 2 символа, а при mu == -1 задержка будет 1 символ. Т.е. если поставить рядом интерполятор А с mu==0 и интерполятор В с mu == -1, то сигнал от А должен запаздывать относительно сигнала от В. Но вот в приатаченной модельке это не так (желтый луч на Scope опережает фиолетовый). Почему так получается? Спасибо. ЗЫ. Не сомневаюсь что интерполятор правильный, проверил на реальном модеме  Просто случайно заметил сей эффект, интересно почему так получается.
--------------------
|
|
|
|
|
Oct 14 2009, 03:18
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(petrov @ Oct 13 2009, 07:20)  Ну по логике наоборот z^-1 это задержка а z^1 машина времени  хмм, может я что не так понял. Управление временем для немодифицированных интерполяторов описывается выражением z^-mu. Это легко проверяется в симулинке. Так и для этого интерполятора должно быть уравнение вида z^-(2+mu). Тогда задержки будут z^-2 и z^-(2-1) = z^-1 для mu == 0/-1. А если судить на результаты моделирования то уравнение того что получилось получается z^(-2+mu), ИМХО это как то не правильно. ЗЫ. На основе доки, вывел формулы модифицированных интерполяторов до 3 го порядка включительно. Конкретно этот интерполятор содержит небольшой хак, за счет коэффициентов нечетных звеньев у него mu проинвертирован. Т.е. mu == -1 надо читать как mu == 1, рабочий диапазон этого интерполятора [2:3]. Если кому интересна методика вывода(в маткаде) и схемы интерполяторов (в матлабе) до 3 го порядка выложу %) Вопрос хака остается открытым, я вижу его причину в том, что реализация интерполятора для mu == [-1:0] в железе делается проще %) ЗЗЫ. Но если следовать теории то рабочий диапазон, исходя из линейности рабочего участка интерполятора 3 го порядка, должен быть [1:2]. Тогда получается что обсуждаемый интерполятор работает не на оптимальном участке характеристики, внося дополнительные искажения в сигнал %)
--------------------
|
|
|
|
|
Oct 14 2009, 11:37
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(petrov @ Oct 14 2009, 04:24)  На практике эти дополнительные искажения подтверждаются, вы можете сделать модель где будете подавать на этот интерполятор mu в другом диапазоне иполучить меньшие искажения? Щас не помню уже статью по которой делал этот интерполятор, возможно действительно у меня где-то ошибка. гонял разные интерполяторы в матлабе(модель петли по тактовой в атаче), на глаз искажений не видно. но ведь не зря же авторы статьи в атаче уделяют особое внимание рабочему диапазону интерполяторов. также в атаче маткадовский файл (версия 13), в котором с помошью символьного процессора выводились коэффициенты модифицированных интерполяторов.
Прикрепленные файлы
farrow.zip ( 405.19 килобайт )
Кол-во скачиваний: 64
--------------------
|
|
|
|
|
Oct 14 2009, 15:44
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(petrov @ Oct 14 2009, 07:02)  Во первых у нас передискретизация есть, во вторых точность для модемов большая не нужна т. к. у них шум гораздо более сильную ошибку вносит. В статье видно что mu -1..0 оптимальный диапазон для кубического интерполятора, но и при неоптимальных mu тоже не возбраняется интерполятор использовать если ошибка устраивает, хотя по графикам ошибки 3.12 и 3.13 видно что лучше параболический или линейный интерполяторы использовать чем кубический в неоптимальном диапазоне. Спасибо за разъяснение, но хочу еще обратить ваше внимание на стр.12-13 статьи и график 3.11. При работе в неоптимальном диапазоне усиление интерполятора может быть больше 1. Авторы статьи называют это свойство "пассивностью". Цитата it never overestimates the amplitude of the signal when the delay has been chosen so that (N – 1)/2 <= D <= (N + 1)/2 when N is odd and (N/2) – 1 <= D <= (N/2) + 1 when N is even. при определенных условиях, петля может подгуживать. Да и в железе по разрядности иногда могут вылезти переполнения на выходе фарроу %) Кстати интерполятор, который вы используете также приведен у незами на стр 6-19 Figure 6-14 Cubic interpolator for symbol timing correction. Правда особенности его использования у него не рассмотрены %)
--------------------
|
|
|
|
|
Oct 14 2009, 16:51
|
Знающий
   
Группа: Свой
Сообщений: 758
Регистрация: 11-07-05
Из: Понаехал (Мск)
Пользователь №: 6 688

|
раз уж тут собрались поклонники Farrow  вот вам свеженькая статейка с ieee, возможно она будет полезна. A novel Farrow Structure with reduced complexity Hunter, M.T.; Mikhael, W.B.; Circuits and Systems, 2009. MWSCAS '09. 52nd IEEE International Midwest Symposium on 2-5 Aug. 2009 Page(s):581 - 585
5236027.pdf ( 477.96 килобайт )
Кол-во скачиваний: 485И еще одна, наверное, в тему. Results on maximally flat fractional-delay systems Samadi, S.; Ahmad, M.O.; Swamy, M.N.S.; Circuits and Systems I: Regular Papers, IEEE Transactions on Volume 51, Issue 11, Nov. 2004 Page(s):2271 - 2286
1356159.pdf ( 713.63 килобайт )
Кол-во скачиваний: 475
|
|
|
|
|
Oct 15 2009, 03:40
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(SFx @ Oct 14 2009, 11:51)  раз уж тут собрались поклонники Farrow  вот вам свеженькая статейка с ieee, возможно она будет полезна. Спасибо за инфу %) Цитата A novel Farrow Structure with reduced complexity Как то не впечатлила, предлагают добавить оверсамплинг, который для модемов и так есть %) Цитата Results on maximally flat fractional-delay systems а вот это интересно, собрал модельку с фильтром Fig. 1. Farrow structure for the Lagrange interpolator F (z) based on (24) работает  На модели 4sps классический фарроу 3 порядка дает отклонение точки ~0.18, этот ~0.16. Может быть из-за плоской АЧХ, надо поковырять подробнее + оценить ресурс фпга на этот интерполятор %)
--------------------
|
|
|
|
|
Oct 15 2009, 07:50
|

Местный
  
Группа: Участник
Сообщений: 240
Регистрация: 20-09-08
Пользователь №: 40 347

|
Цитата(des00 @ Oct 13 2009, 14:51)  Добрый день уважаемый petrov и коллеги!
Не могли бы вы прояснить вот какой момент. Фарроу в ваших моделях это модифицированный фарроу 3 го порядка. Тогда как исходный кубический фарроу имеет диапазон mu [0:3] и рабочую точку [1:2], этот имеет постоянную задержку в 2 символа и рабочую точку [-1:0]. Следуя логике вещей, при mu ==0 интерполятор дает задержку 2 символа, а при mu == -1 задержка будет 1 символ. фильтр фарроу ничто иное как пересчитанный интерполяционный полином лагранжа. Поэтому результат должен быть таким же что и при полиномиальной лагранжевой интерполяции. Пересчет времени не важен, результат должен быть один и тот же и полностью совпадать с результатом полиномиальной интерполяции. Если полином лагранжа и ваш фильтр дает разные результаты при одином порядке (фильтр третьего порядка и кубический полином) это означает, что одна из черепах врет. Также если 2 реализации фильтра одного порядка дают разные результаты, тоже значит что одна или обе черепахи врут. Подробнее здесь. Касаемо вашего вопроса попробую пояснить если вы задаете mu = 0, то выходной сигнал будет полностью повторять входной с задержкой на 2 символа, так как для рассчета вам потребуется еще два отсчета слева (-1 и -2 отсчет), а если зададите mu == -1 то задержка будет один символ, так как нужен только один отсчет слева (-2).
|
|
|
|
|
Oct 16 2009, 04:47
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(bahurin @ Oct 15 2009, 02:50)  фильтр фарроу ничто иное как пересчитанный интерполяционный полином лагранжа. спасибо вам за введение в теорию интерполяторов, но насколько я понял учебники, фильтр фарроу это не пересчитанный интерполяционный полином лагранжа, а всего лишь реализация этого полинома, удобная для организации вычислений. Цитата Поэтому результат должен быть таким же что и при полиномиальной лагранжевой интерполяции. Пересчет времени не важен, результат должен быть один и тот же и полностью совпадать с результатом полиномиальной интерполяции. Если полином лагранжа и ваш фильтр дает разные результаты при одином порядке (фильтр третьего порядка и кубический полином) это означает, что одна из черепах врет. Также если 2 реализации фильтра одного порядка дают разные результаты, тоже значит что одна или обе черепахи врут. Подробнее здесь. Касаемо вашего вопроса попробую пояснить если вы задаете mu = 0, то выходной сигнал будет полностью повторять входной с задержкой на 2 символа, так как для рассчета вам потребуется еще два отсчета слева (-1 и -2 отсчет), а если зададите mu == -1 то задержка будет один символ, так как нужен только один отсчет слева (-2). вопрос был не КАК работает интерполятор, а ПОЧЕМУ кубический интерполятор, приведенный в учебниках, помимо того что содержит инвертированные коэффициенты нечетных веток, работает немного не так как ожидалось. В результате выяснилось что все в норме, но есть особенности, никакая из черепах не врет %) ЗЫ. в статье вы немного не точны, для кубического полинома надо 6 умножений, вы забыли посчитать умножения на mu
--------------------
|
|
|
|
|
Oct 23 2009, 12:18
|
Местный
  
Группа: Участник
Сообщений: 270
Регистрация: 29-06-06
Пользователь №: 18 445

|
Цитата(des00 @ Oct 15 2009, 07:40)  Как то не впечатлила, предлагают добавить оверсамплинг, который для модемов и так есть %) Не заметил передискретизации я: "While the coefficient symmetry dramatically reduces the number of required multipliers, oversampling is not employed,..." К тому же, модем модему рознь. В оптических модемах передискретизация слишком дорого обходится. А вот споловинить количество умножителей - это очень даже хорошо.
|
|
|
|
|
Oct 26 2009, 08:10
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(des00 @ Oct 14 2009, 21:40)  а вот это интересно, собрал модельку с фильтром Fig. 1. Farrow structure for the Lagrange interpolator F (z) based on (24) работает  На модели 4sps классический фарроу 3 порядка дает отклонение точки ~0.18, этот ~0.16. Может быть из-за плоской АЧХ, надо поковырять подробнее + оценить ресурс фпга на этот интерполятор %) Поковырялся в доке, смешно стало, интерполятор на Fig1 это самый обычный интерполятор лагранжа 3 го порядка %) Просто он записан по другому. А улучшение в работе модели связано как раз с работой в оптимальном диапазоне задержек интерполятора. Так что эффект влияния диапазона работы интерполятора на качество сигнала есть %) Цитата(pokos @ Oct 23 2009, 06:18)  Не заметил передискретизации я: "While the coefficient symmetry dramatically reduces the number of required multipliers, oversampling is not employed,..." Да немного не туда посмотрел, передискретизация рассматривается, но для другого интерполятора. В этой доке мне не понятно вот что: в конце они приводят сводную таблицу результата : берут интерполятор третьего порядка(M == 3) и насчитывают в нем 27 умножений. Откуда столько, если их там всего 6 (модифицированный фарроу по лагранжу 3 го порядка)? Еше не понятно как они рассчитывали коэффициенты фильтров, уж слишком у них красивая АЧХ, если это был лагранж. еще вопрос по документу "Results on Maximally Flat Fractional-Delay Systems". Предлагаемый там интерполятор описывается формулой 123, т.е. получается что при каждом d/mu надо пересчитывать коэффициенты фильтра и только потом считать выход. Тогда в чем преимущество этого интерполятора, перед интерполятором на полифазном FIR фильтре? В количестве коэффициентов фильтра которые нужно хранить ? ЗЫ. математики поясните как читаются формулы 121, как то не доходит до меня как d(d^2-1)(d^2-9)/120 стало 16d/5(d+3/2 4) %(. Спасибо.
--------------------
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|