高频分频器状态纠正的利记博彩app

文档序号:7537643阅读:427来源:国知局
专利名称:高频分频器状态纠正的利记博彩app
技术领域
本发明一般涉及错误纠正,更具体地,涉及状态机电路中的错误纠正。
背景技术
有一种称为高频分频器(high frequency divider)的增量器。在高频分频器中,增量器内的值以预定方式改变,但不一定通过数学相加或相减。例如,000000可以是第一状态,000001可以是第二个数,000011可以是第三,000111可以是第四,001111可以是第五、011111可以是第六,111111可以是第七,011111可以是第八状态,等等。这些值可以表示方波的生成,尽管其它使用也有可能。从状态值到状态值的具体增加是高频分频器的内部逻辑的函数。
然而,高频分频器存在问题。一个这样的问题是系统是否是以无效状态开始。例如,如果以状态010101开始怎么办?这可能发生在系统第一次加电时,因为系统内的锁存器的状态可能是不确定的。或者,可能发生诸如电磁脉冲的灾难性事件。如果其发生,则可以迫使通过8分频(divide)计数器内的状态进入不希望有(undesired)的状态。
然而,在传统的技术中,如果保持为不纠正,则状态将从一个不希望有的状态循环到另一个不希望有的状态,而总是不变为期望(desired)的状态和返回到轨道上。可以复位该系统,并可以使预先加载的“种子”状态进入到系统。然而,如果初始“种子”状态由于某种原因而不准确,则这在时间方面上是昂贵的主张,并且错误可逐渐产生。如果电磁脉冲将电路内的状态改变到无效状态或序列,则应该删除这个无效状态或序列,其花费了额外的时间和电路区,并且造成系统复位,这也花费额外的时间。

发明内容
因此,需要以解决与现有技术相关联的至少部分问题的方式来确保在一定数量的状态转换之后到达预期状态。
本发明提供了一种状态电路。第二触发器被耦接到第一触发器。状态纠正电路被耦接到第二触发器的输出。第三触发器被耦接到状态纠正电路的输出。第四触发器被耦接到第三触发器的输出。
本发明还提供了状态纠正。从触发器接收状态电路中的第一值。将所接收的值传送到第二触发器。如果出现错误条件,则在第二触发器内变更所接收的值。将所接收的值传送到第三触发器。在一方面,被传送到第三触发器的接收值包括未变更的接收值。另一方面,被传送到第三触发器的接收值包括已变更的接收值。


