时钟信号选择电路、延时链电路和延时锁相环的制作方法

文档序号:26146023发布日期:2021-08-03 14:32阅读:86来源:国知局
本发明涉及锁相环领域,尤其涉及一种dll延时锁相环。
背景技术
::在usb2.0数据恢复设计中,会采用dll延时锁相环产生五项或者八项时钟进行过采样数据。以五项时钟的dll延时锁相环为例,其原理为:用五级延时链电路来控制每项时钟的延时,用鉴相电路来锁定最后一级时钟(尾延时链电路所输出的时钟信号)与输入时钟(初始时钟信号)的相位关系,鉴相器的输出信号输入到控制电路中来控制每项时钟的延迟参数。但现有技术中,各延时链电路所输出的时钟信号存在毛刺,将导致数据恢复出错。技术实现要素:本发明针对现有技术中的延时链电路所输出的时钟信号存在毛刺缺点,提供了一种时钟信号选择电路(下文中简称为选择电路),还提出一种采用该选择电路的延时链电路和延时锁相环。为了解决上述技术问题,本发明通过下述技术方案得以解决:一种时钟信号选择电路,包括负沿d触发器、第一低电平锁存器和选择单元,所述选择单元用于接收第一时钟信号和第二时钟信号,所述第二时钟信号为所述第一时钟信号的延时信号;所述负沿d触发器,其信号输入端与外部的控制电路相连,时钟控制端用于接收外部输入的触发信号,信号输出端与所述第一低电平锁存器的信号输入端相连;所述第一低电平锁存器的时钟控制端用于接收所述第二时钟信号,信号输出端与所述选择单元相连,以控制所述选择单元输出第一时钟信号或第二时钟信号。作为一种可实施方式,所述选择单元包括:反相器、第二低电平锁存器和逻辑支路;所述第一低电平锁存器的信号输出端与所述逻辑支路的输入端相连;所述反相器的输入端与所述负沿d触发器的信号输出端相连,输出端与所述第二低电平锁存器的信号输入端相连;所述第二低电平锁存器的时钟控制端用于接收所述第一时钟信号,信号输出端与所述逻辑支路的输入端相连;所述逻辑支路的输入端还用于接收第一时钟信号和第二时钟信号,其输出端用于输出第一时钟信号或第二时钟信号。作为一种可实施方式,所述逻辑支路包括:第一与门,其第一输入端与所述第一低电平锁存器的信号输出端相连,第二输入端用于接收所述第二时钟信号;第二与门,其第一输入端与所述第二低电平锁存器的信号输出端相连,第二输入端用于接收所述第一时钟信号;或门,其第一输入端与所述第一与门的输出端相连,第二输入端与所述第二与门的输出端相连,输出端用于输出第一时钟信号或第二时钟信号。本发明还提出一种延时链电路,包括若干个相串联的选择电路,还包括与所述选择电路一一对应的延时链;所述选择电路为上述任意一项所述的时钟信号选择电路;所述延时链,其输入端和输出端均和与其相对应的选择电路相连,其输入端用于接收第一时钟信号,输出端用于输出第二时钟信号。作为一种可实施方式:所述延时链的数量为n;第k个选择电路所对应的延时链包含2n-k个延迟单元,k≤n,且k为正整数。作为一种可实施方式:第1个选择电路所对应的延时链作为第一延时链;第一延时链的输入为对应延时链电路的输入时钟信号,输出为输入时钟信号经过2n-1个延迟单元后所输出的延时信号。所述第一延时链的输出端分别与各选择电路中负沿d触发器的时钟控制端相连,即将第一延时链所输出的延时信号作为各负沿d触发器的触发信号。作为一种可实施方式:所述延时链的数量为6。本发明一种延时锁相环,包括控制电路、延时电路和鉴相电路,所述控制电路分别与所述延时电路和所述鉴相电路相连,所述延时电路和所述鉴相电路相连;所述延时电路包括若干个依次串联的延时链电路;所述延时链电路为上述任意一项所述的延时链电路。作为一种可实施方式:所述延时链电路包括首延时链电路、尾延时链电路和多个中间延时链电路;首延时链电路的输入为所在延时电路的输入,即输入初始时钟信号,尾延时链电路的输出所在延时电路的输出。所述尾延时链电路和任意一个中间延时链电路与所述鉴相电路相连。作为一种可实施方式,所述鉴相电路包括:第一信号输入端,用于接收初始时钟信号;第二信号输入端,与所述尾延时链电路的输出端相连;第三信号输入端,与一中间延时链电路的输出端相连;第一鉴相单元,其分别与所述第一信号输入端、所述第二信号输入端和控制电路相连,用于向控制电路输出锁定信号;第二鉴相单元,其分别与所述第一信号输入端、所述第二信号输入端和控制电路相连,用于向控制电路输出相应的第一反馈信号;第三鉴相单元,其分别与所述第一信号输入端、所述第三信号输入端和控制电路相连,用于向控制电路输出相应的第二反馈信号。本发明由于采用了以上技术方案,具有显著的技术效果:本发明中,通过对负沿d触发器和第一低电平锁存器的设计,使其对控制电路所输入的控制信号进行处理后,输出与对应第二时钟信号有固定相位关系的选择信号,即,该选择信号的沿变化一定发生在第二时钟信号为低电平的期间;令选择单元基于所述选择信号进行时钟切换,以避免在选择单元在第二时钟信号为高电平输出该第二时钟信号,从而避免毛刺的产生,还能有效减少占空比失真的问题。本发明对各延时链中延迟单元数量的设计,使得其最小调节单位为一个延迟单元,便于调节;本发明对鉴相电路的设计,使其不仅能够鉴定初始时钟信号和尾延时链电路所输出的时钟信号的相位关系,判断所在锁相环是否锁定,还能通过鉴定初始时钟信号与预先指定的中间延时链电路所输出的时钟信号之间的相位关系,判断是否为谐波锁定(其为错误状态),确保锁相环所达到的锁定状态为正常锁定状态。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明一种时钟信号选择电路的模块连接示意图;图2是图1中选择单元130的模块连接示意图;图3是本发明一种延时链电路1的模块连接示意图;图4是本发明一种延时链电路1的电路连接示意图;图5为现有技术输出信号产生毛刺的原理示意图;图6为图4所示延时链电路1抗毛刺的原理示意图;图7为本发明一种延时锁相环的电路示意图;图8是图7中鉴相电路3的电路示意图;图9是图7中控制电路2的状态转移示意图;图10是图7中控制电路2的工作流程示意图。具体实施方式下面结合实施例对本发明做进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。实施例1、一种时钟信号选择电路,如图1所示,包括负沿d触发器110、第一低电平锁存器120和选择单元130,所述选择单元130用于接收第一时钟信号和第二时钟信号,所述第二时钟信号为所述第一时钟信号的延时信号;所述负沿d触发器110(又称下降沿d触发器),其信号输入端与外部的控制电路2相连,接收外部的控制电路2所发送的控制信号,时钟控制端用于接收外部输入的触发信号,信号输出端与所述第一低电平锁存器120的信号输入端相连;参照图4,图4中dffnrq表示负沿d触发器110,d端为负沿d触发器110的信号输入端,clk端为负沿d触发器110的时钟控制端,q端为负沿d触发器110的信号输出端。所述第一低电平锁存器120的时钟控制端用于接收所述第二时钟信号,信号输出端与所述选择单元130相连,以控制所述选择单元130输出第一时钟信号或第二时钟信号。参照图4,图4中lanrq表示低电平锁存器,d端为低电平锁存器的信号输入端,clk端为低电平锁存器的时钟控制端,q端为低电平锁存器的信号输出端,图4中,与负沿d触发器110信号输出端信号相连的低电平锁存器为第一低电平锁存器120。注,本
技术领域
:中,高电平、低电平具有特定含义,数字逻辑电路中,低电平表示0,高电平表示1。现有技术中,时钟选择电路往往由触发器和切换开关构成,两个不同的时钟信号(初始时钟信号与延时信号,或两个延时不同的延时信号)输入至切换开关,触发器检测到初始时钟信号的上升沿时对控制信号进行采样,根据采样结果控制切换开关,使切换开关输出其中一种时钟信号,而在切换开关切换时钟信号时,往往会使输出的信号出现毛刺。本实施例中,负沿d触发器110在检测到触发信号的下降沿时,对所述控制信号进行采样,当采样结果为高电平时(即“1”),输出一脉冲信号,将该脉冲信号作为处理信号;由第一低电平锁存器120根据第二时钟信号的相位对该脉冲信号进行处理,输出选择信号;该选择信号的沿变化一定发生在第二时钟信号为低电平的期间,从而避免选择单元130在第二时钟信号为高电平输出该时钟信号,以避免毛刺的产生,同时减少占空比失真的问题。上述选择单元130可采用切换开关,基于第一低电平锁存器120所输出的选择信号,输出第一时钟信号或第二时钟信号,如当采集到所述选择信号的电平发生切换时,令所述切换开关动作,使其切换输出的时钟信号。上述选择单元130还可采用逻辑电路实现,参照图2,本实施例中,所述选择单元130包括:反相器131、第二低电平锁存器132和逻辑支路133;所述第一低电平锁存器120的信号输出端与所述逻辑支路133的输入端相连;所述反相器131的输入端与所述负沿d触发器110的信号输出端相连,输出端与所述第二低电平锁存器132的信号输入端相连;所述第二低电平锁存器132的时钟控制端用于接收所述第一时钟信号,信号输出端与所述逻辑支路133的输入端相连;图4中与反相器131输出端信号相连的低电平锁存器为第二低电平锁存器132。所述逻辑支路133的输入端还用于接收第一时钟信号和第二时钟信号,其输出端用于输出第一时钟信号或第二时钟信号。所述逻辑支路133包括:第一与门,其第一输入端与所述第一低电平锁存器120的信号输出端相连,第二输入端用于接收所述第二时钟信号;第二与门,其第一输入端与所述第二低电平锁存器132的信号输出端相连,第二输入端用于接收所述第一时钟信号;或门,其第一输入端与所述第一与门的输出端相连,第二输入端与所述第二与门的输出端相连,输出端用于输出第一时钟信号或第二时钟信号。实施例2、一种延时链电路1,如图3所示,包括若干个相串联的选择电路10,还包括与所述选择电路10一一对应的延时链11;所述选择电路10为实施例1中任意一项所述的时钟信号选择电路;所述延时链11,其输入端和输出端均和与其相对应的选择电路10相连,其输入端用于接收第一时钟信号,输出端用于输出第二时钟信号。每个选择电路10依据外部输入的控制信号选择对应延时链11是否接入至延时链电路1中,以控制所在延时链电路1的延时值;进一步地:所述延时链11的数量为n;第k个选择电路10所对应的延时链11包含2n-k个延迟单元,k≤n,且k为正整数。本领域技术人员可根据实际需要,自行选择现有已公开的延迟单元构成延时链11,本实施例中依据22nm工艺进行设计,n取值为6,此时延时链电路1中具有6条延时链11,各延时链11中延迟单元的数量为2的幂次方,共63个延迟单元,此设计可实现延迟单元的最小调节单位为1个,即,能够基于单个延迟单元的延时值调节该延时链电路1的延时值。进一步地:第1个选择电路10所对应的延时链11作为第一延时链11;所述第一延时链11的输出端分别与各选择电路10中负沿d触发器110的时钟控制端相连。由上可知,所述负沿d触发器110的时钟控制端用于接收触发信号,现有技术中触发信号往往采用所在延时链电路1的输入时钟信号,在实际使用过程中,本领域技术人员可根据实际需要,自行指定一时钟信号作为触发信号;本实施例中通过对延时链11的设计,使延时链电路1中,各延时链11的延时值按照从大到小的顺序进行排列,第一延时链11输入为所在延时链电路1的输入时钟信号,且其延迟单元最多,则经过该延时链电路1的延时信号相位最晚,以其作为触发信号能够进一步减少毛刺的产生。以下对图4所提供的延时链电路1抗毛刺、减少占空比失真的工作原理进行详细介绍;延时链电路1包括6和延时链11模块,每个延时链11模块包含相连的延时链11和选择电路10;图4中第一延时链11模块对应的第一时钟信号为输入时钟信号i_clkin,第二时钟信号为clkout31,即输入时钟信号i_clkin通过具有32个延迟单元的延时链11所获得的延时信号,该第一延时链11模块所输出的时钟信号为mxclkout31;图4中第二延时链11模块对应的第一时钟信号为mxclkout31,第二时钟信号为clkout47,即输入时钟信号mxclkout31通过具有16个延迟单元的延时链11输出的延时信号,该第二延时链11模块输出的时钟信号为mxclkout47;现有技术中,以延时链电路1的输入时钟信号i_clkin作为触发信号,当检测到输入时钟信号i_clkin的上升沿时对所接收的控制信号i_delay_ctrl[0:5]进行采样,依据采样结果进行信号切换;由图5可知,第一延时链11模块基于控制信号i_delay_ctrl[5]进行信号选择后输出mx_clkout31,而在下一延时阶段,第二延时链11模块基于控制信号i_delay_ctrl[4]进行信号选择后所输出mxclkout47中出现毛刺。本实施例中以clkout31为触发信号,利用负沿d触发器110(dffnrq)对控制信号i_delay_ctrl[0:5]进行采样,依据采样结果输出处理信号ndff_sel_f_d,将处理信号ndff_sel_f_d和对应的第二时钟信号输入低电平锁存器lanrq,将低电平锁存器lanrq所输出的信号作为最终的选择信号;由图6可知,本实施例中基于clkout31的下降沿对控制信号i_delay_ctrl[0:5]进行采样;第一延时链11模块对应的控制信号为i_delay_ctrl[5],处理信号为ndff_sel5_f_d,选择信号为clk2_sel5_f_d,其处理信号和选择信号的波形相同,第一时钟信号为i_clkin,第二时钟信号为clkout31,最终输出的时钟信号为mx_clkout31,如图6所示,在clk2_sel5_f_d电平变换时进行时钟信号切换,mx_clkout31的第二周期t2被拉长,第二周期t3被缩短;第二延时链11模块对应的控制信号为i_delay_ctrl[4],处理信号为ndff_sel4_f_d,选择信号为clk2_sel4_f_d,第一时钟信号为mx_clkout31,第二时钟信号为clkout47,最终输出的时钟信号为mx_clkout47,如图6所示,如在ndff_sel4_f_d的电平发生变化时进行时钟信号的切换,其不能对第二周期t3进行弥补,仍容易带来毛刺,而基于clk2_sel4_f_d进行时钟选择,由于clk2_sel4_f_d的沿变化发生在clkout47为低电平的期间,其可以避免毛刺的产生,还可以拉长第3周期t3,减小占空比失真的问题。在剩余4个延时链11模块依次进行延时和时钟选择后,第3周期t3的将继续被拉长,保证不会出现t3周期缩短到没有的问题出现。实施例3、一种延时锁相环,如图7所示包括控制电路2、延时电路和鉴相电路3,所述控制电路2分别与所述延时电路和所述鉴相电路3相连,所述延时电路和所述鉴相电路3相连;所述延时电路包括若干个依次串联的延时链电路1;所述延时链电路1为实施例2中任意一项所述的延时链电路1。延时链电路1数量的选择和所需的时钟输出、单个延时链电路1所需的延时值、以及延时链电路1中选择电路10的个数相关,m个延时链电路1串行级联时,将会提供m项时钟输出,且每个延时链电路1实现t/m的延时;每个延时链电路1中所需的延时值越大,所需的选择电路10越多,所需的延时值越小,所需的选择电路10越少,故本领域技术人员可根据实际需要自行设置延时链电路1的个数和各延时链电路1中选择电路10的个数,本实施例中不对其进行限定。本实施例中延时链电路1的数量为5。进一步地:当延时链电路1的数量大于等于3时,所述延时链电路1包括首延时链电路1、尾延时链电路1和多个中间延时链电路1;所述尾延时链电路1和任意一个中间延时链电路1与所述鉴相电路3相连。现有技术中,鉴相电路3仅根据初始时钟信号和尾延时链电路1输出的时钟信号进行相位比较,将比较结果发送至控制电路2,由控制电路2根据比较结果控制各延时链电路1的延时值,直至锁定;本实施例中额外将某一中间延时链电路1所输出的时钟信号发送至鉴相电路3,使鉴相电路3能够以及该中间延时链电路1所输出的时钟信号与尾延时链电路1输出的时钟信号进行相位比较,以便于控制电路2识别是否出现谐波锁定,并在谐波锁定时继续调整各延时链电路1的延时值,达到真正的锁定。进一步地,所述鉴相电路3包括:第一信号输入端,用于接收初始时钟信号;第二信号输入端,与所述尾延时链电路1的输出端相连;第三信号输入端,与一中间延时链电路1的输出端相连;第一鉴相单元31,其分别与所述第一信号输入端、所述第二信号输入端和控制电路2相连,用于向控制电路2输出锁定信号;第二鉴相单元32,其分别与所述第一信号输入端、所述第二信号输入端和控制电路2相连,用于向控制电路2输出相应的第一反馈信号;第三鉴相单元33,其分别与所述第一信号输入端、所述第三信号输入端和控制电路2相连,用于向控制电路2输出相应的第二反馈信号;所述控制电路2,用于接收锁定信号、第一反馈信号和第二反馈信号,还用于向各延时链电路1输出相应的控制信号。针对现今延时锁相环无法识别谐波锁定,以及出现时钟抖动出现失锁或者反复锁定又解锁的情况难以达到锁定的情况,本实施例对鉴相电路3进行设计;本实施例中鉴相电路3的电路示意图如图8所示,其包括第一鉴相单元31、第二鉴相单元32和第二鉴相单元32,其中第一鉴相单元31为现有鉴相器,用于基于初始时钟信号和尾延时链电路1所输出的时钟信号进行锁定判断;第二鉴相单元32和第三鉴相单元33均采用正沿d触发器,第二鉴相单元32和第三鉴相单元33的时钟控制端均接收初始时钟信号,第二鉴相单元32的信号输入端接收尾延时链电路1所输出的时钟信号,第三鉴相单元33的信号输入端接收预先指定的一中间延时链电路1(本实施例中指定第三个延时链电路1)所输出的时钟信号;第二鉴相单元32用于识别因时钟抖动导致无法锁定的情况,如第一鉴相单元31的输出保持为0,而第二鉴相单元32的输出在交替为0和1,则说明已经接近锁定状态,故此时可直接判定dll处于锁定状态,即,控制电路2的状态机达到锁定状态。第三鉴相单元33用于识别是否出现谐波,当第一鉴相单元31输出的结果为锁定时,控制电路2根据第三鉴相单元33的输出判断是否发生谐波锁定,并在发生谐波锁定后按照预设的规则重新配置调节起点,重新对各延时链电路1的延时值进行锁定,直至所在锁相环稳定锁定。参照图9,控制电路2启动后进入初始状态cnt_idle,其复位释放后,进入调节状态cnt_update,开启基于鉴相结果进行自动调节;如果锁定,则进入锁定状态locked,否则继续自动调节各延时链电路1的延时;进入锁定状态locked后,若持续稳定锁定,则一直处于此状态,一旦失锁,则进入等待锁定状态wait_locked;控制电路2在等待锁定状态内时,如是因时钟抖动导致的短暂的几个周期失锁后又重新锁定,则再次进入锁定状态locked,如图7中信号i_locked_stable_reg所示,本领域技术人员可根据实际情况自行设定等待多少个时钟周期,进入等待锁定状态wait_locked时,等待预设数量的时钟周期后在判断是否失锁,如仍处于失锁状态,则进入调节状态cnt_update继续调节,否则恢复锁定状态locked。当抖动是一直存在时,第一鉴相单元31输出的o_clk_locked的值始终为0,而第二鉴相单元32输出的o_clk_fs的值为0和1交替出现,这种现象表示dll其实已经处于锁定边缘,故本实施例中令控制电路2依据o_clk_locked和o_clk_fs的输出自动认定其锁定,停止调节。如,o_clk_locked为0,表示i_clkin5与i_clkin0的相位关系在6个延迟单元范围之外,认为未锁定,根据其相位关系,继续调节,每调一次,即增大或者减小5个延迟单元的延时值(因为有5级延时链电路1),理论上调节一次即可锁定,但若此时正好时钟抖动,将使i_clkin0的相位与i_clkin5的相位差拉大(大于6个延迟单元的延时值),第一鉴相单元31依然认为未锁定,但实际上此时已经达到锁定状态;由于第一鉴相单元31认为未锁定,继续调节,但若下个周期时钟是正常的,继续调节则会再次拉大两者的相位关系(比如增大延时),继续调节则再下个周期就需要减小延时,使得o_clk_fs的值为相交替的0和1,且o_clk_locked始终为0,体现当前dll处于反复的增大又减小延时却又不能锁定的情况,针对此种情况,,控制电路2自动认定其锁定,停止调节。参照图10,以下对本实施例所提供的延时锁相环的工作流程进行详细介绍:step1:上电后,启动dll自动调节功能,启动后进入step2;启动方法是配置i_dll_int_start_en为高电平。控制各延时链电路1依序逐个增加或减少所接入的延迟单元;即,如需要增大,则是五级延时链电路1依序增大1,即每经过一个时钟周期,某一延时链电路1增大1;若需要减小延时,则五级延时链电路1经过五个时钟周期依序减小1,从而保证一个时钟周期内,仅有一个延时链电路1调整延迟,避免时钟毛刺的产生。step2:判断是否锁定;根据第一鉴相单元31输出的o_clk_locked、第二鉴相单元32输出的o_clk_fs、第三鉴相单元33输出的o_clk2_fs判定是否锁定;本案例中,o_clk_locked=1时代表锁定,进入step5,否则进入step3。step3:判断是否失锁;即,判断是否为dll锁定后失锁;当第一鉴相单元31输出的o_clk_locked=0,控制电路2的状态为锁定状态,判定失锁,令控制电路2的状态变更为等待锁定状态,此时进入step4;当第一鉴相单元31输出的o_clk_locked=0,控制电路2的状态为调节状态,则表示dll始终未锁定,此时根据o_clk_fs判断是否因时钟抖动无法锁定,若o_clk_fs交替为0和1,则判定其锁定,令控制电路2的状态变为锁定状态,进入step8,否则增加/减少延迟单元后继续进入step2。step4:基于预先配置的等待周期进行等待;预先配置等待周期i_locked_stable_reg=at(n=0~255),t为周期,表示失锁后等待a个时钟周期后再判断是否失锁,根据判断结果判断是否调节延时链电路1的延时值实现锁定,即,等待a个时钟周期后进入step2。step5:判断是否为谐波锁定;当o_clk_locked=1,即判定锁定后进入本步骤,,若此时o_clk2_fs为1,则为谐波锁定,进入step6,否则进入step8。step6:重新配置自动调节起点;谐波锁定状态下,需要配置自动调节的起点,减小各延时链电路1里接入的延迟单元数量,重新配置的值是初始值的1/2,即i_delay_ctrl_reg的值,同时配置i_delay_ctrl_up_en为1,i_delay_ctrl_reg的值才可以更新到控制电路2内部,之后进入step7。step7:再次启动自动调节;关闭i_delay_ctrl_up_en使能(i_delay_ctrl_up_en=0),然后进入step2继续判断等待锁定。step8:dll处于稳定锁定状态。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。需要说明的是:说明书中提到的“一个实施例”或“实施例”意指结合实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,说明书通篇各个地方出现的短语“一个实施例”或“实施例”并不一定均指同一个实施例。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同。凡依本发明专利构思所述的构造、特征及原理所做的等效或简单变化,均包括于本发明专利的保护范围内。本发明所属
技术领域
:的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1