CN114328350B - 一种基于axi总线的通讯方法、装置以及介质 - Google Patents
一种基于axi总线的通讯方法、装置以及介质 Download PDFInfo
- Publication number
- CN114328350B CN114328350B CN202111594316.4A CN202111594316A CN114328350B CN 114328350 B CN114328350 B CN 114328350B CN 202111594316 A CN202111594316 A CN 202111594316A CN 114328350 B CN114328350 B CN 114328350B
- Authority
- CN
- China
- Prior art keywords
- signal
- address
- bus
- queue
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000004891 communication Methods 0.000 title claims abstract description 61
- 230000002093 peripheral effect Effects 0.000 claims abstract description 152
- 230000000875 corresponding effect Effects 0.000 claims abstract description 108
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 239000002699 waste material Substances 0.000 abstract description 16
- 108091006146 Channels Proteins 0.000 description 49
- 230000005540 biological transmission Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 230000009471 action Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Landscapes
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
本申请公开了一种基于AXI总线的通讯方法、装置以及介质,通过AXI总线接收总线信号,之后将总线信号转换为RAM接口信号,根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址,最后根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。采用本技术方案,在接收到AXI总线的总线信号后,对总线信号进行解析,将总线信号转化成适用于RAM接口的RAM接口信号,使更多的***设备无需再额外开发AXI总线接口,即可实现与处理器通过AXI总线的通信,减少了资源的浪费。并且,对总的地址信号进行优化,减小了信号的大小,可以快速保存数据,提高总线权限的释放速度。
Description
技术领域
本申请涉及SOC技术领域,特别是涉及一种基于AXI总线的通讯方法、装置以及介质。
背景技术
SOC称为***级芯片,也称片上***,意指它是一个产品,是一个有专用目标的集成电路,其中包含完整***并有嵌入软件的全部内容。总线,是SOC中的连接器,实现了处理器和各个***设备之间的通信。高性能的SOC,对总线的性能要求越来越高。AXI总线是一种面向高性能、高带宽、低延迟的多通道传输片内总线,其地址、控制和数据相位是分离的,支持不对齐的数据传输和乱序访问,能够使SOC以更小的面积、更低的功耗,获得更加优异的性能,因此而被广泛应用。
但是大多的***设备的接口通常为RAM接口,并不具备AXI总线接口,在SOC使用AXI总线时,***设备需要额外开发AXI总线接口,以使处理器和***设备进行数据交互,该方法造成了资源的浪费。
由此可见,如何在处理器和***设备使用AXI总线通信时,无需额外开发AXI总线接口,减少资源的浪费是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种基于AXI总线的通讯方法、装置以及介质,用于在处理器和***设备使用AXI总线通信时,无需额外开发AXI总线接口,减少资源的浪费。
为解决上述技术问题,本申请提供一种基于AXI总线的通讯方法,其特征在于,包括:
接收AXI总线的总线信号,所述总线信号包括地址通道信号和数据通道信号;
解析所述总线信号,将所述总线信号转换为RAM接口信号,所述RAM接口信号包括地址信号和数据信号;
根据各所述***设备的地址,将所述RAM接口信号中的所述地址信号转换为适配各所述***设备的精简地址;
根据各所述***设备的所述精简地址和对应的所述数据信号通知各所述***设备执行对应的动作。
优选的,在所述地址信号转换为所述精简地址的步骤之后,还包括:
将各所述***设备的所述精简地址和对应的所述数据信号关联,按序保存在待处理队列;
进一步的,所述根据各所述***设备的所述精简地址和对应的所述数据信号通知各所述***设备执行对应的动作包括:
根据所述精简地址和对应的所述数据信号在所述待处理队列的顺序通知各所述***设备执行对应的动作。
优选的,在所述根据所述精简地址和对应的所述数据信号在所述待处理队列的顺序通知各所述***设备执行对应的动作的步骤之前,还包括:
判断所述待处理队列的当前数据所对应的所述***设备是否为空闲状态;
若是,则进入所述根据所述精简地址和对应的所述数据信号在所述待处理队列的顺序通知所述***设备执行对应的动作的步骤;
若否,则将该所述***设备的所述精简地址和对应的所述数据信号存入未响应队列。
优选的,还包括:
若检测到所述未响应队列中的所述精简地址和对应的所述数据信号所对应的所述***设备为空闲状态,则优先执行所述未响应队列中的所述精简地址和对应的所述数据信号。
优选的,在所述将各所述***设备的所述精简地址和对应的所述数据信号关联,按序保存在待处理队列的步骤之前,还包括:
判断所述待处理队列是否已满;
若否,则进入所述将各所述***设备的所述精简地址和对应的所述数据信号关联,按序保存在待处理队列的步骤;
若是,则停止所述总线信号的解析。
优选的,在所述将该所述***设备的所述精简地址和对应的所述数据信号存入未响应队列的步骤之前,还包括:
判断所述未响应队列是否未满且所述待处理队列非空;
若是,则进入所述将该所述***设备的所述精简地址和对应的所述数据信号存入未响应队列的步骤。
优选的,若所述数据信号为读信号,则在通知各所述***设备执行对应的动作的步骤之后,还包括:
将所述***设备返回的数据转换为所述AXI总线的读数据通路格式输出给处理器。
为解决上述技术问题,本申请还提供一种基于AXI总线的通讯装置,该装置包括:
接收模块,用于接收AXI总线的总线信号,所述总线信号包括地址通道信号和数据通道信号;
解析模块,用于解析所述总线信号,将所述总线信号转换为RAM接口信号,所述RAM接口信号包括地址信号和数据信号;
转换模块,用于根据各所述***设备的地址,将所述RAM接口信号中的所述地址信号转换为适配各所述***设备的精简地址;
调度模块,用于根据各所述***设备的所述精简地址和对应的所述数据信号通知各所述***设备执行对应的动作。
为解决上述技术问题,本申请还提供另一种基于AXI总线的通讯装置,该装置包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述的基于AXI总线的通讯方法的步骤。
为解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的基于AXI总线的通讯方法的步骤。
本申请所提供的基于AXI总线的通讯方法,通过AXI总线接收到总线信号,总线信号包括地址通道信号和数据通道信号,之后对总线信号进行解析,将总线信号转换为RAM接口信号,RAM接口信号包括地址信号和数据信号,根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址,最后根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。相对于当前技术中,需要在***设备上额外开发AXI总线接口,造成了资源的浪费。采用本技术方案,在接收到AXI总线的总线信号后,将总线信号转化成适用于RAM接口的RAM接口信号,使更多的***设备无需再额外开发AXI总线接口,即可实现与处理器通过AXI总线的通信,减少了资源的浪费。并且,根据各***设备的地址将总的地址信号转换为适配各***设备的精简地址,实现将地址信号优化,减小了信号的大小,可以快速保存数据,提高总线权限的释放速度。
此外,本申请所提供的基于AXI总线的通讯装置以及介质,与基于AXI总线的通讯方法相对应,效果同上。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于AXI总线的通讯方法的流程图;
图2为本申请实施例提供的一种基于AXI总线的通讯装置的结构图;
图3为本申请实施例提供的另一种基于AXI总线的通讯装置的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
嵌入式***是当今计算机工业发展的一个热点,随着超大规模集成电路的迅速发展,半导体工业进入深亚微米时代,器件特征尺寸越来越小,芯片规模越来越大,可以在单芯片上集成上百万到数亿只晶体管。如此密集的集成度使我们现在能够在一小块芯片上把以前由CPU和若干I/O接口等数块芯片实现的功能集成起来,由单片集成电路构成功能强大的、完整的***,这就是我们通常所说的片上***SOC。
AXI(Advanced eXtensible Interface)是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持显著传输访问和乱序访问,并更加容易就行时序收敛,能够满足超高性能和复杂的SOC设计的需求。
但是SOC上的大多***设备的接口通常为RAM接口,并不具备AXI总线接口,在SOC使用AXI总线时,***设备需要额外开发AXI总线接口,以使处理器和***设备进行数据交互,该方法造成了资源的浪费。
本申请的核心是提供一种基于AXI总线的通讯方法、装置以及介质,用于在处理器和***设备使用AXI总线通信时,无需额外开发AXI总线接口,减少资源的浪费。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
图1为本申请实施例提供的一种基于AXI总线的通讯方法的流程图,如图1所示,该方法包括:
S10:接收AXI总线的总线信号,总线信号包括地址通道信号和数据通道信号。
AXI能够使SOC以更小的面积、更低的功耗,获得更加优异的性能。AXI获得如此优异性能的一个主要原因,就是它的单向通道体系结构。单向通道体系结构使得片上的信息流只以单方向传输,减少了延时。除了降低延时,AXI总线还定义了在进出低功耗节电模式前后的握手协议。规定如何通知进入低功耗模式,何时关断时钟,何时开启时钟,如何退出低功耗模式。这使得所有IP在进行功耗控制的设计时,有据可依,容易集成在统一的***中。AXI的特点如下:
单向通道体系结构:信息流只以单方向传输,简化时钟域间的桥接,减少门数量。当信号经过复杂的片上***时,减少延时。
支持多项数据交换:通过并行执行猝发操作,极大地提高了数据吞吐能力,可在更短的时间内完成任务,在满足高性能要求的同时,又减少了功耗。
独立的地址和数据通道:地址和数据通道分开,能对每一个通道进行单独优化,可以根据需要控制时序通道,将时钟频率提到最高,并将延时降到最低。
增强的灵活性:AXI技术拥有对称的主从接口,无论在点对点或在多层***中,都能十分方便地使用AXI技术。
AXI总线具有5个通道,分别是读地址通道、写地址通道、读数据通道、写数据通道、写响应通道。每一个通道都是单向的。地址通道携带控制消息用于描述被传输的数据属性,数据传输使用写通道来实现“主”到“从”的传输,“从”使用写响应通道来完成一次写传输;读通道用来实现数据从“从”到“主”的传输。
在本实施例中,地址通道信号即为读地址通道信号和写地址通道信号,数据通道信号即为读数据通道信号和写数据通道信号。
S11:解析总线信号,将总线信号转换为RAM接口信号,RAM接口信号包括地址信号和数据信号。
在步骤S11中,将总线信号按照读写转换为RAM接口信号,包括读地址信号、写地址信号、读数据信号、写数据信号。
可以理解的是,在RAM接口信号为读信号时,还需要将***设备返回的数据转换为AXI总线信号的模式,通过AXI总线返回给处理器。
S12:根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址。
在具体实施中,AXI总线从处理器上获取的地址通道信号是包含控制各***设备动作的总地址信号,在控制各***设备时均需通过读取总地址信号找到对应的***设备。但是,重复的读取总地址信号会造成信号的冗余,并且会延迟***设备的响应时间,减缓了处理器释放总线权限的速度。
在本实施例中,根据各***设备的地址,对总地址信号进行简化,将位宽较大的总地址信号转换为适配于各个***设备的精简地址。可以理解的是,优化后的精简地址和对应的数据信号一起保存在总线上,并且,该过程基于总线的高频时钟,使得总线能够快速保存数据,提高总线权限的释放速度。
S13:根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。
在步骤S13中,根据各***设备的精简地址,通知各***设备执行对应的读数据或者写数据动作。
本申请实施例提供的基于AXI总线的通讯方法,通过AXI总线接收到总线信号,总线信号包括地址通道信号和数据通道信号,之后对总线信号进行解析,将总线信号转换为RAM接口信号,RAM接口信号包括地址信号和数据信号,根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址,最后根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。相对于当前技术中,需要在***设备上额外开发AXI总线接口,造成了资源的浪费。采用本技术方案,在接收到AXI总线的总线信号后,将总线信号转化成适用于RAM接口的RAM接口信号,使更多的***设备无需再额外开发AXI总线接口,即可实现与处理器通过AXI总线的通信,减少了资源的浪费。并且,根据各***设备的地址将总的地址信号转换为适配各***设备的精简地址,实现将地址信号优化,减小了信号的大小,可以快速保存数据,提高总线权限的释放速度。
在上述实施例的基础上,为了增加数据传输率、处理大量数据流、匹配具有不同传输率的***,对连续的数据流进行缓存,防止在进机和存储操作时丢失数据,避免频繁的总线操作,减轻处理器的负担,以先进先出的模式处理数据。
具体的,在本实施例中,在地址信号转换为精简地址的步骤之后,还包括:
将各***设备的精简地址和对应的数据信号关联,按序保存在待处理队列;
进一步的,根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作包括:
根据精简地址和对应的数据信号在待处理队列的顺序通知各***设备执行对应的动作。
本申请实施例提供的基于AXI总线的通讯方法,将各***设备的精简地址和对应的数据信号存入FIFO存储器中,以先进先出的形式处理数据,能够增加数据传输率,减轻处理器的负担,提升释放总线权限速度。
在具体实施中,有时新的数据信号所对应的***设备还在执行上一个数据信号所对应的动作,并不能及时的响应该新的数据信号,如果不进行处理会导致其他的数据信号无法继续执行任务,或者导致该新的数据信号丢失。
因此,在上述实施例的基础上,在本实施例中,在根据精简地址和对应的数据信号在待处理队列的顺序通知各***设备执行对应的动作的步骤之前,还包括:
判断待处理队列的当前数据所对应的***设备是否为空闲状态;
若是,则进入根据精简地址和对应的数据信号在待处理队列的顺序通知***设备执行对应的动作的步骤;
若否,则将该***设备的精简地址和对应的数据信号存入未响应队列。
可以理解的是,在本实施例中,如果***设备是空闲状态,则执行待处理队列的当前数据所对应的动作。如果不是空闲状态,则把当前数据存入未响应队列,同样的,未响应队列的数据存放也是以先进先出的形式存储的。在后续任务执行中,可以是优先处理未响应队列里的数据;也可以是待处理队列里的数据全部处理后,再处理未响应队列里的数据;还可以是检测到未响应队列里的当前数据对应的***设备空闲时,立即处理未响应队列里的当前数据。
本申请实施例提供的基于AXI总线的通讯方法,将***设备没有及时响应的精简地址和对应的数据信号存入未响应队列,避免由于没有响应而导致信号的丢失或者造成数据处理的延误。
在上述实施例中,对于何时处理未响应队列中的数据不做限定,在上述实施例的基础上,在本实施例中,还包括:
若检测到未响应队列中的精简地址和对应的数据信号所对应的***设备为空闲状态,则优先执行未响应队列中的精简地址和对应的数据信号。
需要说明的是,在本实施例中,未响应队列的执行速度是优先于待处理队列的,如果未响应队列的当前数据和待处理队列的当前数据所对应的***设备是同一个设备且为空闲状态,则该***设备优先执行未响应队列的当前数据所对应的动作。
本申请实施例提供的基于AXI总线的通讯方法,在未响应队列中的当前数据对应的***设备空闲时,优先处理未响应队列中的当前数据,避免该***设备由于没有及时响应当前数据而导致任务的延误。
在具体实施中,由于总线的存储空间是有限的,当总线信号过多时,待处理队列只能存储部分信号。
因此,在上述实施例的基础上,在本实施例中,在将各***设备的精简地址和对应的数据信号关联,按序保存在待处理队列的步骤之前,还包括:
判断待处理队列是否已满;
若否,则进入将各***设备的精简地址和对应的数据信号关联,按序保存在待处理队列的步骤;
若是,则停止总线信号的解析。
本申请实施例提供的基于AXI总线的通讯方法,依据待处理队列的储存空间,在待处理队列已满时停止总线信号的解析,避免数据过多而导致***崩溃。
待处理队列有着存储空间的限制,同样的,未响应队列也有着存储空间的限制。
因此,在上述实施例的基础上,在本实施例中,在将该***设备的精简地址和对应的数据信号存入未响应队列的步骤之前,还包括:
判断未响应队列是否未满且待处理队列非空;
若是,则进入将该***设备的精简地址和对应的数据信号存入未响应队列的步骤。
可以理解的是,在本实施例中,当待处理队列的当前数据所对应的***设备不是空闲状态时,将当前数据存入未响应队列,在存入之前,需要判断未响应队列是否还有存储空间,在未响应队列未满时方可存入当前数据。并且,如果待处理队列中并没有其他的数据信号需要处理,同样的,当前数据也无需转存入未响应队列。当然,在其他实施例中,如果该***设备迟迟不能回到空闲状态,为了避免影响后续新增加的数据信号的处理速度,也可以将当前数据存入未响应队列。
本申请实施例提供的基于AXI总线的通讯方法,在未响应队列未满且待处理队列非空时,将待处理队列的当前数据转存入未响应队列,在其他情况下不进行转存,减少数据的处理量。
在上述实施例的基础上,在本实施例中,若数据信号为读信号,则在通知各***设备执行对应的动作的步骤之后,还包括:
将***设备返回的数据转换为AXI总线的读数据通路格式输出给处理器。
可以理解的是,在总线信号为写通道信号时,解析成RAM接口信号为写信号,处理器根据该写信号实现对***设备的控制。当总线信号为读通道信号时,解析成RAM接口信号为读信号,处理器根据该读信号实现对***设备的控制并从***设备处获取读的数据,该数据需要转换为AXI总线的读数据通路格式方可通过AXI总线返还给处理器。
在上述实施例中,对于基于AXI总线的通讯方法进行了详细描述,本申请还提供基于AXI总线的通讯装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
图2为本申请实施例提供的一种基于AXI总线的通讯装置的结构图,如图2所示,该装置包括:
接收模块10,用于接收AXI总线的总线信号,总线信号包括地址通道信号和数据通道信号;
解析模块11,用于解析总线信号,将总线信号转换为RAM接口信号,RAM接口信号包括地址信号和数据信号;
转换模块12,用于根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址;
调度模块13,用于根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请实施例提供的基于AXI总线的通讯装置,通过AXI总线接收到总线信号,总线信号包括地址通道信号和数据通道信号,之后对总线信号进行解析,将总线信号转换为RAM接口信号,RAM接口信号包括地址信号和数据信号,根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址,最后根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。相对于当前技术中,需要在***设备上额外开发AXI总线接口,造成了资源的浪费。采用本技术方案,在接收到AXI总线的总线信号后,将总线信号转化成适用于RAM接口的RAM接口信号,使更多的***设备无需再额外开发AXI总线接口,即可实现与处理器通过AXI总线的通信,减少了资源的浪费。并且,根据各***设备的地址将总的地址信号转换为适配各***设备的精简地址,实现将地址信号优化,减小了信号的大小,可以快速保存数据,提高总线权限的释放速度。
图3为本申请实施例提供的另一种基于AXI总线的通讯装置的结构图,如图3所示,该装置包括:
存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例基于AXI总线的通讯方法的步骤。
本实施例提供的基于AXI总线的通讯装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的基于AXI总线的通讯方法的相关步骤。另外,存储器20所存储的资源还可以包括操作***202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作***202可以包括Windows、Unix、Linux等。数据203可以包括但不限于地址信号、数据信号、精简地址等。
在一些实施例中,基于AXI总线的通讯装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图3中示出的结构并不构成对基于AXI总线的通讯装置的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的基于AXI总线的通讯装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:接收AXI总线的总线信号,总线信号包括地址通道信号和数据通道信号;解析总线信号,将总线信号转换为RAM接口信号,RAM接口信号包括地址信号和数据信号;根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址;根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。
本申请实施例提供的基于AXI总线的通讯装置,通过AXI总线接收到总线信号,总线信号包括地址通道信号和数据通道信号,之后对总线信号进行解析,将总线信号转换为RAM接口信号,RAM接口信号包括地址信号和数据信号,根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址,最后根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。相对于当前技术中,需要在***设备上额外开发AXI总线接口,造成了资源的浪费。采用本技术方案,在接收到AXI总线的总线信号后,将总线信号转化成适用于RAM接口的RAM接口信号,使更多的***设备无需再额外开发AXI总线接口,即可实现与处理器通过AXI总线的通信,减少了资源的浪费。并且,根据各***设备的地址将总的地址信号转换为适配各***设备的精简地址,实现将地址信号优化,减小了信号的大小,可以快速保存数据,提高总线权限的释放速度。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供的计算机可读存储介质,通过AXI总线接收到总线信号,总线信号包括地址通道信号和数据通道信号,之后对总线信号进行解析,将总线信号转换为RAM接口信号,RAM接口信号包括地址信号和数据信号,根据各***设备的地址,将RAM接口信号中的地址信号转换为适配各***设备的精简地址,最后根据各***设备的精简地址和对应的数据信号通知各***设备执行对应的动作。相对于当前技术中,需要在***设备上额外开发AXI总线接口,造成了资源的浪费。采用本技术方案,在接收到AXI总线的总线信号后,将总线信号转化成适用于RAM接口的RAM接口信号,使更多的***设备无需再额外开发AXI总线接口,即可实现与处理器通过AXI总线的通信,减少了资源的浪费。并且,根据各***设备的地址将总的地址信号转换为适配各***设备的精简地址,实现将地址信号优化,减小了信号的大小,可以快速保存数据,提高总线权限的释放速度。
以上对本申请所提供的一种基于AXI总线的通讯方法、装置以及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (9)
1.一种基于AXI总线的通讯方法,其特征在于,包括:
接收AXI总线的总线信号,所述总线信号包括地址通道信号和数据通道信号;
解析所述总线信号,将所述总线信号转换为RAM接口信号,所述RAM接口信号包括地址信号和数据信号;
根据各***设备的地址,对总地址信号进行简化,将位宽较大的总地址信号转换为适配各所述***设备的精简地址,使得所述精简地址和所述数据信号一起保存在总线上;
根据各所述***设备的所述精简地址和对应的所述数据信号通知各所述***设备执行对应的动作;
在所述地址信号转换为所述精简地址的步骤之后,还包括:
将各所述***设备的所述精简地址和对应的所述数据信号关联,按序保存在待处理队列;
进一步的,所述根据各所述***设备的所述精简地址和对应的所述数据信号通知各所述***设备执行对应的动作包括:
根据所述精简地址和对应的所述数据信号在所述待处理队列的顺序通知各所述***设备执行对应的动作。
2.根据权利要求1所述的基于AXI总线的通讯方法,其特征在于,在所述根据所述精简地址和对应的所述数据信号在所述待处理队列的顺序通知各所述***设备执行对应的动作的步骤之前,还包括:
判断所述待处理队列的当前数据所对应的所述***设备是否为空闲状态;
若是,则进入所述根据所述精简地址和对应的所述数据信号在所述待处理队列的顺序通知所述***设备执行对应的动作的步骤;
若否,则将该所述***设备的所述精简地址和对应的所述数据信号存入未响应队列。
3.根据权利要求2所述的基于AXI总线的通讯方法,其特征在于,还包括:
若检测到所述未响应队列中的所述精简地址和对应的所述数据信号所对应的所述***设备为空闲状态,则优先执行所述未响应队列中的所述精简地址和对应的所述数据信号。
4.根据权利要求1所述的基于AXI总线的通讯方法,其特征在于,在所述将各所述***设备的所述精简地址和对应的所述数据信号关联,按序保存在待处理队列的步骤之前,还包括:
判断所述待处理队列是否已满;
若否,则进入所述将各所述***设备的所述精简地址和对应的所述数据信号关联,按序保存在待处理队列的步骤;
若是,则停止所述总线信号的解析。
5.根据权利要求2所述的基于AXI总线的通讯方法,其特征在于,在所述将该所述***设备的所述精简地址和对应的所述数据信号存入未响应队列的步骤之前,还包括:
判断所述未响应队列是否未满且所述待处理队列非空;
若是,则进入所述将该所述***设备的所述精简地址和对应的所述数据信号存入未响应队列的步骤。
6.根据权利要求1至5任意一项所述的基于AXI总线的通讯方法,其特征在于,若所述数据信号为读信号,则在通知各所述***设备执行对应的动作的步骤之后,还包括:
将所述***设备返回的数据转换为所述AXI总线的读数据通路格式输出给处理器。
7.一种基于AXI总线的通讯装置,其特征在于,包括:
接收模块,用于接收AXI总线的总线信号,所述总线信号包括地址通道信号和数据通道信号;
解析模块,用于解析所述总线信号,将所述总线信号转换为RAM接口信号,所述RAM接口信号包括地址信号和数据信号;
转换模块,用于根据各***设备的地址,对总地址信号进行简化,将位宽较大的总地址信号转换为适配各所述***设备的精简地址,使得所述精简地址和所述数据信号一起保存在总线上;在所述地址信号转换为所述精简地址之后,将各所述***设备的所述精简地址和对应的所述数据信号关联,按序保存在待处理队列;
调度模块,用于根据各所述***设备的所述精简地址和对应的所述数据信号在所述待处理队列的顺序通知各所述***设备执行对应的动作。
8.一种基于AXI总线的通讯装置,其特征在于,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任意一项所述的基于AXI总线的通讯方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任意一项所述的基于AXI总线的通讯方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111594316.4A CN114328350B (zh) | 2021-12-23 | 2021-12-23 | 一种基于axi总线的通讯方法、装置以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111594316.4A CN114328350B (zh) | 2021-12-23 | 2021-12-23 | 一种基于axi总线的通讯方法、装置以及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114328350A CN114328350A (zh) | 2022-04-12 |
CN114328350B true CN114328350B (zh) | 2024-06-14 |
Family
ID=81013714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111594316.4A Active CN114328350B (zh) | 2021-12-23 | 2021-12-23 | 一种基于axi总线的通讯方法、装置以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114328350B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114461541A (zh) * | 2022-04-14 | 2022-05-10 | 广州万协通信息技术有限公司 | 芯片数据读取方法、写入方法、装置、设备以及存储介质 |
CN118069567A (zh) * | 2024-04-16 | 2024-05-24 | 苏州元脑智能科技有限公司 | 一种基于高级可扩展接口总线的通信装置及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605625A (zh) * | 2013-11-29 | 2014-02-26 | 山东大学 | 基于AXI总线的Nor Flash芯片的控制方法 |
CN109471824A (zh) * | 2018-11-22 | 2019-03-15 | 青岛方寸微电子科技有限公司 | 基于axi总线的数据传输***及方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05134973A (ja) * | 1991-11-14 | 1993-06-01 | Toshiba Corp | データ転送装置 |
AU703750B2 (en) * | 1994-10-14 | 1999-04-01 | Compaq Computer Corporation | Easily programmable memory controller which can access different speed memory devices on different cycles |
US6493776B1 (en) * | 1999-08-12 | 2002-12-10 | Mips Technologies, Inc. | Scalable on-chip system bus |
CN103198043B (zh) * | 2013-01-24 | 2016-05-11 | 杭州中科微电子有限公司 | 一种改进的AHB to APB总线桥及其控制方法 |
CN105468547B (zh) * | 2015-11-18 | 2018-07-06 | 哈尔滨工业大学 | 一种基于axi总线的便捷可配置帧数据存取控制*** |
CN110704351A (zh) * | 2019-09-24 | 2020-01-17 | 山东华芯半导体有限公司 | 基于axi总线的主机设备数据传输扩展方法 |
CN111930651B (zh) * | 2020-08-14 | 2022-03-08 | 山东云海国创云计算装备产业创新中心有限公司 | 一种指令执行方法、装置、设备及可读存储介质 |
CN112035389B (zh) * | 2020-08-28 | 2022-08-23 | 西安微电子技术研究所 | 一种plb-axi总线转换桥及其工作方法 |
CN113821465A (zh) * | 2021-09-18 | 2021-12-21 | 深圳忆联信息***有限公司 | 基于sram的axi接口控制方法、装置及计算机设备 |
-
2021
- 2021-12-23 CN CN202111594316.4A patent/CN114328350B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605625A (zh) * | 2013-11-29 | 2014-02-26 | 山东大学 | 基于AXI总线的Nor Flash芯片的控制方法 |
CN109471824A (zh) * | 2018-11-22 | 2019-03-15 | 青岛方寸微电子科技有限公司 | 基于axi总线的数据传输***及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114328350A (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114328350B (zh) | 一种基于axi总线的通讯方法、装置以及介质 | |
US20200409881A1 (en) | Out-of-band interrupt mapping in mipi improved inter-integrated circuit communication | |
US10423558B1 (en) | Systems and methods for controlling data on a bus using latency | |
KR20210011451A (ko) | 하드웨어 가속을 위한 하드웨어 리소스들의 임베디드 스케줄링 | |
US6134625A (en) | Method and apparatus for providing arbitration between multiple data streams | |
US20110197038A1 (en) | Servicing low-latency requests ahead of best-effort requests | |
US11163659B2 (en) | Enhanced serial peripheral interface (eSPI) signaling for crash event notification | |
CN113468097B (zh) | 基于片上***的数据交换方法 | |
US5519872A (en) | Fast address latch with automatic address incrementing | |
US20240106754A1 (en) | Load Balancing Method for Multi-Thread Forwarding and Related Apparatus | |
US20210326277A1 (en) | Inter-Die Memory-Bus Transaction in a Seamlessly Integrated Microcontroller Chip | |
CN103106164A (zh) | 一种高效dma控制器 | |
CN116028413A (zh) | 一种总线仲裁器、总线仲裁的方法、装置及介质 | |
JP2002543489A (ja) | グラフィックスエンジンマスターモード動作の改良 | |
US20060095637A1 (en) | Bus control device, arbitration device, integrated circuit device, bus control method, and arbitration method | |
US7774513B2 (en) | DMA circuit and computer system | |
US9311225B2 (en) | DMA channels | |
US10713188B2 (en) | Inter-process signaling system and method | |
EP2109029B1 (en) | Apparatus and method for address bus power control | |
JP2002149419A (ja) | 割り込みをクリアするロジック・ユニット及び集積回路 | |
US6665752B1 (en) | Interrupt driven interface coupling a programmable media access controller and a process controller | |
JP2005165592A (ja) | データ転送装置 | |
US20200341879A1 (en) | Information processing apparatus and information processing method | |
US9170768B2 (en) | Managing fast to slow links in a bus fabric | |
US20220019459A1 (en) | Controlled early response in master-slave systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |