Articles by subject: benchmark

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

MicroBlaze Benchmarks Part 2 – Memory Bandwidth & Latency

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.

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

MicroBlaze Benchmarks Part 1 – CoreMark Performance

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.

Read More »
Histogram of interrupt latency distribution with pase fail sections for demonstration.

Estimating Worst Case Interrupt Latency at Runtime

This article shows a simple way of estimating worst case interrupt latency at runtime which can be implemented on most MCUs and RTOSes or even bare-metal. All that is needed is a hardware timer that can generate an interrupt after an arbitrary time delay. The technique is also rather non-intrusive, making it usable all the way to production without significantly affecting the application’s performance.

Read More »
Close up shot of the NXP i.MX7 Sabre development board showing the SoC BGA chip.

i.MX7D M4 Bare-Metal Bring-up and Benchmark

Following up on the last piece about the NXP i.MX 7, this article looks at the Cortex-M4 companion of the A7 present in the i.MX 7. Or to put it another way, a Kinetis-on-chip since it’s very similar to a high-end Cortex-M4 based Kinetis. This article summarizes my experience writing a brand new bare metal

Read More »
Close up shot of the NXP i.MX7 Sabre development board showing the SoC BGA chip.

i.MX7D Sabre Bare-Metal Bring-up and Benchmark

One of our specialties at JBLopen is board bring-up, either for bare metal or various commercial and open source RTOSes. Despite the number of different platforms, CPU architectures and RTOSes out there, low level bring-up, BSP and driver development are rarely discussed in blogs and articles on the web. While this is hardly my first

Read More »
Interrupt latency distribution for a Cortex-A9 with cold cache.

Improving Interrupt Latency on the ARM Cortex-A9

Continuing from the last post, this article explores features specific to early members of the ARM Cortex-A family such as the Cortex-A9. Namely the L2 cache and TLB lockdown features found in those processors. It’s important to note that those two features are not available in more recent 32 bits ARM processors such as the

Read More »
Histogram of access latency for random memory access on a Cortex-A9.

ARM Cortex-A Interrupt Latency

In this article, I’ll explore interrupt latency of a Cortex-A9 under various scenarios — and yes, it’s still on the Zynq-7000, since I still have that board on my desk from the last two articles. An upcoming follow-up article will describe methods of improving worst case latency. Embedded Systems and Application Processors With the ever-increasing requirements

Read More »

Articles by subject: benchmark

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

MicroBlaze Benchmarks Part 2 – Memory Bandwidth & Latency

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.

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

MicroBlaze Benchmarks Part 1 – CoreMark Performance

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.

Read More »
Histogram of interrupt latency distribution with pase fail sections for demonstration.

Estimating Worst Case Interrupt Latency at Runtime

This article shows a simple way of estimating worst case interrupt latency at runtime which can be implemented on most MCUs and RTOSes or even bare-metal. All that is needed is a hardware timer that can generate an interrupt after an arbitrary time delay. The technique is also rather non-intrusive, making it usable all the way to production without significantly affecting the application’s performance.

Read More »
Close up shot of the NXP i.MX7 Sabre development board showing the SoC BGA chip.

i.MX7D M4 Bare-Metal Bring-up and Benchmark

Following up on the last piece about the NXP i.MX 7, this article looks at the Cortex-M4 companion of the A7 present in the i.MX 7. Or to put it another way, a Kinetis-on-chip since it’s very similar to a high-end Cortex-M4 based Kinetis. This article summarizes my experience writing a brand new bare metal

Read More »
Close up shot of the NXP i.MX7 Sabre development board showing the SoC BGA chip.

i.MX7D Sabre Bare-Metal Bring-up and Benchmark

One of our specialties at JBLopen is board bring-up, either for bare metal or various commercial and open source RTOSes. Despite the number of different platforms, CPU architectures and RTOSes out there, low level bring-up, BSP and driver development are rarely discussed in blogs and articles on the web. While this is hardly my first

Read More »
Interrupt latency distribution for a Cortex-A9 with cold cache.

Improving Interrupt Latency on the ARM Cortex-A9

Continuing from the last post, this article explores features specific to early members of the ARM Cortex-A family such as the Cortex-A9. Namely the L2 cache and TLB lockdown features found in those processors. It’s important to note that those two features are not available in more recent 32 bits ARM processors such as the

Read More »
Histogram of access latency for random memory access on a Cortex-A9.

ARM Cortex-A Interrupt Latency

In this article, I’ll explore interrupt latency of a Cortex-A9 under various scenarios — and yes, it’s still on the Zynq-7000, since I still have that board on my desk from the last two articles. An upcoming follow-up article will describe methods of improving worst case latency. Embedded Systems and Application Processors With the ever-increasing requirements

Read More »