Jump to content

    

Vivado (беда с MIG)

Привет всем.

 

Использую Вивадо 2016.4.

 

Недавно начал разбираться с ядром MIG. Настроил, сгенерил, позапускал пример...

Написал свой модуль управления с использованием интерфейса UI (сделал это для упрощения себе жизни в дальнейшем).

Сейчас немного запарился с моментом, когда RDY падает, а потом снова встает в 1...но с этим я разберусь...главная проблема в том, что при изменении кода приходится заново перезапускать симуляцию (это и понятно), а в начале запуска ядро проводит "долгую" калибровку. На моей машине с i5 и 16Г памяти эта калибровка занимает пол-часа.

 

Подскажите, плз, как отключить этот режим калибровки в начале работы ядра??? Очень думается, что где-то что-то надо установить в 1 или в 0...

Share this post


Link to post
Share on other sites

Посмотрел я эту тему...это все описано для сгенерированного примерного проекта, в котором в тестбенче заводится параметр SIM_BYPASS_INIT_CAL...

Плюс ко всему это все на верилоге, а я работаю на vhdl, но не в этом проблема, а в том, что топовый файл MIG-ядра не имеет никаких параметров.

Еще я в pdf-ке на ядро нашел всякие параметры. Но не понятно, где их можно изменить...ковырять сгенеренные исходники ядра? или как-то иначе?

 

Кто-нибудь отключал вообще эту калибровку??

Share this post


Link to post
Share on other sites

Я может че не так делаю, но у меня в топовом файле (.vhd) сотня дженериков, в том числе SIM_BYPASS_INIT_CAL.

Внутри топового файла - модуль mig_7series_v1_9_memc_ui_top_std.v, у которого та же сотня параметров.

Еще глубже идет mig_7series_v1_9_mem_intfc.v и снова куча параметров.

 

Скиньте что ли архив с исходниками, которые нагенерил MIG.

 

 

 

Share this post


Link to post
Share on other sites

В-общем, похоже нельзя избавиться от калибровки.

В файл mig_7series_0_mig_sim.v (топовый файл ядра для симуляции) есть такие строки:

   parameter SIM_BYPASS_INIT_CAL   = "FAST",
                                     // # = "OFF" -  Complete memory init &
                                     //              calibration sequence
                                     // # = "SKIP" - Not supported
                                     // # = "FAST" - Complete memory init & use
                                     //              abbreviated calib sequence

Я пробовал менять значение на SKIP, но при этом калибровка вообще не завершилась.

Так что максимум, что можно из этого поиметь, это сокращенный вариант калибровки при значении FAST.

 

Или я что-то не так делаю и все-таки можно полностью избавиться от калибровки??

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this