专利名称:跨时钟域异步数据处理装置及方法、芯片及其工作方法
技术领域:
本发明涉及数据处理领域,尤其是涉及一种跨时钟域异步数据处理装置以及这种装置的数据处理方法、具有这种装置的芯片以及芯片的工作方法。
背景技术:
打印机作为常见的办公设备,为现代化办公提供了极大的方便。现有的打印机分为喷墨打印机以及激光打印机,喷墨打印机使用容纳有墨水的墨盒作为耗材容器向纸张喷射墨水,以在纸张上形成需要打印的文字或图案;激光打印机则使用容纳有碳粉的碳粉盒作为耗材容器在介质上形成需要打印的文字或图案。参见图1,现有一种彩色喷墨打印机具有机壳11,图1所示的喷墨打印机省略了机壳11的托板。机壳11内设有喷墨打印机的机芯12,并设有一根滑杆,打印字车14在电机 (图1中不可见)的带动下沿着滑杆往复运动。打印字车14内设有转接板(图1中不可见), 转接板通过排线13与机芯12进行通讯。打印字车14上可拆卸地安装有多个墨盒15,不同墨盒15内容纳有不同颜色的墨水。墨盒15的结构如图2所示。墨盒15具有壳体16,壳体16围成容纳墨水的腔体,腔体的下端设有出墨口 17,腔体内的墨水通过出墨口 17流出,并向打印字车14的供墨针供墨。墨盒15壳体16的外壁上安装有一块芯片18,芯片18具有基板,基板的一侧设有多个电触点19,用于与转接板电连接。基板的另一侧设有与电触点19电连接的电子模块 (图2中不可见)。参见图3,现有碳粉盒具有壳体21,壳体21围成容纳碳粉的腔体,壳体的外壁上设有一个芯片安装位22,芯片23安装于芯片安装位22上。与墨盒的芯片类似,碳粉盒的芯片 23也具有基板,基板上设有作为通讯单元的电触点24,用于与激光打印机进行数据交换。 并且,基板的另一侧设有与电触点M电连接的电子模块。现有墨盒芯片或碳粉盒芯片的电子模块大多设有微控制器等器件,并设有大量的逻辑运算器,构成复杂的数字电路系统,并实现多种复杂的功能。在这样复杂的电路系统中,单一时钟信号已经很难满足芯片的工作要求,因此现有的芯片设计中越来越多采用多时钟信号的设计方案。不同的数据在不同时钟域下被不同的时钟信号所采样,形成不同的数据信号,但芯片需要对不同的数据信号进行处理,因此,现有的芯片大多设有跨时钟域的异步数据处理装置,其电路图如图4所示。跨时钟域异步数据处理装置设有数据采样单元DFFl,其为D型触发器,其数据信号输入端接收数据D1,时钟信号输入端接收第一时钟域下的第一时钟信号CK1,并在第一时钟信号CKl下对数据Dl进行采样,获得第一数据信号Ql,第一数据信号Ql输出至逻辑运算单元Ml,逻辑运算单元Ml将第一数据信号Ql与数据D进行逻辑运算,获得数据D2。数据D2输出至数据采样单元DFF2,数据采样单元DFF2在第二时钟域下的第二时钟信号CK2下对数据D2进行采样,获得第二数据信号Q2。最后,第一数据信号Ql与第二数据信号Q2均输入至逻辑运算单元M2,逻辑运算单元M2对第一数据信号Ql与第二数据信号Q2进行逻辑运算。然而,数据D2与第二时钟信号CK2之间没有严格的时序关系,如图5所示,当数据 D2处于高电平状态与低电平状态的过度阶段时,第二时钟信号CK2正好对数据D2进行采样,这样采样后的第二数据信号Q2将处于亚稳态状态,如图5中的A段所示。此外,第一数据信号Ql经过逻辑运算单元Ml的逻辑运算后,数据D2可能会因延时而出现毛刺,若图5中B点所示,若此时第二时钟信号CK2正好对数据D2采样,则导致采样得到的第二数据信号Q2出错,影响数据处理装置的精确性。因此,公开号为CN101009487A的发明专利申请公开了一种名为“跨时钟域异步数据处理、异步数据跨时钟域的方法及装置”,该装置包括有同步化处理单元,将输入逻辑运算单元前的所有数据均经过同一时钟信号的采样,确保送进逻辑运算单元的所有数据均在同一时钟域下,从而避免出现亚稳态的情况。但是,该方法仅是使用同一时钟信号对所有的数据信号进行同一时钟域下的采样,但不同时钟域下的时钟信号之间也没有严格的时序关系,也就是不同时钟域下的时钟信号之间没有经过同步处理,数据在被不同时钟域下的时钟信号采样后,仍可能会出现数据同步不一致的问题,影响到数据处理装置对数据处理的精确性。数据处理装置的数据处理精确性会影响到芯片的工作稳定性,因此提高跨时钟域异步数据数据处理装置的数据处理精确性实属必要。
发明内容
本发明的主要目的是提供一种数据处理精确性较高的跨时钟域异步数据处理装置。本发明的另一目的是提供一种数据处理同步性较好的跨时钟域异步数据处理方法。本发明的再一目的是提供一种工作稳定性较高的芯片。本发明的又一目的是提供上述芯片的工作方法。为实现上述的主要目的,本发明提供的跨时钟域异步数据处理装置包括第一数据采样单元,采集数据并获得第一时钟域下的第一数据信号;第二数据采样单元,采集数据并获得第二时钟域下的第二数据信号;逻辑运算单元,接收第一数据信号以及第二数据信号并进行逻辑运算;还包括时钟信号同步单元,对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,获得第一同步时钟信号和/或第二同步时钟信号,第一数据采样单元及第二数据采样单元中至少一个在第一同步时钟信号或第二同步时钟信号下采集数据。由上述方案可见,跨时钟域异步数据处理装置对第一时钟域下的第一时钟信号及第二时钟域下的第二时钟信号进行同步处理,这样所有的时钟信号均得到同步,采样获得的数据信号也会处于同步状态,跨时钟域异步数据处理的精确性好。一个优选的方案是,跨时钟域异步数据处理装置还包括用于产生基准时钟信号的基准时钟信号产生单元,基准时钟信号的频率大于或等于第一时钟信号频率的二倍,且基准时钟信号的频率也大于或等于第二时钟信号频率的二倍,时钟信号同步单元在基准时钟信号下对第一时钟信号及第二时钟信号进行采样。
由此可见,使用一个公共的基准时钟信号对第一时钟信号及第二时钟信号进行采样,且基准时钟信号的频率均大于或等于其他时钟频率的二倍,能使得基准时钟信号精确地对其他时钟芯片进行采样,且采样的效果理想。进一步的方案是,基准时钟信号的周期大于或等于数据在跨时钟域异步数据处理装置内传输的最长延时时间。可见,将基准时钟芯片的周期设置成大于最长延时时间,能够确保数据采样后不受数据处理装置自身延时的影响,从而确保数据处理的精确性。为实现上述的另一目的,本发明提供的跨时钟域异步数据处理方法包括由第一数据采样单元采集数据并获得第一时钟域下的第一数据信号,由第二数据采样单元采集数据并获得第二时钟域下的第二数据信号,由逻辑运算单元接收第一数据信号以及第二数据信号并进行逻辑运算,并且,采集数据前,由时钟信号同步单元对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,并获得第一同步时钟信号和/或第二同步时钟信号,第一数据采样单元及第二数据采样单元中至少一个在第一同步时钟信号或第二同步时钟信号下采集数据。由上述方案可见,使用时钟信号同步装置对不同时钟域下的时钟信号进行同步处理,数据在经过同步处理后的多个时钟信号下被采集,数据的同步性更好,跨时钟域异步数据处理装置的数据处理精确性更高。为实现上述的再一目的,本发明提供的芯片包括基板,基板上设有电子模块,电子模块设有跨时钟域异步数据处理装置,该装置具有第一数据采样单元,采集数据并获得第一时钟域下的第一数据信号;第二数据采样单元,采集数据并获得第二时钟域下的第二数据信号;逻辑运算单元,接收第一数据信号以及第二数据信号并进行逻辑运算;还包括时钟信号同步单元,对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,获得第一同步时钟信号和/或第二同步时钟信号,第一数据采样单元及第二数据采样单元中至少一个在第一同步时钟信号或第二同步时钟信号下采集数据。由此可见,芯片内的多个时钟域下的时钟信号均经过同步处理后再对数据进行采样,数据采样得到的数据信号同步性较好,芯片的数据处理精确性好,工作稳定性也得以提尚ο为实现上述的又一目的,本发明提供的芯片工作方法,该芯片具有基板,基板上设有电子模块,该电子模块对跨时钟域的异步数据进行处理,该方法包括由第一数据采样单元采集数据并获得第一时钟域下的第一数据信号,由第二数据采样单元采集数据并获得第二时钟域下的第二数据信号,由逻辑运算单元接收第一数据信号以及第二数据信号并进行逻辑运算,并且,采集数据前,由时钟信号同步单元对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,并获得第一同步时钟信号和/或第二同步时钟信号, 第一数据采样单元及第二数据采样单元中至少一个在第一同步时钟信号或第二同步时钟信号下采集数据。可见,芯片通过对多个时钟域下的多个时钟信号进行同步处理后,再由多个同步时钟信号分别对数据进行采样,采样获得的数据信号同步性较好,芯片的数据处理更加精确,且芯片的工作稳定性更好。
图1是现有一种喷墨打印机的结构图。图2是现有墨盒的结构放大图。图3是现有一种碳粉盒的结构分解图。图4是现有一种跨时钟域异步数据处理装置的电原理图。图5是图1所示跨时钟域异步数据处理装置中Dl、CKl、Ql、D2、CK2以及Q2的波形图。图6是本发明跨时钟域异步数据处理装置第一实施例的电原理图。图7是本发明跨时钟域异步数据处理装置第一实施例中CK、D11、D1A、CK1、CK1A、 Q11、D12、CK12、CK2A 以及 Q12 的波形图。图8是本发明跨时钟域异步数据处理装置第二实施例的电原理图。以下结合附图及实施例对本发明作进一步说明。
具体实施例方式本发明的芯片可以是安装在喷墨打印机使用的墨盒上,也可以是安装在激光打印机使用的碳粉盒上,还可以是应用于其他领域的芯片。第一实施例
本实施例的芯片是墨盒芯片,其具有一块基板,基板的一面设有作为通讯单元的多个电触点,用于与喷墨打印机的电触点连接。当然,若喷墨打印机与耗材芯片之间为无线通讯,则通讯单元为用于无线通讯的天线。在基板的另一面设有与电触点连接的电子模块,电子模块具有微控制器以及微控制器的外围电路,包括滤波电路、延时电路等。电子模块需要对多个时钟域下的数据进行处理,因此设有跨时钟域异步数据处理装置,本实施例的数据处理装置电原理图如图6所示。本实施例的跨时钟域异步数据处理装置具有基准时钟信号产生单元CLK,产生基准时钟信号CK,用于对其他的时钟信号进行同步处理。跨时钟域异步数据处理装置还设有数据采样单元DFFl 1,其为D型触发器,其数据信号输入端接收数据Dl 1,时钟信号输入端接收基准时钟信号CK,也就是数据采样单元DFFll是在基准时钟信号CK下对数据Dll进行采样,得到数据信号D1A。本实施例还设有时钟信号同步单元,其包括D型触发器DFF12、DFF14,其中触发器 DFF12的数据信号输入端接收第一时钟域的时钟信号CK11,时钟信号输入端接收基准时钟信号CK,也就是触发器DFF12在基准时钟信号CK下对第一时钟信号CKl 1进行采样,得到第一同步时钟信号CK1A。数据信号DlA被输入到数据采样单元DFF13,在第一时钟域的第一同步时钟信号 CKlA下被采样,获得第一时钟域下的数据信号Q11。数据信号Qll分别被传送至逻辑运算单元Mll以及M12,并与其他数据信号进行逻辑运算。D型触发器DFF14作为时钟信号同步单元,用于对第二时钟域下的第二时钟信号 CK12进行同步,其数据信号输入端接收第二时钟信号CK12,时钟信号输入端接收基准时钟信号CK,在基准时钟信号CK下对第二时钟信号CK12进行采样,得到第二时钟域下的第二同步时钟信号CK2A。
逻辑运算单元Ml为逻辑运算电路,对数据信号Qll及数据D进行特定的逻辑运算,如与非、或非、异或等。当然,数据D应当是属于第一时钟域或第二时钟域下的数据,其自身就与第一时钟信号CKll或第二时钟信号CK12同步,因此无需再进行同步处理。逻辑运算单元Ml对数据信号Qll采样后获得数据D12。数据采样单元DFF15也是D型触发器,其在第二同步时钟信号CK2A下对数据D12 进行采样,获得第二时钟域下的第二数据信号Q12,因此数据采样单元DFF15的数据信号输入端接收数据D12,时钟信号输入端接收第二同步时钟信号CK2A。最后,逻辑运算单元M2对第一时钟域下的数据信号Qll以及第二时钟域下的数据信号Q12进行逻辑运算。可见,本实施例中,由基准时钟信号产生单元CLK生成基准时钟信号CK,并由基准时钟信号CK对第一时钟域下的第一时钟信号CKll及第二时钟域下的第二时钟信号CK12 进行采样,分别获得第一同步时钟信号CKlA以及第二同步时钟信号CK2A,再分别由数据采样单元DFF13、DFF15在第一同步时钟信号CKlA以及第二同步时钟信号CK2A下分别对数据信号DlA及数据D12进行采样。为了能够精确地对第一时钟信号CKll及第二时钟信号CK12进行采样,基准时钟信号CK的频率应该大于或等于第一时钟信号CKll及第二时钟信号CK12中任一个的二倍。 并且,基准时钟信号CK的周期还需要大于或等于数据在跨时钟域异步数据处理装置内传输的最长延时时间,这样能够确保数据被采样后不受跨时钟域异步数据处理装置自身延时的影响。从图7可见,由于采样数据信号D1A、D12的时钟信号是经过同步处理的第一同步时钟信号CKlA与第二同步时钟信号CK2A,且数据信号DlA与D12均是在基准时钟信号CK 同步下获得的数据,即数据信号D1A、D12以及第一同步时钟信号CK1A、第二同步时钟信号 CK2A均与基准时钟信号CK保持同步,因此能够有效避免亚稳态情况的出现,且即使数据信号因逻辑运算的延时而出现毛刺,如图7中C段所示,该毛刺不与第二同步时钟信号CK2A 同步,不易被第二同步时钟信号CK2A所采样。可见,本实施例能够有效避免采样出错的情况。第一实施例中,数据D是属于第一时钟域或第二时钟域的数据,若数据D不属于第一时钟域或第二时钟域,则需要对数据D进行采样。第二实施例
本实施例具有基板,基板上设有电触点及电子模块,电子模块具有微控制器及外围电路,同时设有跨时钟域异步数据处理装置,该装置的电原理图如图8所示。跨时钟域异步数据处理装置具有基准时钟信号产生单元CLK,产生基准时钟信号 CK,作为时钟信号同步单元的D型触发器DFF22、DFF25分别在基准时钟信号CK下对第一时钟域的第一时钟信号CK21及第二时钟域的第二时钟信号CK22进行采样,分别获得第一同步时钟信号CKlB与第二同步时钟信号CK2B。数据采样单元DFF21、DFF24分别在基准时钟信号CK下对数据D21及数据D进行采样,获得采样后的数据信号D2A及D2B,数据信号D2A被数据采样单元DFF23在第一同步时钟信号CKlB下进行采样,获得第一时钟域下的数据信号Q21。逻辑运算单元M21对数据信号Q21及D2B进行逻辑运算,获得数据D22。由于数据信号Q21与D2B均与基准时钟信号CK同步,因此两个数据的逻辑运算更为精确。数据采样单元DFM6在第二同步时钟信号CK2B下对数据D22进行采样,获得第二时钟域下的数据信号Q22,逻辑运算单元M22对数据信号Q21及Q22进行逻辑运算。当然,本实施例的基准时钟信号CK的频率需要大于或等于第一时钟信号CK21与第二时钟信号CK22中任一个的二倍,且周期需要大于数据在跨时钟域异步数据处理装置传送的最大延时时间。由于芯片内的多个时钟域下的多个时钟信号均被基准时钟信号CK所采样,也就是所有时钟信号均与基准是指信号CK同步,确保采集的数据信号均相对于基准时钟信号 CK同步,芯片数据处理更为精确,工作稳定性更好。当然,本发明具体实施时,不一定需要设置新的基准时钟信号,可以使用第一时钟信号或第二时钟信号中频率较高的一个最为基准时钟信号,并使用该基准时钟信号对另一个时钟信号进行采样,这样芯片中所有的数据也与该基准时钟信号同步。由于跨时钟域异步数据处理装置中设置信号同步单元仅对一个时钟信号进行同步处理,结构简单。当然,作为基准时钟信号的时钟信号频率最好是另一个时钟信号频率的二倍或二倍以上,这样基准时钟信号能够精确地采样另一个时钟信号。当然,上述实施例仅是本发明较佳的实施方案,实际应用时还可以有更多的变化, 例如,芯片内具有三个以上的时钟域,则基准时钟信号需要对多个时钟域下的时钟信号分别进行采样,确保所有使用的时钟信号均与基准时钟信号同步;或者,数据采样单元、时钟信号同步单元采用其他触发器或采样电路替代D型触发器,这样的改变同样可以实现本发明的目的。最后需要强调的是,本发明不限于上述实施方式,如数据采样单元的改变、时钟信号同步单元的改变、逻辑运算单元的改变等变化也应该包括在本发明权利要求的保护范围内。
权利要求
1.跨时钟域异步数据处理装置,包括第一数据采样单元,采集数据并获得第一时钟域下的第一数据信号; 第二数据采样单元,采集数据并获得第二时钟域下的第二数据信号; 逻辑运算单元,接收所述第一数据信号以及所述第二数据信号并进行逻辑运算; 其特征在于时钟信号同步单元,对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,获得第一同步时钟信号和/或第二同步时钟信号;所述第一数据采样单元及所述第二数据采样单元中至少一个在所述第一同步时钟信号或所述第二同步时钟信号下采集数据。
2.根据权利要求1所述的跨时钟域异步数据处理装置,其特征在于 所述第一时钟信号的频率大于或等于所述第二时钟信号的频率的二倍;所述时钟信号同步单元在所述第一时钟信号下对所述第二时钟信号进行采样。
3.根据权利要求1所述的跨时钟域异步数据处理装置,其特征在于还包括用于产生基准时钟信号的基准时钟信号产生单元,所述基准时钟信号的频率大于或等于所述第一时钟信号频率的二倍,且所述基准时钟信号的频率也大于或等于所述第二时钟信号频率的二倍;所述时钟信号同步单元在所述基准时钟信号下对所述第一时钟信号及所述第二时钟信号进行采样。
4.根据权利要求3所述的跨时钟域异步数据处理装置,其特征在于所述基准时钟信号的周期大于或等于数据在跨时钟域异步数据处理装置内传输的最长延时时间。
5.根据权利要求3或4所述的跨时钟域异步数据处理装置,其特征在于所述时钟信号同步单元为触发器,所述触发器的时钟信号输入端接收所述基准时钟信号,所述触发器的数据信号输入端接收所述第一时钟信号或所述第二时钟信号。
6.跨时钟域异步数据处理方法,包括由第一数据采样单元采集数据并获得第一时钟域下的第一数据信号; 由第二数据采样单元采集数据并获得第二时钟域下的第二数据信号; 由逻辑运算单元接收所述第一数据信号以及所述第二数据信号并进行逻辑运算; 其特征在于采集数据前,由时钟信号同步单元对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,并获得第一同步时钟信号和/或第二同步时钟信号,所述第一数据采样单元及所述第二数据采样单元中至少一个在所述第一同步时钟信号或所述第二同步时钟信号下采集数据。
7.根据权利要求6所述的跨时钟域异步数据处理方法,其特征在于 所述第一时钟信号的频率大于或等于所述第二时钟信号的频率的二倍;所述时钟信号同步单元在所述第一时钟信号下对所述第二时钟信号进行采样。
8.根据权利要求6所述的跨时钟域异步数据处理方法,其特征在于采集数据前,由基准时钟信号产生单元产生基准时钟信号,所述基准时钟信号的频率大于或等于所述第一时钟信号频率的二倍,所述基准时钟信号的频率也大于或等于所述第二时钟信号频率的二倍,且所述基准时钟信号的周期大于或等于数据在跨时钟域异步数据处理装置内传输的最长延时时间,所述时钟信号同步单元在所述基准时钟信号下对所述第一时钟信号及所述第二时钟信号进行采样。
9.芯片,包括基板,所述基板上设有电子模块,所述电子模块设有跨时钟域异步数据处理装置,该装置具有第一数据采样单元,采集数据并获得第一时钟域下的第一数据信号; 第二数据采样单元,采集数据并获得第二时钟域下的第二数据信号; 逻辑运算单元,接收所述第一数据信号以及所述第二数据信号并进行逻辑运算; 其特征在于该装置还包括时钟信号同步单元,对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,获得第一同步时钟信号和/或第二同步时钟信号;所述第一数据采样单元及所述第二数据采样单元中至少一个在所述第一同步时钟信号或所述第二同步时钟信号下采集数据。
10.芯片的工作方法,该芯片具有基板,所述基板上设有电子模块,所述电子模块对跨时钟域的异步数据进行处理,该方法包括由第一数据采样单元采集数据并获得第一时钟域下的第一数据信号; 由第二数据采样单元采集数据并获得第二时钟域下的第二数据信号; 由逻辑运算单元接收所述第一数据信号以及所述第二数据信号并进行逻辑运算; 其特征在于采集数据前,由时钟信号同步单元对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,并获得第一同步时钟信号和/或第二同步时钟信号,所述第一数据采样单元及所述第二数据采样单元中至少一个在所述第一同步时钟信号或所述第二同步时钟信号下采集数据。
全文摘要
本发明提供跨时钟域异步数据处理装置及方法、芯片及其工作方法,该装置包括第一数据采样单元,采集数据并获得第一时钟域下的第一数据信号;第二数据采样单元,采集数据并获得第二时钟域下的第二数据信号;逻辑运算单元,接收第一数据信号以及第二数据信号并进行逻辑运算;时钟信号同步单元,对第一时钟域的第一时钟信号和/或第二时钟域的第二时钟信号进行采样,获得第一同步时钟信号和/或第二同步时钟信号,第一数据采样单元及第二数据采样单元中至少一个在第一同步时钟信号或第二同步时钟信号下采集数据。该方法是使用一个基准时钟信号对其他时钟域下的时钟信号进行同步,再对数据进行采样。本发明能确保数据的同步性,提高数据处理的精确性。
文档编号H03K19/173GK102510281SQ20111033115
公开日2012年6月20日 申请日期2011年10月27日 优先权日2011年10月27日
发明者许兰 申请人:珠海天威技术开发有限公司