一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

处理环形缓冲器更新的制作方法

2021-11-05 18:39:00 来源:中国专利 TAG:

技术特征:
1.一种装置,所述装置包括:环形缓冲器存储电路,所述环形缓冲器存储电路用于存储包括多个插槽的环形缓冲器以保持数据项的排队序列;数据处理电路,所述数据处理电路用于执行多个过程以将待处理的一个或多个数据项添加到所述排队序列以及从所述排队序列中移除一个或多个数据项以供处理,其中每个过程被布置成执行获取过程以获取所述环形缓冲器中的至少一个插槽以及随后执行释放过程以释放所述至少一个插槽;和环形缓冲器元数据存储电路,所述环形缓冲器元数据存储电路用于存储所述环形缓冲器的元数据,所述元数据包括第一参考指示符和第二参考指示符,所述第一参考指示符包括指示当前插槽的位置的当前插槽指示符和指示所述环形缓冲器的所述多个插槽中的一个或多个未决插槽的存在和位置的未决插槽指示符,并且所述第二参考指示符包括指示所述当前插槽的预期位置的预期插槽指示符,所述一个或多个未决插槽已在所述当前插槽之后被获取,其中当所述过程执行所述获取过程以获取所述环形缓冲器中的所述至少一个插槽时,预期插槽值是所述预期插槽指示符的值,其中所述释放过程包括尝试更新所述环形缓冲器的所述第一参考指示符,包括原子操作,在所述原子操作中将所述过程的所述预期插槽值与所述当前插槽指示符进行比较,并且当所述当前插槽指示符匹配所述预期插槽值时,通过将所述当前插槽指示符的值修改预定值来更新至少所述当前插槽指示符,并且当所述当前插槽指示符不匹配所述预期插槽值时,通过修改所述未决插槽指示符的值来更新所述未决插槽指示符,以指示所述环形缓冲器的一个或多个未决插槽的所述存在和所述位置,而不更新所述当前插槽指示符。2.根据权利要求1所述的装置,其中当所述当前插槽指示符不匹配所述预期插槽值,并且所述预期插槽值指示所述当前插槽的相对于所述排队序列的顺序不位于由所述当前插槽指示符指示的所述当前插槽之后的预期位置时,不更新所述第一参考指示符。3.根据权利要求1所述的装置,其中当所述当前插槽指示符不匹配所述预期插槽值时,通过修改所述未决插槽指示符的所述值来更新所述未决插槽指示符,以指示所述环形缓冲器中的一个或多个未决插槽相对于由所述当前插槽指示符指示的所述当前插槽的所述存在和所述位置。4.根据权利要求1所述的装置,其中所述未决插槽指示符包括极限指示符,所述极限指示符指示相对于所述排队序列的顺序位于距所述环形缓冲器中的所述当前插槽最远的最远未决插槽的位置。5.根据权利要求4所述的装置,其中所述未决插槽指示符包括变化指示符,所述变化指示符的变化指示所述当前插槽与所述最远未决插槽之间的未决插槽的数量的变化。6.根据权利要求5所述的装置,其中当所述当前插槽指示符不匹配所述预期插槽值时,通过修改所述极限指示符和所述变化指示符中的至少一者来更新所述未决插槽指示符。7.根据权利要求6所述的装置,其中当所述预期插槽值指示相对于所述排队序列的顺序比由所述极限指示符指示的所述最远未决插槽位于距所述环形缓冲器中的所述当前插槽更远的插槽时,更新所述极限指示符。8.根据权利要求7所述的装置,其中基于所述预期插槽值来更新所述极限指示符,以指
示所述最远未决插槽的不同位置。9.根据权利要求5所述的装置,其中当所述预期插槽值指示位于所述当前插槽与所述最远未决插槽之间的插槽时,更新所述变化指示符而不更新所述极限指示符。10.根据任一前述权利要求所述的装置,其中当所述当前插槽指示符匹配所述预期插槽值并且所述未决插槽指示符指示所述环形缓冲器的一个或多个未决插槽的存在时,通过根据与所述当前插槽邻接的连续未决插槽的数量修改所述当前插槽指示符的所述值来更新所述当前插槽指示符。11.根据权利要求10所述的装置,其中所述当前插槽指示符的所述值被修改以指示所述一个或多个连续未决插槽中的最远未决插槽,并且其中所述最远未决插槽是所述一个或多个连续未决插槽中位于距所述环形缓冲器中的所述当前插槽最远的未决插槽。12.根据权利要求1所述的装置,其中所述当前插槽指示符指示处于所述数据项排队序列的头端或尾端处的所述当前插槽的所述位置,并且所述预期插槽指示符指示处于所述数据项排队序列的所述同一端处的所述当前插槽的所述预期位置。13.根据权利要求1所述的装置,其中所述第一参考指示符是对于从所述排队序列中移除数据项的所述过程所述数据项排队序列的所述尾端的尾部指示符,并且所述第二参考指示符是对于将数据项添加到所述排队序列的所述过程所述数据项排队序列的所述尾端的尾部指示符。14.根据权利要求13所述的装置,其中将数据项添加到所述排队序列的所述过程被布置成执行所述获取过程以获取所述环形缓冲器中的至少下一个未占用插槽,所述获取过程包括尝试根据原子操作来更新所述第二参考指示符。15.根据权利要求1所述的装置,其中所述第一参考指示符是对于将数据项添加到所述排队序列的所述过程所述数据项排队序列的所述头端的头部指示符,并且所述第二参考指示符是对于从所述排队序列中移除数据项的所述过程所述数据项排队序列的所述头端的头部指示符。16.根据权利要求15所述的装置,其中从所述排队序列中移除数据项的所述过程被布置成执行所述获取过程以获取所述环形缓冲器中的至少下一个占用插槽,所述获取过程包括尝试根据原子操作来更新所述第二参考指示符。17.根据任一前述权利要求所述的装置,其中当所述过程执行所述获取过程以获取所述环形缓冲器中的所述至少一个插槽时,通过根据由所述过程中的一个过程获取的插槽的数量修改所述预期插槽指示符的所述值来更新所述第二参考指示符。18.根据权利要求13所述的装置,其中所述数据处理电路被布置成并行地执行将数据项添加到所述排队序列的所述过程,并且每个过程同时尝试根据所述原子操作来更新所述第一参考指示符。19.根据权利要求15所述的装置,其中所述数据处理电路被布置成并行地执行从所述排队序列中移除数据项的所述过程,并且每个过程同时尝试根据所述原子操作来更新所述第一参考指示符。20.一种操作数据处理装置的方法,所述方法包括以下步骤:为包括多个插槽的环形缓冲器分配存储装置以保持数据项的排队序列;执行多个过程以将待处理的一个或多个数据项添加到所述排队序列以及从所述排队
序列中移除一个或多个数据项以供处理,其中执行获取过程以获取所述环形缓冲器中的至少一个插槽,并且随后执行释放过程以释放所述至少一个插槽;为所述环形缓冲器的元数据分配存储装置,所述元数据包括第一参考指示符和第二参考指示符,所述第一参考指示符包括指示当前插槽的位置的当前插槽指示符和指示所述环形缓冲器的所述多个插槽中的一个或多个未决插槽的存在和位置的未决插槽指示符,并且所述第二参考指示符包括指示所述当前插槽的预期位置的预期插槽指示符,所述一个或多个未决插槽已在所述当前插槽之后被获取,其中当所述过程执行所述获取过程以获取所述环形缓冲器中的所述至少一个插槽时,预期插槽值是所述预期插槽指示符的值,其中所述释放过程包括尝试更新所述环形缓冲器的所述第一参考指示符,包括原子操作,在所述原子操作中将所述过程的所述预期插槽值与所述当前插槽指示符进行比较,并且当所述当前插槽指示符匹配所述预期插槽值时,通过将所述当前插槽指示符的值修改预定值来更新至少所述当前插槽指示符,并且当所述当前插槽指示符不匹配所述预期插槽值时,通过修改所述未决插槽指示符的值来更新所述未决插槽指示符,以指示所述环形缓冲器的一个或多个未决插槽的所述存在和所述位置,而不更新所述当前插槽指示符。21.一种装置,所述装置包括:环形缓冲器存储电路,所述环形缓冲器存储电路用于存储包括多个插槽的环形缓冲器以保持数据项的排队序列;指令解码器电路,所述指令解码器电路用于对指令进行解码;数据处理电路,所述数据处理电路用于执行多个过程以将待处理的一个或多个数据项添加到所述排队序列以及从所述排队序列中移除一个或多个数据项以供处理,其中每个过程被布置成执行获取过程以获取所述环形缓冲器中的至少一个插槽以及随后执行释放过程以释放所述至少一个插槽;和环形缓冲器元数据存储电路,所述环形缓冲器元数据存储电路用于存储所述环形缓冲器的元数据,所述元数据包括第一参考指示符和第二参考指示符,所述第一参考指示符包括指示当前插槽的位置的当前插槽指示符和指示所述环形缓冲器的所述多个插槽中的一个或多个未决插槽的存在和位置的未决插槽指示符,并且所述第二参考指示符包括指示所述当前插槽的预期位置的预期插槽指示符,所述一个或多个未决插槽已在所述当前插槽之后被获取,其中当所述过程执行所述获取过程以获取所述环形缓冲器中的所述至少一个插槽时,预期插槽值是所述预期插槽指示符的值,其中所述指令解码器电路对要由所述数据处理电路执行的环形缓冲器释放指令做出响应,以控制所述数据处理电路执行所述释放过程,所述释放过程包括以下步骤:尝试更新所述环形缓冲器的所述第一参考指示符,包括原子操作,在所述原子操作中将所述过程的所述预期插槽值与所述当前插槽指示符进行比较,并且当所述当前插槽指示符匹配所述预期插槽值时,通过将所述当前插槽指示符的值修改预定值来更新至少所述当前插槽指示符,并且当所述当前插槽指示符不匹配所述预期插槽值时,通过修改所述未决插槽指示符的值来更新所述未决插槽指示符,以指示所述环形缓冲器的一个或多个未决插槽的所述存在和所述位置,而不更新所述当前插槽指示符。
22.一种计算机程序,所述计算机程序用于控制主机数据处理装置来提供指令执行环境,并且包括:环形缓冲器存储逻辑,所述环形缓冲器存储逻辑用于存储包括多个插槽的环形缓冲器以保持数据项的排队序列;指令解码器逻辑,所述指令解码器逻辑用于对指令进行解码;数据处理逻辑,所述数据处理逻辑用于执行多个过程以将待处理的一个或多个数据项添加到所述排队序列以及从所述排队序列中移除一个或多个数据项以供处理,其中每个过程被布置成执行获取过程以获取所述环形缓冲器中的至少一个插槽以及随后执行释放过程以释放所述至少一个插槽;和环形缓冲器元数据存储逻辑,所述环形缓冲器元数据存储逻辑用于存储所述环形缓冲器的元数据,所述元数据包括第一参考指示符和第二参考指示符,所述第一参考指示符包括指示当前插槽的位置的当前插槽指示符和指示所述环形缓冲器的所述多个插槽中的一个或多个未决插槽的存在和位置的未决插槽指示符,并且所述第二参考指示符包括指示所述当前插槽的预期位置的预期插槽指示符,所述一个或多个未决插槽已在所述当前插槽之后被获取,其中当所述过程执行所述获取过程以获取所述环形缓冲器中的所述至少一个插槽时,预期插槽值是所述预期插槽指示符的值,其中所述指令解码器逻辑对要由所述数据处理逻辑执行的环形缓冲器释放指令做出响应,以控制所述数据处理逻辑执行所述释放过程,所述释放过程包括以下步骤:尝试更新所述环形缓冲器的所述第一参考指示符,包括原子操作,在所述原子操作中将所述过程的所述预期插槽值与所述当前插槽指示符进行比较,并且当所述当前插槽指示符匹配所述预期插槽值时,通过将所述当前插槽指示符的值修改预定值来更新至少所述当前插槽指示符,并且当所述当前插槽指示符不匹配所述预期插槽值时,通过修改所述未决插槽指示符的值来更新所述未决插槽指示符,以指示所述环形缓冲器的一个或多个未决插槽的所述存在和所述位置,而不更新所述当前插槽指示符。23.一种装置,所述装置包括:环形缓冲器存储电路,所述环形缓冲器存储电路用于存储包括多个插槽的环形缓冲器以保持数据项的排队序列;数据处理电路,所述数据处理电路用于执行多个过程以将待处理的一个或多个数据项添加到所述排队序列以及从所述排队序列中移除一个或多个数据项以供处理,其中每个过程被布置成执行获取过程以获取所述环形缓冲器中的至少一个插槽;和环形缓冲器元数据存储电路,所述环形缓冲器元数据存储电路用于存储所述环形缓冲器的元数据,所述元数据包括第一参考指示符和第二参考指示符,所述第一参考指示符包括指示处于所述数据项排队序列的一端处的当前插槽的位置的当前插槽指示符,并且所述第二参考指示符包括指示处于所述数据项排队序列的另一端处的当前插槽的预期位置的预期插槽指示符,其中所述数据项排队序列的所述一端是所述数据项排队序列的头端或尾端,其中所述获取过程包括尝试更新所述环形缓冲器的所述第二参考指示符,包括原子操作,在所述原子操作中将过程所请求获取的插槽的数量与所述当前插槽指示符和所述预期插
槽指示符进行比较,并且当所述当前插槽指示符和所述预期插槽指示符指示所述环形缓冲器中的一个或多个插槽有资格用于获取时,通过修改所述预期插槽指示符的值来更新所述预期插槽指示符。24.根据权利要求23所述的装置,其中所述第一参考指示符是对于从所述排队序列中移除数据项的所述过程所述数据项排队序列的所述尾端的尾部指示符,并且所述第二参考指示符是对于从所述排队序列中移除数据项的所述过程所述数据项排队序列的所述头端的头部指示符。25.根据权利要求24所述的装置,其中对于从所述排队序列中移除数据项的所述过程,有资格用于获取的插槽的所述数量对应于所述环形缓冲器中的占用插槽数量,并且其中所述环形缓冲器中的所述占用插槽数量是基于处于所述头端处的所述当前插槽的所述位置和处于所述尾端处的所述当前插槽的所述位置来确定的。26.根据权利要求23所述的装置,其中所述第一参考指示符是对于将数据项添加到所述排队序列的所述过程所述数据项排队序列的所述头端的头部指示符,并且所述第二参考指示符是对于将数据项添加到所述排队序列的所述过程所述数据项排队序列的所述尾端的尾部指示符。27.根据权利要求26所述的装置,其中对于将数据项添加到所述排队序列的所述过程,有资格用于获取的插槽的所述数量对应于所述环形缓冲器中的未占用插槽数量,并且其中所述环形缓冲器中的所述未占用插槽数量是基于所述环形缓冲器中的插槽的总数量、处于所述头端处的所述当前插槽的所述位置和处于所述尾端处的所述当前插槽的所述位置来确定的。28.一种操作数据处理装置的方法,所述方法包括以下步骤:为包括多个插槽的环形缓冲器分配存储装置以保持数据项的排队序列;执行多个过程以将待处理的一个或多个数据项添加到所述排队序列以及从所述排队序列中移除一个或多个数据项以供处理,其中执行获取过程以获取所述环形缓冲器中的至少一个插槽;为所述环形缓冲器的元数据分配存储装置,所述元数据包括第一参考指示符和第二参考指示符,所述第一参考指示符包括指示处于所述数据项排队序列的一端处的当前插槽的位置的当前插槽指示符,并且所述第二参考指示符包括指示处于所述数据项排队序列的另一端处的当前插槽的预期位置的预期插槽指示符,其中所述数据项排队序列的所述一端是所述数据项排队序列的头端或尾端,其中所述获取过程包括尝试更新所述环形缓冲器的所述第二参考指示符,包括原子操作,在所述原子操作中将过程所请求获取的插槽的数量与所述当前插槽指示符和所述预期插槽指示符进行比较,并且当所述当前插槽指示符和所述预期插槽指示符指示所述环形缓冲器中的一个或多个插槽有资格用于获取时,通过修改所述预期插槽指示符的值来更新所述预期插槽指示符。29.一种装置,所述装置包括:环形缓冲器存储电路,所述环形缓冲器存储电路用于存储包括多个插槽的环形缓冲器以保持数据项的排队序列;指令解码器电路,所述指令解码器电路用于对指令进行解码;
数据处理电路,所述数据处理电路用于执行多个过程以将待处理的一个或多个数据项添加到所述排队序列以及从所述排队序列中移除一个或多个数据项以供处理,其中每个过程被布置成执行获取过程以获取所述环形缓冲器中的至少一个插槽;和环形缓冲器元数据存储电路,所述环形缓冲器元数据存储电路用于存储所述环形缓冲器的元数据,所述元数据包括第一参考指示符和第二参考指示符,所述第一参考指示符包括指示处于所述数据项排队序列的一端处的当前插槽的位置的当前插槽指示符,并且所述第二参考指示符包括指示处于所述数据项排队序列的另一端处的当前插槽的预期位置的预期插槽指示符,其中所述数据项排队序列的所述一端是所述数据项排队序列的头端或尾端,其中所述指令解码器电路对要由所述数据处理电路执行的环形缓冲器获取指令做出响应,以控制所述数据处理电路执行所述获取过程,所述获取过程包括以下步骤:尝试更新所述环形缓冲器的所述第二参考指示符,包括原子操作,在所述原子操作中将过程所请求获取的插槽的数量与所述当前插槽指示符和所述预期插槽指示符进行比较,并且当所述当前插槽指示符和所述预期插槽指示符指示所述环形缓冲器中的一个或多个插槽有资格用于获取时,通过修改所述预期插槽指示符的值来更新所述预期插槽指示符。30.一种计算机程序,所述计算机程序用于控制主机数据处理装置来提供指令执行环境,并且包括:环形缓冲器存储逻辑,所述环形缓冲器存储逻辑用于存储包括多个插槽的环形缓冲器以保持数据项的排队序列;指令解码器逻辑,所述指令解码器逻辑用于对指令进行解码;数据处理逻辑,所述数据处理逻辑用于执行多个过程以将待处理的一个或多个数据项添加到所述排队序列以及从所述排队序列中移除一个或多个数据项以供处理,其中每个过程被布置成执行获取过程以获取所述环形缓冲器中的至少一个插槽;和环形缓冲器元数据存储逻辑,所述环形缓冲器元数据存储逻辑用于存储所述环形缓冲器的元数据,所述元数据包括第一参考指示符和第二参考指示符,所述第一参考指示符包括指示处于所述数据项排队序列的一端处的当前插槽的位置的当前插槽指示符,并且所述第二参考指示符包括指示处于所述数据项排队序列的另一端处的当前插槽的预期位置的预期插槽指示符,其中所述数据项排队序列的所述一端是所述数据项排队序列的头端或尾端,其中所述指令解码器逻辑对要由所述数据处理逻辑执行的环形缓冲器获取指令做出响应,以控制所述数据处理逻辑执行所述获取过程,所述获取过程包括以下步骤:尝试更新所述环形缓冲器的所述第二参考指示符,包括原子操作,在所述原子操作中将过程所请求获取的插槽的数量与所述当前插槽指示符和所述预期插槽指示符进行比较,并且当所述当前插槽指示符和所述预期插槽指示符指示所述环形缓冲器中的一个或多个插槽有资格用于获取时,通过修改所述预期插槽指示符的值来更新所述预期插槽指示符。

