通过在设计编制期间替换用于执行除法的部件来改进系统操作的方法和设备与流程

文档序号:13557324阅读:179来源:国知局
通过在设计编制期间替换用于执行除法的部件来改进系统操作的方法和设备与流程

本公开的实施例涉及用于在目标装置上设计系统的工具。更具体而言,本公开的实施例涉及通过在设计编制期间替换用于执行除法的部件来改进系统操作的方法和设备。



背景技术:

诸如现场可编程门阵列(fpga)、专用集成电路(asic)和结构化asic的目标装置用于实施可以包括百万个门和兆位嵌入式存储器的大型系统。大型系统的复杂性常常需要使用电子设计自动化(eda)工具以创建和优化物理目标装置上的系统的设计。在计算机辅助设计(cad)中由eda工具执行的流程中,编制流是硬件描述语言(hdl)编制。hdl编制涉及对目标装置上的系统执行合成、放置、布线和时序分析。

除法是常用的算术运算。在除法的常用种类之中,算法是执行连续除法的算法,以及执行完全并行除法的算法。连续除法需要多个时钟周期,其中每个时钟周期仅计算商的几个位。完全并行除法需要单个时钟周期,其中每个时钟周期根据被除数和除数来计算商。

为了使用合理期望的时钟频率执行完全并行除法,需要设计者通过增加很多流水线级来实施用于除法运算的重流水线电路。流水线传递允许电路在较高频率下工作,但增大了传播延迟和所需的逻辑的量。



技术实现要素:

本公开的实施例通过在合成期间在寄存器时序层级(rtl)细化之后的网表中的常数来识别除法。除法通过常数的倒数被变换成乘法。识别由表示倒数的值的位数所确定的倒数精确度以确保在使用最小量的硬件的同时有可接受的除法结果。乘法被映射到目标装置上的资源中。

一种用于在目标装置上设计系统的方法包括识别系统的网表中的执行除法运算的部件。在合成期间修改系统的网表以利用其他部件通过执行乘法运算来计算除法运算的结果。根据本公开的实施例,除法运算利用常数的除数。根据本公开的实施例,识别用于乘法运算的乘数值,并识别表示乘数值的位数。根据本公开的实施例,乘数值是除数的倒数。根据本公开的实施例,为用户呈现利用部件执行除法运算以及利用其他部件执行除法运算的选项,并且响应于用户选择其他部件而执行修改。

附图说明

本公开的实施例的特征和优点通过示例的方式被示出,而并非意在将本公开的实施例的范围限制到图示的特定实施例。

图1是示出根据本公开的示例性实施例的用于在目标装置上设计系统的方法的流程图。

图2是示出根据本公开的示例性实施例的用于执行合成的方法的流程图。

图3是示出根据本公开的示例性实施例的用于在合成期间执行除法替换的方法的流程图。

图4是示出根据本公开的示例性实施例的用于识别用于除法替换的乘数大小和乘数值的方法的流程图。

图5a示出了根据本公开的示例性实施例的目标装置上的硬件的示例,所述硬件被实施以在执行除法替换之前产生除法结果。

图5b示出了根据本公开的示例性实施例的目标装置上的硬件的示例,所述硬件被实施以在执行除法替换之后产生除法结果。

图6是根据本公开的示例性实施例的实施系统设计器的计算机系统的方框图。

图7是根据本公开的示例性实施例的系统设计器的方框图。

图8是根据本公开的示例性实施例的除法替换单元的方框图。

图9示出了根据本公开的示例性实施例的示例性目标装置。

具体实施方式

在以下描述中,为了解释的目的,阐述了具体命名法,以便提供对本公开的实施例的透彻理解。然而,对于本领域的技术人员显而易见的是,可以无需描述中的具体细节来实践本公开的实施例。在其他情况下,以方框图形式示出了公知的电路、装置、流程和程序以避免不必要地使本公开的实施例难以理解。

图1是示出根据本公开的示例性实施例的用于在目标装置上设计系统的方法的流程图。图1中描述的流程可以被统称为设计的“编制”。目标装置可以是现场可编程门阵列(fpga)、专用集成电路(asic)、结构化asic或由硬件描述语言(hdl)描述其功能的其他装置。在110,产生用于系统的设计。根据本公开的实施例,响应于用户提供的输入而产生设计。在该实施例中,用户可以输入系统的寄存器传输层级(rtl)描述,从设计库选择和连接逻辑,或利用其他设计输入选项。用于所产生的系统的设计可以在hdl中,并且可以包括多个可重新配置的逻辑块。

