一种串口服务器、协转芯片及数据传输方法

文档序号:7892523阅读:258来源:国知局
专利名称:一种串口服务器、协转芯片及数据传输方法
技术领域
本发明涉及网络技术领域,尤其涉及一种串口服务器、协转芯片及数据传输方法。
背景技术
串口服务器是一种工业上常用的协议转换设备,串口设备通过串口服务器可以将串口数据通过以太网传输到远端的主机或其他以太网接口设备,同样的,远端以太网接口设备可以通过串口服务器将以太业务转换成串口业务传输给串口设备,从而实现串口设备与以太网接口设备的数据互传。 目前市场上的大多数串口服务器都是只有一个以太网口和多个串口,只能实现以太网数据与串口数据之间的互转,并且通过以太网口只能同一台主机建立数据通讯。若要串口服务器能够与多主机通讯,还需要增加一台交换机来完成以太数据交换,从而达到多机访问的目的。这无疑会增加设备组网的成本。更重要的是,在工业环境以及电信环境中不止需要以太网传输串口数据业务,还有可能需要其他通信方式传输,例如通过El方式进行传输,那么就需要再增加一套以太网到El的协转设备,这样不仅增加了成本,同时给施工、维护方面造成了压力。并且,现有技术中的串口服务器不具有媒质无关接口(Media IndependentInterface, MII)数据与串口数据的转换功能。

