协议转换器及转换方法与流程

文档序号:12037885阅读:1886来源:国知局
协议转换器及转换方法与流程

本发明属于网络通讯技术领域,涉及一种网络协议转换器。



背景技术:

总线通信系统广泛应用于控制系统,而主机和各处理器之间通常采用不同形式的总线进行数据传输,主机不仅需要处理各种复杂运算和任务调度,同时还需要对各个通讯接口进行管理。

以采用pci总线和linkport总线进行通信的实时控制系统为例,pci总线是一种先进的局部总线,具有高可靠性高、高带宽、高开发性和可热插拔的特点。支持132mb/s的峰值速度(32位总线宽度),延时时间只需60ns(33mhz)。并且支持66mhz的工作频率。适合高性能实时系统的数据传输。linkport总线是一种点对点的全双工高速总线。

通信系统一方面需要完成pci总线和linkport总线之间数据的转换和收发,另一方面实时控制系统对系统的响应时间有严格的要求,这就要求快速完成数据收发和数据格式的转换。而主处理器和执行单元之间的通讯延时长短直接影响实时控制系统的相应速度和控制精度。

而现有技术中,是通过协助处理器来完成不同总线间协议转换的,针对不同的系统,主要更改处理器的软件配置,以适应不同的控制需求。



技术实现要素:

本发明的目的在于提供一种灵活性高、转换速度快的网络协议转换器。

为了实现以上目的,本发明提供以下技术方案:

协议转换器,基于fpga而构建,用以实现两种总线之间的协议转换,分别连接主机和处理器,还包括配置有第一种总线通讯接口的可与主机通讯的总线一通讯管理单元、配置有第二种总线通讯接口的可与处理器通讯的总线二管理单元,以及,可与总线一通讯管理单元和总线二管理单元通讯的存储器;

存储器包括:用以存储协议转换器各单元配置信息的配置寄存单元,用以存储总线二接收数据的数据接收存储单元,用以存储总线二待发送数据的数据发送存储单元,以及,用于存储发送数据指令的指令寄存单元;

总线二管理单元包括用以根据配置寄存单元的配置信息形成发送数据指令的发送数据控制单元;

所述协议转换器进一步包括用以对协议转换器各单元下发配置信息并对各单元进行功能配置的逻辑管理单元,逻辑管理单元可分别与总线一通讯管理单元、总线二管理单元及存储器进行双向数据通讯。

作为优选:总线二管理单元具有多个总线二通讯接口,可外接多路总线二通道。

作为优选:存储器进一步包括用以存储协议转换器各单元工作状态信息的状态寄存单元。

作为优选:协议转换器进一步包括用以对协议转换器各单元提供时钟信号的时钟管理单元。

作为优选:存储器采用双口ram,经高速并行总线分别与总线一通讯管理单元和总线二管理单元相连。

作为优选:配置信息包括但不限于总线二管理单元收发数据配置信息,具体包括使能通道数、传输波特率、传输内容、通讯周期、接收数据的存放地址、状态寄存器的更新数据。

协议转换方法,包括以下步骤:

通过主机或逻辑管理单元设置协议转换器各单元的配置信息,存储到配置寄存单元;

逻辑管理单元根据配置信息完成对总线二管理单元的配置,并读取指令寄存单元是否收到主机下发的数据发送指令,若是,则按配置信息发送数据发送存储单元中的待发送数据,若否,则等待并持续读取指令寄存单元数据;

总线二管理单元接收到数据后,更新数据接收存储单元中的数据。

作为优选:在等待主机数据发送指令的过程中,更新存储器中数据发送存储单元的数据。

作为优选:进一步包括以下步骤:根据数据接收存储单元中的数据以及协议转换器各单元的自检数据,更新状态寄存器中的状态数据。

本发明的有益效果为:

(1)本发明提出了一种协议转换器,可以实现不同总线间协议的高速转换,具有极短的转换延时,可以降低应用相应总线的实时系统的传输延时,提高实时系统的实时性能。

