реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Чтение SPI Flash через USB Blaster (Altera, Quartus II)
alexei-developer
сообщение Jul 8 2013, 13:40
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 8-07-13
Пользователь №: 77 437



Здравствуйте! Никогда не требовалось читать с плат ПЛИС от Альтеры данные с спи флеш (то есть взять текущую прошивку и перенести в её такой же, но не разбитый прибор). Собственно есть некоторые варианты в которых я путаюсь, помоги выбрать верное.

1) Возможно ли через JTAG из Quartus Programmer прочитать данные с SPI Flash? (Я так понимаю надо чем-то, что может в ПЛИС загрузить какой-то преобразователь JTAG - SPI Flash. Загрузить данные во флеш, не проблема, как извесно это можно сделать стандартными средствами квартуса, тогда данные в флеш будут загружены через джитаг и плис в флеш.)

2) Возможно ли автоматическое определение спи флеш и чтение из неё через режим "Active Serial Programming"? (Сейчас через джитаг не активна кнопка чтения прошивки с ПЛИС, будет ли она активна при выборе другого типа подключения?)

3) Для чтения спи флеш необходим стороний программатор? (На данный момент мне известен только BlackCatUSB и то, только по слухам, сам я с ним не работал)
Go to the top of the page
 
+Quote Post
Raven
сообщение Jul 9 2013, 16:32
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Давайте конкретнее: какая FPGA, какая SPI Flash?
Go to the top of the page
 
+Quote Post
alexei-developer
сообщение Jul 10 2013, 18:55
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 8-07-13
Пользователь №: 77 437



ПЛИС cyclone III ep3c25u256
флеш mx25L12845e, то есть аналог я так понимаю epcs128
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Jul 10 2013, 19:13
Сообщение #4


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(alexei-developer @ Jul 10 2013, 21:55) *
ПЛИС cyclone III ep3c25u256
флеш mx25L12845e, то есть аналог я так понимаю epcs128

Есть ли возможность подключится к конфигуратору по Active Serial?


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
alexei-developer
сообщение Jul 10 2013, 19:36
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 8-07-13
Пользователь №: 77 437



Да, проводочки подпаял, там выходы по схеме отыскали. По описанию разъема юсб бластера, нашли контакты которые нужны, они с плис оказались выведены. Провода подпаял, как есть, ничего не перекрещивал. Пока что опасаюсь подключать к юсб бластеру и пробовать через квартус программер. Как бы что не испортить, решил на пару дней отложить подключение, а то одно не ловкое движение и нет платки. =) Появились пару вопросов: выход nCE с плис идет на землю на плате, надо ли этот выход с юсб бластера сажать на землю платы? и перекрещивать ли выходы asdo-asdi, asdi-asdo или как есть так и подключать asdo-asdo и asdi-asdi?

ЗЫ. Сработает ли Auto Detect плис и памяти в квартус программере при подключении через актив сериал программинг? (По аналогии как определяется плис через джитаг)
Go to the top of the page
 
+Quote Post
Raven
сообщение Jul 10 2013, 20:00
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Проконтролируйте подключение по AN523.

Думаю, вам будет любопытно взглянуть на стр.16.
Go to the top of the page
 
+Quote Post
alexei-developer
сообщение Jul 11 2013, 19:02
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 8-07-13
Пользователь №: 77 437



по an523 сказано что кабель бластера ставит пин nCE в единицу если требуется работать с флешкой. Но у меня на плате этот пин сразу идет на землю, возможно ли работа с флешкой через AS в моем случае? На столько ли критично неподключение пина nCE для работы с флеш?
Go to the top of the page
 
+Quote Post
Raven
сообщение Jul 14 2013, 16:17
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Цитата(alexei-developer @ Jul 11 2013, 23:02) *
по an523 сказано что кабель бластера ставит пин nCE в единицу если требуется работать с флешкой. Но у меня на плате этот пин сразу идет на землю, возможно ли работа с флешкой через AS в моем случае? На столько ли критично неподключение пина nCE для работы с флеш?

Это значит, что прямое обращение бластера к Flash чипу через ASMI-интерфейс в вашем случае невозможно. Но остается возможность обращаться к ней руками (т.е., пинами sm.gif) FPGA через тот же интерфейс. В этом случае бластер д.б. подключен к JTAG ногам ПЛИСины (схем подключения полно в Альтеровских документах по конфигурированию), Quartus Programmer может загружать в ПЛИС спец. логику, которая организует правильное общение с ASMI-интерфейсом в ПЛИС, и через него - с EPCS. Этому варианту посвящена AN370.

Схема ASMI подключения EPCS-FPGA должна быть, как на рис. 3 (AN523, page 7). Ну и почитайте близкую тему Чтение прошивки из EPCS.
Go to the top of the page
 
+Quote Post
alexei-developer
сообщение Jul 14 2013, 20:42
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 8-07-13
Пользователь №: 77 437



Цитата(Raven @ Jul 14 2013, 20:17) *
Это значит, что прямое обращение бластера к Flash чипу через ASMI-интерфейс в вашем случае невозможно. Но остается возможность обращаться к ней руками (т.е., пинами sm.gif) FPGA через тот же интерфейс. В этом случае бластер д.б. подключен к JTAG ногам ПЛИСины (схем подключения полно в Альтеровских документах по конфигурированию), Quartus Programmer может загружать в ПЛИС спец. логику, которая организует правильное общение с ASMI-интерфейсом в ПЛИС, и через него - с EPCS. Этому варианту посвящена AN370.

