My name is Sven Andersson and I
work as a consultant in embedded
system design, implemented in ASIC
In my spare time I write this blog
and I hope it will inspire others to
learn more about this fantastic field.
I live in Stockholm Sweden and have
my own company
You are welcome to contact me
and ask questions or make comments
about my blog.
Time for a new suprise. Once again a parcel arrived and when unpacking it I found this box.
When opening the box I found the MicroZed board.
MicroZed™ is a low-cost development board based on the Xilinx Zynq®-7000 All Programmable SoC. Its unique design allows it to be used as both a stand-alone evaluation board for basic SoC experimentation, or combined with a carrier card as an embeddable system-on-module (SOM). MicroZed contains two I/O headers that provide connection to two I/O banks on the programmable logic (PL) side of the Zynq®-7000 AP SoC device. In stand-alone mode, these 100 PL I/O are inactive. When plugged into a carrier card, the I/O are accessible in a manner defined by the carrier card design.
The MicroZed board comes with a pre-installed Linux image stored on the SPI flash. When we power up the board the Linux OS will boot automatically. Here is what we have to do.
The microSD card
The MicoZed board has a holder for a microSD card. When inserted during boot up the card will be mounted under /mnt. This means that we can install programs on the SD card from our Ubuntu host that can then be executed from the Linux installation running on the MicroZed.
Copy files to the microSD
We insert the microSD into the adapter and put it in our SD card reader/writer. For more information about connecting to the Ubuntu host see part 38.
We will add a bin directory and copy the PrimeNumber application to the microSD card.
1. Verify the MicroZed boot mode (JP3-JP1) jumpers are set to QSPI card mode.
2. Connect an ethernet cable between the board and the ethernet switch.
3. Connect an USB cable between the board and the host computer. This cable connects both power (+5V) and the terminal.
We will use GTKterm as console. Start GTKterm in the Ubuntu guest OS (see part 14).
-> gtkterm &
Select port and set baud rate to 115200.
If everything works as expected we will see the zynq prompt in the console window.
We will change the MicroZed IP address to the same subnet as the rest of our system.
Now we can ping the board from our host computer.
Compared to the ZedBoard, the MicroZed does not have built-in USB-JTAG circuitry. There is a standard Xilinx PC4 connector for use with an external cable. Digilent has two JTAG programming cables we can use (HS1 and HS2). I will use the HS1 JTAG programming cable.
Install Digilent Adept JTAG drivers
Xilinx uses software from Digilent to configure Xilinx logic devices, initialize scan chains, program FPGAs, CLPDs and PROM. We will go to the Digilent web page and download all software from there. I know that some of this software is hidden somewhere in the SDK installation (/opt/Xilinx/SDK/2013.4/data/xicom/cable_drivers) but I prefer to do this installation from scratch and try to understand what is going on. For more information see part 13.
To make sure the USB device is recognized by our Ubuntu guest we open the VirtualBox settings and add the new USB device (Digilent Adept USB Device .
After rebooting Ubuntu we can use the following commands to see if we have a working connection with the MicroZed board.
You may wonder why there are two devices found. Here is the explanation. The Zynq-7000 family of AP SoC devices provides debug access via a standard JTAG (IEEE 1149.1) debug interface. Internally, the AP SoC device implements both an ARM debug access port (DAP) inside the Processing System (PS) as well as a standard JTAG test access port (TAP) controller inside the Programmable Logic (PL). The ARM DAP as part of ARM CoreSight debug architecture allows the user to leverage industry standard third-party debug tools. For more information see the Zynq-7000 Technical Reference Manual (chapter 27).
This is all I planned to say about MicroZed for the moment. Most of the work we have done using ZedBoard can easily be transferred to MicroZed. Good luck!