Update Petalinux Introduction authored by jesseg64's avatar jesseg64
......@@ -21,16 +21,16 @@ Each aspect of this diagram is explained further in this wiki.
It's highly recommended to use a Linux-based desktop development environment when configuring/building petalinux, as that is what we found had the least amount of issues. Petalinux tools also only runs on Linux machines, and it's clear that Xilinx prefers a Linux development environment for their software tools.
Check out our [Petalinux Ubuntu Development Environment](https://git.ece.iastate.edu/sd/sdmay23-47/-/wikis/Petalinux-Ubuntu-Development-Environment) guide for specific steps to set that up!
Check out our [Ubuntu Development Environment](Ubuntu-Development-Environment) guide for specific steps to set that up!
# Hardware - Vivado
Check out our [Vivado/Vitis Install](https://git.ece.iastate.edu/sd/sdmay23-47/-/wikis/Vivado-and-Vitis-Install) guide to learn how to install Vivado on your Ubuntu development environment.
Check out our [Vivado and Vitis Installation](Vivado-and-Vitis-Installation) guide to learn how to install Vivado on your Ubuntu development environment.
Check out our [Petalinux Hardware Design](https://git.ece.iastate.edu/sd/sdmay23-47/-/wikis/Petalinux-Hardware-Design) page for all the documentation and setup process.
Check out our [CyDAQ FPGA Hardware Design](CyDAQ-FPGA-Hardware-Design) page for all the documentation and setup process.
# OS - Petalinux
Building petalinux requires petalinux tools, which can only run on Linux. Check out our [Petalinux Tools Install](https://git.ece.iastate.edu/sd/sdmay23-47/-/wikis/Petalinux-Tools-Install) for a guide on how to set that up in the Ubuntu development environment.
Building petalinux requires petalinux tools, which can only run on Linux. Check out our [PetaLinux Tools Installation](PetaLinux-Tools-Installation) for a guide on how to set that up in the Ubuntu development environment.
The main purpose of Petalinux is to allow for fast and stable communication between the CyDAQ and host pc over USB.
......@@ -73,7 +73,7 @@ One of the downsides of using Petalinux is that it adds a lot of overhead to cer
The baremetal app for this project is [here](https://git.ece.iastate.edu/sd/sdmay23-47/-/tree/master/petalinux/sw/platform/CyDAQ_sampling). It is launched from Petalinux using the [remoteproc](https://www.kernel.org/doc/html/latest/staging/remoteproc.html) framework. When this occurs, both CPUs are then running separately, and need to use shared memory to communicate with each other. We use a library called [openAMP](https://www.openampproject.org/) and [rpmsg](https://www.kernel.org/doc/html/latest/staging/rpmsg.html) to do this. There is also an additional memory region carved out specifically for storing sample data, which the baremetal writes to whenever the ADC triggers an interrupt. Once sampling is stopped, Petalinux reads from that same shared memory region and sends the sample data back to the host PC.
# SW - Vitis
Check out our [Vivado/Vitis Install](https://git.ece.iastate.edu/sd/sdmay23-47/-/wikis/Vivado-and-Vitis-Install) guide to learn how to install Vitis on your Ubuntu development environment.
Check out our [Vivado and Vitis Installation](Vivado-and-Vitis-Installation) guide to learn how to install Vitis on your Ubuntu development environment.
The software directory `<project root>/petalinux/sw/platform` contains the multiple software applications and the platforms associated with them.
......
......