CN116956784A - 基于前仿真的验证电路、方法、设备及介质 - Google Patents
基于前仿真的验证电路、方法、设备及介质 Download PDFInfo
- Publication number
- CN116956784A CN116956784A CN202310930587.5A CN202310930587A CN116956784A CN 116956784 A CN116956784 A CN 116956784A CN 202310930587 A CN202310930587 A CN 202310930587A CN 116956784 A CN116956784 A CN 116956784A
- Authority
- CN
- China
- Prior art keywords
- sub
- signal
- clock domain
- verification
- circuit
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 86
- 238000004088 simulation Methods 0.000 title claims abstract description 61
- 238000000034 method Methods 0.000 title claims description 43
- 230000001360 synchronised effect Effects 0.000 claims abstract description 41
- 238000012545 processing Methods 0.000 claims description 55
- 230000006870 function Effects 0.000 claims description 21
- 238000013461 design Methods 0.000 claims description 10
- 230000001934 delay Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 230000003111 delayed effect Effects 0.000 claims description 3
- 238000005065 mining Methods 0.000 abstract 1
- 230000008569 process Effects 0.000 description 14
- 230000006399 behavior Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提供一种基于前仿真的验证电路,涉及芯片技术领域。该电路包括判断模块及至少一个验证子电路;各验证子电路包括依次电连接的第一触发器、延迟单元和两级同步器;各第一触发器由第一时钟域提供第一时钟,各两级同步器由第二时钟域提供第二时钟,第一时钟与第二时钟的频率或相位不同;跨时钟域信号包括至少一个跨时钟域子信号,验证子电路,用于各跨时钟域子信号依次流经对应验证子电路的第一触发器、延迟单元、两级同步器,得到同步信号;判断模块,用于所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。本发明能够实现在前仿真阶段挖掘出潜在的异步问题。
Description
技术领域
本发明涉及芯片技术领域,尤其涉及一种基于前仿真的验证电路、方法、设备及介质。
背景技术
当信号从一个时钟域传递到另一个异步时钟域时,可能会出现亚稳态,亚稳态不仅会导致逻辑误判断,当亚稳态传播到后续组合逻辑电路时,会级联下去,导致整个系统无法正常工作。现有技术中,CDC(Clock Domain Crossing)方法可以利用TCL(Tool CommandLanguage)脚本语言以及分析工具把整个设计中存在的所有异步路径全部找出来,供设计人员进行分析并查看是否对所有的异步路径都进行了同步处理,但是这对验证人员来说帮助甚微,验证人员需要另外去验证同步处理是否正确,对于一些潜在的难以发现的异步问题,即使在设计阶段已经进行了同步处理,实际芯片仍然存在问题。
发明内容
有鉴于此,本发明提供一种基于前仿真的验证电路、方法、设备和介质,针对系统中存在的异步路径,在EDA(Electronic Design Automation,EDA)前仿真阶段通过调整时序路径,模拟EDA后仿真行为,把异步处理过程中存在潜在的异步问题挖掘出来,以便于在项目初期进行解决,避免项目末期才发现异步问题导致项目延期。本发明提供如下技术方案:
第一方面,本发明提出了一种基于前仿真的验证电路,包括判断模块及至少一个验证子电路;
各所述验证子电路包括依次电连接的第一触发器、延迟单元和两级同步器;
各所述第一触发器由第一时钟域提供第一时钟,各所述两级同步器由第二时钟域提供第二时钟,所述第一时钟与所述第二时钟的频率或相位不同;
跨时钟域信号包括至少一个跨时钟域子信号,所述验证子电路,用于各所述跨时钟域子信号依次流经对应所述验证子电路的所述第一触发器、所述延迟单元、所述两级同步器,得到同步信号;
所述判断模块,用于判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
在一实施方式中,当所述跨时钟域信号包括M个跨时钟域子信号,所述验证子电路的数量为M,M≥2时,执行M轮延迟处理流程,其中,第i轮延迟处理流程为:第i个验证子电路的延迟单元对第i个跨时钟域子信号进行延迟处理,第i个验证子电路的两级同步器同步处理后,得到第一同步信号;
第j个验证子电路的延迟单元对第j个跨时钟域子信号进行延迟处理,第j个验证子电路的两级同步器同步处理后,得到第二同步信号,j≠i,且j∈[1,M]。
在一实施方式中,M≥2时,将第i轮的第一同步信号及第二同步信号作为第i组同步信号;
判断M组同步信号是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
在一实施方式中,各所述两级同步器包括第二触发器和第三触发器;所述第二触发器分别和对应的所述延迟单元及所述第三触发器电连接。
在一实施方式中,所述第一触发器接收所述跨时钟域子信号并锁存;所述第一触发器将所述跨时钟域子信号输出给延迟单元;所述延迟单元将所述跨时钟域子信号做延迟设置后输出给所述两级同步器;所述两级同步器接收所述跨时钟域子信号,将所述跨时钟域子信号做同步处理后,输出同步信号。
在一实施方式中,所述预设功能需求为组合逻辑电路按照设计功能正常工作的需求。
第二方面,本发明提出一种基于前仿真的验证方法,所述方法包括:输入跨时钟域信号,所述跨时钟域信号包括至少一个跨时钟域子信号,各所述跨时钟域子信号依次流经对应所述验证子电路的所述第一触发器、所述延迟单元、所述两级同步器,得到同步信号;
判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
在一实施方式中,当所述跨时钟域信号包括M个跨时钟域子信号,M≥2时,所述各所述跨时钟域子信号依次流经对应所述验证子电路的所述第一触发器、所述延迟单元、所述两级同步器,得到同步信号,包括:执行M轮延迟处理流程,其中,第i轮延迟处理流程为:对第i个跨时钟域子信号进行延迟处理以及同步处理后,得到第一同步信号;
对第j个跨时钟域子信号进行延迟处理以及同步处理后,得到第二同步信号,j≠i,且j∈[1,M]。
第三方面,本发明提出一种电子设备,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行本发明实施例2所述的基于前仿真的验证方法。
第四方面,本发明提出一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例2所述的基于前仿真的验证方法。
本发明公开的基于前仿真的验证电路、方法、设备和介质,通过在两级同步器前端增加延迟单元,通过调整延迟单元,使得各延迟单元依次轮流使能,实现在EDA前仿真阶段模拟EDA后仿真行为,从而在前仿真阶段再现异步问题,将异步处理过程中存在的潜在异步问题挖掘出来,以便于在项目初期进行解决,避免项目末期才发现异步问题导致项目延期。
为使本发明的上述目的、特征和优点能更明显和易懂,下文特举较佳实施例,并配合所附附图,做详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的基于前仿真的验证电路的一结构示意图;
图2示出了本申请实施例提供的基于前仿真的验证方法的一流程示意图;
图3示出了本申请实施例提供的电子设备的一结构示意图。
主要元件符号说明:
100-基于前仿真的验证电路;101-验证子电路;1011-第一触发器;1012-延迟单元;1013-两级同步器;102-判断模块;300-电子设备;301-收发机;302-处理器;303-存储器。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
需要说明的是,当元件被称为“固定于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。相反,当元件被称作“直接在”另一元件“上”时,不存在中间元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在模板的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
实施例1
本申请实施例提供了一种基于前仿真的验证电路。具体的,请参见图1。
所述基于前仿真的验证电路100包括判断模块102及至少一个验证子电路101;各所述验证子电路101包括依次电连接的第一触发器1011、延迟单元1012和两级同步器1013;各所述第一触发器1011由第一时钟域提供第一时钟,各所述两级同步器1013由第二时钟域提供第二时钟,所述第一时钟与所述第二时钟的频率或相位不同;跨时钟域信号包括至少一个跨时钟域子信号,所述验证子电路101,用于各所述跨时钟域子信号依次流经对应所述验证子电路101的所述第一触发器1011、所述延迟单元1012、所述两级同步器1013,得到同步信号;所述判断模块102,用于判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
在本实施例中,第一触发器1011用于接收、存储和传递跨时钟域子信号;延迟单元1012用于对跨时钟域子信号做延迟处理;两级同步器1013用于对所述跨时钟域子信号做同步处理,消除亚稳态。
需要说明的是,亚稳态是指触发器无法在某个规定时间段内达到一个可确认的状态。当信号从第一时钟域传递到第二时钟域时,需要经过一个或多个触发器级联来实现同步,传递过程中,若信号在第二时钟采样点附近发生变化,而该信号变化的时间不满足后级触发器,即第二时钟域内触发器的建立时间和/或保持时间,就会导致后级触发器处于不稳定的状态,在这种不稳定的状态下,该触发器输出的值会在一段时间内不断变化,再达到稳定,当亚稳态的信号传播到后续的组合逻辑电路中时,会引起级联效应而导致整个系统无法正常工作。例如,一跨时钟域信号0在经历亚稳态达到稳定后,稳定值为1,该错误信号传递到后续的组合逻辑电路后可能会出现异步问题,进而导致整个电路无法正常工作。为了解决亚稳态问题,通常会在第二时钟域内设置两级同步器1013来消除亚稳态。
进一步的,在芯片验证过程中,EDA前仿真阶段主要是进行功能验证,EDA后仿真阶段主要是进行时序验证,亚稳态问题在EDA前仿真阶段很难被发现。因此,在本实施例中,在各跨时钟域子信号传递的过程中,增设了延迟单元1012,通过调整各延迟单元1012,使得各延迟单元1012依次轮流使能,调整各跨时钟域子信号的时序路径,从而模拟EDA后仿真行为,以发现潜在的异步问题。下面对发现潜在的异步问题的具体过程进行说明。
在一实施方式中,当所述跨时钟域信号包括M个跨时钟域子信号,所述验证子电路101的数量为M,M≥2时,执行M轮延迟处理流程,其中,第i轮延迟处理流程为:第i个验证子电路101的延迟单元1012对第i个跨时钟域子信号进行延迟处理,第i个验证子电路101的两级同步器1013同步处理后,得到第一同步信号;第j个验证子电路101的延迟单元1012对第j个跨时钟域子信号进行延迟处理,第j个验证子电路101的两级同步器1013同步处理后,得到第二同步信号,j≠i,且j∈[1,M]。
在本实施例中,当跨时钟域信号包括多个跨时钟域子信号时,例如,当有两个跨时钟域子信号Sigal_1和Signal_2由第一时钟域传递到第二时钟域时,Signal_1依次流经第一个验证子电路101中的第一触发器1011、延迟单元1012和两级同步器1013,Signal_2依次流经第二个验证子电路101中的第一触发器1011、延迟单元1012和两级同步器1013,调整第一验证子电路101和第二验证子电路101中的延迟单元1012,使得Signal_1和Signal_2传递到各自两级同步器1013的时间为一个固定的相位差,即一个先到达,一个后到达;首先调整延迟单元1012,使得Signal_1先到达其对应的两级同步器1013,并经过两级同步器1013同步处理后,得到第一同步信号,Signal_2后达到其对应的两级同步器1013,并经过两级同步器1013处理后,得到第二同步信号,第一同步信号和第二同步信号组成第一组同步信号;再调整延迟单元1012,使得Signal_2先到达其对应的两级同步器1013,并经过两级同步器1013同步处理后,得到第一同步信号,Signal_1后达到其对应的两级同步器1013,并经过两级同步器1013处理后,得到第二同步信号,第一同步信号和第二同步信号组成第二组同步信号。判断模块102依次根据第一组同步信号和第二组同步信号判断是否满足预设功能需求。
该方法可推广到包含多个跨时钟域子信号的情况,通过调整延迟单元1012,使得各延迟单元1012依次轮流使能,可以得到多组同步信号,判断模块102再根据多组同步信号依次判断即可。
在一实施方式中,M≥2时,将第i轮的第一同步信号及第二同步信号作为第i组同步信号;判断M组同步信号是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
所述预设功能需求为,多个同步信号能够使得后续的组合逻辑电路按照设计意图正常工作的需求。例如,当有两个跨时钟域子信号Sigal_1和Signal_2,经过各自同步器处理后得到两个同步信号Signal_11和Signal_21,按照设计意图,输入判断模块102的Signal_11置1即可使得后续的组合逻辑电路按照设计意图正常工作,那么调整延迟单元1012后得到的两组同步信号,若经判断模块102判断,均满足Signal_11置1的预设条件,即这两组同步信号均满足预设功能需求,则可确定在Signal_1和Signal_2信号由第一时钟域传递到第二时钟域的过程中,不会出现异步问题,反之若存在任一组同步信号不满足预设功能需求,则可确定在Signal_1和Signal_2信号由第一时钟域传递到第二时钟域的过程中,会出现异步问题。
在一实施方式中,各所述两级同步器1013包括第二触发器和第三触发器;所述第二触发器分别和对应的所述延迟单元1012及所述第三触发器电连接。
在本实施例中,第二触发器第一端与延迟单元1012电连接,第二端与第三触发器第一端电连接,第三触发器的第二端与判断模块102电连接。
第一触发器1011设置有第一触发器1011输入端、第一触发器1011输出端和第一触发器1011时钟端;第二触发器设置有第二触发器输入端、第二触发器输出端和第二触发器时钟端;第三触发器设置有第三触发器输入端、第三触发器输出端和第三触发器时钟端。
第一触发器1011信号输出端和第二触发器信号输入端连接,第二触发器信号输出端与第三触发器信号输入端连接,第一时钟域内的时钟通过第一触发器1011时钟端向第一触发器1011提供第一时钟,第二时钟域内的时钟通过第二触发器时钟端和第三触发器时钟端分别向第二触发器和第三触发器提供第二时钟。
在一实施方式中,所述第一触发器1011接收所述跨时钟域子信号并锁存;所述第一触发器1011将所述跨时钟域子信号输出给延迟单元1012;所述延迟单元1012将所述跨时钟域子信号做延迟设置后输出给所述两级同步器1013;所述两级同步器1013接收所述跨时钟域子信号,将所述跨时钟域子信号做同步处理后,输出同步信号。
在本实施例中,在时钟信号边沿到来时,触发器读取并锁存当前输入的跨时钟域子信号值,并输出该信号。
在一实施方式中,所述预设功能需求为组合逻辑电路按照设计功能正常工作的需求。
在本实施例中,预设功能即为按照设计意图实现的功能,要使得后续组合逻辑电路实现此功能,需要输入逻辑信号,跨时钟域子信号在经过同步处理后,得到的同步信号若满足后续组合逻辑电路输入信号的要求,即满足预设功能需求;
经过同步处理后的多个跨时钟域子信号,输入判断模块102,当判断模块102内的判断信号置1时,若对应时间内的多个跨时钟域子信号满足后续组合逻辑电路输入信号的要求,即可确定跨时钟域信号传递过程中,不存在异步问题,若对应时间内的多个跨时钟域子信号不满足后续组合逻辑电路输入信号的要求,即可确定跨时钟域信号传递过程中,存在异步问题。
本发明实施例提供的前仿真的验证电路,包括判断模块及至少一个验证子电路;各验证子电路包括依次电连接的第一触发器、延迟单元和两级同步器;各第一触发器由第一时钟域提供第一时钟,各两级同步器由第二时钟域提供第二时钟,第一时钟与第二时钟的频率或相位不同;跨时钟域信号包括至少一个跨时钟域子信号,验证子电路,用于各跨时钟域子信号依次流经对应验证子电路的第一触发器、延迟单元、两级同步器,得到同步信号;判断模块,用于判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。本发明实施例,通过在两级同步器前端增加延迟单元,通过调整延迟单元,使得各延迟单元依次轮流使能,实现在EDA前仿真阶段模拟EDA后仿真行为,从而在前仿真阶段再现异步问题,将异步处理过程中存在的潜在异步问题挖掘出来,以便于在项目初期进行解决,避免项目末期才发现异步问题导致项目延期。
实施例2
此外本申请实施例提供了一种基于前仿真的验证方法,该方法应用于实施例1所提供的基于前仿真的验证电路100。
具体的,请参见图2,所述基于前仿真的验证方法包括:
步骤S201,输入跨时钟域信号,所述跨时钟域信号包括至少一个跨时钟域子信号,各所述跨时钟域子信号依次流经对应所述验证子电路101的所述第一触发器1011、所述延迟单元1012、所述两级同步器1013,得到同步信号;
在一实施方式中,当所述跨时钟域信号包括M个跨时钟域子信号,M≥2时,所述各所述跨时钟域子信号依次流经对应所述验证子电路101的所述第一触发器1011、所述延迟单元1012、所述两级同步器1013,得到同步信号,包括:执行M轮延迟处理流程,其中,第i轮延迟处理流程为:对第i个跨时钟域子信号进行延迟处理以及同步处理后,得到第一同步信号;对第j个跨时钟域子信号进行延迟处理以及同步处理后,得到第二同步信号,j≠i,且j∈[1,M]。
步骤S202,判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
需要说明的是,该基于前仿真的验证方法应用于实施例1所提供的基于前仿真的验证电路100,能够实现基于前仿真的验证电路对应的功能,为避免重复,在此不做限制。
本发明实施例提供的前仿真的验证方法,输入跨时钟域信号,跨时钟域信号包括至少一个跨时钟域子信号,各跨时钟域子信号依次流经对应验证子电路的第一触发器、延迟单元、两级同步器,得到同步信号;判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。本发明实施例,通过在两级同步器前端增加延迟单元,通过调整延迟单元,使得各延迟单元依次轮流使能,实现在EDA前仿真阶段模拟EDA后仿真行为,从而在前仿真阶段再现异步问题,将异步处理过程中存在的潜在异步问题挖掘出来,以便于在项目初期进行解决,避免项目末期才发现异步问题导致项目延期。
实施例3
此外,本申请实施例提供了一种电子设备,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行实施例2所提供的基于前仿真的验证方法。
具体的,请参见图3,所述电子设备300包括:收发机301、总线接口及处理器302。所述处理器302,用于:输入跨时钟域信号,所述跨时钟域信号包括至少一个跨时钟域子信号,各所述跨时钟域子信号依次流经对应所述验证子电路的所述第一触发器、所述延迟单元、所述两级同步器,得到同步信号;判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
在一实施方式中,所述处理器302还用于当所述跨时钟域信号包括M个跨时钟域子信号,M≥2时,执行M轮延迟处理流程,其中,第i轮延迟处理流程为:对第i个跨时钟域子信号进行延迟处理以及同步处理后,得到第一同步信号;对第j个跨时钟域子信号进行延迟处理以及同步处理后,得到第二同步信号,j≠i,且j∈[1,M]。
在本发明实施例中,电子设备300还包括:存储器303。在图3中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器302代表的一个或多个处理器和存储器303代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机301可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器302负责管理总线架构和通常的处理,存储器303可以存储处理器302在执行操作时所使用的数据。
本发明实施例提供的电子设备300,可以执行实施例2中所提供的基于前仿真的验证方法,为避免重复,不再赘述。
本发明实施例提供的前仿真的验证方法,输入跨时钟域信号,跨时钟域信号包括至少一个跨时钟域子信号,各跨时钟域子信号依次流经对应验证子电路的第一触发器、延迟单元、两级同步器,得到同步信号;判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。本发明实施例,通过在两级同步器前端增加延迟单元,通过调整延迟单元,使得各延迟单元依次轮流使能,实现在EDA前仿真阶段模拟EDA后仿真行为,从而在前仿真阶段再现异步问题,将异步处理过程中存在的潜在异步问题挖掘出来,以便于在项目初期进行解决,避免项目末期才发现异步问题导致项目延期。
实施例4
此外,本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时,实现本申请实施例2所述的基于前仿真的验证方法。
在本实施例中,计算机可读存储介质可以为只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本实施例提供的计算机可读存储介质可以实现实施例2所提供的基于前仿真的验证方法,为避免重复,在此不再赘述。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (10)
1.一种基于前仿真的验证电路,其特征在于,包括判断模块及至少一个验证子电路;
各所述验证子电路包括依次电连接的第一触发器、延迟单元和两级同步器;
各所述第一触发器由第一时钟域提供第一时钟,各所述两级同步器由第二时钟域提供第二时钟,所述第一时钟与所述第二时钟的频率或相位不同;
跨时钟域信号包括至少一个跨时钟域子信号,所述验证子电路,用于各所述跨时钟域子信号依次流经对应所述验证子电路的所述第一触发器、所述延迟单元、所述两级同步器,得到同步信号;
所述判断模块,用于判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
2.根据所述权利要求1所述的前仿真的验证电路,其特征在于,当所述跨时钟域信号包括M个跨时钟域子信号,所述验证子电路的数量为M,M≥2时,执行M轮延迟处理流程,其中,第i轮延迟处理流程为:第i个验证子电路的延迟单元对第i个跨时钟域子信号进行延迟处理,第i个验证子电路的两级同步器同步处理后,得到第一同步信号;
第j个验证子电路的延迟单元对第j个跨时钟域子信号进行延迟处理,第j个验证子电路的两级同步器同步处理后,得到第二同步信号,j≠i,且j∈[1,M]。
3.根据所述权利要求2所述的前仿真的验证电路,其特征在于,M≥2时,将第i轮的第一同步信号及第二同步信号作为第i组同步信号;
判断M组同步信号是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
4.根据权利要求1所述的基于前仿真的验证电路,其特征在于,各所述两级同步器包括第二触发器和第三触发器;
所述第二触发器分别和对应的所述延迟单元及所述第三触发器电连接。
5.根据权利要求4所述的基于前仿真的验证电路,其特征在于,所述第一触发器接收所述跨时钟域子信号并锁存;
所述第一触发器将所述跨时钟域子信号输出给延迟单元;
所述延迟单元将所述跨时钟域子信号做延迟设置后输出给所述两级同步器;
所述两级同步器接收所述跨时钟域子信号,将所述跨时钟域子信号做同步处理后,输出同步信号。
6.根据权利要求1所述的基于前仿真的验证电路,其特征在于,所述预设功能需求为组合逻辑电路按照设计功能正常工作的需求。
7.一种基于前仿真的验证方法,应用于权利要求1-6中任一项所述的基于前仿真的验证电路,其特征在于,所述方法包括:
输入跨时钟域信号,所述跨时钟域信号包括至少一个跨时钟域子信号,各所述跨时钟域子信号依次流经对应所述验证子电路的所述第一触发器、所述延迟单元、所述两级同步器,得到同步信号;
判断所有跨时钟域子信号依次轮流插入延迟,是否均满足预设功能需求,若满足,则确定不存在异步问题,否则,则确定存在异步问题。
8.根据权利要求7所述的基于前仿真的验证方法,其特征在于,当所述跨时钟域信号包括M个跨时钟域子信号,M≥2时,所述各所述跨时钟域子信号依次流经对应所述验证子电路的所述第一触发器、所述延迟单元、所述两级同步器,得到同步信号,包括:
执行M轮延迟处理流程,其中,第i轮延迟处理流程为:对第i个跨时钟域子信号进行延迟处理以及同步处理后,得到第一同步信号;
对第j个跨时钟域子信号进行延迟处理以及同步处理后,得到第二同步信号,j≠i,且j∈[1,M]。
9.一种电子设备,其特征在于,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行权要7-8中任一项所述的基于前仿真的验证方法。
10.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求7-8任一项所述的基于前仿真的验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310930587.5A CN116956784A (zh) | 2023-07-27 | 2023-07-27 | 基于前仿真的验证电路、方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310930587.5A CN116956784A (zh) | 2023-07-27 | 2023-07-27 | 基于前仿真的验证电路、方法、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116956784A true CN116956784A (zh) | 2023-10-27 |
Family
ID=88459995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310930587.5A Pending CN116956784A (zh) | 2023-07-27 | 2023-07-27 | 基于前仿真的验证电路、方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116956784A (zh) |
-
2023
- 2023-07-27 CN CN202310930587.5A patent/CN116956784A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10354042B2 (en) | Selectively reducing graph based analysis pessimism | |
US5826061A (en) | System and method for modeling metastable state machine behavior | |
US5491639A (en) | Procedure for verifying data-processing systems | |
CN108120917B (zh) | 测试时钟电路确定方法及装置 | |
EP2098969A1 (en) | Logic circuit designing device for asynchronous logic circuit, logic circuit designing method, and logic circuit designing program | |
US9032274B2 (en) | Method and apparatus for clock and data recovery | |
CN113723045A (zh) | 数字集成电路的设计方法 | |
CN116702664B (zh) | 时间违例修复方法、装置、计算机设备及存储介质 | |
US9449127B1 (en) | System for verifying timing constraints of IC design | |
CN116956784A (zh) | 基于前仿真的验证电路、方法、设备及介质 | |
US8453090B2 (en) | System and method for optimizing logic timing | |
US7159199B2 (en) | Method for verifying adequate synchronization of signals that cross clock environments and system | |
US7930609B2 (en) | Apparatus and method for verifying target circuit | |
EP3910521A1 (en) | Simulator and simulation method | |
CN113297819A (zh) | 异步时钟的时序检查方法、装置、电子设备、存储介质 | |
JP2012159960A (ja) | 半導体設計装置および半導体装置 | |
US20080141199A1 (en) | Methods and apparatuses for timing analysis of electronics circuits | |
CN114519318B (zh) | Noc设计方法、装置、相关器件和设备 | |
JP5145167B2 (ja) | クロックドメインチェック方法及びクロックドメインチェック用プログラム並びに記録媒体 | |
CN117762707B (zh) | 一种验证串口通信的装置、方法、介质及电子设备 | |
US7072821B1 (en) | Device and method for synchronizing an asynchronous signal in synthesis and simulation of a clocked circuit | |
CN113449477B (zh) | 数字电路的连接方法、装置、电子设备和存储介质 | |
Sawyer | Data to clock phase alignment | |
JP2002259488A (ja) | クロックスキュー検証方法 | |
Hekkala | CDC logic verification in RTL design |
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 |