Полная версия этой страницы:
epcq256 flashloader
doom13
Feb 21 2014, 11:19
Надо сделать загрузчик flash-памяти.
На плате: epcq256, 5cefa9. Используется QII 13.0.1 sp1.
1. При использовании ядра Serial Flash Loader всё работает: прошивка заливается, ПЛИС загружается с флэшки.
2. При использовании ядра Serial Flash Controller и Nios II Flash Programmer: прошивка заливается, но плисина с флэшки не стартует. (На форумах нашёл, что epcq256 не поддерживается Nios II Flash Programmerом, и надо использовать QII Programmer).
3. Попробовал реализовать загрузку флэш при помощи ALTASMI_PARALLEL + Nios II. Заливаю rbf-файл, но ничего не работает, считываю дамп флэша - идентичен загружаемому rbf-файлу. Попытался сравнить rbf и jic - они отличаются, после небольшой корректировки jic-файла (удаляем шапку и лишние байты) и его загрузки во флэш всё работает, плисина стартует с флэшки. Получается проблема с генерацией rbf-файла???
gosu-art
Feb 21 2014, 12:12
А вы генерацию rbf автоматически делали? или через convert programming files ? Просто и у меня при 1м варианте для EP4C55 не работает. Размер получается намного меньше чем должен быть. Может компрессия работает.
doom13
Feb 24 2014, 06:52
Цитата(gosu-art @ Feb 21 2014, 15:12)

А вы генерацию rbf автоматически делали? или через convert programming files ? Просто и у меня при 1м варианте для EP4C55 не работает. Размер получается намного меньше чем должен быть. Может компрессия работает.
И автоматически и через convert programming files
Stewart Little
Feb 24 2014, 10:19
Попробуйте флэшпрограммером перегнать sof и elf в формат flash (как для epcs).
Затем с помощью objcopy эти два флэш-файла преобразовать в hex-ы.
Затем в Сonvert Programming Files из этих двух hex-ов сделать один jic (при этом не забывайте о порядке слыдования - сперва конфигурация ПЛИС, затем программный код).
И после этого Serial Flash Loader-ом прогрузить этот jic в EPCQ.
doom13
Feb 24 2014, 12:19
Цитата(Stewart Little @ Feb 24 2014, 13:19)

Попробуйте флэшпрограммером перегнать sof и elf в формат flash (как для epcs).
Затем с помощью objcopy эти два флэш-файла преобразовать в hex-ы.
Затем в Сonvert Programming Files из этих двух hex-ов сделать один jic (при этом не забывайте о порядке слыдования - сперва конфигурация ПЛИС, затем программный код).
И после этого Serial Flash Loader-ом прогрузить этот jic в EPCQ.
Вопрос немного в другом.
При прошивке Serial Flash Loader-ом сгенерированного jic-файла всё нормально работает.
Не работает только rbf при загрузке через ASMI, jic-файл при его загрузке через ASMI - работает (как сказано выше, его только надо вручную откорректировать).
doom13
Apr 18 2014, 12:02
Всё же с генерацией .rbf есть какая-то проблема, эта же тема и аналогичные пути решения на
alteraforum.
doom13
May 26 2014, 09:07
Возник вопрос по поводу загрузки FPGA. Для загрузки 5cefa9 используется режим Active Serial и флэш-память epcq256. Попробовал использовать режим AS x4: в опциях квартуса выбрал
"Configuration scheme: Active Serial x4", скомпилил, залил во флэш. При старте FPGA загрузка происходит только по одной линии DQ1 (на DQ0, DQ2, DQ3 - какой-то одиночный импульс). При "Configuration scheme: Active Serial x1" всё так же.
Каким же образом задаётся режим Active Serial x4?
EugeneS
May 26 2014, 16:52
QUOTE (doom13 @ May 26 2014, 16:17)

Возник вопрос по поводу загрузки FPGA. Для загрузки 5cefa9 используется режим Active Serial и флэш-память epcq256. Попробовал использовать режим AS x4: в опциях квартуса выбрал
"Configuration scheme: Active Serial x4", скомпилил, залил во флэш. При старте FPGA загрузка происходит только по одной линии DQ1 (на DQ0, DQ2, DQ3 - какой-то одиночный импульс). При "Configuration scheme: Active Serial x1" всё так же.
Каким же образом задаётся режим Active Serial x4?
Есть подозрение, что нужно еще прописать в EPCQ 4-byte addressing в NVCR и после
power off, power on.
doom13
May 27 2014, 01:49
Цитата(EugeneS @ May 27 2014, 00:02)

Есть подозрение, что нужно еще прописать в EPCQ 4-byte addressing в NVCR и после
power off, power on.
Если можно, тут по-подробнее. Полагал, что установка галки на Active Serial x4 при компиляции автоматом выберет этот режим, это не так?
Нашёл разъяснение по вышеописанной проблеме и проблеме с Active Serial x4 на сайте
Altera. Пишут о том, что Вы и советовали, что необходимо прописать в регистр NVCR режим загрузки. Так же написано, что при использовании jic-файла NVCR автоматически устанавливается в нужное значение. Остаётся вопрос, что ещё необходимо для включения Active Serial x4?
Может быть где-то можно почитать про структуру генерируемых квартусом файлов (sof, pof, rbf, jic и т.д.), а то что-то не могу найти?
EugeneS
May 28 2014, 15:14
QUOTE (doom13 @ May 27 2014, 08:59)

