Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Xilinx. Прошивка загрузочной flash.
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
gosha
Имеется периферийная плата, на которой установлен Xilinx. Прошивка xilinx загружается с flash xc18x02.
Задача: процессор при помощи некого софта должен уметь обновить прошивку Xilinx этой периферийной платы из файла .mcs на диске.


Может ли этот Xilinx пере-шить свою загрузочную flash, если в нем реализовать некую логику?
Если, допустим, процессорная плата выдает в его (он на периферийной плате) некие регистры дамп прошивки загрузочной flash.

Имеются ли примеры или какие-то описания по этому?

М.б. можно пере-шить загрузочную flash с помощью дополнительной cpld.

Где-бы по-читать: сталкивался ли кто с этим.

Спасибо.
eugen_pcad_ru
"установлен Xilinx"
Что за xilinx? Название есть?
gosha
QUOTE (eugen_pcad_ru @ Nov 6 2012, 10:30) *
"установлен Xilinx"
Что за xilinx? Название есть?

Сейчас:
xilinx xs2s200
flash xc18v02

Еще не нашел команд типа (chip_erase и пр), нужно ли выставление начального адреса ... ?
И еще какие есть команды программирования flash xc18v02.
Сам алгоритм программирования не нашел (команда/адрес/данные).
troiden
Сталкивался с подобной задачей для SPI-флешек.

Цитата(gosha @ Nov 6 2012, 09:52) *
Имеется периферийная плата, на которой установлен Xilinx. Прошивка xilinx загружается с flash xc18x02.

Что-то никак не могу найти такую. Какой у нее интерфейс?

Цитата(gosha @ Nov 6 2012, 09:52) *
Задача: процессор при помощи некого софта должен уметь обновить прошивку Xilinx этой периферийной платы из файла .mcs на диске.

Лучше использовать файл прошивки с расширением .bin. В .mcs содержится некоторая дополнительная информация, так просто его использовать нельзя, придется конвертировать.

Цитата(gosha @ Nov 6 2012, 09:52) *
Может ли этот Xilinx пере-шить свою загрузочную flash, если в нем реализовать некую логику?
Если, допустим, процессорная плата выдает в его (он на периферийной плате) некие регистры дамп прошивки загрузочной flash.

В общем случае - можно, нужно только реализовать контроллер в ПЛИСе.

Цитата(gosha @ Nov 6 2012, 09:52) *
М.б. можно пере-шить загрузочную flash с помощью дополнительной cpld.

Тоже можно, и рулить загрузкой флешки в данном случае напрямую из контроллера. Этот путь будет более жизнеспособным, так как в первом варианте при ошибке обновления вы получаете полностью мертвую железку, в которую нужно лезть программатором.
Flood
Т.к. это JTAG-флешка, то для решения задачи ее JTAG-порт должен быть куда-то подключен. Удобнее всего было бы подключить этот порт к GPIO процессора и использовать xsvf player для программирования.
eugen_pcad_ru
2Flood:
По поводу xsvf player-а: это насколько я знаю из состава xapp058. К сожалению не смог обнаружить исходников для playxsvf501.exe. У Вас случаем таких нет?wink.gif

P.S.: В составе xapp058 есть xapp058_v5.01\src, но они дают разные результаты с playxsvf501.exe. Особо не разбирался, но пришел к выводу, что они разные. Можете что-нибудь посоветовать по данному поводу?
Flood
Вот полезная библиотека для работы с SVF/XSVF:
http://www.clifford.at/libxsvf/

У Xilinx дополнительно к xapp058 есть xapp503 с описанием форматов.
eugen_pcad_ru
2Flood:
Спасибо за ссылку!
gosha
QUOTE (Flood @ Nov 7 2012, 18:52) *
Вот полезная библиотека для работы с SVF/XSVF:
http://www.clifford.at/libxsvf/

У Xilinx дополнительно к xapp058 есть xapp503 с описанием форматов.


Спасибо.
Разобрался.
Там действ расписано в примере как программить от микроконтроллера.
Или через реализованные в CPLD возможности (регистр) выставить ножки TMS TCK, TDO записью в этот регистр CPLD от программы на ЦП:
. . .
set_port(TMS, 1);
set_port(TMS, 0);
set_port(TCK, 1);
. . .
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.