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