Остаётся вопрос, что ещё необходимо для включения Active Serial x4?
Может быть где-то можно почитать про структуру генерируемых квартусом файлов (sof, pof, rbf, jic и т.д.), а то что-то не могу найти?
Про структуру генерируемых квартусом файлов я и сам бы почитал.
У тебя еще комбинация QII 13.0.1 sp1 + ALTASMI_PARALLEL.
Я тут копнул Altera сайт:
http://www.altera.com/support/kdb/solution...312013_813.html http://www.altera.com/support/kdb/solution...132014_481.html http://www.altera.com/support/kdb/solution...092013_489.html Жду Quartus 14.0...
doom13
May 28 2014, 16:24
Цитата(EugeneS @ May 28 2014, 22:24)

Не знаю что там у Вас с ALTASMI_PARALLEL, у меня при использовании данного ядра никаких багов не выявлено, правильная прошивка пишется, FPGA стартует, при чтении epcq256 получаем дамп идентичный записанным данным. Просмотрите посты выше, вопрос был в неправильной генерации rbf-файла Quartus-ом 13.0 sp1 для Cyclone V, а второй - в режиме загрузки Active Serial x4.
Приветствую, подниму тему, т.к. надо доделать удалённую смену прошивки.
Для прошивки EPCQ256 использую ядро ALTASMI_PARALLEL, данные загоняю по TFTP через Nios. Осталась та же проблема - с файлом прошивки.
Всегда пользовался rbf-файлом для прошивки флэшки, но тут он как-то неправильно генерится.
Посмотрел, что если сгенерить rpd-файл, то получаю аналог того, если из jic-файла удалить шапку (первое сообщение). Т.е. он мне подходит, но размер данного файла очень большой - вся EPCQ.
Вопрос, что не так с rbf? Решится ли эта проблема переходом на Q14 (пользуюсь Q13)?
При конвертации sof в rbf отсутствует настройка х4 для Active Serial, для jic и rpd она есть. Может проблема не в генерации rbf, а его просто нельзя тут использовать?
doom13
Dec 10 2014, 14:38
С заменой Quartus-a на 14 версию проблемка с RBF-файлом осталась. Какой файл должен использоваться для удалённого обновления ПО для CV + EPCQ256. RPD, похоже, подходит, но его размер - это размер всей памяти?
doom13
Dec 11 2014, 11:38
Использовал ли кто Nios II Flash Programmer для прошивки ПО для Cyclone V в EPCQ256 или какую-нибудь другую EPCQ?
В Q13 был баг, но для Q14 должны были устранить (счас использую Q14.0).
Попробовал заливать прошивку в EPCQ при помощи Nios II Flash Programmer, какая-то опа, опять не стартует плисина. Если залить всё при помощи QII Programmer, то всё работает и с настройкой для AS х4 и с х1. Сравнил дамп EPCQ при заливке из Nios II Flash Programmer и QII Programmer - они отличаются.
Nios II Flash Programmer хочу заюзать для проверки работоспособности EPCS/EPCQx1 Serial Flash Controller-a, а его для проверки работоспособности сгенерированного RBF.
doom13
Dec 12 2014, 11:21
Нашёл то, что искал, может кому пригодится. Когда открываете Convert Programming File и выбираете Programming file type JIC, можно поставить две "галки": Create Map File (стоит по умолчанию) и Create config data RPD. Ставим галку для Create config data RPD - получаем RPD-файл, но этот файл нужной длины, размер совпадает с размером прошивки указанным в MAP-файле. При сравнении с JIC отличается отсутствием шапки и лишних FF.
Проверил его на работоспособность - работает.
Остался вопрос, в какой доке надо было читать про все эти манипуляции?
Что всё же с RBF? Поддерживается он или нет?
EugeneS
Dec 17 2014, 13:20
QUOTE (doom13 @ Dec 12 2014, 14:21)

Нашёл то, что искал, может кому пригодится. Когда открываете Convert Programming File и выбираете Programming file type JIC, можно поставить две "галки": Create Map File (стоит по умолчанию) и Create config data RPD. Ставим галку для Create config data RPD - получаем RPD-файл, но этот файл нужной длины, размер совпадает с размером прошивки указанным в MAP-файле. При сравнении с JIC отличается отсутствием шапки и лишних FF.
Проверил его на работоспособность - работает.
Остался вопрос, в какой доке надо было читать про все эти манипуляции?
Что всё же с RBF? Поддерживается он или нет?
Altera в помощь - Solution ID: rd11182013_802:
http://www.altera.com/support/kdb/solution...a%20File%20.rpd
doom13
Dec 23 2014, 06:50
Цитата(EugeneS @ Dec 17 2014, 16:20)

Спасибо конечно, но где же Вы раньше-то были?! Оч похоже, что они это добавили уже после
упоминания решения здесь.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.