(2)可根据系统需求,通过存储器的配置寄存单元存储输送内容、输送通道、数据存放地址等配置信息,使协议转换器具有很高的灵活性和通用性。

附图说明

图1为协议转换器结构示意图;

图2为存储器内部结构示意图;

图3为协议转换器工作流程图。

其中:1-协议转换器,2-主机,3-pci通讯管理单元,4-linkport管理单元,5-dsp处理器,6-逻辑管理单元,7-时钟管理单元,8-双口ram。

具体实施方式

以下将结合附图对本发明的具体实施方式进行清楚完整地描述。显然,具体实施方式所描述的实施例仅为本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。

需要说明的是,本实施例中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。

本发明提供了一种用以实现两种总线间协议转换的协议转换器。

本实施方式将以pci总线与linkport总线的协议转换器为例,来论述协议转换器的结构及工作方法。

协议转换器,基于fpga而构建,用以实现两种总线之间的协议转换,例如,本实施例中,协议转换器用于pci总线与linkport总线之间的协议转换。

参考图1,协议转换器1分别连接主机2和处理器,包括配置有第一种总线通讯接口的可与主机2通讯的总线一通讯管理单元、配置有第二种总线通讯接口的可与处理器通讯的总线二管理单元,以及,可与总线一通讯管理单元和总线二管理单元通讯的存储器。其中,总线二管理单元具有多个总线二通讯接口,可外接多路总线二通道。

协议转换器1进一步包括用以对协议转换器各单元下发配置信息并对各单元进行功能配置的逻辑管理单元6,逻辑管理单元6可分别与总线一通讯管理单元、总线二管理单元及存储器进行双向数据通讯。逻辑管理单元控制协议处理器各单元的动作,配置各单元的功能,保证各个功能单元协同工作。

具体到本实施例,总线一通讯管理单元为pci通讯管理单元3,配置有pci总线接口,经pci总线与主机进行通讯;总线二管理单元为linkport管理单元4,配置有linkport总线接口,经linkport总线与处理器连接。每个linkport管理单元4具有4路全双工linkport总线,可以实现最多与4片dsp处理器5相连,即外接4路总线二通道。

本实施例中,存储器采用双口ram8,经fpga内部高速并行总线分别与pci通讯管理单元3和linkport管理单元4相连,实现pci总线和linkport总线之间的数据缓冲,存储器内部结构参考图2,具体包括:

配置寄存单元:对双口ram8中的固定地址对应的存储空间设置为配置寄存单元,用以存储协议转换器各单元配置信息的;

数据接收存储单元:对双口ram8中的固定地址对应的存储空间设置为数据接收存储单元,用以存储总线二接收的数据,具体到本实施方式,处理器采用dsp处理器5,数据接收存储单元存储的数据包括linkport管理单元4接收的来自dsp处理器5的数据及linkport管理单元4进行数据传输过程中反馈的状态数据;

数据发送存储单元:对双口ram8中的固定地址对应的存储空间设置为数据发送存储单元,用以存储总线二待发送数据的,主机或逻辑管理单元通过pci通讯管理单元3向数据发送存储单元发送数据并不断更新数据发送存储单元中的数据内容;

指令寄存单元:用于存储发送数据指令;主机通过pci通讯管理单元3向存储器传输发送数据指令,用以指示linkport管理单元4是否可以将数据发送存储单元中的数据发出;

状态寄存单元:用以存储协议转换器各单元工作状态信息。

上述协议转换器各单元包括总线一通讯管理单元、总线二管理单元、存储器、逻辑管理单元及下文所述的时钟管理电源等。

上述配置信息包括linkport发送命令linkport通道设置信息、linkport1(linkport通道1)读写配置信息、linkport2(linkport通道2)读写配置信息、linkport3(linkport通道3)读写配置信息及linkport4(linkport通道4)读写配置信息等。具体到本实施方式,上述配置信息包括但不限于linkport管理单元4收发数据配置信息,具体包括linkport使能通道信息、linkport传输波特率、linkport传输内容、通讯周期、接收数据的存放地址、状态寄存器的更新数据等。配置信息将作为各单元执行工作的标准指令信息。

