“How to integrate DesignStart Arm Cortex-M1 and M3 processors with the Xilinx Zynq.
Several times this year I have presented courses in person or online about how to implement the Arm DesignStart FPGA cores in Xilinx FPGAs. I have also showcased several projects here on Hackster in which the Arm Cortex-M1 and M3 cores are integrated on Digilient Arty A7 and Arty S7 boards.
I thought it would be very useful to show how these cores can be implemented with the Arty Z7. As the Arty Z7 already has dual hard core Arm Cortex-A9 cores this means we are adding another core into an already heterogeneous processing system. What this provides however is an system in which the higher performance processor in this case the A9 can off load sensor interfacing or actuator / motor control to a the M1 or M3. This is often much easier and faster than building a custom statemachine.
It will come as no surprise, that the development flow for the Arty Z7 is a little different to the previous development flows for the Arty A7 and Z7 especially when it comes to creating the final system.
To complete this project you need to have the correct Xilinx and Arm Design tools installed. They are all free to download, the projects and webinar here and here show how you can set up your development system to complete this project.
One very important stepisto make sure you dig out the Arm DesignStart Email so you can obtain the correct license for Keil.
Unlike with the previous projects we will not be using a reference design which was created by Arm and building upon it.
This time we are going to start from scratch! We do however need to download the reference Arm DesignStart FPGA project for the M1 for Arty S7 /A7 as that also contains the IP Cores for the Cortex-M1 and M3 along with necessary software repositories. You can download the reference design with the IP repository here
As this builds upon techniques presented in the tutorial I do recommend you read through the lab book and the projects above to understand the base flow.”