在120,对系统进行合成,并产生网表。合成包括产生要由目标装置实施的系统的逻辑设计。根据本公开的实施例,合成根据hdl设计定义产生系统的优化逻辑表示。在合成期间,在优化流程中,可以在从网表中识别网络并利用等价但具有优选配置的优选网络进行替换的的地方执行识别和替换。出于各种不同的原因,网络可以是优选的。根据本公开的实施例,如果可以利用目标装置上的较少部件或利用较低水平的逻辑来实施,可以利用目标装置上的较少导线实施,可以需要较少的功率来工作,和/或可以与设计中的初始网络相比在更高速度或频率(fmax)下工作,则网络可以是优选的。根据本公开的实施例,网络替换可以包括利用乘法模块或节点替换网表中的除法模块或节点。

在130,放置系统。根据本公开的实施例,放置涉及在目标装置上放置映射的逻辑系统设计。放置工作于技术映射的网表上,以产生针对每个逻辑元件和功能块的放置。根据本公开的实施例,放置包括通过判断要使用目标装置上的哪些资源实施在合成期间识别的逻辑元件和功能块来将系统装配在目标装置上。放置可以包括群集,其涉及将逻辑元件分组到一起,以形成目标装置上呈现的逻辑群集。根据本公开的实施例,群集是在放置的早期阶段执行的,并且发生在放置准备阶段期间的合成之后。放置还可以使互连的资源之间的距离最小化,以满足时序网表的时序约束。

在140,对所放置的设计进行布线。在布线期间,分配目标装置上的布线资源以提供目标装置上的逻辑门、逻辑元件和其他部件之间的互连。根据本公开的实施例,布线旨在减小用于连接所放置的逻辑设计中的部件的布线的量。可布线性可以包括执行扇出分割、逻辑复制、逻辑重新连线或其他流程。应当领会,可以对所放置的逻辑设计执行一个或多个流程。在布线期间还可以执行时序优化以分配布线资源,以符合时序网表的时序约束。

在150,对所设计的系统执行时序分析。根据本公开的实施例,时序分析判断是否满足系统的时序约束。作为时序分析的一部分,可以执行松弛分析(slackanalysis)。应当领会,可以在合成120、放置130和布线流程140中的每个期间和/或之后执行时序分析,以引导编制器优化。在160,执行组装流程。组装流程涉及创建程序文件,其包括由在110、120、130、140和150处描述的流程所确定的信息。程序文件可以是可以用于对目标装置编程的位流。在asic情况下,程序文件可以表示电路的物理布局。根据本公开的实施例,图1中所示的流程可以由在第一计算机系统上执行的eda工具执行。产生的数据文件可以被传送到第二计算机系统,以允许进一步处理系统的设计。替代地,可以将数据文件传送到第二计算机系统,其可以用于根据系统设计对目标装置编程。应当领会,也可以通过其他形式(例如在显示装置或其他介质上)输出系统的设计。可以利用数据文件对目标装置编程。通过利用数据文件对目标编程,对目标装置上的部件(可编程资源)进行物理转换以实施该系统。

图2是示出根据本公开的示例性实施例的用于执行合成的方法的流程图。根据本公开的实施例,图2所述的方法可以用于实施图1上所示的流程120。在210,执行细化。在细化期间,接收系统的描述。系统的描述可以是文本格式,例如硬件描述语言(hdl)、寄存器时序层级(rtl)或其他格式。可以识别系统的描述中的硬件结构并将其转换成一般技术单元。根据本公开的实施例,一般技术单元/部件可以包括寄存器、加法器、比较器、复用器、门和/或其他部件。产生网表,网表包括系统的设计中的一般技术单元/部件的描述。

在220,执行高层级优化。根据本公开的实施例,高层级优化包括识别网络以及利用优选网络替换网络,优选网络产生等价结果,但具有优选配置。根据本公开的实施例,识别利用常数执行除法的网络并将其替换为执行乘法并产生等价结果的网络。应当领会,可以在高层级优化期间执行其他网络替换流程。例如,可以利用只读存储器(rom)节点替换具有由常数驱动的数据输入的复用器。可以利用移位寄存器节点替换依次连接的寄存器的链。

在230,执行低层级优化。根据本公开的实施例,低层级优化可以包括执行最小化,其中对网表执行布尔优化,以减少实施设计所需要的逻辑。低层级优化可以包括执行分解,例如算术或功能分解,其中将较大的门划分成更有效率的较小输入门。

在240,执行技术映射。根据本公开的实施例,对优化的逻辑设计执行技术映射。技术映射包括确定如何利用目标装置上的具体资源(例如逻辑元件和功能块)来实施优化的逻辑表示中的逻辑门和逻辑元件。根据本公开的实施例,在合成期间根据映射来产生逻辑网表。该网表可以是从hdl产生的优化的技术映射的网表。逻辑网表可以识别目标中利用的资源以及资源的端口之间的互连。

图3是示出根据本公开的示例性实施例的用于在合成期间执行除法替换的方法的流程图。根据本公开的实施例,图3中描述的方法可以用于实施图2中所示的流程220,其中使用识别和替换来识别执行除法的网络并将其替换为执行乘法的网络。在310,从针对系统的设计的网表识别除法运算。根据本公开的实施例,可以通过识别其属性和/或网表上的节点类型来识别除法运算。

在320,判断除法运算是否涉及利用常数除数执行除法。如果确定除法运算不涉及利用常数除数执行除法,则控制进行到330。如果确定除法运算涉及利用常数除数执行除法,则控制进行到340。

在330,将用于执行所识别的除法运算的部件保持在设计中,而不被替换。

在340,识别乘数值及其在大小方面的精确度(表示乘数值所需的位数)。乘数值是除数的倒数。根据本公开的实施例,可以使用以下关系来识别乘数值m和可以用于识别位数以使输出值从乘法运算移位的值l。根据本公开的实施例,利用乘法运算接着是移位n+l的值来替换除数为d的除法,其中l是被移位的额外的位数。结果,可以丢弃结果的n+l个最低有效位。

给定除数d和表示被除数n所需的位数的除法运算,假设m和l为非负整数,以使得关系式(1)和(2)为真。

d≠0(1)

2n+l≤m*d≤2n+l+2l(2)

关系式(1)和(2)可以用于识别m和l的值。

在350,替换用于除法运算的部件。根据本公开的实施例,利用产生与除法运算结果等价的结果的其他部件替换用于除法运算的部件。其他部件使用乘数值执行乘法运算。

根据本公开的实施例,在流程340之后,可以为用户呈现使用部件执行除法运算以及通过常数执行传统除法的选项,以及使用其他部件执行乘法运算以产生等价结果的选项。提供给用户的选项可以包括部件和其他部件的身份和/或每个选项的要求和益处。例如,这可以包括与每个选项相关联的系统的操作的最大频率。响应于用户输入,控制可以替换用于除法的部件(如流程350所示)或保持用于除法的部件(如流程330处所示)。

应当领会,图3中所示的流程可以用于识别和替换与多个除法运算相关联的网络。例如,可以执行图3中所示的流程以识别和替换并联的多个网络。也可以重复图3中所示的流程以通过顺序方式识别和替换多个网络。

除法运算是数字信号处理中使用的最普通的算术运算之一。除法运算的硬件实现一般获得慢的结果。本公开的实施例辨别除法运算的特殊情况,即除数为常数的除法,其中可以产生获得快的结果的硬件实现。在执行基数转换、通过地址计算进行的数组索引、行程计数计算、散列表索引计算和其他计算时,可以使用除数为常数的除法。根据本公开的实施例,可以在合成期间在网表中辨别出除数为常数的除法。除法运算和与除法运算相关联的硬件被转换成利用常数的倒数的乘法运算以及与乘法运算相关联的硬件,以获得更快的运算。

图4是示出根据本公开的示例性实施例的用于识别用于除法替换的乘数大小和乘数值的方法的流程图。根据本公开的实施例,图4中描述的方法可以用于实施图3中所示的流程340和350。在410,识别用于除法运算的被除数。被除数可以被称为d。

在415,识别用于除法运算的被除数的大小。被除数的大小反映了表示被除数的值所需的精确度的量。根据本公开的实施例,可以在位数方面测量被除数的大小。可以将被除数的大小称为n。

