CN116094513A - 小数分频系统、方法及芯片 - Google Patents
小数分频系统、方法及芯片 Download PDFInfo
- Publication number
- CN116094513A CN116094513A CN202310352921.3A CN202310352921A CN116094513A CN 116094513 A CN116094513 A CN 116094513A CN 202310352921 A CN202310352921 A CN 202310352921A CN 116094513 A CN116094513 A CN 116094513A
- Authority
- CN
- China
- Prior art keywords
- integer
- value
- preset
- frequency division
- clock
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K23/00—Pulse counters comprising counting chains; Frequency dividers comprising counting chains
- H03K23/64—Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Manipulation Of Pulses (AREA)
Abstract
本发明公开了一种小数分频系统、方法及芯片,其中,小数分频系统包括时钟分频控制模块、小数计数模块、整数计数时钟生成模块和整数计数模块,其中,时钟分频控制模块被配置为提供预设周期数、预设小数分频值和预设整数分频值;小数计数模块被配置为根据预设周期数配置小数计数起始值,并在检测到整数计数模块的触发信号时进行小数计数值减1计数;整数计数时钟生成模块被配置为根据小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟;整数计数模块被配置为在检测到整数计数时钟的上升沿时进行整数计数值加1计数,并在整数计数值达到预设整数分频值时,输出最终分频时钟。
Description
技术领域
本申请涉及时钟分频技术领域,特别涉及一种小数分频系统、方法及芯片。
背景技术
SoC(System of Chip,系统级芯片)通常集成有多个外设模块,每个外设模块根据市场或应用场景的需求具有不同的工作时钟频率,特别是UART(Universal AsynchronousReceiver/Transmitter,通用异步收发器)、SPI(Serial Peripheral Interface,串行外设接口)等与外部通讯的外设模块。一般情况下,这些外设模块的工作时钟远低于芯片的系统时钟,因此需要利用时钟分频技术得到合适工作时钟。小数时钟分频技术是针对系统时钟与所需工作时钟不成比例的应用场景,可以得到较为精确的工作时钟。
但是,目前的小数分频电路的小数部分精度不能根据所需工作时钟灵活调整,且会产生无意义的动态功耗,从而影响最终分频时钟的精确度。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的第一个目的在于提出一种小数分频系统,根据小数计数值和预设小数分频值生成屏蔽窗口信号,通过在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,生成整数计数时钟,并根据整数计数时钟和预设整数分频值生成最终分频时钟,降低了无意义的动态功耗;并且,预设分频时间可以根据实际情况灵活设置,使得最终分频时钟更加精准。
本发明的第二个目的在于提出一种芯片。
本发明的第三个目的在于提出一种小数分频方法。
为达上述目的,根据本发明第一方面实施例提出了一种小数分频系统,小数分频系统包括时钟分频控制模块、小数计数模块、整数计数时钟生成模块和整数计数模块,其中,时钟分频控制模块被配置为向小数计数模块提供预设周期数,并向整数计数时钟生成模块提供预设小数分频值,以及向整数计数模块提供预设整数分频值;小数计数模块被配置为根据预设周期数,配置小数计数起始值,并在检测到整数计数模块的触发信号时,进行小数计数值减1计数,以及向整数计数时钟生成模块发送小数计数值;整数计数时钟生成模块被配置为根据小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟;整数计数模块被配置为在检测到整数计数时钟的上升沿时,进行整数计数值加1计数,并在整数计数值达到预设整数分频值时,输出最终分频时钟。
根据本发明实施例的小数分频系统,小数计数值的起始值是根据预设周期数设置的,预设周期数越大,则小数分频时钟的精确度越高,小数计数器根据整数计数模块的触发信号开始向下计数,整数计数时钟生成模块通过对比小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟,整数计数模块根据整数计数时钟开始向上计数,在整数计数值达到预设整数分频值时,输出最终分频时钟。由此,该小数分频系统通过在预设分频时间内屏蔽源时钟的方式,实现了小数部分均匀分布在预设分频时间内,增加了信号的抗干扰能力;并且,相较于增加计数值的方式,屏蔽源时钟的方式进一步降低无意义的动态功耗。进一步的,预设分频时间可以根据实际情况灵活设置,使得最终分频时钟更加精准。
根据本发明的一个实施例,整数计数时钟生成模块还被配置为,在小数计数值小于预设小数分频值,且检测到整数计数模块的触发信号时,将屏蔽窗口信号拉高一个源时钟周期。
根据本发明的一个实施例,整数计数时钟生成模块还被配置为,在预设分频时间内,检测到屏蔽窗口信号为高电平时,将屏蔽窗口信号对应的源时钟的下一周期拉低。
根据本发明的一个实施例,预设分频时间为预设周期数和预设整数分频值的乘积。
根据本发明的一个实施例,预设小数分频值是根据预设周期数和目标分频值的小数部分确定的。
根据本发明的一个实施例,小数计数模块还被配置为,在小数计数值达到0后,且检测到触发信号时,根据预设周期数,重新配置小数计数起始值。
根据本发明的一个实施例,整数计数模块还被配置为,在整数计数值达到目标整数分频值时,将整数计数值清零,其中,目标整数分频值为预设整数分频值减1后的数值。
为达上述目的,根据本发明第二方面实施例提出了一种芯片,包括前述任一实施例的小数分频系统。
根据本发明实施例的芯片,通过采用上述的小数分频系统,根据小数计数值和预设小数分频值生成屏蔽窗口信号,通过在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,生成整数计数时钟,并根据整数计数时钟和预设整数分频值生成最终分频时钟,降低了无意义的动态功耗;并且,预设分频时间可以根据实际情况灵活设置,使得最终分频时钟更加精准。
根据本发明的一个实施例,芯片为SOC芯片。
为达上述目的,根据本发明第三方面实施例提出了一种小数分频方法,包括:获取预设整数分频值、预设小数分频值和预设周期数;通过小数计数模块在检测到整数计数模块的触发信号时进行小数计数值减1计数,获得小数计数值,其中,小数计数模块是从小数计数起始值开始进行计数,小数计数起始值是根据预设周期数配置的;通过整数计数时钟生成模块根据小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟;通过整数计数模块在检测到整数计数时钟的上升沿时,进行整数计数值加1计数,并在整数计数值达到预设整数分频值时,输出最终分频时钟。
根据本发明实施例的小数分频方法,小数计数值的起始值是根据预设周期数设置的,预设周期数越大,则小数分频时钟的精确度越高,小数计数器根据整数计数模块的触发信号开始向下计数,整数计数时钟生成模块通过对比小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟,整数计数模块根据整数计数时钟开始向上计数,在整数计数值达到预设整数分频值时,输出最终分频时钟。由此,该小数分频系统通过在预设分频时间内屏蔽源时钟的方式,实现了小数部分均匀分布在预设分频时间内,增加了信号的抗干扰能力;并且,相较于增加计数值的方式,屏蔽源时钟的方式进一步降低无意义的动态功耗。进一步的,预设分频时间可以根据实际情况进行设置,使得最终分频时钟更加精准。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1是根据本发明一个实施例的小数分频系统的系统示意图;
图2是根据本发明一个实施例的预设周期数为8时小数分频系统的时序图;
图3是根据本发明一个实施例的预设周期数为16时小数分频系统的时序图;
图4是根据本发明一个实施例的芯片的系统示意图;
图5是根据本发明一个实施例的小数分频方法的流程示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
需要说明的是,本申请是发明人对以下问题的认识和研究做出的:
相关技术中,小数分频数字电路主要分为两种:
第一种是计数进位和小数补偿电路:将16个(也可以是32个或64个)时钟周期,等效为一个分频器值,即计数16个时钟周期,会产生进位,整数计数器加1。整数计数器计数到达整数分频配置值后,触发小数计数器计数,小数计数器计数到达小数分频配置值后,输出最终所需时钟。这种小数分频数字电路不适合系统时钟和工作时钟差距不大的场景,而且将16个时钟周期等效于一个整数值会产生很多无意义的动态功耗;另外小数部分集中在补偿时间段,缺少信号的抗干扰能力。
第二种是N/(N+1)计数调节电路,其中,N为预设整数分频值:N/(N+1)计数调节电路分为时钟分频和小数调节两个部分。时钟分频部分有N和N+1两个分频值,根据小数调节部分输出的调节信号选择N或N+1作为预分频值。当时钟分频计数器计数到达预分频值时,计数器清零同时小数调节部分的计数器减1。根据小数调节计数器的计数值与小数预设值的比较结果,生成对应调节信号输出给时钟分频部分,最终生成所需分频时钟。这种电路通过N和N+1分频值的合理分配,实现了小数部分的均匀分布,但在小数数值较大的场景同样会产生无意义的动态功耗,且不能根据所需工作时钟灵活调整小数精度。
基于此,本发明的实施例提供了一种小数分频系统、方法及芯片,根据小数计数值和预设小数分频值生成屏蔽窗口信号,通过在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,生成整数计数时钟,并根据整数计数时钟和预设整数分频值生成最终分频时钟,降低了无意义的动态功耗;并且,预设分频时间可以根据实际情况灵活设置,使得最终分频时钟更加精准。
下面参考附图描述本发明实施例的小数分频系统、方法及芯片。
图1是根据本发明一个实施例的小数分频系统的系统示意图。如图1所示,小数分频系统包括时钟分频控制模块10、小数计数模块20、整数计数时钟生成模块30和整数计数模块40。
其中,时钟分频控制模块10被配置为向小数计数模块20提供预设周期数,并向整数计数时钟生成模块30提供预设小数分频值,以及向整数计数模块40提供预设整数分频值;小数计数模块20被配置为根据预设周期数,配置小数计数起始值,并在检测到整数计数模块40的触发信号时,进行小数计数值减1计数,以及向整数计数时钟生成模块30发送小数计数值;整数计数时钟生成模块30被配置为根据小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟;整数计数模块40被配置为在检测到整数计数时钟的上升沿时,进行整数计数值加1计数,并在整数计数值达到预设整数分频值时,输出最终分频时钟。
具体地,预设周期数可以根据实际情况灵活设置,例如8、16或32,预设周期数越大,时钟分频越精确。预设小数分频值和预设整数分频值是根据目标分频时钟确定的,预设整数分频值是目标分频时钟的整数部分,预设小数分频值需要根据预设周期数和目标分频时钟确定。小数计数模块20在时钟分频控制模块10使能后,将小数计数起始值设置为预设周期数,然后在检测到整数计数模块40的触发信号时,小数计数值减1,并向整数计数时钟生成模块30发送小数计数值。整数计数时钟生成模块30根据小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟,在预设分频时间内,被屏蔽的源时钟的数目为预设小数分频值,实现了小数部分均匀分布在预设分频时间内,增加了信号的抗干扰能力;并且,相较于增加计数值的方式,屏蔽源时钟的方式进一步降低无意义的动态功耗。进一步的,预设分频时间可以根据实际情况进行设置,使得最终分频时钟更加精准。整数计数模块40在检测到整数计数时钟的上升沿时,整数计数值加1,并在整数计数值达到预设整数分频值时,输出最终分频时钟。
需要说明的是,在预设周期数为16时,可以拆分成两个预设周期数为8的组合,此时小数计数模块20的最高位为控制信号。在预设周期数为32时,可以拆分成两个预设周期数为16的组合,也可以等效于拆分成四个预设周期数为8的组合,具体这里不做限制。
在上述实施例中,根据小数计数值和预设小数分频值生成屏蔽窗口信号,通过在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,实现了小数部分均匀分布,并且降低了无意义的动态功耗;另外,预设周期数和预设分频时间可以根据实际情况灵活设置,使得最终分频时钟更加精准。进一步的,采用数字电路实现小数分频技术,相较于模拟电路实现小数分频技术,进一步缩小了电路面积。
在一些实施例中,如图2所示,整数计数时钟生成模块30还被配置为,在小数计数值FracCntNxt小于预设小数分频值PreFracVal,且检测到整数计数模块40的触发信号IntCntTrig时,将屏蔽窗口信号MaskWin拉高一个源时钟周期。
具体地,以图2所示为例,预设周期数为8,预设小数分频值PreFracVal为6,因此,小数计数起始值为7。在检测到整数计数模块40的触发信号IntCntTrig时,小数计数值FracCntNxt减1。屏蔽窗口信号默认为低电平。在检测到整数计数模块40的触发信号IntCntTrig时,小数计数值FracCntNxt减为5,小数计数值FracCntNxt小于预设小数分频值PreFracVal,此时,将屏蔽窗口信号MaskWin拉高一个源时钟周期,屏蔽窗口信号MaskWin在下一个源时钟周期恢复为低电平。在检测到整数计数模块40的触发信号IntCntTrig时,小数计数值FracCntNxt减为4,此时,将屏蔽窗口信号MaskWin又拉高一个源时钟周期。
在一些实施例中,如图2所示,整数计数时钟生成模块30还被配置为,在预设分频时间MaskPeriods内,检测到屏蔽窗口信号MaskWin为高电平时,将屏蔽窗口信号MaskWin对应的源时钟clk的下一周期拉低。
具体地,以图2所示为例,在预设分频时间MaskPeriods内,在屏蔽窗口信号MaskWin为低电平时,屏蔽窗口信号MaskWin对应的源时钟clk的下一周期没有被屏蔽;屏蔽窗口信号MaskWin为高电平时,将屏蔽窗口信号MaskWin对应的源时钟clk的下一周期拉低,从而生成整数计数时钟IntCntClk。
在上述实施例中,利用屏蔽窗口信号对源时钟进行屏蔽,相较于增加计数值的方式,屏蔽源时钟的方式进一步降低无意义的动态功耗。
在一些实施例中,预设分频时间为预设周期数和预设整数分频值的乘积。
具体地,根据公式(1)计算预设分频时间:
MaskPeriods=PrePeriod*PreIntScaler(1)
其中,MaskPeriods为预设分频时间,PrePeriod为预设周期数,PreIntScaler为预设整数分频值,预设分频时间MaskPeriods的单位为一个源时钟周期。
举例来说,以实现目标分频值为5.71为例,为预设整数分频值PreIntScaler为5,小数部分为0.71。如果预设周期数PrePeriod为8,则预设分频时间MaskPeriods为40,则小数部分0.71要在40个源时钟周期内均匀分布。如果预设周期数PrePeriod为16,则预设分频时间MaskPeriods为80,则小数部分0.71要在80个源时钟周期内均匀分布。
在一些实施例中,预设小数分频值是根据预设周期数和目标分频值的小数部分确定的。
具体地,首先计算预设周期数PrePeriod和目标分频值的小数部分的乘积,再对乘积进行四舍五入得到预设小数分频值PreFracVal。
举例来说,以实现目标分频值为5.71为例,小数部分为0.71。如果预设周期数PrePeriod为8,则预设周期数PrePeriod和小数部分的乘积为8*0.71=5.68,然后对5.68进行四舍五入,得到预设小数分频值PreFracVal为6,即在预设分频时间MaskPeriods为40内,屏蔽6个源时钟周期。如果预设周期数PrePeriod为16,预设周期数PrePeriod和小数部分的乘积为16*0.71=11.36,然后对11.36进行四舍五入,得到预设小数分频值PreFracVal为11,即在预设分频时间MaskPeriods为80内,屏蔽11个源时钟周期。在预设周期数PrePeriod为8时,计算出的预设小数分频值PreFracVal为6,根据预设周期数PrePeriod和预设小数分频值PreFracVal计算出的小数分频值为6/8=0.75,与目标小数分频值0.71相差0.04;在预设周期数PrePeriod为16时,计算出的预设小数分频值PreFracVal为11,根据预设周期数PrePeriod和预设小数分频值PreFracVal计算出的小数分频值为11/16=0.6875,与目标小数分频值0.71相差0.0225,因此,预设周期数越大,最终时钟分频越贴近目标时钟分频。
在一些实施例中,如图2所示,小数计数模块20还被配置为,在小数计数值FracCntNxt达到0后,且检测到触发信号IntCntTrig时,根据预设周期数PrePeriod,重新配置小数计数起始值。
具体地,如图2所示,预设周期数PrePeriod为8,小数计数起始值为7,小数计数模块20为减计数模块,小数计数值FracCntNxt达到0后,若检测到触发信号IntCntTrig,则将小数计数起始值重新设置为7。
在一些实施例中,如图2所示,整数计数模块40还被配置为,在整数计数值IntCnt达到目标整数分频值时,将整数计数值IntCnt清零,其中,目标整数分频值为预设整数分频值PreIntScaler减1后的数值。
具体地,如图2所示,整数计数模块40为加计数模块,整数计数值IntCnt的初始值为0,预设整数分频值PreIntScaler为2,目标整数分频值为1,在整数计数时钟IntCntClk的上升沿整数计数值IntCnt加1,在整数计数值IntCnt达到目标整数分频值时,将最终分频时钟ScaleClk拉高一个源时钟周期,并将整数计数值IntCnt清零。
下面将结合具体的实施方式进一步详述本申请的技术方案:
如图2所示,预设周期数PrePeriod为8,预设整数分频值PreIntScaler为2,预设分频时间为预设周期数PrePeriod和预设整数分频值PreIntScaler的乘积,即为16。预设小数分频值PreFracVal为6,即在为16个源时钟周期的预设分频时间内屏蔽6个源时钟周期。
预设小数分频值PreFracVal是对小数部分ReqFracVal和预设周期数PrePeriod的乘积进行四舍五入得到的,所以,小数部分ReqFracVal和预设周期数PrePeriod的乘积在5.5-6.5之间,5.5≤小数部分ReqFracVal*预设周期数PrePeriod(预设周期数PrePeriod为8)≤6.5,因此,可以实现0.6875-0.8125范围内的小数分频。预设整数分频值PreIntScaler为整数部分,所以可以实现2.6875-2.8125的分频值。
在时钟分频控制模块的使能信号CntEn使能后,小数计数模块根据预设周期数PrePeriod设置小数计数起始值为7,而后在源时钟clk上升沿且检测到整数计数模块的触发信号IntCntTrig后小数计数值FracCntNxt减1。整数计数时钟生成模块同时根据预设小数分频值PreFracVal和小数计数值FracCntNxt,产生屏蔽窗口信号MaskWin。如果小数计数值FracCntNxt小于预设小数分频值PreFracVal,则在触发信号IntCntTrig的上升沿将屏蔽窗口信号MaskWin拉高一个源时钟周期,否则屏蔽窗口信号MaskWin保持低电平。小数计数值FracCntNxt到达0后,在下一个触发信号IntCntTrig的上升沿重新加载预设周期数,即重新设置小数计数起始值为7。
在一个整数计数模块的计数周期内,检测到屏蔽窗口信号MaskWin为高电平时,将屏蔽窗口信号MaskWin对应的源时钟clk的下一周期拉低,生成整数计数时钟IntCntClk,整数计数时钟IntCntClk相对源时钟clk来说,缺少一个时钟周期,体现在最终分频时钟ScaleClk就是波特率脉冲延迟一个时钟输出。
整数计数值IntCnt的初始值为0,在整数计数时钟IntCntClk的上升沿整数计数值IntCnt加1,在整数计数值IntCnt达到预设整数分频值PreIntScaler为2时,将最终分频时钟ScaleClk拉高一个源时钟周期,并将整数计数值IntCnt清零。
在上述实施例中,0.6875-0.8125范围内的小数分频在预设分频时间内均匀分布,实现了小数部分均匀分布;并且,通过屏蔽窗口信号将源时钟屏蔽的方式,进一步降低了无意义的动态功耗。
如图3所示,预设周期数PrePeriod为16,拆分为两个预设周期数为8的组合,预设分频时间为32。如果要实现0.6875-0.8125范围内的小数分频,预设小数分频值PreFracVal在11-13之间。其他的数值保持不变。小数计数模块的最高位FracCntNxt[3]作为控制信号。
当控制信号FracCntNxt[3]为高电平时,预设小数分频值1 PreFracVal[3:1]与预设小数分频值2 PreFracVal[0]的和为预设小数分频值PreFracVal_Q,等效于图2中的预设小数分频值PreFracVal,小数计数值FracCntNxt[2:0]等效于图2中的小数计数值FracCntNxt,其他时序与图2中相同。当控制信号FracCntNxt[3]为低电平时,预设小数分频值1 PreFracVal[3:1]为预设小数分频值PreFracVal_Q,等效于图2中的预设小数分频值PreFracVal,小数计数值FracCntNxt[2:0]等效于图2中的小数计数值FracCntNxt,其他时序与图2中相同。
需要说明的是,在实际的应用中,还可以在控制信号FracCntNxt[3]为低电平时,预设小数分频值1 PreFracVal[3:1]与预设小数分频值2 PreFracVal[0]的和为预设小数分频值PreFracVal_Q,等效于图2中的预设小数分频值PreFracVal,小数计数值FracCntNxt[2:0]等效于图2中的小数计数值FracCntNxt,其他时序与图2中相同;当控制信号FracCntNxt[3]为高电平时,预设小数分频值1 PreFracVal[3:1]为预设小数分频值PreFracVal_Q,等效于图2中的预设小数分频值PreFracVal,小数计数值FracCntNxt[2:0]等效于图2中的小数计数值FracCntNxt,其他时序与图2中相同,具体这里不做限制。
在上述实施例中,0.6875-0.8125范围内的小数分频在预设分频时间内均匀分布,实现了小数部分均匀分布;并且,通过屏蔽窗口信号将源时钟屏蔽的方式,进一步降低了无意义的动态功耗。另外,相较于预设周期数为8时,预设周期数为16的最终分频时钟更加精准。
综上所述,根据本发明实施例的小数分频系统,小数计数值的起始值是根据预设周期数设置的,预设周期数越大,则小数分频时钟的精确度越高,小数计数器根据整数计数模块的触发信号开始向下计数,整数计数时钟生成模块通过对比小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟,整数计数模块根据整数计数时钟开始向上计数,在整数计数值达到预设整数分频值时,输出最终分频时钟。由此,该小数分频系统通过在预设分频时间内屏蔽源时钟的方式,实现了小数部分均匀分布在预设分频时间内,增加了信号的抗干扰能力;并且,相较于增加计数值的方式,屏蔽源时钟的方式进一步降低无意义的动态功耗。进一步的,预设分频时间可以根据实际情况灵活设置,使得最终分频时钟更加精准。
对应上述实施例,本发明的实施例还提供了一种芯片。如图4所示,芯片200包括前述任一实施例的小数分频系统100。
进一步的,在一些实施例中,芯片为SOC芯片。
也就是说,前述的小数分频系统可以根据所需工作时钟灵活调整,可以生成准确的工作时钟,因此,采用前述的小数分频系统的SOC芯片的电学性能更好。
根据本发明实施例的芯片,通过采用上述的小数分频系统,根据小数计数值和预设小数分频值生成屏蔽窗口信号,通过在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,生成整数计数时钟,并根据整数计数时钟和预设整数分频值生成最终分频时钟,降低了无意义的动态功耗;并且,预设分频时间可以根据实际情况灵活设置,使得最终分频时钟更加精准。
对应上述实施例,本发明的实施例还提供了一种小数分频方法。如图5所示,小数分频方法包括以下步骤:
S101,获取预设整数分频值、预设小数分频值和预设周期数。
需要说明的是,预设周期数可以根据实际情况灵活设置,例如8、16或32,预设周期数越大,时钟分频越精确。预设小数分频值和预设整数分频值是根据目标分频时钟确定的,预设整数分频值是目标分频时钟的整数部分,预设小数分频值需要根据预设周期数和目标分频时钟确定。
S102,通过小数计数模块在检测到整数计数模块的触发信号时进行小数计数值减1计数,获得小数计数值,其中,小数计数模块是从小数计数起始值开始进行计数,小数计数起始值是根据预设周期数配置的。
具体地,小数计数模块在时钟分频控制模块使能后,将小数计数起始值设置为预设周期数,然后在检测到整数计数模块的触发信号时,小数计数值减1,并向整数计数时钟生成模块发送小数计数值。
S103,通过整数计数时钟生成模块根据小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟。
具体地,整数计数时钟生成模块根据小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟,在预设分频时间内,被屏蔽的源时钟的数目为预设小数分频值,实现了小数部分均匀分布在预设分频时间内,增加了信号的抗干扰能力;并且,相较于增加计数值的方式,屏蔽源时钟的方式进一步降低无意义的动态功耗。进一步的,预设分频时间可以根据实际情况进行设置,使得最终分频时钟更加精准。
S104,通过整数计数模块在检测到整数计数时钟的上升沿时,进行整数计数值加1计数,并在整数计数值达到预设整数分频值时,输出最终分频时钟。
具体地,整数计数模块在检测到整数计数时钟的上升沿时,整数计数值加1,并在整数计数值达到预设整数分频值时,输出最终分频时钟。
根据本发明实施例的小数分频方法,小数计数值的起始值是根据预设周期数设置的,预设周期数越大,则小数分频时钟的精确度越高,小数计数器根据整数计数模块的触发信号开始向下计数,整数计数时钟生成模块通过对比小数计数值和预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟,整数计数模块根据整数计数时钟开始向上计数,在整数计数值达到预设整数分频值时,输出最终分频时钟。由此,该小数分频系统通过在预设分频时间内屏蔽源时钟的方式,实现了小数部分均匀分布在预设分频时间内,增加了信号的抗干扰能力;并且,相较于增加计数值的方式,屏蔽源时钟的方式进一步降低无意义的动态功耗。进一步的,预设分频时间可以根据实际情况进行设置,使得最终分频时钟更加精准。
需要说明的是,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
此外,本发明实施例中所使用的“第一”、“第二”等术语,仅用于描述目的,而不可以理解为指示或者暗示相对重要性,或者隐含指明本实施例中所指示的技术特征数量。由此,本发明实施例中限定有“第一”、“第二”等术语的特征,可以明确或者隐含地表示该实施例中包括至少一个该特征。在本发明的描述中,词语“多个”的含义是至少两个或者两个及以上,例如两个、三个、四个等,除非实施例中另有明确具体的限定。
在本发明中,除非实施例中另有明确的相关规定或者限定,否则实施例中出现的术语“安装”、“相连”、“连接”和“固定”等应做广义理解,例如,连接可以是固定连接,也可以是可拆卸连接,或成一体,可以理解的,也可以是机械连接、电连接等;当然,还可以是直接相连,或者通过中间媒介进行间接连接,或者可以是两个元件内部的连通,或者两个元件的相互作用关系。对于本领域的普通技术人员而言,能够根据具体的实施情况理解上述术语在本发明中的具体含义。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种小数分频系统,其特征在于,所述小数分频系统包括时钟分频控制模块、小数计数模块、整数计数时钟生成模块和整数计数模块,其中,
所述时钟分频控制模块被配置为向所述小数计数模块提供预设周期数,并向所述整数计数时钟生成模块提供预设小数分频值,以及向所述整数计数模块提供预设整数分频值;
所述小数计数模块被配置为根据所述预设周期数,配置小数计数起始值,并在检测到所述整数计数模块的触发信号时,进行小数计数值减1计数,以及向所述整数计数时钟生成模块发送所述小数计数值;
所述整数计数时钟生成模块被配置为根据所述小数计数值和所述预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用所述屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟;
所述整数计数模块被配置为在检测到所述整数计数时钟的上升沿时,进行整数计数值加1计数,并在所述整数计数值达到所述预设整数分频值时,输出最终分频时钟。
2.根据权利要求1所述的小数分频系统,其特征在于,所述整数计数时钟生成模块还被配置为,在所述小数计数值小于所述预设小数分频值,且检测到所述整数计数模块的触发信号时,将所述屏蔽窗口信号拉高一个源时钟周期。
3.根据权利要求2所述的小数分频系统,其特征在于,所述整数计数时钟生成模块还被配置为,在所述预设分频时间内,检测到所述屏蔽窗口信号为高电平时,将所述屏蔽窗口信号对应的源时钟的下一周期拉低。
4.根据权利要求1-3中任一项所述的小数分频系统,其特征在于,所述预设分频时间为所述预设周期数和所述预设整数分频值的乘积。
5.根据权利要求1-3中任一项所述的小数分频系统,其特征在于,所述预设小数分频值是根据所述预设周期数和目标分频值的小数部分确定的。
6.根据权利要求1-3中任一项所述的小数分频系统,其特征在于,所述小数计数模块还被配置为,在所述小数计数值达到0后,且检测到所述触发信号时,根据所述预设周期数,重新配置小数计数起始值。
7.根据权利要求1所述的小数分频系统,其特征在于,所述整数计数模块还被配置为,在所述整数计数值达到目标整数分频值时,将所述整数计数值清零,其中,所述目标整数分频值为所述预设整数分频值减1后的数值。
8.一种芯片,其特征在于,包括根据权利要求1-7中任一项所述的小数分频系统。
9.根据权利要求8所述的芯片,其特征在于,所述芯片为SOC芯片。
10.一种小数分频方法,其特征在于,包括:
获取预设整数分频值、预设小数分频值和预设周期数;
通过小数计数模块在检测到整数计数模块的触发信号时进行小数计数值减1计数,获得所述小数计数值,其中,所述小数计数模块是从小数计数起始值开始进行计数,所述小数计数起始值是根据所述预设周期数配置的;
通过整数计数时钟生成模块根据所述小数计数值和所述预设小数分频值生成屏蔽窗口信号,并在预设分频时间内,利用所述屏蔽窗口信号对源时钟进行屏蔽,以生成整数计数时钟;
通过所述整数计数模块在检测到所述整数计数时钟的上升沿时,进行整数计数值加1计数,并在所述整数计数值达到所述预设整数分频值时,输出最终分频时钟。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310352921.3A CN116094513B (zh) | 2023-04-04 | 2023-04-04 | 小数分频系统、方法及芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310352921.3A CN116094513B (zh) | 2023-04-04 | 2023-04-04 | 小数分频系统、方法及芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116094513A true CN116094513A (zh) | 2023-05-09 |
CN116094513B CN116094513B (zh) | 2023-06-23 |
Family
ID=86208630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310352921.3A Active CN116094513B (zh) | 2023-04-04 | 2023-04-04 | 小数分频系统、方法及芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116094513B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030076137A1 (en) * | 2001-10-10 | 2003-04-24 | Stmicroelectronics Pvt. Ltd. | Fractional divider |
CN101783676A (zh) * | 2009-12-29 | 2010-07-21 | 中兴通讯股份有限公司 | 一种时钟分频方法及装置 |
CN104954015A (zh) * | 2014-03-26 | 2015-09-30 | 拉碧斯半导体株式会社 | 时钟生成方法以及半导体装置 |
CN108055006A (zh) * | 2017-12-29 | 2018-05-18 | 成都锐成芯微科技股份有限公司 | 一种数字倍频器 |
CN111510129A (zh) * | 2020-04-02 | 2020-08-07 | 云知声智能科技股份有限公司 | 一种纯数字电路小数分频系统和分频方法 |
US20200266806A1 (en) * | 2019-02-15 | 2020-08-20 | Canon Kabushiki Kaisha | Fractional frequency divider and frequency synthesizer |
CN113078991A (zh) * | 2021-03-03 | 2021-07-06 | 北京紫光青藤微系统有限公司 | 频率校准系统、方法及应答器 |
CN114301449A (zh) * | 2021-11-24 | 2022-04-08 | 北京智芯微电子科技有限公司 | 小数分频方法、系统及芯片 |
-
2023
- 2023-04-04 CN CN202310352921.3A patent/CN116094513B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030076137A1 (en) * | 2001-10-10 | 2003-04-24 | Stmicroelectronics Pvt. Ltd. | Fractional divider |
CN101783676A (zh) * | 2009-12-29 | 2010-07-21 | 中兴通讯股份有限公司 | 一种时钟分频方法及装置 |
CN104954015A (zh) * | 2014-03-26 | 2015-09-30 | 拉碧斯半导体株式会社 | 时钟生成方法以及半导体装置 |
CN108055006A (zh) * | 2017-12-29 | 2018-05-18 | 成都锐成芯微科技股份有限公司 | 一种数字倍频器 |
US20200266806A1 (en) * | 2019-02-15 | 2020-08-20 | Canon Kabushiki Kaisha | Fractional frequency divider and frequency synthesizer |
CN111510129A (zh) * | 2020-04-02 | 2020-08-07 | 云知声智能科技股份有限公司 | 一种纯数字电路小数分频系统和分频方法 |
CN113078991A (zh) * | 2021-03-03 | 2021-07-06 | 北京紫光青藤微系统有限公司 | 频率校准系统、方法及应答器 |
CN114301449A (zh) * | 2021-11-24 | 2022-04-08 | 北京智芯微电子科技有限公司 | 小数分频方法、系统及芯片 |
Also Published As
Publication number | Publication date |
---|---|
CN116094513B (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109283967B (zh) | 一种微控制单元mcu时钟校准方法及相关设备 | |
CN107222189B (zh) | 一种数字脉冲宽度调制器 | |
JPS5931897B2 (ja) | 周波数合成装置 | |
JP5059828B2 (ja) | プログラマブルデュアルエッジトリガードカウンター | |
CN109104169B (zh) | 一种并行架构高速三角波信号发生器的信号合成方法 | |
US8253450B2 (en) | Clock signal frequency dividing circuit and method | |
CN116094513B (zh) | 小数分频系统、方法及芯片 | |
US6307494B2 (en) | Device and method for the rapid digital/analog conversion of pulse width modulated signals | |
US20080061855A1 (en) | Method and apparatus for generating a clock signal and for controlling a clock frequency using the same | |
KR20030017527A (ko) | 프로그램가능한 주파수 분주기 및 이를 포함하는마이크로프세서 시스템 | |
KR20150120940A (ko) | 향상된 수치 제어 발진기 | |
CN110868212B (zh) | 一种高速计数和比较电路及其方法 | |
CN109391247B (zh) | 一种基于pwm信号的滤波器、处理电路及芯片 | |
EP1317798B1 (en) | Dual-edge m/n counter | |
CN112290939A (zh) | 一种分频时钟产生电路及其分频方法 | |
AU2001291079A1 (en) | Dual-edge m/n counter | |
JP3473165B2 (ja) | 周波数ー電圧変換装置 | |
CN110061735B (zh) | 小数分频电路及采用该电路的接口时钟分频电路 | |
JP3967370B1 (ja) | デジタル方式パルス幅変調装置 | |
JPH0653794A (ja) | パルス幅変調回路 | |
JPH06232699A (ja) | パルス発生装置 | |
CN116707493B (zh) | 触发信号发生装置、功率驱动模块及电机控制芯片 | |
CN115981135B (zh) | 军用车载时统设备及其控制方法和时统处理板 | |
US5404386A (en) | Programmable clock for an analog converter in a data processor and method therefor | |
JP3302907B2 (ja) | Pwm出力制御回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |