uncategorized wolssl

Xilinx vs STM: wolfSSL Integration and Build Experience Compared

Selecting the right hardware for an embedded project can be a complex decision—but choosing a security library doesn’t have to be. wolfSSL offers broad platform support, running seamlessly on everything from bare-metal systems to full-featured operating systems. In this post, we’ll compare how wolfSSL integrates with two widely used embedded platforms: Xilinx and STM. While both are popular choices, they offer distinct differences in architecture, development tools, and integration workflows.

Platform High Level Overview

Xilinx

Primarily FPGA-based (Zynq, Zynq Ultrascale+, Versal) Offers ARM Cortex-A cores alongside programmable logic Development environment: Xilinx Vitis / Petalinux OS: Often uses Linux (Yocto or Petalinux), FreeRTOS or bare-metal

STM (STMicroelectronics)

Microcontroller-focused (e.g., STM32 family) Most are based on ARM Cortex-M cores, with some series using Cortex-A cores Development environment: STM32CubeIDE, Makefiles, or bare-metal toolchains OS: Often bare-metal or FreeRTOS

wolfSSL Build Process

Xilinx

Autotools or CMake to build wolfSSL in userspace Cross-compilation with Petalinux SDK or Vitis toolchain Hardware acceleration via Xilinx’s crypto engine, ARM assembly optimizations or custom logic in the PL with crypto callbacks

STM (STMicroelectronics)

Predefined example configuration files in wolfSSL/IDE/STM32Cube Integration with STM32CubeMX-generated projects Support for HAL/LL drivers, and FreeRTOS (if applicable)

Cryptographic Acceleration

Xilinx

Advanced FPGAs allow for hardware acceleration of cryptographic primitives Can use custom IP cores or external crypto accelerators wolfSSL’s ARM assembly optimizations Potential for extreme performance gains, but at the cost of complexity

STM (STMicroelectronics)

Some STM32 parts support hardware ECC, AES, SHA, and RNG wolfSSL can use these via direct calls to HAL drivers Easier to configure and use but offers less flexibility compared to FPGAs and on average has a less powerful CPU wolfSSL’s ARM assembly optimizations

Some Use Cases We See

Xilinx if:

You need programmable logic and customizable crypto acceleration Your application runs Linux and demands high throughput You have a complex security architecture

STM if:

You want quick integration for a bare-metal or FreeRTOS-based project Your focus is low power and minimal footprint You need an edge microcontroller

Both Xilinx and STM platforms are well-supported by wolfSSL, but the experience differs significantly. Xilinx generally offers power and flexibility—ideal for high-performance secure systems—while STM excels in simplicity and efficiency, making it perfect for lightweight, resource-constrained designs. Whether you’re targeting a Linux-based Zynq application or a real-time STM32 sensor node, wolfSSL provides the building blocks you need to implement robust embedded security. If you have questions about any of the above, please contact us at facts@wolfSSL.com or call us at +1 425 245 8247. Download wolfSSL Now