|
Изменение конфигурационной флэш, Для fpga Altera и Xilinx |
|
|
|
Aug 18 2015, 12:28
|
Частый гость
 
Группа: Участник
Сообщений: 136
Регистрация: 3-09-09
Пользователь №: 52 178

|
Цитата(Golikov A. @ Aug 18 2015, 14:50)  Всем привет!
Есть Xilinx sprtan6 и Altera cyclon IV. Испытываю непреодолимое желание изменить содержимое конфигурационных флэшек из самой FPGA.
1. Правильно ли я понимаю что в Xilinx после окончания конфигурации ножки идущие на память становятся доступны как пользовательские IO и я могу ими спокойно дергать читая, записывая флэш? 2. Правильно ли я понимаю что в Altera конфигурационная память доступна только через ALTASMI_PARALLEL и я не могу никаким образом получить самостоятельный доступ к конфигурационной флэш напрямую на уровне подергать ножки?
Заранее спасибо! В четвертом циклоне ноги дергались с помощью cycloneii_asmi, если я ничего не путаю. Тема уже поднималась на форуме.
|
|
|
|
|
Aug 18 2015, 12:43
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Golikov A. @ Aug 18 2015, 14:50)  2. Правильно ли я понимаю что в Altera конфигурационная память доступна только через ALTASMI_PARALLEL и я не могу никаким образом получить самостоятельный доступ к конфигурационной флэш напрямую на уровне подергать ножки? Ещё для Ниос ядро epcs_flash_controller умеет писать/читать EPCS/EPCQ флэшку. А самый простой вариант, если Вам пока не нужно удалённо обновлять прошивку, используйте Serial Flash Loader (см. an370).
|
|
|
|
|
Aug 18 2015, 17:39
|
Местный
  
Группа: Свой
Сообщений: 301
Регистрация: 18-09-07
Из: Украина
Пользователь №: 30 647

|
Добрый день Golikov A., еще раз. Был реализован проект на базе Virtex5FX70T (внутри PowerPC), в качестве конфигурационной флэшки XCF128XFTG64C, подключенная по параллельной шине. В программе PowerPC была реализована функция приема новой прошивки по PCIe, сохранение ее в DDR2, а потом перепрошивки флэш. Реально работает. Думаю, аналогично можно что-то похожее реализовать и на Спартане6, вставив в проект, например Microblaze простенькой конфигурации. С Альтерой не работал, советовать не берусь. Удачи.
|
|
|
|
|
Aug 18 2015, 19:11
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Andrew Su @ Aug 18 2015, 21:57)  Добрый день. В 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.
|
|
|
|
|
Aug 19 2015, 05:26
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Надо обойтись без микроблайзов и ниосов, и по возможности без IP корок. В инструкции на ксалинкс как-то мутно написано, вроде как после конфигурации ножки что идут на флешку можно задействовать в проекте, буржуйские форумы это тоже упоминают, думал может кто-то уже делал, и скажет уверено - да так и есть! Ладно это проверю. Ниос и flash_controller решительно не подходят, потому что этот контроллер как минимум за собой потянет шину авалон и прочие гадости. Ниос не желателен по архитектуре ваще%), практически строго запрещен. Нашел что есть мегафункция ALTASMI_PARALLEL подходящая для этих целей. Но она немного не удобная, много что сама делает, а хотелось бы больше контроля. видел где-то на враждебных форумах народ что-то писал про то что дергал ножки напрямую, но через что и как непонятно... Тоже надеялся на готовое пройденное кем то решение  Цитата cycloneii_asmi, спасибо почитаю что это, но что-то мне говорит что это и есть ALTASMI_PARALLEL или ее производная Цитата А самый простой вариант, если Вам пока не нужно удалённо обновлять прошивку, используйте Serial Flash Loader (см. an370). ну а для чего же еще работать с конфигурационной флешкой то  ?
|
|
|
|
|
Aug 19 2015, 06:01
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Golikov A. @ Aug 19 2015, 08:26)  ну а для чего же еще работать с конфигурационной флешкой то  ? Ну из первого поста этого не следует (что нужно удалённое обновление ПО), ясно только, что хотите залить новую прошивку в конфигурационный девайс. Вот и ответ - можно залить/считать через JTAG (используем Serial Flash Loader). Если нужно удалённо обновлять ПО, тогда варианта два: 1) EPCS Flash Controller + Nios II 2) Ядро ASMI
|
|
|
|
|
Aug 19 2015, 08:04
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата Испытываю непреодолимое желание изменить содержимое конфигурационных флэшек из самой FPGA. JTAG не подходит... Цитата для Spartan-6 параллельная и последовательная флэш доступна после загрузки. Пишите свой проект и работайте с ними. Ага спасибо, принято! Цитата 1) EPCS Flash Controller + Nios II 2) Ядро ASMI 1. не подходит из-за ниоса 2. Насколько я пока нарыл ASMI не документировано, документирован только верхний уровень ALTASMI_PARALLEL, вы его имели ввиду, или все-же есть где то официальные доки на ASMI?
|
|
|
|
|
Aug 19 2015, 08:40
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Golikov A. @ Aug 19 2015, 11:04)  2. Насколько я пока нарыл ASMI не документировано, документирован только верхний уровень ALTASMI_PARALLEL, вы его имели ввиду, или все-же есть где то официальные доки на ASMI? Имел ввиду его, но чем оно Вас не устраивает? Если хотите отказаться от IP, то надо получить доступ к ногам (должна быть настройка, сейчас не вспомню), а там реализуете SPI и протокол общения из документации на флэшку. Но зачем это?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|