首页 / 专利分类库 / 测时学 / 一种基于FPGA的抽头延迟链型TDC

一种基于FPGA的抽头延迟链型TDC

申请号 CN202311152613.2 申请日 2023-09-07 公开(公告)号 CN117170210A 公开(公告)日 2023-12-05
申请人 中国科学院近代物理研究所; 发明人 孔洁; 王泽坤; 颜俊伟; 安一郎; 佘乾顺;
摘要 本 发明 涉及一种基于FPGA的抽头延迟链型TDC,包括:脉冲发生器,被配置为在被测 信号 的触发下产生具有变化沿的脉冲输出;延迟链模 块 ,被配置为设置FPGA中可配置逻辑单元的Carry4结构布局,使得对脉冲发生器输出的被测信号进行延时传输产生 温度 计码;延迟 锁 存模块,将 温度计 码进行锁存;中值 定位 编码模块,被配置为对锁存的温度计码进行中值定位处理,输出细时间 帧 ;粗时钟模块,被配置为设置TDC粗时钟,产生被测信号的粗时间戳;触发计数模块,被配置为输出触发Count组合,获得触发计数;组帧模块,被配置根据细时间帧与粗时间戳得到时间帧,并与触发计数组合为完整的数据帧输出。因此,本发明可以快速确定编码的 位置 和形式。
权利要求

1.一种基于FPGA的抽头延迟链型TDC,其特征在于,包括:
脉冲发生器,被配置为在被测信号的触发下产生一个具有变化沿的脉冲输出;
延迟链模,被配置为设置所述FPGA中可配置逻辑单元的Carry4结构布局,使得对所述脉冲发生器输出的被测信号进行延时传输产生温度计码;
延迟存模块,被配置为将所述温度计码进行锁存;
中值定位编码模块,被配置为对锁存的温度计码进行中值定位处理,输出细时间
粗时钟模块,被配置为设置TDC粗时钟,产生被测信号的粗时间戳;
触发计数模块,被配置为输出触发Count组合,获得触发计数;
组帧模块,被配置根据细时间帧与粗时间戳得到时间帧,并与触发计数组合为完整的数据帧输出。
2.根据权利要求1所述的基于FPGA的抽头延迟链型TDC,其特征在于,还包括时钟域隔离处理模块,被配置为将所述组帧模块输出的数据帧输入fifo进行存储和时钟域隔离,以划分TDC的高频率时钟域和外部传输结构的低频率时钟域,其中,fifo为先入先出的存储栈。
3.根据权利要求1所述的基于FPGA的抽头延迟链型TDC,其特征在于,所述中值定位编码模块对每个二进制位的温度计码进行判断和编码,通过将二进制数列分成两半,并根据中间位置的值进行判断,确定编码的位置和形式。
4.根据权利要求3所述的基于FPGA的抽头延迟链型TDC,其特征在于,所述中值定位编码模块确定编码的位置和形式的过程,包括:定位取值结束后高四位逐位乘法运算,被乘数为锁存的1bit逻辑值,乘数为依据每次中值定位之后存入data_pre[n]的位宽,乘法运算之后的结果进行加法运算得到8位二进制数。
5.根据权利要求3或4所述的基于FPGA的抽头延迟链型TDC,其特征在于,所述中值定位编码模块的具体编码过程,包括:
设置data_keep为最终二进制编码输出结果,链长L,位宽[L‑1:0],取第 位为data_keep第八位,锁存第 位数据;
进行第1次中值定位,判断raw_data第 位是否为1,为1将 存入
为0将 存入 data_pre1为第1次中值比较保
留站,位宽为原始温度计码链长一半;取data_pre1第 位为data_keep第七位,锁存第位数据;
进行第2次中值定位,判断data_pre1第 位是否为1,为1将 存入
为0将 存入 data_pre2为第2次中值比较保
留站,位宽为第1次中值保留站一半;取data_pre2第 位为data_keep第六位,锁存第位数据;
进行第3次中值定位,判断data_pre2第 位是否为1,为1将 存入
为0将 存入 data_pre3为第3次中值比较保
留站,位宽为第2次中值保留站一半;取data_pre3第 位为data_keep第六位,锁存第位数据;
进行第4次中值定位,判断data_pre3第 位是否为1,为1将 存入
为0将 存入
剩余的温度计码逐位相加,每一位作为独立的数,从最低位向最高位逐位相加,存入data_keep最低4bit。
6.根据权利要求5所述的基于FPGA的抽头延迟链型TDC,其特征在于,中值定位的次数与链长呈相关性,关联公式如下:
其中,N为中值定位次数,整数类型;a为常数,实数类型。
7.根据权利要求1所述的基于FPGA的抽头延迟链型TDC,其特征在于,设置FPGA中可配置逻辑单元的Carry4结构布局,包括:单个Carry4结构有4个延迟链,延迟链通过手动添加至芯片任意位置,由于延迟链需要线性摆放,通过画一个框或者手动拖拽的方式将链放置在一条直线上;同时,需要将延迟链放置于一个时钟域中。

