CN116340239A - 基于相同传输标识符的突发传输访问隔离方法及装置 - Google Patents
基于相同传输标识符的突发传输访问隔离方法及装置 Download PDFInfo
- Publication number
- CN116340239A CN116340239A CN202310334833.0A CN202310334833A CN116340239A CN 116340239 A CN116340239 A CN 116340239A CN 202310334833 A CN202310334833 A CN 202310334833A CN 116340239 A CN116340239 A CN 116340239A
- Authority
- CN
- China
- Prior art keywords
- access
- identifier
- burst
- same
- transmission
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 210
- 238000002955 isolation Methods 0.000 title claims abstract description 48
- 238000000034 method Methods 0.000 claims abstract description 130
- 230000008569 process Effects 0.000 claims abstract description 109
- 230000004044 response Effects 0.000 claims abstract description 84
- 230000007246 mechanism Effects 0.000 claims abstract description 23
- 238000004590 computer program Methods 0.000 claims description 7
- 230000007723 transport mechanism Effects 0.000 claims 3
- 238000012545 processing Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 14
- 238000012546 transfer Methods 0.000 description 13
- 230000008901 benefit Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 101100328518 Caenorhabditis elegans cnt-1 gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005191 phase separation Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0038—System on Chip
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及数据处理领域,具体涉及一种基于相同传输标识符的突发传输访问隔离方法及装置,所述方法包括:接收主机发送的多个包含传输标识符的访问请求,其中存在至少两个访问请求具有相同传输标识符;响应于具有相同传输标识符的多个访问请求中的任一访问请求,实时更新基于相同传输标识符的访问进程的数量;当检测到任一访问请求不具有访问权限且基于相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程时,根据AXI总线的突发传输机制向主机发送任一访问请求不具有访问权限的响应信号。所述方法能够实现突发传输中基于相同传输标识符的多个访问结果按照访问请求顺序回传并有效提高突发传输的数据传输效率。
Description
技术领域
本发明涉及数据处理领域,具体涉及一种基于相同传输标识符的突发传输访问隔离方法及装置。
背景技术
突发传输(Burst传输)系一种基于AXI总线的访问机制,其能够连续访问多个地址相邻的数据且每一笔传输中可以包含多个数据。在基于AXI总线的Bu rst传输中主机根据有效的访问权限对从机进行访问并获取相应的访问结果,而对于不具有访问权限的非法访问等情形则需要对访问进程进行隔离;现有的访问隔离方法是在发生非法访问时暂停后续的访问进程,等待当前的非法访问及先前的所有访问完成并返回访问结果后再恢复后续的访问进程,这种隔离方式由于耗费较长的等待时间而严重影响传输数据的效率。因此有必要提供一种新的突发传输访问隔离机制。
发明内容
本发明的目的在于提供一种基于相同传输标识符的突发传输访问隔离方法及装置,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的上述问题。
根据本发明的一个方面,提供一种基于相同传输标识符的突发传输访问隔离方法,主机通过基于AXI总线的突发传输机制对从机进行访问,所述方法包括:
接收主机发送的多个包含传输标识符的访问请求,其中存在至少两个访问请求具有相同传输标识符;
响应于具有相同传输标识符的多个访问请求中的任一访问请求,实时更新基于所述相同传输标识符的访问进程的数量;
当检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程时,根据所述AXI总线的突发传输机制向所述主机发送所述任一访问请求不具有访问权限的响应信号。
在一实施例中所述实时更新基于所述相同传输标识符的访问进程的数量包括:
在接收到具有相同传输标识符的多个访问请求中的任一访问请求时增计所述访问进程的数量,及检测到所述数量的访问进程中任一访问进程返回响应信号时减计所述访问进程的数量。
在一实施例中所述检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程包括:
所述不具有访问权限的访问请求为接收到的基于相同传输标识符的多个访问请求中的第一个访问请求。
在一实施例中所述检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程包括:
所述不具有访问权限的访问请求为接收到的基于相同传输标识符的多个访问请求中的第N个访问请求,且基于所述相同传输标识符的前N-1个访问进程均已返回响应信号;其中N≥2且N为整数。
在一实施例中所述根据所述AXI总线的突发传输机制向所述主机发送所述任一访问请求不具有访问权限的响应信号包括:
当检测到所述AXI总线中存在可用信道时通过所述可用信道向所述主机发送所述任一访问请求不具有访问权限的响应信号。
在一实施例中所述基于相同传输标识符的突发传输访问隔离方法还包括:根据所述主机的地址信息和访问类型预先配置主机对从机的访问权限,其中所述访问类型至少包括数据读取访问和数据写入访问之一。
在一实施例中所述传输标识符为不同主机的识别标识或同一主机不同物理端口的识别标识。
根据本发明的另一方面,提供一种基于相同传输标识符的突发传输访问隔离装置,主机通过基于AXI总线的突发传输机制对从机进行访问,所述装置包括:
接收模块,用于接收主机发送的多个包含传输标识符的访问请求,其中存在至少两个访问请求具有相同传输标识符;
更新模块,用于响应于具有相同传输标识符的多个访问请求中的任一访问请求实时更新基于所述相同传输标识符的访问进程的数量;
响应模块,用于在检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程时,根据所述AXI总线的突发传输机制向所述主机发送所述任一访问请求不具有访问权限的响应信号。
根据本发明的另一方面,提供一种电子设备,包括:
至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述基于相同传输标识符的突发传输访问隔离方法。
根据本发明的另一方面,提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述基于相同传输标识符的突发传输访问隔离方法。
本发明针对突发传输中非法访问造成所有后续访问停滞的问题提供一种基于相同传输标识符的突发传输访问隔离方法及装置,所述方法针对非法访问的情形通过对基于相同传输标识符的多个访问进程的控制,能够使得具有相同传输标识符的多个访问请求顺序进行响应的同时其他不同传输标识符的访问请求能够继续访问而不被阻断,从而有效提高突发传输的数据传输效率和准确性。
附图说明
图1是本发明一示例性实施例中一种基于相同传输标识符的突发传输访问隔离方法的流程示意图;
图2是本发明一示例性实施例中一种AXI总线系统的结构示意图;
图3是本发明一示例性实施例中一种硬件隔离模块的结构示意图;
图4是本发明一示例性实施例中一种突发传输的访问进程的时序图;
图5是本发明一示例性实施例中一种突发传输的访问进程的时序图;
图6是本发明一示例性实施例中一种基于相同传输标识符的突发传输访问隔离装置的结构示意图。
具体实施方式
为使本发明的目的、特征、优点能够更加的明显和易懂,下面将结合附图本发明实施方式及实施例中的技术方案进行清楚、完整地描述。然而,示例实施方式及实施例能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式及实施例使得本发明将更加全面和完整,并将示例实施方式及实施例的构思全面地传达给本领域的技术人员。本发明所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式及实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式及实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本发明的各方面变得模糊。
此外,附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。尽管在附图中以特定顺序描述了本发明中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附图中所示的流程图仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
突发传输(Burst传输)系一种基于AXI总线的数据访问传输机制,其能够连续访问多个地址相邻的数据且每一笔传输中可以包含多个数据,在基于AXI总线的Burst传输机制中能够同时支持outstanding超前访问和out of order乱序访问以满足复杂SoC芯片对高性能总线的需求。其中outstanding超前访问是指不需要等待前一笔传输完成就可以发送下一笔传输,out of order乱序访问是指当有多个事务在传输时返回数据和响应可以不按照主机master访问的顺序,先准备好的数据可以先返回给主机master。outstanding超前访问和out of order乱序访问系基于访问请求中的传输标识符ID实现对从机slave中数据的访问,主机master通过传输标识符ID访问请求与响应结果的一致性,即判断当前返回的数据和响应是属于同一笔传输,从机需要返回合适的BID信号或者RID信号来响应主机的传输标识符ID。
在大量数据传输中可能会出现非预期的主机master访问片上资源的情形(即非法访问情形),因此需要对非预期访问进行安全隔离以保持高效率的数据传输。具体来说,在基于AXI总线的Burst传输机制中主机根据有效的访问权限对从机进行访问并获取相应的访问结果,若主机基于相同的传输标识符发起多个访问请求,则该多个访问请求需要按照访问顺序依次返回响应结果,以满足AXI总线中master发起多个相同ID的访问必须顺序返回访问结果的特性。然而,在以上情形中如存在某一非法访问的情形,则通常需要中止该非法访问之后的访问进程,即拉低读写地址通道的awready/arready信号来使得后续所访问进程中止,等待该非法访问及先前的所有访问完成并返回访问结果后再恢复后续的访问进程。这种隔离方式由于耗费较长的等待时间而严重影响传输数据的效率。
鉴于相关技术中存在的上述问题,本发明提供了一种基于相同传输标识符的突发传输访问隔离方法,主机通过基于AXI总线的突发传输对从机进行访问,所述方法能够实现在突发传输中根据相同传输标识符发出的多个访问请求的响应结果按照访问顺序回传,避免了在连续访问中因存在不具有访问权限而导致延迟回传访问结果的情形,从而有效提高突发传输的数据传输效率和准确性。
本发明一示例性实施例提供了一种基于相同传输标识符的突发传输访问隔离方法,图1是本发明一示例性实施例中一种基于相同传输标识符的突发传输访问隔离方法的流程示意图;主机通过基于AXI总线的突发传输对从机进行访问,如图1所示,所述方法包括以下步骤:
步骤S11:接收主机发送的多个包含传输标识符的访问请求,其中存在至少两个访问请求具有相同传输标识符;
AXI(Advanced eXtensible Interface)总线系一种面向高性能、高带宽、低延迟的片内总线,其特点在于地址/控制及数据相位分离,支持非对齐的数据传输且在突发传输中只需要首地址即可完成传输,具有独立的读写数据通道,AX I总线由于单向通道体系结构使得片上的信息流只以单方向传输,可以在高时钟频率下运行且在延滞时间长的状况下仍可达成高数据吞吐率,因而广泛应用于超高性能和复杂的片上系统(SoC)设计中,能够使SoC芯片以更小的面积、更低的功耗而获得更加优异的性能。
AXI总线系统由主机Master、从机Slave和连接通道Interconnect等基本器件搭建而成,AXI总线共有写地址、写数据、写回应、读地址、读数据等5个独立通道,主机Master分别通过写地址、写数据、写回应、读地址、读数据通道实现对从机Slave的数据读写与回复等,并且读/写请求的发送通道与读/写结果的返回相互分离、将数据写入从机和和从机读取数据的通道相分离,因而可以同时进行写入和读取操作,最大限度地提高总线的数据吞吐率。AXI总线支持Bur st传输、Outstanding传输及Out-of-order传输等,其中Burst传输能够连续访问多个地址相邻的数据,outstandding传输系当前访问完成前可以同步进行下一笔访问,具有较高的数据传输效率;out of order传输系当存在多个传输任务时返回数据和响应可以不按照master访问的顺序,先完成的访问进程可以先给主机m aster返回响应结果。
传输标识符(AXI ID transaction identifiers)系用于识别发送访问请求的主体标识,其可以是不同主机master的识别标识,也可以是同一主机master不同物理端口的识别标识,在burst传输中具有不同传输标识符的访问请求可以在其访问完成时返回响应信,而基于相同传输标识符的访问请求则需要按照访问请求的发出顺序依次返回响应信号。本发明示例性实施例针对基于AXI总线的突发传输机制提出一种无需耗费等待时长的访问隔离机制,图2是本发明示例性实施例中一种基于相同传输标识符的突发传输访问隔离方法的应用场景示意图。如图2所示,AXI总线系统包括主机Master1~3、从机Slave1~4、连接通道Interconn ect及AXI总线,其中主机master及从机slave的端口分别包括5个双向流量控制信道,该信道的发送端以信号valid的高电平表示有效发送数据,接收端以信号ready的高电平表示有效接受数据,当且仅当vaild及ready同为高电平实现数据的有效传输。示例性地,连接通道Interconnect包含用于主、从机在不同时钟域、不同数据位宽的自动切换的功能模块,此外还设置有用于实现本发明各实施例中访问隔离方法的隔离控制模块;再一示例性地,AXI总线系统除包含连接通道外,还设置有用于实现本发明各实施例中访问隔离方法的隔离控制模块。在图2所示的场景中任一主机响应于数据访问指令,经AXI总线将访问请求发送至连接通道Interconnect;其中访问请求包括所访问从机的地址信息,示例而言,AX I总线系统中的从机可以是存储器设备,则地址信息为存储器的基地址;根据所访问数据在存储器中的存储位置,访问请求中还可以包括所访问数据的地址信息,如所访问数据为存储于0x4地址的32位数据,则主机可以根据存储器的基地址及该数据地址实现数据读取访问。
步骤S13:响应于具有相同传输标识符的多个访问请求中的任一访问请求,实时更新基于所述相同传输标识符的访问进程的数量;
具体而言,在接收到每个访问请求时记录其传输标识符对应的访问进程的数量,当传输标识符仅对应一个访问请求时其访问进程的数量为1;当传输标识符对应多个访问请求,其接收第一个访问请求时记录访问进程的数量为1,此后每接收一个访问请求其访问进程的数量均增加1;此外,在接收到具有相同传输标识符的多个访问请求中的任一访问请求时增计所述访问进程的数量,及检测到所述数量的访问进程中任一访问进程返回响应信号时减计所述访问进程的数量。在根据接收到的访问请求增计访问进程数量的同时也根据访问进程的数量减计其数量,由于这些访问进程均以访问请求的顺序返回响应结果,因此在所记录的访问进程中每个出现一个访问进程结束并返回响应结果时相应地减计之前所记录的访问进程的数量,当该访问进程之前的访问进程全部结束时相应地访问进程的数量也减计为1。通过所述方式可以实时监测该访问请求之前是否还存在正在进行的访问进程,如果存在则等待该访问进程返回响应结果时则针对该访问请求返回响应结果,如果不存在则可以根据总线协议直接返回该访问请求的响应结果。
步骤S15:当检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程时,根据所述AXI总线的突发传输机制向所述主机发送所述任一访问请求不具有访问权限的响应信号。
详细而言,检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程包括:所述不具有访问权限的访问请求为接收到的基于相同传输标识符的多个访问请求中的第一个访问请求;或者不具有访问权限的访问请求为接收到的基于相同传输标识符的多个访问请求中的第N个访问请求,且基于所述相同传输标识符的前N-1个访问进程均已返回响应信号;其中N≥2且N为整数。在车辆系统应用场景中主机master可以是车辆系统的主驾驶控制端、副驾驶控制端及后座控制端等应用域,从机slave可以是车辆系统中具有配置应用域权限功能的安全域,符合权限访问条件的应用域可以访问安全域并传输数据。在不设置任何访问权限管理的主从访问机制中主机可能根据AXI总线访问任何从机而造成访问机制的紊乱及系统功能故障,此外,在实践应用中并非每一个从机都需要任意主机的访问,例如一些特定化应用的从机仅需接收某一特定主机的访问,若不设置任何访问权限的情形下任意主机均可访问该从机,则可能导致数据安全的问题;因此,本方案中针对主机master设置有对各从机slave进行访问的权限,在具有访问权限时即可进行访问,而在不具有权限时通过隔离控制模块对其访问进程进行隔离。
在一示例性实施例中所述方法还包括:预先配置主机与从机之间的访问权限信息。示例而言,可以根据主机的地址信息配置特定从机与特定主机的访问权限,例如在图2所示的场景中从机2不允许主机1的访问,或者在特定情形下不允许主机2的访问,则可以根据访问请求中的主机的地址信息对权限进行判定;还可以针对访问请求设置访问权限,例如从机3不允许读取其存储数据的访问请求,从机4不允许向其写入数据的访问请求,在这种情况下需要先判定所述访问请求读数据请求时,通过AXI总线的读地址通道根据预设的访问权限规则判断所述主机是否具有对所述从机的读取数据权限;以及在判定所述访问请求为写数据访问请求时,通过AXI总线的写地址通道根据预设的访问权限规则判断所述主机是否具有对所述从机的写入数据权限。可以理解,访问权限可以是针对特定主从机之间配置的,也可以是在多个主从机之间配置的权限访问规则。预设的访问权限规则可以是各主机与从机一对一的访问权限,也可以是一对多、多对一或多对多的访问权项;此外,在主机与从机一对多、多对一及多对多的访问权项规则下,还可以设置同一主机对多个从机的同时访问或依次访问的规则,或者多个主机对同一从机的同时访问或依次访问的规则;简言之,预设的访问权限规则可以根据实际需要设置为多种形式,本方案对此并不做任何限制性说明。
在一示例性实施例中访问请求为读取数据请求,则控制所述主机通过所述A XI总线的数据通道根据访问所述从机可以包括:控制主机通过所述AXI总线的读数据通道根据所述至少一数据读取信息读取所述从机中的特定数据;在另一示例性实施例中,访问请求为写入数据请求,则控制所述主机通过所述AXI总线的数据通道根据所述至少一访问信息访问所述从机可以包括:控制主机通过所述AXI总线的下写读数据通道根据所述至少一数据写入信息向所述从机写入特定数据;在另一示例性实施例中,访问请求包括读取数据请求也包括写入数据请求,则所述方法既包含控制主机通过所述AXI总线的读数据通道根据所述至少一数据读取信息读取所述从机中的特定数据,也包含控制主机通过所述AXI总线的写读数据通道根据所述至少一数据写入信息向所述从机写入特定数据。
在基于AXI总线的突发传输机制中通常连续进行的多笔数据访问,以下以连续接收到9个访问请求的Burst传输为示例,对非法访问隔离机制进行详细阐述。隔离控制模块接收到一个或多个主机发送的9笔Burst传输的访问请求,其包含的传输标识符顺序依次为A、B、C、D、D、D、E、F、G,假设此时9笔传输返回访问结果的顺序与所发送的访问请求中传输标识符号的顺序相同,即其中有三个访问请求包含相同的传输标识符,在响应访问的过程中需要保证其响应结果按照访问请求的顺序依次返回。
当检测到针对传输标识符D的访问请求(其访问进程分别为D1、D2及D3)中任一访问请求不具有访问权限时,需要根据是否存在正在进行的访问进程来确定是否返回该不具有访问权限的访问请求的响应结果。示例性的,如访问请求D2不具有访问权限,则可以确定基于传输标识符D正在进行访问的访问数量为2(访问进程D1和访问进程D2);为实现访问进程D1和访问进程D2依次向主机返回响应信号,需要等所访问进程D1完成访问并返回响应信号后,访问进程D2再向主机返回其响应信号;因此在步骤S15中需要首先确定访问进程D1已经结束且返回响应结果,即只剩下D2这一访问进程时返回其对应的响应结果,此时针对访问请求D2不具有访问权限的情形根据预定的响应规则向主机返回响应信号。
在所述基于相同传输标识符的突发传输访问隔离方法中,当AXI总线没有访问权限时不对awready/arready信号做反压处理,而是通过设计id_fifo和errid_fifo以及相应的cnt来对b通道和r通道的bid/rid进行硬件处理,从而保证后续burst传输继续进行。具体地说,id_fifo和errid_fifo的深度可以设定为支持的最大的outstanding数。id_fifo和errid_fifo分别对应id_cnt和errid_cnt,其结构示意图如图3所示,id_fifo记录所有AXI总线数据传输的传输标识符,且不同传输标识符对应着不同的id_cnt;当有数据传输时id_fifo记录此时的传输标识符,且对应的cnt数加1,表示当前传输标识符有一笔burst传输未完成。当对应传输标识符的通道数据返回时,相应的id_cnt数减1,表示当前传输标识符有一笔b urst传输完成,从而通过id_cnt的cnt数获知当前各个传输标识符的未完成的burst传输笔数。
其次,errid_fifo记录当AXI总线无权限访问时的传输标识符,当总线上出现无访问权限时的传输标识符传输时,隔离控制模块从id_fifo中寻找是否已经有相应的传输标识符来决定是否更新自身的errid_cnt;若能在id_fifo中找到此时无权限访问时的传输标识符,则将errid_cnt更新成对应的id_cnt里的cnt数,代表前面有相同传输标识符的burst传输未完成;当对应的传输标识符的通道数据返回时,errid_cnt的cnt数减1,当errid_cnt的cnt数为1时则可以将访问出错的响应resp置于总线上;若未能在id_fifo中找到此时无权限访问时的传输标识符,则errid_cnt的cnt数更新为1,代表前面无相同传输标识符的burst传输未完成,此时当返回通道空闲时将无访问权限传输的响应resp置于总线上进行回传。
详细而言,步骤S15可以通过隔离控制模块中的id_fifo模块及errid_fifo模块实现。如图3所示,在接收到访问请求时通过id_fifo模块的子模块记录该访问请求的传输标识符ID及该传输标识符当前访问进程的数量id_cnt,如接收到访问请求A时子模块ID1记录访问请求A的传输标识符A及当前访问数量1,接收到访问请求B时子模块ID2记录访问请求B的传输标识符B及当前访问数量1,接收到访问请求C时子模块ID3记录访问请求C的传输标识符C及当前访问数量1,接收到访问请求D1时子模块ID4记录访问请求D的传输标识符D及当前访问数量1,接收到访问请求D 2时子模块ID4将访问数量增记为2(c nt+1),以及接收到访问请求D 3时子模块ID4将访问数量增记为3。
在检测到访问请求D 2不具有访问权限的时序信号如图4所示,对于不具有访问权限的情形并不对Aweady/Arready信号进行反压处理,而是根据子模块ID 4记录的数量2将errid_fifo模块的ERRID1子模块的errid_cnt更新为2,表示传输标识符D当前存在两个访问进程D1和D 2;其次通过errid_fifo模块对访问进程D1进行监测,当监测到errid_cnt更新为1时则访问进程D1已经完成并返回响应信号,此时传输标识符D仅存在不具有访问权限的进程访问进程D 2,针对该访问进程向主机返回不具有访问权限的响应信号。
再一示例性地,当检测到访问进程D3不具有访问权限时根据子模块ID4记录的数量3将errid_fifo模块的errid_cnt更新为3,每完成一访问进程errid_cnt的数量便减计1(cnt-1),当监测到errid_cnt更新为1时访问进程D1、D 2均已经完成并返回响应信号,基于传输标识符D仅存在不具有访问权限的进程访问进程D 3,则针对该访问进程向主机返回不具有访问权限的响应信号;在当前访问进程中存在对所述从机的多个访问进程时,控制所述主机按照所述多个访问进程的优先级顺序访问所述从机。
上述示例性实施例阐述了burst传输访问隔离机制中针对同一传输标识符存在多个访问进程时对无访问权限请求的响应机制,而除传输标识符D之外还存在传输标识符A、B、C、E、F、G均仅存在一个访问进程,以及基于传输标识符D的访问请求D1进行判断时亦仅存在一个访问进程,针对该情形的时序信号图如图5所示,当判断该访问请求不具有访问权限时根据预定的响应规则向主机返回响应信号即可。在burst传输中传输标识符ID作为每个访问请求的标识信息用于确定访问请求与响应结果之间的对应关系,对于不同传输标识符的访问进程,主机根据所接收的响应信号所包含的同样的传输标识符确定其对应的访问请求;而基于同一传输标识符的多个访问进程由于其返回的响应信号所包含的传输标识符相同,主机难以根据其传输标识符来确定对应的访问请求,如无访问权限的D 2在D1之前返回响应结果,则主机可能将其认定为D1的响应结果;或者无访问权限的D3在D 2之前返回响应结果,则主机可能将其认定为D2的响应结果;这些情形均可能导致访问请求与响应信号对应紊乱的情形,因此需要保持同一传输标识符的多个访问进程返回响应信号顺序与主机发送访问请求的顺序相同。例如在当前访问进程中存在对所述传输标识符的多个访问进程D1、D 2和D3且访问请求D3不具有访问权限时,为实现D1、D 2、D3返回访问结果的顺序与所发送访问请求的顺序相同,访问进程D1和D 2可以按照访问请求的顺序依次访问从机并返回响应信号,而不具有访问权限的访问进程需要等待访问进程D1和D 2全部完成后再向主机返回不具有访问权限的响应信号。
在一示例性实施例中预设的响应规则可以包括:对AXI总线的信道进行监测,当AXI总线中存在可用信道时向所述主机返回不具有访问权限的响应信号。其中可用信道系AXI总线中当前并无数据传输的空置信道,在需要数据传输时即可通过该信道对数据进行传输;详细而言,AXI总线中通常设置有一定数量的数据传输信道,每个信道在同一时刻仅能实现一个数据或信号的传输,若在返回不具有访问权限的响应信号之前所有信道均处于传输数据的状态,则需要等待其中某一数据传输完成时再通过其空置出来的信道返回不具有访问权限的响应信号;更进一步地,若在返回不具有访问权限的响应信号之前,还存在等待传输的数据,则需要所等待传输的数据依次进行传输且最后一个所等待的数据进入传输状态之后,当其中某一数据传输完成时再通过其空置出来的信道返回不具有访问权限的响应信号。此外,所述不具有访问权限的响应信号的具体形式可以根据访问请求的类型进行确定,若访问请求为数据读取访问请求,则在监测到AXI总线的读数据通道存在可用信道时向主机返回不具有访问权限的读取响应信号;若访问请求为数据写入访问请求,则在监测到AXI总线的写数据通道存在可用信道时向主机返回不具有访问权限的写入响应信号。
本发明另一示例性实施例提供了一种基于相同传输标识符的突发传输访问隔离装置,图6是本发明一示例性实施例中一种基于相同传输标识符的突发传输访问隔离装置的结构示意图,所述装置用于主机通过基于AXI总线的突发传输对从机进行访问,如图6所示,基于相同传输标识符的突发传输访问隔离装置包括:
接收模块60,用于接收主机发送的多个包含传输标识符的访问请求,其中存在至少两个访问请求具有相同传输标识符;
更新模块62,用于响应于具有相同传输标识符的多个访问请求中的任一访问请求实时更新基于所述相同传输标识符的访问进程的数量;
响应模块64,用于在检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程时,根据所述AXI总线的突发传输机制向所述主机发送所述任一访问请求不具有访问权限的响应信号。
上述装置中各模块/单元的具体细节已经在对应的方法部分进行了详细的描述,此处不再赘述。应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
除上述方法和设备以外,本发明的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本发明各种实施例的方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本发明实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如C语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
本发明的另一实施方式提供了一种电子设备,可以用于执行本示例实施方式中所述方法全部或者部分步骤。所述装置包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本说明书上述“示例性方法”中描述的根据本发明各种实施例的方法中的步骤。
本发明的另一实施方式提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”中描述的根据本发明各种实施例的方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本发明的基本原理,但是,需要指出的是,在本发明中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本发明的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本发明为必须采用上述具体的细节来实现。
本发明中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“如但不限于”,且可与其互换使用。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种基于相同传输标识符的突发传输访问隔离方法,其特征在于,主机通过基于AXI总线的突发传输机制对从机进行访问,所述方法包括:
接收主机发送的多个包含传输标识符的访问请求,其中存在至少两个访问请求具有相同传输标识符;
响应于具有相同传输标识符的多个访问请求中的任一访问请求,实时更新基于所述相同传输标识符的访问进程的数量;
当检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程时,根据所述AXI总线的突发传输机制向所述主机发送所述任一访问请求不具有访问权限的响应信号。
2.根据权利要求1所述的基于相同传输标识符的突发传输访问隔离方法,其特征在于,所述实时更新基于所述相同传输标识符的访问进程的数量包括:
在接收到具有相同传输标识符的多个访问请求中的任一访问请求时增计所述访问进程的数量,及检测到所述数量的访问进程中任一访问进程返回响应信号时减计所述访问进程的数量。
3.根据权利要求1所述的基于相同传输标识符的突发传输访问隔离方法,其特征在于,所述检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程包括:
所述不具有访问权限的访问请求为接收到的基于相同传输标识符的多个访问请求中的第一个访问请求。
4.根据权利要求1所述的基于相同传输标识符的突发传输访问隔离方法,其特征在于,所述检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程包括:
所述不具有访问权限的访问请求为接收到的基于相同传输标识符的多个访问请求中的第N个访问请求,且基于所述相同传输标识符的前N-1个访问进程均已返回响应信号;其中N≥2且N为整数。
5.根据权利要求1所述的基于相同传输标识符的突发传输访问隔离方法,其特征在于,所述根据所述AXI总线的突发传输机制向所述主机发送所述任一访问请求不具有访问权限的响应信号包括:
当检测到所述AXI总线中存在可用信道时通过所述可用信道向所述主机发送所述任一访问请求不具有访问权限的响应信号。
6.根据权利要求1所述的基于相同传输标识符的突发传输访问隔离方法,其特征在于,还包括:
根据所述主机的地址信息和访问类型预先配置主机对从机的访问权限,其中所述访问类型至少包括数据读取访问和数据写入访问之一。
7.根据权利要求1所述的基于相同传输标识符的突发传输访问隔离方法,其特征在于,所述传输标识符为不同主机的识别标识或同一主机不同物理端口的识别标识。
8.一种基于相同传输标识符的突发传输访问隔离装置,其特征在于,主机通过基于AXI总线的突发传输机制对从机进行访问,所述装置包括:
接收模块,用于接收主机发送的多个包含传输标识符的访问请求,其中存在至少两个访问请求具有相同传输标识符;
更新模块,用于响应于具有相同传输标识符的多个访问请求中的任一访问请求实时更新基于所述相同传输标识符的访问进程的数量;
响应模块,用于在检测到所述任一访问请求不具有访问权限且基于所述相同传输标识符的访问进程的数量中仅存在基于不具有访问权限的访问请求的访问进程时,根据所述AXI总线的突发传输机制向所述主机发送所述任一访问请求不具有访问权限的响应信号。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7任一项所述的基于相同传输标识符的突发传输访问隔离方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的基于相同传输标识符的突发传输访问隔离方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310334833.0A CN116340239A (zh) | 2023-03-24 | 2023-03-24 | 基于相同传输标识符的突发传输访问隔离方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310334833.0A CN116340239A (zh) | 2023-03-24 | 2023-03-24 | 基于相同传输标识符的突发传输访问隔离方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116340239A true CN116340239A (zh) | 2023-06-27 |
Family
ID=86875970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310334833.0A Pending CN116340239A (zh) | 2023-03-24 | 2023-03-24 | 基于相同传输标识符的突发传输访问隔离方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116340239A (zh) |
-
2023
- 2023-03-24 CN CN202310334833.0A patent/CN116340239A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7181556B2 (en) | Transaction request servicing mechanism | |
US6857035B1 (en) | Methods and apparatus for bus mastering and arbitration | |
JP5546635B2 (ja) | データ転送装置およびその制御方法 | |
US7512723B2 (en) | Queued interface devices, multi-core peripheral systems, and methods for sharing a peripheral in a multi-core system | |
KR100915260B1 (ko) | 오토믹 세마포어 연산을 수행하기 위한 방법 및 장치 | |
EP2667296A1 (en) | Method and apparatus of data processing | |
US11983136B2 (en) | PCIe device and operating method thereof | |
US20120215941A1 (en) | Accessing a configuration space of a virtual function | |
CN115357926B (zh) | 基于SoC芯片的AXI总线协议访问权限控制方法及装置 | |
US6397279B1 (en) | Smart retry system that reduces wasted bus transactions associated with master retries | |
US11928070B2 (en) | PCIe device | |
KR102568909B1 (ko) | PCIe 펑션 및 그 동작 방법 | |
US6959354B2 (en) | Effective bus utilization using multiple bus interface circuits and arbitration logic circuit | |
CN110896372B (zh) | 一种i2c链路切换方法、终端及存储介质 | |
CN116303207A (zh) | 一种总线传输方法、装置、设备及存储介质 | |
JP2591502B2 (ja) | 情報処理システムおよびそのバス調停方式 | |
US9858222B2 (en) | Register access control among multiple devices | |
CN116340239A (zh) | 基于相同传输标识符的突发传输访问隔离方法及装置 | |
JP2014167818A (ja) | データ転送装置およびデータ転送方法 | |
US20020178316A1 (en) | System and method for defining private functions of a multi-function peripheral device | |
JP2020098386A (ja) | バスシステム | |
US20240160598A1 (en) | Processing system, related integrated circuit, device and method | |
KR20070062537A (ko) | 혼합된 아키텍처를 갖는 시스템에서 원자적 연산을이용하여 정보 유닛을 수정하기 위한 방법 및 장치 | |
US20080288967A1 (en) | Procedure calling method, procedure calling program, and computer product | |
US6611882B1 (en) | Inbound and outbound message passing between a host processor and I/O processor local memory |
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 |