CN116521604B - 一种同步数据的方法及相关装置 - Google Patents
一种同步数据的方法及相关装置 Download PDFInfo
- Publication number
- CN116521604B CN116521604B CN202310816407.0A CN202310816407A CN116521604B CN 116521604 B CN116521604 B CN 116521604B CN 202310816407 A CN202310816407 A CN 202310816407A CN 116521604 B CN116521604 B CN 116521604B
- Authority
- CN
- China
- Prior art keywords
- signal
- clock
- read
- clock domain
- data
- 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 52
- 230000008569 process Effects 0.000 claims abstract description 13
- 230000003111 delayed effect Effects 0.000 claims description 32
- 230000015654 memory Effects 0.000 claims description 25
- 238000012545 processing Methods 0.000 claims description 23
- 238000004891 communication Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 abstract description 7
- 239000000872 buffer Substances 0.000 description 29
- 238000010586 diagram Methods 0.000 description 18
- 230000001360 synchronised effect Effects 0.000 description 14
- 230000001934 delay Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000010355 oscillation Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- 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
Abstract
本申请提供一种同步数据的方法及相关装置。该方法包括:获取写时钟域的写使能信号;在写使能信号为高电平时,根据写时钟域的时钟信号向缓存写入物理介质子层接收到的数据;通过同步器将写使能信号同步给读时钟域;在读时钟域接收到写使能信号为高电平时,根据读时钟域的时钟信号将从缓存读取的数据同步给物理编码子层。采用本申请实施例,可以通过控制对缓存的数据写入与数据读取,来实现物理介质子层向物理编码子层同步数据过程中的数据通路的低延时,从而提高系统的运行效率和响应速度。
Description
技术领域
本申请涉及芯片设计技术领域,尤其涉及一种同步数据的方法及相关装置。
背景技术
在高速接口接收数据时,要将物理介质子层(Physical Medium Attachment,PMA)接收的数据同步到物理编码子层(Physical Coding Sublayer,PCS),需要先将PMA层的数据写入缓存,再从缓存中读取数据到PCS层。
在现有技术中,利用弹性缓存(elastic buffer)来同步数据。由于PMA层的数据随路时钟为PMA层恢复出来的时钟,而PCS层的数据接收时钟为本地时钟,所以PMA层与PCS层的时钟是不同的,从而需要使用异步工作模式下的先进先出(First Input First Output,FIFO)存储器来进行数据的同步。这将会引入4至5个周期的延迟,从而影响系统运行效率和响应速度。此外,使用弹性缓存(elastic buffer)需要使用较大深度的缓存器来实现数据的同步,具有一定的复杂度并且不利于芯片的性能功耗面积。
发明内容
本申请实施例提供一种同步数据的方法及相关装置,解决了相关技术中芯片将物理介质子层接收的数据同步到物理编码子层的过程中,会引入4至5个周期的延迟,从而影响系统运行效率和响应速度的问题。
第一方面,本申请实施例提供了一种同步数据的方法,所述方法包括:
获取写时钟域的写使能信号;
在所述写使能信号为高电平时,根据所述写时钟域的时钟信号向缓存写入物理介质子层接收到的数据;
通过同步器将所述写使能信号同步给读时钟域;
在所述读时钟域接收到所述写使能信号为高电平时,根据所述读时钟域的时钟信号将从所述缓存读取的所述数据同步给物理编码子层;
其中,所述写时钟域的时钟信号和所述读时钟域的时钟信号是同频不同相的信号。
在上述方法中,芯片根据写时钟域的写使能信号向缓存中写入数据,通过同步器将写使能信号同步给读时钟域,在读时钟域接收到写使能信号为高电平时从缓存中读取数据。由此芯片也可以通过控制对缓存的数据写入与数据读取,来实现数据通路的低延时,提高系统的运行效率和响应速度。
在第一方面的一种可选的方案中,所述同步器包括第一触发器、第二触发器和第三触发器,所述通过同步器将所述写使能信号同步给读时钟域,包括:
将所述写使能信号输入所述第一触发器;
在所述读时钟域的时钟信号为第一有效时钟沿时,通过所述第一触发器向所述第二触发器输入第一触发信号,其中,所述第一触发信号比所述写使能信号延迟了预设的周期值;
在所述读时钟域的时钟信号为第二有效时钟沿时,通过所述第二触发器向所述第三触发器输入第二触发信号,其中,所述第二触发信号比所述第一触发信号延迟了预设的周期值;
在所述读时钟域的时钟信号为第三有效时钟沿时,通过所述第三触发器输出第三触发信号,其中,所述第三触发信号比所述第二触发信号延迟了预设的周期值;
将所述第三触发信号同步给所述读时钟域。
可以看出,芯片通过三个触发器组成的同步器将写时钟域的写使能信号同步给读时钟域。利用了触发器只有在时钟信号的有效时钟沿时,才会输出信号的特性,使得读时钟域可以稳定地采样到写时钟域的使能信号,从而可以大大降低采样到亚稳态信号的概率。
在第一方面的又一种可选的方案中,所述在所述读时钟域接收到所述写使能信号为高电平时,根据所述读时钟域的时钟信号将从所述缓存读取的所述数据同步给物理编码子层,包括:
在所述读时钟域接收到所述第三触发信号为高电平时,对所述读时钟域的读使能信号从低电平到高电平进行拉高;
在所述读使能信号从低电平到高电平进行拉高的过程中,将从所述缓存读取的所述数据同步给物理编码子层。
在上述方法中,芯片在读时钟域接收到第三触发信号为高电平时,对读时钟域的读使能信号从低电平到高电平进行拉高,也就是芯片可以通过读时钟域的读使能信号来控制从缓存中读取数据。
在第一方面的又一种可选的方案中,所述写时钟域的时钟信号与所述读时钟域的时钟信号相差0至0.5个时钟周期。
在第一方面的又一种可选的方案中,所述写时钟域的时钟信号与所述读时钟域的时钟信号相差0.5至0.75个时钟周期。
在第一方面的又一种可选的方案中,所述写时钟域的时钟信号与所述读时钟域的时钟信号相差0.75至1个时钟周期。
第二方面,本申请实施例提供了一种同步数据的装置,所述同步装置包括处理单元和通信单元,其中,所述处理单元,用于获取写时钟域的写使能信号;
所述通信单元,用于在所述写使能信号为高电平时,根据所述写时钟域的时钟信号向缓存写入物理介质子层接收到的数据;
所述处理单元,还用于通过同步器将所述写使能信号同步给读时钟域;
所述通信层,还用于在所述读时钟域接收到所述写使能信号为高电平时,根据所述读时钟域的时钟信号将从所述缓存读取的所述数据同步给物理编码子层;
其中,所述写时钟域的时钟信号和所述读时钟域的时钟信号是同频不同相的信号。
在第二方面的一种可选的方案中,所述同步器包括第一触发器、第二触发器和第三触发器,所述处理单元,具体用于:
处理单元,具体用于将所述写使能信号输入所述第一触发器;
处理单元,具体用于在所述读时钟域的时钟信号为第一有效时钟沿时,通过所述第一触发器向所述第二触发器输入第一触发信号,其中,所述第一触发信号比所述写使能信号延迟了预设的周期值;
处理单元,具体用于在所述读时钟域的时钟信号为第二有效时钟沿时,通过所述第二触发器向所述第三触发器输入第二触发信号,其中,所述第二触发信号比所述第一触发信号延迟了预设的周期值;
处理单元,具体用于在所述读时钟域的时钟信号为第三有效时钟沿时,通过所述第三触发器输出第三触发信号,其中,所述第三触发信号比所述第二触发信号延迟了预设的周期值;
处理单元,具体用于将所述第三触发信号同步给所述读时钟域。
在第二方面的又一种可选的方案中,通信单元,具体用于所述在所述读时钟域接收到所述写使能信号为高电平时,根据所述读时钟域的时钟信号将从所述缓存读取的所述数据同步给物理编码子层,包括:
处理单元,具体用于在所述读时钟域接收到所述第三触发信号为高电平时,对所述读时钟域的读使能信号从低电平到高电平进行拉高;
通信单元,具体用于在所述读使能信号从低电平到高电平进行拉高的过程中,将从所述缓存读取的所述数据同步给物理编码子层。
第三方面,本申请实施例提供了一种芯片装置,所述芯片装置用于调用存储器中的计算机程序以实现前述第一方面任一项所描述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在计算机或处理器上运行时,实现如前述第一方面任一项所描述的方法。
第五方面,本申请提供了一种计算机程序产品,计算机程序产品包括计算机指令,当所述指令在至少一个处理器上运行时,实现前述第一至第四方面任一项所描述的方法。该计算机程序产品可以为一个软件安装包,在需要使用前述方法的情况下,可以下载该计算机程序产品并在计算设备上执行该计算机程序产品。
本申请第二至第五方面所提供的技术方案,其有益效果可以参考第一方面的技术方案的有益效果,此处不再赘述。
附图说明
下面将对实施例描述中所需要使用的附图作简单的介绍。
图1是本申请实施例提供的一种同步数据的系统架构图;
图2是本申请实施例提供的一种同步数据的方法流程示意图;
图3是本申请实施例提供的一种向缓存中写入数据的时序图;
图4是本申请实施例提供的一种同步器同步信号的示意图;
图5是本申请实施例提供的一种同步器信号变化的时序图;
图6是本申请实施例提供的一种从缓存中读取数据的时序图;
图7是本申请实施例提供的一种向缓存写入以及读取数据的时序图;
图8是本申请实施例提供的一种第一触发信号的时序图;
图9是本申请实施例提供的一种在图8的位置A采样到写使能信号的延迟信号为高电平时的时序图;
图10是本申请实施例提供的一种在图8的位置B采样到写使能信号的延迟信号为高电平时的时序图;
图11是本申请实施例提供的又一种向缓存写入以及读取数据的时序图;
图12是本申请实施例提供的一种同步数据的结果示意图;
图13是本申请实施例提供的一种同步数据的装置的功能单元组成框图;
图14是本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
下面结合附图对本申请实施例进行详细介绍。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选的还包括没有列出的步骤或单元,或可选的还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面对本申请实施例应用的系统架构进行介绍。需要说明的是,本申请描述的系统架构及业务场景是为了更加清楚的说明本申请的技术方案,并不构成对于本申请提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请提供的技术方案对于类似的技术问题,同样适用。
请参阅图1,图1是本申请实施例提供的一种同步数据的系统架构图。如图1所示,系统包括物理介质子层10、缓存11和物理编码子层12。
物理介质子层10与物理编码子层12是高速接口中的物理子层。其中,高速接口可以是高速互联技术(Compute Express Link,CXL),高速串行计算机扩展总线标准(Peripheral Component Interconnect Express,PCIe),通用芯粒互连技术(UniversalChiplet Interconnect Express,UCIe),以及芯片与芯片之间(Die-to-Die)的高速接口,例如超短距离连接接口(Extra Short Reach,XSR)、低功率超短距离(Ultra Short Reach,USR)等等,此处不做限定。
缓存11本实施例使用的是偏移缓存(drift buffer)。
在一种可能的实施方式中,又如图1,在写使能信号(write enable,wr_en)为高电平时,高速接口根据写时钟域的时钟信号(clock write,clk_wr)来写入要同步的数据(write data,wr_data),也即通过写时钟域的地址控制器(write address control,wr_addr control)向缓存11中的写入数据的地址(write address,wr_addr)中,写入物理介质子层10接收到的数据。高速接口通过同步器(bit sync)将写使能信号的延迟信号(writeenable flip-flop,wr_en_ff)同步给读时钟域,也就是通过同步器输出第三触发信号(write sync3,wr_sync3)给读时钟域。在读时钟域接收到写使能信号为高电平时,芯片将读时钟域的读使能信号(read enable,rd_en)从低电平到高电平进行拉高。之后芯片根据读时钟域的时钟信号(clock read,clk_rd)通过读时钟域的地址控制器(read addresscontrol,rd_addr control)将从缓存11中的读取数据的地址(read address,rd_addr)中,读取到的数据(read data,rd_data)同步给物理编码子层12。其中,写使能信号的延迟信号是指芯片采用D类型触发器(D Flip-Flop,DFF),在写时钟域的时钟信号为有效时钟沿时,将写使能信号寄存一拍之后的信号。设置写使能信号的延迟信号的原因是,在写使能信号为高电平的时候,芯片控制物理介质子层向缓存写入数据,在写使能信号的延迟信号为高电平的时候,表示数据已经写入到缓存中。下面介绍本申请实施例提供的一种同步数据的方法。
请参阅图2,图2是本申请实施例提供的一种同步数据的方法流程示意图,方法应用于如图1所示的同步数据的系统。如图2所示,方法包括但不限于如下步骤:
步骤S201,获取写时钟域的写使能信号。
其中,写使能信号为芯片控制PMA层向缓存写入数据的信号,在写使能信号为高电平时,芯片控制PMA层向缓存写入数据。所以在芯片向缓存读取数据之前,要先获取写时钟域的写使能信号。其中,芯片具体可以是图1中的高速接口。
此外,如果整个芯片的电路处于初始状态,那么芯片要通过解除复位的方式来使电路开始工作。具体的,芯片解除复位的顺序是先解除读时钟域的复位,再解除写时钟域的复位。
步骤S202,在写使能信号为高电平时,根据写时钟域的时钟信号向缓存写入物理介质子层接收到的数据。
具体的,在芯片接收到写时钟域的写使能信号为高电平时,也就是写使能信号为1时,芯片根据写时钟域的时钟信号将PMA层接收到的数据向缓存中写入。例如,在芯片已经接收到写时钟域的写使能信号为高电平的情况下,在写时钟域的时钟信号为有效时钟沿时,芯片将PMA层接收到的数据向缓存中写入。
举例来说,请参阅图3,图3是本申请实施例提供的一种向缓存中写入数据的时序图。如图3所示,向缓存中写入数据的地址,示例性给出了0至11,共计12个。对于写入缓存对应位置的数据,在图3中示例性给出了数据a至数据l,共计12个。其中最开始的NA表示对数据中不关注的部分,即本申请实施例从数据a开始写入缓存即可。在写时钟域的写使能信号为高电平的情况下,在写时钟域的时钟信号为第一有效时钟沿A时,芯片开始将PMA层的数据a写入缓存,并且向缓存中写入数据的地址为地址0。在①对应位置,芯片已经将PMA层中的数据a写入了缓存,并且向缓存中写入数据的地址为地址0中。又例如,在写时钟域的时钟信号为第二有效时钟沿B时,芯片已经获取到写时钟域的写使能信号为高电平,写使能信号的延迟信号也为高电平。此时芯片将PMA层的数据d写入缓存中,并且向缓存中写入数据的地址为地址3。在②对应位置,芯片已经将PMA层中的数据d写入了缓存,并且向缓存中写入数据的地址为地址3中。
步骤S203,通过同步器将写使能信号同步给读时钟域。
具体的,因为PMA层的数据随路时钟为PMA层恢复出来的时钟,而PCS层的数据接收时钟为本地时钟,所以PMA层与PCS层的时钟是不同的,也就是说PMA层和PCS层是异步的工作模式。此时芯片需要先将写使能信号输入一个触发器,再通过触发器输出给异步工作模式下的同步器,并且这个触发器输出的信号是写使能信号的延迟信号。然后芯片将写使能信号的延迟信号同步给读时钟域。其中写使能信号的延迟信号来源于写使能信号,写使能信号的延迟信号是指芯片采用D类型触发器(D Flip-Flop,DFF),在写时钟域的时钟信号为有效时钟沿时,将写使能信号寄存一拍之后的信号。设置写使能信号的延迟信号的原因是,在写使能信号为高电平的时候,芯片控制PMA层向缓存写入数据,在写使能信号的延迟信号为高电平的时候,表示数据已经写入到缓存中。
在一种可能的实施方式中,同步器包括第一触发器、第二触发器和第三触发器。芯片向第一触发器的输入端输入写使能信号的延迟信号,在读时钟域的时钟信号为第一有效时钟沿时,芯片通过第一触发器的输出端输出第一触发信号。其中,芯片通过第一触发器接收写使能信号的延迟信号,又在读时钟域的时钟信号为第一有效时钟沿时,通过第一触发器输出第一触发信号,是为了能将高电平的写使能信号的延迟信号同步到读时钟域。之后芯片向第二触发器的输入端输入第一触发信号,在读时钟域的时钟信号为第二有效时钟沿时,芯片通过第二触发器的输出端输出第二触发信号。芯片向第三触发器的输入端输入第二触发信号,在读时钟域的时钟信号为第三有效时钟沿时,芯片通过第三触发器的输出端输出第三触发信号。最后芯片将第三触发信号同步给读时钟域,也就完成了芯片通过同步器将写使能信号同步给读时钟域的过程。
请参阅图4和图5,图4是本申请实施例提供的一种同步器同步信号的示意图,图5是本申请实施例提供的一种同步器信号变化的时序图。如图4所示,在写时钟域,芯片将写使能信号通过一个D类型触发器同步给读时钟域的同步器中的第一触发器,其中写使能信号通过一个D类型触发器输出的信号会有一定延迟,这个延迟的信号为写使能信号的延迟信号。其中图4中四个触发器的D端为输入端、Q端为输出端,以及CK端为时钟信号端。如图5所示,在读时钟域的时钟信号为第一有效时钟沿A时,第一触发信号(write sync1,wr_sync1)开始升高为高电平。此时对于图4来说,在读时钟域的时钟信号为第一有效时钟沿A时,芯片通过第一触发器的Q端输出第一触发信号到第二触发器的D端。又如图5所示,在读时钟域的时钟信号为第二有效时钟沿B时,第二触发信号(write sync2,wr_sync2)开始升高为高电平。此时对于图4来说,在读时钟域的时钟信号为第二有效时钟沿B时,芯片通过第二触发器的Q端输出第二触发信号到第三触发器的D端。又如图5所示,在读时钟域的时钟信号为第三有效时钟沿C时,第三触发信号开始升高为高电平。此时对于图4来说,在读时钟域的时钟信号为第三有效时钟沿C时,芯片通过第三触发器的Q端输出第三触发信号,也就完成了芯片通过同步器将写使能信号同步给读时钟域的过程。
步骤S204,在读时钟域接收到写使能信号为高电平时,根据读时钟域的时钟信号将从缓存读取的数据同步给物理编码子层。
具体的,在读时钟域接收到写使能信号为高电平时,芯片根据读时钟域的时钟信号去控制PCS层从缓存中读取数据。例如,在读时钟域已经接收到写使能信号为高电平的情况下,在读时钟域的时钟信号为有效时钟沿时,芯片控制PCS层从缓存中读取相应的数据。其中芯片从缓存中读取数据的方法可以是采取组合逻辑读出数据,此处不做限定。
在一种可能的实施方式中,在读时钟域接收到第三触发信号为高电平时,芯片对读时钟域的读使能信号从低电平到高电平进行拉高,其中芯片可以利用读时钟域的读使能信号来控制PCS层开始向缓存读取数据。在芯片将读使能信号从低电平到高电平进行拉高的过程中,芯片将同时控制PCS层从缓存中读取数据。
举例来说,请参阅图6,图6是本申请实施例提供的一种从缓存中读取数据的时序图。如图6所示,从缓存中读取数据的地址,示例性给出了3至10,共计8个。对于读出的数据,在图6中示例性给出了数据d至数据k,共计8个。其中最开始的NA表示对数据中不关注的部分,本申请实施例从数据d开始从缓存中读取即可。在芯片接收到第一触发信号为高电平,并且第三触发信号也为高电平的情况下,也就是在读时钟域已经接收到写使能信号为高电平的情况下,在读时钟域的时钟信号为第四有效时钟沿D时,芯片对读时钟域的读使能信号从低电平到高电平进行拉高。在①对应位置,芯片开始从缓存中读取数据d并同步到PCS层,并且从缓存中读取数据的地址为地址3。又例如图6中,在读时钟域的时钟信号为第五有效时钟沿E时,芯片接收到读时钟域的读使能信号为高电平。在②对应位置,芯片开始从缓存中读取数据e并同步到PCS层,并且从缓存中读取数据的地址为地址4。
在一种可能的实施方式中,写时钟域的时钟信号与读时钟域的时钟信号相差0至0.5个时钟周期。在对芯片进行后端设计时,为了使写使能信号的延迟信号在达到高电平之前,单个数据已经被芯片写入了缓存。本实施例提供的方法是约束芯片将每个数据写入缓存的延迟要小于0.25个周期,同时约束写使能信号的延迟信号的延迟略大于0.5个时钟周期。
其中,写使能信号的延迟信号的延迟略大于0.5个时钟周期,可以根据图4进行理解,信号从D类型触发器的输入端D端到时钟信号端CK端,可以理解为信号暂存在了D类型触发器中。信号从D类型触发器的时钟信号端CK端到输出端Q端,可以理解为信号被输出了。所以写使能信号的延迟信号的延迟略大于0.5个时钟周期可以理解为,芯片已经将写使能信号输入到了写时钟域的D类型触发器的输入端D端的情况下,在写时钟域的时钟信号为有效时钟沿时,芯片通过写时钟域的D类型触发器将信号从时钟信号端CK端到输出端Q端、再到读时钟域的同步器中的第一触发器的输入端D端,这条路径的延时略大于0.5个时钟周期。
请参阅图7,图7是本申请实施例提供的一种向缓存写入以及读取数据的时序图。如图7所示,由于写时钟域的时钟信号与读时钟域的时钟信号相差0至0.5个时钟周期,并且写使能信号的延迟信号的延迟略大于0.5个时钟周期,所以在读时钟域的时钟信号为有效时钟沿时,芯片可以稳定地采样到写使能信号的延迟信号,也即采样到的写使能信号的延迟信号稳定在低电平或者稳定在高电平。所以第一触发信号不会产生亚稳态。由图7可知,在①对应的位置,写使能信号为高电平,写使能信号的延迟信号也为高电平,芯片在写时钟域的时钟信号为有效时钟沿时,将PMA层接收的数据d写入缓存,并且向缓存中写入数据的地址为地址3中。随后,芯片通过同步器将写使能信号同步给读时钟域。在②对应位置,数据d已经被芯片写入缓存,并且向缓存中写入数据的地址为地址3中。在③对应位置,第三触发信号为高电平,表示芯片在读时钟域已经接收到了高电平的写使能信号。芯片将读使能信号从低电平到高电平进行拉高,所以芯片开始将数据d从缓存中读出,其中从缓存中读取数据的地址为地址3,并且同步给PCS层。由图7可知芯片将PMA层中的数据d写入缓存,到芯片将数据d从缓存中读出并同步给PCS层之间,相隔了1至1.5个时钟周期,也就是芯片将PMA层数据同步到PCS层延迟了约1至1.5个时钟周期。图7的向缓存中写入数据的地址,示例性给出了0至11,共计12个。对于已经写入缓存对应位置的数据,在图7中示例性给出了数据a至数据l,共计12个。图7中从缓存中读取数据的地址,示例性给出了3至10,共计8个。对于读出的数据,在图7中示例性给出了数据d至数据k,共计8个,并且NA表示对数据中不关注的部分。
在一种可能的实施方式中,写时钟域的时钟信号与读时钟域的时钟信号相差0.5至0.75个时钟周期。在对芯片进行后端设计时,为了使写使能信号的延迟信号在达到高电平之前,单个数据已经被芯片写入了缓存。本实施例提供的方法是约束芯片将每个数据写入缓存的延迟要小于0.25个周期,同时约束写使能信号的延迟信号的延迟略大于0.5个时钟周期。
请参阅图8,图8是本申请实施例提供的一种第一触发信号的时序图。如图8所示,由于写时钟域的时钟信号与读时钟域的时钟信号相差0.5至0.75个时钟周期,并且写使能信号的延迟信号的延迟略大于0.5个时钟周期。所以在写使能信号为高电平的情况下,在读时钟域的时钟信号为有效时钟沿时,芯片可能在位置A采样到写使能信号的延迟信号的上升沿,也即采样到的写使能信号的延迟信号没有稳定在低电平或者高电平。此时可以认为采样到的写使能信号的延迟信号没有稳定,也就无法满足第一触发器的建立保持时间,可能会出现亚稳态。其中第一触发器的建立保持时间,是指在读时钟域的时钟信号为有效时钟沿的前后一段时间内,输入第一触发器的信号必须是稳定的。如果在这段时间内,输入的信号发生变化,那么就可能会出现亚稳态。同时在亚稳态的时候输出信号会出现毛刺、震荡或者固定在某一电压值。在经过震荡以后输出信号可能会出现0或者1,并且出现0或者1的概率是随机的。所以由于亚稳态的产生,芯片有10%的概率在位置A稳定地采样到写使能信号的延迟信号为1,也就是为高电平,并且在此时第一触发信号开始升高为高电平。若第一触发器没有在位置A稳定地采样到写使能信号的延迟信号为高电平,那么芯片可以延迟一个时钟周期,在读时钟域的时钟信号的下一个有效时钟沿,也就是在位置B稳定地采样到写使能信号的延迟信号为高电平,并且在此时第一触发信号开始升高为高电平。
在一种可能的实施方式中,请参阅图9,图9是本申请实施例提供的一种在图8的位置A采样到写使能信号的延迟信号为高电平时的时序图。如图9所示,在①对应的位置,写使能信号为高电平,写使能信号的延迟信号也为高电平,芯片在写时钟域的时钟信号为有效时钟沿时,将PMA层接收的数据d写入缓存,并且向缓存中写入数据的地址为地址3中。随后,芯片通过同步器将写使能信号同步给读时钟域。在②对应位置,数据d已经被芯片写入缓存,并且向缓存中写入数据的地址为地址3中。在③对应位置,第一触发信号为高电平,第三触发信号也为高电平,表示芯片在读时钟域已经接收到了高电平的写使能信号。芯片可以将读使能信号从低电平到高电平进行拉高,所以芯片开始将数据d从缓存中读出,其中从缓存中读取数据的地址为地址3,并且同步给PCS层。由图9可知芯片将PMA层中的数据d写入缓存,到芯片将数据d从缓存中读出并同步给PCS层,相隔了0.5至0.75个时钟周期,也就是芯片将PMA层数据同步到PCS层延迟了约0.5至0.75个时钟周期,并且此情况下的数据延迟是最小的。图9的向缓存中写入数据的地址,示例性给出了0至11,共计12个。对于已经写入缓存对应位置的数据,在图9中示例性给出了数据a至数据l,共计12个。图9中从缓存中读取数据的地址,示例性给出了3至11,共计9个。对于读出的数据,在图9中示例性给出了数据d至数据l,共计9个,并且NA表示对数据中不关注的部分。
在另一种可能的实施方式中,请参阅图10,图10是本申请实施例提供的一种在图8的位置B采样到写使能信号的延迟信号为高电平时的时序图。如图10所示,芯片在位置B稳定地采样到写使能信号的延迟信号,所以第一触发信号不会产生亚稳态。由图10可知,在①对应的位置,写使能信号为高电平,写使能信号的延迟信号也为高电平,芯片在写时钟域的时钟信号为有效时钟沿时,将PMA层接收的数据d写入缓存,并且向缓存中写入数据的地址为地址3中。随后,芯片通过同步器将写使能信号同步给读时钟域。在②对应位置,数据d已经被芯片写入缓存,并且向缓存中写入数据的地址为地址3中。在③对应位置,第一触发信号为高电平,第三触发信号也为高电平,表示芯片在读时钟域已经接收到了高电平的写使能信号。芯片将读使能信号从低电平到高电平进行拉高,所以芯片开始将数据d从缓存中读出,其中从缓存中读取数据的地址为地址3,并且同步给PCS层。由图10可知芯片将PMA层中的数据d写入缓存,到芯片将数据d从缓存中读出并同步给PCS层,相隔了0.5至0.75个时钟周期,也就是芯片将PMA层数据同步到PCS层延迟了约1.5至1.75个时钟周期。图10的向缓存中写入数据的地址,示例性给出了0至11,共计12个。对于已经写入缓存对应位置的数据,在图10中示例性给出了数据a至数据l,共计12个。图10中从缓存中读取数据的地址,示例性给出了3至10,共计8个。对于读出的数据,在图10中示例性给出了数据d至数据k,共计8个。并且NA表示对数据中不关注的部分。
在一种可能的实施方式中,写时钟域的时钟信号与读时钟域的时钟信号相差0.75至1个时钟周期。在对芯片进行后端设计时,为了使写使能信号的延迟信号在达到高电平之前,单个数据已经被芯片写入了缓存。本实施例提供的方法是约束芯片将每个数据写入缓存的延迟要小于0.25个周期,同时约束写使能信号的延迟信号的延迟略大于0.5个时钟周期。
请参阅图11,图11是本申请实施例提供的又一种向缓存写入以及读取数据的时序图。如图11所示,由于写时钟域的时钟信号与读时钟域的时钟信号相差0.75至1个时钟周期,并且写使能信号的延迟信号的延迟略大于0.5个时钟周期,所以在读时钟域的时钟信号为有效时钟沿时,芯片可以稳定地采样到写使能信号的延迟信号,也即采样到的写使能信号的延迟信号稳定在低电平或者稳定在高电平。所以第一触发信号不会产生亚稳态。由图11可知,在①对应的位置,写使能信号为高电平,写使能信号的延迟信号也为高电平,芯片在写时钟域的时钟信号为有效时钟沿时,将PMA层接收的数据d写入缓存,并且向缓存中写入数据的地址为地址3中。随后,芯片通过同步器将写使能信号同步给读时钟域。在②对应位置,数据d已经被芯片写入缓存,并且向缓存中写入数据的地址为地址3中。在③对应位置,第三触发信号为高电平,表示芯片在读时钟域已经接收到了高电平的写使能信号。芯片将读使能信号从低电平到高电平进行拉高,所以芯片开始将数据d从缓存中读出,其中从缓存中读取数据的地址为地址3,并且同步给PCS层。由图11可知芯片将PMA层中的数据d写入缓存,到芯片将数据d从缓存中读出并同步给PCS层,相隔了0.75至1个时钟周期,也就是芯片将PMA层数据同步到PCS层延迟了约0.75至1个时钟周期。图11的向缓存中写入数据的地址,示例性给出了0至11,共计12个。对于已经写入缓存对应位置的数据,在图11中示例性给出了数据a至数据l,共计12个。图11中从缓存中读取数据的地址,示例性给出了3至10,共计8个。对于读出的数据,在图11中示例性给出了数据d至数据k,共计8个,并且NA表示对数据中不关注的部分。
因此,综合图7至图11所对应的实施例,可以在写时钟域的时钟信号与读时钟域的时钟信号为同频不同相,并且相位确定的情况下,比如高速接口的公用参考时钟(commonreference clock)模式或者转发时钟(forward clock)模式。芯片通过控制PMA层向缓存写入数据,以及通过控制PCS层从缓存中读取数据,来达到芯片将PMA层数据同步到PCS层的低延迟。
具体来说,请参阅图12,图12是本申请实施例提供的一种同步数据的结果示意图。如图12所示,写时钟域的时钟信号和读时钟域的时钟信号是同频不同相的信号,在芯片得出写时钟域的时钟信号与读时钟域的时钟信号相差0至0.5个时钟周期时,芯片依据同步器所同步的使能信号将PMA层的数据同步到PCS层延迟了约1至1.5个时钟周期。在写时钟域的时钟信号与读时钟域的时钟信号相差0.75至1个时钟周期时,芯片依据同步器所同步的使能信号将PMA层数据同步到PCS层延迟了约0.75至1个时钟周期。在写时钟域的时钟信号与读时钟域的时钟信号相差0.5至0.75个时钟周期时,第一触发器会产生亚稳态,并且芯片有10%的可能性,在写使能信号的延迟信号的上升沿就稳定地采样到高电平的写使能信号的延迟信号,此时芯片依据同步器所同步的使能信号将PMA层数据同步到PCS层延迟了约0.5至0.75个时钟周期。相应的,在写时钟域的时钟信号与读时钟域的时钟信号相差0.5至0.75个时钟周期时,若芯片没有在写使能信号的延迟信号的上升沿就稳定地采样到高电平的写使能信号的延迟信号,那么此时芯片依据同步器所同步的使能信号将PMA层数据同步到PCS层延迟了约1.5至1.75个时钟周期。
上述详细阐述了本申请实施例的方法,下面提供本申请实施例的装置。
请参见图13,图13是本申请实施例提供的一种同步数据的装置的功能单元组成框图,同步数据的装置130包括处理单元1301和通信单元1302:
处理单元1301,具体用于获取写时钟域的写使能信号;
通信单元1302,具体用于写使能信号为高电平时,根据写时钟域的时钟信号向缓存写入物理介质子层接收到的数据;
处理单元1301,具体用于通过同步器将写使能信号同步给读时钟域;
通信单元1302,具体用于在读时钟域接收到写使能信号为高电平时,根据读时钟域的时钟信号将从缓存读取的数据同步给物理编码子层;
其中,写时钟域的时钟信号和读时钟域的时钟信号是同频不同相的信号。
在上述方法中,芯片根据写时钟域的写使能信号向缓存中写入数据,通过同步器将写使能信号同步给读时钟域,在读时钟域接收到写使能信号为高电平时从缓存中读取数据。由此芯片也可以通过控制对缓存的数据写入与数据读取,来实现数据通路的低延时,提高系统的运行效率和响应速度。
另一种可能的实施方式中,同步器13011包括第一触发器130111、第二触发器130112和第三触发器130113,通过同步器13011将写使能信号的延迟信号同步给读时钟域,包括:
处理单元1301,具体用于将写使能信号输入第一触发器130111;
处理单元1301,具体用于在读时钟域的时钟信号为第一有效时钟沿时,通过第一触发器130111向第二触发器130112输入第一触发信号,其中,第一触发信号比写使能信号延迟了预设的周期值;
处理单元1301,具体用于在读时钟域的时钟信号为第二有效时钟沿时,通过第二触发器130112向第三触发器130113输入第二触发信号,其中,第二触发信号比第一触发信号延迟了预设的周期值;
处理单元1301,具体用于在读时钟域的时钟信号为第三有效时钟沿时,通过第三触发器130113输出第三触发信号,其中,第三触发信号比第二触发信号延迟了预设的周期值;
处理单元1301,具体用于将第三触发信号同步给读时钟域。
可以看出,芯片通过三个触发器组成的同步器将写时钟域的写使能信号同步给读时钟域。利用了触发器只有在时钟信号的有效时钟沿时,才会输出信号的特性,使得读时钟域可以稳定地采样到写时钟域的使能信号,从而可以大大降低采样到亚稳态信号的概率。
又一种可能的实施方式中,通信单元1302,具体用于在读时钟域接收到写使能信号为高电平时,根据读时钟域的时钟信号将从缓存读取的数据同步给物理编码子层,包括:
处理单元1301,具体用于在读时钟域接收到第三触发信号为高电平时,对读时钟域的读使能信号从低电平到高电平进行拉高;
通信单元1302,具体用于在读使能信号从低电平到高电平进行拉高的过程中,将从缓存读取的数据同步给物理编码子层。
在上述方法中,芯片在读时钟域接收到第三触发信号为高电平时,对读时钟域的读使能信号从低电平到高电平进行拉高,也就是芯片可以通过读时钟域的读使能信号来控制物理编码子层从缓存中读取数据。
需要说明的是,在本申请实施例中,各个单元的具体实现及技术效果还可以对应参照图2、图3、图4、图5、图6、图7、图8、图9、图10、图11、图12对应实施例的相应描述。
请参见图14,图14是本申请实施例提供的一种计算设备的结构示意图。如图14所示,计算设备1400可包括:一个或多个处理器1401、一个或多个存储器1402以及一个或多个通信接口1403。这些部件可通过总线1404或者其他方式连接,图14以通过总线1404连接为例。在一种可能的实现中,计算设备1400可以是前述内容中的服务器。其中:
通信接口1403可用于计算设备1400与其他通信设备,例如其他计算设备,进行通信。具体的,通信接口1403可以是有线接口。
存储器1402可以和处理器1401通过总线1404或者输入输出端口耦合,存储器1402也可以与处理器1401集成在一起。存储器1402用于存储各种软件程序和/或多组指令或者数据。具体的,存储器1402可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1402可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器1402可以存储操作系统(下述简称系统),例如uCOS、VxWorks、RTLinux等嵌入式操作系统。存储器1402还可以存储网络通信程序,该网络通信程序可用于与一个或多个附加设备,一个或多个用户设备,一个或多个终端进行通信。存储器1402可以是独立存在,通过总线1404与处理器1401相连接。存储器1402也可以和处理器1401集成在一起。
其中,存储器1402用于存储执行以上方案的应用程序代码,并由处理器1401来控制执行。处理器1401用于执行存储器1402中存储的应用程序代码。
处理器1401可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1401也可以是实现确定功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。
本申请实施例中,处理器1401可用于读取和执行计算机可读指令。具体的,处理器1401可用于调用存储于存储器1402中的程序,用于执行以下操作:
通信接口1403获取写时钟域的写使能信号;
在写使能信号为高电平时,根据写时钟域的时钟信号向缓存写入物理介质子层接收到的数据;
通过同步器将写使能信号同步给读时钟域;
在读时钟域接收到写使能信号为高电平时,根据读时钟域的时钟信号将从缓存读取的数据同步给物理编码子层;
其中,写时钟域的时钟信号和读时钟域的时钟信号是同频不同相的信号。
在一种可能的实施方式中,处理器1401具体用于:
同步器包括第一触发器、第二触发器和第三触发器,通过同步器将写使能信号同步给读时钟域,包括:
将写使能信号输入第一触发器;
在读时钟域的时钟信号为第一有效时钟沿时,通过第一触发器向第二触发器输入第一触发信号,其中,第一触发信号比写使能信号延迟了预设的周期值;
在读时钟域的时钟信号为第二有效时钟沿时,通过第二触发器向第三触发器输入第二触发信号,其中,第二触发信号比第一触发信号延迟了预设的周期值;
在读时钟域的时钟信号为第三有效时钟沿时,通过第三触发器输出第三触发信号,其中,第三触发信号比第二触发信号延迟了预设的周期值;
将第三触发信号同步给读时钟域。
在一种可能的实施方式中,处理器1401具体用于:
在读时钟域接收到第三触发信号为高电平时,对读时钟域的读使能信号从低电平到高电平进行拉高;
在读使能信号从低电平到高电平进行拉高的过程中,将从缓存读取的数据同步给物理编码子层。
需要说明的是,在本申请实施例中,各个单元的具体实现及技术效果还可以对应参照图2、图3、图4、图5、图6、图7、图8、图9、图10、图11、图12对应实施例的相应描述。
本申请还提供了一种算机可读存储介质,计算机可读存储介质中存储有指令,当指令在至少一个处理器上运行时,实现前述的同步数据的方法,例如图2的方法。
本申请还提供了一种计算机程序产品,该计算机程序产品包括计算机指令,在被计算设备1400执行时,实现前述的同步数据的方法,例如图2的方法。
本申请实施例中,“举例来说”或者“比如”等词用于表示作例子、例证或说明。本申请中被描述为“举例来说”或者“比如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“举例来说”或者“比如”等词旨在以具体方式呈现相关概念。
本申请中实施例提到的“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b、或c中的至少一项(个),可以表示:a、b、c、(a和b)、(a和c)、(b和c)、或(a和b和c),其中a、b、c可以是单个,也可以是多个。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A、同时存在A和B、单独存在B这三种情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
以及,除非有相反的说明,本申请实施例使用“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的顺序、时序、优先级或者重要程度。例如,第一设备和第二设备,只是为了便于描述,而并不是表示这第一设备和第二设备的结构、重要程度等的不同,在某些实施例中,第一设备和第二设备还可以是同样的设备。
上述实施例中所用,根据上下文,术语“当……时”可以被解释为意思是“如果……”或“在……后”或“响应于确定……”或“响应于检测到……”。以上仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的构思和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (7)
1.一种同步数据的方法,其特征在于,所述方法包括:
获取写时钟域的写使能信号;
在所述写使能信号为高电平时,根据所述写时钟域的时钟信号向缓存写入物理介质子层接收到的数据;
通过同步器包括的第一触发器、第二触发器和第三触发器将所述写使能信号同步给读时钟域,包括:
将所述写使能信号的延迟信号输入所述第一触发器,其中,在所述写使能信号的延迟信号为高电平时,所述写使能信号的延迟信号用于表明所述数据已经写入到所述缓存中;
在所述读时钟域的时钟信号为第一有效时钟沿时,通过所述第一触发器向所述第二触发器输入第一触发信号,其中,所述第一触发信号比所述写使能信号延迟了预设的周期值;
在所述读时钟域的时钟信号为第二有效时钟沿时,通过所述第二触发器向所述第三触发器输入第二触发信号,其中,所述第二触发信号比所述第一触发信号延迟了预设的周期值;
在所述读时钟域的时钟信号为第三有效时钟沿时,通过所述第三触发器输出第三触发信号,其中,所述第三触发信号比所述第二触发信号延迟了预设的周期值;
将所述第三触发信号同步给所述读时钟域;
在所述读时钟域接收到所述写使能信号为高电平时,根据所述读时钟域的时钟信号将从所述缓存读取的所述数据同步给物理编码子层,包括:
在所述读时钟域接收到所述第三触发信号为高电平时,对所述读时钟域的读使能信号从低电平到高电平进行拉高;
在所述读使能信号从低电平到高电平进行拉高的过程中,将从所述缓存读取的所述数据同步给所述物理编码子层;
其中,所述写时钟域的时钟信号和所述读时钟域的时钟信号是同频不同相的信号。
2.根据权利要求1所述的方法,其特征在于,所述写时钟域的时钟信号与所述读时钟域的时钟信号相差0至0.5个时钟周期。
3.根据权利要求1所述的方法,其特征在于,所述写时钟域的时钟信号与所述读时钟域的时钟信号相差0.5至0.75个时钟周期。
4.根据权利要求1所述的方法,其特征在于,所述写时钟域的时钟信号与所述读时钟域的时钟信号相差0.75至1个时钟周期。
5.一种同步数据的装置,其特征在于,所述同步数据的装置包括处理单元和通信单元,其中,所述处理单元,用于获取写时钟域的写使能信号;
所述通信单元,用于在所述写使能信号为高电平时,根据所述写时钟域的时钟信号向缓存写入物理介质子层接收到的数据;
所述处理单元,还用于通过同步器包括的第一触发器、第二触发器和第三触发器将所述写使能信号同步给读时钟域;
所述处理单元具体用于:将所述写使能信号的延迟信号输入所述第一触发器,其中,在所述写使能信号的延迟信号为高电平时,所述写使能信号的延迟信号用于表明所述数据已经写入到所述缓存中;
在所述读时钟域的时钟信号为第一有效时钟沿时,通过所述第一触发器向所述第二触发器输入第一触发信号,其中,所述第一触发信号比所述写使能信号延迟了预设的周期值;
在所述读时钟域的时钟信号为第二有效时钟沿时,通过所述第二触发器向所述第三触发器输入第二触发信号,其中,所述第二触发信号比所述第一触发信号延迟了预设的周期值;
在所述读时钟域的时钟信号为第三有效时钟沿时,通过所述第三触发器输出第三触发信号,其中,所述第三触发信号比所述第二触发信号延迟了预设的周期值;
将所述第三触发信号同步给所述读时钟域;
所述通信单元,还用于在所述读时钟域接收到所述写使能信号为高电平时,根据所述读时钟域的时钟信号将从所述缓存读取的所述数据同步给物理编码子层,包括:
在所述读时钟域接收到所述第三触发信号为高电平时,对所述读时钟域的读使能信号从低电平到高电平进行拉高;
在所述读使能信号从低电平到高电平进行拉高的过程中,将从所述缓存读取的所述数据同步给所述物理编码子层;
其中,所述写时钟域的时钟信号和所述读时钟域的时钟信号是同频不同相的信号。
6.一种芯片装置,其特征在于,所述芯片装置用于调用存储器中的计算机程序,以实现权利要求1-4中任一项所述的方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在至少一个处理器上运行时,实现如权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310816407.0A CN116521604B (zh) | 2023-07-05 | 2023-07-05 | 一种同步数据的方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310816407.0A CN116521604B (zh) | 2023-07-05 | 2023-07-05 | 一种同步数据的方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116521604A CN116521604A (zh) | 2023-08-01 |
CN116521604B true CN116521604B (zh) | 2024-03-19 |
Family
ID=87403349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310816407.0A Active CN116521604B (zh) | 2023-07-05 | 2023-07-05 | 一种同步数据的方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116521604B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116795172B (zh) * | 2023-08-29 | 2023-12-12 | 芯耀辉科技有限公司 | 一种用于高速数字传输的跨时钟域处理方法、介质及装置 |
CN116795765B (zh) * | 2023-08-29 | 2023-12-08 | 芯耀辉科技有限公司 | 一种用于高速数据传输的数据对齐方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1932718A (zh) * | 2006-10-13 | 2007-03-21 | 启攀微电子(上海)有限公司 | 一种处理芯片复位的方法及电路 |
US8401043B1 (en) * | 2008-11-18 | 2013-03-19 | Marvell Israel (M.L.S.L) Ltd. | Hardware interface utilizing alignment symbols for demultiplexing |
CN105680895A (zh) * | 2014-12-05 | 2016-06-15 | 吉林克斯公司 | 发射器/接收器的缓冲器中的延时控制 |
CN111367495A (zh) * | 2020-03-06 | 2020-07-03 | 电子科技大学 | 一种异步先入先出的数据缓存控制器 |
CN112965689A (zh) * | 2021-02-26 | 2021-06-15 | 西安微电子技术研究所 | 一种基于源同步的分布式异步fifo数据交互方法及fifo结构 |
CN113615088A (zh) * | 2019-03-26 | 2021-11-05 | 华为技术有限公司 | 跨时钟域同步电路以及方法 |
-
2023
- 2023-07-05 CN CN202310816407.0A patent/CN116521604B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1932718A (zh) * | 2006-10-13 | 2007-03-21 | 启攀微电子(上海)有限公司 | 一种处理芯片复位的方法及电路 |
US8401043B1 (en) * | 2008-11-18 | 2013-03-19 | Marvell Israel (M.L.S.L) Ltd. | Hardware interface utilizing alignment symbols for demultiplexing |
CN105680895A (zh) * | 2014-12-05 | 2016-06-15 | 吉林克斯公司 | 发射器/接收器的缓冲器中的延时控制 |
CN113615088A (zh) * | 2019-03-26 | 2021-11-05 | 华为技术有限公司 | 跨时钟域同步电路以及方法 |
CN111367495A (zh) * | 2020-03-06 | 2020-07-03 | 电子科技大学 | 一种异步先入先出的数据缓存控制器 |
CN112965689A (zh) * | 2021-02-26 | 2021-06-15 | 西安微电子技术研究所 | 一种基于源同步的分布式异步fifo数据交互方法及fifo结构 |
Also Published As
Publication number | Publication date |
---|---|
CN116521604A (zh) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116521604B (zh) | 一种同步数据的方法及相关装置 | |
US5524270A (en) | System for transferring data between asynchronous data buses with a data buffer interposed in between the buses for synchronization of devices timed by different clocks | |
US20110116337A1 (en) | Synchronising between clock domains | |
US7196948B1 (en) | Method and apparatus for data capture on a bi-directional bus | |
US10725950B2 (en) | Peripheral interface circuit for serial memory | |
US7586337B2 (en) | Circuit for switching between two clock signals independently of the frequency of the clock signals | |
US8001409B2 (en) | Synchronization device and methods thereof | |
CN113615088A (zh) | 跨时钟域同步电路以及方法 | |
EP1122735B1 (en) | Interleaved data path and output management architecture for an interleaved memory and load pulser circuit for outputting the read data | |
US20070038795A1 (en) | Asynchronous bus interface and processing method thereof | |
US8443224B2 (en) | Apparatus and method for decoupling asynchronous clock domains | |
US6791953B2 (en) | Interface apparatus | |
US9747246B2 (en) | Electronic device for communicating between a microcontroller unit (MCU) and a host processor and related methods | |
EP2362318B1 (en) | A synchronization system and related integrated circuit | |
CN115220528B (zh) | 时钟获得方法、装置、芯片、电子设备及存储介质 | |
JP5221609B2 (ja) | Dllを共用してサンプリング位相設定を行うホストコントローラ | |
US20150149809A1 (en) | Synchronous bridge circuitry and a method of transferring data using asynchronous bridge circuitry | |
CN110618950B (zh) | 一种异步fifo读写控制电路及方法、可读存储介质及终端 | |
US20060218307A1 (en) | High performance register accesses | |
EP1443412A2 (en) | Information processing apparatus and memory access arranging method | |
EP1046172A1 (en) | Device containing a multi-port memory | |
JP4114749B2 (ja) | メモリ制御装置および電子装置 | |
JP3562416B2 (ja) | Lsi間データ転送システム及びそれに用いるソースシンクロナスデータ転送方式 | |
US10742216B1 (en) | Clock domain crossing for an interface between logic circuits | |
EP3739463B1 (en) | Circuit for asynchronous data transfer |
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 |