slog 0 25 октября, 2008 Опубликовано 25 октября, 2008 · Жалоба Нужна "помощь клуба". Есть "система на кристалле" с NIOS-ом. И есть для неё исходники, которые надо скомпилировать. Проблема в том что нет .ptf файла от SOPC-builder с описанием этой системы. А вместо .ptf есть какой-то excalibur.h и excalibur.s - это автоматически сгенерированные чем-то файлы и в них дефайны для компилятора Си. Вот кусок excalibur.h #define na_flash_8MByte ((void *) 0x00000000) // amd_avalon_am29lv065d_flash #define na_flash_8MByte_base 0x00000000 #define na_flash_8MByte_end ((void *) 0x00800000) #define na_flash_8MByte_size 0x00800000 #define na_cpu ((void *) 0x00000000) // altera_nios #define na_cpu_base 0x00000000 #define na_sram_2MByte ((void *) 0x00800000) // altera_nios_dev_kit_stratix_edition_sram #define na_sram_2MByte_base 0x00800000 Вообщем как-то надо скомпилировать эти исходники, но не понятно как и чем. Как подсунуть их NiosII IDE я не знаю, он требует .ptf файл. Исходники эти возможно компилировались под линуксом. Чё делать-то? Подскажите, в какую сторону копать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 25 октября, 2008 Опубликовано 25 октября, 2008 · Жалоба На сколько я знаю без ptf файла IDE не будет делать каких либо телодвижений. Не уверен, но по моему перед ниосом вроде у альтеры был Еxcalibur (могу ошибаться, потому как досконально не изучал этот вопрос) - он вроде как раз и делал файлы типа excalibur.h и excalibur.s Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slog 0 25 октября, 2008 Опубликовано 25 октября, 2008 · Жалоба Кто-нибудь пользовался такой вещью SDK4NIOS ? Похоже оно только под Linux. Чем мог быть сделан excalibur.h ? По информации из excalibur.h можно "родить обратно" .PTF ? Пусть даже в ручную. Чтобы запустить NiosII IDE. Как я понял excalibur.h создавал древний вариант Nios IDE. Сейчас вместо него system.h отличия описаны в an350. Остальные вопросы пока не прояснились. Что можно сделать без .ptf ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Builder 1 25 октября, 2008 Опубликовано 25 октября, 2008 · Жалоба Как я понял excalibur.h создавал древний вариант Nios IDE. Сейчас вместо него system.h отличия описаны в an350. Остальные вопросы пока не прояснились. Что можно сделать без .ptf ? А какая у Вас стои FPGA? Может там под Excalibur понимается то, что используются FPGA в которых стоит аппаратный проц? Альтера потом не стала развивать эту ветку, ограничилась развитием только софтовых ядер. Если там аппаратное дро, то к Nios это всё имеет малое отношение. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slog 0 26 октября, 2008 Опубликовано 26 октября, 2008 · Жалоба Как я понял Excalibur это древнее семейство со встроенным аппаратным ядром ARM9. И еще во времена Nios 1 файл с описанием железа для компилятолра именовался excalibur.h Во время перехода с Nios на NiosII вместо excalibur.h появился system.h У меня Cyclone II и Nios наверно тоже 2. Я так полагаю что niosII ide по информации из .ptf создаёт system.h в котором есть все дефайны на железные модули в системе. И дальше компилятор уже компилирует исходники по информации о железе из system.h А наверно можно сразу запустить компилятор без IDE? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vadimuzzz 0 27 октября, 2008 Опубликовано 27 октября, 2008 · Жалоба вот это не смотрели: http://www.altera.com/literature/an/an350.pdf "Upgrading Nios Processor Systems to the Nios II Processor" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slog 0 27 октября, 2008 Опубликовано 27 октября, 2008 · Жалоба вот это не смотрели: http://www.altera.com/literature/an/an350.pdf "Upgrading Nios Processor Systems to the Nios II Processor" Смотрел. Выше в этой теме этот AN350 уже упоминал. Но там описан upgrade начиная с sopc-builder-а, в результате .pof файл все таки присутствует. У меня исходники уже апгрейделись, этот excalibur.h вложен в nios.h, в котором больше ничего нет. К тому же известно что исходники компилируют, вроде бы с помощью sdk4nios, но это вроде только под линукс. А мне хочется скомпилировать в NiosII IDE да еще бы чтобы отладка в железе потом работала. Пока ковыряю два направления 1. запустить компилятор без IDE и .ptf 2. по информации из excalibur.h восстановить .ptf, хотя бы фиктивный, чтобы IDE запустилась. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 27 октября, 2008 Опубликовано 27 октября, 2008 · Жалоба Вручную ptf не создавал, но "обширно" редактировал - он текстовый, структура кажись где-то даже была описана. сделайте тестовую системку, и потом редактируйте ptf. если имеются ввиду c/asm исходники nios - то для компиляции ptf нафиг не нужен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slog 0 27 октября, 2008 Опубликовано 27 октября, 2008 · Жалоба Вручную ptf не создавал, но "обширно" редактировал - он текстовый, структура кажись где-то даже была описана. сделайте тестовую системку, и потом редактируйте ptf. если имеются ввиду c/asm исходники nios - то для компиляции ptf нафиг не нужен. Именно Си и asm исходники. Направьте на путь истинный, в какую сторону копать чтобы обойтись без ptf. А то "Nios II Software Developer’s Handbook" имеет почти 500 страниц. Читаю, но пока не придумал план дальнейших действий. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
misyachniy 0 27 октября, 2008 Опубликовано 27 октября, 2008 · Жалоба Именно Си и asm исходники. Направьте на путь истинный, в какую сторону копать чтобы обойтись без ptf. А то "Nios II Software Developer’s Handbook" имеет почти 500 страниц. Читаю, но пока не придумал план дальнейших действий. ptf файл описывает какие устройства и по каким базовым адресам расположены. Какие уровни прерываний выделены. по excalibur.h систему можно собрать. Но вас интересует именно скомпилировать исходники на "С" и ассемблере? Систему тоже ведь нужно как-то компилировать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slog 0 27 октября, 2008 Опубликовано 27 октября, 2008 · Жалоба по excalibur.h систему можно собрать. Но вас интересует именно скомпилировать исходники на "С" и ассемблере? Систему тоже ведь нужно как-то компилировать. Если "система" это то железо которое собрано в FPGA, то мне его и не надо компилировать. Оно уже есть и не надо его менять. Надо поправить только Си и асм исходники для него. Очень бы хотелось чтобы можно было не только компилировать, но и еще и иметь возможность отладки Си кода в железе. Пока что я вижу один вариант - глядя на excalibur.h создать в sops-builder похожую систему. Полностью восстановить её не возможно, нет HDL исходников custom периферии, но можно вставить затычки по занимаемым ей адресам и прерываниям. Так что в железе она не заработает, но это и не требуется. В результате должен получиться какой-то .ptf с нужным распределением адресов. С ним можно будет и компилироваь существующие исходники и отлаживать их в существующем железе. Этого было бы достаточно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 28 октября, 2008 Опубликовано 28 октября, 2008 · Жалоба Для компиляции только исходников ptf не нужен, так как при генерации системы из ptf один раз создается excalibur.h с указателями на базовые адреса ключевых устройств. нужен makefile и набор CGT - nios-as/nios-gcc/nios-ld. Даже если boot область находится внутри чипа - можно тупо заменить MIF файл на этапе ассемблирования в квартусе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
misyachniy 0 28 октября, 2008 Опубликовано 28 октября, 2008 · Жалоба Если "система" это то железо которое собрано в FPGA, то мне его и не надо компилировать. Оно уже есть и не надо его менять. Систему нужно загрузить в FPGA. У вас система загружается отдельно из конфигурациолнной ПЗУ, а затем бут-лоадер загружает рабочую программу? Тогда наверное можно попробовать, что то сделать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slog 0 28 октября, 2008 Опубликовано 28 октября, 2008 · Жалоба Для компиляции только исходников ptf не нужен, так как при генерации системы из ptf один раз создается excalibur.h с указателями на базовые адреса ключевых устройств. нужен makefile и набор CGT - nios-as/nios-gcc/nios-ld. Даже если boot область находится внутри чипа - можно тупо заменить MIF файл на этапе ассемблирования в квартусе. makefile пока не нашел. Точнее есть один, вроде не тянет на то чтобы всё скомпилировать. Вот он весь: germs_up: germs_up.c gcc germs_up.c -o germs_up all: germs_up makefile похоже тоже придётся делать. Систему нужно загрузить в FPGA. У вас система загружается отдельно из конфигурациолнной ПЗУ, а затем бут-лоадер загружает рабочую программу? Тогда наверное можно попробовать, что то сделать. Да, система грузится из EPCS, дальше бутлоадер из внешней флэш AM29LV065 копирует в RAM основную программу и там уже она работает. Железо менять не надо. Надо только изменить основную программу на Си, исходники которой есть. Хранится она во внешней флэш и её даже можно апгрейдить через germs монитор. Но кроме Си исходников ничего нет. И не будет. К тому же там Nios (не NiosII). И еще хочется чтобы отладка из IDE работала. Наверно ptf придётся делать. Нашел описание его структуры в статьях И. Каршенбойм в КиТ за 2002 г. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 29 октября, 2008 Опубликовано 29 октября, 2008 · Жалоба Мой Makefile для nios on-chip загрузчика можете посмотреть тут [http://electronix.ru/forum/index.php?act=Attach&type=post&id=19792] , главная c++ прога собиралась им же - так что должно подойти Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться