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

Method and apparatus for generating error detection data for encapsulated frames

Assignee: Cisco Technology Inc
•
Filing: 1998-12-14
•
Granted: 2001-05-01
•
Expires: 2018-12-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An error detection generator calculates error detection data for insertion into encapsulated frames. The error detection generator is configured to calculate multiple error detection values and insert them into corresponding fields of the encapsulated frames. The error detection generator includes a controller, three cyclic redundancy check (CRC) engines and at least one multiplexer. Each CRC engine is selectively enabled by the controller to calculate a frame check sequence (FCS) value on a different portion of the frame. Downstream CRC engines also receive the outputs from the upstream CRC engines so that these earlier FCS values may be used during subsequent calculations. The outputs of the CRC engines are also inserted into the appropriate fields of the encapsulated frames by the multiplexer.

Inventors

  • 👤 Stephen C. Hilla
  • 👤 James M. Edwards
  • 👤 Timothy F. Masterson
  • 👤 William E. Jennings

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 11:12
CPC Classifications
H; H04; H04L; H04L1/00; H04L1/004; H04L1/0056; H04L1/0061; H03; H03M; H03M13/00; H03M13/03; H03M13/05; H03M13/09; H04L1/0041

Claims Analysis

Total Claims: 19
Claim 1
Independent Claim 143 words
An error detection generator for calculating two or more error detection values or insertion into an encapsulated frame having a plurality of fields, the error detection generator comprising: a first, a second and a third cyclic redundancy check (CRC) engine each configured to receive the encapsulated frame and having means for calculating an error detection value; an output multiplexer configured to receive the encapsulated frame and coupled to each of the CRC engines for inserting the calculated error detection values into respective fields of the encapsulated frame; and a controller operably coupled to the CRC engines and the output multiplexer, the controller selectively enabling and disabling the CRC engines to calculate corresponding error detection values based on different fields of the encapsulated frame and setting the output multiplexer to insert the calculated error detection values into the respective fields of the encapsulated frame.
Claim 2
Dependent Claim 143 words
An error detection generator for calculating two or more error detection values or insertion into an encapsulated frame having a plurality of fields, the error detection generator comprising: a first, a second and a third cyclic redundancy check (CRC) engine each configured to receive the encapsulated frame and having means for calculating an error detection value; an output multiplexer configured to receive the encapsulated frame and coupled to each of the CRC engines for inserting the calculated error detection values into respective fields of the encapsulated frame; and a controller operably coupled to the CRC engines and the output multiplexer, the controller selectively enabling and disabling the CRC engines to calculate corresponding error detection values based on different fields of the encapsulated frame and setting the output multiplexer to insert the calculated error detection values into the respective fields of the encapsulated frame.
Claim 3
Dependent Claim 64 words
The error detection generator of claim 1 wherein the CRC engines are arranged in a first, second and third streamwise fashion so that a first error detection value calculated by the first CRC engine is selectively available to the second and third CRC engines and a second error detection value calculated by the second CRC engine is selectively available to the third CRC engine.
Claim 4
Dependent Claim 50 words
The error detection generator of claim 2 wherein the controller selectively provides the second CRC engine with either the encapsulated frame or the first error detection value and selectively provides the third CRC engine with either the encapsulated frame, the first error detection value or the second error detection value.
Claim 5
Dependent Claim 91 words
The error detection generator of claim 3 further comprising: a first CRC multiplexer associated with the second CRC engine; and a second CRC multiplexer associated with the third CRC engine, wherein the controller is configured to set the first CRC multiplexer so as to provide the second CRC engine with either the encapsulated frame or the first error detection value and to set the second CRC multiplexer so as to provide the third CRC engine with either the encapsulated frame, the first error detection value or the second error detection value.
Claim 6
Dependent Claim 39 words
The error detection generator of claim 4 wherein the controller is configured to examine the contents of a given field of the encapsulated frame to determine whether error detection values are to be inserted into the respective encapsulated frame.
Claim 7
Dependent Claim 41 words
The error detection generator of claim 5 wherein the controller is further configured to determine the number of error detection values to be inserted in an encapsulated frame based on the contents of the given field of the respective encapsulated frame.
Claim 8
Dependent Claim 63 words
The error detection generator of claim 6 further comprising first and second flip circuits associated with the first CRC engine, the first flip circuit selectively transposing the bit ordering of a portion of the encapsulated frame received at the first CRC engine and the second flip circuit selectively transposing the bit ordering of the error detection value calculated by the first CRC engine.
Claim 9
Dependent Claim 28 words
The error detection generator of claim 7 wherein the controller activates and de-activates the two flip circuits in response to one or more fields of the encapsulated frame.
Claim 10
Dependent Claim 31 words
The error detection generator of claim 8 wherein the encapsulated frame includes an Ethernet frame and the error detection generator calculates and inserts two error detection values in the encapsulated frame.
Claim 11
Dependent Claim 32 words
The error detection generator of claim 8 wherein the encapsulated frame includes a Token Ring frame and the error detection generator calculates and inserts three error detection values in the encapsulated frame.
Claim 12
Dependent Claim 162 words
A network switch comprising: Interswitch Link (ISL) circuitry for encapsulating one or more local area network (LAN) frames having a plurality of fields within at least one ISL header; and an error detection generator for calculating two or more error detection values for insertion into the ISL-encapsulated frames, the error detection generator comprising: three cyclic redundancy check (CRC) engines each configured to receive the ISL-encapsulated frame and having means for calculating an error detection value; an output multiplexer configured to receive the ISL-encapsulated frame and coupled to each of the CRC engines for inserting the calculated error detection values into respective fields of the encapsulated frames; and a controller operably coupled to the CRC engines and the output multiplexer, the controller selectively enabling and disabling the CRC engines to calculate corresponding error detection values based on different fields of the ISL-encapsulated frames and setting the output multiplexer to insert the calculated error detection values into the respective fields of the ISL-encapsulated frames.
Claim 13
Dependent Claim 162 words
A network switch comprising: Interswitch Link (ISL) circuitry for encapsulating one or more local area network (LAN) frames having a plurality of fields within at least one ISL header; and an error detection generator for calculating two or more error detection values for insertion into the ISL-encapsulated frames, the error detection generator comprising: three cyclic redundancy check (CRC) engines each configured to receive the ISL-encapsulated frame and having means for calculating an error detection value; an output multiplexer configured to receive the ISL-encapsulated frame and coupled to each of the CRC engines for inserting the calculated error detection values into respective fields of the encapsulated frames; and a controller operably coupled to the CRC engines and the output multiplexer, the controller selectively enabling and disabling the CRC engines to calculate corresponding error detection values based on different fields of the ISL-encapsulated frames and setting the output multiplexer to insert the calculated error detection values into the respective fields of the ISL-encapsulated frames.
Claim 14
Independent Claim 129 words
A method for calculating and inserting error detection values into encapsulated frames, the method comprising the steps of: determining the number of error detection values to be calculated for a given encapsulated frame; selectively enabling a first cyclic redundancy check (CRC) engine, in response to the step of determining, to calculate a first error detection value based on the given encapsulated frame; enabling a second CRC engine to calculate a second error detection value based on a first portion of the given encapsulated frame; enabling a third CRC engine to calculate a third error detection value based on a second portion of the given encapsulated frame; and inserting the error detection values calculated by the first, second and third CRC engines into pre-defined fields of the given encapsulated frame.
Claim 15
Independent Claim 129 words
A method for calculating and inserting error detection values into encapsulated frames, the method comprising the steps of: determining the number of error detection values to be calculated for a given encapsulated frame; selectively enabling a first cyclic redundancy check (CRC) engine, in response to the step of determining, to calculate a first error detection value based on the given encapsulated frame; enabling a second CRC engine to calculate a second error detection value based on a first portion of the given encapsulated frame; enabling a third CRC engine to calculate a third error detection value based on a second portion of the given encapsulated frame; and inserting the error detection values calculated by the first, second and third CRC engines into pre-defined fields of the given encapsulated frame.
Claim 16
Dependent Claim 61 words
The method of claim 12 further comprising the steps of: providing the error detection value calculated by the first CRC engine to the second and third CRC engines for use in their respective error detection calculations; and providing the error detection value calculated by the second CRC engine to the third CRC engine for use in its respective error detection calculation.
Claim 17
Dependent Claim 31 words
The method of claim 12 wherein, in response to determining that two error detection values are to be calculated for the given encapsulated frame, the first CRC engine is not enabled.
Claim 18
Dependent Claim 212 words
An error detection generator for calculating two or more error detection values for insertion into an encapsulated frame having a plurality of fields, the error detection generator comprising: a plurality of cyclic redundancy check (CRC) engines each configured to receive the encapsulated frame and having means for calculating an error detection value; an output multiplexer configured to receive the encapsulated frame and coupled to each of the CRC engines for inserting the calculated error detection values into respective fields of the encapsulated frame; first and second flip circuits associated with a first CRC engine, the first flip circuit selectively transposing the bit ordering of a portion of the encapsulated frame received at the first CRC engine and the second flip circuit selectively transposing the bit ordering of the error detection value calculated by the first CRC engine; and a controller operably coupled to the CRC engines, the output multiplexer and the two flip circuits, the controller selectively enabling and disabling the CRC engines to calculate corresponding error detection values based on different fields of the encapsulated frame, activating the two flip circuits, in response to the bit ordering of the encapsulated frame, and setting the output multiplexer to insert the calculated error detection values into the respective fields of the encapsulated frame.
Claim 19
Dependent Claim 212 words
An error detection generator for calculating two or more error detection values for insertion into an encapsulated frame having a plurality of fields, the error detection generator comprising: a plurality of cyclic redundancy check (CRC) engines each configured to receive the encapsulated frame and having means for calculating an error detection value; an output multiplexer configured to receive the encapsulated frame and coupled to each of the CRC engines for inserting the calculated error detection values into respective fields of the encapsulated frame; first and second flip circuits associated with a first CRC engine, the first flip circuit selectively transposing the bit ordering of a portion of the encapsulated frame received at the first CRC engine and the second flip circuit selectively transposing the bit ordering of the error detection value calculated by the first CRC engine; and a controller operably coupled to the CRC engines, the output multiplexer and the two flip circuits, the controller selectively enabling and disabling the CRC engines to calculate corresponding error detection values based on different fields of the encapsulated frame, activating the two flip circuits, in response to the bit ordering of the encapsulated frame, and setting the output multiplexer to insert the calculated error detection values into the respective fields of the encapsulated frame.

References Cited (Backward Citations)

USRE33900E Cited
US5072449A Cited
US5128945A Cited
US5285456A Cited
US6098188A Cited
US5742604A Cited
US5935268A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-04-30 2004-10-30 2005-05-01 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-04-30 2008-10-30 2009-05-01 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-04-30 2012-10-30 2013-05-01 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag