реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Downloading ELF Process failed
LAS9891
сообщение Mar 17 2017, 10:39
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Собрал проект Qsys:
Прикрепленное изображение

Прикрепленное изображение


Частоты:
c0 = 50 MHz,
c1 = 50 MHz Clock phase shift = 3 ns,
c2 = 25 MHz.

Собираю в Qsys->собираю в Quartus->конфигурирую Nios в железе->создаю в Eclipce новый проект HelloWorld->генерю проект BSP->собираю проект-> пробую шить Nios-> Downloading ELF Process failed. В Run Configurations ошибок никаких нет. Полагаю что собираю в Qsys что-то неправильно. Что не так?
Go to the top of the page
 
+Quote Post
doom13
сообщение Mar 17 2017, 12:24
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



1. Проверяйте сигналы сброса и клоки.
2. В системе есть SDRAM
-проверьте настройки BSP, куда кладется программа для Ниос, могло автоматом расположить её в SDRAM, и (если есть проблемы чтения/записи памяти) выбрасывает такую ошибку.
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 17 2017, 12:37
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Цитата(doom13 @ Mar 17 2017, 15:24) *
Вначале проверяйте сигналы сброса и клоки.

Элемент Video Sync Generator генерит сигнал VSG_DEN, если элемент работает корректно и на выходе генерятся сигналы синхронизации. В Quartus сигнал VSG_DEN я подключил к светодиоду и после конфигурирования Nios в плис светодиод светится, сигналы синхронизации генерятся, и плис реагирует на нажатие кнопки RESET. Это не подтверждает корректность сигналов сброса и клоков? или стоит вывести все клоки на внешние выводы и проверить каждый?

Цитата(doom13 @ Mar 17 2017, 15:24) *
2. В системе есть SDRAM
-проверьте настройки BSP, куда кладется программа для Ниос, могло автоматом расположить её в SDRAM, и (если есть проблемы чтения/записи памяти) выбрасывает такую ошибку.

Настройки BSP:
Прикрепленное изображение


Go to the top of the page
 
+Quote Post
doom13
сообщение Mar 17 2017, 12:44
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(LAS9891 @ Mar 17 2017, 15:37) *
Настройки BSP:

Если не уверены, что SDRAM контроллер нормально общается с памятью, расположите всё в onchip_memory.


Под сбросом имел ввиду активный уровень RESET - для Nios II "0" (было дело - не мог понять, почему программа Nios не грузится по JTAG sm.gif ).
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 17 2017, 12:51
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Цитата(doom13 @ Mar 17 2017, 15:41) *
Если не уверены, что SDRAM контроллер нормально общается с памятью

Как это проверить наверняка?

Цитата(doom13 @ Mar 17 2017, 15:44) *
расположите всё в onchip_memory.

Расположил. Полезли ошибки вида:
Description Resource Path Location Type
address 0x4b764 of VGA_attempt2.elf section `.rwdata' is not within region `onchip_memory' VGA_attempt2 C/C++ Problem
Go to the top of the page
 
+Quote Post
Raven
сообщение Mar 17 2017, 13:09
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Для начала попробуйте собрать/загрузить/запустить какой-нибудь "Hello, World!" в onchip memory. В NIOS2 IDE даже заготовки есть, рекомендую, кстати, Memory Test заготовку - пригодится на следующем шаге для проверки SDRAM.
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 17 2017, 13:17
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Цитата(Raven @ Mar 17 2017, 16:09) *
Для начала попробуйте собрать/загрузить/запустить какой-нибудь "Hello, World!" в onchip memory.

Попробовал - все загрузилось, только еще в BSP Editor в Linker Sections Mappings везде выставил onchip_memory.

Вообще я пытаюсь повторить вот этот проект:
http://we.easyelectronics.ru/plis/formirov...em-nios-ii.html
Щас попробовал отредактировать проект как у автора - вообще удалил onchip_memory, вектора в Nios настроили на SDRAM, собрал проект в Qsys-> собрал в Quartusе-> загрузил Nios в ПЛИС-> собрал в Eclipce какой-нибудь "Hello, World!"-> пробую шить Nios - опять та же ошибка Downloading ELF Process failed и все.
Go to the top of the page
 
+Quote Post
Raven
сообщение Mar 17 2017, 13:29
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



SDRAM тестировали? (из программы, запущенной в onchip_ram)
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 20 2017, 06:23
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Цитата(Raven @ Mar 17 2017, 16:29) *
SDRAM тестировали? (из программы, запущенной в onchip_ram)

Решил начать заново. Сделал в Qsys изначальный проект:
Прикрепленное изображение

Прикрепленное изображение

В настройках Nios вектора назначил в onchip_memory. Далее собрал в Qsys-> собрал в Quartus-> зашил Nios в FPGA-> собрал в Eclipce стандартный проект Hello World-> загружаю в Nios-> Downloading ELF Process failed!
Иду в BSP Editor->Linker Sections Mapping, там вижу вот что:
Прикрепленное изображение

