Using QEMU with PetaLinux and Vitis for Embedded Software Development

QEMU is a powerful emulation tool that enables early software debugging for complex SoCs like the AMD Zynq UltraScale+ MPSoC, without the need for physical hardware. When paired with PetaLinux and the AMD Vitis development environment, QEMU creates an efficient workflow for embedded Linux development and debugging. This post explains what these tools are, how … Continued
Finite State Machines (FSMs)

Stop Having So Many States in Your Finite State Machines! – A Guide to Using FSMs

What starts as a simple task can quickly spiral into something far more complex—whether it's home repairs, birthday parties, or, unfortunately, Finite State Machines (FSMs). In Hardware Description Language (HDL), it’s easy to keep adding states—“wait” states, nested states, and so on. While these states are meant to simplify logic and improve maintainability, they often … Continued