可检测晶振快速起振过程中异常并保持低功耗的晶振电路 |
|||||||
申请号 | CN202211604520.4 | 申请日 | 2022-12-13 | 公开(公告)号 | CN116155263A | 公开(公告)日 | 2023-05-23 |
申请人 | 珠海亿智电子科技有限公司; | 发明人 | 周祥福; 杨晓; | ||||
摘要 | 本 发明 公开了一种可检测晶振快速起振过程中异常并保持低功耗的晶振 电路 ,包括内置 振荡器 ,内置振荡器通过第三 开关 与第一 电流 源相连接,输出时钟送给 晶体振荡器 起振检测电路,晶体振荡器通过第二开关与第二电流源相连接,通过第一开关与第三电流源相连接,输出时钟送给晶体振荡器起振检测电路;晶体振荡器起振检测电路根据内置振荡器和晶体振荡器所输出的时钟来判断晶体振荡器是否起振,并根据判断结果来输出开关控制 信号 分别控制第一、二、三开关的闭合与打开。本发明采用内置振荡器检测晶体振荡器起振是否异常,如果异常则关闭晶体振荡器快速起振用的大电流,也关闭晶体振荡器正常工作模式的小电流,同时也关闭内置振荡器电流,避免过度耗电。 | ||||||
权利要求 | 1.一种可检测晶振快速起振过程中异常并保持低功耗的晶振电路,其特征在于,包括第一电流源、第二电流源、第三电流源、第一开关、第二开关、第三开关、内置振荡器、晶体振荡器以及晶体振荡器起振检测电路; |
||||||
说明书全文 | 可检测晶振快速起振过程中异常并保持低功耗的晶振电路技术领域背景技术[0002] 石英晶体振荡器(CrystalOscillator)简称为晶振,是一种利用石英晶体的压电效应制成的谐振器件,由于石英晶体具有非常高的品质因数,在与其它元器件配合时能够产生频率准确而稳定的基准时钟信号供系统使用。 [0003] 近年来,随着便携式电子设备的快速发展,人们对设备的快速启动、功耗提出了越来越高的要求。晶振作为电子设备系统基准时钟的来源,通常需要最先启动且系统待机时保持常开,因此对于晶振来说起振时间和功耗尤为重要。为此,晶振电路设计通常在晶振起振阶段默认采用大电流以获得较大的增益,加快晶振起振,起振后用晶振的时钟通过逻辑电路再关闭大电流,来解决起振时间与低功耗之间的矛盾。 [0004] 如图1所示为一传统的快速起振的晶体振荡器框图,主要包括电流值为ibxtal_s的小电流源、电流值为ibxtal_b的大电流源、开关SW1、晶体振荡器以及晶体振荡器逻辑电路。在起振阶段,晶体振荡器的大电流源的开关SW1默认闭合,晶振工作在大电流快速起振模式,晶振起振后,晶体振荡器逻辑电路产生信号s1将大电流源的开关SW1打开,回到低功耗模式。如由长沙景嘉微电子股份有限公司申请的专利CN104218915B“一种具有自动检测功能的低功耗、快速起振晶振电路”即采用这种做法。如上海美仁半导体有限公司申请的专利CN114189244A“调节增益的晶振电路方法”同样采用类似这种做法。 [0005] 然而,上述解决方案是建立在晶振能够顺利起振的基础上,因为只有晶振起振才有晶振时钟,只有晶振时钟有效晶体振荡器逻辑电路才能正常工作,才能进一步关闭大的起振电流,否则一旦晶振异常(晶体异常、晶体贴片异常、主控芯片封装异常、主控芯片贴片异常等),默认开启的晶振大电流很快会将电池电量耗尽,用户在拿到产品前电池(如纽扣电池)电量可能已经被耗光,且无任何信号指示,严重影响用户体验。 发明内容[0006] 本发明的目的在于克服上述现有技术的不足,提供一种晶振电路,该晶振电路可检测晶振快速起振过程中异常并保持低功耗。 [0007] 为实现上述目的,本发明的技术方案是: [0008] 一种可检测晶振快速起振过程中异常并保持低功耗的晶振电路,包括第一电流源、第二电流源、第三电流源、第一开关、第二开关、第三开关、内置振荡器、晶体振荡器以及晶体振荡器起振检测电路; [0009] 所述内置振荡器通过第三开关与第一电流源相连接,输出时钟送给晶体振荡器起振检测电路; [0010] 所述晶体振荡器通过第二开关与第二电流源相连接,通过第一开关与第三电流源相连接,输出时钟送给晶体振荡器起振检测电路; [0011] 所述晶体振荡器起振检测电路用于根据内置振荡器和晶体振荡器所输出的时钟来判断晶体振荡器是否起振,并根据判断结果来输出开关控制信号分别控制第一开关、第二开关、第三开关的闭合与打开。 [0012] 进一步地,所述第一电流源、第二电流源、第三电流源的正端均与电源连接;所述内置振荡器通过第三开关与第一电流源的负端连接,所述晶体振荡器通过第二开关与第二电流源的负端连接,通过第一开关与第三电流源的负端连接, [0013] 进一步地,所述电源上电、复位放开后,所述第一开关、第二开关、第三开关均默认闭合。 [0014] 进一步地,在设定的时间内,所述晶体振荡器未能起振,开关控制信号控制第一开关、第二开关、第三开关打开。 [0015] 进一步地,所述第三电流源用于晶体振荡器的起振,所述第二电流源用于晶体振荡器的正常工作,所述第三电流源的电流值大于第二电流源的电流值; [0016] 进一步地,在设定的时间内,所述晶体振荡器能起振,开关控制信号控制打开第一开关和第三开关。 [0017] 进一步地,所述内置振荡器为环形振荡器 [0018] 进一步地,所述内置振荡器RC振荡器。 [0019] 进一步地,以内置振荡器产生的时钟clkosc,通过晶体起振检测电路检测晶体振荡器产生的时钟clkxtal是否存在,来判断晶体振荡器是否起振。 [0020] 进一步地,所述所述晶体振荡器未能起振,同时输出晶体振荡器未能起振指示信号。 [0021] 本发明与现有技术相比,其有益效果在于: [0022] 本发明采用内置振荡器检测晶体振荡器起振是否异常,如果异常则关闭晶体振荡器快速起振用的大电流,同时也关闭晶体振荡器正常工作模式的小电流,同时也关闭内置振荡器电流,同时输出晶振未能起振指示信号,即晶振异常时整个晶振电路进入超低功耗状态,避免过度耗电。附图说明 [0023] 图1为传统的快速起振的晶体振荡器框图; [0024] 图2为本发明实施例提供的可检测晶振快速起振过程中异常并保持低功耗的晶振电路框图; [0025] 图3为可检测晶振快速起振过程中异常并保持低功耗的方法的步骤框图。 具体实施方式[0026] 实施例: [0027] 下面结合附图和实施例对本发明的技术方案做进一步的说明。 [0028] 参阅图2所示,本实施例提供的晶振电路主要包括晶振电路主要包括模块:电流值为ibosc的第一电流源201、电流值为ibxtal_s的第二电流源202、电流值为ibxtal_b的第三电流源203、第一开关SW1、第二开关SW2、第三开关SW3、内置振荡器204、晶体振荡器205、晶体振荡器起振检测电路206。电流值ibxtal_b大于电流值ibxtal_s [0029] 第一、二、三电流源201、202、203的正端均与电源VCC连接; [0030] 内置振荡器204通过第三开关SW3与第一电流源201的负端连接,输出时钟clkosc送给晶体振荡器起振检测电路206; [0031] 晶体振荡器205通过第二开关SW2与第二电流源202的负端连接,通过第一开关SW1与第三电流源203的负端连接,输出时钟clkxtal送给晶体振荡器起振检测电路206; [0032] 晶体振荡器起振检测电路206输出开关控制信号s1、s2、s3分别控制第一、二、三开关SW1、SW2、SW3的闭合与打开; [0033] clkxtal_ou、clkxtal_fail_flag分别为晶体振荡器起振检测电路206输出的时钟、晶体振荡器未能起振指示信号; [0034] 电源VCC上电、复位放开后,开关控制信号s1、s2、s3分别控制的第一、二、三开关SW1、SW2、SW3,均默认闭合,内置振荡器204以电流ibosc开始起振,晶体振荡器205以电流ibxtal_s加ibxtal_b开始起振。由于内置振荡器204相比晶体振荡器205,并不依赖晶体、晶体贴片、主控芯片封装、主控芯片贴片等外部因素,必然是能够起振的,以内置振荡器204产生的时钟clkosc即可以触发启动晶体起振检测电路206的正常工作,再通过晶体起振检测电路206检测晶体振荡器205产生的时钟clkxtal是否存在,即可判断晶体振荡器是否起振。 [0035] 如果在一定的时间内(比如说T1)晶体振荡器205未能起振,则说明晶体振荡器205异常,此时,晶体振荡器起振检测电路206只接收到内置振荡器204所传送来的时钟clkosc,则输出开关控制信号s0、s1、s2分别控制第一、二、三开关SW1、SW2、SW3打开,即关闭晶体振荡器205快速起振用的大电流ibxtal_b,同时也关闭晶体振荡器205正常工作模式的小电流ibxtal_s,同时也关闭内置振荡器204电流ibosc,同时输出晶体振荡器未能起振指示信号,这样整体电路将进入超低功耗模式,避免晶振异常时的过度耗电。 [0036] 如果在一定的时间内(比如说T1)晶体振荡器205能起振,此时,晶体振荡器起振检测电路206能接收到内置振荡器204输送来的时钟clkosc以及晶体振荡器205输送来的时钟clkxtal,则起振一段时间(比如说T2)后,晶体振荡器起振检测电路206输出开关控制信号s1、s2、s3,打开第一、三开关是SW1、SW3以及保持第二开关SW2关闭,即关闭晶体振荡器205快速起振用的大电流ibxtal_b,但保持晶体振荡器205正常工作模式的小电流ibxtal_s,同时也关闭内置振荡器204的电流ibosc,这样整体电路将进入低功耗模式。 [0037] 由此可见,本发明采用内置振荡器检测晶体振荡器起振是否异常,如果异常则关闭晶体振荡器快速起振用的大电流,同时也关闭晶体振荡器正常工作模式的小电流,同时也关闭内置振荡器电流,同时输出晶振未能起振指示信号,即晶振异常时整个晶振电路进入超低功耗状态,避免过度耗电。 [0038] 作为一种实例,内置振荡器可以是环形振荡器。 [0039] 作为一种实例,内置振荡器可以是RC振荡器。 [0040] 相应地,本实施例提供了一种可检测晶振快速起振过程中异常并保持低功耗的方法,如图3所示,包括以下步骤: [0041] 步骤1:电源上电,复位放开 [0042] 步骤2:(默认)晶体振荡器小电流、大电流开关闭合,内置振荡器电流开关闭合[0043] 步骤3:内置振荡器起振 [0044] 步骤4:T1时刻检测晶体振荡器是否起振 [0045] 步骤5‑1:如果T1时刻晶体振荡器未能起振,则晶体振荡器小电流、大电流开关打开,内置振荡器电流开关打开,同时输出未能起振指示信号,整体电路为超低功耗状态[0046] 步骤5‑2:如果T1时刻晶体振荡器已起振,则等待T2时间,输出晶振时钟,同时进入步骤6 [0047] 步骤6:晶体振荡器小电流开关保持闭合、大电流开关打开,内置振荡器电流开关打开,整体电路为低功耗状态。 [0048] 上述实施例只是为了说明本发明的技术构思及特点,其目的是在于让本领域内的普通技术人员能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡是根据本发明内容的实质所做出的等效的变化或修饰,都应涵盖在本发明的保护范围内。 |