跟着电子信息技能开展,网络通讯在日常日子中使用越来越广泛,以太网技能阅历了10 Mbit·s-1到10 Gbit·s-1的开展进程。当时电子设备网络化、多媒体技能、数字图像处理技能成为研讨的热门,片上多核体系(Multi-processor system-on-chip,MPSoC)在杂乱数字体系中成为首要的硬件结构计划。这类体系通常用以太网完结数据通讯,以太网接口规划与完结是一个要害部分。
数字体系规划不断增大,跟着商场剧烈竞赛,体系开发周期要求也变得严苛,现在,片上多核体系依据IP核的规划成为了干流趋势。体系功用的进步,片上集成的处理器数量也不断增多,依据网络结构的片上多核体系比较总线结构的规划优势越来越显着。Xilinx公司和Ahera公司开发的FPGA芯片针对不同类型,都供给了许多不同类型和不同功用的IP核。但是,杂乱数字体系,采样FPGA完结,在开发难度和本钱上占有显着优势。
1 MPSoC体系架构
MPSo选用NoC(Network-on-Chip,NoC)通讯结构,处理器和IP核经过资源接口与网络通讯。体系结构如图1所示,处理器与IP核选用总线通讯方法构成簇结构,簇、以太网模块和DDR模块经过资源接口与网络进行通讯。图中运算簇集成了两个处理器,完结数据运算,转置簇集成一个ARM操控器承当数据的行与列交流,DDR模块为片外存储芯片的操控器,以太网承当着体系的数据通讯模块,首要完结体系的数据传输。
2 以太网接口规划
以太网模块规划首要完结以太网操控器IP核用户端接口协议与多核体系网路通讯协议的转化。以太网接口硬件结构规划如图2所示,以太网操控器IP核为Xilinx公司ISE软件例化生成的千兆网操控器。接纳模块完结体系网络数据输出到以太网操控器IP核用户端数据输入的协议转化,发送模块承当以太网操控器用户端数据输出到网路数据输入的协议匹配。网络接口模块为多核体系通讯资源接口。
2.1 帧格局界说
图3所示为两种协议的数据格局界说。以太网IP核用户接口数据以帧格局界说数据的输出或输入,数据宽度为8位,帧数据长度规模为64~1 518 Byte,在详细硬件规划中一般挑选固定数据长度传输,使硬件结构规划简略。详细格局如图3(a)所示,先输入的数据为意图网卡的网络地址,数据长度为6Byte。其次是6 Byte的源片网络地址。接着为帧传输界说的类型或数据传输长度,长度占2 Byte,数据长度通常在数据帧比较短状况指定。如0010,表明后边传输的16个数据是有用的,传输剩下长度的数据,以太网操控器IP核默以为无效数据。而选用类型界说来传输帧,在数据传输长度规模内,完毕操控信号曾经的数据都表明为有用数据。文中选用512的固定数据传输长度和8 000标识的帧类型完结硬件规划。
网路接口数据包格局如图3(b)所示,数据深度界说为变长,数据宽度为34位,为多核体系实时高效的数据传输供给杰出的和谐效果。第一个数据为体系网络协议的路由包,这以后一个数据为装备信息,称为装备包。接着为不定长度有用数据包。有用数据包发送完毕后,紧接着发送一个数据完毕包。
网路数据包中不同包类型的格局界说,详细描绘如图4所示,数据高2位标识不同包格局类型。当高2位为11 B时,标识为路由包,其间第28~17位表明传输的数据长度,第16位到第9位界说数据源传达的网络坐标地址,低8位界说为数据通讯的意图网络地址,剩下数据位界说为保存位。当高2位为10B时,标识为装备包,其他位依据通讯需求,设置不同装备信息。当高2位为00B时,标识为数据包,剩下位为传输的有用数据信息。当高2位为01B时,标识为完毕包,其它位为保存位。
2.2 接口时序图
以太网操控器IP核接口时序如图5(a)所示。首要有3类信号:时钟信号、操控信号和数据信号。时钟信号为clock。而操控信号有sof_ n、eof_n、scr_rdy_n,其间sof_n表明帧传输开端操控信号,eof_n为帧传输完毕操控信号,scr_rdy_n为传输有用操控信号,操控信号均为低电平有用。用户端数据信号为Data。网路接口侧时序图如图5(b)所示。信号包括ip_stb、ip_ack、ip_fail、ip_fwd、ip_cancal、ip_sus pond。它们为多核体系网络通讯的完结握手应对传输机制。操控信号均为高电平有用,ip_data是数据传输信号。
2.3 发送模块规划
发送模块完结数据以太网IP核接口到网路的数据接口协议转化,如图2所示。该模块包括发送读操控器,发送数据缓存模块和发送写操控器。发送读操控器完结意图地址、源地址和数据类型的数据信息切断,把传达的有用数据写入发送数据缓存模块中,规划经过一个有限状况机结合计数器来完结功用的完结。发送数据缓存模块用一个异步FIFO来承当,一起完结数据8~32位的数据宽度扩展,一起完结跨时钟域数据传输使命。因为该模块数据读入是高时钟频率的8位数据,数据读出是体系时钟频率下的32位数据,数据的活动是由慢到快的传递进程,因而选用一个深度为64的FIFO单元来承当。发送写操控模块经过读取缓存模块中的数据,装备发送数据的有用信息,完结网络数据包格局封装,最终传输至多核体系通讯网络资源接口。
2.4 接纳模块规划
接纳模块承当网络数据包协议到以太网IP核接口协议转化,包括接纳写操控器、接纳数据缓存模块和接纳读操控器。接纳写操控器模块规划,经过网络操控信号和FIFO标识信号以及当时状况改动状况机的状况跳转。依据不同状况发生操控信号,完结网络包、装备包、完毕包和负载信息的截取,把传达的有用数据写入数据缓冲模块。数据缓存模块把32位网络数据转化到8位宽的以太网操控器接口数据,一起完结数据跨时钟域传输使命。该数据活动方向,速度是由快到慢的进程,结合硬件逻辑资源和使命恳求的频度,该规划选用一个深度为1 024,宽度为32的异步FIFO单元来承当。接纳读操控器模块经过读取缓存FIFO中数据,装备发送数据的源和意图网卡地址及帧类型,完结以太网数据帧的封装,传输至以太网IP核用户端接口。
3 试验成果
该硬件结构在Xilinx M525开发板上验证完结,FPGA芯片类型为Virtex-5 XC6VLX550T,其间芯片逻辑资源为207360,存储资源为11.39 MB,寄存器资源为207 360,体系硬件在FPGA中资源占用如表1所示。
表1是体系规划经过ModelSim功用仿真后,在Xilinx ISE东西上归纳后的成果,归纳频率高达245.562 MHz。在体系运转中,以太网操控器IP核时钟作业频率在125MHz,体系时钟频率为100MHz。经过仿真和FPGA下载验证后,接口通讯时钟周期计算如表2所示。
经过表2能够看出,以太网接口规划在完结两种协议转化和跨时钟数据传输中,通讯呼应时刻短,且具有实时和安稳传输,避免了异步时钟在数据传输中的功率问题。
试验测验,把FPGA开发板与PC机经过网线衔接,如图6所示。在PC机上编写软件程序,用于发送和接纳硬件体系数据,经过修正数据文件,测验不同深度的数据传输。比较发送数据和接纳数据文件,判别传输误码率。
试验测验了不同文件巨细的数据传输需求时刻,计算成果如图7所示。测验成果,发送与接纳文件数据,与预期成果共同。通讯时刻与数据文件巨细近似于线性关系,且传输时刻短。以太网接口规划模块为MPSoC承当网络数据通讯,供给了实时和高吞吐率的通讯速度。此外,以太网模块能够用于体系单模块集成调试传输源数据,进步验证功率。以太网接口模块也能够使用于通讯网络,完结体系数据与网络通讯信息的交流。
4 完毕语
研讨了以太网在MPSoC中的数据通讯,处理了体系在网路通讯中的实时和高吞吐率的数据传输瓶颈。经过该接口与多核体系通讯,能够完结局域网到广域网数据信息传递。