Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: конвейер в обратной связи
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
_Anatoliy
Допустим у меня есть некая структура похожая на часть БИХ фильтра(верхний рисунок).Для реализации на FPGA я хотел бы вставить в обратную связь три слоя регистров(нижний рисунок).Очевидно,что добавленные регистры повысят быстродействие схемы, но одновременно они изменят функционирование всей схемы - т.е нижний рисунок неадекватен верхнему.Как его сделать адекватным верхнему сохранив конвейер(Pipelining)?
Есть ли какая-то общая методика решения вопроса?
des00
Цитата(_Anatoliy @ Sep 14 2011, 00:49) *
Допустим у меня есть некая структура похожая на часть БИХ фильтра(верхний рисунок).

символьная == тактовой ?
_Anatoliy
Цитата(des00 @ Sep 14 2011, 09:48) *
символьная == тактовой ?

Переклинило,Fclk = 4Fsym,работа по enable.
des00
Цитата(_Anatoliy @ Sep 14 2011, 03:12) *
Переклинило,Fclk = 4Fsym,работа по enable.

тогда в чем проблема ? у вас 4 такта между семплами, можно свободно умножить и расставить дерево сумматоров (вы это уже сделали, за 3 такта, до следующего семпла, посчитает). А если немного подумать и сделать ретайминг части фильтра с ОС, заменив задержку данных, но задержку умноженных данных, то ..... wink.gif
_Anatoliy
Цитата(des00 @ Sep 14 2011, 11:46) *
тогда в чем проблема ? у вас 4 такта между семплами, можно свободно умножить и расставить дерево сумматоров (вы это уже сделали, за 3 такта, до следующего семпла, посчитает). А если немного подумать и сделать ретайминг части фильтра с ОС, заменив задержку данных, но задержку умноженных данных, то ..... wink.gif

Спасибо!
Всё правильно,это я знаю.Просто хотелось решить задачу в общем виде,без привязки к архитектуре модема.Сейчас новый проект наклёвывается,там обработка будет идти каждый такт.Должна же быть какая-то методика решения подобных задач.
des00
Цитата(_Anatoliy @ Sep 14 2011, 05:55) *
Всё правильно,это я знаю.Просто хотелось решить задачу в общем виде,без привязки к архитектуре модема.Сейчас новый проект наклёвывается,там обработка будет идти каждый такт.Должна же быть какая-то методика решения подобных задач.

хмм, где то видел доку о том как пайплайнить БИХ фильтры с использованием look ahead техники, о даже нашел в запасниках %) но в вашем случае даже без статей можно сделать обратное звено за счет замены дерева сумматоров на цепь сумматоров и небольшим колдовством с порядком умножения wink.gif
_Anatoliy
Цитата(des00 @ Sep 14 2011, 12:12) *
хмм, где то видел доку о том как пайплайнить БИХ фильтры с использованием look ahead техники, о даже нашел в запасниках %) но в вашем случае даже без статей можно сделать обратное звено за счет замены дерева сумматоров на цепь сумматоров и небольшим колдовством с порядком умножения wink.gif

Спасибо!
Пошёл курить rolleyes.gif

А пока проверил мысль по обработке между enable.Плохо работает.Я ведь для примера привёл БИХ,реально у меня два демодулятора параллельно стоят,с первого сигнал снимается на вход DFE второго,со второго сигнал снимается на вход DFE первого,всё очень мрачно.Достаточно задержки на 1 такт клока и всё валится.
Статью посмотрел - похоже не мой случай,у них больше похоже на распараллеливание...
Serg76
Цитата(_Anatoliy @ Sep 14 2011, 15:42) *
Спасибо!
Пошёл курить rolleyes.gif

А пока проверил мысль по обработке между enable.Плохо работает.Я ведь для примера привёл БИХ,реально у меня два демодулятора параллельно стоят,с первого сигнал снимается на вход DFE второго,со второго сигнал снимается на вход DFE первого,всё очень мрачно.Достаточно задержки на 1 такт клока и всё валится.
Статью посмотрел - похоже не мой случай,у них больше похоже на распараллеливание...

Случайно, не Carrier-in-Carrier?
des00
Цитата(_Anatoliy @ Sep 14 2011, 06:42) *
у меня два демодулятора параллельно стоят,с первого сигнал снимается на вход DFE второго,со второго сигнал снимается на вход DFE первого,всё очень мрачно.

а какой в этом сакральный смысл? sm.gif ИМХО DFE это модификация IIR эквалайзера, для того что бы обеспечить его устойчивость и уменьшить влияние обратной связи на сигнал. Но в итоге то все равно правится ЧХ канала и учитывается многолучевое распространение.
ИМХО если вы делаете многолучевой приемник то лучше сделать пространственный эквалайзер или радиочастотный комбайнер wink.gif
_Anatoliy
Цитата(des00 @ Sep 14 2011, 17:24) *
а какой в этом сакральный смысл? sm.gif ИМХО DFE это модификация IIR эквалайзера, для того что бы обеспечить его устойчивость и уменьшить влияние обратной связи на сигнал. Но в итоге то все равно правится ЧХ канала и учитывается многолучевое распространение.
ИМХО если вы делаете многолучевой приемник то лучше сделать пространственный эквалайзер или радиочастотный комбайнер wink.gif

