amelyutin9 0 25 марта, 2012 Опубликовано 25 марта, 2012 (изменено) · Жалоба Правильно ли я понял, что для плис оптимизация поиска Ченя не актуальна? Пробовал оптимизировать процедуру Ченя, конкретнее оптимизировал умножители на константу, как представлено в статье. В итоге выигрыша никакого не получил. Но делал по циклон 3, возможно под другое железо что-то и получится. Изменено 25 марта, 2012 пользователем Gold777 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 25 марта, 2012 Опубликовано 25 марта, 2012 · Жалоба Clock enable применен для энергосбережения? Если в какой-то момент декодер мне не нужен, то я должен отключить clock enable. Перед включением сбросить ресетом(для инициализации) и подать clock enable? clkena можно использовать по разному, в том числе и для энергосбережения. пока декодер не получит блок, он работать не будет. это видно из логики его работы. в случае энергосбережения, можно его не сбрасывать, но, в зависимости от того, в какой момент времени вы остановили декодер, на выходе может быть мусор после старта. Поэтому использовать сброс или нет зависит от вас %) В итоге выигрыша никакого не получил. я вам сразу про это сказал %) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amelyutin9 0 25 марта, 2012 Опубликовано 25 марта, 2012 · Жалоба я вам сразу про это сказал %) Да я помню. Хотел посмотреть ради интереса что изменится. Действительно вы были правы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexPec 2 25 марта, 2012 Опубликовано 25 марта, 2012 · Жалоба Также есть версии декодера с динамически изменяемым {n, check}, но смысла выкладывать не вижу. Выложенные сорцы заточены под простую реализацию динамического изменения, кому надо тот сделает %) А {n,check} - в Вашей версии любые можно поставить на ходу или заранее определенный набор (набор определяется до синтеза) ? Модифицировал Ваш код для декодирования 12 кодов, каждый со своим {n,check}, длина до 16384. Декодер занимает около 5000 LE. С ростом количества кодов растет и декодер, примерно линейно. В основном это умножители в галуа на константы. Если бы были умножители числа на число, то от количества кодов декодер бы не так сильно рос. Только вот не знаю на сколько такое решение реально. Просто в моей задаче скорость не нужна (50 мгц за глаза), а вот количество кодов надо 36... В Вашей версии динамически изменяемых {n,check} умножители в галуа также на константы или умножители динамического числа на динамическое число? :bb-offtopic: То что спрашивал у Вас по таймквесту, все вроде получилось в моделсиме, огромное спасибо! Надо дождаться железа и испытать в реале... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 26 марта, 2012 Опубликовано 26 марта, 2012 · Жалоба А {n,check} - в Вашей версии любые можно поставить на ходу или заранее определенный набор (набор определяется до синтеза) ? Для работы мне нужны были с динамическим укорочением и с предопределенном набором check. Только вот не знаю на сколько такое решение реально. Просто в моей задаче скорость не нужна (50 мгц за глаза), а вот количество кодов надо 36... В Вашей версии динамически изменяемых {n,check} умножители в галуа также на константы или умножители динамического числа на динамическое число? Строго говоря сорцы что выложены, были оптимизированы (по логике и конвейеру) под конкретную реализацию статического декодера. Для динамического декодера нужно делать немного по другому : 1. genstart == 0, это позволит очень просто считать синдромы по максимальному check (не нужна коррекция позиций синдромов) цена : дополнительный умножитель при расчете значений ошибок 2. везде считать на максимальный check 3. уйти с RIBM на rIBM алгоритм (не нужна коррекция позиций готового полинома локаторов). цена : несколько больший ресурс при последовательном вычислении. 4. ченя делать в обратном порядке в отдельном проходе (не нужна начальная коррекция при укорочении кода). ну собственно все, в итоге ресурс декодера у вас будет чуть больше, чем статического декодера кода с максимальным check :bb-offtopic: То что спрашивал у Вас по таймквесту, все вроде получилось в моделсиме, огромное спасибо! Надо дождаться железа и испытать в реале... рад что вы разобрались в вопросе %) И еще про динамическую конфигурацию. Если кол-во генераторных полиномов больше 4-х, то выгоднее поставить кодер с умножителями на число, иначе мультиплексор + 4 кодера %) (для полей GF(2^8) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 26 марта, 2012 Опубликовано 26 марта, 2012 · Жалоба ну собственно все, в итоге ресурс декодера у вас будет чуть больше, чем статического декодера кода с максимальным check Если есть желание, можем скооперироваться и сделать ваш, полностью перестраиваемый декодер. Но с условием, сорцы открываем ? ;) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
negiin 0 26 марта, 2012 Опубликовано 26 марта, 2012 · Жалоба Зачем нужна behavioral model? Чем это лучше симуляции синтезируемого кода? Ведь в разработку добавляется дополнительный этап сравнения двух моделей? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 26 марта, 2012 Опубликовано 26 марта, 2012 · Жалоба Зачем нужна behavioral model? Чем это лучше симуляции синтезируемого кода? Ведь в разработку добавляется дополнительный этап сравнения двух моделей? а смотря код того и другого вы не можете сделать выводы? :) вопросы методологии разработки неоднократно обсуждались на этом форуме, воспользуйтесь поиском. Эта тема не совсем для этого %) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lomey47 0 28 марта, 2012 Опубликовано 28 марта, 2012 · Жалоба Доброго времени суток!прочитал представленные исходники!и никак не могу разобраться, как все-таки поступать, в процедуре Ченя, с укороченными кодами?у меня получаются позиции ошибок но соответственно со смещением на длину укорочения кода!пытался задерживать FIFO на эту задержку но получается расхождение!может кто нибудь подскажет как правильно быть? заранее спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lomey47 0 29 марта, 2012 Опубликовано 29 марта, 2012 · Жалоба Вопрос разрешился!)))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
negiin 0 29 марта, 2012 Опубликовано 29 марта, 2012 · Жалоба Делаю параллельный БЧХ. При этом он получается в несколько раз больше Рид-Соломона при той же пропускной способности. Так должно быть и почему? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amelyutin9 0 29 марта, 2012 Опубликовано 29 марта, 2012 · Жалоба Делаю параллельный БЧХ. При этом он получается в несколько раз больше Рид-Соломона при той же пропускной способности. Так должно быть и почему? Я так понимаю все зависит от параметров ваших кодов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 30 марта, 2012 Опубликовано 30 марта, 2012 · Жалоба Делаю параллельный БЧХ. При этом он получается в несколько раз больше Рид-Соломона при той же пропускной способности. Так должно быть и почему? вы хотели сказать при той же скорости кодирования и таком же размере блока в символах? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
negiin 0 1 апреля, 2012 Опубликовано 1 апреля, 2012 · Жалоба Приведу пример 2 декодера BCH(2040,1930) по 8 бит занимают 20% в EP2AGX45DF29C4. При этом блок Berlekamp–Massey только один. 2 РС декодера RS(255,239) по 8 бит занимает примерно 500 ячеек, т.е. значительно меньше. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 1 апреля, 2012 Опубликовано 1 апреля, 2012 · Жалоба Приведу пример 2 декодера BCH(2040,1930) по 8 бит если имелось в виду по 8 бит за 1 такт, то чему удивляться то? ручками распишите получаемую логику на уровне функций и это станет очевидно. ЗЫ. если вам нужна производительсность бчх 8 бит за 1 такт (что, если брать например сыклон 3, соответствует ~200 мегабайт в секунду), то как вариант поставить 8 декодеров, с одним блоком BM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться