一种计数电路、计数方法及芯片与流程

文档序号:17239053发布日期:2019-03-30 08:29阅读:187来源:国知局
一种计数电路、计数方法及芯片与流程

本发明涉及电子电路结构技术领域,具体涉及一种计数电路、计数方法及芯片。



背景技术:

计数电路是在计算机或信号处理系统常用的功能,利用系统工作时钟进行周期性计数,完成硬件或软件定时功能,同时也具有计数锁存功能,但是不支持多路外部触发功能,不能满足有多个外部触发锁存需求的系统,比如利用精确计数的一路脉冲信号去调整另一路或多路精确度不高的脉冲,或利用具备精确计数的一路脉冲信号去同步另外一路或多路的脉冲信号,传统的实现需要设置多个计数器解决同步误差测量或多路脉冲宽度同步调整,同时系统实现的成本较高。



技术实现要素:

本发明实施例的目的在于提供一种计数电路、计数方法及芯片,用以解决现有的系统中需要设置多个计数器解决同步误差测量或多路脉冲宽度同步调整的技术问题。

为实现上述目的,本发明实施例提供了一种计数电路,包括:多路锁存脉冲输入单元、多路锁存控制逻辑单元、锁存单元和计数器;所述多路锁存脉冲输入单元的输出端与所述多路锁存控制逻辑单元的输入端连接,所述多路锁存控制逻辑单元的输出端与所述计数器连接,所述计数器与所述锁存单元连接;所述多路锁存脉冲输入单元接收多路脉冲信号后,所述多路锁存控制逻辑单元根据设定逻辑电路对所述多路脉冲信号进行逻辑判断并汇集所述多路脉冲信号,所述多路锁存控制逻辑单元根据汇集的所述多路脉冲信号向所述计数器发送触发信号,所述计数器接收到所述触发信号后触发所述锁存单元对所述计数器的当前计数值进行锁存。

优选地,所述设定逻辑电路是根据所述多路脉冲信号的输入状态进行设计的,所述输入状态包括:所述多路脉冲信号的组合逻辑符合触发所述锁存单元对所述计数器的当前计数值进行锁存的条件,其中,所述多路脉冲信号中的任意一路脉冲信号或至少一路脉冲信号符合触发所述锁存单元对所述计数器的当前计数值进行锁存的条件。

优选地,计数值寄存器,所述计数值寄存器与所述锁存单元连接,所述计数值寄存器用于存储所述计数值和所述计数值对应的每路脉冲信号标识的映射关系。

优选地,所述计数器为32位以上的循环计数器。

优选地,所述计数器上设置有第一主机数据交换接口,所述第一主机数据交换接口为所述计数器与cpu通信的接口。

优选地,计数控制逻辑单元,所述计数器与所述计数控制逻辑单元连接,所述计数控制逻辑单元用于控制所述计数器设置初始计数值、开始计数和结束计数。

优选地,还包括,脉冲信号输入状态寄存器,所述脉冲信号输入状态寄存器通过第二主机数据交换接口可被cpu访问,所述脉冲信号输入状态寄存器获取并存储所述多路脉冲信号的输入状态及每路脉冲信号对应的标识。

优选地,还包括:数字锁相环电路,所述数字锁相环电路与时钟单元连接,所述数字锁相环电路用于调整所述时钟单元输入所述多路锁存脉冲输入单元、所述多路锁存控制逻辑单元、所述锁存单元、所述计数器、计数值寄存器、cpu、计数控制逻辑单元和脉冲信号输入状态寄存器的信号的频率。

另外一方面,本发明实施例提供了一种计数方法,所述方法包括:

接收多路脉冲信号;根据设定逻辑电路对所述多路脉冲信号进行逻辑判断并汇集所述多路脉冲信号;根据汇集的所述多路脉冲信号向计数器发送触发信号,所述计数器接收到所述触发信号后触发锁存单元对所述计数器的当前计数值进行锁存。

另外一方面,本发明实施例提供了一种芯片,包括,如上述所述的计数电路。

本发明实施例具有如下优点:

本发明实施例提出的一种计数电路、计数方法及芯片,本发明实施例公开的技术方案可减少现有技术中利用精确计数的一路脉冲信号去调整另一路或多路精确度不高的脉冲,或利用精确计数的一路脉冲信号去同步另外一路或多路脉冲信号的计数电路中的计数器数量,现有技术需要多个计数器实现上述功能,本发明只需要一个计数器,减少了计数器的数量,同时也避免了现有技术中设置多个计数器解决同步误差测量或多路脉冲宽度同步调整的技术问题,本发明实施例的计数电路中设置了多路锁存控制逻辑单元对多路脉冲信号的逻辑判断,可以对多路脉冲信号进行逻辑判断进而汇集多路脉冲信号,触发锁存单元对计数器的当前计数值进行锁存。

附图说明

图1为本发明实施例公开计数电路结构示意图。

图2为本发明实施例公开的一种计数方法流程示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

如图1所示,本发明实施例提供了一种计数电路结构示意图。

本发明实施例公开的计数电路包括:多路锁存脉冲输入单元01、多路锁存控制逻辑单元02、锁存单元06和计数器04,多路锁存脉冲输入单元01的输出端与多路锁存控制逻辑单元02的输入端连接,多路锁存控制逻辑单元02的输出端与计数器04连接,计数器04与锁存单元06连接。

还包括,计数值寄存器07,计数值寄存器07与锁存单元06连接,计数值寄存器07用于存储计数值和计数值对应的多路脉冲信号中的每路脉冲信号标识的映射关系,每路脉冲信号标识可以根据系统进行自定义,然后分配给相应的每路脉冲信号。

还包括,数字锁相环电路09,数字锁相环电路09与时钟单元08连接,数字锁相环电路09用于调整时钟单元08输入多路锁存脉冲输入单元01、多路锁存控制逻辑单元02、锁存单元06、计数器04、计数值寄存器07、cpu10、计数控制逻辑单元05和脉冲信号输入状态寄存器03信号的频率,时钟单元08是本发明涉及的所有功能单元的工作基础。

计数器04为32位以上的循环计数器,计数器04可根据需要调整计数器04的长度。

还包括:计数控制逻辑单元05,计数器04与计数控制逻辑单元05连接,计数控制逻辑单元05用于控制计数器04设置初始计数值、开始计数和结束计数。

在计数电路中设置有中央处理器cpu10,计数器04上设置有第一主机数据交换接口,第一主机数据交换接口为计数器04与cpu10通信的接口。

还包括,脉冲信号输入状态寄存器03,脉冲信号输入状态寄存器03与cpu10连接,锁存脉冲输入状态寄存器03获取并存储多路脉冲信号的输入状态及多路脉冲信号中的每路脉冲信号对应的标识,cpu10可以通过第二主机数据交换接口获取脉冲信号输入状态寄存器03上存储的多路脉冲信号中的每路脉冲信号对应的标识,cpu10通过访问计数值寄存器07可以获取计数值和每路脉冲信号对应标识之间的映射关系。

本发明实施例设置脉冲信号输入状态寄存器03可以增加利用本发明实施例实现待实现的系统功能的灵活性,当开始进行电路设计时,如果有多路脉冲信号,如果单纯从硬件设计上进行逻辑判断电路是非常复杂,所以增加了脉冲信号输入状态寄存器03可以减轻硬件设计的复杂度,可以通过脉冲信号输入状态寄存器03进行分担一部分的任务,cpu10通过第二主机数据交换接口访问脉冲信号输入状态寄存器03上的数据,可以通过软硬件配合来完成多路脉冲信号的逻辑判断和仲裁,增加了利用本发明实施例实现待实现的系统功能的灵活性。

本发明公开的实施例中,多路锁存脉冲输入单元01用于接收多路脉冲信号的输入;多路锁存控制逻辑单元02用于配合多路锁存脉冲输入单元01完成输入的多路脉冲信号的仲裁判断并防止丢失多路脉冲信号;锁存单元06用于对多路脉冲信号触发的计数器04的当前计数值进行锁存;

计数器04用于对系统时钟单元08进行计数,在本发明公开的实施例中,只设置一个计数器04即可完成所有系统的需求,简化了电路设计的复杂度,也解决了需要设置多个计数器解决的同步误差测量或多路脉冲宽度同步调整的技术问题。

本发明公开的实施例中,多路锁存脉冲输入单元01接收多路脉冲信号后,多路锁存控制逻辑单元02根据设定逻辑电路对多路脉冲信号进行逻辑判断并汇集多路脉冲信号,多路锁存控制逻辑单元02根据汇集的多路脉冲信号向计数器04发送触发信号,计数器04接收到触发信号后触发锁存单元06对计数器04的当前计数值进行锁存。

设定逻辑电路是根据多路脉冲信号的输入状态进行设计的,输入状态包括:

多路脉冲信号的组合逻辑符合触发锁存单元对计数器04的当前计数值进行锁存的条件,其中,多路脉冲信号中的任意一路脉冲信号或至少一路脉冲信号符合触发所述锁存单元06对计数器04的当前计数值进行锁存的条件。

设定逻辑电路根据预设实现的功能进行组合逻辑判断并确定计数值锁存的类型。

本发明公开的计数电路主要包括:时钟单元08,多路锁存脉冲输入单元01,多路锁存控制逻辑单元02,32位长度以上的计数器04及计数控制逻辑单元05,主机数据交换接口;时钟单元08接受晶振或系统时钟输入,作为计数器04的工作基础,如有必要可以增加数字锁相环电路09(dpll)将时钟输入倍频,提高计数精确度。多路锁存脉冲输入单元01是能接受多个外部多路脉冲信号触发输入的电路,配合多路锁存控制逻辑单元02完成输入信号的仲裁判断并防止丢失多路脉冲信号,并将锁存的计数值存放在计数值寄存器07中,中央处理器cpu10可以通过计数器04的数据通道获得这些值,并根据设计需求访问并利用这些数据。32位长度以上的计数器04及计数控制逻辑是通用的循环计数器,可根据需要调整计数器的长度,并随之调整计数器设计方案,根据多路锁存脉冲输入单元01提供的触发信号锁存当前计数值。主机数据交换接口是与cpu10通信的接口,根据本计数电路的在整个系统中的集成形式使用适当的访问总线,但必须保证数据获取时间在可接受的范围内,在片上系统(soc)中可以是数据访问总线,在分立系统中可以是并行或串行总线。

本发明实施例公开的一种计数电路,其中,增加了多路锁存控制逻辑单元02,多路锁存控制逻辑单元02可以对多路脉冲信号进行逻辑判断和仲裁,计数器04接受符合条件的脉冲信号触发,并触发锁存单元06对计数器04的当前计数值进行锁存,本发明减少了计数器的数量,减少了成本,降低了电路设计的复杂度。

另外一方面,如图2所示,本发明实施例公开了一种计数方法:

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本发明公开的一种计数方法包括以下步骤:

步骤s1,接收多路脉冲信号;

需要说明的是,本发明公开的实施例中,可通过多路锁存脉冲输入单元01接受多个外部脉冲信号输入。

步骤s2,根据设定逻辑电路对所述多路脉冲信号进行逻辑判断并汇集所述多路脉冲信号;

需要说明的是,多路锁存控制逻辑单元02根据设定逻辑电路对多路脉冲信号进行逻辑判断并汇集多路脉冲信号,具体通过预设实现的功能进行组合逻辑判断并确定计数值锁存。

步骤s3,根据汇集的所述多路脉冲信号向计数器发送触发信号,所述计数器接收到所述触发信号后触发锁存单元对所述计数器的当前计数值进行锁存。

另外一方面,本发明实施例还公开了一种芯片,芯片包括上述的计数电路;

具体计数电路的结构与上述实施例相同,在这就不在赘述。

本发明实施例提出的一种计数电路、计数方法及芯片,本发明实施例公开的技术方案可减少现有技术中利用精确计数的一路脉冲信号去调整另一路或多路精确度不高的脉冲,或利用精确计数的一路脉冲信号去同步另外一路或多路脉冲信号的计数电路中的计数器数量,现有技术需要多个计数器实现上述功能,本发明只需要一个计数器,减少了计数器的数量,同时也避免了现有技术中设置多个计数器解决同步误差测量或多路脉冲宽度同步调整的技术问题,本发明实施例的计数电路中设置了多路锁存控制逻辑单元对多路脉冲信号的逻辑判断,可以有针对性的触发锁存单元对计数器的当前计数值进行锁存。

虽然,本文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1