Serg76 0 April 24, 2012 Posted April 24, 2012 · Report post турбо (на основе БЧХ кодов было бы интересно порыть) есть такие практические схемы турбокодов-произведения на основе БЧХ. И сопутствующий вопрос, как тестировать вероятностные декодеры без матлаба? сгородить в верилоге модулятор/демодулятор + модель awgn ? я использую собственные программные модели (С++) модулятор/демодулятор + модель awgn. Quote Share this post Link to post Share on other sites More sharing options...
des00 27 April 24, 2012 Posted April 24, 2012 · Report post есть такие практические схемы турбокодов-произведения на основе БЧХ. как раз от вас я о них и слышал %), не поделитесь ссылками? я использую собственные программные модели (С++) модулятор/демодулятор + модель awgn. вы же вроде как делаете как раз все для PC платформы, или вы через DPI портируете это в HDL симуляторы и тестируете HDL корки ? Quote Share this post Link to post Share on other sites More sharing options...
Serg76 0 April 24, 2012 Posted April 24, 2012 · Report post как раз от вас я о них и слышал %), не поделитесь ссылками? по-моему здесь http://www.google.com.ua/url?sa=t&rct=...c2g&cad=rja вы же вроде как делаете как раз все для PC платформы, или вы через DPI портируете это в HDL симуляторы и тестируете HDL корки ? неа, только программное моделирование Quote Share this post Link to post Share on other sites More sharing options...
amelyutin9 0 April 24, 2012 Posted April 24, 2012 · Report post I.3 я сделал. Какие есть конкретные вопросы. По ресурсам сложно сказать, так как нужно еще оптимизировать кое-что. Чем не устроил I.4? Интересует реализация внутреннего декодера. Судя по документу, который скинули, у вас следующая схема: 8 блоков вычисления синдромов на входе по 8 бит, один блок решателя ключевого уравнения обрабатывающий данные с 8-ми каналов по очереди, 8 блоков Ченя по 8 бит. Записать 8 блоков данных в память перед декодированием и после декодирования (Вот этот момент особенно интересует). Вы так сделали? И еще по ресурсам было бы интересно хотя бы приблизительные результаты оценить. Можно в личку. I.4 устроил, но надо остальные FEC схемы реализовать. Quote Share this post Link to post Share on other sites More sharing options...
des00 27 April 24, 2012 Posted April 24, 2012 · Report post по-моему здесь большое спасибо, начну копать %) Quote Share this post Link to post Share on other sites More sharing options...
negiin 0 June 25, 2012 Posted June 25, 2012 (edited) · Report post To des00 Хочу сделать, чтобы IBM работал на частоте в два раза меньше. Для этого делаю multicycle как описано у вас в блоге. Причем в проекте несколько разных декодеров. Правильно ли я задал констрейты? set_multicycle_path -from {*bch_berlekamp:berlekamp|*} -to {*bch_berlekamp:berlekamp|*} -setup -end 2 set_multicycle_path -from {*bch_berlekamp:berlekamp|*} -to {*bch_berlekamp:berlekamp|*} -hold -end 1 Clock Enable для входа в модуле bch_berlekamp генерится следующем образом. iclkena <= ~iclkena; Edited June 25, 2012 by Denisnovel Quote Share this post Link to post Share on other sites More sharing options...
des00 27 June 25, 2012 Posted June 25, 2012 · Report post Хочу сделать, чтобы IBM работал на частоте в два раза меньше. Для этого делаю multicycle как описано у вас в блоге. Причем в проекте несколько разных декодеров. Правильно ли я задал констрейты? set_multicycle_path -from {*bch_berlekamp:berlekamp|*} -to {*bch_berlekamp:berlekamp|*} -setup -end 2 set_multicycle_path -from {*bch_berlekamp:berlekamp|*} -to {*bch_berlekamp:berlekamp|*} -hold -end 1 Clock Enable для входа в модуле bch_berlekamp генерится следующем образом. iclkena <= ~iclkena; хммм, в таком случае вам выгодно подать именно тактовую в 2 раза ниже и сделать переходы между доменами. решение лучше со всех точек зрения. Если по мультициклам, то их накладывают на цепи между регистрами источниками сигнала и приемниками. Где в вашей команде указано что это относиться к регистрами ? :)) Quote Share this post Link to post Share on other sites More sharing options...
negiin 0 June 26, 2012 Posted June 26, 2012 (edited) · Report post В моём кнстрейте описывается, что все регистры в модуле bch_berlekamp:berlekamp работают на частоте в два раза меньше. Т.е. источником и приемником является эти регистры. Или я не прав? Если я захочу сделать частоту в 2 раза меньше, то в PLL я должен выдать синхроную частоту. Как это описать? Edited June 26, 2012 by Denisnovel Quote Share this post Link to post Share on other sites More sharing options...
des00 27 June 26, 2012 Posted June 26, 2012 · Report post В моём кнстрейте описывается, что все регистры в модуле bch_berlekamp:berlekamp работают на частоте в два раза меньше. Т.е. источником и приемником является эти регистры. Или я не прав? хммм, вообще то регистры описываются через команду get_registers ;) Если я захочу сделать частоту в 2 раза меньше, то в PLL я должен выдать синхроную частоту. Как это описать? хммм, сгененрировать PLL и посмотреть на вейвформы ее работы? Quote Share this post Link to post Share on other sites More sharing options...
negiin 0 June 26, 2012 Posted June 26, 2012 · Report post А если написать так, то между регистрами модуля БМ будет увеличенный период? set_multicycle_path -from [get_registers{*bch_berlekamp:berlekamp|*}] -to [get_registers{*bch_berlekamp:berlekamp|*}] -setup -end 2 set_multicycle_path -from [get_registers{*bch_berlekamp:berlekamp|*}] -to [get_registers{*bch_berlekamp:berlekamp|*}] -hold -end 1 С PLL не поял? Допустим, я сделал синхронную частоту в два раза меньше, подал её на модуль БМ, как синхронизировать данные между этими clock domain? :( Quote Share this post Link to post Share on other sites More sharing options...
des00 27 June 26, 2012 Posted June 26, 2012 · Report post А если написать так, то между регистрами модуля БМ будет увеличенный период? смотрите что говорит TQ, если он скажет что будет, значит будет. %) С PLL не поял? Допустим, я сделал синхронную частоту в два раза меньше, подал её на модуль БМ, как синхронизировать данные между этими clock domain? :( а если сделаете пусть и на одной частоте но с clkena синхронизировать не потребуется ? :) Повторю еще раз, прочитайте что такое PLL и ее свойства. Сгенерируйте в мегавизарде PLL и посмотрите на вейвформы выходных сигналов. Тогда сразу все поймете %) Quote Share this post Link to post Share on other sites More sharing options...
negiin 0 June 28, 2012 Posted June 28, 2012 · Report post По PLL я имею ввиду, что одна ПЛЛ генерирует быстрый и медленный клок, то есть они синхронные, как на картинке выше . Ну да оставим PLL. У меня работает первый вариант задания контстрейтов :rolleyes: , TQ распознает их как мультисайкл. Самый критичный путь в этом случае от clken до регистров модуля БМ. Еще вопрос. Правильно ли я понимаю, что БЧХ может детектировать ошибки больше t, но меньше 2t, и определять их количество? Quote Share this post Link to post Share on other sites More sharing options...
amelyutin9 0 June 29, 2012 Posted June 29, 2012 · Report post Еще вопрос. Правильно ли я понимаю, что БЧХ может детектировать ошибки больше t, но меньше 2t, и определять их количество? БЧХ может детектировать 2t ошибок Quote Share this post Link to post Share on other sites More sharing options...
SKov 0 June 29, 2012 Posted June 29, 2012 · Report post Еще вопрос. Правильно ли я понимаю, что БЧХ может детектировать ошибки больше t, но меньше 2t, и определять их количество? Количество не может. Только сам факт наличия где-то ошибок кратности от 1 до d-1. Quote Share this post Link to post Share on other sites More sharing options...
des00 27 June 29, 2012 Posted June 29, 2012 · Report post У меня работает первый вариант задания контстрейтов :rolleyes: , TQ распознает их как мультисайкл. значит TQ вас понял %) Количество не может. Только сам факт наличия где-то ошибок кратности от 1 до d-1. Вот интересно, как я понял из учебников по кодированию, сам код БЧХ позволяет обнаружить большее кол-во ошибок, но не все из них. Ограничение d-1 связанно с использованием стандартных методов декодирования, через решение системы уравнений. Интересно чисто теоретически, есть ли методы позволяющие преодолеть эту границу? (ну кроме полного перебора или синдромного декодирования что почти тоже самое). Quote Share this post Link to post Share on other sites More sharing options...