最后更新:2022-03-31 10:06:24 手机定位技术交流文章
TCP/IP(《转让控制议定书》/《因特网议定书》)是一套与网络相连的计算机通信协议。
简要提到了OSI-7模式。
数据链层分为两个部分:逻辑链层(LLC)和媒体媒体进入层(MAC)。
在参考结构中,个人电脑网卡对MAC分层和物理层的完成负很大责任,但个人电脑软件系统拥有大量程序,可在专卖局长及以上级别达成所有网络级协议。
以太网指与IEE 802.3标准局域网(局域网)相一致,由IEE 802.3组成。 标准主要规定在参考模型物理层(PHY)和数据链层中设置中等出入控制次层(MACs)。
IEE和其他局域网标准,如IEE 802.11 Wi-Fi,经常被称为Wi-Fi。 IEE802.15是个人局域网,即蓝牙技术,使用标准为802.15.4。
802.3 所需经费用于传输媒介、传输速度、数据编码和冲突探测技术,用于泰网的物理层,而物理层通常通过PHY芯片发挥作用。
(1)传输介质
共轴电缆、双扼杀(晶头网是双扼杀)和光纤是转移介质的例子。
(2)编码
二进制编码不直接适用于信号传输,以便接收方能够发现每个人的起始、结束和中间位置,而不参考外部时钟。
10个BASE-T传输使用曼彻斯特代码,100个BASE-T传输使用4B/5B代码。
(3) 发现CSMA/CD冲突
由于大多数早期的以太网与同一个网络公交车(公交车型网络)相连,因此存在竞争过度的问题,因此,与以太有关的每个节点都需要一种冲突探测算法。
以太网具有探测CSMA/CD冲突的技术。当不止一个节点同时在同一班车上发送数据时,该班车就会拥挤。则会产生冲突,公共汽车上的节点可以通过比较收到的信号与最初发送的信号,发现冲突。如果有冲突, 停止传输数据 。等待随机时间再传送
(4) MEII/RMII接口
MII代表媒体独立接口,也称为媒体独立接口。这是工业标准IEE802.3 定义的以太网。连接以太网MAC层 与物理物理芯片,MII、RMII、SMII、GMII和RGMII是共同的接口。
RMII接口是MII接口的简化版本,需要16条通信线路,尽管RMII只需7条通信线路,但功能等同。
MII接口图
(1)MAC功能
数据链层的最低组成部分MAC子层主要负责数据与物理层的接口,例如,如果发送的数据有效,数据是否可以传输,控制数据流动等等。
当接收者获得定期数据时,它自动消除MAC控制信号,并将数据包传送到上层。
(2)MAC数据包
(1)IP包格式
在TCP/IP协议的数据链层上发现了MAC数据包。随着MAC数据集通过数据链层进入网络层,前缀、框架启动器、目的地MAC地址、MAC源地址、类型/长度和检查字节都已经删除。网络层仅接收合法数据(IP包)。
网络互连性主要负责选择路由和主机或路由器、总机之间的集束数据传输。这一功能需要适用的协议。IP协议是共同的网络层协议。
进入网络层的数据包并不是必须转让的完全合法的数据;在他面前还有20字节的IP协议。
IPv4协议数据报告是一个可变长组,由两部分组成:IP,第一部分和数据;第一级部长级可能由20至60字节组成,提供关于选择和传输路线的重要信息。
(2) 最初的IPIP校验和
1)计算方法
检查字节强制的 0将 IP 地址的前 20 字节减为 2 字节, 即 16 比特,分开分别相加,如果将16位低点乘以16位高点,可以增加16位高点。直到最终的结果是16位数的数据集。将计算结果倒置到 IP 的第一个校验和字节 。
步骤:
反相加(最高溢出量加最低)是一种计算机算法。
(2) IP 第一和第二次核查
对 IP 前半部分的 16 位进行二进制反对比。 计算结果再次被倒转, 如果是 0, 则通过测试; 否则, 测试失败 。
(1)UDP包格式
当网络层收到数据包时,它将从数据包中删除第一个IP地址,并将剩余的有效数据包传送到传输层。
端对端服务通过主机应用程序程序之间的传输层提供,主要功能如下:数据分割和重新配置、港口号位置、连接管理、错误控制和交通控制以及错误修理。
在传输层方面,有两项传输协议:以字节为基础的TCP议定书和以报告为基础的UDP议定书,这两项协议都有利弊,并用于各种情况。
的完整、有序,是可靠协议,在数据完整性和一致性更为重要的情况下,经常使用这种方法。如文件传输。它比联合民主党更昂贵。比UDP慢;UDP协议是一个没有连接的运输层协议。提供面向服务的信息的基本和不可靠的服务。因为无需连接,TCP传输数据的速度快于UDP。所花费的资源少于TCP。适合实时数据传输,如视频通话。
[外国连锁照片传送失败, 发端站可能有一个隐形链机制, 并建议将照片存起来直接上传( img-rdrp06kC-16486, 109499618)( https://s3- us- west-2).
特别值得一提的是,从因特网接收和发送数据的过程实际上相当简单,但应明确指出:
接收数据:顶端机器通过网络传送数据,数据由PHY芯片在门户网站上接收,数据由PHY芯片发送到FPGA芯片上。
传送数据:FPGA芯片向PHY芯片发送数据,该芯片向门户发送数据,并通过网络线向顶端机器传送数据。
因此,首先我们必须获得该卡的PHY芯片。
网卡模型: RTL8201CP
TCP/IP(即联合民主党)已经商定。
PHY芯片完成五层结构的物理层,因此应用必须完成马氏亚层、IP层和UDP层。
在此创建数据循环 : 顶端机器提供数据, 并且 FPGA 接收数据, 并以其原始形式将数据发回顶端机器 。 (由网络调试助理发送的数据超过)
大致的工作流程
1.上位机发送数据
二. FPGA接收和储存数据。
三. FPGA 向上发送数据
四台顶端机器接收并显示数据
4个来自MII数据站点。我们收集了至少64个字节数据框必须从头开始。这标志着框架头上的数据部分 UDP 的结束 。这是相同的接收命令。应该指出的是,对PHY芯片的确认是以字节为基础的。因此,组装1Byte数据与将先进的4比特数据作为低4比特数据处理相同。其后抵达的数据被认为高四位数。也就是说,如果你需要发送 0x3d。需要先发0xd,再发0x3。
由于数据循环与《儿童权利公约》代码的开发有关,数据循环被大致分为数据接收和数据发送,因此,《儿童权利公约》的核查增加了一个模块,用于构建《儿童权利公约》代码。
在此,数据的方向和实际代码编制很重要,这意味着接收模块只负责接收数据,而发送模块负责将CRC代码生成的适当数据输入CRC模块,并将完成的框架交付给顶部机器。
顶层由与PHY芯片实际连接的模块组成,只需注意PHY芯片连接即可。
在这里,我们必须检查卡片的图示 并交叉参照MII接口
如你所见,许多MII接口直接连接并附在卡片上,只有几个接口需要照顾,因此,顶层结构如下:
根据统计数据,EP4CE10F17C8网站的大小为100M。 从理论上讲,各地都可以看到时钟。
频率为25兆赫,但可能因频率而异。
接口
信号接收:考虑由物理物理物理芯片发送的信号,即:RX_CLK、RXD[3:0]、RX_DV但是,由于收到和收到的数据的时钟同步,需要有一个数据缓存的不对称FIFFO,因此还要求接收TX_CLK考虑由其他模块发送的信号;由于FIFO读取数据使其生效,应存在读动推进器信号。rd_fifo_enable。
发送信号:接收模块在接收模块发送数据时,从FIFO输出开始,不向PHY芯片发送信号。rx_data[7:0]、rx_data_vld由于有必要确定有效数据的长度,数据长度信号至关重要。rx_data_length[15:0](UDP 段落页眉中的数据长度字段为 16 位。) 这里要完成的函数是接收一个数据框架并将其发送回, 并显示模块接收 FIFO 信号, 这是必需的 。rec_frame_done另一方面,接收模块不向CRC核查模块发送数据。
以下是接收模块界面的最后设计:
内部设计
第一步是设计一个不对称的FIFO IP。用于存储收到的数据,用于同步接收和交付数据的时钟当然具有最大的影响力。即当我收数据时,当收集数据时,应将其保存在时钟上。当我发数据时,这是所有关于阅读数据 与发送的数据时钟。这里很理想,各式各样
接收和判断框架、接收和判断IP软件包、接收和判断联合民主党负责人、接收和判断有效数据,这些都是接收模块必须履行的功能。
为了确定原始定义和预先编码是否有效,确定 MAC 是程序 MAC 地址还是广播地址 (0xff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff_ff ff_ff_ff_ff这是MAC的地址信息的来源以太网格是唯一能发送和接收它的人对帧类型不做判断,即只接收,不判断。(请铭记这一框架缺乏预先设定代码和起始定义。 )这里只是为了方便,直接定义在了一起)
IP_HEAIDER: 仅对IP目的进行精确性检查,接收IP软件包第一部长的数据,确定IP软件包的第一部长,并在获得IP软件包的第一部分后完成IP软件包的总体判断。
UDP_HEADER:只对UDP长度字段进行评价,以确定UDP部分的长度和有效数据长度,以便于编程。
VLD_DATA:在确定有效数据长度之后,收到与长度相符的有效数据就足够了。
TIST:当成功的数据接收完成时,没有经过CRC检查,为了便于编程,即不考虑FCS段落,剩下的只是等待当前框架数据发布完成(即TX_EN折旧)。 (可能有些字段既填充又未填充。 )
接口
信号接收:考虑由物理物理物理芯片发送的信号,即:TX_CLK,并计及接收器模块的信号,即:rx_data[3:0]、rx_data_vld、data_length[15:0]、rec_frame_done最后,请看看《儿童权利公约》模块发出的信号。crc_data[31:0]。
考虑一下向物理物理芯片发送的信号,即:TXD[3:0]、TX_EN考虑将信号传送到接收模块,即:rd_fifo_enable考虑向 CRC 检查模块发送信号 。tx_data[3:0]、tx_data_vld。
内部设计
发送模块的功能包括传输框架、IP软件包、UDP头条标题、有效数据(可能填充的数据部分)和FCS段,在此基础上可以设计以下国家机器:
FRAME_HEAIDER: 发送前缀和启动分隔符,发送框架(包含目的和源MAC地址和类型)。
IP_HEADER: 发送 IP 包头( 附加信息请见 IP 软件包格式), 其中最重要的是传输 IP 首个校验和 。
发送 UDP 信头 。
DATA: 发送数据部分,其中更为关键的是评估数据长度是否符合标准以及是否必须填报数据。
FCS:交付CRC校准代码,应当记住,一旦收到数据部分,以下周期将是CRC校准代码。
目前,《儿童权利公约》核查模块主要基于网站开发的一种技术。我们必须集中关注界面。该模块执行输入四位数据功能。这篇文章是全球之声在线特稿的一部分。CRC校准代码由模块使用移动内存生成。根据不同的多项式,动产登记册以不同方式运作。当所有信息都输入模块时,最终需要的冷冻剂部分数据是目前出口的CRC校准代码。
网站:http://outprintic.
输入数据的长度、CRC校准码的长度以及CRC协议的类型(CRC 32/802)都可具体说明。 3
模块框图如下
由于这两个是时钟,频率不同,非时钟区域存在同步问题,可以直接宣布登记册应同步一次(由上层板确认,可能带来运气和个人判断)。
实际上,在描述没有手写法典的法典时,必须处理若干因素。
例如,如果您提供了该模块的 CRC 代码, 您无法立即将 TXD 传送到 CRC 模块, 所以当您使用时间序列逻辑输出时, 您就会发现 CRC 代码不正确, 提供给 CRC 模块的数据要求在 TXD 之前至少一个周期 。
还有非钟声场的信号同步问题,此处使用的简单化解决办法可能不正确。
如果有人看前两部分 开始创建代码, 很明显,理论上的理解不够充分, 不是明确, 而是在一个概念上。
如何填写 mac 亚层的类型字段?
您如何填充传输层中第一个 IP 的字段?
如何填充UDP一楼这么多字段?
核查和核查如何完成,何时进行计算?
(事实上,在小组验证期间,我忽略了UDP校验和字段(全部为零),然后在UDP CheckSum错误中建议使用网络调试援助获得的数据框架。 )
个人认为,这里采取的程序应该更加跨部门,但已经完成,提案可以考虑。
由于前一时期缺乏思考,没有考虑可以达到多少细节,以及野火和正面代码,如rx_byte, tx_byte, 是不聪明的,至少在我没有提到该代码时并非如此。
接收器模块的国家机器设计令人满意。问题在于将评估哪些学科,接受哪些领域。实际上,仅收到有效数据部分。其余信息至关重要。更多的是忽略掉了,一直以来,国家机器都进行了清点。我不做任何操作,等着时间过去就好。
发送模块: 这更困难 。帧头发哪些数据,IP头发哪些数据,UDP的毛发数据到底是什么?因为开始没想好,通常都是费时的搜索 或引用别人的代码导致写得很慢,还有核查的问题在理发时,IP的初始校验和是计算出来的。UDP的初步核实,我没有写。当发送 IP 头时, 您可以计算 。该模型与最初IP检查计算中使用的模型相同。但是,民主联盟的初次审查更具挑战性。需要去查资料,要用到伪首部,多了一点字段,尽管如此,还是以同样的方式这样做。
整个软件已经完全失效, MAC 地址和 IP 地址也是如此。 这不是一个好信号。 它可以使用两个地址, 保存它们, 并在必要时使用它们, 但是由于个人能力有限, 拥有许多额外的界面和新的 FIFO 是一个麻烦问题。
谢谢你忍受这些胡说八道!
本文由 在线网速测试 整理编辑,转载请注明出处。