How To: Python Egg as a REDHAWK Shared Library

This post is a step-by-step guide to creating a REDHAWK Shared Library from a Python Egg. Shared Libraries are package dependencies of REDHAWK Components that enable environment-agnostic deployment to general purpose processors (GPPs). When developing a Python Component, it is common to have a Python package dependency (often installed by a package manager like pip) that you need to deploy as a Shared Library. The REDHAWK IDE currently only supports C++ for Shared Libraries, so this guide will walk you through the steps required modify the Shared Library project to implement a Python Egg as a REDHAWK Shared Library!

Docker Redhawk Swarm

To build upon the rapid deployment capabilities we introduced with Docker REDHAWK, we now bring you a distributed computing solution in the form of Docker Redhawk Swarm! Docker Swarm is the perfect companion to enable the greatest power of Redhawk: its capability to divide a complex signal processing task into components that can be distributed across a diverse set of devices. In this post, we walk you through the steps of setting up your Swarm, deploying Redhawk, and even integrating SDR and GPS platforms!

Modular Firmware IP Best Practices

Due to long development cycles (and short schedules!), firmware designers often struggle to generate modular intellecutal property (IP) that is reusable between applications. Modularity relies heavily upon parameterization which can be a difficult challenge in firmware design. Instead of a single IDE with an integrated compiler, parameters are scattered across HDL design files, modeling tools (MATLAB/Octave/Python), vendor tools (Vivado/Quartus/Libero), and simulation tools (QuestaSim/Cadence). The modification of these parameters must be synchronized when reusing IP.

Analog Devices FMCOMMS via Yocto

Recently, we developed a capability that combined an Analog Devices FMCOMMS3 dual-transceiver FMC card with a Xilinx ZC706 Development kit and represents that system as a combined REDHAWK FrontEnd Interfaces and Persona Device. The ZC706 is another Xilinx Zynq -based system similar to the more common ZedBoard and ZC702 development kits except that it provides […]