![](http://datasheet.mmic.net.cn/330000/PM7367-PI_datasheet_16444408/PM7367-PI_44.png)
DATA SHEET
PM7367 FREEDM-32P32
ISSUE 2
PMC-1991499
FRAME ENGINE AND DATA LINK MANAGER
PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMER’S INTERNAL USE
30
8
FUNCTIONAL DESCRIPTION
8.1 High-Level Data Link Control Protocol
Figure 1 shows a diagram of the synchronous HDLC protocol supported by the
FREEDM-32P32. The incoming stream is examined for flag bytes (01111110 bit
pattern) which delineate the opening and closing of the HDLC packet. The
packet is bit de-stuffed which discards a "0" bit which directly follows five
contiguous "1" bits. The resulting HDLC packet size must be a multiple of an
octet (8 bits) and within the expected minimum and maximum packet length
limits. The minimum packet length is that of a packet containing two information
bytes (address and control) and FCS bytes. For packets with CRC-CCITT as
FCS, the minimum packet length is four bytes while those with CRC-32 as FCS,
the minimum length is six bytes. An HDLC packet is aborted when seven
contiguous "1" bits (with no inserted "0" bits) are received.
At least one flag byte
must exist between HDLC packets for delineation. Contiguous flag bytes, or all
ones bytes between packets are used as an "inter-frame time fill". Adjacent flag
bytes may share zeros.
Figure 1 – HDLC Frame
Flag
Information
FCS
Flag
HDLC Packet
Flag
The CRC algorithm for the frame checking sequence (FCS) field is either a
CRC-CCITT or CRC-32 function. Figure 2 shows a CRC encoder block diagram
using the generating polynomial g(X) = 1 + g
1
X + g
2
X
2
+…+ g
n-1
X
n-1
+ X
n
. The
CRC-CCITT FCS is two bytes in size and has a generating polynomial g(X) = 1 +
X
5
+ X
12
+ X
16
. The CRC-32 FCS is four bytes in size and has a generating
polynomial g(X) = 1 + X + X
2
+ X
4
+ X
5
+ X
7
+ X
8
+ X
10
+ X
11
+ X
12
+ X
16
+ X
22
+ X
23
+ X
26
+ X
32
. The first FCS bit received is the residue of the highest term.