一种基于AMBA‑AHB总线的千兆网络控制电路的制作方法

文档序号:11180547阅读:1320来源:国知局
一种基于AMBA‑AHB总线的千兆网络控制电路的制造方法与工艺

本发明属于计算机网络领域,具体涉及一种基于amba-ahb总线的千兆网络控制电路。



背景技术:

传统的以太网控制电路主要由mac控制器和phy收发器构成,但是随着总线传输速率及主机接口速率的不断提高,以太网控制电路内部模块大量增加,主要包括:pcie模块、dma模块、risc模块、数据帧和帧描述符存储模块,存储管理模块、mac控制器、phy和serdes收发器等,如何设计高效的架构将所有模块互联直接影响到整个电路的传输性能。

基于fpga的千兆以太网控制器的设计与实现方法中,提出利用fpga实现嵌入式千兆以太网的设计方案,完成了三速以太网mac以及其通信链路的设计,各个模块通过拉线直连的方式进行信号传输,这种设计方法虽然实现简单,但会造成连线面积的增大,给电路后端设计的面积及功耗造成困难。

x_dsp中千兆以太网mac控制器的设计与实现方法中,采用相互独立的数据通路与配置通路实现mac控制器与上层逻辑的连接。数据通路中采用基于突发且可并行读写的axi接口进行数据传输,保证接收、发送数据的高效传输;配置通路采用简化的axi接口实现对mac控制器中寄存器的读写操作;虽然在整个电路的内部实现中使用了高速和低速搭配的片内总线,但是mac控制器等模块是挂在低速总线上,无法实现主机接口千兆的速率。



技术实现要素:

本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种基于amba-ahb总线的千兆网络控制电路,采用高效的架构将以太网控制电路的内部模块进行互连,通过该架构不仅使总线传输速率达到1gbps、主机接口传输速率达到5gt/s,而且能够节约布线资源、减小芯片面积、降低芯片功耗。

本发明采用以下技术方案:

一种基于amba-ahb总线的千兆网络控制电路,其特征在于,包括pc机、amba-ahb总线模块、mac控制器、变压器和光收发器,所述pc机经过dma模块与所述amba-ahb总线模块连接,所述amba-ahb总线模块经过所述mac控制器分两路,分别与所述变压器和光收发器连接,所述dma模块还经过存储管理模块与所述mac控制器连接;

所述pc机用于将上层协议需要发送的数据帧及描述符发送给千兆网络控制电路、将千兆网络控制电路输出的数据帧及返回的描述符转发给上层协议处理、通过pcie接口对控制电路进行相应配置;

所述amba-ahb总线模块根据ahb总线协议完成主机对从机的访问,所述主机包括dma模块,所述dma模块用于根据pcie的请求完成控制电路内部存储单元及配置信息的访问;

所述存储管理模块用于对片内的数据帧和帧描述符存储模块进行存储空间的分配和释放管理;

所述mac控制器模块用于实现数据的封装与解封,以及媒体分配和竞争处理;

所述变压器用于增强信号;

所述光收发器用于将要发送的电信号转换成光信号发出,并将接收到的光信号转换成电信号输入到接收端。

进一步的,所述amba-ahb总线模块采用burst连续流水线方式访问所述从机,当主机收到从机给出的readyn信号为高时进行地址信号、数据信号及控制信号的更新,完整的读访问为3个时钟周期,完整的写访问为2个时钟周期,工作时钟频率为125mhz,数据位宽为64位。

进一步的,所述amba-ahb总线模块连接的主机还包括pcie模块、risc处理器模块,所述从机包括数据帧和帧描述符存储模块;所述pcie模块设置在所述pc机和dma模块之间,所述数据帧和帧描述符存储模块设置在所述amba-ahb总线模块和mac控制器模块之间,用于对接收及发送通路的数据帧进行缓存,对与存储单元对应的描述符进行缓存。

进一步的,所述pcie模块通过链路训练和所述主机建立链路,然后根据以太网控制电路和主板的访问请求进行数据帧及描述符的访问,以及寄存器的相互访问,实现pciegen1×2和pciegen2×1协议,所述risc处理器模块根据程序加载命令对以太网控制电路的寄存器进行配置和相应存储单元进行访问,实现对片内产生中断的处理。

进一步的,所述数据帧和帧描述符存储模块的描述符包括发送描述符、接收描述符和返回描述符,每个存储单元均为双端口访问,一个端口挂在amba-ahb总线模块上作为从机,另一个端口通过直接拉线的方式访问,双端口均支持同时读写访问功能,由同步存储单元实现,工作时钟频率为125mhz,双口存储器的工作时钟频率相差180°,数据位宽为64位,在写访问过程中支持位使能。

进一步的,所述mac控制器模块对发送数据帧的前导符和帧起始定界符的插入、crc的重新计算及插入、根据寄存器的配置判断是否需要插入mac源地址,对接收通路的前导符和帧起始定界符的剥离、crc的校验、帧长判断、mac目的地址的匹配性检查以及对帧的相关信息进行解析;通过mdc/mdio接口对phy及serdes收发器的自协商结果进行读取,然后调整mac的接口通讯速率。

进一步的,如果是10mbps的通讯速率,则使用mii的接口,接口工作时钟为2.5mhz,数据位宽为4位;

如果是100mbps的通讯速率,则使用mii的接口,接口工作时钟为25mhz,数据位宽为4位;

如果是1000mbps的通讯速率,则使用gmii的接口,接口工作时钟为125mhz,数据位宽为8位。

进一步的,所述mac控制器模块经过phy收发器模块与所述变压器连接,所述phy收发器模块在发送通路用于对所述mac控制器模块输出帧的8b/10b编码及dac转换成可以通过物理媒介传输的信号,然后将数据帧发送到双绞线总线上;在接收通路用于对来自物理媒介的信号转换成数据链路层传输的数据字节。

进一步的,所述mac控制器模块经过serdes模块与所述光收发器连接,所述serdes模块在发送通路用于实现对数据帧的8b/10b编码、并串转换、数模转换及预加重,然后将数据帧发送到光电转换模块;在接收通路用于对光电转换模块输出的数据帧进行模数转换、时钟恢复/产生、电阻校正、串并转换及8b/10b解码,然后将数据帧发送到所述mac控制器模块。

与现有技术相比,本发明至少具有以下有益效果:

本发明基于amba-ahb总线的千兆网络控制电路,pc机经过dma模块与amba-ahb总线模块连接,amba-ahb总线模块经过mac控制器分两路分别与变压器和光收发器连接,有效的在控制电路内部采用了amba-ahb总线架构,dma模块经过存储管理模块与mac控制器,将存储单元设计为双口可读可写访问,提高片内资源访问效率,一个端口挂接在ahb总线上作为从机,另一个端口通过直接访问的方式连接,这种架构不仅利用了ahb总线burst连续访问的特性,同时也节约了布线资源,减小了芯片面积,降低了芯片功耗,使以太网控制器总线传输速率达到了1gbps,主机接口传输速率达到了5gt/s,有效提升了千兆网络控制电路的传输性能指标。

进一步的,amba-ahb总线模块采用burst连续流水线方式访问所述从机,当主机收到从机给出的readyn信号为高时进行地址信号、数据信号及控制信号的更新,完整的读访问为3个时钟周期,完整的写访问为2个时钟周期,工作时钟频率为125mhz,数据位宽为64位,通过对该发明进行功能仿真,并与传统的千兆网络控制电路结构进行比较。在测试环境中,随机产生1000组报文,并分别采用传统的千兆网络控制电路结构和该发明提出的基于amba-ahb总线的千兆网络控制电路结构对这些报文任务进行处理;仿真结果表明,基于amba-ahb总线的千兆网络控制电路结构不仅实现了总线传输速率1gbps、主机接口传输速率5gt/s的性能指标,而且明显的节约了布线资源,减小了芯片面积,降低了芯片功耗。

进一步的,mac控制器模块在发送通路实现了以太网802.3协议,如暂停帧、流量控制等;在接收通路中实现了对以太网802.3协议的符合性检查,如帧过滤、crc检查。

综上所述,基于amba-ahb总线的千兆网络控制电路实现在电子系统中终端之间的数据通讯,既可以通过光纤传输,也可以通过电缆传输,不仅实现了总线传输速率1gbps、主机接口传输速率5gt/s的性能指标,同时通过优化的误码率性能及流量控制保证了数据的有效传输,节约了布线资源,减小了芯片面积,降低了芯片功耗。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

图1为本发明的总体结构框图。

其中:1.pcie模块;2.dma模块;3.risc处理器模块;4.amba-ahb总线模块;5.数据帧和帧描述符存储模块;6.存储管理模块;7.mac控制器模块;8.phy收发器模块;9.serdes模块。

具体实施方式

本发明提供了一种基于amba-ahb总线的千兆网络控制电路,在控制电路片内采用ahb总线架构,将存储单元设计为双口可读可写访问,一个端口挂接在ahb总线上作为从机,另一个端口通过直接访问的方式连接,这种架构不仅利用了ahb总线burst连续访问的特性,同时也节约了布线资源,减小了芯片面积,降低了芯片功耗。应用于pc机、服务器、测控系统中心机等设备的网卡中;该千兆网络控制电路是工作在链路层的网络组件,是局域网中连接计算机和传输介质的接口,不仅能实现与局域网传输介质之间的物理连接和电信号匹配,还涉及帧的发送与接收、帧的解封与拆封、介质访问控制、数据的编码与解码及数据缓存等功能。

请参阅图1,本发明基于amba-ahb总线的千兆网络控制电路结构,为图中虚线内部结构,包括pcie模块1、dma模块2、risc模块3、amba-ahb总线模块4、数据帧和帧描述符存储模块5,存储管理模块6、mac控制器7、phy收发器模块8和serdes模块9。

其中,pcie模块1的输入端连接pc机,输出端经过dma模块2与amba-ahb总线模块4连接,所述amba-ahb总线模块4经过数据帧和帧描述符存储模块5与mac控制器模块7连接,所述mac控制器模块7分两路,一路经过phy收发器模块8连接变压器,另一路经过serdes模块9连接光收发器。

pcie模块1的数量为1,主要功能是进行主机接口通讯,根据pc机和控制电路的请求进行数据帧及描述符的转发,该模块本身不对数据帧内容进行处理。

首先通过链路训练和主机建立链路,然后根据以太网控制电路和主板的访问请求进行数据帧及描述符的访问,也包括寄存器的相互访问,实现了pciegen1×2和pciegen2×1协议;该模块的主机接口传输速率直接决定了千兆网络控制电路的性能指标,总线吞吐量达到5gt/s,工作时钟频率为125mhz,数据位宽为64位。

dma模块2的数量为1,主要功能是根据pcie模块1的请求完成数据帧和帧描述符存储模块5与pcie模块1之间的访问。

该模块的访问行为受pcie模块控制,在以太网控制器内部pcie模块为主机模块,dma为从机模块;该模块的工作时钟频率为125mhz,数据位宽为64位。

amba-ahb总线模块4的数量为1,主要功能是根据ahb总线协议完成主机对从机的访问。

挂在该总线上的主机包括pcie模块1、dma模块2、risc处理器模块3,从机包括数据帧和帧描述符存储模块5;通过amba-ahb总线模块4的burst特性实现了主机对从机的连续访问;相比于对存储空间的直接访问方式,当主机采用burst连续流水线方式访问从机时,当主机收到从机给出的readyn信号为高时进行地址信号、数据信号及控制信号的更新,一个完整的读访问需要3个时钟周期,一个完整的写访问需要2个时钟周期,但采用burst连续流水线访问方式时,由于访问周期重叠复用,因此大大缩短了访问时间,从而提高了主机对从机的访问效率;该模块的工作时钟频率为125mhz,数据位宽为64位,兼容amba-ahb总线的相关协议。

数据帧和帧描述符存储模块5的数量为1,主要功能是对接收及发送通路的数据帧进行缓存,对与存储单元对应的描述符进行缓存。

描述符包括发送描述符、接收描述符和返回描述符,每个存储单元都设计为双端口访问,一个端口挂在amba-ahb总线上作为从机,另一个端口通过直接拉线的方式访问,双端口都支持同时读写访问功能,由同步存储单元实现;该模块的工作时钟频率为125mhz,为了避免对同一个存储单元进行同时访问时产生冲突,该双口存储器的工作时钟频率相差180°,数据位宽为64位,在写访问过程中支持位使能。

mac控制器模块7的数量为1,主要实现两大功能:

第一,数据的封装与解封。包括寻址、差错校验等;

对发送数据帧的前导符和帧起始定界符的插入、crc的重新计算及插入。

第二,媒体接入控制。包括媒体分配和竞争处理。

