首页> 中国专利> 向量复数乘法运算的指令执行方法及相应的装置

向量复数乘法运算的指令执行方法及相应的装置

摘要

本发明涉及处理器中向量复数乘法运算(a+bj)*(c+dj)的指令执行方法及相应的装置,其特征在于,设计两条指令配对完成所述向量复数乘法运算(a+bj)*(c+dj),其中:第一条指令做向量乘法,其操作数包括所述(a+bj)和所述(c+dj),用于计算出所述向量复数乘法运算(a+bj)*(c+dj)的部分结果;第二条指令做向量乘加,其操作数包括所述(a+bj)、所述(c+dj)以及所述第一条指令的执行结果,用于计算出所述向量复数乘法运算(a+bj)*(c+dj)的剩余部分结果,并将所述剩余部分结果与所述部分结果相加,以获得所述向量复数乘法运算(a+bj)*(c+dj)的最终结果。通过设计由两条指令配对来完成操作,本发明使得向量复数乘法运算的流水长度为乘加运算的流水级。另外,通过使两条指令复用向量乘加功能部件,本发明能够大大节省芯片的面积和成本。

著录项

  • 公开/公告号CN101825998A

    专利类型发明专利

  • 公开/公告日2010-09-08

    原文格式PDF

  • 申请/专利号CN201010100185.5

  • 发明设计人 郇丹丹;刘宏伟;张晓春;

    申请日2010-01-22

  • 分类号G06F7/57(20060101);G06F9/38(20060101);

  • 代理机构11323 北京市隆安律师事务所;

  • 代理人史霞

  • 地址 100080 北京市海淀区科学院南路10号

  • 入库时间 2023-12-18 00:44:04

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2012-09-05

    授权

    授权

  • 2010-10-27

    实质审查的生效 IPC(主分类):G06F7/57 申请日:20100122

    实质审查的生效

  • 2010-09-08

    公开

    公开

说明书

技术领域

本发明涉及微处理器体系结构技术领域,特别涉及一种向量复数乘法运算的指令执行方法及相应的装置。

背景技术

随着处理器技术的不断发展,其应用的领域也不断拓展。为了满足高性能计算及数字信号处理等高端应用的需求,结合通用CPU(中央处理器)和DSP(数字信号处理器)融合的技术趋势,越来越多的通用处理器被用在快速傅里叶变换(FFT)、滤波(FIR)等数据密集计算的专用数字信号处理等领域。数据密集计算领域对芯片的数据处理能力提出的要求越来越高,各种通用处理器都实现了SIMD(Single InstructionMultiple Data,单指令流多数据流)向量指令集。向量复数乘法运算是许多数字信号处理算法的核心计算单位,因此提高向量复数乘法的效率对通用处理器用在专用领域和数字信号处理领域的效率提升都起着至关重要的作用。

目前复数乘法运算普遍采用乘法器加加法器来实现,例如参见中国专利申请200610166578“一种浮点复数乘法”。这种实现方法的缺点在于:1、流水线级数长,流水线启动时间较长,易导致指令窗口不够和各控制队列的堵塞;2、乘法和加法是分别的运算单元,增加了处理器的面积,提高了处理器的硬件实现成本;以及3、为了增加向量复数乘法运算的峰值,需要并行地增加相应的运算功能部件,从而使得在指令向量化后的实现代价增加更加明显。

发明内容

有鉴于此,本发明目的在于克服现有的向量复数乘法运算流水线长、实现代价大的不足,提供一种短流水、效率高、硬件开销小、易于实现的向量复数乘法运算的指令执行方法及相应的装置。

为了实现上述发明目的,本发明提供了一种向量复数乘法运算(a+bj)*(c+dj)的指令执行方法,其设计相互配对的两条指令来共同完成操作,其中:第一条指令做向量复数乘法操作,其操作数包括所述(a+bj)和所述(c+dj),用于计算出所述向量复数乘法运算(a+bj)*(c+dj)的部分结果;第二条指令做向量复数乘加操作,其操作数包括所述(a+bj)、所述(c+dj)以及所述第一条指令的执行结果,用于计算出所述向量复数乘法运算(a+bj)*(c+dj)的剩余部分结果,并将所述剩余部分结果与所述部分结果相加,以获得所述向量复数乘法运算(a+bj)*(c+dj)的最终结果。