说明书全文

一种基于FPGA的抽头延迟链型TDC

技术领域

[0001] 本发明是关于一种基于FPGA(Field‑Programmable‑Gate‑Arrays,现场可编程逻辑阵列)的抽头延迟链型TDC(Time‑to‑Digit Converter,时间数字转换器编码器结构),涉及核探测技术领域。

背景技术

[0002] 在核探测领域处理高速信号是至关重要的。随着科技进步,核探测器能够以更高精度和更快响应捕捉到更多粒子信息,同时也带来了挑战即如何处理高速信号。高时间分辨率的定时系统可以提高探测系统对于高速信号的处理能。抽头延迟链型TDC是一种具有快时间响应、低死时间和低资源占用特点的时间数字化方法,其时间分辨能力取决于组成抽头延迟链的逻辑单元的尺寸大小和均匀性。
[0003] 现有抽头延迟链的编码器实现原理是定位延迟链所产生的温度计码中0‑1界线的位置,一种方法是通过级联的全加器将温度计码的所有位相加,从而得到信号在延迟链中传输距离对应的二进制位置码;另一种方法是将温度计码的所有位分成若干组,在每一组中并行判选是否存在0‑1界限从而快速定位,并根据判选结果输出对应的二进制位置码。
[0004] 上述两种延迟链编码器结构均存在各自的问题,级联加法器方法计算过程中为避免时序冲突和亚稳态,需要使用多级流线,资源消耗量大。且由于存时间的随机性,造成高位位置码所对应的逻辑资源的利用率低;分组判选方法利用并行处理选通输出的结构,节省了逻辑资源,同时避免了高位位置编码对应逻辑资源利用率低的问题,但是结构复杂,只能针对特定的链长进行设计,稳定性不高。

发明内容

