HDLC协议控制器的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
内容摘要 (1)
关键词 (1)
Abstract (1)
Key Words (1)
1.绪论 (2)
1.1研究的意义 (2)
1.2本设计的主要功能 (2)
2.HDLC协议综述 (3)
2.1 HDLC协议的产生背景 (3)
2.2 HDLC协议的帧结构 (4)
2.3 HDLC协议的规程分析 (7)
3.HDLC协议控制器的设计 (8)
3.1 HDLC协议控制器设计方案选择 (8)
3.2 FPGA的设计原则 (9)
3.3 HDLC协议控制器总框架 (10)
3.4 HDLC帧发送器的设计 (11)
3.5 HDLC帧接收器的设计 (15)
参考文献 (18)
致谢 (19)
[说明:在本页中,“目录”二字居中,宋体小二号,加黑,
其它统一由宋体小四号,不加黑排版打印、行间距为1.5]
内容摘要:HDLC(高级数据链路控制)协议是一种面向比特的链路控制规程,广泛的用作数据链路层的控制协议。论文在分析和研究HDLC协议的基础上,提出了一种基于FPGA(现场可编程门阵列)的HDLC协议控制器的设计。对HDLC协议控制器的功能进行划分,分别设计了标志位的检测和生成、插零和删零、FCS的校验等控制模块。
采用VHDL硬件描述语言在FPGA内部实现HDLC协议的各功能模块,本设计使用Quartus II 9.1平台实现代码编写、综合、编译、仿真。对HDLC链路控制规程功能,帧控制和FCS校验功能进行了仿真实现。
关键词:HDLC;FPGA;帧收发器;
Abstract:(宋体,小四号,加黑)××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××。(宋体,小四号,不加黑)
Key words:(宋体,小四号,加黑)×××□□×××□□×××□□(宋体,小四号,不加黑)
1 绪论
1.1 研究的意义
HDLC是一个在同步网上传输数据、面向位的数据链路层协议,它是由国际标准化组织(ISO)制订的。该协议被广泛的用作数据链路层的控制协议,HDLC控制器在网络设备中得到大量的使用,如列车通信网络技术、综合业务数字网ISDN、X.25分组交换网以及帧中继网等。怎样在产品中设计与实现HDLC网络协议也是一个技术研究的热点。
HDLC的一般实现方法为采用 ASIC 器件和软件编程等。ASIC的芯片有Motorola 公司的MC92460,ST公司的MK5025等。应用这些 ASIC 器件时设计简单,功能针对性强,性能可靠,适用于特定用途的大批量产品中。但是这类ASIC芯片存在开发时间长,一旦芯片固有缺陷就不容易解决等问题,而且HDLC标准的文本较多,ASIC芯片出于专用性的目的难以通用于不同版本,缺乏灵活性。HDLC的软件编程方法灵活,通过修改程序就可适用于不同的HDLC应用,但程序运行占用处理器资源多,执行速度慢,实时性不易预测。
FPGA(Field Programmable Gate Array, 现场可编程门阵列)器件采用硬件处理信号,可以反复编程,能够兼顾速度和灵活性,并能多路并行处理。在中小批量通信产品的设计中,FPGA 是取代 ASIC 实现 HDLC 功能的一种合适选择。
1.2 本设计的主要功能
本文实现了一种采用FPGA的HDLC协议控制器的设计和功能仿真。首先综述了HDLC协议的产生背景和帧结构,提出了基于FPGA设计模式的控制器。以HDLC 协议帧的接收和发送为主体,在明确FPGA的设计原则的基础上,对帧收发器进行分功能模块设计,编写代码,时序分析。以发送器为例,其中包括了标志位的生成,插零,FCS校验等模块的设计。接收器跟发送器设计思想类似。在完成各个模块的设计后,使用了Quartus II 9.1自带仿真器对各个模块的功能一一进行了仿真,并对HDLC 协议及其规程进行了验证和分析。
2 HDLC协议综述
2.1 HDLC 协议的产生背景
计算机通信的早期,人们发现对于经常发生误码的实际链路,只要加上了合适的控制规程,就可以是通信变得比较可靠。这些规程都是数据链路层的协议,都是面向字符的。所谓面向字符,就是说在链路上所传送的数据都是由规定的字符集中的字符所组成的。而且,链路上传送的控制信息也必须由同一个字符集中的若干指定的控制字符构成。
面向字符的链路控制规程曾在计算机网络的发展过程中起了重要的作用,但
随着发展,这种规程就逐渐暴露出其弱点。其主要限制是:
1.通信线路的利用率低,因为它采用的是停止等待协议,收发双方交替地工作。2.所有通信设备必须使用同样字符的代码,而不同版本的规程要求使用不同的代码。
3.只对数据部分进行差错控制,若控制部分出错就无法控制,因而可靠性差。
4.不易扩展,每增加一种功能就需要设定一个新的控制字符。
1974 年,IBM 公司推出了著名的体系结构SNA。在SNA 的数据链路层规程上采用了面向比特的规程SDLC(Synchronous Data Link Control)。后来IBM 将此规程提交美国国家标准协会ANSI 和国际标准化组织ISO,建议成为国家和国际
标准。ANSI 把SDLC 修改为ADCCP(Advanced Data Communication Control Procedure)作为美国国家标准,而ISO 把SDLC 修改后称为HDLC(High-level Data Link Control),并作为国际标准ISO3309。
HDLC协议有两种链路配置和三种数据传送方式:
1.非平衡模式:
a.正常响应方式NRM(Nomal Response Mode)
b.异步响应方式ARM(Asynchronous Response Mode)
2.平衡模式:
c. 异步平衡方式ABM (Asynchronous Balanced Mode)