技术总结
公开了环形缓冲器存储电路,该环形缓冲器存储电路存储包括多个插槽的环形缓冲器以保持数据项的排队序列。数据处理电路执行多个过程以将待处理的一个或多个数据项添加到排队序列以及从排队序列中移除一个或多个数据项以供处理。每个过程被布置成执行获取过程以获取环形缓冲器中的至少一个插槽以及随后执行释放过程以释放该至少一个插槽。环形缓冲器元数据存储电路存储环形缓冲器的元数据,该元数据包括第一参考指示符和第二参考指示符。第一参考指示符包括指示当前插槽的位置的当前插槽指示符和指示环形缓冲器的多个插槽中的一个或多个未决插槽的存在和位置的未决插槽指示符。第二参考指示符包括指示当前插槽的预期位置的预期插槽指示符,一个或多个未决插槽已在当前插槽之后被获取。释放过程包括尝试更新环形缓冲器的第一参考指示符,包括原子操作,在该原子操作中将预期插槽指示符与当前插槽指示符进行比较。当当前插槽指示符匹配预期插槽指示符时,通过将当前插槽指示符的值修改预定值来更新至少当前插槽指示符。当当前插槽指示符不匹配预期插槽指示符时,通过修改未决插槽指示符的值来更新未决插槽指示符,以指示环形缓冲器的一个或多个未决插槽的存在和位置,而不更新当前插槽指示符。还公开了对应的方法和使用说明。和使用说明。和使用说明。


技术研发人员:E
受保护的技术使用者:Arm有限公司
技术研发日:2020.02.25
技术公布日:2021/11/4
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献