基于FPGA的工业以太网控制器IP核研究与设计
发布时间:2021-03-27 00:22
随着科学技术的不断发展,以太网技术已经深入到我们日常生活中的方方面面,同时,从以太网技术延伸出的工业以太网技术在工业自动化系统中扮演着至关重要的角色。工业以太网通信环境具有较大的不确定性,需要针对现场实际使用改变硬件或软件的设计。而FPGA具有可灵活配置的特点,使用FPGA设计工业以太网控制器正好符合了工业以太网对系统灵活性的需求。根据采用FPGA开发具有高灵活性与高拓展性的工业以太网控制器的需求以及Zynq良好的发展前景,本论文基于Xilinx公司Zynq-7000系列FPGA平台,对工业以太网控制器的工作原理以及各功能模块进行分析,采用了软硬件结合设计的方式,提出一套基于FPGA的工业以太网控制器IP核系统设计方案,能够实现数据发送与接收的功能。论文首先简述了TCP/IP协议族相关的基础理论,包括TCP/IP协议族的分层、CSMA/CD协议,分析了工业以太网控制器的工作原理,其中对数据发送与接收的流程进行了详细的论述。其次,基于CSMA/CD协议改进了工业以太网的传输实时性。通过对非坚持CSMA/CD中时隙的再分割,提出一种基于工业以太网的时隙非坚持CSMA/CD算法,并在MATL...
【文章来源】:长春工业大学吉林省
【文章页数】:78 页
【学位级别】:硕士
【部分图文】:
以太网帧结构
第2章工业以太网控制器工作原理分析11图2.2数据接收流程图(1)检查接收到的数据帧长度是否在合理的范围之内,如果是信道冲突导致的碎片,则丢弃。正常情况下一帧的长度在64字节到1518字节之间。(2)确认帧长度有效之后,检验帧的目的地址。如果目的地址是本机MAC地址、广播地址或被认可的组播地址,则将数据帧留下,准备进行下一步处理。如果地址不匹配则丢弃。(3)对接收到的数据帧进行CRC校验来验证完整性。CRC校验又称为循环冗余校验,它将多项式L代表即将传输的数据M(x),从而得到L除以确定的多项式G(x)的余式,即为所需的循环冗余校验码。(4)如果通过了所有验证,则将帧交给上一层处理。2.2.2流量控制工业以太网控制器传输数据时,如果通过某个端口的流量超过了它的数据处理能力时,会发生端口阻塞,此时就需要引入流量控制功能来防止丢郑流量控制可以通过控制数据帧的优先顺序有效地减小由于网络中大量数据相近或相同时间到来产生
第2章工业以太网控制器工作原理分析12的冲击,从而使得用户网络依然能够高效而稳定的运行。在半双工工作模式下,目前有两种方法来进行流量控制。第一种基于CSMA/CD协议,让接收缓冲区与将要到达的帧发生冲突,这种方法虽然可行,但是存在不利因素[35]。由于CSMA/CD协议设置了最高重传次数(一般设置为16次),如果输入缓冲区持续拥塞,当冲突次数超过16次之后,节点将丢弃该帧,失去了引入流量控制的意义。因此一般采用第二种方法,当端口拥塞时延时传输,将该帧保留在队首,让载波侦听做出“信道忙”的判断,且不管时间有多长都不会丢弃该帧,这种方法称为伪载波技术。在全双工工作模式下,接收缓冲区首先接收到数据帧并将其存储,当该缓冲区中存储的数据帧即将超出其最大存储至时,上层协议将拒绝接收新发送的数据帧并向MAC层发送流量控制请求。MAC层收到流量控制请求后,向数据发送站点发出一个暂停控制郑在这个暂停控制帧中规定了暂停发送的时间,数据发送站点在这段时间内不得发送新的数据郑与普通以太网数据帧格式不同的是,暂停控制帧不包括前导码和帧起始符,长度为以太网帧格式的最小长度,即为64字节。暂停控制帧的格式如图2.3所示。图2.3暂停控制帧格式其中目的地址可以是物理地址也能是组播地址,其为暂停控制帧要到达的地址;源地址则为发送暂停控制帧站点的地址;长度/类型是0x8808,为暂停控制帧的保留值;控制操作码则是0x0001,为暂停控制帧的操作代码;控制参数是填充字节或暂停时间控制参数,其中的暂停时间是2个字节无符号数,该时间参数乘以传送512比特所需时间即为请求暂停的时间。该字段中需要用0填充未使用的字节以满足最小帧长的要求;帧校验序列则是用于判断CRC校验接收到的帧是否正确。
本文编号:3102514
【文章来源】:长春工业大学吉林省
【文章页数】:78 页
【学位级别】:硕士
【部分图文】:
以太网帧结构
第2章工业以太网控制器工作原理分析11图2.2数据接收流程图(1)检查接收到的数据帧长度是否在合理的范围之内,如果是信道冲突导致的碎片,则丢弃。正常情况下一帧的长度在64字节到1518字节之间。(2)确认帧长度有效之后,检验帧的目的地址。如果目的地址是本机MAC地址、广播地址或被认可的组播地址,则将数据帧留下,准备进行下一步处理。如果地址不匹配则丢弃。(3)对接收到的数据帧进行CRC校验来验证完整性。CRC校验又称为循环冗余校验,它将多项式L代表即将传输的数据M(x),从而得到L除以确定的多项式G(x)的余式,即为所需的循环冗余校验码。(4)如果通过了所有验证,则将帧交给上一层处理。2.2.2流量控制工业以太网控制器传输数据时,如果通过某个端口的流量超过了它的数据处理能力时,会发生端口阻塞,此时就需要引入流量控制功能来防止丢郑流量控制可以通过控制数据帧的优先顺序有效地减小由于网络中大量数据相近或相同时间到来产生
第2章工业以太网控制器工作原理分析12的冲击,从而使得用户网络依然能够高效而稳定的运行。在半双工工作模式下,目前有两种方法来进行流量控制。第一种基于CSMA/CD协议,让接收缓冲区与将要到达的帧发生冲突,这种方法虽然可行,但是存在不利因素[35]。由于CSMA/CD协议设置了最高重传次数(一般设置为16次),如果输入缓冲区持续拥塞,当冲突次数超过16次之后,节点将丢弃该帧,失去了引入流量控制的意义。因此一般采用第二种方法,当端口拥塞时延时传输,将该帧保留在队首,让载波侦听做出“信道忙”的判断,且不管时间有多长都不会丢弃该帧,这种方法称为伪载波技术。在全双工工作模式下,接收缓冲区首先接收到数据帧并将其存储,当该缓冲区中存储的数据帧即将超出其最大存储至时,上层协议将拒绝接收新发送的数据帧并向MAC层发送流量控制请求。MAC层收到流量控制请求后,向数据发送站点发出一个暂停控制郑在这个暂停控制帧中规定了暂停发送的时间,数据发送站点在这段时间内不得发送新的数据郑与普通以太网数据帧格式不同的是,暂停控制帧不包括前导码和帧起始符,长度为以太网帧格式的最小长度,即为64字节。暂停控制帧的格式如图2.3所示。图2.3暂停控制帧格式其中目的地址可以是物理地址也能是组播地址,其为暂停控制帧要到达的地址;源地址则为发送暂停控制帧站点的地址;长度/类型是0x8808,为暂停控制帧的保留值;控制操作码则是0x0001,为暂停控制帧的操作代码;控制参数是填充字节或暂停时间控制参数,其中的暂停时间是2个字节无符号数,该时间参数乘以传送512比特所需时间即为请求暂停的时间。该字段中需要用0填充未使用的字节以满足最小帧长的要求;帧校验序列则是用于判断CRC校验接收到的帧是否正确。
本文编号:3102514
本文链接:https://www.wllwen.com/shoufeilunwen/xixikjs/3102514.html