对于上述向量复数乘法运算的指令执行方法,优选地,通过执行所述第一条指令计算出的所述向量复数乘法运算(a+bj)*(c+dj)的部分结果为ac+adj,通过执行所述第二条指令计算出的所述向量复数乘法运算(a+bj)*(c+dj)的剩余部分结果为-bd+bcj;或者,通过执行所述第一条指令计算出的所述向量复数乘法运算(a+bj)*(c+dj)的部分结果为-bd+bcj,通过执行所述第二条指令计算出的所述向量复数乘法运算(a+bj)*(c+dj)的剩余部分结果为ac+adj。

对于上述向量复数乘法运算的指令执行方法,优选地,通过执行所述第一条指令计算出的所述向量复数乘法运算(a+bj)*(c+dj)的部分结果为ac+bcj,通过执行所述第二条指令计算出的所述向量复数乘法运算(a+bj)*(c+dj)的剩余部分结果为-bd+adj;或者,通过执行所述第一条指令计算出的所述向量复数乘法运算(a+bj)*(c+dj)的部分结果为-bd+adj,通过执行所述第二条指令计算出的所述向量复数乘法运算(a+bj)*(c+dj)的剩余部分结果为ac+bcj。

对于上述向量复数乘法运算的指令执行方法,优选地,所述第一条指令和所述第二条指令复用向量乘加功能部件。

对于上述向量复数乘法运算的指令执行方法,进一步优选地,当所述向量乘加功能部件为256位宽时,所述向量乘加功能部件并行执行八个单精度浮点复数的四次向量乘法/乘加运算或者四个双精度浮点复数的两次向量乘法/乘加运算。

对于上述向量复数乘法运算的指令执行方法,更进一步优选地,每发射一条操作数为256位的指令到所述向量乘加功能部件,所述向量乘加功能部件的操作如下:首先,以32位为单位,通过多路选择的方式生成进入相应的64位乘加功能模块的操作数;然后,根据所述指令给出与如下至少之一有关的控制信号:是做向量乘法操作还是做向量乘加操作、乘加操作的乘法结果是否取负、是浮点单精度运算还是浮点双精度运算;以及,各所述乘加功能模块根据所述控制信号对所述操作数做相应的操作,并将各所述乘加模块的运算结果拼成256位输出。

另一方面,本发明还提供了一种向量乘加功能部件,用于执行向量复数乘法操作或向量复数乘加操作,其包括:操作数选择模块,用于在接收到所发射过来的向量乘加/向量乘法指令之后,以32位为单位通过多路选择的方式生成进入下述相应的64位乘加功能模块的操作数;控制模块,用于根据所述指令的指令码,生成与如下至少之一有关的控制信号:是做向量乘法操作还是做向量乘加操作、乘加操作的乘法结果是否取负、是浮点单精度运算还是浮点双精度运算;以及,乘加功能模块,用于根据所述控制信号对输入其中的操作数做相应的操作。

对于上述向量乘加功能部件,优选地,当所述向量乘加功能部件为256位宽时,所述向量乘加功能部件并行执行八个单精度浮点复数的四次向量乘法/乘加运算或者四个双精度浮点复数的两次向量乘法/乘加运算。

通过设计两条指令配对来完成操作,本发明使得向量复数乘法运算的流水长度为乘加运算的流水级。并且,通过使两条指令复用向量乘加功能部件,本发明能够避免芯片复杂度的扩大,从而大大节省了芯片的面积和成本。

附图说明

图1是本发明的向量单精度复数乘法指令VCPMULPS的指令编码格式图;

图2是本发明的向量单精度复数乘法指令VCPMULPS的操作图;

图3是本发明的向量单精度复数乘加指令VCPMULADDPS的指令编码格式图;

图4是本发明的向量单精度复数乘加指令VCPMULADDPS的操作图;

图5是本发明的向量双精度复数乘法指令VCPMULPD的指令编码格式图;

图6是本发明的向量双精度复数乘法指令VCPMULPD的操作图;

图7是本发明的向量双精度复数乘加指令VCPMULADDPD的指令编码格式图;

图8是本发明的向量双精度复数乘加指令VCPMULADDPD的操作图;

图9是本发明的向量乘加功能部件框图。

具体实施方式

