Перейти к содержанию
    

Всем доброго дня!

Делаю новый проект с nios,похоже снова что то напутал,застрял на загрузке.

После включения питания и загрузки хард-части начинает грузиться софт-часть,но как-то странно.На линии epcs_flash_controller_dclk идут пачки клока по 8 тактов и интервалом 2 мкс,этот процесс длится примерно 8 секунд после чего полная тишина.Причём линия epcs_flash_controller_sce так и остаётся в нуле. Мемори-эдитором смотрел область памяти - там только 0xFF ,т.е. загрузки из epcs не происходит.Посмотрите,плз,нет ли ошибок в qsys.

post-18832-1392210458_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 _Anatoliy

тут надо бы ещё лог сообщений Qsys (если есть варнинги), настройки NIOS2 и сообщения при сборке - какие там варнинги по ходу дела. А так если не ругается Qsys - значит 100% дело в настройках а не в соединении.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 _Anatoliy

тут надо бы ещё лог сообщений Qsys (если есть варнинги), настройки NIOS2 и сообщения при сборке - какие там варнинги по ходу дела. А так если не ругается Qsys - значит 100% дело в настройках а не в соединении.

Спасибо! Qsys при сборке выдаёт 4 варнинга,один о том что не задействовано прерывание SPI, и три касаемо епцс-загрузчика.Но что они означают?

 

Вот настройки корки ниос.

 

Альтера говорит что подобные варнинги вроде можно игнорировать.

post-18832-1392213003_thumb.png

post-18832-1392213704_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 _Anatoliy

На счёт варнингов - так оно и есть, это частично AV-ST интерфейс, он вам не надо.

В принципе классическая конфигурация, как по документам, должен быть автоматом сгенерирован загрузчик и всё должно работать.

А версия софта у вас какая (там просто в 13м квартусе помнится epcs_flash_controller сильно "доработан" - не исключено что что-то поломали когда "дорабатывали")? Если 13я - возможно есть смысл откатиться на более позднюю версию..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Квартус 12.1

А таки похоже что-то в qsys не сростается.Не меняя ничего остального просто добавил в qsys ещё три компонента : sysid,jtag_uart и spi_slave - поведение изменилось коренным образом.Теперь после взвода CONF_DONE вообще нет обращения к epcs.Я в шоке - каждый новый проект как новый бой.Что ещё можно сделать?Пока попробую с нуля собрать qsys(сейчас использовал заготовку от прошлого проекта).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

..Что ещё можно сделать?..

Можно в принципе попробовать в 9/10 квартусе - там точно всё работало, потом посмотреть хекс-файло которое сделано в новой и в старой вериях. Возможно его замена в 12й версии даст какие то результаты..

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

у ксалинкса взять старый проект и адаптировать под новый - 100% гарантия глюков. Всегда проект делаю заново, и ксалинкс еще библиотеки перекомпиливает постоянно под разные конфигурации с отладкой и без, потому старое в новое - лучше заново. Думаю что они не сами это придумали и у альтеры подобные проблемы)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

После включения питания и загрузки хард-части начинает грузиться софт-часть,но как-то странно.На линии epcs_flash_controller_dclk идут пачки клока по 8 тактов и интервалом 2 мкс,этот процесс длится примерно 8 секунд после чего полная тишина.Причём линия epcs_flash_controller_sce так и остаётся в нуле. Мемори-эдитором смотрел область памяти - там только 0xFF ,т.е. загрузки из epcs не происходит.Посмотрите,плз,нет ли ошибок в qsys.

А EPCS-ку каким образом прошивали?

