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

 
 
43 страниц V  « < 16 17 18 19 20 > »   
Reply to this topicStart new topic
> NIOS для начинающих
Reanimator++
сообщение May 16 2011, 09:05
Сообщение #256


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 1-01-06
Из: Волгоград
Пользователь №: 12 763



Перед тем как делать большой проект лучше разобраться ху из ху. Вы путаете кислое с пресным.
Файл onchip_memory2_0.v является выхлопом генератора SOPC билдера и представляет из себя код нужной вам памяти на верилоге (иногда шифрованый). Собственно на его создании участие SOPC билдера заканчивается, дальше этот файл цепляет квартус и пытается компилировать.
Где-то внутри этого файла стоит ссылка на файл onchip_memory2_0.hex, либо любой другой, который вы укажете в SOPC билдере - см рисунок. При компиляции квартус пытается искать именно этот файл. А не какой либо другой. По умолчанию имя .hex файла равно имени .v файла и равно имени модуля в SOPC. Nios IDE по умолчанию генерит файл, прописанный в SOPC билдере. Просто сделайте чтобы они совпадали.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
juvf
сообщение May 16 2011, 09:11
Сообщение #257


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(naliwator @ May 16 2011, 14:31) *
Assignments -> Settings -> Files

Первым делом туда полез

Цитата(Reanimator++ @ May 16 2011, 15:05) *
Перед тем как делать большой проект лучше разобраться ху из ху. Вы путаете кислое с пресным.
Файл onchip_memory2_0.v является выхлопом генератора SOPC билдера и представляет из себя код нужной вам памяти на верилоге (иногда шифрованый). Собственно на его создании участие SOPC билдера заканчивается, дальше этот файл цепляет квартус и пытается компилировать.
Где-то внутри этого файла стоит ссылка на файл onchip_memory2_0.hex, либо любой другой, который вы укажете в SOPC билдере - см рисунок. При компиляции квартус пытается искать именно этот файл. А не какой либо другой. По умолчанию имя .hex файла равно имени .v файла и равно имени модуля в SOPC. Nios IDE по умолчанию генерит файл, прописанный в SOPC билдере. Просто сделайте чтобы они совпадали.

Это я все понимаю. вот мои настройки ончипа. Но почему квартус просит файлы boot_rom.v и boot_rom.hex? Может, чтоб куартус забыл про boot_rom нужно сделать clearProject или rebuildAll? Но не могу такого найти в квартусе.

Сообщение отредактировал juvf - May 16 2011, 09:13
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Reanimator++
сообщение May 16 2011, 09:22
Сообщение #258


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 1-01-06
Из: Волгоград
Пользователь №: 12 763



А в сопц билдере генерацию делали после всех изменений?
Что написано в самом .v файле? Я там нашел строку - the_altsyncram.init_file = "onchip_memory.hex",
Go to the top of the page
 
+Quote Post
juvf
сообщение May 16 2011, 09:50
Сообщение #259


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(Reanimator++ @ May 16 2011, 15:22) *
А в сопц билдере генерацию делали после всех изменений?
Что написано в самом .v файле? Я там нашел строку - the_altsyncram.init_file = "onchip_memory.hex",

Конечно делал. Есть у меня такая строчка. Вот ещё что интересно - сделал поиск по всем файлам проекта текст "boot_rom.hex" .... вот что нашлось (см рис). В epcs_flash_controller.v нет boot_rom.hex, там найден epcs_flash_controller_boot_rom.hex
*.rpt - это выходные отчеты. *.qmsg - тоже. Почему квартус их просит? ???

Сообщение отредактировал juvf - May 16 2011, 09:51
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение May 16 2011, 09:53
Сообщение #260


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(juvf @ May 16 2011, 16:50) *
*.rpt - это выходные отчеты. *.qmsg - тоже. Почему квартус их просит? ???

он не просит, а пишет туда о проблемах. не может найти требуемые файлы.
Go to the top of the page
 
