返回项目页面
对比文件列表
1998-10-13_US5822619A_发明授权_US5822619A System and method for restructuring data strings_+++A_B_C_D_E_F_G_H_I_J_K_L_M_N_O_P+++.docx
2026-04-10 22:45
1999-08-03_US5933650A_发明授权_US5933650A Alignment and ordering of vector elements for single instruction multiple data processing_+++C_F_G_L_M_N_a_b_d_e_h_i_j_k_o_p+++.docx
2026-04-10 22:45
2001-01-09_US6173366B_发明授权_US06173366B2 Load and store instructions which perform unpacking and packing of data bits in separate vector and integer cache storage_+++A_B_C_D_F_G_H_J_N_P_a_e_i_k_l_m_o+++.docx
2026-04-10 22:45
2005-06-15_GB2409064A_发明专利_GB2409064A Performing in parallel a data processing operation on data elements_+++A_B_C_F_G_H_J_K_L_M_N_O_a_d_e_i_p+++.docx
2026-04-10 22:45
2007-05-31_US2007124631A_发明申请_US20070124631A1 Bit field selection instruction_+++A_B_C_G_M_N_a_b_c_d_e_f_h_o+++.docx
2026-04-10 22:45
2007-09-13_WO2007103195A_发明申请_WO2007103195A2 IMPROVED PERMUTABLE ADDRESS PROCESSOR AND METHOD_+++N_P_a_b_h_i_m+++.docx
2026-04-10 22:45
2007-09-27_US2007226469A_发明申请_US20070226469A1 Permutable address processor and method_+++a_b_c_d_e_f_g_h_j_k_l_m_n_o_p+++.docx
2026-04-10 22:45
2008-10-23_WO2008126041A_发明申请_WO2008126041A1 METHOD OF STORING DATA, METHOD OF LOADING DATA AND SIGNAL PROCESSOR_+++A_B_C_D_E_G_H_I_J_K_L_N_P_f_m_o+++.docx
2026-04-10 22:45
2014-01-09_US2014013076A_发明申请_US20140013076A1 EFFICIENT HARDWARE INSTRUCTIONS FOR SINGLE INSTRUCTION MULTIPLE DATA PROCESSORS_+++N_a_b_c_j_k_l_m_p+++.docx
2026-04-10 22:45
2014-05-13_US8726281B_发明授权_US08726281B2 Method and system for improving performance and reducing energy consumption by converting a first program code into a second program code and implementing SIMD_+++a_b_c_d_g_h_j_k_m_n_p+++.docx
2026-04-10 22:45
2014-12-16_US8914613B_发明授权_US08914613B2 Vector shuffle instructions operating on multiple lanes each having a plurality of data elements using a same set of per-lane control bits_+++A_C_H_N_a+++.docx
2026-04-10 22:45
2015-08-06_WO2015116474A_发明申请_WO2015116474A1 FORMAT CONVERSION DURING LOAD_STORE OPERATIONS IN A VECTOR PROCESSOR_+++A_B_C_E_G_H_I_J_K_L_M_N_P_d_f_o+++.docx
2026-04-10 22:45
2015-12-02_EP2950202A_发明公开_EP2950202A1 PROCESSOR AND DATA GATHERING METHOD_+++A_B_C_D_E_F_G_H_I_J_K_L_M_N_O_P+++.docx
2026-04-10 22:45
2016-01-05_US9229718B_发明授权_US09229718B2 Method and apparatus for shuffling data_+++N_a_b_c_h_m_p+++.docx
2026-04-10 22:45
2017-01-26_US2017024209A_发明申请_US20170024209A1 MIXED-WIDTH SIMD OPERATIONS USING EVEN_ODD REGISTER PAIRS FOR WIDE DATA ELEMENTS_+++A_B_C_D_E_G_H_N_O_P+++.docx
2026-04-10 22:45
2017-02-02_US2017031865A_发明申请_US20170031865A1 APPARATUS AND METHOD FOR TRANSFERRING A PLURALITY OF DATA STRUCTURES BETWEEN MEMORY AND A PLURALITY OF VECTOR REGISTERS_+++H_I_J_K_L_M_N_a_b_c_d_e_g_o+++.docx
2026-04-10 22:45
2017-06-22_US2017177351A_发明申请_US20170177351A1 Instructions and Logic for Even and Odd Vector Get Operations_+++C_D_E_G_H_N_a_b_m+++.docx
2026-04-10 22:45
2017-06-22_US2017177353A_发明申请_US20170177353A1 Instructions and Logic for Get-Multiple-Vector-Elements Operations_+++a_b_c+++.docx
2026-04-10 22:45
2017-06-22_US2017177359A_发明申请_US20170177359A1 Instructions and Logic for Lane-Based Strided Scatter Operations_+++A_B_C_D_E_F_G_H_I_J_K_L_M_N_O_P+++.docx
2026-04-10 22:45
2017-07-06_US2017192784A_发明申请_US20170192784A1 Systems, Apparatuses, and Methods for Lane-Based Strided Gather_+++A_C_G_H_J_N_O+++.docx
2026-04-10 22:45
US2010106944A1_Description_20260324_1701_+++C_D_E_G_H_J_K_M_N_P_a_b+++.docx
2026-04-10 22:45
US2010332794A1_Description_20260324_1701_+++A_B_C_E_G_H_N_P_d_i_j_o+++.docx
2026-04-10 22:45
2017-06-22_US2017177359A_发明申请_US20170177359A1 Instructions and Logic for Lane-Based Strided Scatter Operations_+++A_B_C_D_E_F_G_H_I_J_K_L_M_N_O_P+++.docx