Если мне склероз не изменяет, с каких-то 12-х версий FlashProgrammer начал вести себя непонятным образом, и приходилось прошивать конфигуратор через JIC (предварительно нужно было преобразовывать sof и elf в формат flash, затем из flash в hex, затем объединять оба этих hex'а в jic).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А EPCS-ку каким образом прошивали?

Если мне склероз не изменяет, с каких-то 12-х версий FlashProgrammer начал вести себя непонятным образом, и приходилось прошивать конфигуратор через JIC (предварительно нужно было преобразовывать sof и elf в формат flash, затем из flash в hex, затем объединять оба этих hex'а в jic).

Ага,примерно так и делаю - sof и elf в формат flash, затем из эльфовской flash в hex, затем объединяю hex и sof в jic.

Посмотрите,плз,скрипт на наличие косяков.

sof2flash --epcs --input=nios_kit.sof --output=nios_kit_hw.flash  --verbose
elf2flash --input=nios_2s_app.elf --output=nios_kit_sw.flash --epcs --after=nios_kit_hw.flash --verbose 
nios2-elf-objcopy -I srec -O ihex nios_kit_sw.flash  nios_2s_sw.hex --verbose

Вот отчёт :

BLOCK               START ADDRESS        END ADDRESS

Page_0                0x00000000        0x0003CFDB
nios_2s_sw.hex        0x0003CFDC        0x0003F267

Пересборка qsys и bsp с нуля ничего не дала,на линии epcs_flash_controller_dclk идут пачки клока по 8 тактов и интервалом 2 мкс,этот процесс длится примерно 8 секунд после чего полная тишина.Причём линия epcs_flash_controller_sce так и остаётся в нуле.

Я правильно понимаю что если epcs_flash_controller используется только для загрузки программы то его выход прерывания можно не подключать?

Ещё добивает что предыдущий проект я делал именно в Q12.1 и всё загружалось и работало... И скрипты те же...

 

Только камень другой,в прошлом проекте был EP3C55F484, а в новом EP3C25E144.Жаль железа уже нет,проверил бы на старом камне.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Совет прост.

Начните отладку с ончип памяти!

Причём убедитесь, что в начале она инициализируется реальным hex файлом, чтобы при старте и до прогрузки из Эклипса ниос не сошёл с ума от мусора в ончипе.

Когда всё заработает - копайте в сторону скриптов и интерфейса FlashProgrammer.

Бывало, что иногда только через меню получалось зашиться во флеш через программер, а скриптами - нифига. Разбираться было некогда.

К тому же Эклипс умеет генерить сразу готовый файл .flash.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Совет прост.

Начните отладку с ончип памяти!

Причём убедитесь, что в начале она инициализируется реальным hex файлом, чтобы при старте и до прогрузки из Эклипса ниос не сошёл с ума от мусора в ончипе.

Когда всё заработает - копайте в сторону скриптов и интерфейса FlashProgrammer.

Бывало, что иногда только через меню получалось зашиться во флеш через программер, а скриптами - нифига. Разбираться было некогда.

К тому же Эклипс умеет генерить сразу готовый файл .flash.

Спасибо!В том то и дело что ончип память не инициализируется - epcs_flash_controller читает что-то из епцс целых 8 секунд,после этого в памяти нули. Я сейчас попробовал из Эклипса по jtag в режиме отладки приконнектиться,пишет что ошибка при загрузке.Вот репорт:

!ENTRY com.altera.sbtgui.launch 1 0 2014-02-13 14:27:02.406
!MESSAGE Executing: [C:\altera\12.1\quartus\bin\cygwin\bin\bash.exe, -c, nios2-download '--cable=USB-Blaster on localhost [USB-0]' --device=1 --instance=0 --accept-bad-sysid --sidp=0x12070 /cygdrive/e/My_Designs/2014/ModulatorCOFDM-8K_2x/Nios_kit/software/nios_2s_app/nios_2s_app.elf]

!ENTRY com.altera.sbtgui.launch 4 0 2014-02-13 14:27:05.078
!MESSAGE Failed Executing: [nios2-download, '--cable=USB-Blaster on localhost [USB-0]', --device=1, --instance=0, --accept-bad-sysid, --sidp=0x12070, /cygdrive/e/My_Designs/2014/ModulatorCOFDM-8K_2x/Nios_kit/software/nios_2s_app/nios_2s_app.elf] return code: 4, 'other error'

!ENTRY com.altera.sbtgui.launch 4 0 2014-02-13 14:27:05.078
!MESSAGE Downloading ELF Process failed

Как это понять?Может это быть причиной?

post-18832-1392294793_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Только камень другой,в прошлом проекте был EP3C55F484, а в новом EP3C25E144.Жаль железа уже нет,проверил бы на старом камне.

Стандартный вопрос - брюхо у EP3C25E144 не забыли к земле припаять?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Стандартный вопрос - брюхо у EP3C25E144 не забыли к земле припаять?

Не,это святое :rolleyes:

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо!В том то и дело что ончип память не инициализируется - epcs_flash_controller читает что-то из епцс целых 8 секунд,после этого в памяти нули.

1. Ну а конфигурация ПЛИСки происходит корректно? CONF_DONE и INIT_DONE взводятся?

2. А если сперва залить конфигурацию по JTAGу, то после этого будет с эклипсом коннектиться?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. Ну а конфигурация ПЛИСки происходит корректно? CONF_DONE и INIT_DONE взводятся?

2. А если сперва залить конфигурацию по JTAGу, то после этого будет с эклипсом коннектиться?

1). Всё корректно и всё взводится.

2). Так тоже не коннектится.

 

Пока мыслей нет решил захватить сигналы чтения из епцс сигналтапом,может что и прояснится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...