Dialogic Voice Cards - "Different HPI queue setting in pair-core" warning message when booting up a CG board

Dialogic Voice Cards - "Different HPI queue setting in pair-core" warning message when booting up a CG board

Symptom

When booting up a Dialogic® CG6x6x board, the following OAM warning message is returned:

Fri Apr 01 12:43:46 - OAMEVN_ALERT WARNING Board 0 "CG_6060 - 0" 
DSP 2 and 3 - Different HPI queue setting in pair-core. 
Fri Apr 01 12:43:53 - OAMEVN_STARTBOARD_DONE Finished INFO Board 0 "CG_6060 - 0" 
Board is started. 

Reason for the issue

This can occur when a conferencing resource is configured and also a part of the configuration requires modification of the DSP data (HPI) queue setting.  Due to a DSP architectural limitation, DSPs in a pair core (DSP core 0 and 1 are a pair, 2 and 3 are a pair, and so on)  must maintain the same HPI queue setting. Therefore, the settings for CmdQ, DataInQ, and DspOutQ must be the same in a pair core.  However, depending on the number of ports required, sometimes only an odd number of DSPs are required (e.g. 3 DSP cores give enough conference ports and the 4th DSP core is used for PSTN functions), in this case, if DSPs 0 to 2 are set to conferencing HPI settings, and DSP 3 is still set to the default value, then this warning would show up during board boot.

Workaround

To remove this warning message, make sure each DSP core pair has the same HPI queue setting.  For example:

DSP.C5x[0..1].CmdQStart = 0x2000
DSP.C5x[2..3].CmdQStart = 0xE800

Further Detail and example

As mentioned above, different resource setting are required for different functionalities (for example, a board has a resource pool to handle conferencing functionality, a resource pool for Fusion, and another pool to handle PSTN calls), and it depends on how many ports each application needs, sometimes a DSP core pair needs to be broken up.  For example, if only 3 DSP cores are needed for conferencing, then the 4th DSP core can still be used for something else.  It's possible to do this as long as conferencing and Fusion are not grouped together within the same DSP core pair.  By default, the HPI settings are for PSTN and Fusion.  Conferencing has it's own specific settings. For PSTN, either the default HPI settings or conferencing HPI settings will work, so you can always group PSTN with either conferencing or Fusion within a DSP pair, but conferencing and Fusion resources should never be in the same DSP pair core.  Here is an example configuration that mixes conferencing and PSTN in a DSP pair core, and mixes PSTN and Fusion in another DSP pair core, by setting DSP cores 0 to 2 for conference, DSP cores 3 to 6 for PSTN, and DSP 7 for Fusion, note that conferencing HPI setting goes from 0 to 3 to satisfy the pair core requirement:

################## IVR, PSTN, CPA Resource ################## Resource[0].Name = IVR_PSTN Resource[0].Size = 27 Resource[0].StartTimeslot = 0 Resource[0].TCPs = nocc Resource[0].Definitions =  ( ( dtmf.det_all & ptf.det_4f | callp.gnc | tone.gen ) | \ ( rvoice.rec_mulaw | rvoice.play_mulaw ) | \ ( rvoice.rec_alaw | rvoice.play_alaw ) | \ ( rvoice.rec_lin | rvoice.play_lin ) | \ ( wave.rec_11_8b | wave.play_11_8b )  ) Resource[0].Dsps = 3 4 5 6  ################## VoIP configuration ################## Resource[1].Name = IP Resource[1].Size = 12 Resource[1].StartTimeslot = 36 Resource[1].TCPs = nocc Resource[1].Definitions = ((dtmf.det_sil_clrdwn_ced & \  (f_g711.cod_rfc2833 & f_g711.dec_rfc2833) ) | \   (dtmf.det_all & (f_g711.cod & f_g711.dec)))  Resource[1].Dsps = 7 ################## Conference Configuration ################## DSP.C5x[0..3].NumTxTimeSlots = 32 DSP.C5x[0..3].NumRxTimeSlots = 32 DSP.C5x[0..3].CmdQStart = 0xE800 DSP.C5x[0..3].DataInQStart = 0xF800 DSP.C5x[0..3].DspOutQStart = 0xFB00 DSP.C5x[0..3].CmdQSize = 0x110 DSP.C5x[0..3].Libs[1] = cg6mslib DSP.C5x[0].Files = cgcnfm DSP.C5x[1..2].Files = cgcnfs

Glossary of Acronyms

DSP -- In telephony, a Digital Signal Processor; a microprocessor that is designed to perform the calculations required for voice processing.

HPI -- The Host Port Interface in the DSP allows the external host processors to access the memory space in the DSP.

PSTN -- Public Switched Telephone Network; a public telephone network.

IVR -- Interactive Voice Response; a telephony application in which callers interact with a program using recorded or synthesized voice prompts, DTMF digits, or speech recognition to query or deliver information.

CPA -- Call Progress Analysis; functions that allow the application to control and supervise call placement. Call progress monitors in-band energy to detect network tones, voice, and other tones such as modems.