发明内容
本发明实施例提供了一种串口服务器、协转芯片及数据传输方法,用以实现具有MII数据与串口数据的转换功能的串口服务器。本发明实施例提供的一种串口服务器包括包括CPU、交换芯片,内存DDR和闪存(flash),该串口服务器还包括至少一个第一协转芯片;第一协转芯片包括媒质无关接口 MII和多个串口,通过MII与CPU相连,用于从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU ;所述CPU包括第一以太网口和第二以太网口,通过第一以太网口从交换芯片接收以太网报文并解析,从中获取数据,并重新打包成以太网报文,将该以太网报文通过第二以太网口发送给第一协转芯片;以及,CPU通过第二以太网口接收第一协转芯片发送的以太网报文并解析,从中获取数据,并重新打包成以太网报文后通过第一以太网口发送给交换
-H-* I I
心片;所述交换芯片包括多个以太网口,其中包括用于与多个主机通讯的多个以太网口,以及用于与CPU通讯的以太网口 ;所述交换芯片根据从主机接收到的以太网报文的MAC地址,将从主机接收到的以太网报文发送给CPU,以及,根据来自CPU的以太网报文的MAC地址,将来自CPU的以太网报文发送给主机。
本发明实施例提供的一种协转芯片,包括介质无关接口 MII和多个串口 ;该协转芯片还包括处理模块,用于通过MII从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU。本发明实施例提供的一种数据传输的方法,包括第一协转芯片从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU ;CPU通过第一以太网口从交换芯片接收以太网报文并解析,从中获取数据,并重新打包成以太网报文,将该以太网报文通过第二以太网口发送给第一协转芯片;以及,CPU通过第二以太网口接收第一协转芯片发送的以太网报文并解析,从中获取数据,并重新打包成以太网报文后通过第一以太网口发送给交换芯片;交换芯片根据从主机接收到的以太网报文的MAC地址,将从主机接收到的以太网报文发送给CPU,以及,根据来自CPU的以太网报文的MAC地址,将来自CPU的以太网报文发
送给主机。本发明实施例提供的一种数据传输方法包括通过介质无关接口 MII从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU。本发明实施例提供的串口服务器,包括CPU、交换芯片,内存和闪存(flash),该串口服务器还包括至少一个第一协转芯片;第一协转芯片包括MII和多个串口,通过MII与(PU相连,用于从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU ;CPU,从交换芯片接收以太网报文,将该以太网报文发送给第一协转芯片;以及,将从第一协转芯片接收的以太网报文发送给交换芯片,从而实现了一种具有MII数据与串口数据的转换功能的串口服务器。


图I为本发明实施例提供的串口服务器的总体结构示意图;图2为本发明实施例提供的第一协转芯片的结构示意图;图3为本发明实施例提供的第一协转芯片的多芯片级联结构示意图;图4为本发明实施例提供的以太网与串口的数据交互过程示意图;图5为本发明实施例提供的El接口与串口的数据交互过程示意图;图6为本发明实施例提供的以太网与El接口的数据交互示意图。
具体实施例方式本发明实施例提供了一种串口服务器、协转芯片及数据传输方法,用以实现一种具有多以太网口、多El接口、多串口的串口服务器,多以太网口间可进行数据交换,通过任何一个以太网口都可以访问串口数据。多El接口间可以进行数据交换,通过El接口同样可以访问串口数据。以太网口和El接口之间也可以进行数据交换,使本发明实施例兼具了El接口与以太网口的协议转换(简称协转)功能。并且,还可以实现MII数据与串口数据的转换。本发明实施例提供的串口服务器,如图I所示,包括CPU、交换芯片,DDR和flash, 以及,至少一个第一协转芯片;第一协转芯片包括MII和多个串口,通过MII与CPU相连,用于从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU ;所述CPU包括第一以太网口和第二以太网口,CPU通过第一以太网口与交换芯片通讯,CPU通过第二以太网口与第一协转芯片通讯;CPU通过第一以太网口从交换芯片接收以太网报文并解析,从中获取数据,并重新打包成以太网报文,将该以太网报文通过第二以太网口发送给第一协转芯片;以及,CPU通过第二以太网口接收第一协转芯片发送的以太网报文并解析,从中获取数据,并重新打包成以太网报文后通过第一以太网口发送给交换
-H-* I I
心片;所述交换芯片包括多个以太网口,使得串口服务器可以与多台主机建立数据通讯。其中包括用于与多个主机通讯的多个以太网口,以及用于与CPU通讯的以太网口 ;所述交换芯片根据以太报文中的目的MAC地址,将包含与CPU相同MAC地址的以太网报文发送给CPU,同样的,根据CPU发出的以太网报文中的目的MAC地址,将报文转发给具有相同MAC地址的主机。通过第一协转芯片,从而实现了串口服务器的MII数据与串口数据的转换功能。较佳地,该串口服务器还包括至少一个第二协转芯片;所述交换芯片的多个以太网口还包括用于与一个或多个第二协转芯片通讯的以太网口 ;第二协转芯片通过介质无关接口 MII与交换芯片相连,用于从El接口接收El接口报文,将El接口报文转换为以太网报文,将该以太网报文通过MII发送给交换芯片;以及,通过MII从交换芯片接收以太网报文,将以太网报文转换为El接口报文,将该El接口报文从El接口发送出去。所述交换芯片还用于根据从主机接收到的以太网报文的MAC地址,将从主机接收到的以太网报文发送给第二协转芯片,根据来自第二协转芯片的El接口报文的目的MAC地址,将来自第二协转芯片的El接口报文发送给主机;以及,根据从CPU接收到的以太网报文的目的MAC地址,将从CPU接收到的以太网报文发送给第二协转芯片,根据来自第二协转芯片的El接口报文的目的MAC地址,将来自第二协转芯片的El接口报文发送给CPU。通过第二协转芯片,进一步使得串口服务器可以通过El方式进行数据传输。
较佳地,所述CPU,从交换芯片接收以太网报文,从中获取串口标识,根据串口标识将该以太网报文发送给该串口标识所对应的第一协转芯片。
较佳地,所述第一协转芯片中的MII,包括MII上联口和MII下联口 ;第一协转芯片通过MII上联口与CPU相连,通过MII下联口与另一第一协转芯片相连,从而使得多个第一协转芯片可以级联,串口服务器的串口数量也随之增多。较佳地,所述第一协转芯片中的每路串口对应一接收缓冲区,当串口的接收缓冲区内的数据长度达到预先设置的强制发送长度的包长阈值时,所述第一协转芯片将该接收缓冲区内的数据全部打包成以太网报文后通过MII上联口发给CPU。较佳地,所述第一协转芯片中的每路串口还对应一强制发送时间,进一步,当串口在强制发送时间内没有收到数据时,将当前该串口的接收缓冲区内的数据按照实际长度打包并通过MII上联口发给CPU。较佳地,所述第一协转芯片从CPU接收到以太网报文时,从中解析出媒体接入控制MAC地址,判断本地是否有该MAC地址对应的串口,如果有,则从该串口发送该以太网报文中的数据,否则,通过MII下联口将该以太网报文发送给另一第一协转芯片。较佳地,所述第一协转芯片还通过控制总线与CPU相连,CPU通过控制总线下发为第一协转芯片中的串口配置的MAC地址,使得第一协转芯片的串口相关参数的配置更加灵活。较佳地,不同串口对应不同的MAC地址。丰富的接口和灵活的访问方式,使本发明实施例具有较好前景。下面本发明实施例以双以太网口、双El接口的串口服务器为例,进行举例说明。CPU选用freescale生产的具有双以太网口的MPC8314,第一个以太网接口用于与交换芯片通讯,CPU通过交换芯片与外网互联;第二个以太网接口与第一协转芯片(用于实现MII与串口数据的互转)通讯。CPU的功能包括从交换芯片侧接收以太网报文并解析,若以太网报文内容符合约定,即包含指定串口 ID、数据及数据长度,则将其中的数据从报文中剥离出来,确定该串口 ID对应的第一协转芯片,并重新打包成以太网报文,通过第二个以太网接口发送给该第一协转芯片,第一协转芯片会根据报文内容将数据转发至相应的串口 ;同样的,第一协转芯片将从串口收到的数据打包成以太网报文,经MII发送给CPU,CPU解析收到的以太网报文,将报文中的SA (源MAC地址)转换成相应的串口号,将以太网报文中的数据解析出来,串口号、数据等信息再重新封装成以太网报文后,通过交换芯片发送给对端主机。本发明实施例选用的内存为两片64MB DDR SDRAM (dual date rate SDRAM,双倍速率SDRAM)的内存组成128MB,闪存采用的是一片8MB flash,保证系统快速高效的运行。本发明实施例使用的与CPU互通的交换芯片是由Micrel Semiconductor生产的具有5个以太口的交换芯片KS8995M,交换芯片对外提供两个以太网口,这样就可以实现多机访问。使用另外两个MII与两片第二协转芯片(用于实现El接口数据与MII数据的互转,可采用现有芯片)互通,第5个MII与CPU互通;增加El接口,即增加了第二协转芯片,是本发明实施例的一个创新点,不仅增加了串口业务传输的方式,同时由于交换芯片的存在,使本发明实施例提供的串口服务器可以作为El接口数据与以太网数据的协转设备,应用于一些特殊的应用环境,从而增加了产品的实用性;本发明实施例提供的第一协转芯片,用于实现MII数据与串口数据的互转,是本发明实施例的另一个创新点,MII分为MII上联口和MII下联口,该芯片提供一个MII上联口,一个MII下联口,4路串口,每路串口被分配了一个唯一的MAC地址,完成串口数据到MII上联接口之间的数据转换和传输,同时,MII下联口的数据可以通过本芯片传输到MII上联口。MII分组数据格式,为标准以太MAC格式,由目的地址(destination address,DA)、源地址(source address, SA)、协议类型(type, TP)、净荷(PAYLOAD)和帧检查顺序(FrameCheckSequence, FCS)字段组成。MII下联口提供转换芯片的级联功能,当系统需要多个串口接入时,可以通过MII下联口向下连接多个第一协转芯片来完成。下面针对第一协转芯片进行详细说明。该芯片是利用现场可编程门阵列(Field-Programmable Gate Array,即FPGA)开发的一款协转芯片,提供一个MII上联口,一个MII下联口,4路串口,完成串口数据到MII上联口之间的数据转换和传输,同时MII下联口的数据可以通过本芯片传输到MII上联口。MII分组数据格式为标准以太MAC格式,由DA/SA/TP/PAYLOAD/FCS字段组成。每路串口都被分配了一个唯一的MAC地址,不同串口的MAC地址不同,该MAC地址可以通过控制总线由CPU进行任意配置,第一协转芯片通过解析从MII上联口收到的以太网报文中的MAC地址,将报文中的数据转发到片内具有相同MAC地址的串口,如果解析出来的MAC地址在本芯片内不存在,则报文会被转发至MII下联口。同样的,第一协转芯片将从串口接收到数据打包成标准的以太包格式,并将串口已分配的MAC地址填入SA段,然后发送到MII上联口。MII下联口提供协转芯片的级联功能,当系统需要多个串口接入时,可以通过下联口向下连接多个第一协转芯片来完成。为了提高数据传输的可靠性,在MII上联口接收侧提供报文接收状态查询指示,解决串口与MII之间由于数据突发可能造成的数据丢失,满足数据可靠传输的要求。第一协转芯片的结构如图2所示,各模块功能描述如下控制模块CPU对协转芯片的控制是通过控制模块实现的。CPU与协转芯片的控制模块之间采用8位宽地址数据复用总线连接,通过控制模块,CPU可以设置并查询各串口的MAC地址、波特率、缓冲区阈值、强制发送时间、强制发送长度等信息,并可以查询其他模块的统计信息等内容;串口处理模块该模块主要实现对协转芯片串口数据收发的控制,它包含了 3个子模块第二统计模块和buffer,主要用于统计协转芯片发送字节数、接受字节数等信息以及buffer使用情况和数据溢出情况,便于流量控制和故障诊断;收发模块(包括TX和RX),主要是将从上位机收到的串口数据分发到指定的串口缓冲区,并将从各串口收到的数据按照强制发送时间和强制发送长度(见下文)等规则转发至调度模块准备封装成以太网报文;第一统计模块该模块主要用于统计CPU与协转芯片之间收发数据的字节数、正确报文数、错误报文数,便于流量控制和故障诊断;其中,所述正确报文数和错误报文数,可以通过检测FCS (Frame Check Sequence,帧校验序列)判断报文的正确性,从而确定正确报文数和错误报文数。MII数据处理模块该模块主要实现MII数据的分发及统计工作,主要包括3个子模块第三统计模块,该模块主要用于统计协转芯片与下联协转芯片之间收发字节数、正确报文数、错误报文数等信息,便于故障诊断;收发模块(包括TX和RX),该子模块主要是对从上联MII收到的以太报文进行预处理,决定报文属于本芯片还是转发至下联口,并将本芯片组织的和下联口发来的以太报文发送至上联口; 报文处理模块包括报文解析模块和报文封装模块,其中,报文解析模块主要是解析以太报文,根据报文中的目的MAC地址,将净荷数据发送至下一处理单元;报文封装模用于将从串口收到的数据重新封装成以太网报文,并将该串口对应的MAC地址填入报文中源MAC地址的位置,然后发送至MII数据处理模块;该协转芯片功能如下提供8位数据、地址独立的并行总线供CPU访问;
每路串口具有一个收发数据统计模块,用于统计串口数据收发字节数,接收校验错字节数。CPU可以通过控制总线获取该统计信息,用于收发数据计数以及故障诊断,增强该协转芯片的易用性;MII具有收发数据统计模块MII上联口接收数据包数和发送数据包数,本地收发数据包数,本地接收错误包数,级联口收发数据包数。这些统计信息可以作为调试手段,从而提高了该协转芯片的易维护性;芯片为每路串口提供了一个1024字节的接收缓冲区,即每路串口对应一接收缓冲区,并进一步提供为从每路串口接收到的数据向MII侧发包的包长设置,即上述强制发送长度的设置,每一接收缓冲区对应一强制发送长度,每一接收缓冲区对应的强制发送长度可以相同,也可以不同。若没有此设置,串口接收一个字节就会向MII上联口发送一个以太包,当串口满速接收数据时,就会产生大量的以太包,而每个以太包只包含一个字节的有效数据,这样一来,虽然降低了串口数据转发到MII侧的时延,但是造成了以太包利用率低下,而且使CPU收到大量的以太包,明显增加了 CPU的负荷。有了这一设置,只有当串口的接收缓冲区内数据长度达到设置的强制发送长度的包长阈值时,芯片才会将缓冲区内的数据全部打包成以太网报文发到MII上联口,这样就能够明显提高以太包的利用率,减少以太包数量,降低CPU的负荷。包长阈值采用8位寄存器设置,整个缓冲区为1024字节,因此最小设置单位为4字节,例如设置包长阈值为16时,当缓冲区内数据达到4x16 = 64字节后,就会触发向MII侧转发数据包的动作。芯片提供每路串口接收数据向MII上联口侧的强制发送时间设置,即每一串口对应一强制发送时间,每一串口对应的强制发送时间可以相同,也可以不同。例如,可以采用一个8位寄存器对该时间进行设置,单位可以是lOOus,最大可设置255xl00us = 25. 5ms。强制发送时间,是指当一定时间内串口没有收到数据后,需要将当前该串口的接收缓冲区内的数据按照实际长度打包并发送到MII上联口。所述包长设置,可以提高以太包利用率并减少以太包数量,但同时带来的问题是,如果接收缓冲区内接收的数据没有达到阈值,并且串口不再有数据进来,那么就不会触发MII发送数据,这就造成了缓冲区内的部分数据无法被及时转发到MII,因此设计了强制发送时间设置;MII支持双向1024字节数据传输,数据采用标准MAC格式进行封装,源MAC、目的MAC地址、类型(TYPE)域的值均由CPU配置,TYPE域默认值为0x8810 ;提供MII的级联功能,用于多块芯片的扩展;
提供MII上联口 /下联口数据活动指示灯接口 ;每路串口有一个独立的发送缓冲区,大小为1024字节,该缓冲区的使用情况可以通过控制总线被CPU实时查询,用8位寄存器表示,即查询精度为整个缓冲区的1/256,例如查询结果为100,说明当前缓冲区有100x1024 + 256 = 400字节数据,该查询功能可以用于防止缓冲区溢出造成数据丢失由于串口的发送速度远远低于MII的数据传输速度,因此CPU每次向指定串口发送数据时,都要先查询一下该串口的发送缓冲区数据量是否达到一定阈值,例如200 (说明缓冲区有200x1024 + 256 = 800字节数据),若达到阈值,则取消本次发送,若缓冲区内数据量低于这一阈值,则可以向该串口发送数据;提供串口数据活动指示灯,有数据时,以I秒频率闪烁,无数据时灭;
提供接收数据错误指示灯,有错误时,以I秒频率闪烁,无错误时灭。综上,第一协转芯片具有良好的可扩展性,多个芯片级联可以实现4xN路串口,级联结构如图3所示,理论上只要所有级联芯片的串口的MAC地址不冲突就可以继续增加级联。当然,当多个芯片级联时,串口数量的随之增多,对CPU的处理能力就会有更高要求。并且,由此可见,本发明实施例提供的一种数据传输的方法,包括通过介质无关接口 MII从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU。下面介绍一下本发明实施例的几种典型用法的数据流转过程。一、以太网与串口的数据交互过程。这是串口服务器的一种经典用法,如图4中虚线所示,数据报文通过以太网接口进入串口服务器后,首先由交换芯片转发给CPU,CPU解析报文中的串口端口号等信息,然后提取数据并重新打包成标准的以太包,将解析出来的串口端口号转换成相应串口的MAC地址,并填入以太包中的目的地址DA段,通过CPU与第一协转芯片的MII(MII_1接口)发送给第一协转芯片;同样的,第一协转芯片串口接收到数据后,将串口数据组成标准的以太包,通过MII上联口发送给CPU,CPU报文中源地址SA段转换成对应的串口端口号,重组报文并通过CPU与交换芯片的Mil (MIIJ)接口 )发送到以太网。二、El与串口的数据交互过程。El与串口的数据交互过程,如图5中虚线所示,数据报文通过El接口进入串口服务器后,由第二协转芯片转换成以太网报文并发送至交换芯片,再由交换芯片转发给CPU,CPU解析报文中的串口端口号等信息,然后提取数据并重新打包成标准的以太包,将解析出来的串口端口号转换成相应串口的MAC地址,并填入以太包的DA段,通过MII_1接口发送给第一协转芯片;同样的,第一协转芯片串口接收到数据后,将串口数据组成标准的以太包通过上联口发送给CPU,CPU将以太网包中源地址SA段转换成串口端口号,重组报文并通过MII_0接口发送到交换芯片,交换芯片将报文转发给第二协转芯片,第二协转芯片将以太网报文封装成El格式的报文并发送出去。三、以太网与El接口的数据交互过程。除了串口服务器的基本功能,本发明实施例还实现了以太网到El接口的协议转换功能,以太网与El接口的数据交互过程,如图6中虚线所示,第二协转芯片(El OMII)是一款比较常见的协转芯片,可以将以太网报文封装成El格式的报文,同样可以把El格式的报文封装成以太网报文。因此,如图6中虚线所示,收到的El数据被第二协转芯片转换成以太网报文并转发给交换芯片,交换芯片可以将该报文转发到相应的以太口,反之亦然。这种设计无疑会增加串口服务器使用的灵活性相应地,在串口服务器侧,本发明实施例提供的一种数据传输的方法,包括第一协转芯片从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU ;CPU通过第一以太网口从交换芯片接收以太网报文并解析,从中获取数据,并重新打包成以太网报文,将该以太网报文通过第二以太网口发送给第一协转芯片;以及,CPU通过第二以太网口接收第一协转芯片发送的以太网报文并解析,从中获取数据,并重新打包成以太网报文后通过第一以太网口发送给交换芯片;交换芯片根据从主机接收到的以太网报文的MAC地址,将从主机接收到的以太网报文发送给CPU,以及,根据来自CPU的以太网报文的MAC地址,将来自CPU的以太网报文发
送给主机。较佳地,该方法还包括第二协转芯片从El接口接收El接口报文,将El接口报文转换为以太网报文,将该以太网报文通过MII发送给交换芯片;以及,通过MII从交换芯片接收以太网报文,将以太网报文转换为El接口报文,将该El接口报文从El接口发送出去;所述交换芯片根据从主机接收到的以太网报文的MAC地址,将从主机接收到的以太网报文发送给第二协转芯片,根据来自第二协转芯片的El接口报文的MAC地址,将来自第二协转芯片的El接口报文发送给主机;以及,根据从CPU接收到的以太网报文的MAC地址,将从CPU接收到的以太网报文发送给第二协转芯片,根据来自第二协转芯片的El接口报文的MAC地址,将来自第二协转芯片的El接口报文发送给CPU。较佳地,所述第一协转芯片中的每路串口对应一接收缓冲区,当串口的接收缓冲区内的数据长度达到预先设置的强制发送长度的包长阈值时,所述第一协转芯片将该接收缓冲区内的数据全部打包成以太网报文后通过MII上联口发给CPU。较佳地,所述第一协转芯片中的每路串口还对应一强制发送时间,进一步,当串口在强制发送时间内没有收到数据时,将当前该串口的接收缓冲区内的数据按照实际长度打包并通过MII上联口发送给CPU。较佳地,所述第一协转芯片从CPU接收到以太网报文时,从中解析出媒体接入控制MAC地址,判断本地是否有该MAC地址对应的串口,如果有,则从该串口发送该以太网报文中的数据,否则,通过MII下联口将该以太网报文发送给另一第一协转芯片。在第一协转芯片侧,本发明实施例提供的一种数据传输的方法,包括通过介质无关接口 MII从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU。
综上所述,本发明实施例中设计的串口服务器包括多以太口、多El接口,有效的解决了多机访问、El链路传输等问题,并能够提供El接口与以太网的协转功能,使本发明实施例能够适应多种应用环境,并降低了成本。并且,第一协转芯片,创新的实现了 MII与串口数据的转换功能,并允许多芯片级联实现4xN串口服务器,大大的增加了开发的灵活性。经过严格的测试和广泛的应用,本发明实施例提供的串口服务器的应用更广泛、数据转换效率高、运行稳定可靠,大大降低成本。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机 程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种串口服务器,包括CPU、交换芯片,内存DDR和闪存flash,其特征在于,该串口服务器还包括至少一个第一协转芯片; 第一协转芯片包括媒质无关接口 MII和多个串口,通过MII与CPU相连,用于从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU ; 所述CPU包括第一以太网口和第二以太网口,CPU通过第一以太网口从交换芯片接收以太网报文并解析,从中获取数据,并重新打包成以太网报文,将该以太网报文通过第二以太网口发送给第一协转芯片;以及,CPU通过第二以太网口接收第一协转芯片发送的以太网报文并解析,从中获取数据,并重新打包成以太网报文后通过第一以太网口发送给交换 -H-* I I 心片; 所述交换芯片包括多个以太网口,其中包括用于与多个主机通讯的多个以太网口,以及用于与CPU通讯的以太网口 ;所述交换芯片根据从主机接收到的以太网报文的目的MAC地址,将从主机接收到的以太网报文发送给CPU,以及,根据来自CPU的以太网报文的目的MAC地址,将来自CPU的以太网报文发送给主机。
2.根据权利要求I所述的串口服务器,其特征在于,该串口服务器还包括至少一个第二协转芯片; 所述交换芯片的多个以太网口还包括用于与一个或多个第二协转芯片通讯的以太网n ; 第二协转芯片通过介质无关接口 MII与交换芯片相连,用于从El接口接收El接口报文,将El接口报文转换为以太网报文,将该以太网报文通过MII发送给交换芯片;以及,通过MII从交换芯片接收以太网报文,将以太网报文转换为El接口报文,将该El接口报文从El接口发送出去; 所述交换芯片还用于根据从主机接收到的以太网报文的MAC地址,将从主机接收到的以太网报文发送给第二协转芯片,根据来自第二协转芯片的El接口报文的目的MAC地址,将来自第二协转芯片的El接口报文发送给主机;以及,根据从CPU接收到的以太网报文的目的MAC地址,将从CPU接收到的以太网报文发送给第二协转芯片,根据来自第二协转芯片的El接口报文的目的MAC地址,将来自第二协转芯片的El接口报文发送给CPU。
3.根据权利要求I所述的串口服务器,其特征在于,所述CPU,从交换芯片接收以太网报文,从中获取串口标识,根据串口标识将该以太网报文发送给该串口标识所对应的第一协转芯片。
4.根据权利要求I所述的串口服务器,其特征在于,所述第一协转芯片中的MII,包括MII上联口和MII下联口 ;第一协转芯片通过MII上联口与CPU相连,通过MII下联口与另一第一协转芯片相连。
5.根据权利要求4所述的串口服务器,其特征在于,所述第一协转芯片中的每路串口对应一接收缓冲区,当串口的接收缓冲区内的数据长度达到预先设置的强制发送长度的包长阈值时,所述第一协转芯片将该接收缓冲区内的数据全部打包成以太网报文后通过MII上联口发给CPU。
6.根据权利要求5所述的串口服务器,其特征在于,所述第一协转芯片中的每路串口还对应一强制发送时间,进一步,当串口在强制发送时间内没有收到数据时,将当前该串口的接收缓冲区内的数据按照实际长度打包并通过MII上联口发给CPU。
7.根据权利要求4所述的串口服务器,其特征在于,所述第一协转芯片从CPU接收到以太网报文时,从中解析出媒体接入控制MAC地址,判断本地是否有该MAC地址对应的串口,如果有,则从该串口发送该以太网报文中的数据,否则,通过MII下联口将该以太网报文发送给另一第一协转芯片。
8.根据权利要求7所述的串口服务器,其特征在于,所述第一协转芯片还通过控制总线与CPU相连,CPU通过控制总线下发为第一协转芯片中的串口配置的MAC地址。
9.根据权利要求8所述的串口服务器,其特征在于,不同串口对应不同的MAC地址。
10.一种协转芯片,其特征在于,该协转芯片包括介质无关接口 MII和多个串口 ; 该协转芯片还包括 处理模块,用于通过MII从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU。
11.根据权利要求10所述的协转芯片,其特征在于,所述MII,包括MII上联口和MII下联口 ;该协转芯片通过MII上联口与CPU相连,通过MII下联口与另一协转芯片相连。
12.根据权利要求11所述的协转芯片,其特征在于,所述处理模块,从CPU接收到以太网报文时,从中解析出媒体接入控制MAC地址,判断本地是否有该MAC地址对应的串口,如果有,则从该串口发送该以太网报文中的数据,否则,通过MII下联口将该以太网报文发送给另一协转芯片。
13.一种数据传输的方法,其特征在于,该方法包括 第一协转芯片从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU ; CTO通过第一以太网口从交换芯片接收以太网报文并解析,从中获取数据,并重新打包成以太网报文,将该以太网报文通过第二以太网口发送给第一协转芯片;以及,CPU通过第二以太网口接收第一协转芯片发送的以太网报文并解析,从中获取数据,并重新打包成以太网报文后通过第一以太网口发送给交换芯片; 交换芯片根据从主机接收到的以太网报文的MAC地址,将从主机接收到的以太网报文发送给CPU,以及,根据来自CPU的以太网报文的MAC地址,将来自CPU的以太网报文发送给主机。
14.根据权利要求13所述的方法,其特征在于,该方法还包括 第二协转芯片从El接口接收El接口报文,将El接口报文转换为以太网报文,将该以太网报文通过MII发送给交换芯片;以及,通过MII从交换芯片接收以太网报文,将以太网报文转换为El接口报文,将该El接口报文从El接口发送出去; 所述交换芯片根据从主机接收到的以太网报文的MAC地址,将从主机接收到的以太网报文发送给第二协转芯片,根据来自第二协转芯片的El接口报文的MAC地址,将来自第二协转芯片的El接口报文发送给主机;以及,根据从CPU接收到的以太网报文的MAC地址,将从CPU接收到的以太网报文发送给第二协转芯片,根据来自第二协转芯片的El接口报文的MAC地址,将来自第二协转芯片的El接口报文发送给CPU。
15.根据权利要求13所述的方法,其特征在于,所述第一协转芯片中的每路串口对应一接收缓冲区,当串口的接收缓冲区内的数据长度达到预先设置的强制发送长度的包长阈值时,所述第一协转芯片将该接收缓冲区内的数据全部打包成以太网报文后通过MII上联口发给CPU。
16.根据权利要求15所述的方法,其特征在于,所述第一协转芯片中的每路串口还对应一强制发送时间,进一步,当串口在强制发送时间内没有收到数据时,将当前该串口的接收缓冲区内的数据按照实际长度打包并通过MII上联口发送给CPU。
17.根据权利要求13所述的方法,其特征在于,所述第一协转芯片从CPU接收到以太网报文时,从中解析出媒体接入控制MAC地址,判断本地是否有该MAC地址对应的串口,如果有,则从该串口发送该以太网报文中的数据,否则,通过MII下联口将该以太网报文发送给另一第一协转芯片。
18.一种数据传输的方法,其特征在于,该方法包括 通过介质无关接口 MII从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据; 将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU。
全文摘要
本发明公开了一种串口服务器、协转芯片及数据传输方法,用以实现具有MII数据与串口数据的转换功能的串口服务器。本发明提供的一种串口服务器包括至少一个第一协转芯片;第一协转芯片包括MII和多个串口,通过MII与CPU相连,用于从CPU接收以太网报文,从以太网报文中解析出媒体接入控制MAC地址,确定该MAC地址对应的串口,从该串口发送该以太网报文中的数据;以及,将从串口接收到的数据打包成以太网报文,其中携带该串口对应的MAC地址,然后将该以太网报文发送给CPU;CPU,从交换芯片接收以太网报文,将该以太网报文发送给第一协转芯片;以及,将从第一协转芯片接收的以太网报文发送给交换芯片。
文档编号H04L29/06GK102624738SQ201210085810
公开日2012年8月1日 申请日期2012年3月28日 优先权日2012年3月28日
发明者孙忠波, 李英喜, 王再众, 郭志惠 申请人:瑞斯康达科技发展股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1