Zynq-7000 Bare-Metal Benchmarks

Picture of a Zynq-7000 SoC.

In this article we’ll look at some well-known CPU benchmarks, namely CoreMARK, Dhrystone, Whetstone and Linpack. Following that, we’ll look at the memory bandwidth and latency of the external DDR memory, On-Chip RAM and block RAM (BRAM) in the FPGA. Finally, we’ll round up with numbers on interrupt latency.

MicroBlaze Benchmarks Part 2 – Memory Bandwidth & Latency

Plot of a MicroBlaze system memory access latency and memory bandwidth versus the working set size.

Following the last article on core performance this article looks at the MicroBlaze memory bandwidth and access latency. Within the article benchmarks results are presented and discussed for various configuration of the MicroBlaze memory sub system such as local memory, AXI blobk RAM and external SDRAM memory.

MicroBlaze Benchmarks Part 1 – CoreMark Performance

Digilent ARTY7-35 development board with USB and Ethernet cables connected.

Following the success of the MicroBlaze configuration guide this article looks at core performance benchmarks of the Xilinx MicroBlaze using the EEMBC CoreMark benchmark. Like the previous article series, this article looks at various memory hierarchy configurations including local and external DDR memory and their impact on core performance.

MicroBlaze Configuration for an RTOS Part 3 – Cache Configuration

Close up view of a MicroBlaze system within the Xilinx Vivado IP Integrator.

This article will look into details the cache configuration for the MicroBlaze that was skipped in part 2. Configuring the cache correctly is critical to the overall performance of a MicroBlaze system and can also take a considerable amount of FPGA resource, especially block RAM. When configuring the cache, the goal is to use the minimum cache size required to meet the application’s performance but no larger.

MicroBlaze Configuration for an RTOS Part 2 – Configuration Parameters

Close up of the MicroBlaze IP block within the Xilinx Vivado IP Integrator.

This article aims at helping developers and designers who must configure a MicroBlaze system. Especially early on in the development process where the final firmware is not available for benchmarking and tweaking. At these early steps it is often necessary to select a good approximation of the final configuration to have a good idea of the resource usage of the MicroBlaze.

Zynq-7000 Connectivity Using the uC/OS BSP

Close up view of the Digilent Zybo development board showing the Xilinx Zynq-7000 SoC.

In two previous articles, I have looked at using Micrium’s uC/OS RTOS on the Xilinx Zynq-7000. I only covered kernel and storage. This time, I will be exploring some connectivity options in combination with the Digilent Zybo. Namely, using Micrium’s USB device solution and HTTP server through the Zybo’s Ethernet port. This is also a perfect opportunity to try the new and improved release of Vivado 2017.1.

The plan is to use the Zybo on-board SD Card to hold the html files for the HTTP server. To make it more interesting, instead of just copying the files using a PC, I’ll turn the Zybo into a USB mass storage device to access the SD Card.

Digilent ZYBO development board with the Xilinx Zynq-7000 system on chip and FPGA.
Figure 1 – Digilent ZYBO

Read more

Embedded Storage on the snickerdoodle

krtkl snickerdoodle close up image of Zynq-7000 SoC and SD Card cage.

This is a continuation of the snickerdoodle adventure, following last week’s successful “hello world” , using Micrium’s µC/OS RTOS. In this series of articles, I’m exploring the capabilities of the snickerdoodle as a development platform for high performance real-time operating systems. This time, I will be running an embedded file system on the snickerdoodle module, enabling … Read more

snickerdoodle says Hello World!

krtkl snickerdoodle with connector down configuration and SD Card installed in cage.

What would make a better first post about embedded software than a hello world project on a brand-new development board. It’s the krtkl snickerdoodle I received with much excitement last week. The SoM is based on the Xilinx Zynq-7000 SoC along with storage and wifi on the SoM. In these next series of articles, I’m … Read more