如上所述,本发明旨在降低向量复数乘法运算的流水长度及硬件实现成本,且其发明思路主要是:利用两条指令配对来完成向量复数乘法运算操作,其中,第一条指令做向量复数乘法操作,第二条指令做向量复数乘加操作。并且,这两条指令复用向量乘加功能部件,以及两个浮点单精度和一个浮点双精度复用一个向量乘加功能部件。

参考图9所示本发明的向量乘加功能部件的框图,以操作数为256位为例详细解释向量乘加功能部件的操作如下:每周期发射一条向量乘法或向量乘加指令到向量乘加功能部件900。乘加功能模块920由四个64位乘加子模块921~924构成,通过操作数的选择来实现向量复数乘。也即,经过操作数选择模块910以多路选择器的形式进行选择,将选择好的每个64位的源操作数送到相应的乘加子功能模块921~924中去。控制模块930根据指令码给出与例如是做乘法操作还是乘加操作、乘加操作的乘法结果是否取负、是单精度运算还是双精度运算等有关的控制信号。乘加子功能模块921~924根据控制信号对操作数做相应的操作,并且各乘加子功能模块921~924的运算结果拼成256位输出。

本发明的上述及其它特征、优点和有益技术效果,将通过如下参照附图进行的优选实施例介绍得到更充分的阐述。

一方面,针对浮点单精度向量复数乘法运算,本发明设计由向量单精度复数乘法指令VCPMULPS和向量单精度复数乘加指令VCPMULADDPS配对来共同完成。其中:

向量单精度复数乘法指令VCPMULPS vd,vs,vt的指令编码格式如图1所示:VCPMULPS为指令名,vd为目的向量寄存器,vs和vt为源向量寄存器。

另外,向量单精度复数乘法指令VCPMULPS的指令操作如图2所示。其中,以256位浮点向量寄存器为例具体而言,由于每个复数包括实部和虚部两部分,浮点单精度复数实部和虚部都是32位,因此,256位向量寄存器包括4个浮点单精度复数。也即,源向量寄存器vs和vt分别存放了四个单精度浮点格式的复数,作为四次复数乘法运算输入的8个点。作为复数乘法运算的第一步,向量单精度复数乘法指令VCPMULPS执行向量乘法运算,并将运算结果作为复数乘法运算的部分和寄存在256位的目的寄存器vd中。并且,寄存在目的寄存器vd中的指令VCPMULPS的运算结果将作为向量单精度复数乘加指令VCPMULADDPS的源操作数之一,以参与作为复数乘法运算的第二步的向量乘加运算,从而得到复数乘法运算的最终结果。

向量单精度复数乘加指令VCPMULADDPS vd,vs,vt,vr的指令编码格式如图3所示:VCPMULADDPS为指令名,vd为目的向量寄存器,vs、vt和vr为源向量寄存器。其中,源向量寄存器vr存放了与之配对的向量单精度复数乘法指令VCPMULPS的运算结果;源向量寄存器vs、vt存放的操作数内容分别和向量单精度复数乘法指令VCPMULPS中寄存器vs、vt的操作数内容相同。

另外,向量单精度复数乘加指令VCPMULADDPS的指令操作如图4所示。其中,四次复数乘法运算的输入取自于向量单精度复数乘加指令VCPMULPS中256位向量寄存器vs和vt表示的8个复数点。作为复数乘法运算的第二步,向量单精度复数乘加指令VCPMULADDPS执行向量的乘加运算,源操作数之一vr取自于第一条指令的执行结果,并将运算结果作为复数乘法运算的最终结果寄存在256位目的寄存器vd中。

综上,单精度向量复数乘法运算由向量单精度复数乘法指令VCPMULPS和向量单精度复数乘法指令VCPMULADDPS配对共同完成,并以256位向量寄存器为例,具体列出用以完成八个单精度浮点数的四次复数乘法运算的操作如下:

VCPMULPS:

vd[031:000]←vs[063:032]*vt[031:000];

vd[063:032]←vs[063:032]*vt[063:032];

vd[095:064]←vs[127:096]*vt[095:064];

vd[127:096]←vs[127:096]*vt[127:096];

vd[159:128]←vs[191:160]*vt[159:128];

vd[191:160]←vs[191:160]*vt[191:160];

vd[223:192]←vs[255:224]*vt[223:192];

