一种应用处理接口电路及方法与流程

文档序号:16536370发布日期:2019-01-08 19:56阅读:206来源:国知局
一种应用处理接口电路及方法与流程
本发明属于网络控制器边带接口
技术领域
,具体涉及一种灵活可靠的应用处理接口电路及方法,涉及以太网控制器与基板管理控制器(baseboardmanagementcontroller,bmc)之间的接口。
背景技术
:以太网是当前广泛应用的局域网通用通信协议标准,该标准与ieee802.3系列标准类似,其规定了物理层连接、电信号及介质访问控制层(mac)协议的内容。以太网控制器是网络互联的核心器件之一,具有低成本、低功耗及结构灵活的特点,此外,其具备优良的容错机制,且可支持同轴电缆、双绞线、光纤等多种连接方式,能够适应多种应用环境。基于以太网控制器,两台主机之间可以进行联网通信,此外,以太网控制器还可以作为bmc与网络端口之间进行数据交互的桥梁。bmc可以通过以太网控制器获取需要的网络数据信息,或是通过命令控制以太网控制器或bmc与以太网控制器之间接口的工作模式。nc-si为bmc与以太网控制器之间的一种接口规范,该规范主要目的是为了便于实施bmc对于以太网控制器的管理性和功能性服务,其所规定的数据交互主要涉及基于ieee802.3协议的passthrough、异步事件、命令及响应帧的传递。nc-si接口独立的进行bmc的命令处理或passthrough帧传递,通常是不能被主机访问的。对于以太网控制器而言,其一方面需要进行其与主机之间的数据交互,还要为其与bmc之间的边带数据交互提供支持。以太网控制器在保证其与主机之间的数据交互可靠性和有效性的同时,还不能影响其与bmc之间的数据交互。由于bmc与以太网控制器所连接的主机都需要以太网控制器提供服务,二者之间存在竞争关系,因此,调和bmc与主机对于以太网控制器的需求矛盾,能够提高以太网控制器的数据业务处理效率。技术实现要素:本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种灵活可靠的应用处理接口电路及方法,适用于以太网控制器与bmc之间信息交互。本发明采用以下技术方案:一种应用处理接口电路,包括简化介质独立接口、接收帧处理、发送帧处理、异步事件处理、gpio接口、寄存器及控制单元,简化介质独立接口rmiimac实现接口电路与bmc的数据帧收发;接收帧处理单元对bmc的数据帧进行接收,将passthrough帧经通道仲裁后送至系统总线,提取命令帧参数,并进行响应帧组帧;发送帧处理单元根据应用处理电路的配置及优先级设置,将passthrough帧、异步事件帧或响应帧发送至bmc;控制单元进行应用处理电路的控制,包括电路状态迁移控制、命令处理以及原因码与响应码产生;寄存器单元存储配置信息及相关的命令配置参数;异步事件处理单元根据异步事件产生的类型,进行异步事件帧的组帧和发送;gpio接口进行可编程控制。具体的,控制单元对数据接收与发送进行管控,根据bmc对于以太网控制器或通道的命令帧,控制应用处理接口电路的工作模式与工作状态,并产生与当前所处理命令相对应的响应码与原因码。具体的,rmiimac为应用处理接口电路与bmc之间的数据帧收发接口,由通道0~n共享使用。具体的,接收帧处理单元包括接收帧存储、管理、接收帧解析、接收帧过滤、响应产生和接收passthrough帧仲裁模块,接收帧存储模块采用先入先出fifo结构,存储从rmiimac接口接收到的数据帧,接收帧管理模块对fifo的数据写入和读出进行控制:仅当整帧数据存储完成后,才进行fifo读操作;如果接收存储单元的占用量高于接收阈值,则帧存储管理单元通过rmiimac向bmc发送暂停帧,在暂停帧所设定的暂停时间内,暂停bmc的数据帧发送,直到接收帧处理单元的占用量低于阈值;接收帧解析模块从接收存储单元读取数据帧,并识别数据帧的帧头信息,将通过crc检测的passthrough帧送至接收帧过滤模块进行过滤,对命令帧进行命令参数、校验和以及crc检测,将有效命令的参数送至响应产生模块,丢弃非法数据帧;vlan帧长度大于1522个字节或非vlan帧长度大于1518个字节,被视为非法帧并丢弃;接收帧过滤模块依据源mac地址滤波器的配置情况,滤除源地址不匹配的passthrough帧,并将源地址匹配的passthrough帧送至接收passthrough帧仲裁单元;源mac地址滤波器由bmc发出的设置mac地址命令进行配置;响应产生模块从读取的有效命令帧中获取命令参数,进行响应帧组帧,包括非法命令帧的响应帧组帧,对控制器数据、passthrough、命令三种数据帧统计,响应产生模块将收集接收、发送和异步事件处理单元的相应统计计数值,进行获取控制器数据帧统计信息命令、接口命令帧统计信息命令和接口passthrough帧统计信息命令的响应帧组帧,在相应响应帧发送完成后,各相关计数器将自动清零;接收passthrough帧仲裁模块依据通道0~n的优先级和状态,确定可以进行passthrough帧接收的通道,在通道优先级设置时,将通道的优先级设置为通道0~n依次降低,各通道在数据接收时,由仲裁器根据通道0~n的使能状态进行接收排序,具备接收条件的通道,依次进行一帧完整passthrough帧的接收。具体的,发送帧处理单元包括发送passthrough帧仲裁、发送passthrough帧解析、发送passthrough帧过滤、发送帧仲裁、发送存储和管理模块;发送passthrough帧仲裁模块根据通道0~n的状态以及通道的优先级设置,确定通道进行passthrough帧发送的顺序;通道0~n利用共享的发送通路进行passthrough帧发送,将通道的发送优先级设置为通道0~n依次降低,在数据帧发送时,由仲裁器根据通道0~n的状态进行发送排序,具备发送条件的通道,依次进行一帧完整passthrough帧的发送;发送passthrough帧解析模块对所要发送的passthrough帧进行解析,提取目的地址、以太网帧类型、vlan标志以及广播帧的udp字段信息,并进行发送passthrough帧统计;发送帧过滤模块依据目的地址、以太网帧类型、vlan标志、广播帧的udp字段,滤除不匹配滤波器配置的发送passthrough帧,将匹配滤波器配置的passthrough帧送至发送帧仲裁模块;目的地址、vlan标志和广播帧udp滤波器,由bmc通过设置mac地址、设置vlan滤波器、vlan使能、广播滤波使能、广播滤波不使能、全局组播滤波使能和全局组波滤波不使能命令进行配置;发送帧仲裁模块将依据电路的配置情况,确定passthrough帧、异步事件帧和响应帧的发送顺序,并按顺序存储在发送帧存储模块;发送帧存储模块采用fifo结构,只要fifo非空即可被读取,对于fifo写操作,通过阈值对fifo写操作进行控制,如果fifo的占用量高于阈值,则暂停fifo的写操作,直到当前fifo的占用量低于阈值或暂停超时为止;通过发送帧管理模块控制fifo的读写操作。具体的,寄存器单元实现应用处理接口电路与主机、gpio之间的信息交互,包括主机配置信息、通道的链路状态、链路设置和获取链路状态命令参数以及gpio配置信息。一种应用处理接口电路处理方法,控制单元依据主机和bmc对于应用处理接口电路的配置,处理命令帧,并产生命令所对应响应的原因码与响应码,控制整个电路及相应通道的工作状态;上电后,应用处理接口电路进入初始化态,在初始化完成后,进入控制器未被选中态;当接收到bmc发送的控制器选择、清除初始化或其它指向该控制器或控制器某一通道的命令后,电路进入控制器选中态;当接收到撤销选中命令后,电路进入控制器撤销选中态;rmiimac单元通过rmii接口接收bmc发送的命令帧和passthrough帧,或是将响应帧、异步事件帧和passthrough帧送至bmc;接收帧处理单元接收和处理bmc发送的命令帧和passthrough帧;发送帧处理单元发送passthrough帧仲裁模块判断各通道发送passthrough帧的先后顺序,通过发送passthrough帧解析模块解析所要发送的passthrough帧,丢弃错误帧,提取合法的发送passthrough帧信息,根据滤波器的配置状态,过滤passthrough帧,并送至发送仲裁模块,由发送仲裁模块根据当前状态,确定响应帧、异步事件帧或passthrough帧的发送顺序,依次存入发送存储单元,并最终通过rmiimac接口送至bmc,进行发送帧统计;异步事件处理单元根据异步事件状态寄存器中记录的链路状态改变、通道状态变为初始化态以及网络控制器所连接主机的工作状态发生变化三种异步事件,进行异步事件帧的组帧操作,并按异步事件发生的时间先后,依次发送异步事件帧;寄存器单元实现主机配置信息、通道的链路状态、链路设置和获取链路状态命令的参数、gpio配置信息以及bmc对于电路配置参数的存储,访问地址为基地址+偏移地址。具体的,状态迁移过程中应用处理接口电路在上电初始化完成后,进行bmc命令的接收与处理;在上电初始化、通道初始化过程中不进行passthrough帧的处理,丢弃此时收到的passthrough帧。具体的,接收帧处理单元进行接收流量控制,存储所接收的数据帧,根据以太网的帧类型,对接收到的passthrough帧和命令帧分别进行处理如下:通过crc校验的合法passthrough帧经过滤、仲裁后由相应通道送至系统总线;命令帧进行命令参数有效性、校验和以及crc检测,合法命令帧将进行命令参数提取,并依据所提取的参数进行响应帧组帧;丢弃不合法的passtrough帧和命令帧,进行接收帧统计,为bmc获取接收帧统计信息提供支持。具体的,链路设置和获取链路状态命令的处理,基于主机中断程序,需要主机协助完成,具体实现方法如下:s1、响应帧产生模块接收到链路设置或获取链路状态命令时,将向主机发出中断请求信号,如果是链路设置命令,响应帧产生模块将链路设置命令的参数存入应用处理接口电路的链路设置寄存器;s2、主机在接收到中断信号后,判断中断类型是属于链路设置还是获取链路状态命令:如果是链路设置命令中断,主机读取链路设置寄存器,并将读取的链路设置参数写入以太网控制器的相应状态寄存器;如果是获取链路状态命令中断,主机读取以太网控制器的相应状态寄存器,并将获取的状态信息写入应用处理接口电路的获取链路状态寄存器。s3、在步骤s2操作完成后,主机将应用处理电路的命令处理寄存器中的命令处理完成标志位置位,并清除中断。与现有技术相比,本发明至少具有以下有益效果:本发明一种应用处理接口电路,利用rmiimac单元实现电路与bmc的数据帧收发;利用接收单元对bmc的数据帧进行接收,将passthrough帧经通道仲裁后送至系统总线,提取命令帧的相关参数,并进行响应帧组帧;利用发送帧处理单元,根据应用处理电路的配置及优先级设置,将passthrough帧、异步事件帧或响应帧发送至bmc;利用控制单元进行应用处理电路的控制;利用寄存器单元存储配置信息及相关的命令配置参数;利用异步事件处理单元,根据异步事件产生的类型,进行异步事件帧的组帧和发送;利用gpio接口进行可编程控制,应用处理接口电路是bmc与以太网控制器之间的接口,能够进行网络数据与bmc之间的数据处理,可以通过主机和gpio接口对其进行访问,采用有效的存储管理、错误帧处理、流量控制策略,实现了可靠高效的bmc与以太网控制器的数据接口。进一步的,接收单元采用基于阈值的流量管理接收策略,能够有效解决接收fifo溢出问题,此外,接收单元具备错误帧处理功能,可以接收有效命令和passthrough帧,并丢弃无效接收命令和passthrough帧,提高了数据帧接收的效率和可靠性。进一步的,发送帧处理单元采用基于阈值的分割转发策略,有效减小了发送存储单元的大小,同时,采用基于阈值的流量控制策略,避免了发送存储单元fifo溢出,此外,发送帧处理单元具备错误帧处理功能,可以发送有效响应、异步事件和passthrough帧,并丢弃无效的数据帧,提高了数据帧的发送效率。进一步的,采用仲裁策略、数据帧过滤机制和可扩展的通道设置,能够满足bmc对于以太网控制器数据服务的不同需求。进一步的,采用中断请求主机的方式,能够有效利用主机与网络数据交互的空闲时间进行链路设置与获取链路状态命令的处理,降低了bmc与以太网控制器所连接主机占用以太网控制器的冲突概率;本发明还公开一种应用处理接口电路处理方法,其适于处理bmc与以太网控制器之间的边带数据交互业务,提出高效的存储管理机制,提高了bmc与以太网控制器之间数据帧的存储与处理效率;采用校验和、循环冗余校验(crc)算法以及错误帧丢帧策略,提高了数据帧处理的可靠性,适于进行链路设置与获取链路状态两种特殊bmc命令的处理方法,应用处理接口电路能够有效利用主机与网络数据交互的空闲时间进行上述特殊命令的处理,避免主机数据传输与bmc特殊命令处理过程发生冲突。综上所述,本发明实现了可靠高效的bmc与以太网控制器的数据接口,能够提高边带数据收发的效率和可靠性,并解决了bmc与以太网控制器所连接主机对于以太网控制器访问的冲突问题。下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。附图说明图1为应用处理接口电路的应用示意图;图2为应用处理接口电路的实现框图;图3为控制单元的状态迁移图;图4为数据帧格式图,其中,(a)为passthrough帧,(b)为命令帧,(c)为响应帧,(d)为异步事件帧;图5为数据帧接收状态迁移图;图6为应用处理接口电路的数据流统计图;图7为数据帧发送状态迁移图;图8为发送passthrough帧过滤数据流图。具体实施方式本发明提供了一种灵活可靠的应用处理接口电路,适于处理bmc与以太网控制器之间的边带数据交互业务;提出高效的存储管理机制,提高了bmc与以太网控制器之间数据帧的存储与处理效率;采用校验和循环冗余校验(crc)算法以及错误帧丢帧策略,提高了数据帧处理的可靠性。同时,本发明还公开了一种适于进行链路设置与获取链路状态两种特殊bmc命令的处理方法,采用该方法,应用处理接口电路能够有效利用主机与网络数据交互的空闲时间进行上述特殊命令的处理,避免主机数据传输与bmc特殊命令处理过程发生冲突。另一方面,本发明所述应用处理接口电路支持可扩展的数据通道以及根据bmc配置对数据帧进行过滤的功能,能够满足bmc对于数据帧的不同需求。本发明一种应用处理接口电路及方法,利用rmiimac单元实现接口电路与bmc的数据帧收发;利用接收帧处理单元对bmc的数据帧进行接收,将passthrough帧经通道仲裁后送至系统总线,提取命令帧的相关参数,并进行响应帧组帧;利用发送帧处理单元,根据应用处理电路的配置及优先级设置,将passthrough帧、异步事件帧或响应帧发送至bmc;利用控制单元进行应用处理电路的控制,包括电路状态迁移控制、命令处理以及原因码与响应码产生;利用寄存器单元存储配置信息及相关的命令配置参数;利用异步事件处理单元,根据异步事件产生的类型,进行异步事件帧的组帧和发送;利用gpio接口进行可编程控制。应用处理接口电路包括简化介质独立接口(rmiimac)、接收帧处理、发送帧处理、异步事件处理、gpio接口、寄存器及控制单元。其中,控制单元对数据接收与发送进行管控,其根据bmc对于以太网控制器或通道的命令帧,控制应用处理接口电路的工作模式与工作状态,并产生与当前所处理命令相对应的响应码与原因码。rmiimac单元为应用处理接口电路与bmc之间的数据帧收发接口,该接口服从《rmiitm规范-1998》,由通道0~n共享使用。接收帧处理单元用于实现数据帧接收,包括接收存储与管理、接收帧解析、命令帧处理和接收帧仲裁模块,进行接收流量控制,存储所接收的数据帧,根据以太网的帧类型,对接收到的passthrough帧(以太网帧类型不等于0x88f8)和命令帧(以太网帧类型为0x88f8)分别进行处理:通过crc校验的合法passthrough帧经过滤、仲裁后由相应通道送至系统总线;命令帧需要进行命令参数有效性、校验和以及crc检测,合法命令帧将进行命令参数提取,并依据所提取的参数进行响应帧组帧;而不合法的passtrough帧和命令帧将被丢弃。该接收帧处理单元还能进行接收帧统计,为bmc获取接收帧统计信息提供支持。发送帧处理单元进行数据帧发送,包括发送passthrough帧仲裁、发送passthrough帧解析、发送passthrough帧过滤、发送帧仲裁、发送存储和管理模块,通过发送passthrough帧仲裁模块判断各通道发送passthrough帧的先后顺序,通过发送passthrough帧解析模块解析所要发送的passthrough帧,丢弃错误帧,提取合法的发送passthrough帧的相关信息(比如:vlan标志、mac地址、广播帧的udp等),根据滤波器的配置状态,过滤passthrough帧,并送至发送仲裁模块,由发送仲裁模块根据当前状态,确定响应帧、异步事件帧或passthrough帧的发送顺序,依次存入发送存储单元,并最终通过rmiimac接口送至bmc。该发送处理模块还能进行发送帧统计,为bmc获取以太网控制器发送帧的统计信息提供支持。异步事件处理单元在通道所对应的链路状态发生变化时、通道进入初始化态时或是网络控制器所连接主机的工作模式发生变化时,发送相应类型的异步事件帧。寄存器单元实现应用处理接口电路与主机、gpio之间的信息交互,其涉及的信息包括主机配置信息、通道的链路状态、链路设置和获取链路状态命令的相关参数以及gpio配置信息。gpio接口作为通用可编程输入输出接口。为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中的描述和所示的本发明实施例的组件可以通过各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。请参阅图1,应用处理接口电路是bmc与以太网控制器之间的接口,能够进行网络数据与bmc之间的数据处理,可以通过主机和gpio接口对其进行访问。请参阅图2,应用处理接口电路的实现,包括:rmiimac、接收、发送、控制、异步事件处理、寄存器和gpio单元。其中,控制单元1依据主机和bmc对于应用处理接口电路的配置,处理《dmtf-网络控制器边带接口规范-2013》中所描述的全部命令帧(如表1所示),并产生命令所对应响应的原因码与响应码(如表2所示),控制整个电路及相应通道的工作状态。上电后,所述应用处理接口电路进入初始化态,在初始化完成后,进入“控制器未被选中”态;当接收到bmc发送的控制器选择、清除初始化或其它指向该控制器或控制器某一通道的命令后,所述电路进入“控制器选中”态;当接收到撤销选中命令后,电路进入“控制器撤销选中”态,状态迁移过程如图3所示。上述状态迁移过程中,所述应用处理接口电路在上电初始化完成后,就可以进行bmc命令的接收与处理;而在上电初始化、通道初始化过程中不能进行passthrough帧的处理,此时收到的passthrough帧将被丢弃。表1命令帧及其响应帧类型表2响应码与原因码rmiimac单元2通过rmii接口接收bmc发送的命令帧和passthrough帧,或是将响应帧、异步事件帧和passthrough帧送至bmc。以太网帧类型包含《dmtf-网络控制器边带接口规范-2013》中描述的所有数据帧类型,如图4所示,其中,passthrough帧的帧类型不等于0x88f8,最小长度为64个字节,当为vlan帧时,长度可以为1522个字节,否则最长帧长度为1518字节;命令帧的帧类型为0x88f8,长度为64个字节;响应帧中,图4c给出了最长响应帧的格式,对应响应帧类型为0x98;对于响应帧类型0x80、0x81、0x82、0x83、0x84、0x85、0x86、0x87、0x88、0x89、0x8b、0x8c、0x8d、0x8e、0x90、0x91、0x92、0x93和0x94的响应帧,其总长度为64字节,在原因码之后,填充的信息为校验和,响应参数为空;响应帧类型为0x8a、0x95、0x96、0x99的响应帧,总长度为64字节,所填充的响应参数分别为12字节、36字节、28字节和28字节;响应类型为0x97的响应帧,最长总长度174字节,响应参数最多为146字节;响应类型为0x9a的响应帧,总长度为72字节,响应参数为44字节;异步事件帧的长度为64字节。接收帧处理单元3接收和处理bmc发送的命令帧和passthrough帧,并进行接收数据帧统计,包括接收帧存储和管理、接收帧解析、接收帧过滤、响应产生和接收passthrough帧仲裁模块,接收过程的状态迁移如图5所示。其中,接收帧存储模块采用fifo结构,存储从rmiimac接口接收到的数据帧。接收帧管理模块对fifo的数据写入和读出进行控制:为了保证数据帧接收的可靠性,仅当整帧数据存储完成后,才能进行fifo读操作;如果接收存储单元的占用量高于接收阈值,则帧存储管理单元通过rmiimac向bmc发送暂停帧(以太网帧类型为0x8808),在暂停帧所设定的暂停时间内,暂停bmc的数据帧发送,直到接收帧处理单元的占用量低于阈值;如果接收到的某一vlan帧长度大于1522个字节或非vlan帧长度大于1518个字节,则该帧数据将被视为非法帧而丢弃。接收帧解析模块从接收存储单元读取数据帧,并识别数据帧的帧头信息,将通过crc检测的passthrough帧送至接收帧过滤模块进行过滤,对命令帧进行命令参数、校验和以及crc检测,将有效命令的参数送至响应产生模块,丢弃非法数据帧。接收帧过滤模块依据源mac地址滤波器的配置情况,滤除源地址不匹配的passthrough帧,并将源地址匹配的passthrough帧送至接收passthrough帧仲裁单元。源mac地址滤波器由bmc发出的设置mac地址(命令帧类型0x0e)命令进行配置。响应产生模块从读取的有效命令帧中获取命令参数,进行响应帧组帧,响应类型包含表1中所描述的全部响应类型。对于控制器数据、passthrough、命令三种数据帧统计命令,响应产生模块将收集接收、发送和异步事件处理单元的相应统计计数值,进行获取控制器数据帧统计信息(命令帧类型0x18)、获取接口命令帧统计信息(命令帧类型0x19)和获取接口passthrough帧统计信息(命令帧类型0x1a)命令的响应帧组帧,在相应响应帧发送完成后,各相关计数器将自动清零,数据流统计过程如图6所示。接收passthrough帧仲裁模块依据通道0~通道n(n的范围为1~31)的优先级和状态,确定可以进行passthrough帧接收的通道。为了避免所有通道同时处于等待状态,同时保证实施可行性,在通道优先级设置时,将通道的优先级设置为通道0~通道n依次降低,各通道在数据接收时,由仲裁器根据通道0~通道n的使能状态进行接收排序,具备接收条件的通道,依次进行一个完整passthrough帧的接收。上述通道与系统总线相连,如,高级外围总线(apb)或高级高性能总线(ahb)。其中,响应帧产生模块可以进行如表1所示的响应帧组帧,其中包括非法命令帧的响应帧组帧。此外,链路设置和获取链路状态命令的处理,基于主机中断程序,需要主机协助完成,具体实现方法如下:(1)响应帧产生模块接收到链路设置或获取链路状态命令时,将向主机发出中断请求信号,如果是链路设置命令,响应帧产生模块将链路设置命令的参数存入所述应用处理接口电路的链路设置寄存器;(2)主机在接收到中断信号后,判断中断类型是属于链路设置还是获取链路状态命令:如果是链路设置命令中断,主机读取链路设置寄存器,并将读取的链路设置参数写入以太网控制器的相应状态寄存器;如果是获取链路状态命令中断,主机读取以太网控制器的相应状态寄存器,并将获取的状态信息写入所述应用处理接口电路的获取链路状态寄存器。(3)在(2)操作完成后,主机将应用处理电路的命令处理寄存器中的命令处理完成标志位置位,并清除中断。采用发送帧处理单元4进行passthrough帧、异步事件帧或响应帧的发送,包括发送passthrough帧仲裁、发送passthrough帧解析、发送passthrough帧过滤、发送帧仲裁、发送帧存储和管理模块。数据帧发送的状态迁移图,如图7所示。其中,发送passthrough帧仲裁模块根据通道0~n的状态以及通道的优先级设置,确定通道进行passthrough帧发送的顺序。通道0~n利用共享的发送通路进行passthrough帧发送,为了避免各通道竞争发送数据通路,将通道的发送优先级设置为通道0~通道n依次降低,在数据帧发送时,由仲裁器根据通道0~通道n的状态进行发送排序,具备发送条件的通道,依次进行一个完整passthrough帧的发送。发送passthrough帧解析模块对所要发送的passthrough帧进行解析,提取目的地址、以太网帧类型、vlan标志以及广播帧的udp字段信息,并进行发送passthrough帧统计。发送帧过滤模块依据目的地址、以太网帧类型、vlan标志、广播帧的udp字段,滤除不匹配滤波器配置的发送passthrough帧,将匹配滤波器配置的passthrough帧送至发送帧仲裁模块。目的地址、vlan标志和广播帧udp滤波器,由bmc通过设置mac地址(0x0e)、设置vlan滤波器(0x0b)、广播滤波使能(命令帧类型0x10)、广播滤波不使能(命令帧类型0x11)、全局组播滤波使能(命令帧类型0x12)和全局组波滤波不使能(命令帧类型0x13)命令进行配置。发送passthrough帧过滤流图如图8所示。发送帧仲裁模块将依据所述电路的配置情况,确定passthrough帧、异步事件帧和响应帧的发送顺序,并按顺序存储在发送帧存储模块。发送帧存储模块采用fifo结构,只要fifo非空即可被读取,对于fifo写操作,为了避免fifo溢出,通过阈值对fifo写操作进行控制,如果fifo的占用量高于阈值,则暂停fifo的写操作,直到当前fifo的占用量低于阈值或暂停超时为止。通过发送帧管理模块控制fifo的读写操作,采用上述阈值控制方法,避免由于fifo溢出而导致的异常丢帧问题。采用异步事件处理单元5根据异步事件状态寄存器中记录的“链路状态改变”(异步事件帧类型为0x00)、“通道状态变为初始化态”(异步事件帧类型为0x01)以及“网络控制器所连接主机的工作状态发生变化”(异步事件帧类型为0x02)三种异步事件,进行异步事件帧的组帧操作,并按异步事件发生的时间先后,依次发送异步事件帧。采用寄存器单元6实现所述电路的配置信息以及bmc对于所述电路配置参数的存储,相关寄存器列表如表3所示,访问地址为基地址+表3中的偏移地址。表3应用处理接口电路的寄存器列表起始地址名称位宽(位)读写类型备注0x000使能寄存器32r/w偏移首地址与通道id无关0x004控制器id寄存器32r/w偏移首地址与通道id无关0x008链路设置寄存器32r偏移首地址与通道id相关0x00c链路状态寄存器32r/w偏移首地址与通道id相关0x010异步事件状态寄存器32r/w偏移首地址与通道id相关0x014命令处理标志寄存器32r/w偏移首地址与通道id相关对于偏移首地址与通道id相关的寄存器,偏移首地址的高5位表示通道id。表中相关寄存器的偏移首地址0x008~0x014指向通道0;对于通道1和通道2,链路设置、链路状态、异步事件状态和命令处理标志寄存器的偏移首地址分别为0x088、0x08c、0x090、0x094以及0x108、0x10c、0x110、0x114,其余与通道id相关寄存器的偏移首地址依此类推。gpio接口单元7具有8位数据线,其中3位用于配置控制器id,其余5位作为扩展的专用控制位使用。以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1