Перейти к содержанию
    

Изменение конфигурационной флэш

Всем привет!

 

Есть Xilinx sprtan6 и Altera cyclon IV. Испытываю непреодолимое желание изменить содержимое конфигурационных флэшек из самой FPGA.

 

1. Правильно ли я понимаю что в Xilinx после окончания конфигурации ножки идущие на память становятся доступны как пользовательские IO и я могу ими спокойно дергать читая, записывая флэш?

2. Правильно ли я понимаю что в Altera конфигурационная память доступна только через ALTASMI_PARALLEL и я не могу никаким образом получить самостоятельный доступ к конфигурационной флэш напрямую на уровне подергать ножки?

 

Заранее спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всем привет!

 

Есть Xilinx sprtan6 и Altera cyclon IV. Испытываю непреодолимое желание изменить содержимое конфигурационных флэшек из самой FPGA.

 

1. Правильно ли я понимаю что в Xilinx после окончания конфигурации ножки идущие на память становятся доступны как пользовательские IO и я могу ими спокойно дергать читая, записывая флэш?

2. Правильно ли я понимаю что в Altera конфигурационная память доступна только через ALTASMI_PARALLEL и я не могу никаким образом получить самостоятельный доступ к конфигурационной флэш напрямую на уровне подергать ножки?

 

Заранее спасибо!

 

В четвертом циклоне ноги дергались с помощью cycloneii_asmi, если я ничего не путаю. Тема уже поднималась на форуме.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2. Правильно ли я понимаю что в Altera конфигурационная память доступна только через ALTASMI_PARALLEL и я не могу никаким образом получить самостоятельный доступ к конфигурационной флэш напрямую на уровне подергать ножки?

Ещё для Ниос ядро epcs_flash_controller умеет писать/читать EPCS/EPCQ флэшку.

А самый простой вариант, если Вам пока не нужно удалённо обновлять прошивку, используйте Serial Flash Loader (см. an370).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день Golikov A., еще раз.

Был реализован проект на базе Virtex5FX70T (внутри PowerPC), в качестве конфигурационной флэшки XCF128XFTG64C,

подключенная по параллельной шине.

В программе PowerPC была реализована функция приема новой прошивки по PCIe, сохранение ее в DDR2, а потом перепрошивки флэш.

Реально работает.

Думаю, аналогично можно что-то похожее реализовать и на Спартане6, вставив в проект, например Microblaze простенькой конфигурации.

С Альтерой не работал, советовать не берусь.

Удачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в качестве конфигурационной флэшки XCF128XFTG64C,

подключенная по параллельной шине.

В программе PowerPC была реализована функция приема новой прошивки по PCIe, сохранение ее в DDR2, а потом перепрошивки флэш.

Реально работает.

Думаю, аналогично можно что-то похожее реализовать и на Спартане6, вставив в проект, например Microblaze простенькой конфигурации.

Что за IP ядро можно использовать для этих целей (прошивки параллельной флэшки) с MicroBlaze?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день.

В XPS есть IP XPS Multi-Channel External Memory Controller. Сконфигурировать его так, чтобы его внешние выводы подошли для подключения

внешней конфигурационной флэш. Можно посмотреть в разделе SelectMAP Configuration Interface файла ug380.pdf (Spartan-6 FPGA Configuration User Guide)

и на стр.10 файла ds617.pdf (Platform Flash XL High-Density Configuration and Storage Device), там правда для Virtex5 схема, но, наверное, можно и под спартан подправить.

Удачи.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день.

В XPS есть IP XPS Multi-Channel External Memory Controller. Сконфигурировать его так, чтобы его внешние выводы подошли для подключения

внешней конфигурационной флэш. Можно посмотреть в разделе SelectMAP Configuration Interface файла ug380.pdf (Spartan-6 FPGA Configuration User Guide)

и на стр.10 файла ds617.pdf (Platform Flash XL High-Density Configuration and Storage Device), там правда для Virtex5 схема, но, наверное, можно и под спартан подправить.

