Apparatus and method for packetizing and segmenting MPEG packets
First Claim
1. A method for optimizing efficiency in transferring a block of data stored in a memory element, the method comprising the steps of:
- accessing a plurality of overhead parameters from a data descriptor stored in the memory element, said data descriptor providing information about the block of data;
packetizing the block of data into a plurality of MPEG packets;
segmenting the plurality of MPEG packets to produce a plurality of cell packets, each of said plurality of cell packets contains in common at least one of said plurality of overhead parameters; and
loading a ring entry number identifying at least the data descriptor into an entry of a transmit completion ring of the memory element.
0 Assignments
0 Petitions
Accused Products
Abstract
A circuit and method for optimizing efficiency in transferring a block of data having a plurality of frames of limited size from a memory element. The circuit comprises a transmit ("TX") DMA engine and a TX Segmentation engine. The TX DMA engine is responsible for accessing overhead information for the block of data within a TX data buffer from a data descriptor dedicated to that particular TX data buffer. The TX DMA engine is further responsible for reading the block of data from the memory element to be stored local thereto. The TX Segmentation engine is responsible for segmenting the block of data into a plurality of cell packets corresponding in number to the plurality of frames. Each cell packet contains in common the overhead information for the block of data to avoid the TX DMA engine re-accessing the data descriptor to obtain the same overhead information for each frame being transferred.
-
Citations
20 Claims
-
1. A method for optimizing efficiency in transferring a block of data stored in a memory element, the method comprising the steps of:
-
accessing a plurality of overhead parameters from a data descriptor stored in the memory element, said data descriptor providing information about the block of data; packetizing the block of data into a plurality of MPEG packets; segmenting the plurality of MPEG packets to produce a plurality of cell packets, each of said plurality of cell packets contains in common at least one of said plurality of overhead parameters; and loading a ring entry number identifying at least the data descriptor into an entry of a transmit completion ring of the memory element. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A circuit for optimizing efficiency in transferring a block of data from a memory element to a transmit buffer memory, the circuit comprising:
-
a transmit DMA engine coupled to the transmit buffer memory, said transmit DMA engine accesses a plurality of overhead parameters from a data descriptor stored in the memory element, and packetizes the block of data into a plurality of packets, and sets header tag bits for each of the plurality of packets to provide information about its content; and a transmit segmentation engine coupled to the transmit buffer memory, the transmit segmentation engine segmenting the plurality of packets to accommodate variations in memory size of the transmit buffer memory. - View Dependent Claims (14, 15, 16)
-
-
17. A network interface circuit for enabling a host system including host memory to communicate with a remote system, the network interface circuit comprising:
-
a system bus interface coupled to the host system in order to access a block of data stored in the host memory; a transmit buffer memory coupled to the system bus interface; a system and ATM layer core configured to convert the block of data into a plurality of cell packets suitable for transmission to the remote system, the system and ATM layer core including a transmit DMA engine coupled to said transmit buffer memory, said transmit DMA engine being configured to access a plurality of overhead parameters from a data descriptor stored in the memory element, to packetize the block of data into a plurality of MPEG packets and to set at least one header tag bit for each word in the MPEG packet to indicate a location of the word in the plurality of MPEG frames, and a transmit segmentation engine coupled to said transmit buffer memory, said transmit segmentation engine being configured to segment the plurality of MPEG packets in order to produce the plurality of cell packets. - View Dependent Claims (18, 19)
-
-
20. A method for optimizing efficiency in transferring a block of data in a memory element, the method comprising the steps of:
-
accessing a plurality of overhead parameters from a data descriptor pointing to the block of data; packetizing the block of data into a plurality of packets; and segmenting the plurality of packets to produce a plurality of cell packets, each of the plurality of cell packets contains in common at least one of said plurality of overhead parameters; and loading a ring number identifying the data description into an entry of a transmit completion ring of the memory element upon completion of transmission of the plurality of cell packets.
-
Specification