首页 / 用于执行散列算法的运算电路、芯片和计算装置

用于执行散列算法的运算电路、芯片和计算装置有效专利 实用

技术领域

[0001] 本公开涉及比特币挖矿。具体来说,涉及用于执行散列算法的运算电路,以及包括该运算电路的芯片和计算装置。

相关背景技术

[0002] 比特币是一种P2P(Peer-to-Peer)形式的虚拟加密数字货币,其概念最初由中本聪在2008年11月1日提出,并于2009年1月3日正式诞生。比特币的独特之处在于,它不依靠特定货币机构发行,而是依据特定算法通过大量运算来产生。
[0003] 使用矿机来进行比特币挖矿的核心是根据矿机计算SHA-256算法的运算能力来获得奖励。对于矿机而言,芯片尺寸、芯片运行速度和芯片功耗是决定矿机性能的至关重要的三个因素,其中,芯片尺寸决定芯片成本,芯片运行的速度决定矿机运行速度(即算力),芯片功耗决定耗电程度(即挖矿成本)。在实际应用中,衡量矿机最为重要的性能指标是单位算力所消耗的功耗,即功耗算力比。
[0004] 图1示出了现有技术的用于比特币挖矿的运算电路100。运算电路100采用流水线(pipeline)结构来实现SHA-256算法。
[0005] 如图1所示,运算电路100包括以流水线结构布置的N个运算级,其中每个运算级具有一组输入101和一组输出102,每个运算级的一组输入对应地耦接到前一运算级的一组输出,并且每个运算级的一组输出对应地耦接到后一运算级的一组输入。
[0006] 每个运算级包括多个组合逻辑模块111、112、113,用于基于输入到该运算级的数据进行组合逻辑运算。
[0007] 此外,每个运算级还包括一组寄存器,用于存储数据。如图1所示,每组寄存器包括8个缓存寄存器A、B、C、D、E、F、G、H以及16个扩展寄存器W0、W1、W2、W3、W4、W5、W6、W7、W8、W9、W10、W11、W12、W13、W14、W15。
[0008] 需要说明的是,为了便于理解,图1中的每一组寄存器的编号对应于SHA-256算法而编定,并且每个寄存器及各个组合逻辑模块111、112、113之间的连接关系也对应于SHA-256算法而示意性地绘出。为了清楚起见,仅在第一个运算级中绘出了寄存器及各个组合逻辑模块111、112、113之间的连接关系。
[0009] 每组寄存器由时钟控制,将数据沿着各个运算级依次传递。在每个时钟周期,每一组寄存器被触发,将其中存储的一组数据传递到下一个运算级以进行计算。同时,新的一组输入数据被输入到运算电路100的输入101处,并经由第一组寄存器而被传递到第一个运算级以开始计算;并且新的一组输出数据经由最后一组寄存器而从运算电路100的输出102处输出。即,该时钟用于触发寄存器、馈送输入数据及提取输出数据。
[0010] 当寄存器被触发时,其输入端处的信号应当已经稳定,并且能够被该寄存器向后传递。因此,该时钟的周期受到每个运算级的计算延时的限制,即,时钟周期应大于或等于每个运算级的计算延时。一般而言,时钟周期被选择为基本等于每个运算级的计算延时。
[0011] 对于运算电路100,寄存器延时(例如,当寄存器为锁存器时的Ck2q延时)、时钟树延时等一般远小于组合逻辑模块的计算延时。因此,时钟周期可以被选择为基本等于每个运算级的组合逻辑模块的计算延时。
[0012] 因此,用于执行散列算法的运算电路100的吞吐率和算力由用于寄存器的时钟频率决定,即,由每个运算级的组合逻辑模块的计算延时决定。
[0013] 但是,期望在不需要减小每个运算级的组合逻辑模块的计算延时的基础上,提高运算电路100的计算频率和吞吐率,从而降低功耗算力比。因此存在对于新的技术的需求。实用新型内容
[0014] 本公开的目的之一是提供一种用于执行散列算法的运算电路。
[0015] 根据本公开的一个方面,提供了一种用于执行散列算法的运算电路,其特征在于,所述运算电路包括以流水线结构布置的多个运算级,其中每个运算级包括:一组输入和一组输出,所述一组输入对应地耦接到前一运算级的一组输出,并且所述一组输出对应地耦接到后一运算级的一组输入;多个组合逻辑模块,每个组合逻辑模块的输入耦接到所述一组输入中的至少一部分;多个延时模块,每个延时模块的输入耦接到所述一组输入中的一个,并且输出耦接到所述一组输出中的不与组合逻辑模块相耦接的一个,使得所述一组输出中的不与组合逻辑模块相耦接的输出各自耦接到一个延时模块;以及多个补充延时模块,每个补充延时模块的输入耦接到对应的组合逻辑模块的输出,并且输出耦接到所述一组输出中的一个,其中,每个运算级的延时模块和补充延时模块中的每一个由串联连接的相同的延时单元构成,并且被配置为使得从每个运算级的所述一组输入到所述一组输出中的每一个的计算延时基本相等。
[0016] 在一种实现方式中,每个运算级的计算延时基本等于用于将输入数据馈送到所述一组输入处的时钟的周期的k倍,其中k为大于或等于2的整数。
[0017] 在一种实现方式中,每个延时模块由串联连接的M个延时单元构成,其中M为k的倍数。
[0018] 在一种实现方式中,k为2或3。
[0019] 在一种实现方式中,M大于或等于10,且小于或等于20。
[0020] 在一种实现方式中,M为k的3至10倍。
[0021] 在一种实现方式中,每个延时单元由一个缓冲器或一对反相器构成。
[0022] 在一种实现方式中,每个运算级的补充延时模块的数量等于组合逻辑模块的数量,使得所述一组输出中的每一个耦接到延时模块和补充延时模块中的一个。
[0023] 在一种实现方式中,所述运算电路用于执行SHA256算法。
[0024] 根据本公开的另一个方面,提供了一种芯片,其包括如上所述的运算电路。
[0025] 根据本公开的又一个方面,提供了一种计算装置,其包括如上所述的芯片。
[0026] 通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得更为清楚。

