Skip navigation

Path II Programmable

8 Posts authored by: filupgasinthevan
Well, the time has come (passed really) to post about our projects for the Path II Programmable training program. rscasny has been gracious enough as to not strictly enforce the project end date, so thank you Randall! I finished the training material a little later than expected, and between getting sick, work picking up before the holidays, and the holidays themselves (Happy New Year!), I had significantly less time to devote to the actual project than I had hoped. This will be my last formal ...
With the software and hardware labs complete, it was time for the final leg of the training which was PetaLinux. This series felt the least structured of the three and the training wheels came off as soon as possible, unlike the software and hardware series. With the software series especially, it seemed like any repeated task was walked through with almost the same level of detail as the first time it was introduced (i.e. creating new applications in SDK). This is not a bad thing, especially wh ...
This blog is continuing on with the rest of hardware labs.   Lab 5: Adding a PL Peripheral  In this lab, we added our first PL peripheral to the hardware design. We added an AXI BRAM controller which allows the processing system to access the programmable logic block ram via an AXI interface, giving the PS yet another source of memory (in addition to the on-chip memory and DDR4 memory on the Ultra96-V2 board). The Xilinx AXI BRAM controller IP allows for configuring AXI protocol, numbe ...
filupgasinthevan

P2P: HW Labs 1-4

Posted by filupgasinthevan Nov 23, 2019
With the software labs complete, it was time to move on to hardware. I think it was recommended that we start with software first, but I think hardware first (the path most P2P trainees chose) probably made more sense. In the software labs, we imported hardware definitions which were then used to create the board support package, etc. This becomes the platform for the software development side of MPSoC design. This hardware definition was created in Vivado.   The Vivado tool can be thought ...
Lab 8: SDK Project Management  Continuing along with the training, Lab 8 walked through archiving the various elements of an SDK project, including the project source files, run/debug configurations, breakpoints, and workspace settings. Most of it is as easy as File -> Export, but the workspace settings require a little more manual effort. This is all done to allow projects to be easily shareable, since zipping the project and sharing it is likely to not work. Once the archives were cre ...
Creating an SD Boot Image  This lab was very straightforward, but I ran into an issue that left me scratching my head for a while.   This lab used the previously created "Test_Peripherals" application to build the SD card boot image. This test application ran with no issues in JTAG debug mode in lab 5.   I walked through the steps of creating the boot image, including adding the PMU firmware. Generated the BIN boot image and loaded it up on the Ultra96-V2 board. The terminal ou ...
These first few labs have been about getting up and running on the Xilinx SDK and getting familiar with the SDK environment.   SDK First Impressions   The SDK is built on the Eclipse IDE platform. I have had very little interaction with Eclipse in the past, but I'm liking it quite a bit already. To an inexperienced user, it's hard to tell what features are native Eclipse and what features have been added in by Xilinx. Overall, the feel and design flow seems user-friendly and intuitiv ...
I'm finally up and running with the development environment and Xilinx tools. The training material was serious when it mentioned the Ubuntu virtual machine (VM) installation would take a significant amount of time!   The VM instructions were thorough and detailed for the most part; however, there were a few items which weren't explicitly stated. In the network bridging section it said to select "Bridged Adapter" in order to connect the VM to the Internet via my computer's network hardware ...