为了更全面地理解本发明以及其优点,现在参考下面结合附图的详细描述,其中图1A示意性示出所允许的和不允许的8分频状态流;图1B示意性地示出所允许的和不允许的6分频状态流;图2图解具有状态纠正的8分频状态流纠正电路;图3图解传统的D触发器;图4图解了为错误纠正而配置的D触发器;图5图解分频器电路的替换实施例;以及图6图解了图2的触发器的外部和内部状态的各种时序图。
具体实施例方式
在接下来的论述中,陈述了许多特定细节,以便提供对本发明的全面理解。然而本领域技术人员将理解,可以在没有这些特定细节的情况下实践本发明。在其它例子中,已经将公知部件图解为示意图或者框图形式,以便不使本发明遮蔽在不必要的细节中。此外,对于大多数部分,已经省略了有关网络通信、电磁信令技术等的细节,因为认为这样的细节对获得对本发明的全面理解不是必须的,并认为其在本领域的普通技术人员的理解范围之内。
在这个说明书的剩余部分,处理单元(PU)可以是装置中仅有的计算处理器。在这样的情况下,通常将PU称为MPU(主处理单元)。该处理器单元也可以是根据某些方法学或者为给定的计算装置而开发的算法来共享计算负载的许多处理单元中的一个。对于这个说明书的剩余部分,除非另外指示,对处理器的所有引用将使用术语MPU,而不管MPU是装置中仅有的计算部件还是与其它MPU共享的计算元件。
还要注意的是,除非另外指示,可以以硬件或者软件、或者其某些组合来执行这里描述的所有功能。然而,在优选实施例中,除非另外指示,由诸如计算机或者电子数据处理器之类的处理器根据诸如计算机程序代码之类的代码、软件来执行这些功能,和/或由被编码以执行这些功能的集成电路来执行这些功能。
转向图1A,公开了具有允许的和不允许的状态的8分频状态流图。在图1A中,在特别定义的状态或者一组状态出现之后,不允许的状态流转换到允许的状态流。通常,参考图1A,检测到特别定义的非允许的状态,如00110011或者00110000,并且在高频分频器电路内出现值的内部改变,从而将内部D锁存器的状态突跳到期望的状态,如00000001或者10000000,而不是传统技术中的结果00011001或者10011000。
例如,在图1A中,如果在加电时出现不希望有的状态01100111将会怎样?通过电路的内部逻辑(右移,然后将从最右边的位移位并绕回到最左边位的值反相),这将变成第二不允许状态00110011。然后,通过类似的逻辑,这将转换到00011001。然而,图1A的转换解决了这个问题。
现在转向图1B,图解了6分频状态流。在特别定义的状态出现之后,不允许的状态流转换到允许状态流。通常,参考图1B,检测特别定义的不允许状态为001100,电路转换到允许的状态100000,而不是不允许的状态100110。
现在转向图2,图解了8分频状态电路200。D型触发器(DFF)1 215具有从时钟源235输入到其C输入的时钟信号。DFF1 215的Q输出(q1信号状态)耦接到DFF2 220的D输入。DFF1 220的Q输出(q2信号状态)耦接到DFF3 225的D输入。DFF3 225的Q输出(q3信号状态)耦接到DFF4 230的D输入。DFF4 230的Q反相输出(q4信号状态)反馈到并耦接至DFF1 215的D输入。
DFF1、DFF2、DFF3和DFF4 215、220、225、230的Q状态耦接到逻辑操作器210。逻辑操作器210耦接到DFF2 220的门(gate)。在其它实施例中,仅使用触发器215、220、以及225。门存储器205可用于引入时间延迟。否则,将存在基本上同时反馈的问题,并且逻辑状态可能不集中,这是错误条件。这个配置使状态能够从不希望有的状态转换到图1A的期望状态。
现在转向图3,图解了诸如DFF1 215、DFF3 225、以及DFF4 230之类的传统D触发器的内部工作300。如关于触发器图解的,有两个输入输入1(D,用于数据输入)和输入2(C,用于时钟输入)。触发器具有作为存储装置的适用性。触发器DFF3 225实际上包括2个不同的锁存器310和320。
本领域的技术人员将理解,如果通过时钟信号使能触发器,则触发器将把信号数据状态从输入传递到关于数据的输出,或者Q线。然而,如果通过时钟信号使触发器无效,则将不会把输入的D值传播到输出,作为替代,先前存储的D值将是D输入的输出。
在关于DFF1 215的图3中,例如,有两个串联耦接的D锁存器,锁存器310和锁存器320。如果D的输入值是1,并且使能了时钟值,则qint1值也与D值相同,并且qintb值是qint1的反相值。然而,由于逻辑“非”操作器330,使第二D锁存器320无效。这意味着,无论qint值在这个电路中是什么,先前的qint值都是作为Q值而输出的。换言之,当时钟为“高”时,DFF1 215的输出不能改变,因为其“记忆”并输出该先前状态。
然而,例如,在下一个时钟脉冲中,输入时钟脉冲变“低”。因此,输入数据没有从数据输入传播到这个触发器中的Q或者qint输出,并且这个第一D锁存器310保留了先前时钟周期的qint值。然而,因为输入时钟值被反相到“高”,所以第二触发器将qint值传播到输出Q,即值“3”。因此,对于DFF1 215要改变输出状态,至少花费一个完全时钟周期,并且它仅接受来自交替时钟周期的状态作为输入数据。
转回到图2,这意味着在该系统中可使用例如值00000011。在下一个时钟周期,值变为00000001。如上面已说明,存在被图解为无下划线的内部状态(qint1、qint2、qint3)等、和图解为有下划线的状态q1、q2、q3等。因为在DFF4 230的输出上出现的反相,所以状态改变,其中DFF4 230的输出作为数据反馈到DFF1 215的D端口。如通过图1A图解的期望状态转换所看出的,状态步进通过该系统,最后的触发器反相,并将反相的值传输到输入。
然而,如果出现不希望有的状态,则系统200可以如下工作。例如,如果传统的8分频系统以01100111作为其开始状态将会怎样?然后,传统的系统将转换到也为无效状态的00110011,在没有纠正的情况下这将进一步转换到00011001。
然而,将图2的逻辑配置为转换到00000001而不是00011001,这是允许的状态。在图2中,状态00xxxxxx的第二位用于重写这个状态中的接下来的3位,从而变成00000xxx。类似地,无效状态00110000转换到10000000而不是10011000。换言之,第一输出状态(q1)也变成q2内和q2出和q3内,如将在图1A中图解这一点。
系统200检测无效状态可以如下。将输出q1、q2(已反相的)和q3输入到“或”210。当xxxxxxxx(“x”可变)的值为x0x1x0xx时,“或”门输出变为负,输出无效b(invalidb)状态变低,并且使能从不允许状态到允许状态的转换。暂时转向图1A,如图1A所示,这个转换在00110011和00110000二者上都发生,并且只有在这些状态下,才发生到期望状态的转换。
现在转向图4,图解了DFF 220的锁存器410、420的内部工作400,其中DEF 220为逻辑操作器210检测到特定的错误状态条件时出现状态转换的触发器。用“异或”430代替图3的“非”逻辑操作器(反相器)330。如本领域的技术人员所理解的,如果两个值不同,则“异或”给出真值,如果两个输入值相同,则为假值(零值)。在图2的上下文内,这意味着“或”输出对于允许特定的预定义的非允许状态为0,而对于允许的状态或者非特定的非允许状态为1。然后,这将“门”值变为DFF2 220触发器。
在图4中,当“或”门210输出的门值是“1”,而C值输入是“1”时,输出值是“0”,这意味着触发器220如现有技术的触发器一样工作,而“异或”如反相器一样工作。类似地,如果门值是“1”,且C值输入是“0”,则输出值是“1”,这意味着“异或”逻辑操作器430所起的作用如对C值的反相器。
在图4中,当门值是“0”,且C值输入是“1”时,“异或”输出值是“1”,这意味着触发器220不象现有技术触发器一样工作,并且将相同的D值通过D1锁存器1和D锁存器2二者传播。类似地,如果门值是“0”,且C值输入是“0”,则“异或”输出值是“0”,将其作为C输入发送到D触发器2 420,并且将先前状态存储在D1锁存器1和D2锁存器2中。
换言之,当“或”210的输出、到“异或”430的门输入是0时,D锁存器1 410和D锁存器2 420二者都具有DFF2 220内的相同时钟值。在图2的上下文中,这意味着当图4的门3为0时,对于负时钟脉冲,qint值仍旧没有改变。然而,与现有技术不同,Q输出值也没有改变。因此,qint和q值都被“锁定”了,这与图3不同,而Q输出值没有改变。
此外,如果输入时钟脉冲为正,且门输入是零,则输入D值传播通过D锁存器410、420二者,通过qint2,并然后通过Q输出。此外,因为时钟状态在输入到DFF3 225时为正,所以第三触发器q3int的qint也等于q2。换言之,D值变为Q,这在现有技术中不是这样。
换言之,对于门值0,和正时钟周期,将q1值传播到qint2值和q2输出值,以及q3int值。在图1A的上下文中,这意味着代替00110000变成不允许状态10011000,其变成10000000,从而从不希望有的状态强制进入到期望的状态。同样,因为q1值得到传播并被复制到q3int,所以在00110011之后本应该为00011001的状态被代替为00000001。
现在转向到图5,图解了分频器电路500的替换实施例。D型触发器(DFF)1 510具有输入到其C输入的时钟信号。DFF1 510的Q输出(q1信号状态)耦接到DFF2 520的D输入。DFF2 520的Q输出(q2b信号状态)耦接到电路550。电路550的输出耦接到DFF3 530的D输入。DFF3 530的Q输出(q3信号状态)耦接到DFF4 540的D输入。可以通过选择器512、522、532、542来选择输出q1、q2、q3和q4,从而将电路500配置为2、4、6、或者8分频纠正电路。
分频器纠正电路550耦接在DFF2 520的反相器输出(qb2)与到DFF3 530的数据输入之间。本邻域的技术人员将理解,跨CMOS电路的漏极和源极的电压是耦接到源极和漏极的节点之间的电压差、以及CMOS是接通还是关断的函数。纠正电路550是与接下来的真值表对应的逻辑的一个实施例。
表CMOS逻辑