在420,识别除法运算的结果的大小。结果的大小反映了表示结果的值所需的精确度的量。根据本公开的实施例,可以在位数方面测量结果的大小。可以将结果的大小称为s。

在425,对作为乘数进行运算的倒数的初始大小进行初始化。乘数的大小反映了表示乘数的值所需的精确度的量。根据本公开的实施例,可以在位数方面测量乘数的大小。乘数的大小可以被称为l,并且初始被设置为零。

在430,计算倒数的初始值。倒数的值被用作乘数来计算与除法运算的结果等价的结果。倒数可以被称为m。根据本公开的实施例,可以利用以下关系式计算倒数的初始值。

m=ceil(2n/d)(4)

在435,判断倒数的当前值是否满足条件。根据本公开的实施例,该条件测试值m是否足以近似l/d。如果倒数的当前值不满足该条件,则控制进行到440。如果倒数的当前值满足该条件,则控制进行到450。根据本公开的实施例,通过以下关系时反映所测试的条件。

m*d-2n+l<=2l(5)

在440,调节倒数的大小。根据本公开的实施例,通过将其增大一个位的值来调节倒数的大小。在445,调节倒数的值。在调节倒数的值之后,控制返回到435以判断经调节的倒数的值是否满足条件。根据本公开的实施例,使用以下关系式来调节倒数的大小。

m=ceil(2n+l/d)(5)

在450,实施乘法节点。根据本公开的实施例,识别用于执行乘法运算的部件,乘法运算产生与除法运算的结果等价的结果。与执行除法运算的除法节点中的部件相比,乘法节点中的部件需要目标装置中的更少的资源和更少的逻辑层级。

在455,利用乘法节点替换除法节点。根据本公开的实施例,在系统的描述中利用乘法的部件替换除法节点的部件。更新对应于除法节点的输入和输出连接,并指定通往乘法节点的输入和输出连接。

根据本公开的实施例,可以使用下列伪代码实施图4中所述的流程。

图1-4是示出本公开的实施例的流程图。这些图中描述的流程可以由计算机系统实现的eda工具执行。示出的一些技术可以顺序、并行或按照除所述次序之外的次序执行,并且可以重复所述流程。要领会,并非需要执行所述的所有技术,可以增加额外的技术,并且可以用其他技术替代示出的一些技术。

图5a示出了根据本公开的示例性实施例的目标装置上的硬件的示例,所述硬件被实施以通过在执行除法替换之前执行除法运算来产生除法结果。图5b示出了根据本公开的示例性实施例的目标装置上的硬件的示例,所述硬件被实施以通过在执行除法替换之后执行乘法运算来产生除法结果。如所示,通过执行乘法运算产生除法结果所需的硬件资源的量显著少于通过执行除法运算产生除法结果所需的硬件资源的量。根据本公开的实施例,图5b中用于执行乘法运算的硬件是数字信号处理器块。

图6是其中存在本公开的示例性实施例的示例性计算机系统600的方框图。计算机系统600包括处理数据信号的处理器610。处理器610耦合到总线601或其他开关结构,其在计算机系统600中的处理器610和其他部件之间传送数据信号。计算机系统600包括存储器620。存储器620可以存储由数据信号表示的可以由处理器610执行的指令和代码。数据存储装置630也耦合到总线601。

网络控制器640耦合到总线601。网络控制器640可以将计算机系统600链接到计算机的网络(未示出)并支持机器之间的通信。显示装置控制器650耦合到总线601。显示装置控制器650允许将显示装置(未示出)耦合到计算机系统600并充当显示装置和计算机系统600之间的接口。输入接口660耦合到总线601。输入接口660允许将输入装置(未示出)耦合到计算机系统600并从输入装置向计算机系统600传送数据信号。

系统设计器621可以存在于存储器620中并由处理器610执行。系统设计器621可以操作用于对系统的设计执行合成、放置、布线和时序分析。根据本公开的实施例,从系统的描述识别执行除法运算的部件。在合成期间修改系统的描述以利用其他部件通过执行乘法运算来计算除法运算的结果。根据本公开的实施例,识别乘数值,其为除法运算的除数的倒数。还响应于除数的大小、除数的值和除法运算的结果的大小来识别表示乘数值的位数。