+Quote Post
juvf
сообщение May 16 2011, 10:01
Сообщение #261


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(vadimuzzz @ May 16 2011, 15:53) *
он не просит, а пишет туда о проблемах. не может найти требуемые файлы.
Ну это понятно, я и говорю выходные. Например вот что есть в файле topLevel.map.rpt
Код
D:/Work/Quartus/testBoot/db/cmpr_ifc.tdf                                   ;
; D:/Work/Quartus/testBoot/db/cntr_p1j.tdf                      ; yes            ; Auto-Generated Megafunction           ; D:/Work/Quartus/testBoot/db/cntr_p1j.tdf                                   ;
; D:/Work/Quartus/testBoot/db/cmpr_efc.tdf                      ; yes            ; Auto-Generated Megafunction           ; D:/Work/Quartus/testBoot/db/cmpr_efc.tdf                                   ;
; boot_rom.v                                                    ; yes            ; Auto-Found Verilog HDL File           ; boot_rom.v                                                                 ;
; D:/Work/Quartus/testBoot/db/altsyncram_7gb1.tdf               ; yes            ; Auto-Generated Megafunction           ; D:/Work/Quartus/testBoot/db/altsyncram_7gb1.tdf                            ;
; boot_rom.hex                                                  ; yes            ; Auto-Found Memory Initialization File ; boot_rom.hex
Кто-нибудь может из этого понять от куда ноги растут? От куда boot_rom берётся?
Go to the top of the page
 
+Quote Post
naliwator
сообщение May 16 2011, 10:06
Сообщение #262


Частый гость
**

Группа: Свой
Сообщений: 146
Регистрация: 11-08-08
Из: Kolpino
Пользователь №: 39 551



Цитата(juvf @ May 13 2011, 10:40) *
Пробую свой загрузчик сделать по an458.pdf. Вроде все элементы танца сделал, всё залил - в итоге при включении борды моя прога не работает.

Решил постепенно понять что к чему. Создал простой проект хелловорд. разместил все секции в ончип. ресет ниоса на epcs контроллер (на загрузчик по умолчанию). вектор прерыванию на ончип. все собрал, залил в борду. Работает, т.е. при включении в консоль выхлапывает халоворд. Теперь нужно чтоб этот халоворд был аппаратно вшит в ончип. Т.е. делаю следующее

1 в SOPC билдере вектор ресета на ончип
2 указываю ончип инициализировать файлом boot_rom.hex
3 собираю ниос

Это хвост модификаций вашего проекта.
Отследите, где и какая память до сих пор ссылается на него.


--------------------
Go to the top of the page
 
+Quote Post
juvf
сообщение May 16 2011, 12:41
Сообщение #263


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(naliwator @ May 16 2011, 16:06) *
Это хвост модификаций вашего проекта.
Отследите, где и какая память до сих пор ссылается на него.

как бы отследить то? В сопц ни кто не ссылается. По крайней мере в окошках не видно. Удалил всю папку dd - не помогло. по файлам текст поискал - нашел boot_rom только в выходных файлах. sad.gif
Go to the top of the page
 
+Quote Post
naliwator
сообщение May 16 2011, 12:57
Сообщение #264


Частый гость
**

Группа: Свой
Сообщений: 146
Регистрация: 11-08-08
Из: Kolpino
Пользователь №: 39 551



Цитата(juvf @ May 16 2011, 16:41) *
как бы отследить то? В сопц ни кто не ссылается. По крайней мере в окошках не видно. Удалил всю папку dd - не помогло. по файлам текст поискал - нашел boot_rom только в выходных файлах. sad.gif

Вкладка Tasks -> Analysis & Synthesis -> View Report
далее ищите RAM Summary. Вас должно интересовать, что за память и какой MIF используется.


--------------------
Go to the top of the page
 
+Quote Post
juvf
сообщение May 17 2011, 06:21
Сообщение #265


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(naliwator @ May 16 2011, 18:57) *
Вкладка Tasks -> Analysis & Synthesis -> View Report
далее ищите RAM Summary. Вас должно интересовать, что за память и какой MIF используется.
Сегодня утром включил комп, запустил компиляцию - нету этих boot_rom больше. Решил всётаки разобраться что это было. переименовал ончипПамять в bootRom. переключил ресеты на bootRom, проверил чтоб инициализация была bootRom.hex. Пересобрал проект - вроде всё гладко. Пересобрал BSP и прогу для ниоса, сгенерировал новый hex, опять пересобрал в квартусе проект, залил sof и вуаля - всё работает и нет ворнингов. Ну вот оно вроде счатье. Удалил уже ни кому не нужные onchip_memory2_0.v и onchip_memory2_0.hex. При очередной сборке посыпались варнинги что нету onchip_memory2_0.hex. Опять тоже самое, опять какой-то хвост. опять все перепроверил, поползал по всем файлам, удалил папку dd, проверил репорт компиляции - не могу понять от куда квартус решил что ему нужно onchip_memory2_0.hex?

naliwator, сейчас в RAM Summary нет ни каких упоминаний про onchip_memory2_0.hex. Более того, квартус пытается найти их до того, как запустится Analysis & Synthesis, см рис. Походу баг в квартусе (10.1 + sp1). Попробуйте кто-нибудь переименовать ончип, сгенерировать новые v и hex, а потом удалить старые как не нужные.

