Jump to content

    
Sign in to follow this  
Shaeto

DE10 Nano проблема с программированием PLL Reconfigure

Recommended Posts

altera quartus 17.1, плата de10 nano soc, есть qsys с hps, vip и pll+pll reconf для тактирования cvo и framebuffer

 

все вроде хорошо и принцип скопирован с интеловского примера отсюда https://github.com/intel/de10-nano-hardware

 

есть засада - когда в u-boot скрипте грузится и запускается программа инициализации hdmi то все намертво виснет когда идет обращение к регистрам pll reconfigure,

fpga загружено и мосты разрешены

 

пробовал openocd + gdb подключаться - после команды записи в область памяти регистров pll просто пропадает связь с hps до нажатия на ресет

 

может кто то еще встречался с таким ?

 

попробую свежую сборку u-boot от альтеры может в оригинальном u-boot неправильно что то инициализируется, хотя пока pll не применял то вроде все устраивало

 

более широко ставя вопрос: как блин отлаживать то HPS с возможностью полной остановки после каждой инструкции и проверкой всех состояний системы ? DS-5 это ужас какой то, openocd+gdb то же самое вид сбоку, я правильно понимаю что ничего типа отладчиков Keil или AVR Studio ждать тут не приходится ?

Edited by Shaeto

Share this post


Link to post
Share on other sites

Так после того, как PLL перенастроена, она вроде перестаёт что-либо генерировать. Её надо сбросить и дождаться, пока она залочится с новыми параметрами, или я не прав?

 

Share this post


Link to post
Share on other sites
Так после того, как PLL перенастроена, она вроде перестаёт что-либо генерировать. Её надо сбросить и дождаться, пока она залочится с новыми параметрами, или я не прав?

 

все правильно, только до этого даже не доходит, как только пытаюсь писать в регистр режима компоненты pll reconfigure так сразу раз - и hps повис, видимо по шине держат

 

 

Share this post


Link to post
Share on other sites

Я бы скорее поставил на то, что вы пишете что-то не то или не туда, в результате чего PLL теряет работоспособность и обратно залочится уже не может.

Share this post


Link to post
Share on other sites
Я бы скорее поставил на то, что вы пишете что-то не то или не туда, в результате чего PLL теряет работоспособность и обратно залочится уже не может.

 

проверил - все по даташиту пишется, параметры совпадают с вычисленными калькулятором

 

плохо что не отладить это дело нифига, USB Blaster II впадает в буйство и не может управлять HPS после команды записи в регистр режима pll reconfigure, openocd рапортует о битых пакетах и все теряется в тумане - я даже понять не могу что конкретно делает процессор в этот грустный момент

 

Share this post


Link to post
Share on other sites

Коллеги, а не подскажете существует ли где *.pcb на эту плату? Или хотя бы фотки по слоям? Производитель вроде не даёт, только схему.

Share this post


Link to post
Share on other sites

отчитываюсь что нашел в чем дело но не понимаю почему так

 

в интеловской программе de10_nano_hdmi_config.c инициализации HDMI подсистемы ПЕРЕД конфигурацией PLL выставляются сигналы сброса для CVO и Frame Buffer и удерживаются до окончания программирования PLL

 

вот как раз из за того что удерживается этот сигнал похоже блокируется шина и на записи в регистры PLL все дружно виснут

 

причем с помощью SignalTap я не нашел что конкретно блокируется (не LW AXI точно), может и DD3 если там ошибка в VIP есть

 

Share this post


Link to post
Share on other sites
плохо что не отладить это дело нифига, USB Blaster II впадает в буйство

Попробуйте первый бластер. У меня случалось, что дебаггер к ниосу через второй бластер вообще не подключался, а через первый - запросто.

 

Share this post


Link to post
Share on other sites
Попробуйте первый бластер. У меня случалось, что дебаггер к ниосу через второй бластер вообще не подключался, а через первый - запросто.

 

спасибо, как только перепаяю разъем то попробую :) первый раз неправильно впаял - jtag у них как оказалось не стандартно направлен по отношению к других :)

 

Share this post


Link to post
Share on other sites

вот посмотрите, пожалуйста, снята signaltap-грамма состояний компонентов при выставлении сигнала сброса из скрипта u-boot

 

сигнал ставится и снимается записью в регистры cvo_reset_pio из hps, после того как ресет дергнулся - все, отладчик теряет связь с HPS и что проц делает неизвестно.

 

control_interrupt_irq ? должна обрабатываться дефолтными заглушками, это нормально что irq active-low ?

 

de10_db25_vip_reset.jpg

Edited by Shaeto

Share this post


Link to post
Share on other sites

пока непонятно - отлучил от внешнего ресета компонент Clocked Video Output II и все прошло, но симптомов я хоть убей не могу объяснить, может все таки прерывание

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this