目标专利:319在向量数据存储器与执行单元之间的数据流路径中采用重排序电路系统的向量处理引擎以及相关的方法
专利公开号:CN105765523B
专利权人:高通股份有限公司
无效请求书提交日期:2026年
非显而易见性评估仅供参考,不构成法律建议。
| 编号 | 名称 |
|---|
一种被配置成在进行中对执行向量处理操作的至少一个执行单元生成的结果输出向量数据样本集进行重排序的向量处理引擎VPE,包括:至少一个向量数据文件,所述至少一个向量数据文件被配置成: 在至少一个输入数据流路径中提供经取回的输入向量数据样本集以用于所述向量处理操作;以及从至少一个输出数据流路径接收经重排序的结果输出向量数据样本集以便被存储; 在所述至少一个输入数据流路径中提供的至少一个执行单元; 在所述至少一个输入数据流路径中在所述至少一个向量数据文件与所述至少一个执行单元之间提供的至少一个抽头延迟线,所述至少一个抽头延迟线被配置成:从所述至少一个向量数据文件接收所述输入向量数据样本集;以及 针对等于所述向量处理操作中的向量处理级的数目的多个处理级中的每个处理级,在多个流水线寄存器中将所述输入向量数据样本集移位向量数据样本宽度,以在所述至少一个输入数据流路径中针对所述多个处理级中的每个处理级提供经移位的输入向量数据样本集;以及所述至少一个执行单元被配置成: 针对所述多个处理级中的每个处理级,在所述至少一个输入数据流路径上接收所述经移位的输入向量数据样本集;以及针对所述多个处理级中的每个处理级,对所述经移位的输入向量数据样本集执行所述向量处理操作以在所述至少一个输出数据流路径上提供所述结果输出向量数据样本集;以及至少一个重排序电路系统,所述至少一个重排序电路系统被配置成: 在所述至少一个输出数据流路径上接收所述结果输出向量数据样本集; 将所述结果输出向量数据样本集重排序成经重排序的结果输出向量数据样本集,而无需将所述结果输出向量数据样本集存储在所述至少一个向量数据文件中;以及在所述至少一个输出数据流路径上提供所述经重排序的结果输出向量数据样本集。
如权利要求1所述的VPE,其特征在于,所述至少一个向量数据文件被配置成:在所述至少一个输入数据流路径中提供具有所述至少一个向量数据文件的宽度的所述输入向量数据样本集以用于所述向量处理操作;以及从所述至少一个输出数据流路径接收具有所述至少一个向量数据文件的宽度的所述经重排序的结果输出向量数据样本集以便被存储。
如权利要求1所述的VPE,其特征在于: 所述至少一个向量数据文件被进一步配置成: 在所述至少一个输入数据流路径中在至少一个向量数据文件输出上提供所述输入向量数据样本集;以及在所述至少一个输出数据流路径中在至少一个向量数据文件输入上接收所述经重排序的结果输出向量数据样本集; 所述至少一个执行单元被进一步配置成: 在所述至少一个输入数据流路径中在至少一个执行单元输入上接收所述输入向量数据样本集;以及对所述输入向量数据样本集执行所述向量处理操作以在所述至少一个输出数据流路径中在至少一个执行单元输出上提供所述结果输出向量数据样本集;以及所述至少一个重排序电路系统被进一步配置成:在所述至少一个输出数据流路径中在至少一个重排序电路系统输入上从所述至少一个执行单元接收所述结果输出向量数据样本集;以及 在所述至少一个输出数据流路径中在至少一个重排序电路系统输出上提供所述经重排序的结果输出向量数据样本集。
如权利要求1所述的VPE,其特征在于,所述至少一个重排序电路系统进一步包括多个输出向量数据样本选择器,每个输出向量数据样本选择器被配置成:从所述结果输出向量数据样本集接收第一结果输出向量数据样本并且从所述结果输出向量数据样本集接收第二结果输出向量数据样本,所述第二结果输出向量数据样本在所述结果输出向量数据样本集中不与所述第一结果输出向量数据样本毗邻;以及在所述第一结果输出向量数据样本与所述第二结果输出向量数据样本之间进行选择以在所述至少一个输出数据流路径中提供所述经重排序的结果输出向量数据样本集。
如权利要求1所述的VPE,其特征在于,所述至少一个重排序电路系统是能配置的以便基于可编程重排序数据路径配置输入被重新配置成选择性地对所述结果输出向量数据样本集进行重排序。
如权利要求5所述的VPE,其特征在于,所述至少一个重排序电路系统被进一步配置成基于所述可编程重排序数据路径配置输入被重新配置成在要由所述至少一个执行单元执行的所述VPE的每个时钟循环上选择性地对所述结果输出向量数据样本集进行重排序。
如权利要求1所述的VPE,其特征在于,所述至少一个抽头延迟线包括:影子抽头延迟线,其被配置成: 在所述至少一个输入数据流路径中将来自所述至少一个向量数据文件的所述输入向量数据样本集接收到多个影子流水线寄存器中;以及针对每个处理级,将所述多个影子流水线寄存器中的所述输入向量数据样本集移位所述向量数据样本宽度以进入主抽头延迟线,从而提供所述经移位的输入向量数据样本集; 并且 所述主抽头延迟线被配置成在所述多个处理级中的每个处理级中在所述至少一个输入数据流路径中提供所述经移位的输入向量数据样本集。
如权利要求7所述的VPE,其特征在于,进一步包括多个输入向量数据样本选择器,所述多个输入向量数据样本选择器中的每一者被指派给所述至少一个抽头延迟线中的所述多个流水线寄存器中的一流水线寄存器; 所述多个输入向量数据样本选择器各自被配置成在来自所述至少一个向量数据文件的所述输入向量数据样本集中的输入向量数据样本与存储在毗邻流水线寄存器中的输入向量数据样本之间进行选择,以在所指派的流水线寄存器中存储经移位的输入向量数据样本。
如权利要求8所述的VPE,其特征在于,所述多个输入向量数据样本选择器中的每一者被配置成选择共同将输入向量数据样本字存储在多个成群的毗邻流水线寄存器中的多个成群的输入向量数据样本,以将经移位的输入向量数据样本字存储在所述多个流水线寄存器中的多个成群的流水线寄存器中。
如权利要求1所述的VPE,其特征在于,所述至少一个抽头延迟线是能配置的,以便根据要由所述至少一个执行单元执行的向量指令基于用于所述至少一个抽头延迟线的可编程重排序数据路径配置输入被选择性地提供在所述至少一个向量数据文件与所述至少一个执行单元之间的所述至少一个输入数据流路径中。
如权利要求10所述的VPE,其特征在于,所述至少一个抽头延迟线被配置成根据要由所述至少一个执行单元执行的下一向量指令基于用于所述至少一个抽头延迟线的所述可编程重排序数据路径配置输入而被重新配置成被选择性地提供在所述至少一个输入数据流路径中。
如权利要求11所述的VPE,其特征在于,所述至少一个抽头延迟线被配置成在要由所述至少一个执行单元执行的所述VPE的每个时钟循环上被重新配置成被选择性地提供在所述至少一个输入数据流路径中。
如权利要求1所述的VPE,其特征在于,所述至少一个执行单元能基于用于所述至少一个执行单元的可编程重排序数据路径配置输入来配置成处理来自所述输入向量数据样本集的不同位宽的输入向量数据样本。
一种被配置成在进行中对执行向量处理操作的至少一个执行单元装置生成的结果输出向量数据样本集进行重排序的向量处理引擎VPE,包括:至少一个向量数据文件装置,所述至少一个向量数据文件装置包括: 用于在至少一个输入数据流路径装置中取回输入向量数据样本集以用于所述向量处理操作的装置;以及用于从至少一个输出数据流路径装置接收经重排序的结果输出向量数据样本集以便被存储的装置; 在所述至少一个输入数据流路径装置中提供的至少一个执行单元装置; 在所述至少一个输入数据流路径装置中在所述至少一个向量数据文件装置与所述至少一个执行单元装置之间提供的至少一个抽头延迟线装置,所述至少一个抽头延迟线装置被配置成: 用于从所述至少一个向量数据文件装置接收所述输入向量数据样本集的装置;以及用于针对等于所述向量处理操作中的向量处理级的数目的多个处理级中的每个处理级,在多个流水线寄存器中将所述输入向量数据样本集移位向量数据样本宽度,以在所述至少一个输入数据流路径装置中针对所述多个处理级中的每个处理级提供经移位的输入向量数据样本集的装置;以及所述至少一个执行单元装置被配置成: 用于针对所述多个处理级中的每个处理级,在所述至少一个输入数据流路径装置上接收所述经移位的输入向量数据样本集的装置;以及用于针对所述多个处理级中的每个处理级,对所述经移位的输入向量数据样本集执行所述向量处理操作以在所述至少一个输出数据流路径装置上提供所述结果输出向量数据样本集的装置;以及至少一个重排序装置,所述至少一个重排序装置包括: 用于在所述至少一个输出数据流路径装置上接收所述结果输出向量数据样本集的装置; 用于将所述结果输出向量数据样本集重排序成经重排序的结果输出向量数据样本集的装置,而无需将所述结果输出向量数据样本集存储在所述至少一个向量数据文件装置中;以及用于在所述至少一个输出数据流路径装置上提供所述经重排序的结果输出向量数据样本集的装置。
一种在进行中对执行向量处理操作的至少一个执行单元生成的结果输出向量数据样本集进行重排序的方法,包括:在至少一个输入数据流路径中从至少一个向量数据文件提供经取回的输入向量数据样本集以用于所述向量处理操作; 在所述至少一个输入数据流路径中将所述经取回的输入向量数据样本集接收到至少一个抽头延迟线中,所述至少一个抽头延迟线被提供在所述至少一个向量数据文件与所述至少一个执行单元之间的所述至少一个输入数据流路径中; 针对等于所述向量处理操作中的向量处理级的数目的多个处理级中的每个处理级,在多个流水线寄存器中将所述输入向量数据样本集移位向量数据样本宽度,以在所述至少一个输入数据流路径中针对所述多个处理级中的每个处理级向至少一个重排序电路系统提供经移位的输入向量数据样本集; 针对所述多个处理级中的每个处理级,在所述至少一个输入数据流路径上从所述至少一个向量数据文件接收所述经移位的输入向量数据样本集; 针对所述多个处理级中的每个处理级,在所述至少一个输入数据流路径上提供所述经移位的输入向量数据样本集; 针对所述多个处理级中的每个处理级,在所述至少一个输入数据流路径上接收所述经移位的输入向量数据样本集;以及通过以下动作来执行所述向量处理操作:针对所述多个处理级中的每个处理级,对所述经移位的输入向量数据样本集执行所述向量处理操作以在至少一个输出数据流路径上提供所述结果输出向量数据样本集; 在所述至少一个输出数据流路径上将所述结果输出向量数据样本集重排序成经重排序的结果输出向量数据样本集,而无需将所述结果输出向量数据样本集存储在所述至少一个向量数据文件中;以及在所述至少一个输出数据流路径中将所述经重排序的结果输出向量数据样本集存储在所述至少一个向量数据文件中。
如权利要求15所述的方法,其特征在于,将所述结果输出向量数据样本集重排序成所述经重排序的结果输出向量数据样本集进一步包括:从所述结果输出向量数据样本集接收第一结果输出向量数据样本并且从所述结果输出向量数据样本集接收第二结果输出向量数据样本,所述第二结果输出向量数据样本在所述结果输出向量数据样本集中不与所述第一结果输出向量数据样本毗邻;以及在所述第一结果输出向量数据样本与所述第二结果输出向量数据样本之间进行选择以在所述至少一个输出数据流路径中提供所述经重排序的结果输出向量数据样本集。
如权利要求15所述的方法,其特征在于,进一步包括: 接收可编程重排序数据路径配置输入;以及 基于所述重排序数据路径配置输入来选择性地对所述结果输出向量数据样本集进行重排序。
如权利要求17所述的方法,其特征在于,进一步包括针对要由所述至少一个执行单元执行的VPE的每个时钟循环,基于所述可编程重排序数据路径配置输入来选择性地对所述结果输出向量数据样本集进行重排序。
如权利要求17所述的方法,其特征在于,进一步包括基于用于要由所述至少一个执行单元执行的下一向量指令的所述可编程重排序数据路径配置输入来选择性地对所述结果输出向量数据样本集进行重排序。