Походу дальше нет смысла искать от куда эти ворненги, главное что борда заработала.
Всем спасибо за помощь!!!

Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
naliwator
сообщение May 17 2011, 08:41
Сообщение #266


Частый гость
**

Группа: Свой
Сообщений: 146
Регистрация: 11-08-08
Из: Kolpino
Пользователь №: 39 551



Цитата(juvf @ May 17 2011, 10:21) *
naliwator, сейчас в RAM Summary нет ни каких упоминаний про onchip_memory2_0.hex. Более того, квартус пытается найти их до того, как запустится Analysis & Synthesis, см рис. Походу баг в квартусе (10.1 + sp1). Попробуйте кто-нибудь переименовать ончип, сгенерировать новые v и hex, а потом удалить старые как не нужные.

Походу дальше нет смысла искать от куда эти ворненги, главное что борда заработала.
Всем спасибо за помощь!!!


Попробовал.
1. Переименовал память и .hex файл, сгенерировал систему.
2. Удалил с компьютера .v и .hex файлы предшествовавшей памяти.
3. Запустил полную компиляцию. Действительно, компилятор пытается найти удалённый .hex файл.
4. Удалил bsp проект с диска и собрал всё заново.
5. Получил .hex файл с новым именем, приложил его к проекту.
6. Запустил компиляцию. Печально, компилятор снова ссылается на не существующий .hex файл и запускает полную компиляцию вместо умной.
7. Смотрю в отчёт компилятора и нахожу, что в настройках компиляции остаются не существующие файлы.
8. Пробую удалить назначения проекта (Remove Assignents) и запускаю компиляцию - безрезультатно.
9. Папка инкрементной компиляции может хранить списки соединений (netlist) успешных компиляций. Эту папку рекомендовано удалять, когда нужно вернуться к исходникам. Удаляю папку. Компилирую. Закрываю Quartus II.
10. Открываю Quartus II и проект. Жму компиляцию - умная компиляция работает, т.к. .hex файл не был изменён, то время - 0, предупреждений - нет.
11. Меняю .hex файл, подсовываю проекту. Жму компиляцию - умная компиляция работает, предупреждений - нет.
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
 


--------------------
Go to the top of the page
 
+Quote Post
juvf
сообщение May 17 2011, 09:32
Сообщение #267


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



ага, тоже заработало. только в 10-ом пункте после удаления папки инкрементной_db во время компиляции по прежнему были ворненги. закрыл открыл квартус - пропали. Вчера чистил проект удалил db папку, возможно и inc_db тоже удалил, но не перезапускал квартус. Спасибо за помощь!!!
Go to the top of the page
 
+Quote Post
juvf
сообщение May 23 2011, 09:32
Сообщение #268


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



не могу найти описание векторов прерывания в NIOS II. Например в SOPC билдере в процессоре указал вектор сброса на onchip-memory со смещением 0х00. Адрес onchip-memory = 0х1810000. Контроллер прерываний не добавлял. Что разместится по адресам 0х1810000 ... 0х1810020? Есть у альтеры описание векторов прерывания?

Сообщение отредактировал juvf - May 23 2011, 09:32
Go to the top of the page
 
+Quote Post
naliwator
сообщение May 23 2011, 09:40
Сообщение #269


Частый гость
**

Группа: Свой
Сообщений: 146
Регистрация: 11-08-08
Из: Kolpino
Пользователь №: 39 551



Цитата(juvf @ May 23 2011, 13:32) *
не могу найти описание векторов прерывания в NIOS II.


Посмотрите здесь.

Цитата
Например в SOPC билдере в процессоре указал вектор сброса на onchip-memory со смещением 0х00. Адрес onchip-memory = 0х1810000. Контроллер прерываний не добавлял. Что разместится по адресам 0х1810000 ... 0х1810020? Есть у альтеры описание векторов прерывания?


Всё верно, внутренний контроллер прерываний поддерживает до 32 источников прерываний. Приоритет 0 - наивысший.


--------------------
Go to the top of the page
 
+Quote Post
juvf
сообщение May 23 2011, 09:58
Сообщение #270


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(naliwator @ May 23 2011, 15:40) *
Посмотрите здесь.


Посмотрел..... не нашел... Что разместится по адресам 0х1810000 ... 0х1810020? Конкретно.... по адресу 0х1810010 было значение 0х74. Потом стало 0х34. Что это значит? Как работает внутренний контроллер прерываний?
Go to the top of the page
 
+Quote Post

43 страниц V  « < 16 17 18 19 20 > » 
Reply to this topicStart new topic
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 


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


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