Jump to content

    
alexPec

Zynq 7000, программирование QSPI через vivado или SDK

Recommended Posts

3 часа назад, fguy сказал:

Для проверки прошивки флэшки возьмите старую виваду - типа 2014.3 - на 7мых цинках в отличии от более поздних вивад ей наплевать на ваши ошибки в проектах плис и процессора - сдк от нее шьет флэшку своим кодом без использования вашего фсбл-а.

 

Спасибо,тоже вариант. Попробую.

 

Share this post


Link to post
Share on other sites
2 minutes ago, alexPec said:

Спасибо,тоже вариант. Попробую.

Возможно флэшка залочена - бывает и такое - нужно программно снять бит защиты - см даташит на флэшку.

Неработающая и глючная ддр на проце так же не позволяет провести загрузку через фсбл - рекомендую потестить и ее.

Share this post


Link to post
Share on other sites
1 час назад, fguy сказал:

Возможно флэшка залочена - бывает и такое - нужно программно снять бит защиты - см даташит на флэшку.

Неработающая и глючная ддр на проце так же не позволяет провести загрузку через фсбл - рекомендую потестить и ее.

ДДР memory test проходит, проект при загрузке с SD карты тоже нормально работает. Флешка с завода я думаю - в ленте, вряд ли там биты защиты ставят

Share this post


Link to post
Share on other sites
В 24.08.2019 в 19:52, alexPec сказал:

2017.4.1

ИМНИП, с Vivado 2017.4 были проблемы с шитьем, но нормально шилось 2017.2.

Цинки 10, 20 и 45, флешки разные - от N25Q128A (1.8 и 3.3 В) до S25FL512SAGMFIR.

С 2018.х проблем не наблюдал (но требует JTAG-режим).

Скрипт для генерации fsbl:

#!/bin/sh

if [ $# -ne 1 ]; then
    echo "Usage: gen_fsbl.sh <file.tcl>"
    exit 1
fi

hsi18 -mode batch -nolog -nojournal -source $@
rm -rf .Xil
# для некоторых версий надо переименовать для порядка - генерят executable.elf
# mv ../fsbl/executable.elf ../fsbl/fsbl.elf
cp -f ../fsbl/fsbl.elf ../soft/boot/

tcl:

set hwdsgn [open_hw_design ../hw/top_d3.hdf]
generate_app -hw $hwdsgn -os standalone -proc ps7_cortexa9_0 -app zynq_fsbl -compile -sw fsbl -dir ../fsbl

 

Скрипт для генерации образа и шитья:

#!/bin/bash

btg18 -image boot.bif -o boot-new.bin -w
vpf18 -f boot-new.bin -fsbl fsbl.elf -flash_type qspi_single -blank_check -verify

На первый экземпляр проделываем все, потом только шьем

vpf18 -f boot-new.bin -fsbl fsbl.elf -flash_type qspi_single -blank_check -verify

 

Share this post


Link to post
Share on other sites
On 8/24/2019 at 7:52 PM, alexPec said:

2017.4.1

Тоже не получилось зашить флеш в данной версии Вивадо. Решение: пересобрал проект и SDK в другой версии.

Share this post


Link to post
Share on other sites
8 часов назад, Alexey_Rostov сказал:

Тоже не получилось зашить флеш в данной версии Вивадо. Решение: пересобрал проект и SDK в другой версии.

Беда... У меня IP сторонние только под 2017.4. Генерить бинарник в 2017.4, а шить в например в 2018?

Share this post


Link to post
Share on other sites
25 минут назад, alexPec сказал:

Беда... У меня IP сторонние только под 2017.4. Генерить бинарник в 2017.4, а шить в например в 2018?

После перехода на 2017.4 готовили  в ней, а шили в 17.2.

Потом перешли на 2018.х. Там тоже были некоторые бубны, но это немного другая история (с шитьем не связано).

Share this post


Link to post
Share on other sites
On 8/25/2019 at 9:00 PM, gosha-z said:

Соберите FSBL с флагом FSBL_DEBUG_DETAILED

+1 сразу будет понятно где зависает.

Стандартным способом у меня в режиме загрузки QSPI не прошивался, только в режиме JTAG. Перепаивать резисторы не хотелось. Я сделал так:  https://www.xilinx.com/support/answers/70548.html

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.