掌桥专利:专业的专利平台
掌桥专利
首页

协议转换桥、通信装置、转换方法、电子设备及存储介质

文献发布时间:2024-04-18 19:58:21


协议转换桥、通信装置、转换方法、电子设备及存储介质

技术领域

本申请实施例涉及物联网技术领域,特别涉及一种协议转换桥、通信装置、转换方法、电子设备及存储介质。

背景技术

随着半导体工艺和大规模集成电路的发展,片上系统(System on Chip,SoC)逐渐被广泛被应用到各个领域,一个完整的片上系统集成有各种微控制器、微处理单元、外围设备和片上存储等模块,这些模块使用芯片上的互连总线相互连接,并通过芯片上的互连总线进行通信。在各种片上互连总线协议中,高级微控制总线架构(AdvancedMicrocontroller Bus Architecture,AMBA总线)在移动互联和物联网领域的应用最为广泛,而高性能扩展总线接口(Advanced eXtensible Interface,AXI总线)和高级高性能总线(Advanced High Performance Bus,AHB总线)又是AMBA总线中最重要的部分。通常设计人员会在一个系统中同时使用AHB总线和AXI总线,但是不同总线的接口不可以直接相连,因此如何使AHB总线和AXI总线协同工作,成为片上系统设计者面临的问题。

发明内容

本申请实施例的目的在于提供一种协议转换桥、通信装置、转换方法、电子设备及存储介质,可以实现AHB与AXI之间低成本、低功耗、低系统复杂度的通信。

为解决上述技术问题,本申请的实施例提供了一种协议转换桥,包括:AHB从机和AXI主机;所述AHB从机用于接收并解析AHB主机发送的通信请求,以获取所述AHB主机的第一通信内容,将所述AHB主机的第一通信内容转换为与AXI从机对应的第二通信内容,并将所述第二通信内容发送至所述AXI从机;所述AXI主机用于接收所述AXI从机对所述第二通信内容的第一响应信息,将所述第一响应信息转换为与所述AHB主机对应的第二响应信息,并将所述第二响应信息发送至所述AHB主机。

本申请的实施例还提供了一种AHB与AXI的通信装置,包括:AHB主机、AXI从机和上述的协议转换桥。

本申请的实施例还提供了一种协议转换方法,其特征在于,应用于上述的协议转换桥,包括以下步骤:接收并解析AHB主机发送的通信请求,以获取所述AHB主机的第一通信内容,将所述AHB主机的第一通信内容转换为与AXI从机对应的第二通信内容,并将所述第二通信内容发送至所述AXI从机;接收所述AXI从机对所述第二通信内容的第一响应信息,将所述第一响应信息转换为与所述AHB主机对应的第二响应信息,并将所述第二响应信息发送至所述AHB主机。

本申请的实施例还提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述协议转换方法。

本申请的实施例还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述协议转换方法。

本申请实施例的协议转换桥,AHB从机在接收并解析AHB主机发送的通信请求,得到AHB主机的第一通信内容,并将AHB主机的第一通信内容转换为与AXI从机对应的第二通信内容后,AHB从机可以直接将第二通信内容发送至AXI从机,并且在AXI主机接收AXI从机对第二通信内容的第一响应信息,并将第一响应信息转换为与AHB主机对应的第二响应信息后,AXI主机可以直接将第二响应信息发送至AHB主机,从而实现AHB与AXI之间的通信,并且协议转换桥的内部结构简单,降低了系统的复杂度,对于吞吐率较低的AHB与AXI通信场景,无需进行数据缓冲,在吞吐率较低的AHB与AXI通信场景下,资源开销较小、时延较短、功耗较低。

另外,所述协议转换桥还包括控制模块,所述控制模块分别与所述AXI从机和所述AHB主机连接;所述控制模块用于与所述AHB从机同步接收所述AHB主机发送的通信请求,依据所述通信请求监测所述AXI从机的运行状态,并根据所述AXI从机的运行状态控制所述AHB从机将所述第二通信内容发送至所述AXI从机;所述控制模块还用于监测所述AHB主机的运行状态,并根据所述AHB主机的运行状态控制所述AXI主机将所述第二响应信息发送至所述AHB主机。本申请中通过控制模块监测AXI主机和AHB从机的运行状态,以控制第二通信内容和第二响应信息的发送,实现方式灵活简便。

另外,所述协议转换桥还包括第一数据缓冲模块,所述第一数据缓冲模块分别与所述AXI主机和所述AHB从机连接;所述控制模块还用于控制所述AHB从机将所述第二通信内容直接发送至所述AXI从机,或者控制所述AHB从机将所述第二通信内容存入所述第一数据缓冲模块,以适应各种通信场景。

另外,若所述AHB从机将所述第二通信内容存入所述第一数据缓冲模块,则所述AXI主机还用于从所述第一数据缓冲模块读取所述第二通信内容,并将所述第二通信内容发送至所述AXI从机,以适应各种通信场景。

另外,所述协议转换桥还包括第二数据缓冲模块,所述第二数据缓冲模块分别与所述AXI主机和所述AHB从机连接;所述控制模块还用于控制所述AXI主机将所述第二响应信息直接发送至所述AHB主机,或者控制所述AXI主机将所述第二响应信息存入所述第二数据缓冲模块,以适应各种通信场景。

另外,若所述AXI主机将所述第二响应信息存入所述第二数据缓冲模块,则所述AHB从机还用于从所述第二数据缓冲模块中读取所述第二响应信息,并将所述第二响应信息发送至所述AHB主机,以适应各种通信场景。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1是根据本申请的一个实施例提供的一种协议转换桥的结构示意图一;

图2是根据本申请的一个实施例提供的一种协议转换桥的结构示意图二;

图3是根据本申请的一个实施例提供的一种协议转换桥的结构示意图三;

图4是根据本申请的一个实施例提供的一种协议转换桥的结构示意图四;

图5是根据本申请的一个实施例提供的一种协议转换桥的结构示意图五;

图6是根据本申请的一个实施例提供的一种AHB与AXI的通信装置的结构示意图;

图7是根据本申请的一个实施例提供的一种协议转换方法的具体流程图;

图8是根据本申请的另一个实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本申请各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本申请的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。

为了实现AHB和AXI之间的通信,需要通过协议转换器实现AHB总线和AXI总线间的协议转换,但是目前的协议转换器需要为AHB到AXI之间的所有读/写的地址信息和数据信息设置数据缓冲器进行数据缓冲,不适用于吞吐量较低的通信场景。并且,为了使AHB总线和AXI总线的协同工作,还需要设置有状态机控制模块控制AHB信号于AXI信号的传输,同样不适用于吞吐量较低的通信场景。

而本申请的一个实施例涉及一种协议转换桥,包括:AHB从机和AXI主机,AHB从机在接收并解析AHB主机发送的通信请求,得到AHB主机的第一通信内容,并将AHB主机的第一通信内容转换为与AXI从机对应的第二通信内容后,AHB从机可以直接将第二通信内容发送至AXI从机,并且在AXI主机接收AXI从机对第二通信内容的第一响应信息,并将第一响应信息转换为与AHB主机对应的第二响应信息后,AXI主机可以直接将第二响应信息发送至AHB主机,从而实现AHB与AXI之间的通信,并且协议转换桥的内部结构简单,降低了系统的复杂度,对于吞吐率较低的AHB与AXI通信场景,无需进行数据缓冲和状态机控制模块,在吞吐率较低的AHB与AXI通信场景下,资源开销较小、时延较短、功耗较低。

下面对本申请实施例的协议转换桥的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。

在一些实施例中,协议转换桥的结构如图1所示,包括:AHB从机1和AXI主机2,由于本申请实施例是为了实现AHB和AXI之间的通信,即AHB主机和AXI从机之间的通信,因此图中还示出了AHB主机3和AXI从机4。

具体而言,AHB主机3发起通信请求,AHB从机1接收并解析AHB主机3发送的通信请求,以获取AHB主机的第一通信内容,第一通信内容包括AHB主机3与AXI从机4的通信类型,即AHB主机3需要对AXI从机4读数据或者写数据,以及读数据对应的读数据地址或者写数据对应的写数据地址,若通信类型为写数据,在写数据地址外第一通信内容还包括写数据信息。而AHB从机1需要将读取到的第一通信内容转换为与AXI总线对应的第二通信内容,即与AXI从机4对应的第二通信内容,并通过与AXI总线对应的通道将第二通信内容发送至AXI从机4,例如将写数据地址通过写地址通道发送至AXI从机4,并将写数据信息通过写数据通道发送至AXI从机4,或者将读数据地址通过读地址通道发送至AXI从机4。

AXI从机4在接收到第二通信内容后,向AXI主机2发送对第二通信内容的第一响应信息,相应地,第一响应信息包括读数据的响应信息或者写数据的响应信息,则AXI从机4通过对应的读响应通道将读数据的响应信息发送至AXI主机2,或者通过对应的写响应通道将写数据的响应信息发送至AXI主机2。AXI主机2再将第一响应信息转换为与AHB主机3对应的第二响应信息,则可以直接将第二响应信息发送至AHB主机3,完成了AHB主机3对AXI从机4的访问与AXI从机4对AHB主机3的响应,从而实现了AHB主机3与AXI从机4的通信过程。