А смысл в том что хочу поднять битрейт в 2 раза без расширения полосы и изменения вида модуляции rolleyes.gif
Ключевое слово - поляризация.
Serg76
Цитата(_Anatoliy @ Sep 14 2011, 19:19) *
А смысл в том что хочу поднять битрейт в 2 раза без расширения полосы и изменения вида модуляции rolleyes.gif
Ключевое слово - поляризация.

Это технология уже давно известна и носит название DoubleTalk Carrier-in-Carrier, как я и указывал выше. Причем для этой технологии абсолютно неважно какая модуляция используется во встречных каналах. Кроме того, она остается работоспособной даже при наличии значительного разбаланса по мощности во встречных сигналах.
_Anatoliy
Цитата(Serg76 @ Sep 14 2011, 17:24) *
Это технология уже давно известна и носит название DoubleTalk Carrier-in-Carrier, как я и указывал выше. Причем для этой технологии абсолютно неважно какая модуляция используется во встречных каналах. Кроме того, она остается работоспособной даже при наличии значительного разбаланса по мощности во встречных сигналах.

Конечно известна,но конкретно я ей занимаюсь впервые.Осталось только сообразить как от слов перейти к делу.
des00
Цитата(Serg76 @ Sep 14 2011, 10:24) *
Это технология уже давно известна и носит название DoubleTalk Carrier-in-Carrier, как я и указывал выше.

хмм, я может быть что то не понимаю но
Цитата
DoubleTalk uses “Adaptive Cancellation,” a patented technology that allows the transmit and receive carriers of a full-duplex satellite link to be transmitted in the same transponder space.

речь идет о вычитании сигнала локального передатчика из приемника на адаптивном фильтре. Это как то не вяжется с

Цитата(_Anatoliy @ Sep 14 2011, 06:42) *
реально у меня два демодулятора параллельно стоят,с первого сигнал снимается на вход DFE второго,со второго сигнал снимается на вход DFE первого,всё очень мрачно.


да и на схеме http://www.appsig.com/documentation/dt_cnc_bandwidth.pdf №5 приведено другое
_Anatoliy
Цитата(des00 @ Sep 15 2011, 04:31) *

Всё правильно вы подметили,у меня немного не так,но идея та же.Входной поток бьётся на два потока и они передаются независимо на одной несущей. На приёмной стороне потоки объединяются в один, битрейт увеличивается в два раза.Остается только подавить пролаз соседнего канала,с чем dfe неплохо справляется.
Но пока только в симулинке.
des00
Цитата(_Anatoliy @ Sep 14 2011, 22:01) *
Всё правильно вы подметили,у меня немного не так,но идея та же.Входной поток бьётся на два потока и они передаются независимо на одной несущей. На приёмной стороне потоки объединяются в один, битрейт увеличивается в два раза.Остается только подавить пролаз соседнего канала,с чем dfe неплохо справляется.

хммм, а каналы в поляризационных антеннах разделяются? Какое кодирование вы для этого используете ?
_Anatoliy
Цитата(des00 @ Sep 15 2011, 06:58) *
хммм, а каналы в поляризационных антеннах разделяются? Какое кодирование вы для этого используете ?

1.Да
2.Никакое.
Цитата
Но пока только в симулинке

Да и только один канал с пролазом от второго пробовал.
Но,имхо,нехорошая это затея,тянитолкай какой-то получается.
анатолий
Цитата(_Anatoliy @ Sep 14 2011, 12:55) *
Сейчас новый проект наклёвывается,там обработка будет идти каждый такт.Должна же быть какая-то методика решения подобных задач.

Есть методика folding. Можно в любом фильтре увеличить число всех регистров вдвое-втрое .
Это будет означать, что вычисляются 2-3 канала фильтров параллельно.
Т.е. 2-3 графа фильтров сворачиваются в один.
Затем регистры можно переместить согласно retiming.
Иначе алгоритм действительно изменится.
_Anatoliy
Цитата(анатолий @ Sep 15 2011, 07:57) *
Есть методика folding. Можно в любом фильтре увеличить число всех регистров вдвое-втрое .
Это будет означать, что вычисляются 2-3 канала фильтров параллельно.
Т.е. 2-3 графа фильтров сворачиваются в один.
Затем регистры можно переместить согласно retiming.
Иначе алгоритм действительно изменится.

Спасибо!А где об этом можно почитать?
des00
Цитата(анатолий @ Sep 14 2011, 23:57) *
Есть методика folding. Можно в любом фильтре увеличить число всех регистров вдвое-втрое .
Это будет означать, что вычисляются 2-3 канала фильтров параллельно.
Т.е. 2-3 графа фильтров сворачиваются в один.

по сути своего рода полифазная обработка ?


Цитата(_Anatoliy @ Sep 14 2011, 23:51) *
1.Да
2.Никакое.

понятно, спасибо. что то вроде XPIC делаете %)
_Anatoliy
Цитата(des00 @ Sep 15 2011, 08:18) *
понятно, спасибо. что то вроде XPIC делаете %)

ага
_Anatoliy
for des00
des00
Цитата(_Anatoliy @ Sep 20 2011, 06:05) *
for des00

свое мнение отписал в личку %)
анатолий
Цитата(_Anatoliy @ Sep 15 2011, 08:04) *
Спасибо!А где об этом можно почитать?

Напр. в: Сергиенко.VHDL для... или в ссылке в этой книжке
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.