IP Library Granted Patent US 6,912,217
Granted Patent B1
US 6,912,217 · App. 09/918,736 · Granted Jun 28, 2005

Protocol stack encapsulation for voice processor

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,912,217
App. No.
09/918,736
Granted
Jun 28, 2005
Kind
B1
Abstract

A system and method are presented for the encapsulation of a protocol stack in a voice telephony processor. Utilizing the system and method disclosed herein, digital voice telephony signals received in TDM frame-based format are converted to packet-based or cell-based format for transmission on a network, and vice-versa. The system and method may be embodied as a functional block within a specialized high-density integrated circuit voice processor. The voice processor employs on-chip digital signal processors (DSPs) to perform echo cancellation, dynamic range compression/expansion, and other processing on voice data. Advantageously, the encapsulation process of the disclosed herein does not impact the throughput of the DSPs. Instead, voice data is reformatted and prefixed with a header for the appropriate protocol layers using a dedicated on-chip packet control processor and linked list data structures managed by indexed direct memory access (DMA) controllers. Thus, data encapsulation has no impact on the signal processing activities.

Claims (23)

1. A system for reformatting data in an integrated circuit voice processor, comprising:

a first linked list of sequential data structures, wherein each data structure within the first linked list comprises a first memory buffer and a first buffer management descriptor (BMD), such that the first memory buffer is adapted to store data, and the first BMD contains a first pointer to the first memory buffer and a second pointer to the next data structure in the first linked list;

a second linked list of data structures, wherein each data structure within the second linked list comprises a second memory buffer and a second BMD, such that the second BMD contains a third pointer to the second memory buffer and a fourth pointer to the next data structure in the second linked list; and

a direct memory access (DMA) controller adapted to transfer data stored in memory buffers within the first linked list of data structures into memory buffers within the second linked list of data structures by traversing the first and second pointers in the first linked list to identify the source location of the data and traversing the third and fourth pointers in the second linked list to identify the destination.

2. The system as recited in claim 1 , wherein the integrated circuit voice processor contains a digital signal processor (DSP) adapted to access the data, and wherein the DMA controller transfers the data from the first to the second linked list of data structures with substantially no intervention from the DSP.

3. The system as recited in claim 1 , wherein characteristics of the data structures in the second linked list, including the number of data structures, the size of the second memory buffers and the sequence of the data structures in the second linked list, differ from those of the data structures in the first linked list.

4. The system as recited in claim 3 , wherein the characteristics of the data structures in the second linked list correspond to the organization of data in a time division multiplexed (TDM) frame, as typically used for telephone communication.

5. The system as recited in claim 3 , wherein the characteristics of the data structures in the second linked list correspond to the organization of data in a TCP/IP packet, as typically used in network communications.

6. The system as recited in claim 3 , wherein the integrated circuit voice processor contains a packet control processor (PCP), adapted to configure the characteristics of the data structures in the first and second linked lists.

7. The system as recited in claim 6 , wherein the PCP is further adapted to prepare a header by modifying selected fields in a template corresponding to standard network protocols from the data contained in the memory buffers in the second linked list of data structures.

8. The system as recited in claim 7 , wherein the PCP is further adapted to prefix a data structure to the second linked list, such that the data structure contains a first pointer to the header and a second pointer to the first data structure in the second linked list.

9. The system as recited in claim 8 , further comprising an asynchronous transfer mode segmentation and reassembly (ATMSAR) module, adapted to receive the data stored in the memory buffers of the data structures in the second linked list and reformat said data as ATM cells.

10. A method for reformatting data in an integrated circuit voice processor, comprising:

creating a first linked list of sequential data structures, wherein each data structure comprises a first memory buffer adapted to store a portion of the data and a first buffer management descriptor (BMD) that contains a first pointer to the first memory buffer and a second pointer to the next data structure in the linked list;

storing a portion of the data in the first memory buffer;

creating a second linked list of data structures, wherein each data structure within the second linked list comprises a second memory buffer and a second BMD, such that the second BMD contains a third pointer to the second memory buffer and a fourth pointer to the next data structure in the second liked list; and

transferring data stored in memory buffers within the first liked list of data structures into memory buffers within the second linked list of data structures by traversing the first and second pointers in the first linked list to identify the source location of the data and traversing the third and fourth pointers in the second linked list to identify the destination.

11. The method as recited in claim 10 , wherein the wherein the integrated circuit voice processor further comprises a digital signal processor (DSP) and a direct memory access (DMA) controller, and wherein the method further comprises using the DMA controller to transfer the data from the first to the second linked list of data structures with substantially no intervention from the DSP.

12. The method as recited in claim 10 , further comprising using a packet control processor (PCP) to configure characteristics of the data structures in the first and second linked lists, including their number, the size of their memory buffers and their sequence in the linked list.

13. The method as recited in claim 12 , further comprising configuring the characteristics of the data structures in one of the linked lists to correspond to the organization of data in a time division multiplexed (TDM) frame, as typically used for telephone communication, and configuring the characteristics of the data structures in the other linked list to correspond to the organization of data in a TCP/IP packet, as typically used in network communications.

14. The method as recited in claim 13 , further comprising the PCP preparing a header by modifying selected fields in a template corresponding to standard network protocols, from the data contained in the memory buffers in the second linked list of data structures.

15. The method as recited in claim 14 , further comprising the PCP prefixing a data structure to the second linked list, such that the data structure contains a first pointer to the header and a second pointer to the first data structure in the second linked list.

16. The method as recited in claim 15 , further comprising receiving the data stored within the memory buffers in the second linked list of data structures and reformatting it as ATM cells, using an asynchronous transfer mode segmentation and reassembly (ATMSAR) module.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047196 FRAME: 0097. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048555/0510 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047196/0097 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
CHANGE OF NAME Recorded Jun 6, 2014
From: LSI LOGIC CORPORATION
To: LSI CORPORATION
Reel/Frame 033102/0270 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2001
From: VOGEL, DANNY C.
To: LSI LOGIC CORPORATION
Reel/Frame 012044/0261 →