Меняю все вот так:
Прикрепленное изображение

Проект шьется без ошибок.
Далее делаю проект с тестом SDRAM... Собираю в Eclipse стандартный проект Memory Test. Пробую зашивать в Nios - не шьется. Меняю настройки в BSP Editor->Linker Sections Mapping на те что на последней картинке -> заново собираю-> зашиваю-> зашилось!
Делаю тест SDRAM. Вот что вижу:

Testing RAM from 0x8000000 to 0xFFFFFFF
-Data bus test passed
-Address bus test failed at address 0x8000004
Press enter to continue...

Сообщение отредактировал LAS9891 - Mar 20 2017, 06:38
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 20 2017, 08:06
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Еще такой вопрос. Если в консоли следующий текст:
-Data bus test passed
-Address bus test passed
-Byte and half-word access test passed
-Testing each bit in memory device. . . passed

passed - означает что тест пройден успешно или тест пропущен?
Go to the top of the page
 
+Quote Post
doom13
сообщение Mar 20 2017, 08:12
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(LAS9891 @ Mar 20 2017, 11:06) *
Еще такой вопрос. Если в консоли следующий текст:
-Data bus test passed
-Address bus test passed
-Byte and half-word access test passed
-Testing each bit in memory device. . . passed

passed - означает что тест пройден успешно или тест пропущен?

Тест пройден, а в чём была проблема?
Цитата
-Address bus test failed at address 0x8000004
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 20 2017, 10:04
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Цитата(Raven @ Mar 17 2017, 16:29) *
SDRAM тестировали? (из программы, запущенной в onchip_ram)

Пробую сделать тест для другого проекта. При сборке в Eclipse возникают ошибки:
Прикрепленное изображение

При этом настраиваю так:
Прикрепленное изображение

Как избавиться от варнингов?

Сообщение отредактировал LAS9891 - Mar 20 2017, 10:05
Go to the top of the page
 
+Quote Post
doom13
сообщение Mar 20 2017, 11:39
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(LAS9891 @ Mar 20 2017, 13:04) *
Пробую сделать тест для другого проекта. При сборке в Eclipse возникают ошибки:
Как избавиться от варнингов?

Это не варнинги, это ошибки!
Ваша программа не помещается в выделенную ей память.
Пути решения:
1) В настройках BSP ставим галки enable_small_c_library, enable_reduced_device_drivers
2) Увеличиваем размер памяти под программу (в данном случае размер onchip_memory)
3) Можете разместить программу во внешней памяти (SDRAM ведь уже работает)
Go to the top of the page
 
+Quote Post
Raven
сообщение Mar 20 2017, 18:15
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Цитата(LAS9891 @ Mar 20 2017, 09:23) *
Testing RAM from 0x8000000 to 0xFFFFFFF
-Data bus test passed
-Address bus test failed at address 0x8000004
Press enter to continue...

С SDRAM явно непорядок. Тест адресной шины не пройден. Ошибка найдена в самом начале SDRAM'а.

Просмотрите адресные сигналы на предмет залипонов, перемычек, плохих контактов.

Еще можно или поставить брейкпойнт в тесте на точке обнаружения ошибки, и посмотреть детали (что ожидалось и что реально вычитали). Это может дать подсказку, что и на каких линиях искать. Ну, или набросать свой адресный тест (это всего-то 2 цикла: один записывает, другой считывает и проверяет), и пропустить его через проблемную область (с printf'ами).
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 22 2017, 11:02
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Вопрос такой. В Qsys установил частоту тактирования для NiosII 100 MHz (с помощью PLL конечно). В Quartuse проект собрался. Далее повысил частоту тактирования для NiosII до 150 MHz - при сборке в Quartuse возникают Critical Warning: Timing requirements not met. Что оно значит? Как исправить?
Go to the top of the page
 
+Quote Post
Raven
сообщение Mar 22 2017, 13:40
Сообщение #16


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Цитата(LAS9891 @ Mar 22 2017, 14:02) *
Далее повысил частоту тактирования для NiosII до 150 MHz - при сборке в Quartuse возникают Critical Warning: Timing requirements not met. Что оно значит?

То и значит, что Quartus говорит - не смог он синтезировать систему, которая способна работать на такой частоте.

Цитата(LAS9891 @ Mar 22 2017, 14:02) *
Как исправить?

Вернуться к частоте, для которой Quartus может синтезировать систему без нарушений временнЫх физических ограничений (timing constraints). Да, вот еще что: частота, указываемая в модулях QSys перед ее генерированием, должна соответствовать действительности (на основе этой информации QSys формирует соответствующие sdc-файлы, учитываемые при последующем синтезе в Quartus).
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 09:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01496 секунд с 7
ELECTRONIX ©2004-2016