查找第一函数的制作方法

文档序号:35283923发布日期:2023-09-01 04:29阅读:39来源:国知局
查找第一函数的制作方法

本发明涉及查找第一函数。


背景技术:

1、查找第一函数是找到向量中的第一1位的公共函数。这可以从最低有效位开始,朝向较高有效位进行。另选地,可以使用任意起始点,并找到向量中的第一1位(朝向较高有效位移动)。如果使用任意起始点,并且在较高有效位中没有找到1位,则可以设置函数以绕到最低有效位,并从最低有效位继续搜索。

2、查找第一函数通常用于事务的排序。例如,它通常用于找到队列中准备处理的最早的指令。查找第一函数也用于高速缓存和循环缓冲区中以找到最早的数据,或用于查找表中。

3、目前存在用于找到第一1位的不同解决方案。然而,它们涉及在整个位串上迭代,并且对于大向量,在整个向量上迭代可能非常耗时。

4、因此,期望找到一种搜索向量中的第一一位的更快方式。


技术实现思路

1、提供本
技术实现要素:
是为了以简化形式介绍下文在具体实施方式中进一步描述的一系列概念。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用以限制所要求保护的主题的范围。

2、公开了一种用于在向量中找到第一一位的方法。向量的位被分组为相邻位对。在每对二中,识别一位的存在或不存在,并确定位置。可能存在多个级别,因此第二级别组具有基于来自两对的确定的输入。基于输入,确定一位的存在或不存在,并且如果存在,则确定在向量的相应位内的位置。这可以在多个级别上重复。

3、根据一个方面,提供了一种处理向量的机器实现的方法,该方法包括:接收向量;将向量的位分组为两个相邻位的互斥对;在每对二中,识别一位的存在或不存在并且输出指示一位是否存在于向量的相应位中的第一级别指示符输出以及指示第一一位在向量的相应位中的位置的第一级别位置输出;将第一级别指示符输出和第一级别位置输出分组为两个相邻的第一级别指示符输出和第一级别位置输出的互斥组;以及基于一组两个相邻第一级别指示符输出来确定在向量的相应位中存在或不存在一位并且输出指示在向量的相应位中是否存在一位的第二级别指示符输出,并且基于一组两个相邻第一级别位置输出来确定第一一位在向量的相应位中的位置并且输出指示第一一位在向量的相应位中的位置的第二级别位置输出。

4、由于树结构,搜索向量所花费的时间不与向量的长度成线性比例,而是随着树结构的级别数量增加而成比例。

5、该方法还可包括:将第二级别指示符输出和第二级别位置输出分组为两个相邻第二级别指示符输出和第二级别位置输出的互斥组;以及基于一组两个相邻第二级别指示符输出来确定在向量的相应位中存在或不存在一位并且输出指示在向量的相应位中是否存在一位的第三级别指示符输出,并且基于一组两个相邻第二级别位置输出来确定第一一位在向量的相应位中的位置并且输出指示第一一位在向量的相应位中的位置的第三级别位置输出。

6、可以重复对第(n-1)级别指示符输出和第(n-1)级别位置输出进行分组以及确定在向量的相应位中存在或不存在一位以输出n级别指示符输出和n级别位置输出,直到分组和确定步骤确定一位的存在或不存在,以及第一一位在整个向量中的位置。

7、在一些示例中,从每个组或对中的最低有效位开始搜索第一一位的位置。在其他示例中,从每个组或对中的最高有效位开始搜索第一一位的位置。

8、第二级别位置输出中的最高有效位可以基于该组两个相邻第一级别指示符输出中的第一级别指示符输出中的第一一位,指示第一组二中的第一一位的零最高有效位以及指示第二组二中的第一一位的一最高有效位。第二级别位置输出中的最低有效位可以是来自最高有效位所基于的该组二的位置输入。

9、在一些示例中,位置输出仅在对应指示符输出指示在向量的相应位中存在零的情况下有效。

