手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络知识>网络协议>列表

HDLC的帧结构和CRC校验

来源:互联网 作者:west263.com 时间:2008-02-22
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

HDLC规程主要由帧结构、规程要素、规程类别三个部分组成[1]。为了使FPGA的设计能够实现HDLC的基本功能并能按照各项标准的规定灵活采用不同的CRC校验算法,首先回顾一下HDLC基本的帧结构形式。
HDLC是面向比特的链路控制规程,其链路监控功能通过一定的比特组合所表示的命令和响应来实现,这些监控比特和信息比特一起以帧的形式传送。

以下是ISO/IEC 3309标准规定的HDLC的基本帧结构。

起始标志 地址数据 控制数据 信息数据 帧校验序列 结束标志
01111110 8bits 8bits 8bits 16或32bits 01111110

其它的HDLC标准也有类似的帧结构。每帧的起始和结束以"7E"(01111110)做标志,两个"7E"之间为数据段(含地址数据、控制数据、信息数据)和帧校验序列。帧校验采用CRC算法,对除了插入的"零"以外的所有数据进行校验。为了避免将数据中的"7E"误为标志,在发送端和接收端要相应地对数据流和帧校验序列进行"插零"及"删零"操作。

各种HDLC间的区别之一是帧校验序列的CRC算法不同,这种不同表现在几个方面:
a. 帧校验序列的位数不同,如16位和32位等。
b. CRC生成多项式不同,如对于16位的CRC,CCITT V.41标准的多项式是x16 x12 x5 1,ANSI CRC-16标准的多项式是x16 x15 x2 1等。
c. CRC序列的初始化条件不同,如可以初始化为全"0"、全"1"等。
d. CRC计算结果的处理方式不同,如可以直接把CRC结果发送,或对CRC结果取反后再发送等。
e. 对接收到的数据做CRC校验时,合格判据不同。因为有了上述的不同处理,自然会得到不同的结果,由此造成合格判据不同。例如有的标准以校验结果"1D0F"判为无错误[2]。而有的ASIC芯片以校验结果"F0B8"判为无错误[3]。
显然,对于这些应用,可编程逻辑芯片正可以发挥自己的特长。

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!