IP Library Granted Patent US 7,782,863
Granted Patent B2
US 7,782,863 · App. 12/360,236 · Granted Aug 24, 2010

Method and apparatus for data transfer

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 7,782,863
App. No.
12/360,236
Granted
Aug 24, 2010
Kind
B2
Abstract

A method of transmitting data and a data management layer. The method includes: providing a cyclic redundancy check generator connected to a retry buffer through a multiplexer; providing a sequence number generator connected to the retry buffer through the multiplexer; generating a sequence number; generating a sequence number cyclic redundancy check remainder using preset inputs of a cyclic redundancy check remainder latch of the cyclic redundancy check generator; providing an input data bus connected directly to the cyclic redundancy check generator and connected to the retry buffer through the multiplexer; providing an output data bus directly connected to the retry buffer; receiving a data packet on the input data bus; adding the sequence number and the cyclic redundancy check remainder to the data packet to create a modified data packet; storing the modified data packet in the retry buffer; and transmitting the modified data packet using the output data bus.

Claims (57)

1. A method, comprising:

providing a data management layer comprising:

a cyclic redundancy check generator, an output of said cyclic redundancy check generator connected to a first input of a multiplexer, an output of said multiplexer connected to a retry buffer;

a sequence number generator connected to a second input of said multiplexer and connected to a first input of said cyclic redundancy check generator;

an input bus connected to a second input of said cyclic redundancy check generator and connected to a third input of said multiplexer; and

an output bus connected to an output of said retry buffer;

receiving a data packet on said input bus;

generating a sequence number and a sequence number cyclic redundancy check remainder based on said sequence number using said sequence number generator;

generating a cyclic redundancy check remainder based on said data packet using preset inputs of a cyclic redundancy check remainder latch of said cyclic redundancy check generator;

adding said sequence number and said cyclic redundancy check remainder to said data packet using said multiplexer to create a modified data packet;

storing said modified data packet in said retry buffer; and

transmitting said modified data packet using said output bus.

2. The method of claim 1 , further including:

initializing said cyclic redundancy check generator with said sequence number cyclic redundancy check remainder.

3. The method of claim 1 , wherein said input bus is connected to a transaction layer of a layered protocol system and said output bus is directly connected to a physical layer of said layered protocol system.

4. The method of claim 3 , wherein said output bus provides an only path for transmitting modified data packets to said physical layer.

5. The method of claim 1 , wherein said retry buffer is an addressable memory cell array.

6. The method of claim 1 , further including:

generating said sequence number cyclic redundancy check remainder using a sequence cyclic redundancy check remainder circuit in said sequence number generator.

7. The method of claim 1 , further including:

generating said sequence number cyclic redundancy check remainder by using a software algorithm executable by a computer.

8. A data management layer, comprising:

a cyclic redundancy check generator, an output of said cyclic redundancy check generator connected to a first input of a multiplexer, an output of said multiplexer connected to a retry buffer;

a sequence number generator connected to a second input of said multiplexer and connected to a first input of said cyclic redundancy check generator;

an input bus connected directly to a second input of said cyclic redundancy check generator and connected to a third input of said multiplexer; and

an output bus connected to an output of said retry buffer.

9. The data management layer of claim 8 , wherein said input bus is connected to a transaction layer of a layered protocol system and said output bus is connected to a physical layer of said layered protocol system.

10. The data management layer of claim 9 , wherein said output bus is an only means for transmitting a data packet from said data management layer to said physical layer.

11. The data management layer of claim 8 , wherein said retry buffer is an addressable memory cell array.

12. The data management layer of claim 8 , wherein said sequence number generator includes a circuit for generating a sequence number cyclic redundancy check remainder.

13. The data management layer of claim 8 , wherein said sequence number generator includes means for accessing a computer algorithm for calculating said sequence number cyclic redundancy check remainder.

14. The method of claim 1 , further including:

said first input of said cyclic redundancy generator is configured to receive said sequence number redundancy check remainder from said sequence number generator;

said second input of said cyclic redundancy generator is configured to receive a data packet;

generating said cyclic redundancy check remainder using said sequence number cyclic redundancy check remainder and said data packet in response to a first control signal from a controller; and

generating said cyclic redundancy check remainder using a current redundancy check remainder latched in said cyclic redundancy check generator and said data packet in response to a second control signal from said controller.

15. The method of claim 1 , further including:

said first input of said multiplexer is configured to receive said cyclic redundancy check remainder from said cyclic redundancy check remainder generator, said second input of said multiplexer is configured to receive said sequence number from said sequence number generator and said third input of said multiplexer is configured to receive said data packet;

sending only said sequence number to said retry buffer in response to a first control signal from a controller;

sending only said data packet to said retry buffer in response to a second control signal from said controller; and

sending only said cyclic redundancy check remainder to said retry buffer in response to a third control signal from said controller.

16. The method of claim 1 , wherein said data packet includes only an address field, a length field and a data field.

17. The data management layer of claim 8 , wherein:

said first input of said cyclic redundancy generator is configured to receive said sequence number cyclic redundancy check remainder from said sequence number generator;

said second input of said cyclic redundancy generator is configured to receive a data packet;

said cyclic redundancy check generator is configured to generate said cyclic redundancy check remainder using said sequence number cyclic redundancy check remainder and said data packet in response to a first control signal from a controller; and

said cyclic redundancy check generator is configured to generate said cyclic redundancy check remainder using said data packet and a current redundancy check remainder latched in said cyclic redundancy check generator in response to a second control signal from said controller.

18. The data management layer of claim 8 , wherein:

said first input of said multiplexer is configured to receive said cyclic redundancy check remainder from said cyclic redundancy check remainder generator;

said second input of said multiplexer is configured to receive said sequence number from said sequence number generator and said third input of said multiplexer is configured to receive said data packet;

said multiplexer is configured to send only said sequence number to said retry buffer in response to a first control signal from a controller;

said multiplexer is configured to send only said data packet to said retry buffer in response to a second control signal from said controller; and

said multiplexer is configured to send only said data packet and said cyclic redundancy check remainder to said retry buffer in response to a third control signal from said controller.

19. The data management layer of claim 8 , further including:

a control unit, said control unit connected to a control input of said cyclic redundancy check generator, a control input of said multiplexer, and a control input of said sequence number generator.

20. The data management layer of claim 19 , further including:

an input of said controller connected to a transaction layer of a layered protocol system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2015
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LINKEDIN CORPORATION
Reel/Frame 035201/0479 →