具体实施方式

[0035] 下面将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
[0036] 以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。也就是说,本文中的结构及方法是以示例性的方式示出,来说明本公开中的结构和方法的不同实施例。然而,本领域技术人员将会理解,它们仅仅说明可以用来实施的本公开的示例性方式,而不是穷尽的方式。此外,附图不必按比例绘制,一些特征可能被放大以示出具体组件的细节。
[0037] 对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
[0038] 在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
[0039] 图2示出了根据本公开一个或多个示例性实施例的用于执行散列算法的运算电路200的示意图。运算电路200可以用于执行SHA-256算法。
[0040] 如图2所示,运算电路200包括以流水线结构布置的N个运算级(N为正整数),其中每个运算级包括:一组输入和一组输出,多个组合逻辑模块211、212、213,多个延时模块230,以及多个补充延时模块221、222、223。
[0041] 为了便于理解,图2中的每个运算级的各个输入、输出以及各个组合逻辑模块211、212、213之间的连接关系对应于SHA-256算法而示意性地绘出。为了清楚起见,仅在第一个运算级中绘出了各个输入、输出及各个组合逻辑模块211、212、213之间的连接关系。
[0042] 例如,第一个运算级包括一组输入201-1和一组输出202-1,其中输入201-1和输出202-1各自包括24个数据,其分别对应于在图1所示的运算电路100中的8个缓存寄存器A、B、C、D、E、F、G、H以及16个扩展寄存器W0、W1、W2、W3、W4、W5、W6、W7、W8、W9、W10、W11、W12、W13、W14、W15中存储的数据。为了便于理解,在每组输入和输出处示意性地标明了各个数据在现有技术中所对应的寄存器的标号。
[0043] 第一个运算级还包括多个组合逻辑模块211、212、213,每个组合逻辑模块的输入耦接到一组输入201-1中的至少一部分。例如,组合逻辑模块213的输入耦接到一组输入201-1中的标号为W0、W1、W9、W14的输入。运算电路200中的组合逻辑模块211、212、213的配置和功能与图1所示的运算电路100中的组合逻辑模块111、112、113的配置和功能分别对应。
[0044] 此外,第一个运算级还包括多个延时模块230和多个补充延时模块221、222、223。
[0045] 其中,每个延时模块230的输入耦接到一组输入201-1中的一个,并且输出耦接到一组输出202-1中的不与组合逻辑模块相耦接的一个,使得一组输出202-1中的不与组合逻辑模块相耦接的输出各自耦接到一个延时模块。例如,图2中最上面一个延时模块230的输入耦接到输入201-1中的标号为A的输入,并且输出耦接到输出202-1中的标号为B的输出。在图2中,输出202-1中的标号为B、C、D、F、G、H、W0、W1、W2、W3、W4、W5、W6、W7、W8、W9、W10、W11、W12、W13、W14的输出不与组合逻辑模块相耦接,其各自耦接到一个延时模块230。
[0046] 每个补充延时模块221、222、223的输入耦接到对应的组合逻辑模块211、212、213的输出,并且输出耦接到一组输出202-1中的一个。例如,补充延时模块221、222、223的输入分别耦接到组合逻辑模块211、212、213的输出,并且输出分别耦接到输出202-1中的标号为A、E和W15的输出。
[0047] 在图2所示的实施例中,优选地,每个运算级的补充延时模块的数量等于组合逻辑模块的数量,使得每一组输出中的每一个都耦接到延时模块和补充延时模块中的一个。在其他实施例中,每个运算级的补充延时模块的数量可以少于组合逻辑模块的数量。
[0048] 图3示出了图2所示的运算电路200中的一个运算级300的示意图。
[0049] 如图3所示,运算级300包括:一组输入301和一组输出302,多个组合逻辑模块311、312、313,延时模块330,以及补充延时模块322、323。
[0050] 其中,延时模块330以及补充延时模块322、323均由串联连接的相同的延时单元340构成。例如,在图3所示的实施例中,补充延时模块322、323分别由1个延时单元340和串联连接的3个延时单元340构成,而延时模块330中的每一个由串联连接的M个延时单元340构成(M为正整数)。
[0051] 采用串联连接的相同的延时单元340来构成延时模块330及补充延时模块322、323,能够适当地抵消各个延时单元340之间的延时误差,使得所得到的延时模块330及补充延时模块322、323的延时更加准确。各个延时单元340之间的这种延时误差是由延时单元
340的制造、安装、操作过程中的各种因素(例如,工艺、温度等)所导致的。
[0052] 在优选的实施例中,每个延时单元340可以由一个缓冲器或一对反相器构成。在其他实施例中,延时单元340可以由能够实现延时功能的一个或多个元件构成。
[0053] 每个运算级的延时模块和补充延时模块应被配置为使得从每个运算级的一组输入到一组输出中的每一个的计算延时基本相等。即,运算级300中的延时模块330以及补充延时模块322、323应被配置为使得从一组输入301到一组输出302中的标号为A、B、C、D、E、F、G、H、W0、W1、W2、W3、W4、W5、W6、W7、W8、W9、W10、W11、W12、W13、W14、W15的输出的计算延时基本相等。
[0054] 如上所述,寄存器延时、时钟树延时等远小于组合逻辑模块的计算延时。换言之,运算级300中的延时模块330以及补充延时模块322、323应被配置为使得以下基本相等:
[0055] 1、从输入301到输出302中的标号为A的输出的计算延时,即组合逻辑模块311和312的计算延时之和;
[0056] 2、从输入301到输出302中的标号为E的输出的计算延时,即组合逻辑模块312与1个延时单元340的计算延时之和;
[0057] 3、从输入301到输出302中的标号为W15的输出的计算延时,即组合逻辑模块313与3个延时单元340的计算延时之和;
[0058] 4、从输入301到输出302中的标号为其他(B、C、D、F、G、H、W0、W1、W2、W3、W4、W5、W6、W7、W8、W9、W10、W11、W12、W13、W14)的输出的计算延时,即M个延时单元340的计算延时之和。
[0059] 本领域技术人员应当理解,图3中的延时模块330和补充延时模块322、323的数量和配置均为示例性的,可以根据运算电路300所执行的散列算法以及芯片的具体配置进行相应的调整。
[0060] 在图3所示的实施例中,补充延时模块322、323的数量少于组合逻辑模块的数量,标号为A的输出并未耦接到补充延时模块,而是直接耦接到组合逻辑模块311。在一些实施例中,一组输出中的对应组合逻辑模块的计算延时最长的一个输出可以不耦接到补充延时模块,而是直接耦接到对应的组合逻辑模块。换言之,将从输入301到输出302中的对应组合逻辑模块的计算延时最长的该输出(A)的计算延时直接确定为运算级300的计算延时,并且通过延时模块330和补充延时模块322、323将到输出302中的其他输出(B、C、...、W15)的计算延时补齐。这样的实施例的优点在于,没有引入额外的计算延时,使得运算级300的整体计算延时最小化。
[0061] 在这样的实施例中,延时模块330和补充延时模块322、323所包含的延时单元340的数量可以根据补齐计算延时的需求来确定。例如,在图3所示的实施例中,为了补齐从输入301到输出302中的标号为E的输出的计算延时与从输入301到输出302中的标号为A的输出的计算延时之差,即,为了补齐组合逻辑模块311的计算延时,将补充延时模块322设置为由1个延时单元340构成。
[0062] 在其他实施例中,补充延时模块的数量可以等于组合逻辑模块的数量,并且延时模块330和补充延时模块322、323所包含的延时单元340的数量还可以结合其他因素来确定。例如,为了更好地抵消各个延时单元340之间的延时误差,可以适当地增大延时模块330和补充延时模块322、323所包含的延时单元340的数量。但是,考虑到芯片的制造成本和功耗,延时单元340的数量不应过大。
[0063] 在优选的实施例中,延时模块330所包含的延时单元340的数量M可以大于或等于10,且小于或等于20。在进一步优选的实施例中,M可以大于或等于12,且小于或等于18。
[0064] 需要说明的是,本文中的″基本相等″的表述意指二者在一定误差内大致相等,但不必然严格地、精确地相等。例如,″基本相等″意指二者在2%的误差内大致相等。优选地,二者在1%的误差内大致相等。在一些语境中,该误差可以是约5%。本领域技术人员应当理解,这符合技术原理和工程实践。
[0065] 从每个运算级的一组输入到一组输出中的每一个的计算延时基本相等,这使得数据能够适时地沿着各个运算级依次传递,而无需经由寄存器的触发。换言之,本公开的运算电路200不需要现有技术中的缓存寄存器和扩展寄存器(即图1所示的运算电路100中的8个缓存寄存器A、B、C、D、E、F、G、H以及16个扩展寄存器W0、W1、W2、W3、W4、W5、W6、W7、W8、W9、W10、W11、W12、W13、W14、W15)。
[0066] 此外,如上所述,现有技术中的用于触发寄存器、馈送输入数据及提取输出数据的时钟的周期应大于或等于每个运算级的计算延时。但是,本公开的运算电路200中的用于馈送输入数据及提取输出数据的时钟周期不需要大于或等于每个运算级的组合逻辑模块的计算延时。因此,本公开的运算电路200的计算频率和吞吐率不受每个运算级的组合逻辑模块的计算延时的限制。
[0067] 图4示出了图2所示的运算电路200执行散列算法的时序示意图。
[0068] 如图4所示,时钟CLK用于将输入数据馈送到运算电路200的输入201-1处。时钟CLK的周期为T。在时钟CLK的每个上升沿,一组新的输入数据被馈送到运算电路200的输入201-1处。
[0069] 本领域技术人员将理解,仅作为示例,图4中的各组输入数据在时钟CLK的上升沿处被馈送到运算电路200的输入201-1处。在其他实施例中,输入数据也可以在时钟CLK的下降沿处被馈送到运算电路200的输入201-1处。
[0070] 如上所述,运算电路200的时钟CLK的周期T不需要大于或等于每个运算级的计算延时。替代地,时钟CLK的周期T可以小于每个运算级的计算延时,使得运算电路200的计算频率和吞吐率增大,从而使运算电路200的算力提高、功耗算力比降低。
[0071] 在优选的实施例中,每个运算级的计算延时可以基本等于时钟CLK的周期T的k倍,其中k为大于或等于2的整数。这使得在运算电路200工作时,每个运算级恰好容纳k组数据。
[0072] 在每个运算级的计算延时基本确定的基础上,增大k的值有利于提高运算电路200的吞吐率并且降低其功耗算力比。但是,当k的值较大时,各个延时单元340之间的延时误差的负面影响也会变大,这使得各个运算级中发生延时错位、数据错乱的风险增大。优选地,可以将k选择为2或3。
[0073] 为了控制各个延时单元340之间的延时误差的负面影响,优选地,可以将M选择为k的3至10倍。进一步优选地,可以将M选择为k的4至8倍。进一步优选地,可以将M选择为k的5至7倍。
[0074] 图4示例性地示出了在k为2的情况下运算电路200执行散列算法的时序示意图。
[0075] 在图4所示的实施例中,每个运算级的计算延时为2T。换言之,从运算电路200的每个运算级的一组输入到一组输出中的每一个的计算延时均为2T。
[0076] 即,在运算电路200的每个运算级中,组合逻辑模块211、212和补充延时模块221的计算延时之和(即从每个运算级的一组输入到一组输出中的标号为A的输出的计算延时)、组合逻辑模块212和补充延时模块222的计算延时之和(即从每个运算级的一组输入到一组输出中的标号为E的输出的计算延时)、组合逻辑模块213和补充延时模块223的计算延时之和(即从每个运算级的一组输入到一组输出中的标号为W15的输出的计算延时),以及延时模块230的计算延时(即从每个运算级的一组输入到一组输出中的标号为其他(B、C、D、F、G、H、W0、W1、W2、W3、W4、W5、W6、W7、W8、W9、W10、W11、W12、W13、W14)的输出的计算延时)均为2T。
[0077] 如图4所示,在t=0时,在时钟CLK的第一个上升沿处,第一组数据(数据1)被馈送到运算电路200的第一个运算级的输入201-1处,随后被传递至第一个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。经过2T的计算延时,在t=2T时,数据1到达第一个运算级的输出202-1处,并且被继续传递至第二个运算级的输入
201-2。
[0078] 之后,数据1被传递至第二个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223,并且同样经过2T的计算延时,在t=4T时,数据1到达第二个运算级的输出202-2处,并且被继续传递至第三个运算级的输入201-3。
[0079] 之后,同样经过2T的计算延时,在t=6T时,数据1到达第三个运算级的输出202-3处,并且被继续传递至第四个运算级的输入201-4。
[0080] 此外,在t=T时,在时钟CLK的第二个上升沿处,第二组数据(数据2)被馈送到运算电路200的第一个运算级的输入201-1处,随后被传递至第一个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。在t=T到t=2T之间,数据1和数据
2均被容纳于运算电路200的第一个运算级中。经过2T的计算延时,在t=3T时,数据2到达第一个运算级的输出202-1处,并且被继续传递至第二个运算级的输入201-2。
[0081] 之后,数据2被传递至第二个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。在t=3T到t=4T之间,数据1和数据2均被容纳于运算电路200的第二个运算级中。同样经过2T的计算延时,在t=5T时,数据2到达第二个运算级的输出202-2处,并且被继续传递至第三个运算级的输入201-3。在t=5T到t=6T之间,数据1和数据2均被容纳于运算电路200的第三个运算级中。
[0082] 此外,在t=2T时,在时钟CLK的第三个上升沿处,第三组数据(数据3)被馈送到运算电路200的第一个运算级的输入201-1处,随后被传递至第一个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。在t=2T到t=3T之间,数据2和数据3均被容纳于运算电路200的第一个运算级中。经过2T的计算延时,在t=4T时,数据3到达第一个运算级的输出202-1处,并且被继续传递至第二个运算级的输入201-2。
[0083] 之后,数据3被传递至第二个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。在t=4T到t=5T之间,数据2和数据3均被容纳于运算电路200的第二个运算级中。同样经过2T的计算延时,在t=6T时,数据3到达第二个运算级的输出202-2处,并且被继续传递至第三个运算级的输入201-3。
[0084] 此外,在t=3T时,在时钟CLK的第四个上升沿处,第四组数据(数据4)被馈送到运算电路200的第一个运算级的输入201-1处,随后被传递至第一个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。在t=3T到t=4T之间,数据3和数据4均被容纳于运算电路200的第一个运算级中。经过2T的计算延时,在t=5T时,数据4到达第一个运算级的输出202-1处,并且被继续传递至第二个运算级的输入201-2。
[0085] 之后,数据4被传递至第二个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。在t=5T到t=6T之间,数据3和数据4均被容纳于运算电路200的第二个运算级中。
[0086] 此外,在t=4T时,在时钟CLK的第五个上升沿处,第五组数据(数据5)被馈送到运算电路200的第一个运算级的输入201-1处,随后被传递至第一个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。在t=4T到t=5T之间,数据4和数据5均被容纳于运算电路200的第一个运算级中。经过2T的计算延时,在t=6T时,数据5到达第一个运算级的输出202-1处,并且被继续传递至第二个运算级的输入201-2。
[0087] 此外,在t=5T时,在时钟CLK的第六个上升沿处,第六组数据(数据6)被馈送到运算电路200的第一个运算级的输入201-1处,随后被传递至第一个运算级的组合逻辑模块211、212、213以及延时模块230和补充延时模块221、222、223。在t=5T到t=6T之间,数据5和数据6均被容纳于运算电路200的第一个运算级中。
[0088] 可以看出,在运算电路200正常工作时,每个运算级能够容纳k组数据,即,N个运算级能够同时对k*N组数据进行计算。与此相对照地,现有技术中的包括N个运算级的运算电路100仅能同时对N组数据进行计算。这是本实用新型相对于现有技术的显著优势之一。
[0089] 根据本公开的运算电路可以以软件、硬件、软件与硬件的结合等各种适当的方式实现。在一种实现方式中,一种用于比特币挖矿的芯片可以包括如上所述的运算电路,该芯片还可以包括在一种用于比特币挖矿的计算装置中。
[0090] 在说明书及权利要求中的词语″前″、″后″、″顶″、″底″、″之上″、″之下″等,如果存在的话,用于描述性的目的而并不一定用于描述不变的相对位置。应当理解,这样使用的词语在适当的情况下是可互换的,使得在此所描述的本公开的实施例,例如,能够在与在此所示出的或另外描述的那些取向不同的其他取向上操作。
[0091] 如在此所使用的,词语″示例性的″意指″用作示例、实例或说明″,而不是作为将被精确复制的″模型″。在此示例性描述的任意实现方式并不一定要被解释为比其它实现方式优选的或有利的。而且,本公开不受在上述技术领域、背景技术、实用新型内容或具体实施方式中所给出的任何所表述的或所暗示的理论所限定。
[0092] 如在此所使用的,词语″基本上″意指包含由设计或制造的缺陷、器件或元件的容差、环境影响和/或其它因素所致的任意微小的变化。词语″基本上″还允许由寄生效应、噪声以及可能存在于实际的实现方式中的其它实际考虑因素所致的与完美的或理想的情形之间的差异。
[0093] 另外,前面的描述可能提及了被″连接″或″耦接″在一起的元件或节点或特征。如在此所使用的,除非另外明确说明,″连接″意指一个元件/节点/特征与另一种元件/节点/特征在电学上、机械上、逻辑上或以其它方式直接地连接(或者直接通信)。类似地,除非另外明确说明,″耦接″意指一个元件/节点/特征可以与另一元件/节点/特征以直接的或间接的方式在机械上、电学上、逻辑上或以其它方式连结以允许相互作用,即使这两个特征可能并没有直接连接也是如此。也就是说,″耦接″意图包含元件或其它特征的直接连结和间接连结,包括利用一个或多个中间元件的连接。
[0094] 另外,仅仅为了参考的目的,还可以在本文中使用″第一″、″第二″等类似术语,并且因而并非意图限定。例如,除非上下文明确指出,否则涉及结构或元件的词语″第一″、″第二″和其它此类数字词语并没有暗示顺序或次序。
[0095] 还应理解,″包括/包含″一词在本文中使用时,说明存在所指出的特征、整体、步骤、操作、单元和/或组件,但是并不排除存在或增加一个或多个其它特征、整体、步骤、操作、单元和/或组件以及/或者它们的组合。
[0096] 在本公开中,术语″提供″从广义上用于涵盖获得对象的所有方式,因此″提供某对象″包括但不限于″购买″、″制备/制造″、″布置/设置″、″安装/装配″、和/或″订购″对象等。
[0097] 本领域技术人员应当意识到,在上述操作之间的边界仅仅是说明性的。多个操作可以结合成单个操作,单个操作可以分布于附加的操作中,并且操作可以在时间上至少部分重叠地执行。而且,另选的实施例可以包括特定操作的多个实例,并且在其他各种实施例中可以改变操作顺序。但是,其它的修改、变化和替换同样是可能的。因此,本说明书和附图应当被看作是说明性的,而非限制性的。
[0098] 虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。在此公开的各实施例可以任意组合,而不脱离本公开的精神和范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本公开的范围和精神。本公开的范围由所附权利要求来限定。

当前第1页 第1页 第2页 第3页
相关技术
执行散相关技术
散列相关技术
范志军发明人的其他相关专利技术