Схема ASMI подключения EPCS-FPGA должна быть, как на рис. 3 (AN523, page 7). Ну и почитайте близкую тему Чтение прошивки из EPCS.


В той теме собственно я и отписал, прочитать jic через с джитаг с помощью юсб бластера не удалось, вот мое последнее сообщение там http://electronix.ru/forum/index.php?showt...t&p=1177195. флешка mx23l12845e не опозналась как epcs128 как я понял. Куда дальше копать я пока не знаю, наткнулся на CFI флеш интерфейс. Может это оно, там вроде надо самому прописать тип флешки в настройках, когда указываешь подсоединить флешку. Но что за ЦиЭфАй такой я пока что не курил. =) Плисина же считывает оттуда данные при включении, она же знает как прочитать эти данные. Почему нет простого способа прочитать эти же данные через джитаг и плис я не пойму... wacko.gif
Go to the top of the page
 
+Quote Post
Raven
сообщение Jul 15 2013, 10:01
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Цитата(alexei-developer @ Jul 15 2013, 00:42) *
В той теме собственно я и отписал, прочитать jic через с джитаг с помощью юсб бластера не удалось, вот мое последнее сообщение там http://electronix.ru/forum/index.php?showt...t&p=1177195.

Да, малость лопухнулся я, не глянул имена авторов ;-) Просто тут еще одна близкая тема есть: silicon ID for device 1, Ошибка при записи в EPCS64

Цитата(alexei-developer @ Jul 15 2013, 00:42) *
флешка mx23l12845e не опозналась как epcs128 как я понял.

Конечно не опозналась - ведь это действительно не EPCS128 sm.gif. Даже если она действительно в одном из множества своих режимов совместима с EPCS128 (что еще проверить бы надо), называться чужим именем она не должна ни в коем случае.

Цитата(alexei-developer @ Jul 15 2013, 00:42) *
Куда дальше копать я пока не знаю, наткнулся на CFI флеш интерфейс. Может это оно, там вроде надо самому прописать тип флешки в настройках, когда указываешь подсоединить флешку. Но что за ЦиЭфАй такой я пока что не курил. =) Плисина же считывает оттуда данные при включении, она же знает как прочитать эти данные. Почему нет простого способа прочитать эти же данные через джитаг и плис я не пойму... wacko.gif

У меня в голове отложилось, что CFI (Common FLASH Interface, кажется) - стандарт на команды работы с FLASH (идентификация/запись/стирание и т.п.), и охватывает вроде бы только параллельные FLASH (с внутренней организацией NOR причем). Я, правда, с первоисточником не знакомился, так что, конечно, может он и последовательные FLASH охватывает. Вы это имели в виду, или то, что FLASH у вас еще и параллельно подключен? Вообще, неплохо было бы хотя бы блок-схему подключения FLASH к FPGA, и JTAG'а представить, а то уже становится непонятно, как у вас все организовано, и в чем отличие от DevKit'а, который, как я понимаю, был взят за основу. Тогда можно что-то дальше советовать, не вслепую.
Go to the top of the page
 
+Quote Post
alexei-developer
сообщение Jul 15 2013, 18:01
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 8-07-13
Пользователь №: 77 437



подключено вот так

Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Jul 16 2013, 08:37
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 alexei-developer
У нас есть девайсы где стоят разные флаши, не родные альтеровские.
Используем пока QII v9.0sp2 (дизайн собран так что работает только под этой версией) и файло nios2-flash-override.txt вида:
Код
[EPCS-1F4800] # EPCS64N (Atmel...) ATDF
sector_size = 65536
sector_count = 128

[EPCS-010216] # EPCS64S (Spansion...) S25FL
sector_size = 65536
sector_count = 128

[EPCS-1C3017] # EPCS64S (Eon...) EN25Q64
sector_size = 65536
sector_count = 128

Лежит здесь: "C:\altera\90\nios2eds\bin\nios2-flash-override.txt"
Нормально работаю фишки типа:
Код
nios2-flash-programmer.exe --epcs --base=0x04002000 --erase 0x3B0000+0x010000
..
nios2-flash-programmer.exe --epcs --base=0x06000800 --read file.txt --read-bytes 0xF0000+2000
Go to the top of the page
 
+Quote Post
alexei-developer
сообщение Jul 16 2013, 18:00
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 8-07-13
Пользователь №: 77 437



Цитата(Kuzmi4 @ Jul 16 2013, 12:37) *
Код
nios2-flash-programmer.exe --epcs --base=0x04002000 --erase 0x3B0000+0x010000
..
nios2-flash-programmer.exe --epcs --base=0x06000800 --read file.txt --read-bytes 0xF0000+2000


То есть можно флеш программер использовать вместо квартус программера? Введя эти команды флеш программер зальет в плис "свою" прошивку и вытянет её в нужный файл??? Это единственный документ (http://www.altera.com/literature/ug/ug_nios2_flash_programmer.pdf) где про это можно почитать?
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 12:14
Рейтинг@Mail.ru


Страница сгенерированна за 0.01471 секунд с 7
ELECTRONIX ©2004-2016