10、在一些示例中,可以使用除最低有效位或最高有效位之外的起始位置。该方法还可包括接收指示起始搜索位置的索引位置;基于索引位置和向量中的位的位置的相对位置来将每对二和每组二切换到三种状态中的一种状态,这三种状态包括打开、关闭和索引,其中基于每对二和每组二输出指示符输出包括:如果该对或该组二处于关闭状态,则输出指示没有一位存在的指示符输出;以及如果该对或该组二处于打开状态,则基于一位的存在或不存在来输出指示符输出;以及如果该对或该组二处于处于索引状态,则仅针对要搜索的位置基于一位的存在或不存在来输出指示符输出。

11、比索引位置低的位位置处的每对二和每组二被切换到关闭状态,比索引位置高的位位置处的每对二和每组二被切换到打开状态,并且包括索引位置的每对二和每组二被切换到索引状态。

12、该方法可以从起始位置开始搜索第一一位,朝向较高有效位移动。在一些示例中,可以在没有起始位置的情况下执行查找第一一位的第二函数,即从最低有效位开始搜索。这可以通过执行两个搜索函数来实现:一个搜索函数具有起始或索引位置,而第二个搜索函数没有索引位置,即从最低有效位开始。如果从使用索引位置的处理中识别出一位,则输出来自使用索引的处理的第一一位的位置作为结果,并且如果没有从使用索引位置的处理中识别出一位,则输出来自没有索引的处理的第一一位的位置作为结果。

13、已经结合查找第一一位描述了该方法。然而,它同样可以用于查找第一零位。实现这一点的另选方式是如上所述切换一位和零位并搜索零位。

14、已经结合成对或成组二描述了本发明。然而,向量可以替代地被被分组为不同数目的组:例如,三、四或五。仍然可以使用二进制记数法,或者另选地,基数x记数法可以用于大小为x的分组。

15、还提供了一种数据处理系统,该数据处理系统被配置为执行如上概述的方法。数据处理系统可以在集成电路上的硬件中体现。

16、还提供了一种使用集成电路制造系统来制造如上概述的数据处理系统的方法。

17、还提供了一种使用集成电路制造系统制造如上概述的数据处理系统的方法,该方法包括:使用布局处理系统对数据处理系统的计算机可读描述进行处理,以生成体现数据处理系统的集成电路的电路布局描述;以及使用集成电路生成系统,根据电路布局描述来制造数据处理系统。

18、还提供了一种计算机可读代码,该计算机可读代码被配置为使得当代码被运行时执行如上概述的方法。还提供了一种计算机可读存储介质(可选地是非暂时性的),在其上编码有所述计算机可读代码。

19、还提供了集成电路定义数据集,当在集成电路制造系统中进行处理时,该集成电路定义数据集配置集成电路制造系统以制造如上概述的数据处理系统。

20、还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有如上概述的数据处理系统的计算机可读描述,该计算机可读描述在集成电路制造系统中处理时使集成电路制造系统制造体现该数据处理系统的集成电路。

21、还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有如上概述的数据处理系统的计算机可读描述,该计算机可读描述在集成电路制造系统中处理时使集成电路制造系统执行以下运算:使用布局处理系统对数据处理系统的计算机可读描述进行处理,以生成体现该数据处理系统的集成电路的电路布局描述;并且使用集成电路生成系统根据电路布局描述来制造数据处理系统。

22、还提供了一种集成电路制造系统,该集成电路制造系统被配置为制造如上概述的数据处理系统。

23、还提供了一种集成电路制造系统,包括:计算机可读存储介质,该计算机可读存储介质上存储有如上概述的数据处理系统的计算机可读描述;布局处理系统,该布局处理系统被配置为处理计算机可读描述,以生成体现该数据处理系统的集成电路的电路布局描述;以及集成电路生成系统,该集成电路生成系统被配置为根据电路布局描述来制造数据处理系统。布局处理系统可被配置为确定从集成电路描述导出的电路的逻辑部件的位置信息,以生成体现数据处理系统的集成电路的电路布局描述。

24、如对本领域的技术人员显而易见的,上述特征可以适当地组合,并且可以与本文所述的示例的任何方面组合。

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