Browse Prior Art Database

Multiple Digital Signal Processor Multimedia Subsystem with Shared Memory

IP.com Disclosure Number: IPCOM000106271D
Original Publication Date: 1993-Oct-01
Included in the Prior Art Database: 2005-Mar-20
Document File: 2 page(s) / 102K

Publishing Venue

IBM

Related People

Baker, R: AUTHOR [+5]

Abstract

Disclosed is a subsystem in which two or more digital signal processors (DSPs) are interconnected by sharing part of their data stores and by using parallel processor software techniques. The shared data stores are implemented either through the use of a multiported memory or through the use of a high speed memory accessed in different clock phases for the various DSP's.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Multiple Digital Signal Processor Multimedia Subsystem with Shared Memory

      Disclosed is a subsystem in which two or more digital signal
processors (DSPs) are interconnected by sharing part of their data
stores and by using parallel processor software techniques.  The
shared data stores are implemented either through the use of a
multiported memory or through the use of a high speed memory accessed
in different clock phases for the various DSP's.

      In a preferred implementation, the high address portion of the
data store of each DSP is common with that of the adjacent DSP,
allowing each DSP to access this memory at full speed.  Through the
use of such techniques as General Purpose Connectors (GPCs) and
Inter-task Communi cation Blocks (ITCBs) in shared memory, separate
DSPs can communicate effectively, even when they are running
different tasks.  (The term "task" is used to indicate the separately
compiled DSP code which does a specific job, but which is combined
with other pieces of code to perform a total function.  For example,
a modem function may be implemented as four or five tasks.)  A GPC is
a circular buffer allowing one task to queue up data independently as
another task is taking data out of the queue.  An ITBC is a fixed
block of data, rather than a circular buffer, which is used in a
similar manner.

      Since tasks already communicate in this manner, it is also
possible to link tasks in different DSPs, so that the DSP task code
and the application code of the host system need not change when run
on a multiple DSP arrangement.  In this way, all the tasks run as
they would on a single DSP.

      As s...