CVSD Military Speech Codec
Continuously Variable Slope Delta Modulation
CVSD is used in both commercial and military communications
Features List
- Full Duplex codec
- Functions are C-callable
- Designed for Multi-channel operation
Also visit:
MELPe – Enhanced Mixed Excitation Linear Predictive (MELP) vocoder
A low bit-rate military codec known as standard MIL-STD-3005 and NATO STANAG 4591
CVSD Codec encodes voice signals at 1 bit per sample, so that audio sampled at 16kHz is encoded at 16 kbps.
Sampling Rate: 8 kHz Coding Rate = 8000 bps
Sampling Rate: 12khz Coding Rate = 12000 bps
Sampling Rate: 16khz Coding Rate = 16000 bps
Availability
Platforms Arm ® Devices – Armv7-A, Armv8-A, Armv9-A || Armv7-M / Armv8-M || Legacy Cortex-M3, ARM9e/ARM11 Texas Instruments – TI TMS320C7000 C7x, TMS320C6000 C64x/C64x+/C66, C674x, TMS320C5000 C55x Win32 LIB / DLL Linux i686
ADT CVSD is available on the above Platforms: Other configurations are available upon request.
Specifications
NOTE: We specify MIPS (Millions of Instructions Per Second) as MCPS (Millions of Instruction Cycles Per Second). Unless otherwise specified, peak MIPS are indicated.
↓ Click on links below to view specification tables.
ARM Cortex-A8 / A9 / A15
CPU UTILIZATION & MEMORY REQUIREMENTSCortex-A MIPS (Peak) | ||||||
8000 hz/8000 bps | 12000 hz/12000 bps | 16000 hz/16000 bps | ||||
Software | Encode | Decode | Encode | Decode | Encode | Decode |
CVSD | 1.6 | 1.6 | 2.4 | 2.4 | 3.2 | 3.28 |
All Memory usage is given in bytes.
Memory | ||
Function | Program Memory | Data Memory |
Encoder | Decoder | 1872 | 1664 |
Cortex-M4
CPU UTILIZATION & MEMORY REQUIREMENTSCortex-M4 MIPS (Peak) | ||||||
8000 hz/8000 bps | 12000 hz/12000 bps | 16000 hz/16000 bps | ||||
Software | Encode | Decode | Encode | Decode | Encode | Decode |
CVSD | 1.6 | 1.6 | 2.4 | 2.4 | 3.2 | 3.28 |
All Memory usage is given in bytes.
Memory | ||
Function | Program Memory | Data Memory |
Encoder | Decoder | 1792 | 1664 |
C64x / C64x+ / C66x / C67xx / C7x
CPU UTILIZATION & MEMORY REQUIREMENTSC64x MIPS (Peak) | ||||||
8000 hz/8000 bps | 12000 hz/12000 bps | 16000 hz/16000 bps | ||||
Software | Encode | Decode | Encode | Decode | Encode | Decode |
CVSD | 0.2 | 0.2 | 0.3 | 0.3 | 0.4 | 0.41 |
All Memory usage is given in bytes.
Memory | ||||
Function | Program Memory | Tables | Data Memory | Channel |
Encoder | Decoder | 512 | 0 | 0 | 14 |
CVSD C55x
CPU UTILIZATIONC64x MIPS (Peak) | ||||||
8000 hz/8000 bps | 12000 hz/12000 bps | 16000 hz/16000 bps | ||||
Software | Encode | Decode | Encode | Decode | Encode | Decode |
CVSD | 0.4 | 0.4 | 0.6 | 0.6 | 0.8 | 0.82 |
x86 32-Bit
MEMORY REQUIREMENTSAll Memory usage is given in bytes.
Memory | ||
Channel Instance | Program Memory | Data Memory |
40 | 1872 | 1664 |
Win32 DLL & Static lib
MEMORY REQUIREMENTSAll Memory usage is given in bytes.
Memory | ||
Channel Instance | Program Memory | Data Memory |
40 | 784 | 1400 |
Description
CVSD Codec (Continuously Variable Slope Delta Modulation) is used in both commercial and military communications where “toll-quality” is required, yet low computation complexity and low memory requirements are desirable. As the name implies it is Delta modulation (DM*) with variable step size. A method by which a voice signal is digitized for transmission, and then changed back to an analogue voice signal during reception. The size of the steps of the approximated signal is progressively increased or decreased as required to make the approximated signal closely match the input analog wave. The CVSD Codec is a full duplex codec.
*Delta-modulation (DM) is a differential waveform quantization or coding technique. A DM encoder uses the error between the original signal to be coded and the coded signal itself to create a differentially quantized data stream. Codec
Function API's
API function call summary
CVSD_ADT_reset (. . .) Initializes the CVSD
CVSD_ADT_encode (. . .) Executes the CVSD encoder
CVSD_ADT_decode (. . .) Executes the CVSD decoder