vd[255:224]←vs[255:224]*vt[255:224];

VCPMULADDPS:

vd[031:000]←vr[031:000]+vs[031:000]*vt[063:032];

vd[063:032]←vr[063:032]-vs[031:000]*vt[031:000];

vd[095:064]←vr[095:064]+vs[095:064]*vt[127:096];

vd[127:096]←vr[127:096]-vs[095:064]*vt[095:064];

vd[159:128]←vr[159:128]+vs[159:128]*vt[191:160];

vd[191:160]←vr[191:160]-vs[159:128]*vt[159:128];

vd[223:192]←vr[223:192]+vs[223:192]*vt[255:224];

vd[255:224]←vr[255:224]-vs[223:192]*vt[223:192];

下面列举一个具体的应用示例,以说明如何上述经由向量单精度乘法指令VCPMULPS和向量单精度乘加指令VCPMULADDPS来共同完成单精度向量复数乘法运算的实现过程。

假定要进行四次向量单精度复数乘法运算(x1+x0i)*(y1+y0i)、(x3+x2i)*(y3+y2i)、(x5+x4i)*(y5+y4i)以及(x7+x6i)*(y7+y6i),并假定相应的运算结果为(z1+z0i)、(z3+z2i)、(z5+z4i)、(z7+z6i)。

第一条指令,即向量单精度复数乘法指令VCPMULPS vd,vs,vt的指令操作图如图2所示,其操作结果为w0=x1*y0、w1=x1*y1、w2=x3*y2、w3=x3*y3、w4=x5*y4、w5=x5*y4、w6=x7*y6、w7=x7*y7。

第二条指令,即向量单精度复数乘加指令VCPMULADDPS vd,vs,vt,vr的指令操作图如图4所示,其中vr源操作数来自第一条指令的操作结果,其操作结果为z0=x0y1+x1y0、z1=x1y1-x0y0、z2=x2y3+x3y2、z3=x3y3-x2y2、z4=x4y5+x5y4、z5=x5y5-x4y4、z6=x6y7+x7y6、z7=x7y7-x6y6。

实现过程如下:连续发射配对的两条指令,即向量单精度复数乘法指令和向量单精度复数乘加指令,到向量乘加功能部件。

通过操作码判断第一条指令为指令VCPMULPS w,x,y。

操作数选择逻辑将最低一个乘加部件的操作数opa0、opb0、opc0置为{x1,x1}、{y1,y0}和64’b0,控制位置为做乘法操作,单精度。{y1,y0}表示拼接操作,即高32位为y1、低32位为y0,64’b0表示64个0。

次低一个乘加部件的操作数opa1、opb1、opc1置为{x3,x3}、{y3,y2}和64’b0,控制位置为做乘法操作,单精度。

次高一个乘加部件的操作数opa2、opb2、opc2置为{x5,x5}、{y5,y4}和64’b0,控制位置为做乘法操作,单精度。

最高一个乘加部件的操作数opa2、opb2、opc2置为{x7,x7}、{y7,y6}和64’b0,控制位置为做乘法操作,单精度。

四个乘加部件各执行一个双精度操作opa*opb+opc,或者两个单精度操作opa[63:32]*opb[63:32]+opc[63:32]和opa[31:0]*opb[31:0]+opc[31:0]。因为操作数为单精度,因此每个乘加部件执行两个乘加。输出结果w为{x7*y7,x7*y6,x5*y5,x5*y4,x3*y3,x3*y2,x1*y1,x1*y0}。

通过操作码判断第二条指令为指令VCPMULADDPS z,x,y,w。

操作数选择逻辑将最低一个乘加部件的操作数opa0、opb0、opc0置为{x0,x0}、{y0,y1}和{x1*y1,x1*y0},控制位置为单精度,第一个单精度做乘加、乘法取负,第二个单精度做乘加。

次低一个乘加部件的操作数opa1、opb1、opc1置为{x2,x2}、{y2,y3}、{x3*y3,x3*y2},控制位置为单精度,第一个单精度做乘加、乘法取负,第二个单精度做乘加。

次高一个乘加部件的操作数opa2、opb2、opc2置为{x4,x4}、{y4,y5}和{x5*y5,x5*y4},控制位置为单精度,第一个单精度做乘加、乘法取负,第二个单精度做乘加。