图7示出了根据本公开的实施例的系统设计器700。系统设计器700可以是用于在诸如fpga、结构化专用集成电路(asic)、asic或其他电路等目标装置上设计系统的eda工具。图7示出了实施系统设计器700的实施例的模块。根据一个实施例,模块表示软件模块,并且系统设计器可以由计算机系统执行,所述计算机系统例如图6中所示的执行由图7中所示的模块表示的指令序列的计算机系统。执行指令序列导致计算机系统支持系统设计,如后文将要描述。在替代的实施例中,可以使用硬连线电路代替软件指令或将其与软件指令结合以实施本公开的实施例。于是,本公开的实施例不限于硬件电路和软件的任何特定组合。系统设计器700包括系统设计器管理器710。系统设计器管理器710连接到系统设计器700的部件并在部件之间传送数据。

系统设计器700包括合成单元720。合成单元720采取概念hdl设计定义并产生系统的优化逻辑表示。合成单元720产生的系统的优化逻辑表示可以包括具有减少数量的系统所需功能块和寄存器(例如逻辑门和逻辑元件)的表示。替代地,合成单元720产生的系统的优化逻辑表示可以包括具有减小的逻辑深度并且产生较低信号传播延迟的表示。

合成单元720包括细化单元721。细化单元721接收系统的描述。系统的描述可以是文本格式,例如硬件描述语言(hdl)、寄存器时序层级(rtl)或其他格式。细化单元721识别系统的描述中的硬件结构并将硬件结构转换成一般技术单元。根据本公开的实施例,一般技术单元/部件可以包括寄存器、加法器、比较器、复用器、门和/或其他部件。细化单元产生网表,网表包括系统的设计中的一般技术单元/部件的描述。

合成单元720包括高层级优化单元722。根据本公开的实施例,高层级优化单元722识别网络并将该网络替换为产生等价结果但具有优选配置的优选网络。在一个实施例中,识别利用常数执行除法的网络,并且将该网络替换为执行乘法并产生等价结果的网络。

合成单元720包括低层级优化单元723。根据本公开的实施例,低层级优化单元723执行最小化,其中对网表执行布尔优化以减少实施设计所需的逻辑。低层级优化单元723还可以执行分解,例如算术或功能分解,其中将较大的门划分成更有效率的较小输入门。

合成单元720包括技术映射单元724。根据本公开的实施例,技术映射单元724确定如何利用目标装置上的特定资源(例如逻辑元件和功能块)来实施优化逻辑表示中的逻辑门和逻辑元件。在一个实施例中,技术映射单元724在合成期间产生逻辑网表。该网表可以是从hdl产生的优化的技术映射的网表。逻辑网表可以识别在目标中使用的资源以及资源的端口之间的互连。

系统设计器700包括放置单元730,其处理优化的技术映射的网表以针对每个功能块产生放置。所述放置识别目标装置上的哪些部件或区域要用于特定功能块和寄存器。

系统设计器700包括布线单元740,其确定目标装置上的用于在实施逻辑设计的功能块和寄存器的部件之间提供互连的布线资源。

系统设计器700包括时序分析单元750,其执行时序分析以判断是否满足系统的时序约束。

系统设计器管理器710可以执行组装流程,组装流程创建包括系统的设计的数据文件。数据文件可以是可以用于对目标装置编程的位流。组装流程可以输出数据文件,从而可以存储数据文件或替代地将其传送到用于对目标装置编程的独立的机器。应当领会,也可以通过其他形式(例如在显示装置或其他介质上)输出系统的设计。

图8是根据本公开的示例性实施例的除法替换单元800的方框图。除法替换单元800可以用于实施图7中所示的高层级优化单元722。除法替换单元800包括除法替换管理器810。除法替换管理器810连接到除法替换单元800的部件并在部件之间传送数据。

除法替换单元800包括除法识别单元820。除法识别单元820从用于系统的设计的网表识别除法运算。根据本公开的实施例,除法识别单元820识别除数为常数的除法运算。

除法替换单元800包括乘数识别单元830。乘数识别单元830识别乘数值。乘数值是除数的倒数,并可以用于执行乘法运算,乘法运算产生与除法运算的结果等价的结果。乘数识别单元830还在大小方面识别乘数值的精确度以产生等价结果。精确度可以描述表示乘数值所需的位数。根据本公开的实施例,可以使用参考图3和4描述的流程识别乘数值及其精确度。