在具体实现中,AHB从机1包括AHB从机输入接口11和AHB从机输出接口12,AXI主机2包括AXI主机输入接口21和AXI主机输出接口22,但是在本实施例中,在AHB主机3发起通信请求后,可以通过AHB从机1的AHB从机输入接口11接收并解析AHB主机3发送的通信请求,并将解析转换得到的第二通信内容发送至AXI从机4,以及通过AXI主机2的AXI主机输出接口22接收AXI从机4的第一响应信息,并将第一响应信息转换为第二响应信息后,发送至AHB主机3,而该过程并不需要AHB从机输出接口12和AXI主机输入接口21的参与,则本实施例中的AHB从机1具体为AHB从机输入接口11,AXI主机2具体为AXI主机输出接口22,如图2所示。

因此本实施例的协议转换桥中由于仅包括AHB从机输入接口11和AXI主机输出接口22,因此功耗较低、结构简单,能够降低成本,从而实现AHB与AXI之间低成本、低功耗、低系统复杂度的通信,并且适用于吞吐量较低的AHB与AXI通信场景,例如AHB与AXI两端均为单独的模块。

在一些实施例中,协议转换桥的结构还包括如图3所示的控制模块5,控制模块5分别与AHB主机3和AXI从机4连接。

控制模块5用于与AHB从机1同步接收AHB主机3发送的通信请求,依据该对AXI从机4的通信请求监测AXI从机4的运行状态,并根据AXI从机4的运行状态控制AHB从机1将第二通信内容发送至AXI从机4。

在一个例子中,控制模块5在监测AXI从机4的运行状态时,若发现AXI从机4处于空闲状态,则表示AXI从机4可以及时接收由AHB从机1发送的第二通信内容,控制模块5会控制AHB从机1将第二通信内容直接发送至AXI从机4中,完成AHB主机3对AXI从机4的访问。

在另一个例子中,协议转换桥的结构还包括如图3所示第一数据缓冲模块6,第一数据缓冲模块6分别与AXI主机2和AHB从机1连接,则控制模块5在监测AXI从机4的运行状态时,若发现AXI从机4处于忙碌状态,不能及时接收由AHB从机1发送的第二通信内容,则控制模块55会控制AHB从机1将第二通信内容存入第一数据缓冲模块6中。此时还需要AXI主机2从第一数据缓冲模块6读取第二通信内容,并将第二通信内容发送至AXI从机4,从而完成AHB主机3对AXI从机4的访问。

其中,第一数据缓冲模块6包括地址信息数据缓冲模块与写数据缓冲模块,地址信息数据缓冲模块用于缓冲第二通信内容中的读数据地址或者写数据地址,写数据缓冲模块用于缓冲第二通信内容中的写数据信息。

相应地,控制模块5还可以用于监测AHB主机3的运行状态,并根据AHB主机3的运行状态控制AXI主机2将第二响应信息发送至AHB主机3。

在一个例子中,控制模块5在监测AHB主机3的运行状态时,若发现AHB主机3处于空闲状态,则表示AHB主机3可以及时接收由AXI主机2发送的第二响应信息,则控制模块5会控制AXI主机2将第二响应信息直接发送至AHB主机3,从而完成AXI从机4对AHB主机3的响应。

在另一个例子中,协议转换桥的结构还包括如图3所示第二数据缓冲模块7,第二数据缓冲模块7分别与AXI主机2和AHB从机1连接,控制模块5在监测AHB主机3的运行状态时,若发现AHB主机3处于忙碌状态,表示AHB主机3无法及时接收由AXI主机2发送的第二响应信息,则控制模块5会控制AXI主机2将第二响应信息存入第二数据缓冲模块7中。此时还需要AHB从机1从第二数据缓冲模块7中读取第二响应信息,并将第二响应信息发送至AHB主机3中,从而完成AXI从机4对AHB主机3的响应。

其中,第二数据缓冲模块7包括如所示的读响应缓冲模块与写数据缓冲模块,读响应缓冲模块用于缓冲第二响应信息中的读数据的响应信息,写响应缓冲模块用于缓冲第二响应信息中的写数据的响应信息。

在一个例子中,控制模块5与各个模块,即AHB从机1、AXI主机2、AHB主机3、AXI从机4、第一数据缓冲模块6以及的第二数据缓冲模块7连接,并监测其运行状态,以控制各个模块数据的发送与接收。

