← Back to Patent Explorer
US5917828A Expired / Lapsed US ⏱️ 0.0 years remaining

ATM reassembly controller and method

Assignee: Teradata US Inc
•
Filing: 1997-01-03
•
Granted: 1999-06-29
•
Expires: 2017-01-03
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An ATM reassembly controller is disclosed that optimizes the utilization of host memory space and hardware resources such as I/O bus bandwidth, host memory bandwidth, memory system bandwidth and CPU resources. The system combines, whenever possible, the PDU status, PDU data and pointers to the host memory data buffers into a large burst write to the status queue. In addition, multiple status bundles are packed into a host memory buffer for efficient use of memory. An additional benefit of combining and packing information is that CPU resources are conserved by having combined the information the CPU must access into to a contiguous memory area.

Inventors

  • 👤 Derek Andrew Thompson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 15:38
CPC Classifications
H; H04; H04Q; H04Q11/00; H04Q11/04; H04Q11/0428; H04Q11/0478; H04L; H04L12/00; H04L12/54; H04L12/56; H04L12/5601; H04L2012/5614; H04L2012/5616; H04L2012/5638; H04L2012/5646; H04L2012/5652; H04L2012/5678; H04L2012/5681

Claims Analysis

Total Claims: 30
Claim 1
Independent Claim 173 words
An ATM reassembly controller for reassembling ATM cells into protocol data units for storage in main memory having main memory buffers and reassembly descriptor lists, comprising: an input port for receiving an ATM cell; a processor, operatively coupled to the input port, for identifying a virtual channel for the ATM cell, stripping a payload from the ATM cell associated with the identified virtual channel, and building a protocol data unit descriptor header for a reassembled protocol data unit constructed with the payload from the ATM cell; a local memory buffer, coupled to the processor, for storing the payload and protocol data unit descriptor header; a memory manager, operatively coupled to the processor, for assigning pointers to the local memory buffer and determining when the local memory buffer is full; and a memory access controller, operatively coupled to the local memory buffer, for writing the content of the local memory buffer in a single burst to host memory for accessing by an application in response to determining that the local memory buffer is full.
Claim 2
Dependent Claim 173 words
An ATM reassembly controller for reassembling ATM cells into protocol data units for storage in main memory having main memory buffers and reassembly descriptor lists, comprising: an input port for receiving an ATM cell; a processor, operatively coupled to the input port, for identifying a virtual channel for the ATM cell, stripping a payload from the ATM cell associated with the identified virtual channel, and building a protocol data unit descriptor header for a reassembled protocol data unit constructed with the payload from the ATM cell; a local memory buffer, coupled to the processor, for storing the payload and protocol data unit descriptor header; a memory manager, operatively coupled to the processor, for assigning pointers to the local memory buffer and determining when the local memory buffer is full; and a memory access controller, operatively coupled to the local memory buffer, for writing the content of the local memory buffer in a single burst to host memory for accessing by an application in response to determining that the local memory buffer is full.
Claim 3
Dependent Claim 21 words
The ATM reassembly controller of claim 1 further comprising a virtual channel indicator for indicating the state of the virtual channel.
Claim 4
Dependent Claim 79 words
The ATM reassembly controller of claim 1 further comprising: a pointer controller for placing a main memory buffer pointer at the tail of the reassembly descriptor list in main memory; a last cell indicator for indicating whether the cell is the last cell in the protocol data unit; and second writing means for writing a PDU descriptor header to the reassembly descriptor list in response to determining that the cell is the last cell in the protocol data unit.
Claim 5
Dependent Claim 26 words
The ATM reassembly controller of claim 1 wherein the virtual channel indicator further comprises an activity indicator for determining whether the controller is receiving or idle.
Claim 6
Dependent Claim 35 words
The ATM reassembly controller of claim 4 wherein the activity indicator further comprises a first identifier for identifying the received cell as a first cell in response to determining that the virtual channel is idle.
Claim 7
Dependent Claim 34 words
The ATM reassembly controller of claim 4 wherein the activity indicator further comprises a second indicator for identifying the received cell as a last cell in response to reading a bit in the cell.
Claim 8
Dependent Claim 27 words
The ATM reassembly controller of claim 1 further comprising a local memory buffer allocator for assigning a local memory buffer pointer for a new local memory buffer.
Claim 9
Dependent Claim 40 words
The ATM reassembly controller of claim 7 further comprising a reassembly connection table entry having a reassembly address field for placing of the pointer, the placing of the pointer changing the state of the virtual channel from idle to receiving.
Claim 10
Dependent Claim 31 words
The ATM reassembly controller of claim 1 wherein the memory access controller further comprises a capacity indicator for determining whether all of the payload will fit in the local memory buffer.
Claim 11
Dependent Claim 110 words
An ATM reassembly controller, comprising: an input port for receiving a cell; a register, operatively coupled to the input port, for determining a virtual channel associated with the received cell; a local memory buffer allocator, coupled to the register, for allocating a local memory buffer and for storing in the local memory buffer a payload stripped from the received cell; a main memory buffer allocator, operatively coupled to the local memory buffer allocator for allocating a main memory buffer; and a memory access controller, coupled to the local memory buffer, for writing the contents of the local memory buffer into the main memory buffer in a single burst write operation.
Claim 12
Dependent Claim 110 words
An ATM reassembly controller, comprising: an input port for receiving a cell; a register, operatively coupled to the input port, for determining a virtual channel associated with the received cell; a local memory buffer allocator, coupled to the register, for allocating a local memory buffer and for storing in the local memory buffer a payload stripped from the received cell; a main memory buffer allocator, operatively coupled to the local memory buffer allocator for allocating a main memory buffer; and a memory access controller, coupled to the local memory buffer, for writing the contents of the local memory buffer into the main memory buffer in a single burst write operation.
Claim 13
Dependent Claim 19 words
The ATM reassembly controller of claim 10 further comprising an indicator for indicating a state for the virtual channel.
Claim 14
Dependent Claim 69 words
The ATM reassembly controller of claim 10 further comprising: a reassembly descriptor list for storing a main memory buffer pointer; and a first identifier for identifying whether the cell is the last cell in a protocol data unit; wherein the memory access controller writes a PDU descriptor header to the reassembly descriptor list in response to determining that the cell is the last cell in a protocol data unit.
Claim 15
Dependent Claim 32 words
The ATM reassembly controller of claim 11 wherein the indicator for indicating the state of the virtual channel further comprises an activity indicator for determining whether the controller is receiving or idle.
Claim 16
Dependent Claim 38 words
The ATM reassembly controller of claim 13 wherein the activity indicator further comprises a second identifier for identifying the received cell as a first cell in response to determining that the state of the virtual channel is idle.
Claim 17
Dependent Claim 26 words
The ATM reassembly controller of claim 13 wherein the first identifier identifies the received cell as a last cell by reading a bit in the cell.
Claim 18
Dependent Claim 30 words
The ATM reassembly controller of claim 10 wherein the local memory buffer allocator further comprises a pointer register for assigning a local memory buffer pointer for the local memory buffer.
Claim 19
Dependent Claim 45 words
The ATM reassembly controller of claim 16 wherein the local memory buffer allocator further comprises a reassembly connection table entry having a reassembly address field for placing the pointer, the placing of the pointer changing the state of the virtual channel from idle to receiving.
Claim 20
Dependent Claim 31 words
The ATM reassembly controller of claim 10 wherein the memory access controller further comprises a capacity indicator for indicating whether all of the payload will fit in the local memory buffer.
Claim 21
Independent Claim 82 words
A method of reassembling ATM cells, comprising the steps of: receiving a cell; determining a virtual channel number associated with the received cell; determining the state of the virtual channel; allocating a local memory buffer for storing a payload stripped from the received cell associated with the virtual channel; storing the payload in a local memory buffer; allocating a main memory buffer; and writing the contents of the local memory buffer into the main memory buffer in a single burst write operation.
Claim 22
Independent Claim 82 words
A method of reassembling ATM cells, comprising the steps of: receiving a cell; determining a virtual channel number associated with the received cell; determining the state of the virtual channel; allocating a local memory buffer for storing a payload stripped from the received cell associated with the virtual channel; storing the payload in a local memory buffer; allocating a main memory buffer; and writing the contents of the local memory buffer into the main memory buffer in a single burst write operation.
Claim 23
Dependent Claim 64 words
The method of claim 19 further comprising the steps of: placing a main memory buffer pointer at the tail of a reassembly descriptor list; determining whether the cell is the last cell in a protocol data unit; and writing a PDU descriptor header to the reassembly descriptor list in response to determining that the cell is the last cell in a protocol data unit.
Claim 24
Dependent Claim 29 words
The method of claim 19 wherein the step of determining the state of the virtual channel further comprises the step of determining whether the controller is receiving or idle.
Claim 25
Dependent Claim 43 words
The method of claim 21 wherein the step of determining whether the controller is receiving or idle further comprises the step of identifying the received cell as a first cell in response to determining that the state of the virtual channel is idle.
Claim 26
Dependent Claim 39 words
The method of claim 21 wherein the step of determining whether the controller is receiving or idle further comprises the step of identifying the received cell as a last cell in response to reading a bit in the cell.
Claim 27
Dependent Claim 32 words
The ATM reassembly controller of claim 19 wherein the step of allocating a local memory buffer further comprises the step of assigning a local memory buffer pointer for the local memory buffer.
Claim 28
Dependent Claim 51 words
The method of claim 24 wherein the step of allocating a local memory buffer further comprises the step of placing the pointer into a local memory reassembly address field of a reassembly connection table entry, the placing of the pointer changing the state of the virtual channel from idle to receiving.
Claim 29
Dependent Claim 28 words
The method of claim 19 wherein the step of writing further comprises the step of determining whether all of the payload will fit in the local memory buffer.
Claim 30
Dependent Claim 33 words
The method of claim 26 wherein the step of determining whether all of the payload will fit in the local memory buffer occurs before the payload is stored in the local memory buffer.

References Cited (Backward Citations)

US5604743A Cited
US5633867A Cited
US5751698A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-06-28 2002-12-28 2003-06-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-06-28 2006-12-28 2007-06-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-06-28 2010-12-28 2011-06-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag