Browse Prior Art Database

Multiprocessor Manager

IP.com Disclosure Number: IPCOM000036888D
Original Publication Date: 1989-Nov-01
Included in the Prior Art Database: 2005-Jan-29
Document File: 2 page(s) / 43K

Publishing Venue

IBM

Related People

Galand, C: AUTHOR [+3]

Abstract

We consider a T1 (24 full duplex voice channels) to be connected through an adapter to a voice messaging system. For each channel, the function of the adapter is either to compress the speech by blocks of 20 ms and to send the resulting frames to the messaging system (task 1) or, conversely, to decompress the frames received from the messaging system and to put the resulting speech samples in the correspond ing T1 slots (task 2). A particular voice channel may also be transmitted without compression (clear channel - task 3), or may be idle (task 4). The problem we address is the dispatching of these tasks to a bank of 4 digital signal processors (DSPs) which are monitored by a master processor.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 70% of the total text.

Page 1 of 2

Multiprocessor Manager

We consider a T1 (24 full duplex voice channels) to be connected through an adapter to a voice messaging system. For each channel, the function of the adapter is either to compress the speech by blocks of 20 ms and to send the resulting frames to the messaging system (task 1) or, conversely, to decompress the frames received from the messaging system and to put the resulting speech samples in the correspond ing T1 slots (task 2). A particular voice channel may also be transmitted without compression (clear channel - task 3), or may be idle (task 4). The problem we address is the dispatching of these tasks to a bank of 4 digital signal processors (DSPs) which are monitored by a master processor.

At each 20 ms block, the master processor swaps the I/O and processing pointers and starts the monitoring of a new block.

The balancing of the tasks makes use of the following variables stored in the master's memory:

Input variables: TASK(i) -channel tasks (i=1,...,24). This variable can take values -1 (clear channel), 0 (idle channel), 1 (compression), and 2 (decompression).

Working variables: DSPLOAD(j) - digital signal processor load (j=1,4); and MINLOAD - points during the process on the less loaded DSP.

Constant: TASKCOST(1) contains the execution time of compression. TASKCOST(2) contains the execution time of decompression. Assuming the DSPs operate at a 50 ns instruction cycle, these times are respectively 2.6 and
0.6 ms.

Output variables: DSP...