[0005] 本发明旨在至少解决现有技术中存在的技术问题之一。为此,针对上述问题,本发明的目的是提供一种基于FPGA的抽头延迟链型TDC,能够控制和缩短调度数据时间,减少资源用量。
[0006] 为了实现上概发明目的,本发明采用的技术方案为:
[0007] 第一方面,本发明提供一种基于FPGA的抽头延迟链型TDC,包括:
[0008] 脉冲发生器,被配置为在被测信号的触发下产生一个具有变化沿的脉冲输出;
[0009] 延迟链模,被配置为设置所述FPGA中可配置逻辑单元的Carry4结构布局,使得对所述脉冲发生器输出的被测信号进行延时传输产生温度计码;
[0010] 延迟锁存模块,被配置为将所述温度计码进行锁存;
[0011] 中值定位编码模块,被配置为对锁存的温度计码进行中值定位处理,输出细时间
[0012] 粗时钟模块,被配置为设置TDC粗时钟,产生被测信号的粗时间戳;
[0013] 触发计数模块,被配置为输出触发Count组合,获得触发计数;
[0014] 组帧模块,被配置根据细时间帧与粗时间戳得到时间帧,并与触发计数组合为完整的数据帧输出。
[0015] 进一步地,还包括时钟域隔离处理模块,被配置为将所述组帧模块输出的数据帧输入fifo进行存储和时钟域隔离,以划分TDC的高频率时钟域和外部传输结构的低频率时钟域,其中,fifo为先入先出的存储栈。
[0016] 进一步地,所述中值定位编码模块对每个二进制位的温度计码进行判断和编码,通过将二进制数列分成两半,并根据中间位置的值进行判断,确定编码的位置和形式。
[0017] 进一步地,所述中值定位编码模块确定编码的位置和形式的过程,包括:定位取值结束后高四位逐位乘法运算,被乘数为锁存的1bit逻辑值,乘数为依据每次中值定位之后存入data_pre[n]的位宽,乘法运算之后的结果进行加法运算得到8位二进制数。
[0018] 进一步地,所述中值定位编码模块的具体编码过程,包括:
[0019] 设置data_keep为最终二进制编码输出结果,链长L,位宽[L‑1:0],取第 位为data_keep第八位,锁存第 位数据;
[0020] 进行第1次中值定位,判断raw_data第 位是否为1,为1将 存入data_pre1 为0将 存入data_pre1 data_pre1为第1次中值比较保
留站,位宽为原始温度计码链长一半;取data_pre1第 位为data_keep第七位,锁存第位数据;
[0021] 进行第2次中值定位,判断data_pre1第 位是否为1,为1将 存入data_pre2 为0将 存入data_pre2 data_pre2为第2次中值比较
保留站,位宽为第1次中值保留站一半;取data_pre2第 位为data_keep第六位,锁存第位数据;
[0022] 进行第3次中值定位,判断data_pre2第 位是否为1,为1将 存入data_pre3 为0将 存入data_pre3 data_pre3为第3次中值比较保
留站,位宽为第2次中值保留站一半;取data_pre3第 位为data_keep第六位,锁存第位数据;
[0023] 进行第4次中值定位,判断data_pre3第 位是否为1,为1将 存入data_pre4 为0将 存入data_pre4
[0024] 剩余的温度计码逐位相加,每一位作为独立的数,从最低位向最高位逐位相加,存入data_keep最低4bit。
[0025] 进一步地,中值定位的次数与链长呈相关性,关联公式如下:
[0026]
[0027] 其中,N为中值定位次数,整数类型;a为常数,实数类型。
[0028] 进一步地,设置FPGA中可配置逻辑单元的Carry4结构布局,包括:单个Carry4结构有4个延迟链,延迟链通过手动添加至芯片任意位置,由于延迟链需要线性摆放,通过画一个框或者手动拖拽的方式将链放置在一条直线上;同时,需要将延迟链放置于一个时钟域中。
[0029] 本发明由于采取以上技术方案,其具有以下特点:
[0030] 1、本发明的编码器采用中值定位编码,该编码器采用二分法的思想,在每个二进制位上进行判断和编码,通过将二进制数列分成两半,并根据中间位置的值进行判断,可以快速确定编码的位置和形式,链长位数可不用固定,例如256时,可不用通过定位乘法运算,中值为第127位,直接置入8bit二进制码的最高位即可表示是否为有效位,因此本发明通过划分和逐步判断二进制位,能够快速而有效地进行编码。
[0031] 2、本发明的编码器具有流水线处理能力,可以同时处理多个二进制位的编码,流水线处理相对于传统串行处理来说能够在时间复杂度上更小,是由二分法的中值温度码判选之后进行的操作,通过流水线处理,可以大大提高编码速度和系统吞吐量,除TDC锁存4ns死时间外,其余结构均为流水线处理,后续处理时间不等同于死时间的范围内,不会占用额外的带宽。
[0032] 3、本发明的编码器具有快速响应的特点,由于采用了二分法的思想,编码器对于不同位上的变化能够快速响应,并在短时间内完成编码过程,有助于减小系统的延迟和响应时间,且能够快速定位并且避免“气泡错误”。
[0033] 4、本发明不使用相对于其他TDC的优先级编码或者级联加法器,不需要对编码数据进行预编码,对于K7芯片来说LUT资源量比FF资源量小,在使用同等数量的LUT情况下减少了乘法器运算和FF的使用,缩减触发器的资源用量,为工程应用提供资源保障。
[0034] 5、本发明的编码器具有可编程性,可以根据特定应用的需求进行灵活配置和优化,相对于固定链长的TDC只能适用于特定的频率,对设计的可移植性差,本发明在不同时钟频率情况下TDC链长呈现不同的长度,可以通过调整编码器输入链长参数实现不同链长的TDC编码处理,以实现不同精度和效率的编码过程。
[0035] 综上,本发明可以适用于各种数字系统和应用场景,包括数字信号处理、通信系统、计算机存储等,它可以在高速数据传输和处理中起到重要作用,提高系统的效率和性能,对持续研究和改进高速信号处理技术对于核探测领域具有重要意义。附图说明
[0036] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。在整个附图中,用相同的附图标记表示相同的部件。在附图中:
[0037] 图1为本发明实施例的抽头延迟链型TDC结构。
[0038] 图2为本发明实施例的抽头延迟链型TDC编码原理示意图。
[0039] 图3为本发明实施例的抽头延迟链型TDC具体编码示意图。

