CN115220528B - 时钟获得方法、装置、芯片、电子设备及存储介质 - Google Patents
时钟获得方法、装置、芯片、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115220528B CN115220528B CN202211140171.5A CN202211140171A CN115220528B CN 115220528 B CN115220528 B CN 115220528B CN 202211140171 A CN202211140171 A CN 202211140171A CN 115220528 B CN115220528 B CN 115220528B
- Authority
- CN
- China
- Prior art keywords
- clock
- target
- data
- parameter
- soc
- 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 48
- 230000009471 action Effects 0.000 claims abstract description 30
- 239000000872 buffer Substances 0.000 claims description 61
- 230000000630 rising effect Effects 0.000 claims description 22
- 230000015654 memory Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 13
- 230000001934 delay Effects 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 2
- 230000014759 maintenance of location Effects 0.000 claims 1
- 238000005070 sampling Methods 0.000 description 41
- 101100328957 Caenorhabditis elegans clk-1 gene Proteins 0.000 description 25
- 238000010586 diagram Methods 0.000 description 18
- 230000002093 peripheral effect Effects 0.000 description 18
- 230000003111 delayed effect Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 11
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Information Transfer Systems (AREA)
Abstract
本申请提供了一种时钟获得方法、装置、芯片、电子设备及存储介质,其中,所述方法包括:获取目标数据,所述目标数据来自于第二设备;获取第二设备的设备参数;基于设备参数,得到第一目标时钟,其中在所述第一目标时钟的作用下所述目标数据写入至第一设备;其中,所述基于设备参数,得到第一目标时钟,包括以下其中之一步骤:在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟;在所述设备参数为第二参数的情况下,基于所述第二设备的第二目标时钟,得到所述第一目标时钟。根据本申请,可实现将来自不同类型的外部设备的数据在SOC中的成功写入。
Description
技术领域
本申请涉及信号处理技术领域,尤其涉及一种时钟获得方法、装置、芯片、电子设备及存储介质、计算机程序产品。
背景技术
相关技术中,系统级芯片(SOC,System on a Chip)可与外部设备进行连接,进而可将外部设备中的数据写入至SOC中。在实际应用中,与SOC进行连接的外部设备有多种类型,不同类型的外部设备具有不同的读写特性。同一SOC如何将具有不同读写特性的各类型外部设备中的数据成功写入至SOC成为了亟待解决的技术问题。
发明内容
本申请提供了一种时钟获得方法、装置、芯片、电子设备及存储介质,以至少解决相关技术中存在的以上技术问题。
根据本申请的第一方面,提供了一种时钟获得方法,包括:获取目标数据,所述目标数据来自于第二设备;获取第二设备的设备参数;基于设备参数,得到第一目标时钟,其中在所述第一目标时钟的作用下所述目标数据写入至第一设备;其中,所述基于设备参数,得到第一目标时钟,包括以下其中之一步骤:
在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟;
在所述设备参数为第二参数的情况下,基于所述第二设备的第二目标时钟,得到所述第一目标时钟。
在一可实施方式中,所述在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟,包括:在所述设备参数为第一参数的情况下,对所述第一设备的主时钟进行延时处理,得到所述第一目标时钟。
在一可实施方式中,所述在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟,包括:在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到第三目标时钟,所述第三目标时钟为所述第一设备的主时钟的N倍,其中N为大于等于1的正整数;对所述第三目标时钟进行延时处理,得到所述第一目标时钟。
在一可实施方式中,所述第一设备包括第一目标件,由所述第一目标件基于所述第一设备的主时钟的属性产生所述第三目标时钟。
在一可实施方式中,所述第一设备包括第二目标件,由所述第二目标件对所述第三目标时钟进行延时处理,得到所述第一目标时钟。
在一可实施方式中,所述第一设备包括第一级缓存器,所述目标数据在所述第一目标时钟的作用下被写入至第一级缓存器。
在一可实施方式中,所述第一设备包括第二级缓存器,写入至所述第一级缓存器的所述目标数据在第四目标时钟作用下被写入至所述第二级缓存器;其中,所述第四目标时钟基于对所述第一目标时钟的延迟处理而得到。
根据本申请的第二方面,提供了一种时钟获得装置,包括:第一获取单元,用于获取目标数据,所述目标数据来自于第二设备;第二获取单元,用于获取第二设备的设备参数;第三获取单元,用于基于设备参数,得到第一目标时钟,其中在所述第一目标时钟的作用下所述目标数据写入至第一设备;其中,所述第三获取单元,用于:在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟;或者,在所述设备参数为第二参数的情况下,基于所述第二设备的第二目标时钟,得到所述第一目标时钟。
根据本申请的第三方面,提供了一种芯片,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请所述的方法。
根据本申请的第四方面,提供了一种电子设备,包括前述的芯片。
根据本申请的第五个方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请所述的方法。
本申请的时钟获得方法、装置、芯片、电子设备及存储介质,其中,所述方法包括:获取目标数据,所述目标数据来自于第二设备;获取第二设备的设备参数;基于设备参数,得到第一目标时钟,其中在所述第一目标时钟的作用下所述目标数据写入至第一设备;其中,所述基于设备参数,得到第一目标时钟,包括以下其中之一步骤:在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟;在所述设备参数为第二参数的情况下,基于所述第二设备的第二目标时钟,得到所述第一目标时钟。
根据本申请,在与SOC连接的设备类型不同的情况下,基于不同的方式而得到供外部数据写入至第一设备的第一目标时钟,可得到精准的第一目标时钟,由此保证各类型外部设备中的数据在SOC中的成功写入。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过参考附图阅读下文的详细描述,本申请示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本申请的若干实施方式,其中:
在附图中,相同或对应的标号表示相同或对应的部分。
图1示出了本申请实施例时钟获得方法的实现流程示意图一;
图2示出了本申请实施例时钟获得方法的实现流程示意图二;
图3示出了本申请实施例的电路示意图;
图4示出了本申请实施例的SOC与外部设备DDR之间的通信示意图;
图5示出了本申请实施例的在图4所示的通信示意图下的信号波形示意图;
图6示出了本申请实施例的SOC与外部设备SDR之间的通信示意图;
图7示出了本申请实施例的在图6所示的通信示意图下的信号波形示意图;
图8示出了本申请实施例时钟获得装置的组成结构示意图;
图9示出了本申请实施例一种电子设备的组成结构示意图。
具体实施方式
为使本申请的目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解, “一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
应理解,在本申请的各种实施例中,各实施过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在对本申请实施例的技术方案进行介绍之前,先对本申请实施例可能涉及到的技术术语进行说明:
(1)时钟
诸如SOC、存储器、单片机这类芯片内部存在有各种类型的逻辑门电路,如累加器、选择器、缓存器等。这类芯片的正常运行需要时钟的支持。逻辑门电路在时钟的驱动或触发下方可实现自身的功能。
在芯片内部,至少存在有一个主时钟,通常主时钟是时钟振动电路产生的。除本申请实施例描述的时钟之外,芯片内部包括的其他时钟参见相关技术进行理解。
(2)先入先出队列(FIFO,First Input First Output)
FIFO是一种传统的按序执行方法,先进入的指令先完成并引退,然后才执行第二条指令。在本申请中,FIFO位于SOC内部、作为数据缓存器或存储器使用,用于缓存或存储来自外部设备的数据。
在实际应用中,在FIFO的读时钟的作用下,将FIFO中的数据读取出。在FIFO的写时钟的作用下,将外部数据写入至FIFO中。根据FIFO工作的时钟域,可以将FIFO划分为同步FIFO和异步FIFO。其中,同步FIFO指的是FIFO的读时钟和写时钟均为同一时钟,在时钟上升沿或下降沿到来时,同时发生读操作和写操作。异步FIFO指的是FIFO的读时钟和写时钟为不同的时钟,读时钟和写时钟彼此独立。
本申请实施例中,在无特殊说明的情况下,第一设备为SOC。第二设备为能够与SOC连接的任何合理的外部设备(简称为外设)。如,为同步动态存储器(SDR)、双倍速率同步动态随机存储器(DDR)等各种类型的设备,还如U盘、闪存、硬盘等设备。优选第二设备为SDR或DDR。
外部设备与SOC之间的连接可以是物理上的连接,如通过连接线进行连接。还可以是逻辑上的连接,如通过无线网络进行连接等。优选为物理连接。
可以理解,由于与同一SOC连接的各类型的外部设备具有不同的读写特性,如果想要把各外部设备中存储的数据成功写入至同一SOC,首先需要依据各外部设备的读特性将数据从外部设备中成功读取出,然后寻找一个合适的时机将成功读取出的数据写入至SOC,以避免由于数据还未准备好而造成的无法(成功)写入的问题。
可见,前述的合适时机的准确确定是保证外部设备的数据成功写入至SOC芯片的关键。如果,针对不同类型的外部设备能够给出与各类型外设对应的合适时机,那么就会提高将具有不同读写特性的各类型外部设备中的数据写入至同一SOC的成功率。
在本申请实施例中,可认为前述的合适时机由SOC的第一目标时钟给出,如,合适的时机为第一目标时钟的上升沿到来时刻或下降沿到来时刻。基于此,针对不同的外部设备,如果给出第一目标时钟且给出的第一目标时钟是准确的,那么将会大大提高具有不同读写特性的各类型外部设备中的数据写入至SOC的成功率,或保证外部设备中的数据到SOC中的成功写入。本申请实施例的技术方案能够针对各类型的外部设备,给出准确的第一目标时钟,由此保证各类型外部设备中的数据在SOC中的成功写入。
本申请实施例的时钟获得方法的处理逻辑可部署在SOC中。即,可由SOC、具体是SOC的控制器或处理器来执行本申请实施例的时钟获得方法。
本申请实施例的时钟获得方法,如图1所示,所述方法包括:
S101:获取目标数据,所述目标数据来自于第二设备;
本申请实施例中,目标数据可以是第二设备中存储的数据。可通过接收第二设备发送的数据或读取第二设备中存储的数据而得到目标数据。相对于SOC而言,来自于第二设备的目标数据可视为外部数据。
S102:获取第二设备的设备参数;
本步骤中,设备参数可以是任何能够表征第二设备为何种类型设备的参数,如设备类型,设备名称,设备型号,设备的通信电流、电压等参数中的其中一种或至少两种的组合。
第二设备(外部设备)与第一设备之间可进行接触式或非接触式连接。其中,接触式连接可以是外部设备通过插入至第一设备的指定管脚与第一设备进行连接线的连接。外部设备与第一设备之间通过无线网络、短距离通信网络等进行非接触式的连接。在两种设备进行连接的情况下,第一设备可通过读取前述的几种设备参数中的至少其中一种而获知与自身连接的第二设备的设备类型。
示例性地,第二设备的设备参数可以为SDR外设的设备类型,还可以为DDR外设的设备类型。
S103:在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟,其中在第一目标时钟的作用下目标数据写入至第一设备;
本步骤中,第一参数为表示与第一设备连接的外部设备为SDR的设备参数,如SDR设备的设备类型,设备名称,设备型号,设备的通信电流、电压等参数中的其中一种或至少两种的组合。
本步骤中,在与SOC连接的设备为SDR设备时,基于SOC的主时钟,得到第一目标时钟。第一目标时钟的作用用于供来自于第二设备的目标数据写入至第一设备。
S104:在所述设备参数为第二参数的情况下,基于所述第二设备的第二目标时钟,得到所述第一目标时钟,其中在第一目标时钟的作用下目标数据写入至第一设备;
本步骤中,第二参数为表示与第一设备连接的外部设备为DDR的设备参数,如DDR设备的设备类型,设备名称,设备型号,设备的通信电流、电压等参数中的其中一种或至少两种的组合。
第二设备的第二目标时钟为DDR设备的时钟。在与SOC连接的设备为DDR设备时,基于DDR设备的时钟,得到第一目标时钟,所述第一目标时钟用于将来自于第二设备的目标数据写入至SOC。
S103和S104中,相同时刻,第一设备与SDR和DDR设备中的其中之一设备进行连接。S103和S104的步骤为二选一的步骤。S103和S104可视为基于设备参数,得到第一目标时钟的方案的进一步说明。
为方便描述,第一目标时钟可被称之为采样时钟,在采样时钟的作用下将来自第二设备的目标数据写入至第一设备,以实现外部数据在SOC的顺利写入。其中,在与SOC连接的设备为SDR设备时,采样时钟基于SOC的主时钟而得到。在与SOC连接的设备为DDR设备时,采样时钟基于DDR设备的时钟而得到。
可见,本申请实施例中,与SOC连接的设备类型不同的情况下,用于将外部数据写入至第一设备的采样时钟的获得方式也不相同。这两种情况下的采样时钟的获得方式在工程上可行,易于被推广。
S101~S104中,在与SOC连接的第二设备的设备参数为第一参数的情况下,基于第一设备的主时钟,得到用于供外部数据写入至第一设备的第一目标时钟。在与SOC连接的第二设备的设备参数为第二参数的情况下,基于第二设备的(第二目标)时钟,得到用于供外部数据写入至第一设备的第一目标时钟。与SOC连接的设备类型不同的情况下,基于不同的方式而得到供外部数据写入至第一设备的第一目标时钟。基于不同的方式可得到精准的第一目标时钟,由此保证各类型外部设备中的数据在SOC中的成功写入。
通俗来讲,本申请实施例的技术方案能够针对各类型的外部设备,给出精准或准确的第一目标时钟,由此保证各类型外部设备中的数据在SOC中的成功写入。
此外,还实现了SOC对不同类型外设中数据在读取方面的兼容性。
在一些实施例中,S103在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟的实现方式可以为以下其中之一:
实现方式一:在所述设备参数为第一参数的情况下,对所述第一设备的主时钟进行延时处理,得到所述第一目标时钟。
与实现方式二相比,可直接对第一设备的主时钟进行延时处理,得到采样时钟。在物理上,可采用延时器对第一设备的主时钟进行延时处理。可以理解,SOC在采样时钟的作用下无法将外部数据成功写入至SOC的情形,可能是因为在采样时钟作用下时外部数据未准备好,数据采样为空(采不到数据)。为避免这一问题,需要采样时钟和外部数据的维持(保持)时间相互配合,如此,直接对第一设备的主时钟进行延时不能无限制的延时,需要保证在采样时钟的作用下,外部数据已被准备好。
基于此,可将第一设备的主时钟延时至主时钟的M倍,其中,M为【2.2,3.2】中的任意值,延时该任意倍后的时钟作为采样时钟。其中,2.2、3.2以及2.2和3.2倍之间的任意倍是本申请的发明人付出创造性的劳动而得。这种直接对第一设备的主时钟进行延时处理的方案,可给出精准或准确的第一目标时钟,由此保证外部数据在SOC中的成功写入。
实现方式二:结合图2所示,S103a:基于所述第一设备的主时钟,得到第三目标时钟,所述第三目标时钟为所述第一设备的主时钟的N倍,其中N为大于等于1的正整数;对所述第三目标时钟进行延时处理,得到第一目标时钟。
与实现方式一中的直接进行延时得到采样时钟的方式不同,在实现方式二中,先基于第一设备的主时钟得到第一设备主时钟的N倍,然后在对第一设备主时钟的N倍进行延时,得到采样时钟。这种先得到第一设备的主时钟的N倍,再延时的方案,可给出精准或准确的第一目标时钟,由此保证外部数据在SOC中的成功写入。
在一些实施例中,为避免数据采样为空,取N为大于等于1的正整数、且小于4的正整数。对第三目标时钟的延时可以为对第三目标时钟进行小于等于1的小数倍的延时,如0.2、0.4或0.5倍的延时。
在实现方式二中,可采用延时器对第一设备的主时钟的N倍进行延时。可以理解,在实现方式二和实现方式一中,延时器可以为相同的延时器,也可以为不同的延时器,视具体情况而定。实现方式二中的延时器对第一设备的主时钟的N倍的延时要小于实现方式一中的延时器对第一设备的主时钟的延时。
在一些实施例中,第一设备包括第一目标件,由第一目标件基于第一设备的主时钟的属性产生第三目标时钟。在工程上,第一目标件可以是时钟生成器或时钟发生器。第一设备的主时钟的属性包括时钟周期、频率、占空比、相位中的至少之一。时钟生成器按照第一设备的主时钟的属性,生成第三目标时钟。第三目标时钟可以是与主时钟的时钟周期、频率、占空比等相同的时钟,且在时钟相位上,第三目标时钟延后于主时钟,如延后于主时钟的N倍。
其中,第一目标件按照主时钟的属性进行第三目标时钟的生成,不仅可生成准确的第三目标时钟,还可保证采样时钟的准确性,还在工程上易行,实施性强。
在一些实施例中,第一设备包括第二目标件,由第二目标件对第三目标时钟进行延时处理,得到第一目标时钟。在工程上,第二目标件可以是延时器,具体可以是延迟锁相环(DLL,Delay Locked Loop)。DLL对第三目标时钟进行延时,如对第三目标时钟进行小于等于1的小数倍的延时,得到采样时钟。第二目标件的使用可保证采样时钟的准确性,实施性强。
在一些实施例中,第一设备包括两级缓存器:第一级缓存器和第二级缓存器。目标数据在第一目标时钟的作用下被写入至第一级缓存器。写入至第一级缓存器的目标数据在第四目标时钟作用下被写入至第二级缓存器;其中,所述第四目标时钟基于对第一目标时钟的延迟处理而得到。
其中,第一级缓存器的存储容量小于第二级缓存器。如,第一级缓存器为寄存器或深度为1的FIFO,第二级缓存器为深度为L的FIFO,其中,L为大于1的正整数,如,L=100、500等。可以理解,FIFO的深度越深存储容量越大。
本申请实施例中,相当于先将外部数据写入至第一级缓存器。在实现上,第一级缓存器可以为寄存器,还可以为深度为1的FIFO,以实现外部数据在SOC中的成功写入。再将成功写入至SOC中的数据写入至存储容量大的第二寄存器中,以方便SOC后续对外部数据的使用。在这种方案中,第一级缓存器充当了桥梁。
本领域技术人员应该而知,寄存器和深度为1的FIFO为两种不同概念的器件。如果从深度这个角度来看,寄存器可看成是深度为1的FIFO。这两种器件的实际差异请参见相关说明,不赘述。在一些实施例中,优选第一级缓存器为寄存器,第二级缓存器为(深度为L的)FIFO。如没有特殊说明,本申请实施例中的FIFO均指的是深度为L的FIFO。
理论上,对于外部数据,也可在第四目标时钟的作用下直接将外部数据写入至深度为L的FIFO中,不需要第一级缓存器充当桥梁。
本申请实施例中,优选为,外部数据先写入至寄存器,再将写入至寄存器中的数据读取出,写入至FIFO,以实现对外部数据的存储。
不需要第一级缓存器充当桥梁,将外部数据直接写入至深度为L的FIFO以实现SOC对外部数据的存储方案,由于深度越深,数据写入时所耗费的资源如时钟资源越多,如一个数据的写入可能需要SOC为深度为L的FIFO提供L个时钟。所以,前述方案,一方面为SOC提供了这么多的时钟提出了较大的挑战,另一方面,将外部数据直接写入至FIFO,会大幅度增加SOC的外部设备接口(IO接口)到SOC内部寄存器之间的路径,进而增加SOC的时序收敛难度。FIFO的深度为L,则相当于对FIFO做L个寄存器的时序检查,大大增加了FIFO的时序收敛难度。
将外部数据直接写入至深度为L的FIFO的方案,由于以上原因的存在,所以实现难度较高。而本申请实施例中的先将外部数据先写入至第一级缓存器,由于仅需提供一个(第一目标)时钟即可实现数据在SOC中的成功写入。与直接将外部数据直接写入至深度为L的FIFO的方案相比,不存在时序收敛困难和提供多个时钟的问题,可实现时序的快速收敛,使得外部数据写入至SOC内的方案的难度被降低。并且,在第四目标时钟的作用下,再将写入至第一级缓存器的目标数据写入至第二级缓存器,实现了SOC对外部数据的成功存储。可见,本申请实施例提供的外部数据先写入第一级缓存器,再存储至第二级缓存器的方案,为外部数据成功写入至SOC内部提供了一种新的技术方案,该新的技术方案在工程上易于实现,可行性高,实用性强。
其中,第四目标时钟可采用延时器对第一目标时钟进行延迟处理而得到。在第一目标时钟的作用下将外部数据写入至第一级缓存器,实现了外部数据在SOC中的成功写入。在第四目标时钟的作用下将写入至第一级缓存器中数据读取出、并写入至第二级缓存器,实现了外部数据在SOC中的存储。两级缓存器采用不同的时钟进行各自的数据写入操作,即实现了外部数据在第一级缓存器中的高效写入,又实现了SOC内部外部数据从第一级缓存器到第二级缓存器的正常存储。
针对前述S104的方案,在设备参数为第二参数的情况下,将第二设备的(第二目标)时钟进行延时处理,得到第一目标时钟。在工程上,可采用前述的第二目标件对第二设备的(第二目标)时钟进行延时,得到第一目标时钟。
可以理解,在时钟周期、频率、占空比上,第一目标时钟与第二目标时钟相同,但第一目标时钟的相位延迟于第二目标时钟。
在设备参数为第二参数情况下,这种基于第二设备的(第二目标)时钟而获得用于供外部数据写入至SOC的(第一目标)时钟的方案,可保证(第一目标)时钟的准确性,在工程上可实施性强。
下面结合图3-图7所示对本申请实施例的技术方案做进一步说明。
图3为本申请实施例的电路示意图。在图3中,时钟生成器或时钟发生器(read-clk-gen)作为第一目标件使用。延迟锁相环DLL作为第二目标件使用。dq-reg作为第一级缓存器使用。ASYNC FIFO(异步FIFO)作为第二级缓存器使用。clk delay buffer为延时器,用于对第一目标时钟进行延时得到第四目标时钟。其中,mode-sel为片选端,与SOC连接的外设为DDR时,片选信号mode-sel=0。与SOC连接的外设为SDR时,片选信号mode-sel=1。
其中,dq-reg具有两个输入端:dq-in端和时钟端。其中,dq-in端用于接收来自外部设备的数据。在时钟端的(第一目标)时钟的作用下将外部数据写入至dq-reg。dq-reg具有一个输出端,用于供ASYNC FIFO在第四目标时钟的作用下将外部数据从dq-reg写入至ASYNC FIFO,以利用ASYNC FIFO实现对外部数据的存储。
ASYNC FIFO具有三个端:时钟信号端、数据端和命令端。其中,时钟信号端与clkdelay buffer输出端连接,clk delay buffer用于为ASYNC FIFO提供第四目标时钟。在dq-reg中存储的数据通过数据端写入至ASYNC FIFO。因为外部数据是从ASYNC FIFO的外部写入至ASYNC FIFO,命令端为写命令(wr-en=1'b1)有效,在写命令有效的条件下,ASYNC FIFO将dq-reg中存储的数据从dq-reg中的数据端读取出并写入自身中。
下面以与SOC连接的外部设备为DDR为例,片选信号mode-sel=0,SOC与DDR之间可通过连接线如导线进行连接。如图4所示,为SOC与DDR之间的连接示意图。SOC向DDR发送SOC的主时钟信号(clk-int)和读命令信号(command)。DDR向SOC返回DDR的时钟,作为SOC侧的DDR-dqs使用。DDR向SOC返回数据。
SOC想要读取DDR中的数据时,产生读命令(command)。SOC将主时钟信号和读命令信号发送至DDR。如图5所示,SOC的读命令信号在SOC的主时钟clk-int的下降沿产生。
DDR的时钟信号与SOC的主时钟信号在时钟周期、频率、占空比等属性上保持一致。DDR的读命令信号与SOC的读信号信号在时钟周期、频率、占空比等属性上保持一致。参考图4所示,时钟信号和命令信号从SOC发出,到达DDR需要耗费一定的时长,所以,从图5所示的波形图上来看,DDR的时钟信号(DDR clk)延迟于SOC的主时钟信号一段时长,如延迟delay11。DDR的(读)命令信号(DDR command)延迟于SOC的读命令信号一段时长,如延迟delay12。通常情况下,SOC与DDR之间的连接导线被设计好的情况下,delay 11 和delay 12取值相近或相同。
在DDR手册中,为保证从DDR中成功读取出数据,对读取数据的时间进行了规定,即,DDR手册中规定有:DDR中的数据需要从采样到读命令之后的Q个DDR clk时钟周期后的时刻进行读取。其中,Q可以为2或3。以Q=2为例,如图5所示的DATA波形,cas-latency=2,意味着DDR中的数据需要在采样到读命令之后的2个SDR clk时钟周期的时刻进行读取。
如图5所示的波形图,在DDR读命令的作用下,DDR在DDR时钟的上升沿和下降沿均进行数据的读取,如读取出DATA 0 、DATA 1、DATA 2和DATA 3。这些读取出的数据可作为SOC的外部数据(dq-DDR)使用。
DDR将读取出的dq-DDR数据发送至SOC侧,以及将DDR时钟信号发送至SOC。可以理解,在时钟信号从DDR传输至SOC的过程中,会存在延时delay 13,所以在到达SOC侧时,SOC从DDR读取出的数据和DDR时钟信号均存在一定时延如delay 13。SOC将接收到的DDR时钟信号作为DDR-dqs信号使用。其中,DDR时钟信号为前述的第二设备的第二目标时钟。SOC接收到的DDR时钟信号是DDR发出的DDR时钟信号的延时delay 13后的信号。DDR向SOC返回dq-DDR数据,SOC通过dq-in端进行该数据的接收。SOC接收到的外部数据作为SOC的dq-in信号使用。dq-in信号是dq-DDR数据经延时delay 13后的信号。
DDR-dqs信号通过DLL进行了延时处理,如延时1/4个相位,得到第一目标时钟信号(aim clk 1)。在aim clk 1的每次上升沿到来时,将各个外部数据(DATA 0~DATA 3)逐一写入至dq-reg中。
可以理解,为提高SOC与DDR之间的数据交互效率,需要先将外部数据写入至dq-reg。由于与ASYNC FIFO的多深度相比,dq-reg的深度为1,支持每次1 bit(比特)的写入,所以实现的是外部数据的逐个写入。dq-reg每写入一个外部数据,该外部数据会在该外部数据写入至dq-reg时使用的aim clk 1信号经clk delay buffer的延时(如延时1/8相位)而得到的第四目标时钟(aim clk 4)信号的作用下(如上升沿到来时)被从dq-reg读取出、并写入至ASYNC FIFO中。
以dq-reg中逐个写入的数据是DATA 0 ~DATA 3为例,假定在第一个aim clk 1的上升沿到来时,将DATA 0写入至dq-reg中。将第一个aim clk 1信号经clk delay buffer的延时(如延时1/8相位)而得到的第一个第四目标时钟的作用下,将DATA 0从dq-reg中读取出并写入至ASYNC FIFO中。在第二个aim clk 1的上升沿到来时,将DATA 1写入至dq-reg中。将第二个aim clk 1信号经clk delay buffer的延时而得到的第二个第四目标时钟的作用下,将DATA 1从dq-reg中读取出并写入至ASYNC FIFO中。以此类推,以利用dq-reg和aim clk 1信号实现外部数据从外部设备到SOC的逐一写入,利用ASYNC FIFO和aim clk 4信号实现数据在SOC内部从dq-reg到ASYNC FIFO中的存储。
可以理解,深度为1的dq-reg相当于单个寄存器,存储数据的能力有限,但是利用这个单个寄存器将外部数据进行短暂的存储或寄存,可大大减少直接将外部数据存储到ASYNC FIFO中而导致的问题,加快时序收敛。
深度为L的ASYNC FIFO相当于多个寄存器,多个寄存器采用队列方式,即先进入队列先出队列的原则进行数据的存储更新。在多个寄存器存储数据为满时,为将新的数据存储进来,可将已存储的数据中最先在队列中存储的数据移出。采用ASYNC FIFO实现了SOC对外部数据的大容量存储,以实现SOC外部数据在SOC内部的正常使用。
综上而言,在外部设备为DDR的情况下,aim clk 1是通过DLL对DDR-dqs信号进行一定的延时而得到的。其中,DDR-dqs信号是由DDR设备提供的。这种基于DDR设备提供的时钟而得到对(来自于DDR设备的)外部数据进行采样的采样时钟(第一目标时钟)的方案,可保证采样时钟的准确性,进而实现外部数据从外部设备到SOC的成功写入。DDR-dqs信号由DDR设备提供,在工程上易于实现对采样时钟的获得,可实施性强。
下面以与SOC连接的外部设备为SDR为例,片选信号mode-sel=1,SOC与SDR之间可通过连接线如导线进行连接。如图6所示,为SOC与SDR之间的连接示意图。SOC向DDR发送SOC的主时钟信号和读命令信号。SDR向SOC返回数据。SDR无法向SOC返回时钟,即,与DDR-dqs信号是由DDR设备提供的不同,SDR无法向SOC提供SDR-dqs。
在本申请实施例中,需要基于SOC的主时钟信号进行SDR-dqs信号的构建。
SOC的主时钟为clk-int,SOC想要读取SDR中的数据时,产生读命令信号(command)。SOC将主时钟信号和读命令信号发送至SDR。如图7所示,SOC的读命令在SOC的主时钟的下降沿产生。其中,clk-int是由和command 是由SOC的控制器给出的。
SDR的时钟信号与SOC的主时钟信号在时钟周期、频率、占空比等属性上保持一致。SDR的读命令信号与SOC的读信号信号在时钟周期、频率、占空比等属性上保持一致。参考图7所示,时钟信号和命令信号从SOC发出,到达SDR需要耗费一定的时长,所以,从图7所示的波形图上来看,SDR的时钟信号(SDR clk)、SDR的(读)命令信号(SDR command)均延迟于SOC的主时钟信号、SOC的读命令信号一段时长,如延迟delay 1。通常情况下,SOC与SDR之间的连接导线被设计好的情况下,可视为时钟信号的延迟和读命令信号的延迟相近或相等。
如图7所示,在SDR手册中,为保证从SDR中成功读取出数据,对读取数据的时间进行了规定,即,SDR手册中规定有:SDR中的数据需要在采样到读命令之后的P个周期后的时刻进行读取。其中,P可以为2或3。以P=2为例,如图7所示的DATA波形,cas-latency=2,意味着SDR中的数据需要从读命令的维持周期的半周期时刻开始且晚于2个SDR clk时钟周期的时刻进行读取。其中,读命令的维持周期可视为读命令有效(读命令为高电平)的周期。
在SDR读命令的作用下,SDR进行数据的读取,如读取出DATA 0 、DATA 1。SDR将读取出的数据发送至SOC侧。可以理解,外部数据(可视为dq-SDR信号)从SDR传输至SOC的过程中,会存在延时delay 2,SOC通过dq-in端进行外部数据的接收。SOC将接收到的外部数据作为dq-in信号使用。dq-in信号是dq-SDR信号延迟delay 2后的信号。
基于SOC的主时钟信号进行SDR-dqs信号的构建的方案是:read-clk-gen按照SOC主时钟信号的属性,生成SDR-dqs(时钟)信号。其中,SDR-dqs(时钟)信号是时钟周期、频率、占空比与SOC主时钟相同的信号,但是在相位上是SOC主时钟信号的N倍移动。以N=2为例,SDR-dqs信号可以是SOC主时钟信号的2倍移动。如图7所示的clk-rd-org 1为SOC主时钟信号的2倍移动,clk-rd-org 2与clk-rd-org 1相差一个SOC主时钟周期,即,SDR-dqs信号也可以是SOC主时钟信号的3倍移动,具体视情况而定。
以SDR-dqs信号是SOC主时钟信号的3倍移动为例,SDR-dqs信号通过DLL进行了延时处理,如延时delay 3,得到如图7所示的第一目标时钟信号(aim clk 1)。在aim clk 1的每次上升沿到来时,将各个外部数据(DATA 0~DATA 1)逐一写入至dq-reg中。
从图7所示的波形来看,dq-in中的DATA 0 的维持时间(处于高电平的时间)的中间时刻与第一个aim clk 1信号的上升沿时刻为相同时刻,在第一个aim clk 1信号的上升沿将DATA 0写入至dq-reg中。即,aim clk 1信号的上升沿时刻位于dq-in维持时间的中间,上升沿时刻到来时,dq-in已经准备好,可有效避免由于数据未准备好而采样为空、无法成功写入数据的问题。
可以理解,为提高SOC与SDR之间的交互,需要先将外部数据写入至dq-reg。dq-reg每写入一个外部数据,该外部数据会在该外部数据写入至dq-reg时使用的aim clk 1信号经clk delay buffer的延时(如延时1/8相位)而得到的第四目标时钟(aim clk 4)信号的作用下(如上升沿到来时)被从dq-reg读取出、并写入至ASYNC FIFO中。
以dq-reg中逐个写入的数据是DATA 0 ~DATA 1为例,假定在第一个aim clk 1的上升沿到来时,将DATA 0写入至dq-reg中。将第一个aim clk 1信号经clk delay buffer的延时(如延时1/8相位)而得到的第一个第四目标时钟的作用下,将DATA 0从dq-reg中读取出并写入至ASYNC FIFO中。在第二个aim clk 1的上升沿到来时,将DATA 1写入至dq-reg中。将第二个aim clk 1信号经clk delay buffer的延时而得到的第二个第四目标时钟的作用下,将DATA 1从dq-reg中读取出并写入至ASYNC FIFO中。针对读取出后续数据如DATA3、DATA 等,均可采用与前述类似的方案实现外部数据从外部设备到SOC的逐一写入,利用ASYNC FIFO在SOC内部实现数据从dq-reg到ASYNC FIFO中的存储。
本领域技术人员应该而知,如果SOC直接采样SOC的主时钟clk_int对外部数据进行采样,在delay1+delay2 > 1个主时钟周期的情况下,则会导致对外部数据的采样出错。若使用图3中的电路结构,即使delay1+delay2>1个主时钟周期,也能够实现对外部数据的成功采样。因为,在外设为SDR的情况下,通过read-clk-gen生成的信号+DLL的延时(如delay3)会将采样时钟的上升沿移到DATA的中间相位附近,有利于读数据采样的准确性,利于时序收敛。
在与SOC连接的外部设备为SOC的情况下,利用dq-reg和aim clk 1信号将外部数据进行短暂的寄存或存储,可大大减少直接将外部数据存储到ASYNC FIFO中而导致的问题。利用ASYNC FIFO和aim clk 4信号在SOC内部实现数据从dq-reg到ASYNC FIFO中的存储,实现了SOC对外部数据的大容量存储,以实现SOC外部数据在SOC内部的正常使用。
综上而言,在外部设备为SDR的情况下,针对外部设备向SOC反馈回的数据,SOC需基于主时钟信号进行SDR-dqs信号的构建,并在DLL的延迟处理下,得到用于将外部设备向SOC反馈回的外部数据进行短暂存储的aim clk 1信号。aim clk 1信号在clk delaybuffer的延时下得到用于将存储在dq-reg中的数据移动至大容量存储器-ASYNC FIFO中存储。
其中,aim clk 1信号是对基于SOC主时钟信号而构建出的SDR-dqs信号进行一定延时而得到的时钟信号。通过依赖SOC的主时钟信号的途径而得到aim clk 1信号,可保证采样时钟的准确性,进而实现外部数据从外部设备到SOC的成功写入,且实施性强。
从上面的方案可看出,图4所示的电路图位于SOC内部,SOC可与不同类型的外设进行连接。当SOC与SDR连接时,会对SOC的用于将外部数据写入至dq-reg的采样时钟进行构建。当SOC与DDR连接时,会基于DDR提供的时钟实现对采样时钟的获得。即,在SOC与不同类型的外设进行连接时,通过不同的获得方式得到采样时钟。这种不同的获得方式,兼顾了SOC对DDR和SDR这两种外设中的数据的读取。可认为是在兼容了DDR的情形下SOC从SDR中读数据的方法,还可认为是在兼容了SDR情形下SOC从DDR中读数据的方法。
可以理解,图3-图7所示的示意图,能同时兼容DDR和SDRAM这两类颗粒的外设。且针对DDR和SDR这两种外设,均可通过图3所示的电路得到各自需要的采样时钟。即,通过复用图3所示的电路得到DDR下的采样时钟和SDR下的采样时钟,这种复用,使得流程处理更加简单,占用资源少。aim clk 1信号的上升沿时刻位于dq-in维持时间的中间,上升沿时刻到来时,dq-in已经准备好(已准备一段时间了),对dq-in数据采样的建立保持时间裕量大,可有效避免采空情形的出现。本申请实施例中的采样时钟依据外设类型的不同通过不同的获得方式而得到,未使用SOC内部的自有时钟来充当采样时钟,可不受SOC内部的板级设计的影响,采用本申请实施例提供的采样时钟的获得方式而得到需要的采样时钟,可安全、稳定、独立地实现外部数据在SOC中的成功写入。此外,还实现了SOC对不同类型外设中数据在读取方面的兼容性,如实现了SOC对DDR和SDR中数据的读取兼容。
另外,通过复用图3所示的电路得到DDR下的采样时钟和SDR下的采样时钟的方案,相当于针对不同类型的外设,通过相同的电路路径得到对应的采样时钟,与通过不同的电路路径得到各自的采样时钟相比,通过相同的电路路径可实现时序收敛。
本申请实施例提供一种时钟获得装置,如图8所示,所述装置包括:第一获取单元801、第二获取单元802和第三获取单元803;其中,第一获取单元801,用于获取目标数据,所述目标数据来自于第二设备;第二获取单元802,用于获取第二设备的设备参数;第三获取单元803,用于基于设备参数,得到第一目标时钟,其中在所述第一目标时钟的作用下所述目标数据写入至第一设备;
其中,所述第三获取单元803,用于:在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到所述第一目标时钟;或者,在所述设备参数为第二参数的情况下,基于所述第二设备的第二目标时钟,得到所述第一目标时钟。
在一些实施例中,所述第三获取单元803,用于:在所述设备参数为第一参数的情况下,对所述第一设备的主时钟进行延时处理,得到所述第一目标时钟;或者,在所述设备参数为第一参数的情况下,基于所述第一设备的主时钟,得到第三目标时钟,所述第三目标时钟为所述第一设备的主时钟的N倍,其中N为大于等于1的正整数;对所述第三目标时钟进行延时处理,得到所述第一目标时钟。
在一些实施例中,所述第一设备包括第一目标件,由所述第一目标件基于所述第一设备的主时钟的属性产生所述第三目标时钟。
在一些实施例中,所述第一设备包括第二目标件,由所述第二目标件对所述第三目标时钟进行延时处理,得到所述第一目标时钟。
在一些实施例中,所述第一设备包括第一级缓存器,所述目标数据在所述第一目标时钟的作用下被写入至第一级缓存器。
在一些实施例中,所述第一设备包括第二级缓存器,写入至所述第一级缓存器的所述目标数据在第四目标时钟作用下被写入至所述第二级缓存器;其中,所述第四目标时钟基于对所述第一目标时钟的延迟处理而得到。
需要说明的是,本申请实施例的时钟获得装置,由于该时钟获得装置解决问题的原理与前述的时钟获得方法相似,因此,时钟获得装置的实施过程及实施原理均可以参见前述方法的实施过程及实施原理描述,重复之处不再赘述。
本申请还提供了一种芯片和一种可读存储介质。其中,所述芯片包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述的时钟获得方法。在实现上,所述芯片可以为SOC芯片。
其中,所述存储介质存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例的时钟获得方法,例如,如图1至图7中任一所示的时钟获得方法。
在一些实施例中,存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
图9示出了可以用来实施本申请的实施例的芯片900的示意性框图。
如图9所示,芯片900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储芯片900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
芯片900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许芯片900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算模块、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如时钟获得方法。
本文中的芯片可以是数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合。
本申请实施例还提供一种电子设备,包括前述的芯片。电子设备可以是任何合理的终端或服务器。其中,终端包括但不限定于:车载终端、手机、平板电脑、一体机、台式机、智能穿戴式设备等。服务器包括但不限定于普通服务器和特殊服务器。特殊服务器包括云服务器、集群服务器等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (9)
1.一种时钟获得方法,其特征在于,所述方法包括:
获取目标数据,所述目标数据来自于第二设备;
获取第二设备的设备参数;
基于设备参数,得到第一目标时钟,其中在所述第一目标时钟的上升沿或下降沿的作用下所述目标数据写入至第一设备的第一级缓存器,所述第一目标时钟的上升沿或下降沿到来时刻位于所述目标数据的维持时间内;其中,写入至第一级缓存器的目标数据在第四目标时钟的作用下写入至第一设备的第二级缓存器,第一级缓存器的存储容量小于第二级缓存器的存储容量;所述第四目标时钟基于对所述第一目标时钟的延迟处理而得到;
其中,所述基于设备参数,得到第一目标时钟,包括以下其中之一步骤:
在所述设备参数为第一参数的情况下,根据由时钟生成器或时钟发生器基于所述第一设备的主时钟的属性而产生的第三目标时钟,对所述第三目标时钟进行延时处理,得到所述第一目标时钟;其中所述主时钟的属性包括主时钟的时钟周期、频率、占空比以及相位;
在所述设备参数为第二参数的情况下,对接收到的第二设备的第二目标时钟进行延时处理,得到所述第一目标时钟。
2.根据权利要求1所述的方法,其特征在于,所述基于设备参数,得到第一目标时钟,包括:
在所述设备参数为第一参数的情况下,对所述第一设备的主时钟进行延时处理,得到所述第一目标时钟。
3.根据权利要求1所述的方法,其特征在于,所述第三目标时钟为所述第一设备的主时钟的N倍,其中N为大于等于1的正整数。
4.根据权利要求1或3所述的方法,其特征在于,所述第一设备包括第二目标件,由所述第二目标件对所述第三目标时钟进行延时处理,得到所述第一目标时钟。
5.一种时钟获得装置,其特征在于,包括:
第一获取单元,用于获取目标数据,所述目标数据来自于第二设备;
第二获取单元,用于获取第二设备的设备参数;
第三获取单元,用于基于设备参数,得到第一目标时钟,其中在所述第一目标时钟的上升沿或下降沿的作用下所述目标数据写入至第一设备的第一级缓存器,其中所述第一目标时钟的上升沿或下降沿到来时刻位于所述目标数据的维持时间内;其中,写入至第一级缓存器的目标数据在第四目标时钟的作用下写入至第一设备的第二级缓存器,第一级缓存器的存储容量小于第二级缓存器的存储容量;所述第四目标时钟基于对所述第一目标时钟的延迟处理而得到;
其中,所述第三获取单元,用于:
在所述设备参数为第一参数的情况下,根据由时钟生成器或时钟发生器基于所述第一设备的主时钟的属性而产生的第三目标时钟,对所述第三目标时钟进行延时处理,得到所述第一目标时钟;其中所述主时钟的属性包括主时钟的时钟周期、频率、占空比以及相位;
或者,用于:
在所述设备参数为第二参数的情况下,对接收到的第二设备的第二目标时钟进行延时处理,得到所述第一目标时钟。
6.根据权利要求5所述的装置,其特征在于,所述第三获取单元,用于:
在所述设备参数为第一参数的情况下,对所述第一设备的主时钟进行延时处理,得到所述第一目标时钟。
7.一种芯片,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-4中任一项所述的方法。
8.一种电子设备,其特征在于,包括权利要求7所述的芯片。
9.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行根据权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211140171.5A CN115220528B (zh) | 2022-09-20 | 2022-09-20 | 时钟获得方法、装置、芯片、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211140171.5A CN115220528B (zh) | 2022-09-20 | 2022-09-20 | 时钟获得方法、装置、芯片、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115220528A CN115220528A (zh) | 2022-10-21 |
CN115220528B true CN115220528B (zh) | 2022-12-30 |
Family
ID=83617843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211140171.5A Active CN115220528B (zh) | 2022-09-20 | 2022-09-20 | 时钟获得方法、装置、芯片、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115220528B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389817B (zh) * | 2023-12-11 | 2024-04-02 | 杭州海康威视数字技术股份有限公司 | 一种数据传输系统及延迟值自动获取方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106293004A (zh) * | 2016-08-08 | 2017-01-04 | 杭州晟元数据安全技术股份有限公司 | 一种新型的提高系统稳定性的芯片系统及方法 |
CN109901664A (zh) * | 2019-02-27 | 2019-06-18 | 苏州浪潮智能科技有限公司 | 提供时钟信号的方法、装置、系统、设备及可读存储介质 |
CN113221490A (zh) * | 2021-04-20 | 2021-08-06 | 长沙海格北斗信息技术有限公司 | 一种芯片间可配置延时链的数据采样方法与系统 |
CN114995587A (zh) * | 2022-08-03 | 2022-09-02 | 南京芯驰半导体科技有限公司 | 时钟信号获得方法、装置、芯片及存储介质 |
-
2022
- 2022-09-20 CN CN202211140171.5A patent/CN115220528B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106293004A (zh) * | 2016-08-08 | 2017-01-04 | 杭州晟元数据安全技术股份有限公司 | 一种新型的提高系统稳定性的芯片系统及方法 |
CN109901664A (zh) * | 2019-02-27 | 2019-06-18 | 苏州浪潮智能科技有限公司 | 提供时钟信号的方法、装置、系统、设备及可读存储介质 |
CN113221490A (zh) * | 2021-04-20 | 2021-08-06 | 长沙海格北斗信息技术有限公司 | 一种芯片间可配置延时链的数据采样方法与系统 |
CN114995587A (zh) * | 2022-08-03 | 2022-09-02 | 南京芯驰半导体科技有限公司 | 时钟信号获得方法、装置、芯片及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115220528A (zh) | 2022-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102981776B (zh) | 双倍数据率虚拟静态随机存取存储器及其控制器、存取与操作方法、写入与读取方法 | |
US8520464B2 (en) | Interface circuit and semiconductor device incorporating same | |
US10025732B2 (en) | Preserving deterministic early valid across a clock domain crossing | |
CN111161766B (zh) | Ddr sdram物理层接口电路与ddr sdram控制装置 | |
CN116521604B (zh) | 一种同步数据的方法及相关装置 | |
EP0905610A1 (en) | Dual port buffer | |
CN115220528B (zh) | 时钟获得方法、装置、芯片、电子设备及存储介质 | |
CN101645301B (zh) | 一种用于读数据采样的温度自适应调整方法及装置 | |
CN112712829B (zh) | 一种跨时钟域的寄存器读写电路及方法 | |
CN109062538B (zh) | 环形先进先出缓冲器及数据传输接口、系统、方法 | |
CN111949582B (zh) | 指针同步装置及方法、异步fifo电路、处理器系统 | |
US20240111706A1 (en) | Frame alignment recovery for a high-speed signaling interconnect | |
WO2015142350A1 (en) | Bandwidth amplification using pre-clocking | |
CN114416610A (zh) | Pwm信号生成方法、芯片和电子设备 | |
CN115952326B (zh) | 一种链表式数据结构及其数据处理方法、存储介质、电子设备 | |
CN114995587B (zh) | 时钟信号获得方法、装置、芯片及存储介质 | |
CN113726335B (zh) | 时钟控制电路、时钟电路和电子设备 | |
CN107797956B (zh) | 双沿触发环形缓冲器及通信系统 | |
US7529960B2 (en) | Apparatus, system and method for generating self-generated strobe signal for peripheral device | |
CN112580278B (zh) | 逻辑电路的优化方法、优化装置以及存储介质 | |
CN111723027B (zh) | 一种基于电力边缘网关的动态存储缓冲区读取控制方法 | |
CN107562164A (zh) | 一种cpld/fpga输入复位信息号预处理电路及方法 | |
CN113760795B (zh) | 一种异步fifo存储器读写控制方法、装置及设备 | |
CN117198363B (zh) | 双数据率同步动态随机存储系统及方法、设备及存储介质 | |
CN220709660U (zh) | 一种任意多通道复用处理器 |
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 |