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

 
 
> VC707 доступ к Linear Flash, Либо загрузка, либо доступ
ConstHw
сообщение Mar 25 2016, 12:51
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 12-11-15
Пользователь №: 89 287



Всем привет

Плата в режиме BPI Config
http://www.xilinx.com/support/documentatio...707_Eval_Bd.pdf
( Страница 80 )

1.1 Берем проект для Xilinx VC707 - BIST
http://www.xilinx.com/products/boards-and-...l#documentation
1.2 Скачиваем, смотрим внутри на наличие внутри ядра AXI_EMC в режиме Linear Flash
1.3 Собираем bit файл system_wrapper.bit
1.4 Экспортируем hdf в SDK
1.5 В SDK создаем бутлоадер. Задаем оффсет
1.6 Создаем в SDK прошивку download.bit - инициализируем файл BRAM в system_wrapper.bit бутлоодером
1.7 Генерим SREC файл из того что хотим сделать нашим приложением
1.8 Открываем опять Вивадо, собираем mcs файл
Код
Addr1         Addr2         Date                    File(s)
0x00000000    0x007B616F    Mar 25 14:22:08 2016    D:/Users/vinogradovk/rdf0195-vc707-bist-c-2015-1/bins/download.bit
0x02000000    0x0209B29F    Mar 25 12:22:55 2016    D:/Users/vinogradovk/rdf0195-vc707-bist-c-2015-1/bins/lwip_echo_server.srec

1.9 Загружаем mcs файл во флэшку

Дальше начинаются чудеса
2.1. Плата по прежнему в режиме "грузись с флэшки"
2.2 Дергаем питание и смотрим в консоль
Код
SREC Bootloader
Loading SREC image from flash @ address: 62000000
ERROR: Error while reading an SREC line from flash

2.3 То есть плиса прошилась, бутлоадер оказался в памяти BRAM, но не смог прочитать SREC
2.4 Оставляя плису прошитой, открываем SDK, запускаем бутлоадер из SDK на платформе
2.5 Ставим точку останова перед началом чтения памяти и открываем смотрелку памяти из SDK memory
2.6 Видим фигу - по адресу 0x60000000, где лежит битфайл с которого плиса только что грузилась, лежат нули. Остальные памяти, например DDR3 через МИГ видны и доступны

Исключаем чудеса
3.1 Открываем Hw_Manager, берем файл download.bit грузим его в ПЛИС и О ЧУДО
Код
SREC Bootloader
Loading SREC image from flash @ address: 62000000

Executing program starting at address: 00000000


-----lwIP TCP echo server ------
TCP packets sent to port 6001 will be echoed back
Start PHY autonegotiation

3.2 Запускаем на прошитой через JTAG плисе любое приложение, ставим останов
3.3 В SDK инструменте Memory видим битник прошивки плис по адресу 0x600000 и SREC приложения по адресу 62000000

Выводы
Если ПЛИСа была загружена с BPI FLASH, то доступа к этой BPI FLASH у нее уже нет

Как такое может быть?
И как это победить?
Чем плиса залитая из флэшки отличается от плисы залитой с jtag?
Помню была ситуация когда ножка SCK для SPI конфигурационной флэшки была доступна после ухищирений, но ведь тут в ПЛИСу заливаются абсолютно одинаковые битфайлы, отличающиеся путем попадания в ПЛИСу.
Положение джамперов на плате не меняется, всегда в режиме "грузись с BPI"
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ConstHw
сообщение Mar 30 2016, 11:37
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 12-11-15
Пользователь №: 89 287



Спасибо огромное за дизайн! У вас с ним работал доступ в EMC после загрузки из флэшки?

Да, проверял эти констрейны прям только что sm.gif Результат сохраняется не зависимо от положения bitsream type1/disable
При загрузке с JTAG память читает bootladerом корректно, в memory видна так же корректно, то есть проблемы с шиной адреса исключаю. Клок 100МГц, такой же как заведен на вход rdclk.

При загрузке из флэшки вылезает мешанина в памяти. Сравниваю с тем, что должно быть - например в вычитанной указателем последовательности из 32 байт, начиная с 16 идет правильная последовательность, которая должна быть в нуле. Если несколько раз читать один и тот же регистр, то иногда сопвдает, иногда нет
Код
32 30 34
34 0d 0a
53 33 30
44 30 30
30 30 30
30 32 30
34 30 0d
0a 53 33
31 35 38
30 30 30
30 30 30
30 41 30
0d 0a 53
33 31 35
38 30 30
30 30 30
30 30 41
32 38 30
30 30 42
30 34 30


Возможно стоит попробовать спецдрайвера от Микрона.

Сообщение отредактировал ConstHw - Mar 30 2016, 11:59
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ConstHw   VC707 доступ к Linear Flash   Mar 25 2016, 12:51
- - doom13   Цитата(ConstHw @ Mar 25 2016, 15:51) Выво...   Mar 25 2016, 13:20
- - ConstHw   doom13, спасибо! Стало намного понятнее, но ря...   Mar 25 2016, 13:52
|- - doom13   Цитата(ConstHw @ Mar 25 2016, 16:52) 1) Ч...   Mar 25 2016, 18:35
- - Muscat   1) Если EMC в режиме linear flash, то нет доступа ...   Mar 25 2016, 19:32
|- - doom13   Цитата(Muscat @ Mar 25 2016, 22:32) 2) Не...   Mar 25 2016, 20:31
- - Muscat   Да, с направлением клока ошибся Так, то есть если...   Mar 25 2016, 21:02
|- - doom13   Цитата(Muscat @ Mar 26 2016, 00:02) 1) ПЛ...   Mar 25 2016, 21:23
- - Muscat   Ну вроде разобрались Если дефолтный режим асинхр...   Mar 25 2016, 21:26
|- - doom13   Цитата(Muscat @ Mar 26 2016, 00:26) Если ...   Mar 25 2016, 21:47
- - doom13   Маленький нюанс подключения AXI EMC к BPI Flash (у...   Mar 28 2016, 06:56
- - ConstHw   Адресацию оставил как есть, то есть использую внеш...   Mar 28 2016, 15:31
|- - doom13   Цитата(ConstHw @ Mar 28 2016, 18:31) Адре...   Mar 28 2016, 18:19
- - ConstHw   Я все таки думаю дело в другом, потому что в асинх...   Mar 29 2016, 09:41
|- - doom13   Цитата(ConstHw @ Mar 29 2016, 12:41) Я вс...   Mar 29 2016, 14:38
- - doom13   Посмотрите pg100-axi-emc, третий раздел Designing ...   Mar 29 2016, 20:21
- - doom13   Цитата(ConstHw @ Mar 25 2016, 15:51) 1.1 ...   Mar 30 2016, 06:49
|- - doom13   Цитата(ConstHw @ Mar 30 2016, 14:37) Спас...   Mar 30 2016, 13:21
- - ConstHw   doom13, заработало в асинхроне, задача стартовать ...   Apr 5 2016, 08:46
- - doom13   Цитата(ConstHw @ Apr 5 2016, 11:46) doom1...   Apr 5 2016, 08:58


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 15:24
Рейтинг@Mail.ru


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