Claims
- 1. A system comprising:means for generating a data frame having data information, the data frame originating at a local processor; means for storing the data frame in a memory; means for providing the data frame to a processor interface having a segmentation engine and a direct memory access (DMA) engine; means for segmenting the data frame into a plurality of cells at the processor interface using the segmentation engine and the DMA engine; and means for injecting each of said cells into a cell input engine by transferring each of said cells to a number of memory locations by DMA transfer within a cell memory; and establishing a series of linked list pointers associated with said memory locations, wherein said series of linked list pointers includes a logical queue; wherein the number of memory locations is based on a length of the data frame.
- 2. A system as in claim 1 further comprising:means for transmitting said cells into a digital network in an order specified by said linked list pointers.
- 3. A computer readable medium containing executable instructions which, when executed in a processing system, cause the system to perform a method comprising:generating a data frame having data information, the data frame originating at a local processor; storing the data frame in a memory; providing the data frame to a processor interface having a segmentation engine and a direct memory access (DMA) engine; segmenting the data frame into a plurality of cells at the processor interface using the segmentation engine and the DMA engine; and injecting each of said cells into a cell input engine by transferring each of said cells to a number of memory locations by DMA transfer within a cell memory; and establishing a series of linked list pointers associated with said memory locations, wherein said series of linked list pointers includes a logical queue; wherein the number of memory locations is based on a length of the data frame.
- 4. A computer readable medium as in claim 3, wherein said method further comprises:transmitting said cells into a digital network in an order specified by said linked list pointers.
- 5. A method comprising:generating a data frame having data information, the data frame originating at a local processor; storing the data frame in a memory; providing the data frame to a processor interface having a segmentation engine and a direct memory access (DMA) engine; segmenting the data frame into a plurality of cells at the processor interface using the segmentation engine and the DMA engine; injecting each of said cells into a cell input engine by transferring each of said cells to a number of memory locations by DMA transfer within a cell memory; and establishing a series of linked list pointers associated with said memory locations, wherein said series of linked list pointers includes a logical queue; and transmitting said cells into a network in an order specified by said linked list pointers; wherein the number of memory locations is based on a length of the data frame.
- 6. A digital switch comprising:a queuing circuit having a number of connection queues and class of service queues and configured to store a plurality of ATM cells, said cells including payload information and header information within said connection queues and said class of service queues based upon said header information; and a segmentation and reassembly (SAR) engine coupled to said queuing circuit and configured to extract cells from said queuing circuit that are bound for a local processor of said switch so as to preserve said payload information and to create and inject cells formed from data frames originated by said local processor into said queuing circuit; wherein said segmentation and reassembly engine includes a direct memory access (DMA) engine having a DMA channel, and a segmentation engine to segment a frame into a plurality of cells by using the DMA channel of the DMA engine, wherein the SAR engine is configured to input cells into the queuing circuit by transferring each of said cells to a number of memory locations by DMA transfer within a cell memory, and establishing a series of linked list pointers associated with said memory locations, wherein said series of linked list pointers includes a logical queue, wherein said segmentation and reassembly engine is further configured to perform error detection operations for frames of data reconstructed from extracted cells using payload information therefrom.
- 7. The digital switching node according to claim 6, wherein said segmentation and reassembly engine is further configured to strip off said header information from said cells after extracting said cells.
RELATED APPLICATIONS
This is a continuation of U.S. patent application Ser. No. 08/884,705, entitled Method And Apparatus For Using ATM Queues For Segmentation And Reassembly Of Data Frames, filed Jun. 30, 1997, now U.S. Pat. No. 6,201,813.
This application is related to the following co-pending applications, each assigned to the Assignee of the present application:
application Ser. No.: 08/884,999, filed Jun. 30, 1997, entitled “Method and Apparatus for Maximizing Memory Throughput”, by Daniel E. Klausmeier and Kevin Wong.
application Ser. No.: 08/885,400, filed Jun. 30, 1997, entitled “Multi-Stage Queuing Discipline”, by Daniel E. Klausmeier, Kevin Wong, Quang Nguyen, Cherng-Ren Sue and David A. Hughes.
US Referenced Citations (46)
Non-Patent Literature Citations (2)
Entry |
Massoud R. Hashemi, Alberto Leon- Garcia, “A General Purpose Cell Sequencer/Scheduler For ATM Switches”, ©1997 IEEE, pp. 29-37, Department of Electrical and Computer Engineering, University of Toronto. |
H. Jonathan Chao and Donald E. Smith, “Design of Virtual Channel Queue In An ATM Broadband Terminal Adaptor”, ©1992 IEEE, INFOCOM '92, p. 294-302. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
08/884705 |
Jun 1997 |
US |
Child |
09/774335 |
|
US |