除法替换单元800包括乘法节点产生单元840。乘法节点产生单元840识别用于执行乘法运算的部件,该乘法运算产生与除法运算的结果等价的结果。与执行除法运算的除法节点中的部件相比,乘法节点中的部件需要目标装置中的更少的资源和更少的逻辑层级。

除法替换单元800包括替换单元850。替换单元850利用用于乘法运算的其他部件替换用于除法运算的部件。替换单元850还更新对应于除法节点的输入和输出连接,并指定通往乘法节点的输入和输出连接。

根据本公开的实施例,除法替换管理器810可以为用户呈现使用部件执行除法运算以执行除数为常数的传统除法的选项,以及使用其他部件执行乘法运算以产生等价结果的选项。提供给用户的选项可以包括部件和其他部件的身份和/或每个选项的要求和益处。例如,这可以包括与每个选项相关联的系统的操作的最大频率。替换单元850可以响应于来自用户的输入而进行操作。

应当领会,可以将本公开的实施例提供为计算机程序产品或软件,其可以包括具有指令的计算机可读或机器可读介质。计算机可读或机器可读介质上的指令可以用于对计算机系统或其他电子装置编程。机器可读介质可以包括但不限于软盘、光盘、cdrom和磁光盘或适于存储电子指令的其他类型的介质/机器可读介质。本文描述的技术不限于任何特定软件配置。它们可以应用于任何计算或处理环境中。本文使用的术语“计算机可读介质”或“机器可读介质”应当包括能够存储或编码指令序列的任何介质,指令序列由计算机执行并使计算机执行本文所述的任一种方法。此外,现有技术中常常提到一种形式或另一种形式的软件(例如,程序、流程、过程、应用、模块、单元、逻辑等)采取动作或产生结果。这样的表达仅仅是陈述处理系统执行软件使处理器执行动作以产生结果的简短方式。

图9示出了根据本公开的实施例的可以用于实现目标装置的装置900。如上所述,装置可以被实施在管芯上。装置900是包括多个逻辑阵列块(lab)的现场可编程门阵列(fpga)。根据本公开的实施例,装置900可以被实施在单个集成电路上。每个lab可以由多个逻辑块、进位链、lab控制信号、查找表(lut)链和寄存器链连接线形成。逻辑块是提供用户逻辑功能的有效率的实施方式的小逻辑单元。逻辑块包括一个或多个组合单元,其中每个组合单元具有单一输出和寄存器。根据本公开的一个实施例,逻辑块可以与诸如在corporation制造的stratix或cyclone装置中发现的那些的逻辑元件(le)、或诸如在xilinxinc制造的virtex装置中发现的那些的组合逻辑块(clb)类似地进行操作。在该实施例中,逻辑块可以包括具有可配置寄存器的四个输入lut。根据本公开的替代实施例,逻辑块可以与诸如在alteracorporation制造的stratix装置中发现的那些的自适应逻辑模块(alm)类型地进行操作。lab被分组成跨装置900的行和列。lab的列被示为911-916。应当领会,逻辑块可以包括额外的或替代的部件。

装置900包括存储器块。存储器块例如可以是双端口随机存取存储器(ram)块,其提供专用真实双端口、简单双端口、或单端口存储器,其在高达各种频率下具有高达各种位宽度。可以将存储器块分组成在选定的lab之间的跨装置的列或者逐个或成对地位于装置900内。存储器块的列被示为921-924。

装置900包括数字信号处理(dsp)块。dsp块可以用于利用加法或减法特征实施各种配置的乘法器。dsp块包括移位寄存器、乘法器、加法器和累加器。dsp块可以被分组成跨装置900的列并被示为931。

装置900包括多个输入/输出元件(ioe)940。每个ioe对装置900上的io管脚(未示出)馈电。ioe940位于装置900的外围周围的lab行和列的端部。每个ioe可以包括双向io缓存器和多个寄存器,以用于寄存输入、输出和输出使能信号。装置900可以包括布线资源,例如lab本地互连线、行互连线(“h型线”)和列互连线(“v型线”)(未示出),以在目标装置上的部件之间对信号布线。

在以上说明书中,已经参考其具体示例性实施例描述了本公开的实施例。然而,显而易见的是,可以对其做出各种修改和改变而不脱离本公开的实施例的较宽的精神和范围。因此,在例示而非限制的意义上看待说明书和附图。

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