具体实施方式

[0040] 应理解的是,文中使用的术语仅出于描述特定示例实施方式的目的,而无意于进行限制。除非上下文另外明确地指出,否则如文中使用的单数形式“一”、“一个”以及“所述”也可以表示包括复数形式。术语“包括”、“包含”、“含有”以及“具有”是包含性的,并且因此指明所陈述的特征、步骤、操作、元件和/或部件的存在,但并不排除存在或者添加一个或多个其它特征、步骤、操作、元件、部件、和/或它们的组合。文中描述的方法步骤、过程、以及操作不解释为必须要求它们以所描述或说明的特定顺序执行,除非明确指出执行顺序。还应当理解,可以使用另外或者替代的步骤。
[0041] 尽管可以在文中使用术语第一、第二、第三等来描述多个元件、部件、区域、层和/或部段,但是,这些元件、部件、区域、层和/或部段不应被这些术语所限制。这些术语可以仅用来将一个元件、部件、区域、层或部段与另一区域、层或部段区分开。除非上下文明确地指出,否则诸如“第一”、“第二”之类的术语以及其它数字术语在文中使用时并不暗示顺序或者次序。因此,以下讨论的第一元件、部件、区域、层或部段在不脱离示例实施方式的教导的情况下可以被称作第二元件、部件、区域、层或部段。
[0042] 为了便于描述,可以在文中使用空间相对关系术语来描述如图中示出的一个元件或者特征相对于另一元件或者特征的关系,这些相对关系术语例如为“内部”、“外部”、“内侧”、“外侧”、“下面”、“上面”等。这种空间相对关系术语意于包括除图中描绘的方位之外的在使用或者操作中装置的不同方位。
[0043] 有赖于近年来高制程集成电路的发展,FPGA芯片高集成度、可编程化的特点开始凸显,使在其内部搭建高时间分辨率的抽头延迟链型TDC成为了可能。为保证抽头延迟链型TDC对输入信号的快速响应能力,需要对其抽头位置信号进行编码传输。抽头延迟链型TDC设计需要考虑:①在尽可能高的时钟下工作;②以尽可能少的逻辑资源实现;③尽可能消除由于逻辑单元抽头物理性质差异导致的“气泡错误”,这三个方面的问题保证TDC系统能够最大限度地发挥其良好的时间分辨能力。本发明提供一种基于FPGA的抽头延迟链型TDC,包括:脉冲发生器,被配置为在被测信号的触发下产生一个具有变化沿的脉冲输出;延迟链模块,被配置为设置FPGA中可配置逻辑单元的结构布局,使得对所述脉冲发生器输出的被测信号进行延时传输产生温度计码;延迟锁存模块,被配置为将所述温度计码进行锁存;中值定位编码模块,被配置为对锁存的温度计码进行中值定位处理,输出细时间帧;粗时钟模块,被配置为设置TDC粗时钟,产生被测信号的粗时间戳;触发计数模块,被配置为输出触发Count组合,获得触发计数;组帧模块,被配置为根据细时间帧与粗时间戳得到时间帧,并与触发计数组合为完整的数据帧输出。因此,在核探测领域处理高速信号中,本发明不仅可以提高时间分辨率,提高数据吞吐量,还可以降低系统死时间,通过流水线化处理提高探测器的测量效率和数据利用率,进一步推动FPGA中数据处理的性能和资源利用。
[0044] 下面将参照附图更详细地描述本发明的示例性实施方式。虽然附图中显示了本发明的示例性实施方式,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
[0045] 如图1所示,本实施例提供的基于FPGA的抽头延迟链型TDC,包括脉冲发生器、延迟链模块、延迟锁存模块、中值定位编码模块、粗时钟模块、触发计数模块、组帧模块和时钟域隔离处理模块,其中:
[0046] 脉冲发生器,被配置为在被测信号的触发下产生一个具有变化沿的脉冲并输出到延迟链模块中;
[0047] 延迟链模块,被配合为设置FPGA中CLB(可配置逻辑单元)的Carry4结构布局,使得对被测信号进行延时传输。
[0048] 延迟锁存模块,被配置为通过触发器阵列将延迟链模块输出的温度计码进行锁存,存入寄存器中得到高速信号时间前沿位置信息。
[0049] 中值定位编码模块,被配置为对锁存的温度计码进行中值定位处理,将中值进行判断,根据中值逻辑值进行前后半段温度计码存储,输出细时间帧。
[0050] 粗时钟模块,被配置为设置TDC粗时钟,并在触发到来时刻打上时间戳,产生被测信号的粗时间戳;
[0051] 触发计数模块,被配置为输出触发Count组合,也就是对触发的计数,在测试过程中每来一次信号算作一次触发,后续触发执行加1操作即可,触发计数可以直观判断在同一时间内不同通道间的触发数量是否一致。
[0052] 组帧模块,根据中值定位模块输出的细时间帧与粗时钟模块的粗时间帧进行组合得到时间帧,再和触发计数模块组合为完整的数据帧向后级传输。
[0053] 时钟域隔离处理模块,被配置为将组帧模块输出数据帧输入fifo进行存储和时钟域隔离,以划分TDC的高频率时钟域和外部传输结构的低频率时钟域。其中,fifo是一个存储栈,全名是先入先出,也就是先进入存储的数据先读出,例如在数据处理过程中如果前面的数据需要50M,后面数据传输需要10M,在前后时钟不一致的情况下可以通过fifo先将50M时钟域的数据存起来,然后等待10M的时钟域给一个信号再读出,从而实现读写隔离,为后续工程转换时钟域输出提供数据。
[0054] 本发明的一个优选实施例中,FPGA中的Carry4结构是芯片内部自带的延迟结构,单个Carry4结构有4个延迟链,可以通过查阅芯片手册直接利用代码在设计里面直接调用结构。Carry4即为延迟链,将Carry4结构通过Vivado软件编程实现之后的TDC延迟链通过手动添加至芯片的任意位置,由于延迟链需要线性摆放,所以可以通过画一个框或者手动拖拽的方式将链放置在一条直线上。由于,FPGA芯片分为14个Bank,每个Bank为一个时钟域,所以在放置过程中不仅需要线性,更是需要放置于一个时钟域中,用于接收高速信号时间信息采集传输。
[0055] 本发明的一个优选实施例中,中值定位模块对每个二进制位进行判断和编码,通过将二进制数列分成两半,并根据中间位置的值进行判断,可以快速确定编码的位置和形式,将定位取值结束后高四位逐位乘法运算,被乘数为锁存的1bit逻辑值,乘数为依据每次中值定位之后存入data_pre[n]的位宽决定;乘法运算之后的结果进行加法运算得到8位二进制数,二进制数位宽可由链长决定,其中,链长通常不超过200,否则将引起跨时钟域的ultra bin影响时间分辨率。
[0056] 进一步地,中值定位的次数与链长呈相关性,关联公式如下:
[0057]
[0058] 其中,变量:L为链长,实数类型;N为中值定位次数,整数类型;a为常数,实数类型,本实施例中a=4,因2的4次方为16,含义为4bit能表达的最大十进制数值,此处4bit为data_keep低4位,对结果进行向上取整。约束条件:L>0,链长必须大于零;N>=0,次数必须大于等于零。
[0059] 如图2所示,中值定位模块的处理过程为:L[num:0]为链长,num为链的长度,假设链长256,num=256;先判断第num/2位,即第128位,判断是否为1,如果为1则Data的宽度和L一致,将L[127:0]存入data中即256小的一部分,然后num从原本的256变成128,Add则将原本的值加上变换以后的num值(128)×1,Add变成了0+128×1;如果为0,则Data的宽度和L一致,将L[256:128]存入data中即256大的一部分,num从原本的256变成128,Add则将原本的值加上变换以后的num值(128)×0,Add还是0。将Data再次赋值给L,但是此时的L长度变为了原来的一半即[127:0],判断num的值是否小于16,如果小于,将最后的num逐位相加给Add,如果大于16继续重复以上操作,每次都是÷2以后进行判断;假如接着往下,num=128,先判断第num/2位,判断是否为1,如果为1则Data的宽度和L一致,将L[63:0]存入Data中,然后num从原本的128变成64,Add则将原本的值加上变换以后的num值(64)×1,Add变成了原本的128+64;如果为0则Data的宽度和L一致,将L[127:64]存入Data中,然后num从原本的128变成64,Add则将原本的值加上变换以后的num值(64)×0,Add=原本的0+0还是0。将Data再次赋值给L,但是此时的L长度变为了原来的一半,也就是[63:0];接下来判断num的值是否小于16,如果小于,就把最后的num逐位相加给Add,如果大于16继续重复以上操作,每次都是÷2以后进行判断。
[0060] 进一步地,如图3所示,中值定位编码模块的具体编码过程,包括:
[0061] 设置data_keep为最终二进制编码输出结果,链长Length,简写为L,位宽[L‑1:0],取第 位为data_keep第八位,锁存第 位数据;
[0062] 进行第1次中值定位,判断raw_data第 位是否为1,为1将 存入data_pre1 为0将 存入data_pre1 data_pre1为第1次中值比较保
留站,位宽为原始温度计码链长一半;取data_pre1第 位为data_keep第七位,锁存第位数据;
[0063] 进行第2次中值定位,判断data_pre1第 位是否为1,为1将 存入data_pre2 为0将 存入data_pre2 data_pre2为第2次中值比较
保留站,位宽为第1次中值保留站一半;取data_pre2第 位为data_keep第六位,锁存第位数据;
[0064] 进行第3次中值定位,判断data_pre2第 位是否为1,为1将 存入data_pre3 为0将 存入data_pre3 data_pre3为第3次中值比较
保留站,位宽为第2次中值保留站一半;取data_pre3第 位为data_keep第六位,锁存第 位数据;
[0065] 进行第4次中值定位,判断data_pre3第 位是否为1,为1将 存入data_pre4 为0将 存入data_pre4
[0066] 剩余的温度码逐位相加,每一位作为独立的数,从最低位向最高位逐位相加,存入data_keep最低4bit,例如最后剩下10个数据,数据为0000110111,最低为从右边往左逐位相加,也就是1+1+1+0+1+1+0+0+0+0等于5存入。
[0067] 进一步地,为进行流水线数据组帧和解决时序不对齐,通过data_keep高四位进行流水线操作,每个时钟周期内获取每位对应的温度计码值。
[0068] 本发明的一个优选实施例中,粗时钟可以设置为2ns,以此为例,不限于此。
[0069] 需要说明的是,本实施例中所有模块均可以通过FPGA芯片所编写的硬件代码生成,也就是编写Verilog代码生成,在芯片底层结构相同的情况下,可以移植于不同的FPGA芯片之中,外部输入至FPGA中的信号直接作为TDC的触发,针对多通道探测器位置分辨以及时间分辨的精准处理,提高数字系统灵活性以及时间分辨。
[0070] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。在本说明书的描述中,参考术语“一个优选的实施例”、“进一步地”、“具体地”、“本实施例中”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0071] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
QQ群二维码
意见反馈