Jump to content

    

soldat_shveyk

Свой
  • Content Count

    531
  • Joined

  • Last visited

Community Reputation

0 Обычный

About soldat_shveyk

  • Rank
    Знающий
  • Birthday 06/21/1981

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array

Recent Profile Visitors

5047 profile views
  1. Спасибо! Отличный пример. И хороший повод поставить свежий Matlab :) Поигрался с этой моделью DFE RLS, вроде работает даже при низких SNR около 3 дБ. Попробую разобраться с этой технологией.
  2. Да, немного про другое. Возможно ли как-то подстраивать коэффициенты эквалайзера делая несколько попыток декодирования и ориентируясь на SNR после декодера? У меня короткий блочный код, который я декодирую через максимальное правдоподобие. Сейчас у меня перед декодером стоит фильтр с обратной импульсной характеристикой канала. Не самый лучший способ. Есть куда улучшать :)
  3. Доброго дня! Подниму старую тему по многолучевке. Так и не довел до конца в прошлом году, теперь уже точно надо добить :) В общем, идея следующая: по известной последовательности получаю импульсную характеристику канала, но чтобы не размножать шумы не делаю умножение сигнала на инверсную имп. характеристику. У меня сейчас довольно короткий блочный код, который я просто перебираю в MLE декодере. Соответственно, оценив h канала, я могу пропускать через нее все возможные варианты кода и сравнивать с принятым из канала пакетом. У кого меньше метрика - значит тот и передавался. Импульсная характеристика канала, которую я получил по известной последовательности, начинает устаревать, пока передаются данные а не training. Надо бы ее корректировать по результатам декодирования пакетов. Если у меня есть избыток вычислительной мощности, то я могу декодировать пакет не один раз, подстраивая коэффициенты ИХ канала, чтобы SNR улучшалось. То есть фактически делать эквалайзер. Получается не то что бы классическое решение. Вот не понятно: как подстраивать коэффициенты ИХ канала при каждой итерации декодирования? Допустим, мне не лень хоть 10 раз декодировать. Может я и велосипед изобретаю, но пробежался по выше перечисленным книгам по эквалайзированию, там ничего похожего не нашел.
  4. LFCR удобен тем, что можно не хранить последовательность, а генерить по известному закону. Если есть возможность хранить последовательность, то можно найти подходящую по АКФ последовательность случайных бит перебором или поиском. Просто генерим случайные последовательности через randi() в матлабе, вычисляем АКФ и выбираем лучшую.
  5. По вышеприведенной инструкции сделал mentor_example.do, в котором перечислил файлы тестового проекта: vlog -vlog01compat -work work ../test_cnt.v vlog -vlog01compat -work work ../test_cnt_tb.v vlog -vlog01compat -work work ../multer/synth/multer.v Запустил do mentor_example.do - и все заработало, ModelSim просимулировал проект. Я правда так и не понял - какая это был симуляция: RTL или gate-level :) Разберусь завтра. Но это капец, товарищи! Как-то компилил. Сделал пустой проект с 8-битным счетчиком без IP ядер, проект компилился.
  6. Добавил в тестовый проект IP-ядро умножителя. В настройках Квартуса Tools->Options->IP Settings включил "Always regenerate design files for IP cores" и "Generate IP simulation model when genetating IP" (были отключены). В Assignments->Settings->EDA Tool Settings включил "Run EDA Netlist Writer during compilation (require Design entry/synthesis, Simulation, etc.)" (была отключена). После этого сработала генерация скрипта Tools-> Generate Simulation setup script for IP и в папке проекта появился файл mentor/msim_setup.tcl Получается, чтобы что-то просимулировать, надо IP-ядро добавлять?
  7. Спасибо, blackfin! Это очень интересно, не знал. Для начала нужен хотя-бы RTL и gate-level functional simulation.
  8. Сделал чистый проект для Cyclone10GX без IP-ядер. Просто тестовый счетчик и тестбенч к нему. Скомпилировал. Теперь хочу просимулировать. Запускаю Tools->Generate Simulator Setup script for IP, выдает следующую ошибку: Info: Running command: ip-setup-simulation --quartus-project=test_cnt --revision=test_cnt --output-directory=C:/_work/Quartus_PRP_Cnt/ --use-relative-paths Error: 2021.06.02.17:25:05 Error: No spd files are included in quartus project C:/_work/Quartus_PRP_Cnt/test_cnt.qpf, revision test_cnt. Вроде как все логично, у меня нет IP-ядер в этом проекте. Но тогда как сгенерить скрипт запуска для ModelSim?
  9. Так я их и перегенерил. После того, как поменял чип с Арии на Циклон, квартус сам предложил это сделать и все прошло успешно. Но видимо не до конца ) Проект после этого перекомпилировал естественно.
  10. Черт его знает. Это я тестовый проект скачал с сайта и его переделал на Cyclone10GX. Сейчас попробую сделать с нуля простой тестовый проект с одним счетчиком и просимулировать его.
  11. Сработало! Моделсим запустился и все нарисовал. После добавления в этот список: "twentynm_ver" "twentynm_hssi_ver" "twentynm_hip_ver" Запускаю точно по мануалу. Просто затык был в библиотеках, как оказалось.
  12. Не нашел, где это делается. Но в файле msim_setup.tcl вижу следующую строку: set logical_libraries ["work" "work_lib" "altera_ver" "lpm_ver" "sgate_ver" "altera_mf_ver" "altera_lnsim_ver" "cyclone10gx_ver" "cyclone10gx_hssi_ver" "cyclone10gx_hip_ver"] Попробую добавить сюда
  13. Вот команда: vsim -L work -L work_lib -L altera_ver -L lpm_ver -L sgate_ver -L altera_mf_ver -L altera_lnsim_ver -L cyclone10gx_ver -L cyclone10gx_hssi_ver -L cyclone10gx_hip_ver -L lpm_counter_191 -L UP_COUNTER_IP -L DOWN_COUNTER_IP -L altera_iopll_1931 -L ClockPLL -L ram_2port_2020 -L RAMhub tb Действительно, никакой библиотеки twentynm здесь не видно.
  14. Я просто не могу понять - видит он все нужные библиотеки или нет. Поэтому и прописал руками для надежности.
  15. Все проделал заново. Скомпилировал библиотеки, и указал к ним путь в файле <проект>/mentor/modelsim.ini: others = C:/_work/ModelsimLib/modelsim.ini Также в файле ini библиотек указал путь к общим библиотекам, которые установились вместе с ModelSim: others = C:/intelFPGA_pro/20.4/modelsim_ae/modelsim.ini Сгенерировал скрипт симулятора в Quartus, указал там все файлы проекта по мануалу. Не помогает, ModelSim выдает все ту же ошибку, что библиотека не найдена: # ** Error: (vsim-3033) Instantiation of 'twentynm_iopll' failed. The design unit was not found. В файле C:\intelFPGA_pro\20.4\modelsim_ae\modelsim.ini есть вот такие строки: twentynm_ver = $MODEL_TECH/../altera/verilog/twentynm twentynm_hssi_ver = $MODEL_TECH/../altera/verilog/twentynm_hssi twentynm_hip_ver = $MODEL_TECH/../altera/verilog/twentynm_hip Переменную среды в Win10 я создал: MODEL_TECH = C:\intelFPGA_pro\20.4\modelsim_ae\win32aloem Про ключ -L не понял. Это в каком файле надо искать?