# 对比文件与目标专利技术特征比对分析

## 对比文件名称

2017-06-22_US2017177359A_发明申请_US20170177359A1 Instructions and Logic for Lane-Based Strided Scatter Operations

## 目标专利名称

482用于针对可变位宽度数据格式的打包和解包网络以及方法CN111788553B

## 模型名称

本次分析基于上述对比文件和目标专利说明书进行。

## 特征比对表格

技术特征对比文件引用公开性论述
技术特征A:所述装置包括:所述计算机系统中的第一多个位位置,所述第一多个位位置中的每个位位置均包括具有预定数目的位槽的寄存器【0184】"In one embodiment, data representing four XYZW-type data structures in which the X, Y, Z and W components are 32-bits each may be stored in an extended vector register, such as a ZMM register." 【0185】"In this context, the term 'lane' may refer to a portion of the vector register that holds multiple data elements that are to be treated in the same way, rather than to a portion of the vector register that holds a single data element. In one embodiment in which the vector registers are 512 bits wide, there may be four 128-bit lanes"对比文件公开了向量寄存器(ZMM寄存器)中包含多个128位宽度的通道(lane),每个通道可以存储多个数据元素。这与目标专利中第一多个位位置的描述相似,但对比文件并未明确描述这些位位置具有"预定数目的位槽的寄存器"这一具体结构。本领域技术人员可以理解向量寄存器包含多个槽位,但对比文件没有直接公开"位槽"的特定结构。
技术特征B:并且所述预定数目的位槽中的每个位槽均被配置为临时地存储预定数目的位的数据中的相应位【0190】"at (2) obtaining the data elements representing one or more data structures from extended vector register ZMMn (2101) in an extended vector register file 1914." 【0202】"In these example forms of the VPSCATTER instruction, the number following the 'VPSCATTER' identifier (e.g., 4, 3, or 2) may indicate the number of lanes in the source vector register."对比文件公开了从向量寄存器中获取数据元素,并将数据存储到不同的通道(lane)中。但对比文件并未明确描述"每个位槽均被配置为临时地存储预定数目的位的数据中的相应位"这一具体功能。数据元素的存储是临时的这一特性并未在对比文件中明确说明。
技术特征C:所述预定数目的位对应于若干不同数据位宽度中的一个数据位宽度【0184】"data representing four XYZW-type data structures in which the X, Y, Z and W components are 32-bits each" 【0201】"In one embodiment, the specified size/type may be one of {B/W/D/Q/PS/PD}."对比文件公开了数据元素可以具有不同的大小(字节、字、双字、四字、单精度浮点、双精度浮点),这与目标专利中"若干不同数据位宽度"的描述部分对应。然而,对比文件并未公开"预定数目的位对应于"不同位宽度的具体关系。
技术特征D:固定的位打包网络,被配置为在所述计算机系统中将所述预定数目的位从所述第一多个位位置打包到第二多个位位置【0186】"Execution of the VPSCATTER instruction by SIMD execution unit 1912 may include, at (5) permuting the packed data that was obtained from multiple lanes in the identified source vector register to include in a destination vector." 【0185】"In one embodiment, permuting the data may include, for a given data structure, extracting a respective element from each lane within the source vector register and assembling them next to each other for inclusion in the destination vector."对比文件公开了VPSCATTER指令执行数据排列操作,从源向量寄存器的多个通道中提取数据元素并组装到目标向量中。这与目标专利中"将预定数目的位从第一多个位位置打包到第二多个位位置"的功能部分对应,但VPSCATTER指令执行的是分散存储(scatter)操作,而非目标专利中的"打包"操作。
技术特征E:其中所述固定的位打包网络被配置为通过将存储在所述第一多个位位置的每个相应位位置中的所述预定数目的位槽中的相同特定位槽位置中的所述预定数目的位中的所有位路由到所述第二多个位位置的特定位位置的寄存器的位槽中,来打包所述预定数目的位,以在所述第二多个位位置的相应的位位置中形成位束【0185】"In one embodiment, permuting the data may include, for a given data structure, extracting a respective element from each lane within the source vector register and assembling them next to each other for inclusion in the destination vector." 【0219】"VPINSERTI32x4 zmm5, zmm5, xmm1, 0 //zmm5=x1x2x3x4y1y2y3y4z1z2z3z4w1w2w3w4"对比文件公开了从每个通道的相同位置提取元素并组装成目标向量。例如从x1x2x3x4(第一通道)、y1y2y3y4(第二通道)等提取元素并重新排列。这与目标专利中"将相同位槽位置中的位路由到第二多个位位置的相同位位置的位槽中"的技术方案相似。然而,对比文件并未明确公开这是"固定的"打包网络,也未提及"位束"的概念。
技术特征F:其中所述固定的位打包网络包括在所述第一多个位位置中的位槽与所述第二多个位位置中的位槽之间的固定的点对点连接【0186】"at (2) obtaining the data elements representing one or more data structures from extended vector register ZMMn (2101)" 【0187】"at (6) computing the address of a destination location in memory system 1830"对比文件公开了从源向量寄存器获取数据并计算目标地址,但并未明确描述源寄存器和目标存储位置之间的"固定的点对点连接"。VPSCATTER指令使用地址计算来存储数据,而非固定的点对点路由连接。
技术特征G:并且被配置为:容纳输入到所述第一多个位位置的所述若干不同数据位宽度中的每一个【0201】"In one embodiment, the specified size/type may be one of {B/W/D/Q/PS/PD}." 【0202】"the number following the 'VPSCATTER' identifier (e.g., 4, 3, or 2) may indicate the number of lanes in the source vector register."对比文件公开了VPSCATTER指令可以处理不同大小的数据元素(B/W/D/Q/PS/PD),并可以处理不同数量的通道(2、3、4)。这与目标专利中"容纳若干不同数据位宽度"的功能部分对应。然而,对比文件并未明确公开这种容纳能力是由"固定的位打包网络"提供的。
技术特征H:并且将数据从所述第一多个位位置打包到所述第二多个位位置中【0186】"Execution of the VPSCATTER instruction by SIMD execution unit 1912 may include, at (5) permuting the packed data that was obtained from multiple lanes in the identified source vector register" 【0194】"writing out the data elements in at least a portion of the destination vector to locations within destination locations 2105 in memory system 1830"对比文件公开了VPSCATTER指令将打包数据从向量寄存器排列后写入内存位置。这与目标专利中"将数据从第一多个位位置打包到第二多个位位置"的功能相似,但VPSCATTER执行的是分散存储(scatter)操作,其目标位置是内存地址,而非目标专利中的"第二多个位位置"(寄存器或存储体)。
技术特征I:其中所述第二多个位位置中使用的位位置比所述第一多个位位置少【0209】"As illustrated by the example in FIG. 22B, in one embodiment, the destination data structures resulting from the execution of a VPSCATTER instruction may take up less space in memory 1830 than the space that would have been taken up if the entire contents of the source vector register had been written out to memory."对比文件公开了VPSCATTER3D指令处理三个数据元素时,只占用12个32位双字,而源向量寄存器有16个32位双字的容量。这与目标专利中"第二多个位位置中使用的位位置比第一多个位位置少"的描述相符。然而对比文件指的是内存空间占用,而非寄存器位位置的数量对比。
技术特征J:还包括:包含在存储器设备内的所述第二多个位位置,其中所述存储器设备还被配置为存储所述位束【0188】"at (7), writing out the data elements in at least a portion of the destination vector to locations within destination locations 2105 in memory system 1830"对比文件公开了将数据写入内存系统1830的目标位置。但对比文件并未明确描述这些目标位置是"第二多个位位置",也未提及"位束"的概念,更未明确说明存储器设备被配置为存储位束。
技术特征K:其中所述第二多个位位置包括所述存储器设备中的多个存储器单元【0188】"writing out the data elements in at least a portion of the destination vector to locations within destination locations 2105 in memory system 1830" 【0189】"writing the destination vector to memory system 1830"对比文件公开了将数据写入内存系统的目标位置2105,但并未明确描述这些位置是"存储器设备中的多个存储器单元",也未描述这些单元与"第二多个位位置"的关系。
技术特征L:其中位束中的位的数目对应于所述存储器设备的存储器数据字长【0222】"In this example, the lowest-order 128 bits of the source vector register, which may be referred to as the first lane of the source vector register, contain four 32-bit doublewords"对比文件公开了源向量寄存器的结构(128位通道包含四个32位双字),但并未公开"位束中的位的数目对应于存储器数据字长"这一关系。对比文件没有涉及位束与存储器数据字长之间对应关系的描述。
技术特征M:其中固定的位打包网络包括计算数据路径网络或存储器数据路径中的一项的一部分【0186】"SIMD execution unit 1912" 【0188】"writing out the data elements in at least a portion of the destination vector to locations within destination locations 2105 in memory system 1830"对比文件公开了SIMD执行单元执行VPSCATTER指令,并将数据写入内存系统。这涉及存储器数据路径,但对比文件并未明确描述VPSCATTER指令实现的是"固定的位打包网络",也未说明其是计算数据路径或存储器数据路径的一部分。
技术特征N:其中所述第一多个位位置中的位由具有若干通道的单指令多数据SIMD单元生成【0181】"In one embodiment, the extended SIMD instruction set architecture may implement multiple versions or forms of the VPSCATTER operation" 【0159】"SIMD coprocessor 1910 may include a SIMD execution unit 1912"对比文件公开了SIMD协处理器1910包含SIMD执行单元1912,并实现了VPSCATTER操作。这与目标专利中"具有若干通道的SIMD单元"的描述相关,但对比文件并未明确描述数据是由SIMD单元"生成"的,并且这些数据存储在"第一多个位位置"中。
技术特征O:其中每一个位束具有的大小是所述SIMD单元的通道的数目的倍数【0184】"In one embodiment in which the vector registers are 512 bits wide, there may be four 128-bit lanes" 【0202】"the number following the 'VPSCATTER' identifier (e.g., 4, 3, or 2) may indicate the number of lanes in the source vector register."对比文件公开了512位向量寄存器可以包含四个128位通道,这与目标专利中"位束大小是SIMD单元通道数目的倍数"的描述相符。位束大小(128位×4通道=512位)确实是通道数目(4)的倍数。然而对比文件没有明确使用"位束"这一术语。
技术特征P:其中所述装置还可操作以用于解包操作,其中通过所述固定的位打包网络的反向操作,所述第二多个位位置中的位束被解包到所述第一多个位位置【0186】"Execution of the VPSCATTER instruction by SIMD execution unit 1912 may include, at (5) permuting the packed data that was obtained from multiple lanes in the identified source vector register to include in a destination vector." 【0203】"In one embodiment, the VPSCATTER instructions may be used to store vectors containing the different data elements of a data structure in memory."对比文件公开了VPSCATTER指令执行数据排列操作,但该操作是用于分散存储(scatter),即将数据从向量寄存器分散存储到内存地址。这与目标专利中的"打包"操作方向相反。VPSCATTER指令主要用于将数据存储到内存,而非反向操作(解包)。对比文件未公开打包网络的反向操作来执行解包。