在上面的真值表中,采用q1b(DFF1 510的反相输出),采用Q2b(DFF2520的反相输出),以及采用q3b(DFF3 530的反相输出)。在图5中,将电路550耦接在Q2b的反相输出和到D3的数据输入之间,从而产生D3new值。电路550可以基本上如下工作。
在系统500中,将q1B(已反相)值、q2b(已反相)值、以及q3b(已反相)值输入到电路550。如果q1b是零,则D3new等于q2B取反。q3或q3b的状态不是上面真值表中的因子。
然而,如果q1b等于1,并且如果q2b等于0,并且如果q3b等于0,则将D3new设置为等于1。因此,错误纠正出现。
此外,在期望的状态中没有将产生到不希望有的状态的“跳跃”的状态。例如,如果q1和q3等于期望状态0,则这将是x0xxx0xx。通过图5的真值表的定义,这将变成x0x0x0xx或者x0x1x0xx。换言之,如果q1和q2为0,则然后q2自动为0,因此换言之,不存在将产生问题的状态。
本领域的技术人员将理解,跨CMOS电路的漏极和源极的电压是电路的全体功能、以及该电路是接通还是关断的函数。在550中,这是与接下来的真值表对应的逻辑的一个实施例。该真值表表示Q1不等于D2new的两个条件。
在系统500中,我们使用q1b(已反相)值、以及q3b(已反相)值,因此当q1b等于D3new时,存在状态的实际改变。这发生在q1为0且q3为0时。因此,在这也为零之后输入到下一个触发器的下一个值也为零,而q3和qint3都变成0而不是1,即Q1的值。在图1中,00011001的相关数变成00000001,而10011000变成10000000。换言之,对于值为1的q1和q3输出值,q3int变成0。
此外,在期望的状态中没有将产生到不希望有的状态的“跳跃”的状态。例如,如果q1和q3等于期望状态中的0,则这将是x0xxx0xx。通过图5的真值表的定义,然后,这将变成x0x0x0xx。通过在这个图中进行的这种分频,在期望的状态中,如果q1和q3为0,则q2不得不为0。因此,没有会产生问题的状态。
现在转向图6,图解了图的操作的仿真波形图。如图所示,即使q1至q4波形开始于不正确的状态,其在几个时钟转换之后也转换到正确的1和0序列中。
可以理解,本发明可以采取许多形式和实施例。因此,在不脱离本发明的精神和范围的情况下,可以在前面进行几种变化。这里概述的能力允许各种编程模型的可能性。不应该将这个公开理解为优选任何具体编程模型,而是代替指向在其上可以建立这些编程模型的基础机制。
已经通过参考本发明的某些优选实施例而如此描述了本发明,要注意,所公开的实施例是说明性的,而不是对本质的限制,并且,在前述公开中构思了宽范围的变更、调整、改变、以及替换,在一些例子中,本发明的一些特征可以在没有其它特征的对应使用的情况下采用。基于优选实施例的前面描述的回顾,本领域的技术人员可考虑到许多这样的变更和调整是可取的。因此,宽广地、且以与本发明的范围一致的方式解释所附权利要求是适当的。
工业适用性本发明可应用于进行状态纠正的技术。
权利要求
1.一种状态电路,包括第一触发器;第二触发器,耦接到第一触发器;状态纠正电路,耦接到第二触发器的输出;第三触发器,耦接到状态纠正电路的输出;以及第四触发器,耦接到第三触发器的输出。
2.根据权利要求1的状态电路,其中所述状态纠正电路被配置为当状态电路处于预定状态时使第二触发器的输出反相。
3.根据权利要求1的状态电路,其中所述状态电路是六分频纠正电路。
4.根据权利要求1的状态电路,其中所述状态电路是八分频纠正电路。
5.根据权利要求1的状态电路,其中至少一个触发器是D型触发器。
6.根据权利要求1的状态电路,其中第一触发器被配置为接收来自状态电路的另一个触发器的输出。
7.根据权利要求1的状态电路,其中第四触发器的输出被耦接到第一触发器的输入。
8.一种进行状态纠正的计算机程序产品,其中该计算机程序产品具有在其上包含了计算机程序的介质,该计算机程序包括用于使能第一触发器的计算机代码;用于将第二触发器耦接到第一触发器的计算机代码;用于将状态纠正电路耦接到第二触发器的输出的计算机代码;用于将第三触发器耦接到状态纠正电路的输出的计算机代码;以及用于将第四触发器耦接到第三触发器的输出的计算机代码。
9.一种进行状态纠正的处理器,该处理器包括计算机程序,其中该计算机程序包括用于使能第一触发器的计算机代码;用于将第二触发器耦接到第一触发器的计算机代码;用于将状态纠正电路耦接到第二触发器的输出的计算机代码;用于将第三触发器耦接到状态纠正电路的输出的计算机代码;以及用于将第四触发器耦接到第三触发器的输出的计算机代码。
10.一种状态电路,包括第一触发器;第二触发器,耦接到第一触发器;以及第三触发器,耦接到第二触发器,其中,所述第二触发器被配置为将第二触发器的输入传播到第二触发器的输出来作为错误信号的函数。
11.根据权利要求10的状态电路,其中所述状态电路是六分频纠正电路。
12.根据权利要求10的状态电路,其中所述状态电路是八分频纠正电路。
13.根据权利要求10的状态电路,其中至少一个触发器是D型触发器。
14.根据权利要求10的状态电路,其中错误信号是通过“或”逻辑产生的。
15.根据权利要求14的状态电路,其中“或”逻辑对于至少一个特别定义的无效状态转换到负。
16.根据权利要求10的状态电路,其中所述第一触发器被配置接收来自状态电路的又一个触发器的输出。
17.根据权利要求10的状态电路,其中第四触发器耦接到第三触发器的输出,并且该第四触发器的输出耦接到第一触发器的输入。
18.根据权利要求10的状态电路,其中所述触发器包括多个锁存器,其中所述多个锁存器中的至少一个具有被耦接到“异或”逻辑和错误信号的时钟输入。
19.一种用于状态纠正的方法,包括从状态电路中的触发器接收第一值;将所接收的值传送到第二触发器;如果错误条件出现,则在第二触发器内变更所接收的值;以及将所接收的值传送到第三触发器。
20.根据权利要求19的方法,其中将所接收的值传送到第三触发器还包括传送未变更的所接收值。
21.根据权利要求19的方法,其中将所接收的值传送到第三触发器还包括传送已变更的所接收值。
22.一种进行状态纠正的计算机程序产品,该计算机程序产品具有在其上包含了计算机程序的介质,该计算机程序包括用于从状态电路中的触发器接收第一值的计算机代码;用于将所接收的值传送到第二触发器的计算机代码;用于如果错误条件出现就在第二触发器内变更所接收的值的计算机代码;以及用于将已变更的值传送到第三触发器的计算机代码。
23.一种进行状态纠正的处理器,该处理器包括计算机程序,其中该计算机程序包括用于从状态电路中的触发器接收第一值的计算机代码;用于将所接收的值传送到第二触发器的计算机代码;用于如果错误条件出现就在第二触发器内变更所接收的值的计算机代码;以及用于将已变更的值传送到第三触发器的计算机代码。
全文摘要
本发明提供了分频器的状态纠正。第一触发器耦接到第二触发器。状态纠正电路耦接到第二触发器的输出。第三触发器耦接到状态纠正电路的输出。第四触发器耦接到第三触发器的输出。在本发明中,从第一触发器接收状态电路中的第一值。将所接收的值传送到第二触发器。如果错误条件出现,则在第二触发器内变更所接收的值。将所接收的值传送到第三触发器。
文档编号H03K3/286GK1842964SQ200580000830
公开日2006年10月4日 申请日期2005年5月20日 优先权日2004年5月20日
发明者戴维·W·伯斯特勒, 埃里克·J·卢克斯, 木原广巳, 詹姆斯·D·斯特罗姆 申请人:索尼计算机娱乐公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1