Jump to content

    

Shaeto

Участник
  • Content Count

    15
  • Joined

  • Last visited

Posts posted by Shaeto


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

     

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

     

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

     

    de10_db25_vip_reset.jpg

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

     

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

     

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

     

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

     

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

     

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

     

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

     

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

     

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

     

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

     

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

     

     

  6. 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 ждать тут не приходится ?

  7. извиняюсь за некропостинг, нигде не могу найти RMI Alchemy BSP WinCE 6, для Au1320/1300, может кто то пользуется ? нужно для хобби экспериментов,

     

    заранее спасибо за любую информацию

     

  8. а собственно какую роль тогда играют nop ? цикл то тоже не святым духом исполняется, такие же команды проца. скорее имеется ввиду что после выключения/включения ADC обратно должно пройти как минимум 2 команды для того чтобы можно было установить бит старта калибровки.

    в ds например на f103vet6 вообще такого примечания нет, только указано минимальное время необходимое на калибровку.

     

  9. не думаю что есть смысл усложнять, можно просто использовать crc-16 как основной, если уж речь шла изначально про xml то явно ничего один дополнительный байт не испортит :)

  10. учитывая что вопрос про c++ обычно сериализация идет через класс потока, напишите или используйте любой готовый примитивный поток для передачи основных типов данных с указанием в потоке размерности и типа. собственно это и заменит xml. если уж совсем хочется универсальности то гоните все через хэш типа "имя"="значение", и разбираете на входе по именам. в таком случае поток должен уметь преобразовывать основные типы в строки ну и естественно строки посылать. crc8 хорошо бы добавить.

     

    то есть поток будет выглядеть как то так:

     

    1. crc8 [длина строки имени] [строка имени] [длина строки значения] [строка значения]

    .....

     

    достаточно удобный правда и медленный способ, но уж во сто крат быстрее любого xml.

     

  11. ucGUIBuilder, китайская прога, найти и скачать можно погуглив по названию с китайского сайта, может быть хорошим подспорьем для разработки шаблонов диалогов на основе uC/GUI

     

    работает, интерфейс правда весь в иероглифах но достаточно стандартный.

     

    если кто-то знает аналоги сообщите