集成电路的异步时钟检查方法和装置与流程

文档序号:14519291阅读:594来源:国知局
集成电路的异步时钟检查方法和装置与流程

本发明主要涉及集成电路验证领域,尤其涉及一种集成电路的异步时钟检查方法和装置。



背景技术:

集成电路,尤其是大规模集成电路在设计完成后,需要对其功能进行验证。举例来说,当集成电路使用多个时钟时,需要进行跨时钟域(clockdomaincrossing,cdc)检查。cdc检查过程具体地说,是在寄存器传输层(registertransferlevel,rtl)代码完成后,人工编写产生设计时钟约束,使用cdc检查工具,对集成电路设计进行异步时钟cdc检查。

然而发现上述cdc检查过程面对规模较大、时钟方案复杂的电路,费时费力,而且不容易保证正确性和完整性,会影响cdc检查的效率和正确性。



技术实现要素:

本发明要解决的技术问题是提供一种集成电路的异步时钟检查方法和装置,可以提高检查的效率和正确性。

为解决上述技术问题,本发明提供了一种集成电路的异步时钟检查方法,包括以下步骤:获得时钟描述文件;使用第一自动脚本工具根据该时钟描述文件产生时钟rtl代码;使用第二自动脚本工具根据该时钟描述文件产生时钟cdc检查约束文件;以及使用该时钟rtl代码和时钟cdc检查约束文件进行时钟cdc检查。

在本发明的一实施例中,该时钟描述文件包含时钟信号信息。

在本发明的一实施例中,该时钟信号信息包括时钟名、时钟源和时钟频率。

在本发明的一实施例中,使用第一自动脚本工具根据该时钟描述文件产生时钟rtl代码的步骤包括:从该时钟描述文件中读取时钟关键字;根据该时钟关键字和命令行参数,产生时钟rtl代码。

在本发明的一实施例中,使用第二自动脚本工具根据该时钟描述文件产生时钟cdc检查约束文件的步骤包括:从该时钟描述文件中读取时钟关键字;根据该时钟关键字和命令行参数,产生cdc约束文件。

在本发明的一实施例中,第一自动脚本工具和/或该第二自动脚本工具是由通用脚本语言编写。

在本发明的一实施例中,该通用脚本语言是perl或python。

本发明还提出一种集成电路的异步时钟检查装置,包括:用于获得时钟描述文件的模块;用于使用第一自动脚本工具根据该时钟描述文件产生时钟rtl代码的模块;用于使用第二自动脚本工具根据该时钟描述文件产生时钟cdc检查约束文件的模块;以及用于使用该时钟rtl代码和时钟cdc检查约束文件进行时钟cdc检查的模块。

与现有技术相比,本发明由于使用了统一的时钟描述文件作为时钟描述信息来源,因而可以确保最后用于cdc检查的时钟rtl代码和时钟cdc检查约束文件是一致的,从而提高异步时钟检查的正确性和效率。而且本发明因为使用了自动脚本工具,减少了在cdc检查流程中工程师的工作量,进一步提高了cdc检查的执行效率。

附图说明

图1是根据本发明一实施例的集成电路的异步时钟检查示意图。

图2是根据本发明一实施例的集成电路的异步时钟检查方法流程图。

图3是根据本发明一实施例的集成电路的异步时钟检查装置结构图。

具体实施方式

为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式作详细说明。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其它不同于在此描述的其它方式来实施,因此本发明不受下面公开的具体实施例的限制。

本发明的实施例描述一种集成电路的异步时钟检查方法,可以提高检查的效率和正确性。

本发明的发明人发现,以往的集成电路的异步时钟检查中,设计时钟约束的产生与寄存器传输层(registertransferlevel,rtl)代码中的时钟rtl代码的产生没有关联,是跨时钟域(clockdomaincrossing,cdc)检查的效率正确性较低的关键原因。

为此,本发明的实施例所提出提出集成电路的异步时钟检查方法,通过保证异步时钟检查的设计时钟约束和实际时钟电路设计的一致性来提高cdc检查的效率和正确性。

图1是根据本发明一实施例的集成电路的异步时钟检查示意图。参考图1所示,首先获得时钟描述文件。时钟描述文件是由设计人员编写的特定格式文件。时钟描述文件11的内容典型的包含时钟信号信息。时钟信号信息例如包括时钟名、时钟源、时钟频率等。在此,如果有多个时钟频率,则分别进行描述。时钟描述文件的格式可以是多种多样的,例如纯文本格式、word格式或者excel电子表格格式,在此不做限定。