最高一个乘加部件的操作数opa2、opb2、opc2置为{x6,x6}、{y7,y6}和{x7*y7,x7*y6},控制位置为单精度,第一个单精度做乘加、乘法取负,第二个单精度做乘加。

四个乘加部件各执行一个双精度操作opa*opb+opc,如果是乘加、乘法取负则把opa*opb取负,即结果为-opa*opb+opc;或者两个单精度操作opa[63:32]*opb[63:32]+opc[63:32],如果是乘加、乘法取负则把opa[63:32]*opb[63:32]取负,即结果为-opa[63:32]*opb[63:32]+opc[63:32],和opa[31:0]*opb[31:0]+opc[31:0],如果是乘加、乘法取负则把opa[31:0]*opb[31:0]取负,即结果为-opa[31:0]*opb[31:0]+opc[31:0]。

因为操作数为单精度,因此每个乘加部件执行两个乘加。输出结果z为{x7y7-x6y6,x6y7+x7y6,x5y5-x4y4,x4y5+x5y4,x3y3-x2y2,x2y3+x3y2,x1y1-x0y0,x0y1+x1y0}。

由此可见,通过设计由向量单精度复数乘法指令和向量单精度复数乘加指令配对完成单精度向量复数乘法运算,能够有效降低向量复数乘法运算的流水长度;并通过使向量单精度复数乘法指令和向量单精度复数乘加指令使用相同的向量乘加部件,即向量单精度复数乘法指令和向量单精度复数乘加指令复用向量乘加部件,能够有效减小芯片的面积以及处理器的硬件实现成本。

另一方面,针对浮点双精度向量复数乘法运算,本发明设计由向量双精度复数乘法指令VCPMULPD和向量双精度复数乘加指令VCPMULADDPD配对来共同完成。其中:

向量双精度复数乘法指令VCPMULPD vd,vs,vt的指令编码格式如图5所示:VCPMULPD为指令名,vd为目的向量寄存器,vs和vt为源向量寄存器。

另外,向量双精度复数乘法指令VCPMULPS的指令操作如图6所示。其中,以256位浮点向量寄存器为例具体而言,由于每个复数包括实部和虚部两部分,浮点双精度复数实部和虚部都是64位,因此,256位向量寄存器包括2个浮点双精度复数。也即,源向量寄存器vs和vt分别存放了两个双精度浮点格式的复数,作为两次复数乘法运算输入的4个点。作为复数乘法运算的第一步,向量双精度复数乘法指令VCPMULPD执行向量的乘法运算,并将运算结果作为复数乘法运算的部分和寄存在256位的目的寄存器vd中。并且,寄存在目的寄存器vd中的指令VCPMULPD的运算结果将作为向量双精度复数乘加指令VCPMULADDPD的源操作数之一,以参与作为复数乘法运算的第二步的向量乘加运算,从而得到复数乘法运算的最终结果。

向量双精度复数乘加指令VCPMULADDPD vd,vs,vt,vr的指令编码格式如图7所示:VCPMULADDPS为指令名,vd为目的向量寄存器,vs、vt和vr为源向量寄存器。其中,源向量寄存器vr存放了与之配对的向量双精度复数乘法指令VCPMULPD的运算结果;源向量寄存器vs、vt存放的操作数内容分别和向量双精度复数乘法指令VCPMULPS中寄存器vs、vt的操作数内容相同。

另外,向量双精度复数乘加指令VCPMULADDPD的指令操作如图8所示。其中,两次复数乘法运算的输入取自于向量双精度复数乘加指令VCPMULPD中256位向量寄存器vs和vt表示的4个复数点。作为复数乘法运算的第二步,向量双精度复数乘加指令VCPMULADDPD执行向量的乘加运算,源操作数之一vr取自于第一步的运算结果,并将运算结果作为复数乘法运算的最终结果寄存在256位目的寄存器vd中。

综上,双精度向量复数乘法运算由向量双精度复数乘法指令VCPMULPD和向量双精度复数乘法指令VCPMULADDPD配对共同完成,并以256位向量寄存器为例,具体列出用以完成四个双精度浮点数的两次复数乘法运算的操作如下:

VCPMULPD:

vd[063:000]←vs[127:064]*vt[063:000];

vd[127:064]←vs[127:064]*vt[127:064];

vd[191:128]←vs[255:192]*vt[191:128];

