Decoding method and decoder for 64b/66b coded packetized serial data
First Claim
1. A method of decoding a frame of data, the frame being one of a set of frames that represent a packet of information words and that additionally represent coded control words preceding and following the packet, the frames each including a master transition and a payload field, the payload field being one of (a) composed exclusively of ones of the information words, and (b) including a TYPE word that identifies a structure of the payload field, the master transition being in a first state when the payload field is composed exclusively of ones of the information words, and otherwise being in a second state, the method comprising:
- determining when the master transition is in the first state;
when the master transition is in the first state, adopting the payload field as a block of received data; and
when the master transition is not in the first state;
extracting the TYPE word from the payload field, expanding the payload field in response to the TYPE word, and adopting the payload field after expansion as a block of received data.
3 Assignments
0 Petitions
Accused Products
Abstract
The frame of data that is decoded is one of a set of frames that represent a packet of information words, and that additionally represent coded control words preceding and following the packet. The frames each include a master transition and a payload field. The payload field either is composed exclusively of ones of the information words, or includes a TYPE word that defines the structure of the payload field. The master transition is in a first state when the payload field is composed exclusively of ones of the information words, and is otherwise in a second state. In the method, a determination is made of whether the master transition is in the first state. When the master transition is in the first state, the payload field is adopted as a block of received data. When the master transition is not in the first state, the TYPE word is extracted from the payload field, the payload field is expanded in response to the TYPE word, and the payload field, after expansion, is adopted as a block of received data.
-
Citations
18 Claims
-
1. A method of decoding a frame of data, the frame being one of a set of frames that represent a packet of information words and that additionally represent coded control words preceding and following the packet, the frames each including a master transition and a payload field, the payload field being one of (a) composed exclusively of ones of the information words, and (b) including a TYPE word that identifies a structure of the payload field, the master transition being in a first state when the payload field is composed exclusively of ones of the information words, and otherwise being in a second state, the method comprising:
-
determining when the master transition is in the first state;
when the master transition is in the first state, adopting the payload field as a block of received data; and
when the master transition is not in the first state;
extracting the TYPE word from the payload field, expanding the payload field in response to the TYPE word, and adopting the payload field after expansion as a block of received data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
the payload field includes at least one of the coded control words; and
expanding the payload field includes;
using the TYPE word to identify a portion of the payload field occupied by the at least one of the coded control words, and decoding the at least one coded control word in the portion of the payload field identified by the TYPE word.
-
-
3. The method of claim 2, in which:
-
the TYPE word defines a position in the payload field of one of (a) a start of the packet and (b) the end of the packet; and
expanding the payload field additionally includes inserting a respective one of (a) a start-of-packet control word and (b) an end-of-packet control word into the payload field at a position defined by the TYPE word.
-
-
4. The method of claim 1, in which:
-
the TYPE word identifies a position in the payload field of one of (a) a start of the packet and (b) the end of the packet; and
expanding the payload field includes inserting a respective one of (a) a start-of-packet control word and (b) an end-of-packet control word into the payload field at a position identified by the TYPE word.
-
-
5. The method of claim 1, in which:
-
the frame is one frame in a predetermined sequence of frames composed of, in order, a frame having a payload field that includes a start of the packet, frames having payload fields composed exclusively of ones of the information words, a frame having a payload field that includes an end of the packet and frames having payload fields frames composed exclusively of control words; and
the method additionally comprises;
examining the master transition and any TYPE word included in the payload field of the frame to detect when the frame does not conform with the predetermined sequence, and inserting an ERROR control word into the payload field when the frame does not conform with the predetermined sequence.
-
-
6. The method of claim 1, in which:
-
the payload field is scrambled; and
the method additionally comprises descrambling the payload field.
-
-
7. The method of claim 6 in which, in descrambling the payload field, the payload field is descrambled using a high-order polynomial.
-
8. The method of claim 1, in which:
-
the payload field includes at least one of the coded control words; and
expanding the payload field includes;
adopting the payload field as the block of received data;
in response to the TYPE word, generating a code word flag for each word of the block, the code word flag indicating when the word is a coded control word, and decoding each word of the block indicated by the code word flag to be a coded control word.
-
-
9. The method of claim 8, in which:
-
the TYPE word defines a position in the payload field of one of (a) a start of the packet and (b) the end of the packet; and
expanding the payload field additionally includes inserting a respective one of (a) a start-of-packet control word and (b) an end-of-packet control word into the payload field at a position defined by the TYPE word.
-
-
10. A decoder for decoding a frame of data, the frame being one of a set of frames that represent a packet of information words and that additionally represent coded control words preceding and following the packet, the frames each including a master transition and a payload field, the payload field being one of (a) composed exclusively of ones of the information words, and (b) including a TYPE word that identifies a structure of the payload field, the master transition being in a first state when the payload field is composed exclusively of ones of the information words, and otherwise being in a second state, the decoder comprising:
-
a frame decoder that receives the frame and separates the frame into the master transition and the payload field;
a type word extractor connected to receive the payload field and the master transition from the frame decoder and operating only when the master transition is in the second state to extract the TYPE word from the payload field; and
a block generator connected to receive the payload field, the TYPE word and the master transition, the block generator operating;
when the master transition is in the first state, to adopt the payload field as a block of received data, and when the master transition is in the second state, to expand the payload field in response to the TYPE word and to adopt the payload field after expansion as the block of received data. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
the payload field includes at least one of the coded control words; and
the block generator includes;
a TYPE word decoder that identifies a portion of the payload field occupied by the at least one of the coded control words, and a control word decoder that expands the payload field by decoding the at least one coded control word in the portion of the payload field identified by the TYPE word decoder.
-
-
12. The decoder of claim 11, in which:
-
the TYPE word defines a position in the payload field of one of (a) a start of the packet and (b) the end of the packet; and
the block generator additionally includes a control word insertion module that expands the payload field by inserting a respective one of (a) a start-of-packet control word and (b) an end-of-packet control word into the payload field at a position defined by the TYPE word.
-
-
13. The decoder of claim 10, in which:
-
the TYPE word defines a position in the payload field of one of (a) a start of the packet and (b) the end of the packet; and
the block generator includes a control word insertion module that expands the payload field by inserting a respective one of (a) a start-of-packet control word and (b) an end-of-packet control word into the payload field at a position defined by the TYPE word.
-
-
14. The decoder of claim 10, in which:
-
the frame is one frame in a predetermined sequence of frames composed of, in order, a frame having a payload field that includes a start of the packet, frames having payload fields composed exclusively of ones of the information words, a frame having a payload field that includes an end of the packet and frames having payload fields frames composed exclusively of control words;
the decoder additionally comprises a block sequence detector connected to receive the master transition from the frame decoder and the TYPE word from the type word extractor, the block sequence detector including a false frame detector that operates in response to the master transition and the TYPE word to generate an ERROR signal when the frame fails to conform with the predetermined sequence; and
the block generator is structured to insert an ERROR control word into the block in response to the ERROR signal.
-
-
15. The decoder of claim 10, in which:
-
the payload field includes at least one of the coded control words; and
the block generator includes;
a payload field decoder that adopts the payload field as the block, and operates in response to the TYPE word to generate a code word flag for each word of the block, the code word flag indicating when the word is a coded control word, and an STZ decoder that decodes each word of the block indicated by the code word flag to be a coded control word.
-
-
16. The decoder of claim 15, in which:
-
the TYPE word defines a position in the payload field of one of (a) a start of the packet and (b) the end of the packet; and
the block generator additionally includes a control word insertion module that inserts a respective one of (a) a start-of-packet control word and (b) an end-of-packet control word into the payload field at a position defined by the TYPE word.
-
-
17. The decoder of claim 10, in which:
-
the payload field is scrambled; and
the decoder additionally comprises a descrambler connected to receive the payload field from the frame decoder.
-
-
18. The decoder of claim 17, in which, the descrambler operates using a high-order polynomial.
Specification