# Managed DSP resources

CG boards are based on a flexible software and hardware architecture. The architecture uses an array of digital signal processors (DSPs) under the control of a specially designed operating system to execute algorithms that detect, encode, decode, and generate voice and call status signals. These DSP resources are managed by the DSP resource manager executing on the board.

CG board DSP resource management is configured to operate on a per-port basis. A port is associated with a circuit-switched call (for PSTN-based applications) or another type of media stream. DSP resource management determines the DSPs on which particular DSP functions run. Resource management can ensure that the DSP resources required to support a call are available when needed.

CG board DSP resource management reserves all of the resources required for a port before the port is used. The DSP resources that are reserved for a port are specified in the Resource[x].Definitions keyword and the Resource[x].TCPs keyword in the board keyword file.

The standard set of board keyword files provided with CG software (and other NaturalAccess software, if applicable) contains DSP resource management settings suitable for most applications. Therefore, in most cases you do not need to modify these resource definitions, and you can skip this section. However, if your application requires resources not specified in the sample board keyword files, you may need to customize the CG board's DSP resource management settings. You should understand how the CG DSP resource manager allocates resources before modifying the standard DSP resource definitions.