Software Development Kit

Cognovo provide a very complete tool chain to ensure the modem development process is swift and low risk. There are two distinct Software Development Kits (SDK) providing tools for both hard real-time physical layer programming and higher level system scheduling and control.

At all times, code development and debug is carried out in high level standard C Code. The Cognovo SoftModem development flow is designed to be straight forward and should be very familiar to experienced modem engineers. The SoftModem Platform is designed to fit within an existing design flow as shown below. The VSP Kernel SDK supports development of the physical layer algorithmic tasks and provides a direct link with the typical fixed-point algorithm development flow. The resulting optimised PHY kernels are then built into a physical layer system prior to any silicon development using the system modelling and scheduling capabilities of the System SDK.

Cognovo SoftModem Design Flow

VSP Kernel SDK
The Kernel SDK enables developers to create, debug, profile and optimise specific Physical Layer algorithm tasks or Kernels, such as FFTs, or FIRs  which are linked together to create larger functions within the Modem, such as Downlink or Uplink. This is the point of entry for existing developments, since standard fixed-point C code implementations of key algorithms can be readily imported into the toolset and targeted towards the  VSP architecture to make a rapid assessment of performance and efficiency prior to using the optimisation tools to reach the best possible results.

Code Development and Profiling


SoftModem System SDK
The System SDK allows PHY Kernels to be linked together into system-level functional units. The Task Partitioner tool allows developers to design and layout the overall operation of both Layer 1 and PHY in terms of scheduling and data flow, whilst the System Debug and Real-time visualisation tools provide multi-threaded system debug and on-target real time debug / visualisation. In addition, a complete system model allows initial development to be carried out on a PC platform prior to targeting real hardware.


Task Partitioning and Realtime Visualisation