根据寄存器的配置判断是否需要插入mac源地址,接收通路的主要功能包括前导符和帧起始定界符的剥离、crc的校验、帧长判断、mac目的地址的匹配性检查以及对帧的相关信息进行解析。

通过mdc/mdio接口对phy收发器模块8及serdes模块9的自协商结果进行读取,然后调整mac控制器模块7的接口通讯速率,

如果是10mbps的通讯速率,则使用mii的接口,接口工作时钟为2.5mhz,数据位宽为4位;

如果是100mbps的通讯速率,则使用mii的接口,接口工作时钟为25mhz,数据位宽为4位;

如果是1000mbps的通讯速率,则使用gmii的接口,接口工作时钟为125mhz,数据位宽为8位。

其中媒体接入控制算法是mac子层最重要的部分,对网络的响应时间、吞吐率及有效利用率等都有重大影响。

phy收发器模块8的数量为1,

在发送通路主要功能是把对mac控制器模块7输出帧的8b/10b编码及dac转换成可以通过物理媒介传输的信号,然后将数据帧发送到双绞线总线上;在接收通路的主要功能是把来自物理媒介的信号转换成数据链路层传输的数据字节。

对总线上接收数据帧的进行载波侦听、链路监测、数字自适应均衡、噪声回消、串扰消除、adc转换、时钟恢复/产生、基线漂移校正、8b/10b解码等,然后发送给mac控制器模块;该模块的工作时钟频率为125mhz,数据位宽为8位。

serdes模块9的数量为1,主要功能是对接收及发送的帧进行编解码、数模及模数转化、串并转换及接收数据帧恢复。

发送通路的主要功能是实现对数据帧的8b/10b编码、并串转换、数模转换及预加重,然后将数据帧发送到光电转换模块;

接收通路的主要功能是对光电转换模块输出的数据帧进行模数转换、时钟恢复/产生、电阻校正、串并转换及8b/10b解码,然后将数据帧发送到mac控制器模块;该模块的工作时钟频率为125mhz,数据位宽为8位。

pc机的主要功能包括:将上层协议需要发送的数据帧及描述符发送给千兆网络控制电路、将千兆网络控制电路输出的数据帧及返回的描述符转发给上层协议处理、通过pcie接口对控制电路进行相应配置;

变压器模块的主要作用是可以增强信号,使其传输距离更远,使物理层芯片与物理传输介质隔离,增强了其抗干扰能力,而且可以起到对芯片的保护作用,如防雷电等,另外,当设备接到不同电平的网口时,彼此设备不会相互影响;

光收发器模块主要实现将要发送的电信号转换成光信号,并发送出去,同时,能将接收到的光信号转换成电信号,输入到接收端。

所述amba-ahb总线模块4连接有risc处理器模块3。

risc处理器模块3的数量为1,主要功能是根据程序加载命令对以太网控制电路的寄存器进行配置和相应存储单元进行访问,实现对片内产生中断的处理。

该模块的工作时钟频率为125mhz,数据位宽为32位,对存储空间的一个地址单元进行访问时可以通过连续两次的burst操作实现。

所述dma模块2还经过存储管理模块6与所述mac控制器模块7连接。

存储管理模块6的数量为1,主要功能是对片内的数据帧和帧描述符存储模块进行存储空间的分配和释放管理。

对存储单元的管理是按照存储空间的空闲区域大小及数据帧写请求的大小进行地址分配,以及数据帧读取之后对相应空间的释放,帧描述符的管理则需要根据主机空间及本地空间的存储情况产生;该模块的工作时钟频率为125mhz。

本发明可用于pc机、服务器、测控系统中心机等系统的网卡设备中,特别适用于对网卡的接口速率要求较高的计算机网络系统。

采用本发明提出的一种基于amba-ahb总线的千兆网络控制电路,通过使用片内ahb总线架构及双口存储器,提高了片内资源访问效率;这种高效的架构使以太网控制器总线传输速率达到了1gbps,主机接口传输速率达到了5gt/s,有效提升了千兆网络控制电路的传输性能指标。

根据上述方案,用verilog语言对本发明中各个模块的逻辑设计进行描述,并将其与网卡设备中的其它模块集成在一起,进行系统级的验证。验证结果表明,本发明实现了设计功能,且性能满足预期。

以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1