在本实施例中,时钟描述文件11同时作为时钟rtl代码和时钟cdc检查约束文件的来源。具体来说,使用第一自动脚本工具来根据时钟描述文件产生时钟rtl代码,且使用第二自动脚本工具根据同样的时钟描述文件产生时钟cdc检查约束文件。在此,将第一自动脚本工具根据其功能命名为时钟逻辑脚本工具(clkgen)12,将第二自动脚本工具根据其功能命名为cdc约束脚本工具(cdcgen)13。时钟逻辑脚本工具12和cdc约束脚本工具13可以容易地根据其所需的功能编写,其细节不展开描述。时钟逻辑脚本工具12和cdc约束脚本工具13可以使用通用脚本语言,例如perl,python等来编写。

使用时钟逻辑脚本工具12根据时钟描述文件11产生时钟rtl代码14的过程通常包括,从时钟描述文件中读取时钟关键字,根据时钟关键字和命令行参数,产生时钟rtl代码14。可以理解,时钟rtl代码14是包含在集成电路的rtl代码中的。这样时钟rtl代码14就无需人工编写,可以提高cdc检查效率。

使用cdc约束脚本工具13根据时钟描述文件11产生时钟cdc检查约束文件15的过程通常包括,从时钟描述文件11中读取时钟关键字,根据时钟关键字和命令行参数,产生时钟cdc检查约束文件15。因此,时钟cdc检查约束文件15也是自动生成而无需人工编写,可以提高cdc检查效率。

最后,完整的rtl代码14和时钟cdc检查约束文件15,一起成为cdc检查的输入件,进行cdc检查。

图2是根据本发明一实施例的集成电路的异步时钟检查方法流程图。参考图2所示,本实施例的一种集成电路的异步时钟检查方法,包括以下步骤:

在步骤201,获得时钟描述文件。

在步骤202,使用第一自动脚本工具根据时钟描述文件产生时钟rtl代码。

在步骤203,使用第二自动脚本工具根据时钟描述文件产生时钟cdc检查约束文件。

在步骤204,使用时钟rtl代码和时钟cdc检查约束文件进行时钟cdc检查。

如前文所述,第一自动脚本工具根据其功能命名为时钟逻辑脚本工具(clkgen),第二自动脚本工具根据其功能命名为cdc约束脚本工具(cdcgen)。时钟逻辑脚本工具和cdc约束脚本工具可以容易地根据其所需的功能编写,其细节不展开描述。时钟逻辑脚本工具和cdc约束脚本工具可以使用通用脚本语言,例如perl,python等来编写。

在上述的步骤202中,使用第一自动脚本工具根据时钟描述文件产生时钟rtl代码的步骤可进一步包括:从时钟描述文件中读取时钟关键字,根据时钟关键字和命令行参数,产生时钟rtl代码。

在上述的步骤202中,使用第二自动脚本工具根据时钟描述文件产生时钟cdc检查约束文件的步骤包括:从时钟描述文件中读取时钟关键字;根据时钟关键字和命令行参数,产生cdc约束文件。

图3是根据本发明一实施例的集成电路的异步时钟检查装置结构图。参考图3所示,一种集成电路的异步时钟检查装置,包括第一模块301、第二模块302、第三模块303和第四模块304。第一模块301,用于获得时钟描述文件。第二模块302,用于使用第一自动脚本工具根据该时钟描述文件产生时钟rtl代码。第三模块303,用于使用第二自动脚本工具根据该时钟描述文件产生时钟cdc检查约束文件。第四模块304,用于使用时钟rtl代码和时钟cdc检查约束文件进行时钟cdc检查。

本发明的上述实施例由于使用了统一的时钟描述文件作为时钟描述信息来源,因而可以确保最后用于cdc检查的时钟rtl代码和时钟cdc检查约束文件是一致的,从而提高异步时钟检查的正确性和效率。而且本发明的上述实施例因为使用了自动脚本工具,减少了在cdc检查流程中工程师的工作量,进一步提高了cdc检查的执行效率。

虽然本发明已参照当前的具体实施例来描述,但是本技术领域中的普通技术人员应当认识到,以上的实施例仅是用来说明本发明,在没有脱离本发明精神的情况下还可作出各种等效的变化或替换,因此,只要在本发明的实质精神范围内对上述实施例的变化、变型都将落在本申请的权利要求书的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1