CN113491082B - 一种数据处理装置 - Google Patents
一种数据处理装置 Download PDFInfo
- Publication number
- CN113491082B CN113491082B CN201980093220.4A CN201980093220A CN113491082B CN 113491082 B CN113491082 B CN 113491082B CN 201980093220 A CN201980093220 A CN 201980093220A CN 113491082 B CN113491082 B CN 113491082B
- Authority
- CN
- China
- Prior art keywords
- clock signal
- clock
- signal
- circuit
- synchronous
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本申请提供了一种数据处理装置,该数据处理装置包括第一时钟频率合成电路、第二时钟频率合成电路和同步处理电路,第一时钟频率合成电路和第二时钟频率合成电路分别用于利用母时钟信号对第一时钟域和第二时钟域的时钟信号进行时钟同步,产生第一同步时钟信号和第二同步时钟信号,同步处理电路利用第一同步时钟信号控制缓存电路的数据写入,并利用第二同步时钟信号同步地控制缓存电路的数据读出,以实现跨时钟域数据传递延时固定。本申请还提供一种数据处理装置,该数据处理装置通过利用第二时钟信号对第一时钟信号进行时钟同步,从而实现采用同步处理电路进行跨时钟域数据传递,也能实现跨时钟域传输延时固定。
Description
技术领域
本申请涉及数据处理领域,具体涉及一种数据处理装置。
背景技术
随着现代集成电路芯片的设计规模不断扩大,在一个集成***中通常存在多个时钟,以驱动不同的模块,其带来的问题就是如何设计不同时钟域之间的接口电路,以实现数据从一个时钟域过渡到另外一个时钟域。
在目前的解决方案中,异步处理方案是解决该问题的通用技术手段,异步处理方案通常是通过异步先进先出存储器(first input first output,FIFO)来实现,如图1所示。在进行跨时钟域数据传递时,第一时钟域的数据对于接收该数据的第二时钟域而言是一个异步信号。在异步处理方案中,第一时钟域的数据需要先输入到异步FIFO中,该过程称为写操作,然后从异步FIFO中将该数据输出到第二时钟域中,该过程称为读操作。读写操作分别由两个时钟域的时钟信号CLK A和CLK B的跳变沿触发,由于两个时钟信号的相位关系是不确定的,所以当写操作被第一时钟域的时钟跳变沿触发时,即当异步信号到达跳变沿时,第二时钟域的时钟的跳变沿与异步信号的跳变沿的相对关系是不确定的,这导致的结果就是读写操作之间带来的数据传递的延时不确定。在无线通信领域的部分应用场景中,例如大规模多输入多输出***(massive multiple input multiple output,MMM)和大带宽通信,对异步处理方案引入的不定延时非常敏感,不定延时会带来较大的分析难度。
由此可见,如何解决进行跨时钟域数据传递时,采用异步处理方案引入的不定延时是需要解决的问题。
发明内容
本申请实施例提供了一种数据处理装置,可应用于两个时钟域之间的跨时钟域数据交互,并且可以使跨时钟域数据传递延时固定,以避免不确定时延带来的不利影响。
本申请实施例第一方面提供一种数据处理装置,包括:第一时钟频率合成电路、第二时钟频率合成电路和同步处理电路,该同步处理电路包括缓存电路。该第一时钟频率合成电路用于利用母时钟信号对第一时钟信号进行时钟同步,以产生第一同步时钟信号,该母时钟信号为按照固定时间间隔发生跳变的时钟信号,该第一时钟信号为第一时钟域的时钟信号,该第一时钟信号的频率小于母时钟信号的频率,该第一同步时钟信号在发生跳变时的跳变沿与母时钟信号的跳变沿对齐。该第二时钟频率合成电路用于利用母时钟信号对第二时钟信号进行时钟同步,以产生第二同步时钟信号,该第二时钟信号为第二时钟域的时钟信号,该第二时钟信号的频率与第一时钟信号不同,且小于母时钟信号的频率,该第二同步时钟信号在发生跳变时的跳变沿与母时钟信号的跳变沿对齐;该同步处理电路用于利用第一同步时钟信号对缓存电路的数据写入进行控制,并同步地利用第二同步时钟信号对缓存电路的数据读出进行控制,从而实现将第一时钟域的数据转换为第二时钟域的数据。
由上述第一方面可知,通过对第一时钟信号和第二时钟信号进行时钟同步,产生第一同步时钟信号和第二同步时钟信号,同步处理电路可以利用该第一同步时钟信号和第二同步时钟信号实现第一时钟域和第二时钟域之间的跨时钟域数据传递,避免使用异步处理电路进行跨时钟域数据传递引入的延时不确定问题。
可选的,结合上述第一方面,在第一种可能的实现方式中,第一时钟频率合成电路包括第一控制信号生成单元和第一门控单元,第一控制信号生成单元用于根据第一时钟信号与母时钟信号的频率比例关系生成第一控制信号,第一门控单元用于根据该第一控制信号将母时钟信号拟合成第一同步时钟信号。
可选的,结合上述第一方面,在第二种可能的实现方式中,第二时钟频率合成电路包括第二控制信号生成单元和第二门控单元,第二控制信号生成单元用于根据第二时钟信号与母时钟信号的频率比例关系生成第二控制信号,第二门控单元用于根据该第二控制信号将母时钟信号拟合成第二同步时钟信号。
可选的,结合上述第一方面、第一方面第一种或第二种可能的实现方式,在第三种可能的实现方式中,同步处理电路还包括第一时钟图谱配置电路和第一计数器,第一同步时钟信号触发第一计数器生成第一指示信号,该第一指示信号可以指示缓存电路在第一同步时钟信号控制下进行数据写入的理论速率,第一时钟图谱配置电路用于根据第一指示信号生成有效读指示信号,该有效读指示信号用于控制缓存电路在第二同步时钟信号控制下进行数据读出的实际速率。
可选的,结合上述第一方面第三种可能的实现方式,在第四种可能的实现方式中,同步处理电路还包括第二时钟图谱配置电路和第二计数器,第二同步时钟信号触发第二计数器生成第二指示信号,该第二指示信号可以指示缓存电路在第二同步时钟信号控制下进行数据读出的理论速率,第二时钟图谱配置电路用于根据第二指示信号生成有效写指示信号,该有效写指示信号用于控制缓存电路在第一同步时钟信号控制下进行数据写入的实际速率。
上述有效读指示信号和有效写指示信号的作用是使得缓存电路进行数据写入和数据读出的实际速率相匹配,避免读写速率不匹配时造成数据错误的情况。
可选的,结合上述第一方面第三种可能的实现方式,在第五种可能的实现方式中,同步处理电路具体用于在有效写指示信号为高电平时利用第一同步时钟信号控制缓存电路进行数据写入,并在有效读指示信号为高电平时,同步地利用第二同步时钟信号控制缓存电路进行数据读出。由于缓存电路进行的数据写入和数据读出是同步的,所以通过后端进行时序收敛,可以使得跨时钟域数据传递延时固定,避免了采用异步处理方案时,延时不确定的问题。
可选的,结合上述第一方面、第一方面第一种至第五种任意一种可能的实现方式,在第六种可能的实现方式中,缓存电路包括同步FIFO或寄存器。
本申请实施例第二方面提供一种数据处理装置,包括:时钟频率合成电路和同步处理电路,该同步处理电路包括缓存电路。该时钟频率合成电路用于利用第二时钟信号对第一时钟信号进行时钟同步,以产生第一同步时钟信号,该第二时钟信号为第二时钟域的,且按照固定时间间隔发生跳变的时钟信号,该第一时钟信号为第一时钟域的时钟信号,第一时钟信号的频率小于第二时钟信号的频率,第一同步时钟信号在发生跳变时的跳变沿与第二时钟信号的跳变沿对齐;同步处理电路用于第一同步时钟信号对缓存电路的数据写入进行控制,并同步地利用第二时钟信号对缓存电路的数据读出进行控制,从而实现将第一时钟域的数据转换为第二时钟域的数据。
由上述第二方面可知,本方案与上述第一方面的方案原理是相同,在本方案中,第二时钟信号作为母时钟信号对第一时钟信号进行时钟同步,产生第一同步时钟信号,所以无需对第二时钟信号进行时钟同步,同步处理电路可以利用该第一同步时钟信号和第二时钟信号实现第一时钟域和第二时钟域之间的跨时钟域数据传递,避免使用异步处理电路进行跨时钟域数据传递引入的延时不确定问题。
可选的,结合上述第二方面,在第一种可能的实现方式中,时钟频率合成电路包括控制信号生成单元和门控单元,控制信号生成单元用于根据第一时钟信号与第二时钟信号的频率比例关系生成控制信号,门控单元用于根据该控制信号将第二时钟信号拟合成第一同步时钟信号。
可选的,结合上述第二方面或第二方面第一种可能的实现方式,在第二种可能的实现方式中,同步处理电路还包括第一时钟图谱配置电路和第一计数器,第一同步时钟信号触发第一计数器生成第一指示信号,该第一指示信号可以指示缓存电路在第一同步时钟信号控制下进行数据写入的理论速率,第一时钟图谱配置电路用于根据第一指示信号生成有效读指示信号,该有效读指示信号用于控制缓存电路在第二时钟信号控制下进行数据读出的实际速率。
可选的,结合上述第二方面第二种可能的实现方式,在第三种可能的实现方式中,同步处理电路还包括第二时钟图谱配置电路和第二计数器,第二时钟信号触发第二计数器生成第二指示信号,该第二指示信号可以指示缓存电路在第二同步时钟信号控制下进行数据读出的理论速率,第二时钟图谱配置电路用于根据第二指示信号生成有效写指示信号,该有效写指示信号用于控制缓存电路在第一同步时钟信号控制下进行数据写入的实际速率。有效读指示信号和有效写指示信号的作用是使得缓存电路进行数据写入和数据读出的实际速率相匹配,避免读写速率不匹配时造成数据错误的情况。
可选的,结合上述第二方面第二种可能的实现方式,在第四种可能的实现方式中,同步处理电路具体用于在有效写指示信号为高电平时利用第一同步时钟信号控制缓存电路进行数据写入,并在有效读指示信号为高电平时,同步地利用第二同步时钟信号控制缓存电路进行数据读出。由于缓存电路进行的数据写入和数据读出是同步的,所以通过后端进行时序收敛,可以使得跨时钟域数据传递延时固定,避免了采用异步处理方案时,延时不确定的问题。
可选的,结合上述第二方面、第二方面第一种至第四种任意一种可能的实现方式,在第六种可能的实现方式中,缓存电路包括同步FIFO或寄存器。
本申请实施例提供的两种技术方案中,通过利用相同的母时钟信号对第一时钟信号和第二时钟信号进行时钟同步,或者通过利用第二时钟信号对第一时钟信号进行时钟同步后,可以使用同步处理电路来将第一时钟域的数据转换为第二时钟域的数据,在前端上实现了电路同步化设计,取代了原有的异步处理方案中的异步处理电路,从而避免异步处理引入的延时不确定问题,实现电路同步化设计还可以避免采用异步处理电路时引入的设计复杂度以及***性能风险。
附图说明
图1为传统异步处理方案的原理示意图;
图2为本申请方案应用架构示意图;
图3为本申请实施例中一种数据处理装置的一个实施例示意图;
图4为母时钟信号、第一同步时钟信号和第二同步时钟信号的示意图;
图5为本申请实施例中第一时钟频率合成电路一个实施例示意图;
图6为本申请实施例中第二时钟频率合成电路一个实施例示意图;
图7为本申请实施例中第一或第二时钟频率合成电路的一种电路结构示意图;
图8为本申请实施例中同步处理电路一个实施例示意图;
图9为本申请实施例中有效写指示信号和有效读指示信号的示意图;
图10为本申请方案的同步采样过程示意图;
图11为传统异步处理方案的异步采样过程示意图;
图12为本申请实施例中另一种数据处理装置的一个实施例示意图;
图13为本申请实施例中时钟频率合成电路一个实施例示意图;
图14为本申请实施例中同步处理电路另一实施例示意图。
具体实施方式
本申请实施例提供一种数据处理装置,可应用于两个时钟域之间的数据传递,可以避免采用异步处理方案引入的延时不确定问题,适用于对不定延时敏感的无线通信的部分解决方案中,避免不定延时在这些场景中带来的不利影响。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例可应用于两个异频的时钟域之间的跨时钟域数据传递场景。为了便于理解,可以将作为数据发送方的时钟域看作第一时钟域,作为数据接收方的时钟域看作第二时钟域。应理解的,一个时钟域既可以作为数据发送方,也可以作为数据接收方,因此第一时钟域和第二时钟域分别只是对作为数据发送方和数据接收方的两个时钟域的代称。
图2为本申请方案应用架构示意图。
如图2所示,本方案通过采用一个母时钟信号经过不同的时钟频率合成后生成的子时钟信号1~N(N为大于1的整数)作为时钟域A到时钟域X的时钟信号,从而实现不同时钟域的同步化设计,进而采用同步处理电路来实现不同时钟域之间的数据同步过渡。
图3为本申请实施例中数据处理装置一个实施例示意图。
如图3所示,本申请实施例中数据处理装置30可以包括第一时钟频率合成电路301:第二时钟频率合成电路302和同步处理电路303;
第一时钟频率合成电路301,用于利用母时钟信号对第一时钟信号进行时钟同步,以产生第一同步时钟信号,该第一时钟信号为第一时钟域的时钟信号,该第一时钟信号的频率小于母时钟信号的频率,该第一同步时钟信号在发生跳变时的跳变沿与母时钟信号的跳变沿对齐;
第二时钟频率合成电路302,用于利用上述母时钟信号对第二时钟信号进行时钟同步,以产生第二同步时钟信号,该第二时钟信号为第二时钟域的时钟信号,该第二时钟信号的频率与第一时钟信号的频率不同,且小于母时钟信号的频率,第二同步时钟信号在发生跳变时的跳变沿与母时钟信号的跳变沿对齐;
利用母时钟信号对第一时钟信号和第二时钟信号进行时钟同步的过程为以一个母时钟信号作为一个输入时钟信号,该母时钟信号的相邻跳变时间间隔是固定的,按照母时钟信号的频率和第一时钟信号或第二时钟信号的频率比例关系,关闭母时钟信号的部分跳变沿,从而实现母时钟信号到第一同步时钟信号或第二同步时钟信号的拟合,经母时钟信号拟合而成的第一同步时钟信号和第二同步时钟信号的相邻跳变时间间隔不固定,但是第一同步时钟信号和第二同步时钟信号每次发生跳变时,其跳变沿和母时钟信号的跳变沿是对齐的,所以该第一同步时钟信号和第二同步时钟信号可视为同步时钟信号。以图4所示为例,母时钟信号为按照固定时间间隔发生跳变的时钟信号,假设母时钟信号频率为A,第一同步时钟信号频率为0.8A,第二同步时钟信号频率为0.6A,母时钟信号、第一同步时钟信号和第二同步时钟信号的频率比例为5∶4∶3,所以可以将5个母时钟信号的时钟周期作为一个轮训周期,按照相应的比例,在每个轮训周期内关闭母时钟信号的部分跳变沿,从而实现利用母时钟信号对第一时钟信号和第二时钟信号进行时钟同步,产生第一同步时钟信号和第二同步时钟信号。图4中展示的是在一个轮训周期内的时钟信号示意图,在后续的每个轮训周期内,第一同步时钟信号和第二同步时钟信号与母时钟信号的跳变沿对齐方式与图4所示相同,所以后端可以按照母时钟频率收敛该两个时钟信号的时序接口,从而实现不同频率时钟信号的同步化设计,从而可以使用同步处理电路代替传统异步处理方案中的异步处理电路以实现跨时钟域的数据传递;
同步处理电路303中包括缓存电路,同步处理电路303用于利用第一同步时钟信号对所述缓存电路的数据写入进行控制,并同步地利用所述第二同步时钟信号对所述缓存电路的数据读出进行控制,从而实现将第一时钟域的数据转换为第二时钟域的数据,将第一时钟域的数据转换为第二时钟域的数据的这个过程就是将数据从第一时钟域传递到第二时钟域的跨时钟域数据传递过程,利用第一同步时钟信号和第二同步时钟信号同步地进行缓存电路的数据写入和数据读出,并且通过在后端采用母时钟信号进行时序收敛,从而使得跨时钟域数据传递的延时固定。
在本实施例中,通过利用母时钟信号对第一时钟信号和第二时钟信号进行时钟同步,产生第一同步时钟信号和第二同步时钟信号后,同步处理电路303可根据该第一同步时钟信号和第二同步时钟信号来控制跨时钟域的连续数据在缓存电路中的数据写入和数据读出过程,从而以延时固定的方式实现第一时钟域的数据转换为第二时钟域的数据。
通过以上设计方案,可以在前端上实现电路同步化设计,由于第一同步时钟信号与第二同步时钟信号为同源同步时钟信号,它们均来源于同一个母时钟信号,所以后端可以采用母时钟信号频率做时序收敛,使得从第一时钟域传递到第二时钟域的跨时钟域数据传递延时固定,避免传统异步处理方案引入的延时不确定问题。
进一步的,在前端上实现电路同步化设计,可以避免采用异步电路设计时带来的设计复杂度和***性能风险,还可以避免异步FIFO在实际应用中功耗较高的问题。
可选的,第一时钟频率合成电路301具体用于根据第一时钟信号与母时钟信号的频率比例关系生成第一控制信号,并根据第一控制信号将母时钟信号拟合成第一同步时钟信号。
上述第一控制信号可以视为一张轮询表,其可以按照相应的轮训周期控制关闭母时钟信号的部分时钟跳变沿,从而实现母时钟信号到第一同步时钟信号的拟合过程。由于第一同步时钟信号是由母时钟信号拟合而成,所以第一同步时钟信号发生跳变时的跳变沿和母时钟信号的跳变沿对齐。
第一时钟频率合成电路301按照功能可以分为两个模块,包括第一控制信号生成单元3011和第一门控单元3012,如图5所示。第一控制信号生成单元3011具体用于上述生成第一控制信号的过程,第一门控单元3012具体用于根据第一控制信号拟合第一同步时钟信号的过程。
与第一时钟频率合成电路301类似,第二时钟频率合成电路302具体用于根据第二时钟信号与母时钟信号的频率比例关系生成第二控制信号,并根据该第二控制信号将母时钟信号拟合成第二同步时钟信号。
第二时钟频率合成电路302按照功能可以分为两个模块,包括第二控制信号生成单元3021和第二门控单元3022,如图6所示。第二控制信号生成单元3021具体用于上述生成第二控制信号的过程,第二门控单元3022具体用于根据第二控制信号拟合第二同步时钟信号的过程。
上述第二控制信号可以视为另外一张轮询表,其可以按照与第一控制信号相同的轮训周期控制关闭母时钟信号的部分时钟跳变沿,从而实现母时钟信号到第二同步时钟信号的拟合过程。由于第二同步时钟信号是由母时钟信号拟合而成,所以第二同步时钟信号发生跳变时的跳变沿和母时钟信号的跳变沿对齐。
第一时钟频率合成电路301和第二时钟频率合成电路302的具体电路结构是相同的,以图7所示电路为例,在一个时钟频率合成电路中包括计数器、时钟图谱配置电路、比较器、D触发器和门控电路等电路元件,母时钟信号作为输入的时钟信号CLK_IN,触发计数器生成计数信号,时钟图谱配置电路中预存有需要生成的第一同步时钟信号或第二同步时钟信号的信号参数,时钟图谱配置电路根据计数器产生的计数信号和预存的信号参数以及母时钟信号生成配置信号,比较器将配置信号和一个外部接入的Gating使能信号进行比较得到比较信号,同时母时钟信号作为D触发器的CP端脉冲信号,触发D触发器根据输入的比较信号产生一个相应的控制信号,该控制信号输入到门控电路的使能端EN,母时钟信号输入到门控电路的输入端IN,门控电路便可以根据该控制信号和母时钟信号进行运算,在输出端OUT输出进行时钟同步得到时钟信号CLK_OUT。
计数器、时钟图谱配置电路、比较器、D触发器组成的电路对应于第一控制信号生成单元3011或第二控制信号生成单元3021,门控电路对应于第一门控单元3012或第二门控单元3022。
可选的,如图8所示,同步处理电路303还可以包括第一时钟图谱配置电路3032和第一计数器3033。
第一同步时钟信号触发第一计数器3033生成第一指示信号,该第一指示信号可以指示缓存电路3031在第一同步时钟信号控制下进行数据写入的理论速率,第一时钟图谱配置电路3032用于根据第一指示信号生成有效读指示信号,该有效读指示信号用于控制缓存电路在第二同步时钟信号控制下进行数据读出的实际速率。
可选的,参阅图8,同步处理电路还可以包括第二时钟图谱配置电路3034和第二计数器3035。
第二同步时钟信号触发第二计数3035生成第二指示信号,该第二指示信号可以指示缓存电路3031在第二同步时钟信号控制下进行数据读出的理论速率,第二时钟图谱配置电路3034用于根据第二指示信号生成有效写指示信号,该有效写指示信号用于控制缓存电路在第一同步时钟信号控制下进行数据写入的实际速率。
同步处理电路303利用第一同步时钟信号控制缓存电路3031进行数据写入的过程简称为写操作,同步处理电路303利用第二同步时钟信号控制缓存电路3031进行数据读出的过程简称为读操作,写操作的最大速率是由第一同步时钟信号的频率决定的,读操作的最大速率是由第二同步时钟信号的频率决定的,由于第一同步时钟信号和第二同步时钟信号的频率是不相等的,所以读操作和写操作的最大速率也是不相等的,这种情况可能带来的问题是当读操作速率比写操作大时,容易产生读空的情况,即缓存电路3031中没有可以继续读取的有效数据;当读操作速率比写操作小时,容易产生写满的情况,即缓存电路3031缓存的有效数据的量已经达到饱和的状态。如果在读空的情况下继续进行读操作,或者在写满的情况下继续进行写操作,会导致数据发生错误。
上述有效读指示信号和有效写指示信号的作用是使得写操作和读操作的实际速率相匹配,从而避免数据发生错误。为便于理解,下面进行举例说明。
假设第一同步时钟信号的频率为100MHz,第二同步时钟信号的频率为200MHz,第一同步时钟信号和第二同步时钟信号为频率为300MHz的母时钟信号进行时钟同步得到的,第二同步时钟信号的频率为第一同步时钟信号的两倍。当第一同步时钟信号发生一次跳变,等待下一次跳变时,第二同步时钟信号会发生两次跳变,第一同步时钟信号发生的跳变触发写操作,并在第二同步时钟信号发生第一次跳变时触发读操作,但是第二同步时钟信号发生第二次跳变时,第一同步时钟信号没有发生第二次跳变,因此缓存电路3031中没有可读数据,因此第二同步时钟信号发生的第二次跳变不可以触发读操作,有效读指示信号的作用就是使得第二同步时钟信号的部分跳变沿无法触发读操作。如图9所示,其具体实现方式为在不可以触发读操作的第二同步时钟信号部分跳变沿发生时,有效写指示信号呈现低电平,同步处理电路303对缓存电路3031不执行读操作;在可以触发读操作的第二同步时钟信号部分跳变沿发生时,有效读指示信号呈现高电平,同步处理电路303可以对缓存电路3031执行读操作。应理解,有效读指示信号的呈现高电平或低电平的作用可以互换,本申请不做具体限定。
在第一同步时钟信号的频率为200MHz,第二同步时钟信号的频率为100MHz时,情况则相反,在这种情况中,需要一个有效写指示信号,其作用就是使得第一同步时钟信号的部分跳变沿无法触发写操作。在一种具体的实施例中,其具体实现方式为在不可以触发写操作的第一同步时钟信号部分跳变沿发生时,有效写指示信号呈现低电平,以指示缓存电路3031不可以进行数据写入;在可以触发写操作的第一同步时钟信号部分跳变沿发生时,呈现高电平,以指示第一同步时钟信号发生有效跳变,同步处理电路303可以对缓存电路3031执行写操作。
可选的,有效写指示信号和有效读指示信号可以通过第一时钟图谱配置电路3032和第二时钟图谱配置电路3034产生,也可以通过外部电路产生并从外部电路中引入缓存电路3031中使用,其均为可行的实现方式,本申请对此不做具体限定。
可选的,在一种具体的实施例中,缓存电路3031中可以包括同步FIFO,也可以包括一个或多个寄存器,其中,当缓存电路3031需要进行处理的跨时钟域数据的数据复杂程度较低时,可以使用一个寄存器或多个寄存器组成的寄存器阵列就可以实现对该跨时钟域数据的数据写入和数据读出处理,但是当该跨时钟域数据的数据复杂程度高时,需要使用具有合适深度的同步FIFO来对该数据进行写入和读出处理,本申请对此不做具体限定。
在本实施例中,同步处理电路对跨时钟域数据的处理是一个同步采样的过程,以图10所示为例子。
第一时钟域输入的数据段D0、D1、D2、NA、D0、D1经过同步处理电路同步采样后,输出到第二时钟域,其中NA为空数据段,该输入的操作和输出的操作同步,所以输出的数据段中也有NA数据段,输入到输出的数据延时确定。
在传统异步处理方案中,通常采用异步FIFO对跨时钟域数据进行处理,该处理过程为一个异步采样过程,以图11所示为例。
第一时钟域输入的数据段D0、D1、D2、NA、D3经过异步FIFO异步采样后,输出到第二时钟域,该输入的操作和输出的操作异步,输出操作不会输出输入操作中输入的NA数据段,输入到输出的数据延时不确定。
综上所述,本申请实施例提供的数据处理装置应用于两个异频时钟域之间的跨时钟域数据传递场景时,在传统的异步处理方案中,通常采用以异步FIFO为代表的异步处理电路来实现两个异频时钟域之间的跨时钟域数据传递,由于这两个异频时钟域的时钟信号是异步时钟信号,其相位关系是不确定的,只能采用异步处理电路来进行跨时钟域数据交互,所以该方案引入的延时为不确定的。本申请实施例未采用异步处理电路来进行跨时钟域数据传递,而是对两个时钟域的时钟进行时钟同步,从而可以使用同步处理电路来实现两个时钟域之间的跨时钟域数据交互,在前端上实现了电路同步化设计,后端采用母时钟信号频率进行时序收敛,从而使得本申请方案引入的跨时钟域数据传递延时确定,避免了在一些对不定时延敏感的应用场景中不定时延带来的不利影响。
在一种具体的实施例中,第一时钟域原本的时钟信号为第一时钟信号,第二时钟域原本的时钟信号为第二时钟信号,本申请提供的另一种数据处理装置可以直接第一时钟信号或第二时钟信号中频率较高的一个时钟信号作为母时钟信号,拟合出一个与之同步的异频同步时钟信号以替换另一个时钟信号,以实现两个时钟域的时钟信号同步化设计。下面进行详细说明。
图12为本申请实施例中另一种数据处理装置的一个实施例示意图。
如图12所示,本申请实施例中数据处理装置40可以包括:时钟频率合成电路401和同步处理电路402;
时钟频率合成电路401,用于利用第二时钟信号对第一时钟信号进行时钟同步,以产生第一同步时钟信号,第二时钟信号为第二时钟域的时钟信号,其为按照固定时间间隔发生跳变的时钟信号,第一时钟信号为第一时钟域的时钟信号,第一时钟信号的频率小于第二时钟信号的频率,第一同步时钟信号在发生跳变时的跳变沿与第二时钟信号的跳变沿对齐。
在本实施例中,第二时钟信号为频率大于第一时钟信号的时钟信号,第二时钟信号是第二时钟域的真实时钟信号,第二时钟信号发生跳变的时间间隔是固定的,其相当于上述实施例中所描述的母时钟信号,所以可以利用第二时钟信号对第一时钟信号进行时钟同步,而无需采用其他母时钟信号对第一时钟信号和第二时钟信号均进行时钟同步,降低了设计难度,也节约了电路元件。本实施例的实现原理与图3所示实施例是相似的,第一同步时钟信号和第二时钟信号的关系也可以参考图4中所描述的,此处不再赘述。由于第一同步时钟信号在发生跳变时与第二时钟信号的跳变沿是对齐的,且第二时钟信号为第一同步时钟信号的母时钟信号,所以后端可以按照第二时钟信号的频率收敛该两个时钟信号的时序接口,进而实现不同频率时钟信号的同步化设计,从而可以使用同步处理电路代替传统异步处理方案中的异步处理电路以实现跨时钟域的数据传递;
同步处理电路402中包括缓存电路,同步处理电路402用于第一同步时钟信号对缓存电路的数据写入进行控制,并同步地利用第二时钟信号对缓存电路的数据读出进行控制,从而实现将第一时钟域的数据转换为第二时钟域的数据。
在本实施例中,通过利用第二时钟信号对第一时钟信号进行时钟同步,产生第一同步时钟后,同步处理电路402可利用该第一同步时钟信号和第二同钟信号来控制缓存电路的数据写入和数据读出,从而实现第一时钟域和第二时钟域之间的跨时钟域数据传递。
通过以上设计方案,可以在前端上实现电路同步化设计,由于第一同步时钟信号与第二时钟信号为同源同步时钟信号,第一同步时钟信号来源于第二时钟信号,所以后端可以采用第二时钟信号频率做时序收敛,使得从第一时钟域传递到第二时钟域的跨时钟域数据传递延时固定,避免传统异步处理方案引入的延时不确定问题。
可选的,本实施例中的时钟频率合成电路401具体用于根据第一时钟信号与第二时钟信号的频率比例关系生成控制信号,并根据该控制信号将第二时钟信号拟合成第一同步时钟信号。
时钟频率合成电路401按照功能可以分为两个模块,包括控制信号生成单元4011和门控单元4012,如图13所示。控制信号生成单元4011具体用于上述生成控制信号的过程,门控单元4012具体用于根据控制信号拟合第一同步时钟信号的过程。
应理解,本实施例中的时钟频率合成电路401的实现方式与上述实施例中第一时钟频率合成电路301和第二时钟频率合成电路302是相同的,具体可以参考上文中对第一时钟频率合成电路301和第二时钟频率合成电路302的相关描述,具体此处不再赘述。
可选的,如图14所示,同步处理电路402还可以包括第一时钟图谱配置电路4022和第一计数器4023。
第一同步时钟信号触发第一计数器4023生成第一指示信号,该第一指示信号可以指示缓存电路4021在第一同步时钟信号控制下进行数据写入的理论速率,第一时钟图谱配置电路4022用于根据第一指示信号生成有效读指示信号,该有效读指示信号用于控制缓存电路4021在第二时钟信号控制下进行数据读出的实际速率。
可选的,同步处理电路402还可以包括第二时钟图谱配置电路4024和第二计数器4025。
第二时钟信号触发第二计数器4025生成第二指示信号,该第二指示信号可以指示缓存电路4021在第二时钟信号控制下进行数据读出的理论速率,第二时钟图谱配置电路4024用于根据第二指示信号生成有效写指示信号,该有效写指示信号用于控制缓存电路4021在第一同步时钟信号控制下进行数据写入的实际速率。
同步处理电路402中产生的有效读指示信号和有效写指示信号的作用与前文对同步处理电路303的描述中的是相同的,具体可以参考前文对同步处理电路303的描述中对有效读指示信号和有效写指示信号的具体描述,此处不再赘述。
可选的,缓存电路4021与上述缓存电路3031是相同的,如上文所述,在一种具体的实施例中,缓存电路4021可以是同步FIFO,也可以是一个或多个寄存器,其中,其中,当来自第一时钟域的连续数据的数据复杂程度较低时,可以使用一个寄存器或多个寄存器组成的寄存器阵列就可以实现对该连续数据的写入和读出处理,但是当该连续数据的数据复杂程度高时,需要使用具有合适深度的同步FIFO来对该连续数据进行写入和读出处理,本申请对此不做具体限定。
综上所述,本实施例中的数据处理装置40与上述实施例中的数据处理装置30的主要区别在于,数据处理装置40中直接采用频率较高的第二时钟信号作为母时钟信号,所以不需要对第二时钟信号进行时钟同步,而只需要利用第二时钟信号对第一时钟信号进行时钟同步,产生第一同步时钟信号,就可以实现第一时钟域和第二时钟域的时钟信号同步,从而可以通过同步处理电路代替传统异步处理方案中的异步处理电路来实现第一时钟域和第二时钟域之间的跨时钟域数据交互,在前端上实现了电路同步化设计,第一同步时钟信号为来源于第二时钟信号的时钟信号,所以第一同步时钟信号和第二时钟信号为同源同步时钟信号,其相位关系是确定的,后端可以采用第二时钟信号频率进行时序收敛,从而使得本申请方案引入的跨时钟域数据传递延时确定,避免了在一些对不定时延敏感的应用场景中不定时延带来的不利影响。
应理解,作为一个实施例,当第一时钟信号的频率大于第二时钟信号时,也可以采用第一时钟信号作为母时钟信号,对第二时钟信号进行时钟同步,产生第二同步时钟信号,该第二同步时钟信号与第一时钟信号为同步时钟信号,该方案同样可以实现第一时钟域和第二时钟域的时钟信号同步化设计,该方案的实现原理与上述实施例是相似的,具体此处不再赘述。
以上对本申请实施例所提供的两种数据处理装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (13)
1.一种数据处理装置,其特征在于,包括:第一时钟频率合成电路,用于利用母时钟信号对第一时钟信号进行时钟同步,以产生第一同步时钟信号,所述母时钟信号为按照固定时间间隔发生跳变的时钟信号,所述第一时钟信号的频率小于所述母时钟信号的频率,所述第一同步时钟信号在发生跳变时的跳变沿与所述母时钟信号的跳变沿对齐;
第二时钟频率合成电路,用于利用所述母时钟信号对第二时钟信号进行时钟同步,以产生第二同步时钟信号,所述第二时钟信号的频率与所述第一时钟信号的频率不同,且小于所述母时钟信号的频率,所述第二同步时钟信号在发生跳变时的跳变沿与所述母时钟信号的跳变沿对齐;
同步处理电路,包括缓存电路,所述同步处理电路用于利用所述第一同步时钟信号对所述缓存电路的数据写入进行控制,并同步地利用所述第二同步时钟信号对所述缓存电路的数据读出进行控制。
2.根据权利要求1所述的数据处理装置,其特征在于,所述第一时钟频率合成电路具体用于根据所述第一时钟信号与所述母时钟信号的频率比例关系生成第一控制信号,并根据所述第一控制信号将所述母时钟信号拟合成所述第一同步时钟信号。
3.根据权利要求1所述的数据处理装置,其特征在于,所述第二时钟频率合成电路具体用于根据所述第二时钟信号与所述母时钟信号的频率比例关系生成第二控制信号,并根据所述第二控制信号将所述母时钟信号拟合成所述第二同步时钟信号。
4.根据权利要求1-3任一所述的数据处理装置,其特征在于,所述同步处理电路还包括第一时钟图谱配置电路和第一计数器,所述第一同步时钟信号触发所述第一计数器生成第一指示信号,所述第一时钟图谱配置电路用于根据所述第一指示信号生成有效读指示信号。
5.根据权利要求4所述的数据处理装置,其特征在于,所述同步处理电路还包括第二时钟图谱配置电路和第二计数器,所述第二同步时钟信号触发所述第二计数器生成第二指示信号,所述第二时钟图谱配置电路用于根据所述第二指示信号生成有效写指示信号。
6.根据权利要求5所述的数据处理装置,其特征在于,所述同步处理电路具体用于在所述有效写指示信号为高电平时利用所述第一同步时钟信号控制所述缓存电路进行所述数据写入,并在所述有效读指示信号为高电平时,同步地利用所述第二同步时钟信号控制所述缓存电路进行所述数据读出。
7.根据权利要求1-3任一所述的数据处理装置,其特征在于,所述缓存电路包括同步先进先出存储器FIFO或寄存器。
8.一种数据处理装置,其特征在于,包括:时钟频率合成电路,用于利用第二时钟信号对第一时钟信号进行时钟同步,以产生第一同步时钟信号,所述第二时钟信号为第二时钟域的,且按照固定时间间隔发生跳变的时钟信号,所述第一时钟信号的频率小于所述第二时钟信号的频率,所述第一同步时钟信号在发生跳变时的跳变沿与所述第二时钟信号的跳变沿对齐;
同步处理电路,包括缓存电路,所述同步处理电路用于所述第一同步时钟信号对所述缓存电路的数据写入进行控制,并同步地利用所述第二时钟信号对所述缓存电路的数据读出进行控制。
9.根据权利要求8所述的数据处理装置,其特征在于,时钟频率合成电路具体用于根据所述第一时钟信号与所述第二时钟信号的频率比例关系生成控制信号,并根据所述控制信号将所述第二时钟信号拟合成所述第一同步时钟信号。
10.根据权利要求8或9所述的数据处理装置,其特征在于,所述同步处理电路还包括第一时钟图谱配置电路和第一计数器,所述第一同步时钟信号触发所述第一计数器生成第一指示信号,所述第一时钟图谱配置电路用于根据所述第一指示信号生成有效读指示信号。
11.根据权利要求10所述的数据处理装置,其特征在于,所述同步处理电路还包括第二时钟图谱配置电路和第二计数器,所述第二时钟信号触发所述第二计数器生成第二指示信号,所述第二时钟图谱配置电路用于根据所述第二指示信号生成有效写指示信号。
12.根据权利要求11所述的数据处理装置,其特征在于,所述同步处理电路具体用于在所述有效写指示信号为高电平时利用所述第一同步时钟信号控制所述缓存电路进行所述数据写入,并在所述有效读指示信号为高电平时,同步地利用所述第二时钟信号控制所述缓存电路进行所述数据读出。
13.根据权利要求8或9所述的数据处理装置,其特征在于,所述缓存电路包括同步FIFO或寄存器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/076562 WO2020172871A1 (zh) | 2019-02-28 | 2019-02-28 | 一种数据处理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113491082A CN113491082A (zh) | 2021-10-08 |
CN113491082B true CN113491082B (zh) | 2022-11-18 |
Family
ID=72238230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980093220.4A Active CN113491082B (zh) | 2019-02-28 | 2019-02-28 | 一种数据处理装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113491082B (zh) |
WO (1) | WO2020172871A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112698363B (zh) * | 2020-12-29 | 2024-04-16 | 成都国星通信有限公司 | 一种北斗抗干扰天线高精度数据采集方法及采集电路 |
US11532338B1 (en) | 2021-04-06 | 2022-12-20 | Habana Labs Ltd. | Mediating between asynchronous clock domains while preventing false indications of FIFO occupancy |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7248661B1 (en) * | 2003-08-26 | 2007-07-24 | Analog Devices, Inc. | Data transfer between phase independent clock domains |
US7352836B1 (en) * | 2001-08-22 | 2008-04-01 | Nortel Networks Limited | System and method of cross-clock domain rate matching |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1276028A1 (en) * | 2001-07-09 | 2003-01-15 | Telefonaktiebolaget L M Ericsson (Publ) | Status indication detection device and method |
CN100525173C (zh) * | 2004-02-18 | 2009-08-05 | 华为技术有限公司 | 一种通信设备中实现主备时钟相位对齐的方法 |
CN101043315B (zh) * | 2006-06-12 | 2011-08-03 | 华为技术有限公司 | 一种网络时钟同步装置、***及方法 |
CN101478308B (zh) * | 2009-01-13 | 2011-03-30 | 北京时代民芯科技有限公司 | 基于延时锁定环的可配置频率合成电路 |
CN102843164A (zh) * | 2012-08-27 | 2012-12-26 | 中国科学院国家授时中心 | 超宽带室内定位***发射时序控制方法 |
-
2019
- 2019-02-28 WO PCT/CN2019/076562 patent/WO2020172871A1/zh active Application Filing
- 2019-02-28 CN CN201980093220.4A patent/CN113491082B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7352836B1 (en) * | 2001-08-22 | 2008-04-01 | Nortel Networks Limited | System and method of cross-clock domain rate matching |
US7248661B1 (en) * | 2003-08-26 | 2007-07-24 | Analog Devices, Inc. | Data transfer between phase independent clock domains |
Non-Patent Citations (1)
Title |
---|
单片机总线上多时钟域下数据传递的可靠性研究;杨莉,舒军,焦启民;《湖北大学学报(自然科学版)》;20090331;第31卷(第1期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
WO2020172871A1 (zh) | 2020-09-03 |
CN113491082A (zh) | 2021-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5487092A (en) | System for high-speed synchronization across clock domains | |
US8301932B2 (en) | Synchronising between clock domains | |
US11061432B2 (en) | Data handoff between two clock domains sharing a fundamental beat | |
EP0798630A1 (en) | A synchronizer, method and system for transferring data | |
US4935942A (en) | Data sampling architecture | |
CN109032498B (zh) | 一种多fpga的多通道采集***的波形量化同步方法 | |
JP2919799B2 (ja) | データ転送が安定化されたディジタルシステム | |
US7352836B1 (en) | System and method of cross-clock domain rate matching | |
US10038450B1 (en) | Circuits for and methods of transmitting data in an integrated circuit | |
US9106235B2 (en) | Mesochronous synchronizer with delay-line phase detector | |
JPH09222988A (ja) | コンピュータシステム及び第1の回路と第2の回路との間でデータを転送するインタフェース回路 | |
KR20080007506A (ko) | 레이턴시에 둔감한 fifo 시그널링 프로토콜 | |
US6949955B2 (en) | Synchronizing signals between clock domains | |
US20040243869A1 (en) | Synchronous data transfer across clock domains | |
CN113491082B (zh) | 一种数据处理装置 | |
CN109800192B (zh) | 电子设备、fpga芯片及其接口电路 | |
US6982575B2 (en) | Clock ratio data synchronizer | |
CN112152626A (zh) | 一种模数转换采集电路和芯片 | |
JP2024071432A (ja) | 非同期asic | |
CN209842447U (zh) | 一种跨时钟域信号同步电路 | |
CN114185397B (zh) | 跨时钟域数据传输电路及方法 | |
CN110768778A (zh) | 一种单线通信电路、通信方法及通信*** | |
CN111641490B (zh) | 一种采样时钟高精度相位校准与时间基准确定方法 | |
CN210518362U (zh) | 一种单线通信电路及通信*** | |
CN113204514A (zh) | 一种提高芯片的spi接口频率的方法 |
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 |