CN104850170B - 一种无晶体计量SoC芯片及其时钟获取方法 - Google Patents
一种无晶体计量SoC芯片及其时钟获取方法 Download PDFInfo
- Publication number
- CN104850170B CN104850170B CN201510301087.0A CN201510301087A CN104850170B CN 104850170 B CN104850170 B CN 104850170B CN 201510301087 A CN201510301087 A CN 201510301087A CN 104850170 B CN104850170 B CN 104850170B
- Authority
- CN
- China
- Prior art keywords
- clock frequency
- clock
- module
- ideal
- ref
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 239000013078 crystal Substances 0.000 title abstract description 15
- 238000012549 training Methods 0.000 claims abstract description 78
- 238000005259 measurement Methods 0.000 claims description 26
- 230000009471 action Effects 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 abstract 2
- 238000004891 communication Methods 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Landscapes
- Electric Clocks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开了一种无晶体计量SoC芯片及其时钟获取方法,该方法包括:通过串口UART接收外部主控MCU发送的训练字节;在预设时钟频率Fideal的作用下,对训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc;利用Fideal及Nrc计算得到外部主控MCU发送训练字节的预估波特率Fibaud,通过查表获取外部主控MCU发送训练字节的实际波特率Fbaud,依据Fbaud得到时间间隔Tref;利用Nrc和Tref计算得到RC时钟模块的实际时钟频率Frc,依据Frc与预设时钟频率Fideal的差值调整RC时钟模块的时钟频率,获取RC时钟模块调整后的时钟频率Frcc。该方法实现无晶体计量SoC芯片本身能够获取时钟频率,不必使用外置晶体提供时钟频率,降低了系统成本,提高了获取时钟频率的可靠性。
Description
技术领域
本发明涉及电参量测量的技术领域,特别是涉及一种无晶体计量SoC芯片及其时钟获取方法。
背景技术
在电参量测量应用中,例如智能插座、智能家电及智能电表等,常常会采用计量模块与主控微控制器MCU模块分离的实现方案,随着智能电表国际法规IR46的执行,要求计量模块实现法规相关的计量功能,外部通信控制模块即MCU部分不能影响计量模块的功能和性能,可见基于计量SoC(System on Chip,片上系统芯片)设计的计量模块与多功能通信加密主控MCU模块相结合的实现方案将占据主导地位。
在这个应用中,主控微控制器模块的核心芯片为微控制器芯片,计量模块的核心芯片为计量SoC,微控制芯片和计量SoC都需要一个外置晶体以达到所需的时钟精度,若没有外置晶体,计量SoC不能获取所需的时钟频率,也不能进行测量应用。而且,增加的外置晶体会提高系统成本,而且外置晶体本身会存在停振的风险,一旦出现停振,计量SoC也无法获取所需的时钟频率,这样会降低计量SoC中计量模块获得到时钟的可靠性。
发明内容
本发明的目的是提供一种无晶体计量SoC芯片及其时钟获取方法,以实现无晶体计量SoC芯片本身能够获取与主控MCU同步的时钟频率,不必使用外置晶体提供时钟频率,降低了系统成本,提高了计量SoC芯片中计量模块获取时钟的可靠性。
为解决上述技术问题,本发明提供一种无晶体计量SoC芯片的时钟获取方法,该方法包括:
通过串口UART接收外部主控MCU发送的训练字节;
在RC时钟模块产生的预设时钟频率Fideal的作用下,对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc;
利用所述预设时钟频率Fideal及所述计数值Nrc计算得到所述外部主控MCU发送所述训练字节的预估波特率Fibaud,通过查表获取所述外部主控MCU发送所述训练字节的实际波特率Fbaud,依据所述实际波特率Fbaud得到所述训练字节的两个下降沿的时间间隔Tref;
利用所述计数值Nrc和所述时间间隔Tref计算得到所述RC时钟模块的实际时钟频率Frc,依据所述实际时钟频率Frc与所述预设时钟频率Fideal之间的差值调整所述RC时钟模块的时钟频率,获取所述RC时钟模块调整后的时钟频率Frcc。
优选的,所述利用所述预设时钟频率Fideal及所述计数值Nrc计算得到所述外部主控MCU发送所述训练字节的预估波特率Fibaud,包括:
利用所述预设时钟频率Fideal及所述计数值Nrc,依据Fibaud=Fideal/(8*Nrc)得到所述外部主控MCU发送所述训练字节的预估波特率Fibaud。
优选的,所述依据所述实际波特率Fbaud得到所述训练字节的两个下降沿的时间间隔Tref,包括:
利用所述实际波特率Fbaud,依据Tref=8/Fbaud得到所述训练字节的两个下降沿的时间间隔Tref。
优选的,所述利用所述计数值Nrc和所述时间间隔Tref计算得到所述RC时钟模块的实际时钟频率Frc,包括:
利用所述计数值Nrc和所述时间间隔Tref,依据Frc=Nrc/Tref得到所述RC时钟模块的实际时钟频率Frc。
优选的,所述依据所述实际时钟频率Frc与所述预设时钟频率Fideal之间的差值调整所述RC时钟模块的时钟频率,获取所述RC时钟模块调整后的准确的时钟频率Frcc之后,还包括:
通过计量模块对功率进行测量得到功率P;
利用所述预设时钟频率Fideal及所述时钟频率Frcc,依据Crc=Fideal/Frcc-1得到需要对所述功率P进行补偿的补偿值Crc;
利用所述补偿值Crc对所述功率P进行补偿,依据Pc=(1+Crc)×P得到补偿后的功率Pc。
本发明还提供一种无晶体计量SoC芯片,包括:
串口UART,用于接收外部主控MCU发送的训练字节;
与所述串口UART相连的波特率调整模块,用于在RC时钟模块产生的预设时钟频率Fideal的作用下,对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc;
与所述波特率调整模块相连的内部MCU模块,用于利用所述预设时钟频率Fideal及计数值Nrc计算得到所述外部主控MCU发送所述训练字节的预估波特率Fibaud,通过查表获取所述外部主控MCU发送所述训练字节的实际波特率Fbaud,依据所述实际波特率Fbaud得到所述训练字节的两个下降沿的时间间隔Tref;并利用所述计数值Nrc和所述时间间隔Tref计算得到所述RC时钟模块的实际时钟频率Frc;
与所述内部MCU模块相连的RC时钟调整控制模块,用于在所述内部MCU模块的控制作用下,依据所述实际时钟频率Frc与所述预设时钟频率Fideal之间的差值调整所述RC时钟模块的时钟频率,获取所述RC时钟模块调整后的准确的时钟频率Frcc;
与所述RC时钟调整控制模块、内部MCU模块、波特率测量模块和串口UART相连的所述RC时钟模块,用于为所述无晶体计量SoC芯片提供时钟频率;
与所述串口UART、内部MCU模块、RC时钟模块及RC时钟调整控制模块相连的计量模块,用于输出电能参数的测量值。
优选的,所述预估波特率Fibaud的计算公式为:Fibaud=Fideal/(8*Nrc),其中,Fideal为所述RC时钟模块产生的预设时钟频率,Nrc为对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值。
优选的,所述训练字节的两个下降沿的时间间隔Tref的计算公式为:Tref=8/Fbaud,其中,所述Fbaud为所述训练字节的实际波特率。
优选的,所述实际时钟频率Frc的计算公式为:Frc=Nrc/Tref,其中,Nrc为对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值,Tref为所述训练字节的两个下降沿的时间间隔。
优选的,所述无晶体计量SoC芯片还包括:
与所述计量模块和所述RC时钟模块相连的功率补偿模块,用于通过所述计量模块对功率进行测量得到功率P,利用所述预设时钟频率Fideal及所述时钟频率Frcc,依据Crc=Fideal/Frcc-1得到需要对所述功率P进行补偿的补偿值Crc,利用所述补偿值Crc对所述功率P进行补偿,依据Pc=(1+Crc)×P得到补偿后的功率Pc。
本发明所提供的一种无晶体计量SoC芯片及其时钟获取方法,在RC时钟模块产生的预设时钟频率Fideal的作用下,对训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc,并利用预设时钟频率Fideal及计数值Nrc计算得到外部主控MCU发送训练字节的预估波特率Fibaund,再通过查表获取外部主控MCU发送训练字节的实际波特率Fbaund,依据实际波特率Fbaud得到训练字节的两个下降沿的时间间隔Tref,且利用计数值Nrc和时间间隔Tref计算得到RC时钟模块的实际时钟频率Frc,依据实际时钟频率Frc调整RC时钟模块的时钟频率,获取RC时钟模块调整后的时钟频率Frcc。可见,无晶体计量SoC芯片本身能够获取与主控MCU同步的时钟频率,不必使用外置晶体提供时钟频率,降低了系统成本,提高了计量SoC芯片中计量模块获取时钟的可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例一所提供的无晶体计量SoC芯片的时钟获取方法的流程图;
图2为本发明实施例一中发送的训练字节是0x7F信号的波形图;
图3为本发明实施例二所提供的无晶体计量SoC的时钟获取方法的部分流程图;
图4为本发明实施例三所提供的无晶体计量SoC芯片的结构示意图;
图5为本发明实施例四所提供的无晶体计量SoC芯片的结构示意图。
具体实施方式
本发明的核心是提供一种无晶体计量SoC芯片及其时钟获取方法,以实现无晶体计量SoC芯片本身能够获取与主控MCU同步的时钟频率,不必使用外置晶体提供时钟频率,降低了系统成本,提高了计量SoC芯片中计量模块获取时钟的可靠性。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参考图1,图1为本发明实施例一所提供的无晶体计量SoC芯片的时钟获取方法的流程图,该方法包括:
步骤S101:通过串口UART接收外部主控MCU发送的训练字节;
步骤S102:在RC时钟模块产生的预设时钟频率Fideal的作用下,对训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc;
步骤S103:利用预设时钟频率Fideal及计数值Nrc计算得到外部主控MCU发送训练字节的预估波特率Fibaud,通过查表获取外部主控MCU发送训练字节的实际波特率Fbaud,依据实际波特率Fbaud得到训练字节的两个下降沿的时间间隔Tref;
其中,利用预设时钟频率Fideal及计数值Nrc,依据Fibaud=Fideal/(8*Nrc)得到外部主控MCU发送训练字节的预估波特率Fibaud。通过与外部主控MCU通讯约定的、可选UART波特率查找表能够获取外部主控MCU发送训练字节的实际波特率Fbaud。利用实际波特率Fbaud,依据Tref=8/Fbaud得到训练字节的两个下降沿的时间间隔Tref。
步骤S104:利用计数值Nrc和时间间隔Tref计算得到RC时钟模块的实际时钟频率Frc,依据实际时钟频率Frc与预设时钟频率Fideal之间的差值调整RC时钟模块的时钟频率,获取RC时钟模块调整后的时钟频率Frcc。
其中,利用计数值Nrc和时间间隔Tref,依据Frc=Nrc/Tref得到RC时钟模块的实际时钟频率Frc,依据实际时钟频率Frc与预设时钟频率Fideal之间的差值调整RC时钟模块的时钟频率,使RC时钟模块的时钟频率与实际时钟频率Frc之间的偏差在预设偏差范围内,获取RC时钟模块调整后的时钟频率Frcc。这样,确保无晶体计量SoC芯片的计量误差满足电报计量为代表的测量准确度。
其中,时钟频率Frcc与实际时钟频率Frc之间的偏差在预设偏差范围内。预设偏差范围可设置为1%。
需要说明的是,上述步骤S101、S102、S103及S104的执行主体为无晶体计量SoC本身。
请参见图2,图2为本发明实施例一中发送的训练字节是0x7F信号的波形图,假设主控MCU发送的波特率为Fbaud,那么主控MCU发送的波特周期为:
Tbaud=1/Fbaud;
则8个波特宽度时间为:
Tref=8×Tbaud;
计量SoC采用内部的RC时钟模块产生的时钟,假设其理想的时钟频率是Fideal,通过波特率测量模块对上述训练字节的两个下降沿的间隔时间Tref,进行计数得到Nrc。计量SoC中的内部MCU模块能计算出外部主控MCU发送的波特率约为Fibaud=Fideal/(8*Nrc),内部MCU模块通过查找与外部主控MCU通讯约定的、可选UART波特率查找表,获得此时外部主控MCU通讯的实际波特率Fbaud。此时,计量SoC芯片的RC时钟实际频率Frc就能通过Frc=Nrc/Tref得到。
计量SoC内部MCU根据内部RC实际的时钟频率Frc,控制RC时钟频率调整模块,可以改变RC时钟频率Frc的频率。由于RC时钟频率调整机制的限制,调整后的RC时钟频率与理想的RC时钟频率之间的偏差只能保证1%以内,难以做到更高的精度。
通过以上步骤后,功率按时间积分获得的电能量测量值以及相对应的CF脉冲输出频率值的偏差已在1%以内。
例如,在国家电网智能电能表应用中,UART可选的波特率为1200bps、2400bps、4800bps和9600bps,默认的UART通信波特率为2400bps。假设外部主控模块的MCU芯片采用2400bps发送学习字节0x7F,两个下降沿的间隔时间Tref为:
Tref=8×Tbaud=8/Fbaud=3.333mS;
计量SoC芯片的内部RC设计频率为3.2768MHz,假设实际对间隔时间Tref的计数值为Nrc=12000,那么,可以反推出此时通信波特率为Fibond=3.2768MHz/12000*8=2184.53Hz,计量SoC的内部MCU经过查表,得出在可能的波特率1200bps、2400bps、4800bps和9600bps列表中,与2400bps最接近,因此判定此时外部主控MCU芯片的通信波特率为Fbond=2400bps。从而计算得到计量SoC内部RC实际的时钟频率为:
Frc=Nrc/Tref=3.6MHz;
此时的频率偏差误差为:
Fideal/Frc-1=-9%,则需要通过调整RC电路;
配置RC电路参数,再次对对间隔时间Tref的计数值为Nrcc=11000,那么,计算得到补偿后的实际RC频率为:
Frcc=Nrcc/Tref=3.3MHz;
此时的频率偏差误差为:
Fideal/Frcc-1=-0.7%,不需要进一步调整RC电路;
本发明实施例所提供的一种无晶体计量SoC芯片的时钟获取方法,在RC时钟模块产生的预设时钟频率Fideal的作用下,对训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc,并利用预设时钟频率Fideal及计数值Nrc计算得到外部主控MCU发送训练字节的预估波特率Fibaud,再通过查表获取外部主控MCU发送训练字节的实际波特率Fbaud,依据实际波特率Fbaud得到训练字节的两个下降沿的时间间隔Tref,且利用计数值Nrc和时间间隔Tref计算得到RC时钟模块的实际时钟频率Frc,依据实际时钟频率Frc与预设时钟频率Fideal之间的差值调整RC时钟模块的时钟频率,获取RC时钟模块调整后的时钟频率Frcc。可见,无晶体计量SoC本身能够获取与主控MCU同步的时钟频率,不必使用外置晶体提供时钟频率,降低了系统成本,提高了计量SoC中计量模块获取时钟的可靠性。
实施例二
基于上述本发明实施例一所公开的无晶体计量SoC芯片的时钟获取方法,本实施例二主要公开了其步骤S104之后的步骤,请参考图3,图3为本发明实施例二所提供的无晶体计量SoC的时钟获取方法的部分流程图,优选的,在步骤S104之后,还包括以下步骤:
步骤S201:通过计量模块对功率进行测量得到功率P;
步骤S202:利用预设时钟频率Fideal及时钟频率Frcc,依据Crc=Fideal/Frcc-1得到需要对功率P进行补偿的补偿值Crc;
步骤S203:利用补偿值Crc对功率P进行补偿,依据Pc=(1+Crc)×P得到补偿后的功率Pc。
具体的,因为RC时钟频率的个体离散性较大,即使付出一定的代价,芯片间的RC时钟频率的极限偏差也可能达到20%的量级,另外,在需要测量电能的应用中,需要根据测量到的功率值对时间积分,累加成能量,当能量超过一定门限值时,输出一个CF脉冲。该脉冲的频率Fcf与测量到的功率值P和时钟频率值成正比,即Fcf=kFrcP,其中k为一个常数,当功率值恒定时,芯片工作频率的变化将导致CF脉冲频率的变化。在电能计量应用中,该变化需要在全温度范围内控制在千分之一以内。
所以,如果要进一步提升电能量和CF频率测量准确度,在步骤S104之后,还需进一步采取如下的操作:
通过对芯片的功率值进行调整,补偿RC频率误差对CF脉冲频率的影响。实现方法如下:假设,计量芯片测量到的功率为P,内部RC补偿后的时钟频率为Frcc,需要对该功率进行补偿的补偿值为Crc,补偿后的功率为Pc,那么有:
Pc=(1+Crc)×P;
Fcf=kFidealP=kFrccPc;
Crc=Fideal/Frcc-1;
这样,外部主控MCU定期的发送训练字节,计量SoC芯片自动的计算出补偿值Crc,这样就可以将CF脉冲频率稳定在允许范围之内。
例如,同样的,计量SoC芯片的内部RC设计频率为3.2768MHz,假设实际对间隔时间Tref的计数值为Nrc=12000,调整RC电路,配置RC电路参数,再次对对间隔时间Tref的计数值为Nrcc=11000,那么,此时的频率偏差误差为:
Fideal/Frcc-1=-0.7%,不需要进一步调整RC电路;
如果要进一步提升电能量和CF频率测量准确度,对功率进行补偿:
Crc=Fideal/Frcc-1=-0.00703
至此完成补偿,在系统工作的过程中,系统需要周期性的执行步骤S101、S102、S103、S104、S201、S202、S203,即周期性的执行步骤S101-S203,确保RC的变化能被及时的补偿。
在本应用场景中,Nrcc的值决定了系统补偿的分辨率,Nrcc为万分之一量级,所以补偿分辨率为万分之一,高于智能电能表应用中千分之一的精度要求。
本发明实施例所提供的又一种无晶体计量SoC芯片的时钟获取方法,在获取到RC时钟模块调整后的时钟频率Frcc之后,通过计量模块对功率进行测量得到功率P,利用预设时钟频率Fideal及时钟频率Frcc,依据Crc=Fideal/Frcc-1得到需要对功率P进行补偿的补偿值Crc,利用补偿值Crc对功率P进行补偿,依据Pc=(1+Crc)×P得到补偿后的功率Pc。可见,无晶体计量SoC本身能够获取与主控MCU同步的时钟频率,不必使用外置晶体提供时钟频率,降低了系统成本,提高了计量SoC中计量模块获取时钟的可靠性,并且进一步对功率进行补偿,提升电能量和CF频率的测量准确度,能够提升时钟频率的准确度。
实施例三
基于上述本发明实施例一至实施例二中公开的无晶体计量SoC芯片的时钟获取方法,本发明实施例三还对应上述方法公开了一种无晶体计量SoC芯片,请参考图4,图4为本发明实施例三所提供的无晶体计量SoC芯片的结构示意图,该无晶体计量SoC芯片1包括:
串口UART11,用于接收外部主控MCU12发送的训练字节;
与串口UART11相连的波特率调整模块13,用于在RC时钟模块16产生的预设时钟频率Fideal的作用下,对训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc;
与波特率调整模块13相连的内部MCU模块14,用于利用预设时钟频率Fideal及计数值Nrc计算得到外部主控MCU12发送训练字节的预估波特率Fibaud,通过查表获取外部主控MCU12发送训练字节的实际波特率Fbaud;并利用计数值Nrc和时间间隔Tref计算得到RC时钟模块16的实际时钟频率Frc;
与内部MCU模块14相连的RC时钟调整控制模块15,用于在内部MCU模块14的控制作用下,依据实际时钟频率Frc与预设时钟频率Fideal之间的差值调整RC时钟模块16的时钟频率,获取RC时钟模块16调整后的时钟频率Frcc,依据实际波特率Fbaud得到训练字节的两个下降沿的时间间隔Tref;
与RC时钟调整控制模块15、内部MCU模块14、波特率测量模块13和串口UART11相连的RC时钟模块16,用于为无晶体计量SoC芯片1提供时钟频率;
与串口UART11、内部MCU模块14、RC时钟模块16及RC时钟调整控制模块15相连的计量模块17,用于输出电能参数的测量值。
其中,预估波特率Fibaud的计算公式为:Fibaud=Fideal/(8*Nrc),Fideal为RC时钟模块产生的预设时钟频率,Nrc为对训练字节的两个下降沿的时间间隔Tref进行计数得到计数值。
其中,训练字节的两个下降沿的时间间隔Tref的计算公式为:Tref=8/Fbaud,Fbaud为训练字节的实际波特率。
其中,实际时钟频率Frc的计算公式为:Frc=Nrc/Tref,Nrc为对训练字节的两个下降沿的时间间隔Tref进行计数得到计数值,Tref为训练字节的两个下降沿的时间间隔。
其中,依据实际时钟频率Frc与预设时钟频率Fideal之间的差值调整RC时钟模块的时钟频率,使RC时钟模块的时钟频率与实际时钟频率Frc之间的偏差在预设偏差范围内,获取RC时钟模块调整后的时钟频率Frcc。这样,确保无晶体计量SoC芯片的计量误差满足电报计量为代表的测量准确度,时钟频率Frcc与实际时钟频率Frc之间的偏差在预设偏差范围内。预设偏差范围可设置为1%。
本发明实施例所提供的一种无晶体计量SoC芯片,串口UART接收外部主控MCU发送的训练字节,波特率调整模块在RC时钟模块产生的预设时钟频率Fideal的作用下,对训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc,内部MCU模块利用预设时钟频率Fideal及计数值Nrc计算得到外部主控MCU发送训练字节的预估波特率Fibaud,通过查表获取外部主控MCU发送训练字节的实际波特率Fbaud,依据实际波特率Fbaud得到训练字节的两个下降沿的时间间隔Tref,并利用计数值Nrc和时间间隔Tref计算得到RC时钟模块的实际时钟频率Frc,RC时钟调整控制模块在内部MCU模块的控制作用下,依据实际时钟频率Frc与预设时钟频率Fideal之间的差值调整RC时钟模块的时钟频率,获取RC时钟模块调整后的时钟频率Frcc。可见,无晶体计量SoC芯片本身能够获取与主控MCU同步的时钟频率,不必使用外置晶体提供时钟频率,降低了系统成本,提高了计量SoC中计量模块获取时钟的可靠性。
实施例四
基于上述本发明实施例三中公开的无晶体计量SoC芯片,优选的,请参考图5,图5为本发明实施例四所提供的无晶体计量SoC芯片的结构示意图,该无晶体计量SoC芯片1还包括:
与计量模块17和RC时钟模块16相连的功率补偿模块18,用于通过计量模块17对功率进行测量得到功率P,利用预设时钟频率Fideal及时钟频率Frcc,依据Crc=Fideal/Frcc-1得到需要对功率P进行补偿的补偿值Crc,利用补偿值Crc对功率P进行补偿,依据Pc=(1+Crc)×P得到补偿后的功率Pc。
本发明所提供的一种无晶体计量SoC芯片,在获取到RC时钟模块调整后的时钟频率Frcc之后,功率补偿模块通过计量模块对功率进行测量得到功率P,利用预设时钟频率Fideal及时钟频率Frcc,依据Crc=Fideal/Frcc-1得到需要对功率P进行补偿的补偿值Crc,利用补偿值Crc对功率P进行补偿,依据Pc=(1+Crc)×P得到补偿后的功率Pc。可见,无晶体计量SoC本身能够获取与主控MCU同步的时钟频率,不必使用外置晶体提供时钟频率,降低了系统成本,提高了计量SoC中计量模块获取时钟的可靠性,并且进一步对功率进行补偿,提升电能量和CF频率的测量准确度,能够提升时钟频率的准确度。
以上对本发明所提供的一种无晶体计量SoC芯片及其时钟获取方法进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (9)
1.一种无晶体计量SoC芯片的时钟获取方法,其特征在于,包括:
通过串口UART接收外部主控MCU发送的训练字节;
在RC时钟模块产生的预设时钟频率Fideal的作用下,对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc;
利用所述预设时钟频率Fideal及所述计数值Nrc计算得到所述外部主控MCU发送所述训练字节的预估波特率Fibaud,通过查表获取所述外部主控MCU发送所述训练字节的实际波特率Fbaud,依据所述实际波特率Fbaud得到所述训练字节的两个下降沿的时间间隔Tref;
利用所述计数值Nrc和所述时间间隔Tref计算得到所述RC时钟模块的实际时钟频率Frc,依据所述实际时钟频率Frc与所述预设时钟频率Fideal之间的差值调整所述RC时钟模块的时钟频率,获取所述RC时钟模块调整后的时钟频率Frcc;
所述利用所述预设时钟频率Fideal及所述计数值Nrc计算得到所述外部主控MCU发送所述训练字节的预估波特率Fibaud,包括:利用所述预设时钟频率Fideal及所述计数值Nrc,依据Fibaud=Fideal/(8*Nrc)得到所述外部主控MCU发送所述训练字节的预估波特率Fibaud。
2.如权利要求1所述的方法,其特征在于,所述依据所述实际波特率Fbaud得到所述训练字节的两个下降沿的时间间隔Tref,包括:
利用所述实际波特率Fbaud,依据Tref=8/Fbaud得到所述训练字节的两个下降沿的时间间隔Tref。
3.如权利要求1所述的方法,其特征在于,所述利用所述计数值Nrc和所述时间间隔Tref计算得到所述RC时钟模块的实际时钟频率Frc,包括:
利用所述计数值Nrc和所述时间间隔Tref,依据Frc=Nrc/Tref得到所述RC时钟模块的实际时钟频率Frc。
4.如权利要求1所述的方法,其特征在于,所述依据所述实际时钟频率Frc与所述预设时钟频率Fideal之间的差值调整所述RC时钟模块的时钟频率,获取所述RC时钟模块调整后的准确的时钟频率Frcc之后,还包括:
通过计量模块对功率进行测量得到功率P;
利用所述预设时钟频率Fideal及所述时钟频率Frc,依据Crc=Fideal/Frcc-1得到需要对所述功率P进行补偿的补偿值Crc;
利用所述补偿值Crc对所述功率P进行补偿,依据Pc=(1+Crc)×P得到补偿后的功率Pc。
5.一种无晶体计量SoC芯片,其特征在于,包括:
串口UART,用于接收外部主控MCU发送的训练字节;
与所述串口UART相连的波特率测量模块,用于在RC时钟模块产生的预设时钟频率Fideal的作用下,对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值Nrc;
与所述波特率测量模块相连的内部MCU模块,用于利用所述预设时钟频率Fideal及计数值Nrc计算得到所述外部主控MCU发送所述训练字节的预估波特率Fibaud,通过查表获取所述外部主控MCU发送所述训练字节的实际波特率Fbaud,依据所述实际波特率Fbaud得到所述训练字节的两个下降沿的时间间隔Tref;并利用所述计数值Nrc和所述时间间隔Tref计算得到所述RC时钟模块的实际时钟频率Frc;
与所述内部MCU模块相连的RC时钟调整控制模块,用于在所述内部MCU模块的控制作用下,依据所述实际时钟频率Frc与所述预设时钟频率Fideal之间的差值调整所述RC时钟模块的时钟频率,获取所述RC时钟模块调整后的准确的时钟频率Frcc;
与所述RC时钟调整控制模块、内部MCU模块、波特率测量模块和串口UART相连的所述RC时钟模块,用于为所述无晶体计量SoC芯片提供时钟频率;
与所述串口UART、内部MCU模块、RC时钟模块及RC时钟调整控制模块相连的计量模块,用于输出电能参数的测量值;
所述预估波特率Fibaud的计算公式为:Fibaud=Fideal/(8*Nrc),其中,Fideal为所述RC时钟模块产生的预设时钟频率,Nrc为对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值。
6.如权利要求5所述的芯片,其特征在于,所述预估波特率Fibaud的计算公式为:Fibaud=Fideal/(8*Nrc),其中,Fideal为所述RC时钟模块产生的预设时钟频率,Nrc为对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值。
7.如权利要求5所述的芯片,其特征在于,所述训练字节的两个下降沿的时间间隔Tref的计算公式为:Tref=8/Fbaud,其中,所述Fbaud为所述训练字节的实际波特率。
8.如权利要求5所述的芯片,其特征在于,所述实际时钟频率Frc的计算公式为:Frc=Nrc/Tref,其中,Nrc为对所述训练字节的两个下降沿的时间间隔Tref进行计数得到计数值,Tref为所述训练字节的两个下降沿的时间间隔。
9.如权利要求5所述的芯片,其特征在于,还包括:
与所述计量模块和所述RC时钟模块相连的功率补偿模块,用于通过所述计量模块对功率进行测量得到功率P,利用所述预设时钟频率Fideal及所述时钟频率Frcc,依据Crc=Fideal/Frcc-1得到需要对所述功率P进行补偿的补偿值Crc,利用所述补偿值Crc对所述功率P进行补偿,依据Pc=(1+Crc)×P得到补偿后的功率Pc。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510301087.0A CN104850170B (zh) | 2015-06-04 | 2015-06-04 | 一种无晶体计量SoC芯片及其时钟获取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510301087.0A CN104850170B (zh) | 2015-06-04 | 2015-06-04 | 一种无晶体计量SoC芯片及其时钟获取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104850170A CN104850170A (zh) | 2015-08-19 |
CN104850170B true CN104850170B (zh) | 2017-12-19 |
Family
ID=53849877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510301087.0A Active CN104850170B (zh) | 2015-06-04 | 2015-06-04 | 一种无晶体计量SoC芯片及其时钟获取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104850170B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105974192B (zh) * | 2016-05-05 | 2018-07-20 | 国网重庆市电力公司电力科学研究院 | 满足ir46计量独立性要求电能表数据接口及验证方法 |
CN106571887B (zh) * | 2016-10-17 | 2018-11-09 | 国家电网公司 | 一种双芯智能电能表的管理芯与计量芯时钟同步处理方法及装置 |
CN106788920B (zh) * | 2016-12-19 | 2019-08-23 | 珠海格力电器股份有限公司 | 一种波特率偏差检测方法、装置及空调室内机 |
CN106940536A (zh) * | 2017-03-03 | 2017-07-11 | 珠海格力电器股份有限公司 | 时钟自校准方法及装置、空调机组系统 |
CN107690633B (zh) * | 2017-03-15 | 2020-12-22 | 深圳大趋智能科技有限公司 | 基于mPOS的MCU内部震荡校准方法及装置 |
CN107946879B (zh) * | 2017-12-30 | 2019-08-09 | 深圳市创鑫激光股份有限公司 | 频率采集滤波方法、装置、存储介质以及激光器 |
CN111722010B (zh) * | 2020-06-29 | 2022-11-25 | 杭州万高科技股份有限公司 | 一种计量数据获取方法及计量系统 |
CN112099562B (zh) * | 2020-08-27 | 2022-09-13 | 江苏美的清洁电器股份有限公司 | 功率补偿的控制方法及装置、电器、电子设备和存储介质 |
CN112511334B (zh) * | 2020-10-13 | 2024-05-07 | 博流智能科技(南京)有限公司 | 提高通信速率的方法及系统 |
CN112463701B (zh) * | 2020-11-17 | 2024-02-23 | 江苏科大亨芯半导体技术有限公司 | 一种基于scl实时高电平脉宽的i2c从机电路 |
CN112099568B (zh) * | 2020-11-18 | 2021-02-09 | 杭州恒芯微电子科技有限公司 | Uart串口主从通信的时钟频率校准和频率测量方法 |
CN114113732B (zh) | 2021-12-15 | 2023-02-28 | 杭州万高科技股份有限公司 | 一种满足掉零线防窃电应用的单相电能计量芯片 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247123A (zh) * | 2007-10-24 | 2008-08-20 | 吴明星 | 一种单片机系统时钟校准方法 |
EP2369438B1 (en) * | 2010-02-24 | 2014-02-26 | Fujitsu Semiconductor Limited | Calibration method of a real time clock signal |
CN103365336B (zh) * | 2013-06-24 | 2016-09-28 | 深圳市文鼎创数据科技有限公司 | Usb设备系统时钟的校准方法及装置 |
CN103955257B (zh) * | 2014-03-27 | 2017-08-08 | 美的集团股份有限公司 | 单片机系统时钟的校准方法及装置、空调控制系统 |
CN103954833B (zh) * | 2014-05-12 | 2017-12-19 | 杭州万高科技股份有限公司 | 一种电能计量表、计量芯片及其内置时钟信号调制方法 |
-
2015
- 2015-06-04 CN CN201510301087.0A patent/CN104850170B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN104850170A (zh) | 2015-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104850170B (zh) | 一种无晶体计量SoC芯片及其时钟获取方法 | |
CN107104593B (zh) | Pwm数字电源的共用积分项pid双闭环控制器 | |
US10168719B2 (en) | Digital low dropout regulator and control method thereof | |
CN103792419B (zh) | 实现模拟量与数字量混合接入的同步采样方法 | |
US8321162B2 (en) | Minimizing circulating current using time-aligned data | |
CN102904568B (zh) | 一种自适应并网变流器单相软锁相环 | |
CN103713552B (zh) | 基于秒脉冲的自适应动态同步采样控制装置及其方法 | |
CN103616814A (zh) | 一种基于fpga的同步采样时钟闭环校正方法和系统 | |
CN203313199U (zh) | 一种智能电子设备的ieee c37.238时间同步系统 | |
JP6398414B2 (ja) | 電力貯蔵システム、電力変換装置、自立運転システム、及び電力貯蔵システムの制御方法 | |
CN103941622B (zh) | 基于fpga的高精度秒脉冲倍频出采样脉冲的方法 | |
CN104679098A (zh) | 微控制器时钟频率自动校准电路 | |
RU2703721C2 (ru) | Полевое устройство, питаемое от токовой петли, с последовательно соединенными регулятором напряжения и источником тока | |
CN110031773A (zh) | 用于监视电池的方法、监视系统和监视电路 | |
CN104300969A (zh) | 一种基于全数字锁相环的高精度同步时钟实现方法 | |
CN106569028B (zh) | 一种双芯智能电能表的电量同步处理方法及系统 | |
CN103955257A (zh) | 单片机系统时钟的校准方法及装置、空调控制系统 | |
CN103954833B (zh) | 一种电能计量表、计量芯片及其内置时钟信号调制方法 | |
CN103698598A (zh) | 电表及其低误差脉冲输出方法 | |
CN103149430A (zh) | 一种电能表的电能脉冲实现方法 | |
CN107678421A (zh) | 一种列车控制系统中的脉冲校准系统及方法 | |
US20160103023A1 (en) | Voltage and temperature sensor for a serializer/deserializer communication application | |
CN206251105U (zh) | 用于基站的vcxo软锁相装置 | |
CN105425194B (zh) | 一种电力仪表的脉冲常数的设置方法 | |
US8830108B2 (en) | Circuit arrangement for detecting and digitizing an analog input signal, and field device for process instrumentation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 310053 Binjiang District, Hangzhou, No. six and road, a building (North), building B4004, room, four Applicant after: Hangzhou hi tech Limited by Share Ltd Address before: 310053 Binjiang District, Hangzhou, No. six and road, a building (North), building four, B4004, Applicant before: Wangao (Hangzhou) Technology Co.Ltd |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |