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 »
Close-up screenshot of the Eclipse IDE showing the code editor open with a portion of the toolbar.

GCC Toolchain Eclipse Setup Guide Part 2 — Managed Build Project

This guide will go through the steps of creating a managed build project using Eclipse and the GCC toolchain setup in the previous guide. Along with basic instructions the guide includes information on how to setup the cross-gcc build as well as how to fix common build issues when using Eclipse and GCC.

Read More »
Close-up screenshot of the Eclipse IDE with the code editor opened.

GCC Toolchain Eclipse Setup Guide Part 1 — Eclipse and GCC

In part 1 of this series is a complete step-by-step installation and configuration guide for all the tools required to integrate a GCC toolchain within the Eclipse IDE. Including obviously Eclipse and your selected GCC toolchain as well as the MSYS2 UNIX environment for Windows.

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

MicroBlaze Configuration for an RTOS Part 3 – Cache Configuration

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.

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

MicroBlaze Configuration for an RTOS Part 2 – Configuration Parameters

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.

Read More »
Block diagrams of three types of on-chip RAM (OCRAM) topology.

Introduction to On-Chip RAM

On chip ram, often abbreviated OCRAM has been around since the earliest System on Chips(SoCs). In the beginning, on chip memory was relatively small and was primarily used by bootloaders and as simple scratch memory. On chip RAM has since evolved in terms of size, speed and features as SoCs became more complex to often

Read More »
BASEplatform logo.

BASEplatform Support for Express Logic’s X-WARE IoT PLATFORM

We announced a few weeks ago support for the Express Logic ThreadX RTOS as well as the X-WARE IoT PLATFORM™ within our very own BASEplatform™. This article goes over some of the advantages of using JBLopen’s BASEplatform Board Support Packages (BSPs) and drivers along with Express Logic’s solution. What Is the BASEplatform The BASEplatform is

Read More »
Close-up view of Toradex Colibri iMX7 in evaluation board.

BASEplatform Bring-Up on the Toradex Colibri iMX7

This article will go over some aspects of the early bring-up experience using the BASEplatform™ on the Toradex Colibri iMX7 System on Module (SoM). It will also cover features and advantages of the Colibri SoM for embedded developers interested in using an RTOS or a bare-metal environment on the NXP® i.MX7 SoC. The BASEplatform is

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 »
BASEplatform logo.

BASEplatform in Depth: The I/O API

In the last article about our recently launched BASEplatform product, we gave an overview of the various modules that can be part of the BASEplatform. In this article we go in a little more detail about an important aspect of any embedded software product, the API. In this case, the I/O API since it’s one

Read More »
Diagram of the core modules of the BASEplatform cross platform SDK.

BASEplatform in Depth: The Modules

Two weeks ago, we launched our first embedded software product, BASEplatform. This article is the first of a series where we go into more details about the features and advantages of the BASEplatform. BASEplatform is designed to bring application developers all the necessary low-level components such as startup code, drivers, BSP, RTOS integration as well

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 »
Close-up screenshot of the Eclipse IDE showing the code editor open with a portion of the toolbar.

GCC Toolchain Eclipse Setup Guide Part 2 — Managed Build Project

This guide will go through the steps of creating a managed build project using Eclipse and the GCC toolchain setup in the previous guide. Along with basic instructions the guide includes information on how to setup the cross-gcc build as well as how to fix common build issues when using Eclipse and GCC.

Read More »
Close-up screenshot of the Eclipse IDE with the code editor opened.

GCC Toolchain Eclipse Setup Guide Part 1 — Eclipse and GCC

In part 1 of this series is a complete step-by-step installation and configuration guide for all the tools required to integrate a GCC toolchain within the Eclipse IDE. Including obviously Eclipse and your selected GCC toolchain as well as the MSYS2 UNIX environment for Windows.

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

MicroBlaze Configuration for an RTOS Part 3 – Cache Configuration

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.

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

MicroBlaze Configuration for an RTOS Part 2 – Configuration Parameters

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.

Read More »
Block diagrams of three types of on-chip RAM (OCRAM) topology.

Introduction to On-Chip RAM

On chip ram, often abbreviated OCRAM has been around since the earliest System on Chips(SoCs). In the beginning, on chip memory was relatively small and was primarily used by bootloaders and as simple scratch memory. On chip RAM has since evolved in terms of size, speed and features as SoCs became more complex to often

Read More »
BASEplatform logo.

BASEplatform Support for Express Logic’s X-WARE IoT PLATFORM

We announced a few weeks ago support for the Express Logic ThreadX RTOS as well as the X-WARE IoT PLATFORM™ within our very own BASEplatform™. This article goes over some of the advantages of using JBLopen’s BASEplatform Board Support Packages (BSPs) and drivers along with Express Logic’s solution. What Is the BASEplatform The BASEplatform is

Read More »
Close-up view of Toradex Colibri iMX7 in evaluation board.

BASEplatform Bring-Up on the Toradex Colibri iMX7

This article will go over some aspects of the early bring-up experience using the BASEplatform™ on the Toradex Colibri iMX7 System on Module (SoM). It will also cover features and advantages of the Colibri SoM for embedded developers interested in using an RTOS or a bare-metal environment on the NXP® i.MX7 SoC. The BASEplatform is

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 »
BASEplatform logo.

BASEplatform in Depth: The I/O API

In the last article about our recently launched BASEplatform product, we gave an overview of the various modules that can be part of the BASEplatform. In this article we go in a little more detail about an important aspect of any embedded software product, the API. In this case, the I/O API since it’s one

Read More »
Diagram of the core modules of the BASEplatform cross platform SDK.

BASEplatform in Depth: The Modules

Two weeks ago, we launched our first embedded software product, BASEplatform. This article is the first of a series where we go into more details about the features and advantages of the BASEplatform. BASEplatform is designed to bring application developers all the necessary low-level components such as startup code, drivers, BSP, RTOS integration as well

Read More »