## 综合分析结论

对比文件US20170177359A1主要公开了一种用于执行基于通道的步进分散存储(VPSCATTER)操作的指令和逻辑。该对比文件与目标专利存在以下主要差异:

1. **技术领域差异**:对比文件专注于SIMD指令和向量寄存器的分散存储操作,而目标专利专注于位打包和解包网络,特别是用于处理可变数据位宽度的统一打包网络。

2. **操作方向差异**:对比文件的VPSCATTER指令执行的是分散存储(scatter)操作,将数据从向量寄存器分散存储到内存;目标专利的打包网络执行的是打包(pack)操作,将数据从第一多个位位置打包到第二多个位位置。

3. **核心特征差异**:目标专利的核心创新是"固定的位打包网络",其特点是固定的点对点连接、能够处理可变数据位宽度、以及形成位束。对比文件虽然公开了数据排列操作,但未明确公开"固定的位打包网络"这一特定结构及其固定点对点连接的特性。

4. **术语差异**:对比文件使用"lane"(通道)来描述向量寄存器的结构,而目标专利使用"位位置"和"位槽";对比文件未使用"位束"这一术语。

基于上述分析,对比文件没有直接公开或隐含公开目标专利权利要求中的任何一个技术特征的全部内容。VPSCATTER指令虽然涉及数据排列和通道操作,但其技术方案与目标专利的位打包网络存在本质区别。

<<<A>>>

<<<B>>>

<<<C>>>

<<<D>>>

<<<E>>>

<<<F>>>

<<<G>>>

<<<H>>>

<<<I>>>

<<<J>>>

<<<K>>>

<<<L>>>

<<<M>>>

<<<N>>>

<<<O>>>

<<<P>>>

权利要求与技术特征
Powered by Django

网站备案号:渝ICP备2023012882号


重庆市非显而易见网络科技有限责任公司 A Anti NPE NPE