Author Topic: Steps to Initialize Zynq US+ PL?  (Read 366 times)

dsummers

  • Active Member
  • *
  • Posts: 3
Steps to Initialize Zynq US+ PL?
« on: September 04, 2020, 08:33:53 PM »
I am new to Zynq, but I have a lot of experience with Microblaze and FPGA's in general.  I have purchased two TE0802 boards as a way to get familiar with Zynq US+ before building my own custom board.

I am using Vivado 2020.1

What steps do I need to take to initialize the PL of a Zynq Ultrascale+?   I have a very simple design with one Zynq  core running "Hello World" and a constant block connected to the LEDS on the TE0802. 


If I program my bitfile directly, then the LEDs light up as expected (but Hello World does not run).  If I run my hello world application from SDK (right click on application -> Run As -> Launch on Hardware), then hello world runs, but the LEDs do not illuminate indicating that the PL is not initialized.

I feel like I am missing something really simple here.  Any help would be appreciated.

Do I need to run a FSBL in order to load the PL bitfile and run my application, or is there a way to do this just using the debugger?

Do I need to add a function call to my hello world application to release the PL configuration so that it can run?



Update:   Solved.  I just forgot to set the bitfile in the "Debug Configurations -> Target setup".  Once I added the bitfile, it works as expected.




« Last Edit: September 05, 2020, 02:11:24 AM by dsummers »

JH

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1558
Re: Steps to Initialize Zynq US+ PL?
« Reply #1 on: September 05, 2020, 10:30:29 AM »
Hi,
PS(ARM Part) and PL(FPGA Part) works together. Program PL with bitstream does not initilise PS.

We have a 19.2 reference design only. When you are new with ZynqMP, I would suggest to use them with 19.2 vivado/petalinux.  Reference Designs includes source code and also prebuilt binaries -->  Boot.bin (one with barmetal hello TE0802 app and one with uboot to load linux image.ub from SD).
ZynqMP can boot from SD --> use SD with one fat32 parition and put Boot.bin and image.ub on the SD card. Here's there like to the design documentation the download:
https://wiki.trenz-electronic.de/display/PD/TE0802+Test+Board

Here are also some reference to Xilinx documentation which you should also check when you start with ZynqMP:
https://wiki.trenz-electronic.de/display/PD/Xilinx+Development+Tools#XilinxDevelopmentTools-ExcerptofXilinxUserGuides


br
John