当发送或接受数据时(例如,一封电子信函或网页),消息分成若干个块,也就是我们所说的“包”。每个包既包含发送者的网络地址又包含接受者的地址。由于消息被划分为大量的包,若需要,每个包都可以通过不同的网络路径发送出去。包到达时的顺序不一定和发送顺序相同,IP 协议只用于发送包,而 TCP 协议负责将其按正确顺序排列。
除了地址解析协议(ARP)和逆地址解析协议(RARP),其它所有 TCP/IP族中的协议都是使用IP传送主机与主机间的通信。当前 IP 协议有两种版本:IPv4和IPv6。
图2.4 IP数据包结构
3 主要设计方案介绍
网络接口的设计一般需要根据对应的设备资源状况和使用场合来确定,现在完成以太网接口的设计主要有3种方案。
3.1 微CPU+简单操作系统
这种方案构建起来比较方便。因为采用的芯片相对比较少,只需将操作系统下载到CPU中运行即可。对于设计人员来说,工作量较少并且构建的网络接口的处理能力可以很强。而且操作系统一般都有相应的TCP/IP栈并且提供API接口,设计人员就不需要了解底层网络运作,而专注于应用中的网络实现即可。
其优点就是构建主要在于软件上工作,实现的相对简单,功能可以很完整。但因为现在简单操作系统价格不菲,因此除了大型企业或是对于一些复杂网络状况要采用这种设计方案,一般中小企业都无法承担。
图3.1 微CPU+简单操作系统
3.2微控制单元+协议控制芯片
这种方案的构建也较为简单。采用一片微控制单元(MCU)和一块协议控制芯片来组成。设计人员需要做的就是将MCU与协议控制芯片连接好并且编写一定的程序来实现MCU对于协议控制芯片控制。需要对协议控制芯片的上电、初始化、基本寄存器的设置和控制。在这里MCU主要作为协议控制芯片的主控和数据流传输的中间通道。
这种方案在硬件构架上也是比较简单。因为采用协议控制芯片,则有较为完整的TCP/IP可以应对较为复杂的网络情况。对于设计人员来说并不需要涉及TCP/IP协议的内部只需设计好MCU程序来完成控制协议控制芯片即可。当然因为协议控制芯片的价格很高,因此整个设计成本很高。
图3.2 微控制单元+协议控制芯片
3.3 微控制单元+网络芯片
微控制单元(MCU)加网络芯片这种方案,对于设计人员来说工程量就大了很多。首先,网络芯片是用来处理数据链路层的数据。从网络中获得数据并且进行数据链路层的各项校验和对比工作。然后将接收到的数据包送入MCU,并在MCU中进行数据包协议类型和各类错误的检查且最终取得有效数据。
这种方案设计人员需要详细了解各类协议的数据帧形式及报头情况,同时需要对网络底层运作十分清晰。同时由于采用MCU来执行协议处理,因此对于一些简单的MCU芯片只能处理简单的网络协议建立简单的TCP/IP栈,也就只能应付一些简单的网络情况。
这种方案整体的成本不高,采用的网络芯片现在已经应用很广泛。主要的难点在于程序员编制网络协议的复杂度以及MCU对于网络芯片的控制。这种方法比较适用于网络情况比较简单的环境。
图3.3 微控制单元+网络芯片
4 基于FPGA的以太网接口设计
根据本课题的设计要求,我们采用基于FPGA的设计方案,这种方案的构架与第三种方案类似,采用了一块FPGA和一块网络芯片LAN91C111来进行网络接口设计。FPGA完成对于LAN91C111的控制和部分TCP/IP协议实现,而LAN91C111完成网络的数据链路层功能。
- 上一篇:基于LabVIEW的波形发生器和网络监控软件设计
- 下一篇:基于FPGA的UART设计+文献综述
-
-
-
-
-
-
-
杂拟谷盗体内共生菌沃尔...
当代大学生慈善意识研究+文献综述
java+mysql车辆管理系统的设计+源代码
十二层带中心支撑钢结构...
乳业同业并购式全产业链...
中考体育项目与体育教学合理结合的研究
大众媒体对公共政策制定的影响
河岸冲刷和泥沙淤积的监测国内外研究现状
酸性水汽提装置总汽提塔设计+CAD图纸
电站锅炉暖风器设计任务书