vd[255:192]←vs[255:192]*vt[255:192];

VCPMULADDPD:

vd[063:000]←vr[063:000]+vs[063:000]*vt[127:064];

vd[127:064]←vr[127:064]-vs[063:000]*vt[063:000];

vd[191:128]←vr[191:128]+vs[191:128]*vt[255:192];

vd[255:192]←vr[255:192]-vs[191:128]*vt[191:128];

下面列举一个具体的应用示例,以说明如何上述经由向量双精度乘法指令VCPMULPD和向量双精度乘加指令VCPMULADDPD来共同完成双精度向量复数乘法运算的实现过程。

假定要进行两次向量双精度复数乘法运算(x1+x0i)*(y1+y0i)和(x3+x2i)*(y3+y2i),并假定操作结果为(z1+z0i)、(z3+z2i)。

第一条指令,即向量双精度复数乘法指令VCPMULPD vd,vs,vt的指令操作图如图6所示,其操作结果为w0=x1*y0、w1=x1*y1、w2=x3*y2、w3=x3*y3。

第二条指令,即向量双精度复数乘加指令VCPMULADDPD vd,vs,vt,vr的指令操作图如图8所示,其中vr源操作数来自第一条指令的操作结果,其操作结果为z0=x0*y1+x1*y0、z1=x1*y1-x0*y0、z2=x2*y3+x3*y2、z3=x3*y3-x2*y2。

实现过程如下:连续发射配对的两条指令,即向量双精度复数乘法指令和向量双精度复数乘加指令,到向量乘加功能部件。

通过操作码判断第一条指令为指令VCPMULPD w,x,y。

操作数选择逻辑将最低一个乘加部件的操作数opa0、opb0、opc0置为x1、y0和64’b0,控制位置为做乘法操作,双精度。控制位置为做乘法操作,双精度。

次低一个乘加部件的操作数opa1、opb1、opc1置为x1、y1和64’b0,控制位置为做乘法操作,双精度。

次高一个乘加部件的操作数opa2、opb2、opc2置为x3、y2和64’b0,控制位置为做乘法操作,双精度。

最高一个乘加部件的操作数opa2、opb2、opc2置为x3、y3和64’b0,控制位置为做乘法操作,双精度。

四个乘加部件各执行一个双精度操作opa*opb+opc,或者两个单精度操作opa[63:32]*opb[63:32]+opc[63:32]和opa[31:0]*opb[31:0]+opc[31:0]。因为操作数为双精度,因此每个乘加部件执行一个乘加。输出结果w为{x3*y3,x3*y2,x1*y1,x1*y0}。

通过操作码判断第二条指令为指令VCPMULADDPD z,x,y,w。

操作数选择逻辑将最低一个乘加部件的操作数opa0、opb0、opc0置为x0、y1和x1*y0,控制位置为双精度,做乘加,结果为x0*y1+x1*y0。

次低一个乘加部件的操作数opa1、opb1、opc1置为x0、y0、x1*y1,控制位置为双精度,做乘加、乘法取负,结果为x1*y1-x0*y0。

次高一个乘加部件的操作数opa2、opb2、opc2置为x2、y3和x3*y2,控制位置为双精度,做乘加,结果为x2*y3+x3*y2。

最高一个乘加部件的操作数opa2、opb2、opc2置为x2、y2和x3*y3,控制位置为双精度,做乘加、乘法取负,结果为x3*y3-x2*y2。

输出结果z为输出结果z为{x3y3-x2y2,x2y3+x3y2,x1y1-x0y0,x0y1+x1y0}。

由此可见,通过设计由向量双精度复数乘法指令和向量双精度复数乘加指令配对完成双精度向量复数乘法运算,能够有效降低向量复数乘法运算的流水长度;并通过使向量双精度复数乘法指令和向量双精度复数乘加指令使用相同的向量乘加部件,即向量双精度复数乘法指令和向量双精度复数乘加指令复用向量乘加部件,能够有效减小芯片的面积以及处理器的硬件实现成本。

需要声明的是,上述发明内容及具体实施方式仅旨在证明本发明所提供技术方案的实际应用,不应解释为对本发明保护范围的限定。本领域技术人员在本发明的精神和原理内,当可作各种修改、等同替换、或改进。本发明的保护范围以所附权利要求书为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号