Jump to content

    

TamRazZ

Участник
  • Content Count

    26
  • Joined

  • Last visited

Community Reputation

0 Обычный

About TamRazZ

  • Rank
    Участник
  • Birthday 02/11/1989
  1. Нужно именно синтезируемое. Пока Хэмминг для тренировки, в будущем, конечно, LDPC=) сделать шаблон через функцию в параметризуемом интерфейсе Можно поподробнее не совсем понял, терминология у меня хромает пока...
  2. Добрый день! Подскажите, пожалуйста, простой и доступный способ реализации на SV функции генерации единичной матрицы. Вот набросок моего видения этой функции: function automatic logic[size-1:0][size-1:0] eye (input int size); for (int i = 0; i < size; i++) for (int j = 0; j < size; j++) eye[i][j] = (i == j); endfunction Понятно, что компилятор не видит size в шапке объявляемой функции. Не понятно, как описать функцию, у которой размерность выходного аргумента зависит входного аргумента.
  3. Добрый день! Возникла проблема при гателевел симуляции проекта. Netlist Writer при компиляции не создает необходимых *.sdo и *.svo файлов (пишу на System Verilog). Из-за этого не запускается симуляция. Причем данный эффект возникает при симуляции под Arria V при выборе плисы Cyclone III для этого же проекта, необходимые файлы генерируются и симуляция проходит нормально. В чем дело? ЗЫ: Версии САПРов в описании темы..
  4. С шинами вроде разобрался! Спасибо! Подобная же проблема с параметризируемыми модулями... При создании квартусом *.svo или *.vo файла из модуля верхнего уровня пропадают параметры, и когда тестбенч передает значения параметра топ-левел модулю возникает ошибка. Как быть в такой ситуации... В настройках нетлист врайтера ничего подобного не обнаружил...
  5. т.е. structural verilog не поддерживает мультиразмерные сигналы, в принципе? или есть способ "правильного" описания сигнала? Подскажите, как должна выглядеть декларация сигнала out_a в таком случае.
  6. Доброго времени суток! Пытаюсь просимулировать с помощью ModelSim (Altera Edition) проект, созданный в Quartus 13.1. Модули проекта написаны на SystemVerilog. Передача данных от одного модуля к другому осуществляется за счет мультиразмерных packed массивов. RTL симуляция проходит нормально, но когда дело доходит до GateLevel ModelSim выдает ошибку, ругается на эти сигналы. Причина в том, что Quartus создает файл для симуляции *.vo (с временными задержками и тд). При генерации этого файла все мои многоразмерные сигналы вида: output logic [7:0] [255:0] out_a; Превращаются в: out_a_0_0 out_a_0_1 ... и тд. ModelSim эти сигналы не обнаруживает и выдает ошибку. Как быть в таких ситуациях?
  7. Цитата(des00 @ Dec 27 2013, 18:56) никак. одно кодовое слово, заменилось на другое кодовое слово. ЗЫ. тема кстати обсуждалась на форуме многократно Странный какой-то алгоритм, в классическом БМ декодер четко определяет может он декодировать принятую комбинацию или нет, а тут получается неизвестно восстановлена последовательность или нет..(
  8. Цитата(barabek @ Dec 27 2013, 04:43) Если повезет и ошибка будет обнаружимой то в процедуре Ченя будет найдено ошибок меньше, чем степень полинома. Только так. Насколько я понял, степень полинома у нас всегда t. Как же отличить ситуацию, когда произошло ошибок <t и когда >t, если и в том и в другом случае Чень найдет корней меньше t
  9. Использую следующий алгоритм для поиска полинома локаторов: Возник вопрос... Судя по последней строке псевдокода, функция всегда будет возвращать вектор размером t вне зависимости от кол-ва случившихся ошибок, следовательно в случае, когда ошибок > t вернется полином степени не больше t, а значит Чень сможет найти корней не больше t. Как в такой ситуации оценить, сможет декодер восстановить данный пакет или нет.?
  10. Цитата(des00 @ Dec 21 2013, 19:43) ну как бы добить нулями и стартануть алгоритм с нужной точки ? Похоже я вообще не правильно воспринял алгоритм декодирования укороченных кодов... Т.е. даже если я имею укороченный код с N=127 я должен его добить нулями до 255 и прогнать БМА по стандартной программе для обычных кодов.?
  11. Цитата(des00 @ Dec 21 2013, 19:43) на этом форуме выкладывал статически конфигурируемый РС кодер (в том числе и для укороченных кодов и со стираниями), в котором есть в том числе и RiBM реализация. на декодирование уходит check тактов. Ищите, где то тут лежит на SV А можете посоветовать, где почитать словесное описание этого алгоритма.?
  12. Доброго времени суток.! Как выполняется перебор Ченя для укороченных кодов.? Я использую код (127, 120) над полем GF(2^8). Согласно процедуре Ченя мы перебираем все возможные примитивные элементы поля и подставляем в найденный нами полином локаторов ошибок. Все примитивные элементы a^x, которые обнуляют наш полином являются его корнями. Соответственно, степень примитивного элемента (в нашем случае x) является позицией, на которой произошла ошибка. Так я понял теорию, но не понятно, что делать, если у меня коды укороченные и всего 127 позиций на посылку РС, а корень полинома, скажем равен a^220 (220 позиции в моем блоке нет) .?
  13. Цитата(ZASADA @ Dec 19 2013, 22:39) все кого знаю готовые ядра используют. Да, но это стоит денег, к тому же у меня там еще свои навороты ожидаются... так что придется самому писать, да вот что-то пока не выходит каменный цветок..(
  14. Доброго времени суток.! Знаю, подобная тема многократно обсуждалась на просторах этого портала. Но ответа на некоторые вопросы я так и не нашел... Мой первый вопрос касается процедуры Ченя: Как выполняется данный алгоритм для укороченных кодов.? Я использую код (127, 120) над полем GF(2^8). Согласно процедуре Ченя мы перебираем все возможные примитивные элементы поля и подставляем в найденный нами полином локаторов ошибок. Все примитивные элементы a^x которые обнуляют наш полином являются его корнями. Соответственно, степень примитивного элемента (в нашем случае x) я вляется позицией, на которой произошла ошибка. Так я понял теорию, не понятно, что делать, если у меня коды укороченные и всего 127 позиций на посылку РС а корень полинома, скажем равен a^220. .? Мой второй вопрос относится к алгоритму Берлекэмпа-Месси. Я вычитал в интернете, что наиболее эффективный и оптимальный при реализации на ПЛИС алгоритм нахождения полинома локаторов это модификация алгоритма БМ известная как RiBM. Кто-нибудь реализовывал этот алгоритм.? Дайте, пожалуйста ссылку, где можно найти подробное описание этого алгоритма, сам пока не нашел...
  15. Есть ли какие-либо ограничения по использованию flash-памяти для конфигурации Arria V. Грубо говоря, старая циклоновская флешка подойдет.?