上述工作状态信息包括linkport管理单元4工作状态、linkport通道1通讯状态、linkport通道2通讯状态、linkport通道3通讯状态、linkport通道4通讯状态,以及协议转换器其他单元的工作状态等。

总线二管理单元包括用以根据配置寄存单元的配置信息形成发送数据指令的发送数据控制单元;具体为,linkport管理单元4将根据linkport使能通道信息、linkport传输波特率、等配置信息将双口ram中设定地址区域中(数据发送存储单元)的数据通过设定的linkport通道发送出去,同时负责将各个linkport通道接收的数据存放到双口ram的设定区域(数据接收存储单元)。

更进一步的,协议转换器还包括用以对协议转换器各单元提供时钟信号的时钟管理单元。时钟管理单元外接时钟输入信号,以完成各单元的时钟同步。

协议转换方法,流程参考图3,包括以下步骤:

fpga上电后,首先进行初始化配置;通过主机或者逻辑管理单元设置协议转换器个单元的配置信息,包括linkport通道设置、各条linkport通道的具体配置,具体包括4路linkport通道使能数量、具体使用哪条linkport通道进行数据收发、收发数据信息及收发数据的存储位置等;

通过逻辑管理单元配置时钟管理单元,使其输出初始化脉冲到协议转换器各单元,完成各单元的时钟同步配置;

时钟管理单元配置完成后,通过逻辑管理单元读取配置寄存单元中的配置信息,并确认配置信息是否有效,若是,进行下一步工作,若否,则继续等待主机或逻辑管理单元的有效配置信息;

逻辑管理单元读取指令寄存单元是否收到主机下发的数据发送指令,若是,则读取数据发送存储单元中的数据并按配置信息以指定的通道,指定的传输速率等配置信息发送数据发送存储单元中的待发送数据,若否,则等待并持续读取指令寄存单元数据,等待过程中,主机或逻辑管理单元将更新双口ram中的待发送数据内容,直至下发数据发送命令;

总线二管理单元接收到数据后,更新数据接收存储单元中的数据;具体到本实施方式,linkport管理单元4将新接收到的数据更新替换数据接收存储单元中旧的数据,其接收的数据包括linkport管理单元4外连设备数据(dsp处理器5数据),同时还包括linkport管理单元4自身的运行状态数据,以及linkport管理单元4与外连设备的互连状态数据等。这些数据一部分将作为主机需要数据经pci总线传递到主机,还有一部分将作为状态数据更新状态寄存单元中的数据。

状态寄存单元将根据数据接收存储单元中的数据以及协议转换器各单元的自检数据,更新状态寄存器中的状态数据。具体的说,数据发送完成后,linkport管理单元4接收相应通道收到的数据(linkport通道通讯状态信息),并将收到的数据更新到双口ram的接收数据存储单元,主机通过pci通讯管理单元读取双口ram中的接收数据存储单元得到linkport相应端口的接收数据。然后逻辑管理单元对内部各功能模块进行自检测,并将自检测的状态更新到状态寄存器中,主机可通过pci总线读取到状态寄存器中各个单元的状态,进而可以实现对通讯状态的检测。至此完成一次通讯转换。

主机及逻辑管理单元将根据状态数据对协议转换器采取下一步处理措施。例如,若linkport管理单元4发生接收超时、接收错误或与dsp处理器5之间存在数据链路不通等状态故障,将暂停协议转换器的工作,并进行软件或硬件的调整。

采用本实施例的协议转换器主机可通过pci总线实现对转换芯片的配置,可灵活更改linkport的通讯参数,系统具备通讯自检测能力,可以及时准确的获取各单元工作状态,从而实现高速、高效的linkport总线到pci总线的快速转换。

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