1.一种基于SOC的工业以太网协议转换方法,其特征在于:以SOC架构为基础,设计实现工业以太网协议转换的新型芯片架构,设计数据帧编/解码IP,通过修改所述IP的配置参数,实现多种工业以太网协议数据帧编解码,通过总线模块实现数据高速传输;包括以下步骤:步骤1:主机端将命令信息以及控制寄存器信息通过PCIE模块发送至控制寄存器模块进行存储;
步骤2:通过CPU模块对控制寄存器模块的轮询读取,读取出控制寄存器模块中的命令、配置信息,并对其进行解析;
步骤3:CPU模块将解析后的命令、配置信息通过AXI控制总线发送到DMA模块和数据帧编/解码模块;
步骤4:DMA模块和数据帧编/解码模块根据控制总线发送的配置信息进行功能调整;步骤4具体包括以下步骤:
步骤4‑1:CPU发送配置信息到DMA模块,所述DMA模块采用双通道DMA,两通道分别用于主机到从机的写操作和读操作;所述DMA模块通过AXI数据总线分别连接协议数据缓存模块和PCIE模块,其功能为将协议数据缓存模块中的数据取出并转发到PCIE模块或将所述数据通路反向;所述DMA控制器接收CPU下发的配置信息包括源地址、目的地址以及传输量,其中传输量包括数据总量和数据位宽;DMA模块根据源地址和目的地址区分所要读取数据的位置和数据转发位置,通过数据总量以及数据位宽计算出单次AXI传输所需的突发长度;DMA控制器通过配置信息,以AXI接口发出读写请求到AXI数据总线上,完成CPU对DMA模块的配置,当本次配置所要求的操作完成后,即通过DMA模块上的AXI接口收到读响应或写响应后,通过数据通路反馈到CPU模块完成本次配置操作;
步骤4‑2:CPU发送配置信息到数据帧编/解码模块;所述数据帧编/解码模块为Verilog语言编写,包括帧编码模块、帧解码模块和CRC校验模块;其中,帧编码模块负责为数据添加前导码、目的地址、源地址、数据长度及以太网类型;帧解码模块负责对接收的帧进行解码操作,识别目的地址和源地址、类识别以及提取协议中传输的有效数据;CRC校验模块包括两项功能,一是为数据添加CRC校验码后发送给帧编码模块,二是校验帧解码模块发送的数据正确性;CPU的配置信息以参数形式传递进入数据帧编/解码模块,所述参数内容包括:前导码位宽,目的地址和源地址位宽,数据包类型位宽,协议数据位宽以及校验码位宽;当帧编/解码模块确定所接受的数据帧各部分参数后,按位宽对数据帧进行展开;所述解码模块将接收到的数据帧展开后获取的信息包括目的地址、源地址和协议数据,分别将地址信息和数据存储在协议数据缓存模块;
步骤5:当主机发送数据到从机时,主机发送的数据由DMA模块经过AXI数据总线发送到数据帧编/解码模块,将数据按照协议规范打包成数据帧发送到从机完成数据传输;当从机发送数据到主机时,从机将根据协议打包好的数据帧发送至数据帧编/解码模块,提取数据帧中有效信息存储至协议数据缓存模块;步骤5具体包括以下步骤:步骤5‑1:当主机发送数据到从机时,经过CPU模块配置后的DMA模块将所需要发送的数据从与主机连接的PCIE模块取出,在DMA模块内部,根据配置信息调整数据位宽和发送方式后,发送到AXI数据总线上,并根据DMA模块发送的地址,找到所对应从机数据帧编/解码模块中的CRC校验模块;数据帧编码模块接收到数据后,为数据添加前导码、目的地址、源地址、数据长度及以太网类型;数据帧打包完成后发送给从机,完成数据传输;
步骤5‑2:当从机发送数据到主机时,数据帧由从机发送到数据帧解码模块,在模块内部将数据帧拆分成前导码、目的地址、源地址、数据长度、以太网类型、有效数据和CRC校验码;数据帧拆分后经过数据帧接码模块中的选择器进行选择,将目的地址和源地址存储在协议数据缓存模块的地址信息寄存器中,有效数据和CRC校验码则经过CRC校验模块比对正确后存储到协议数据缓存模块的数据寄存器中;
步骤6:当从机发送数据到主机时,DMA模块根据配置信息通过AXI数据总线读取协议数据缓存模块中的数据,并按主机配置要求调整数据位宽以及传输方式;
步骤7:DMA模块将转换后的数据发送至与PCIE模块,通过PCIE模块发送至主机端完成数据传输。
2.根据权利要求1所述的一种基于SOC的工业以太网协议转换方法,其特征在于:所述步骤1的命令信息以及控制寄存器信息包括读/写命令操作描述、Host端所访问从机ID、访问协议数据缓存模块地址、选择需要转换协议序号及时钟复位模块配置参数。
3.根据权利要求1所述的一种基于SOC的工业以太网协议转换方法,其特征在于:所述控制寄存器模块包括两个部分,一部分为地址信息寄存器,另一部分为命令信息寄存器。
4.根据权利要求3所述的一种基于SOC的工业以太网协议转换方法,其特征在于:所述步骤2具体操作为:
步骤2‑1:CPU模块首先轮询读取地址信息寄存器内信息,当CPU判断前后两次读出的同一地址的地址信息寄存器内数据出现差值,判断得出客户端访问地址变换;
步骤2‑2:CPU模块采用第五代锐龙AMDRyzen处理器R5,当R5首先轮询读取地址信息寄存器中表示起始地址和结束地址寄存器信息时,当地址数据间的差值发生变换后,开始轮询读取命令信息寄存器信息,并对读取到的信息进行解析;CPU模块将解析完成的命令信息寄存器信息存储至CPU模块内挂在R5下的配置信息寄存器中。
5.根据权利要求1所述的一种基于SOC的工业以太网协议转换方法,其特征在于:所述步骤5中,数据帧编/解码模块和协议数据缓存模块能够根据设计需要在AXI数据总线上挂载多个,步骤7中DMA模块能够根据设计需要在AXI数据总线上挂载多个。