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 »
krtkl snickerdoodle close up image of Zynq-7000 SoC and SD Card cage.

Embedded Storage on the snickerdoodle

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 »
krtkl snickerdoodle with connector down configuration and SD Card installed in cage.

snickerdoodle says Hello World!

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. In these next series of articles, I’m going to explore the capabilities of the snickerdoodle as a development platform for a high-performance real-time operating

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 »
krtkl snickerdoodle close up image of Zynq-7000 SoC and SD Card cage.

Embedded Storage on the snickerdoodle

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 »
krtkl snickerdoodle with connector down configuration and SD Card installed in cage.

snickerdoodle says Hello World!

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. In these next series of articles, I’m going to explore the capabilities of the snickerdoodle as a development platform for a high-performance real-time operating

Read More »