本实施例中,可以依据AXI从机和AHB主机的工作状态,确定当前AHB与AXI通信吞吐量的大小,依据吞吐量的大小决定是否需要通过将第二通信内容和/或第二响应信息存入数据缓冲模块进行缓冲,进而实现AHB与AXI的通信,既适用于吞吐量较低的AHB与AXI通信场景,也适用于吞吐量较高的AHB与AXI通信场景。

在一些实施例中,对于吞吐率较高的AHB与AXI通信场景,例如AHB总线与AXI总线的通信,协议转换桥中可同时包括第一数据缓冲模块6和第二数据缓冲模块7,则在AHB主机3发起通信请求后,需要AHB从机1的AHB从机输入接口11接收并解析AHB主机3发送的通信请求,并将解析转换得到第二通信内容发送至第一数据缓冲模块6,AXI从机4的AXI主机输入接口21从第一数据缓冲模块6中读取第二通信内容,并将第二通信内容发送至AXI从机4。AXI从机4在接收到第二通信内容后,向AXI主机的AXI主机输出接口22发送对第二通信内容的响应信息,AXI主机输出接口22将第一响应信息转换为第二响应信息后,将第二响应信息存入第二数据缓冲模块7中,由AHB从机1的AHB从机输出接口12从第二数据缓冲模块7中读取第二响应信息并将其发送至AHB主机,如图4所示。

在一些实施例中,对于吞吐率一般的AHB与AXI通信场景,例如,AXI端为单独的模块,AHB端为AHB总线。协议转换桥中可只包含第二数据缓冲模块7,则在AHB主机3发起通信请求后,需要AHB从机1的AHB从机输入接口11接收并解析AHB主机3发送的通信请求,并将解析转换得到第二通信内容发送至AXI从机4。AXI从机4在接收到第二通信内容后,向AXI主机的AXI主机输出接口22发送对第二通信内容的响应信息,AXI主机输出接口22将第一响应信息转换为第二响应信息后,将第二响应信息存入第二数据缓冲模块7中,由AHB从机1的AHB从机输出接口12从第二数据缓冲模块7中读取第二响应信息并将其发送至AHB主机,如图5所示。

需要说明的是,本实施例中的上述各示例均为方便理解进行的举例说明,并不对本发明的技术方案构成限定。

值得一提的是,本实施例中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本申请的创新部分,本实施例中并没有将与解决本申请所提出的技术问题关系不太密切的单元引入,但这并不表明本实施例中不存在其它的单元。

本申请的另一个实施例涉及一种AHB与AXI的通信装置,本实施例的AHB与AXI的通信装置的示意图可以如图6所示,包括:AHB主机61、AXI从机62和上述任一实施例所述的协议转换桥63。

不难发现,本实施例为与上述协议转换桥实施例对应的通信装置实施例,本实施例可以与上述方法实施例互相配合实施。上述实施例中提到的相关技术细节和技术效果在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在上述实施例中。

本申请的另一个实施例涉及一种协议转换方法,应用于上述任一实施例所述的协议转换桥,本实施例的协议转换方法的具体流程如图7所示,包括:

步骤701,接收并解析AHB主机发送的通信请求,以获取AHB主机的第一通信内容,将AHB主机的第一通信内容转换为与AXI从机对应的第二通信内容,并将第二通信内容发送至AXI从机。

步骤702,接收AXI从机对第二通信内容的第一响应信息,将第一响应信息转换为与AHB主机对应的第二响应信息,并将第二响应信息发送至AHB主机。

上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。

不难发现,本实施例为与上述协议转换桥实施例对应的方法实施例,本实施例可以与上述方法实施例互相配合实施。上述实施例中提到的相关技术细节和技术效果在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在上述实施例中。

本申请另一个实施例涉及一种电子设备,如图8所示,包括:至少一个处理器801;以及,与所述至少一个处理器801通信连接的存储器802;其中,所述存储器602存储有可被所述至少一个处理器801执行的指令,所述指令被所述至少一个处理器801执行,以使所述至少一个处理器801能够执行上述各实施例中的协议转换方法。

其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。

处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。

本申请另一个实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。

即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,简称:ROM)、随机存取存储器(Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

本领域的普通技术人员可以理解,上述各实施例是实现本申请的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。

相关技术
  • 图像转换方法、装置、电子设备及存储介质
  • 即时通信方法、装置、电子设备及存储介质
  • 一种即时通信的数据存储方法、装置、电子设备和介质
  • 通信方法以及装置、电子设备及存储介质
  • 电子设备的显示控制方法、装置、电子设备和存储介质
  • 通信协议转换方法、装置、设备及系统、及存储介质
  • 一种协议转换方法及装置、电子设备及存储介质
技术分类

06120116484598