Удачи.

Спасибо, посмотрю. Думаю, скоро должно понадобиться, но интересно это применительно к Virtex 7 и Vivado 2015.x.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Надо обойтись без микроблайзов и ниосов, и по возможности без IP корок.

 

В инструкции на ксалинкс как-то мутно написано, вроде как после конфигурации ножки что идут на флешку можно задействовать в проекте, буржуйские форумы это тоже упоминают, думал может кто-то уже делал, и скажет уверено - да так и есть! Ладно это проверю.

 

Ниос и flash_controller решительно не подходят, потому что этот контроллер как минимум за собой потянет шину авалон и прочие гадости. Ниос не желателен по архитектуре ваще%), практически строго запрещен. Нашел что есть мегафункция ALTASMI_PARALLEL подходящая для этих целей. Но она немного не удобная, много что сама делает, а хотелось бы больше контроля. видел где-то на враждебных форумах народ что-то писал про то что дергал ножки напрямую, но через что и как непонятно... Тоже надеялся на готовое пройденное кем то решение:)

 

cycloneii_asmi,

спасибо почитаю что это, но что-то мне говорит что это и есть ALTASMI_PARALLEL или ее производная

 

А самый простой вариант, если Вам пока не нужно удалённо обновлять прошивку, используйте Serial Flash Loader (см. an370).

ну а для чего же еще работать с конфигурационной флешкой то:)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ну а для чего же еще работать с конфигурационной флешкой то:)?

Ну из первого поста этого не следует (что нужно удалённое обновление ПО), ясно только, что хотите залить новую прошивку в конфигурационный девайс. Вот и ответ - можно залить/считать через JTAG (используем Serial Flash Loader). Если нужно удалённо обновлять ПО, тогда варианта два:

1) EPCS Flash Controller + Nios II

2) Ядро ASMI

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для Spartan-6 параллельная и последовательная флэш доступна после загрузки. Пишите свой проект и работайте с ними.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Испытываю непреодолимое желание изменить содержимое конфигурационных флэшек из самой FPGA.

JTAG не подходит...

 

 

для Spartan-6 параллельная и последовательная флэш доступна после загрузки. Пишите свой проект и работайте с ними.

Ага спасибо, принято!

 

 

1) EPCS Flash Controller + Nios II

2) Ядро ASMI

1. не подходит из-за ниоса

2. Насколько я пока нарыл ASMI не документировано, документирован только верхний уровень ALTASMI_PARALLEL, вы его имели ввиду, или все-же есть где то официальные доки на ASMI?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2. Насколько я пока нарыл ASMI не документировано, документирован только верхний уровень ALTASMI_PARALLEL, вы его имели ввиду, или все-же есть где то официальные доки на ASMI?

Имел ввиду его, но чем оно Вас не устраивает? Если хотите отказаться от IP, то надо получить доступ к ногам (должна быть настройка, сейчас не вспомню), а там реализуете SPI и протокол общения из документации на флэшку. Но зачем это?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

так можно в ПЛИС реализовать только SPI, а реализацию протокола вынести уровнем выше. Есть ощущение что так оно будет лучше.

 

Пока я только видел предложения из исходников ALTASMI_PARALLEL выдрать подключение самого ASMI, и через него работать, но это типа не документировано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

так можно в ПЛИС реализовать только SPI, а реализацию протокола вынести уровнем выше. Есть ощущение что так оно будет лучше.

Т.е. в Вашей системе есть ещё и процессор, spi которого хотите пробросить через FPGA на конфигурационную флэшку? Что-то больно извращённый подход к решению вопроса. Тогда уж вешайте конфигурационный девайс на процессор и используйте режим загрузки Passive Serial Configuration, где процессор будет рулить обновлением ПО и загрузкой FPGA.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня тоже мнение, что это немного не так как надо :)

Но интерфейс приходит на ПЛИС, так что ей и рулить процессом. А данные в этот интерфейс может загрузить процессор снаружи, потому такое вот решение...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...