CN117313604B - 时序例外约束检查方法、装置、系统及存储介质 - Google Patents

时序例外约束检查方法、装置、系统及存储介质 Download PDF

Info

Publication number
CN117313604B
CN117313604B CN202311618799.6A CN202311618799A CN117313604B CN 117313604 B CN117313604 B CN 117313604B CN 202311618799 A CN202311618799 A CN 202311618799A CN 117313604 B CN117313604 B CN 117313604B
Authority
CN
China
Prior art keywords
constraint
exception
timing
time sequence
file
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
Application number
CN202311618799.6A
Other languages
English (en)
Other versions
CN117313604A (zh
Inventor
刘凯峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Muxi Technology Chengdu Co ltd
Original Assignee
Muxi Technology Chengdu Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Muxi Technology Chengdu Co ltd filed Critical Muxi Technology Chengdu Co ltd
Priority to CN202311618799.6A priority Critical patent/CN117313604B/zh
Publication of CN117313604A publication Critical patent/CN117313604A/zh
Application granted granted Critical
Publication of CN117313604B publication Critical patent/CN117313604B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3315Design verification, e.g. functional simulation or model checking using static timing analysis [STA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/12Timing analysis or timing optimisation

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种时序例外约束检查方法、装置、系统及存储介质,涉及集成电路设计领域。时序例外约束检查方法包括:获取芯片的约束文件;提取所述约束文件中的时序例外约束的对应数据;所述时序例外约束的对应数据包括该时序例外约束的约束条件和该时序例外约束涉及电路的路径;统计所述约束条件的约束条件数量和所述路径的路径数量;将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中。通过提取约束文件中的时序例外约束并统计约束条件和路径,将约束条件数量和路径数量与时序例外约束的标识信息关联记录于可视化报表,可视化报表便于查看与核对,可以有效提高时序例外约束检查的效率。

Description

时序例外约束检查方法、装置、系统及存储介质
技术领域
本申请涉及集成电路设计领域,具体而言,涉及一种时序例外约束检查方法、装置、系统及存储介质。
背景技术
芯片的SDC(Synopsys Design Constrains,设计约束文件)文件包括Timingexception(时序例外约束),时序例外约束包括MCP(Multi cycle path,多周期路径)、SFP(Set false path,设置伪路径)和SDT(Set disable timing,设置禁止时序)。时序例外约束中可以设置option(约束条件),约束条件越完整,则该时序例外约束所涉及的路径越安全。
对时序例外约束的检查通常是由工程师对包括时序例外约束的约束文件进行人工检查,时序例外约束需检查的内容较多,而约束文件为代码文件,可阅读性较弱,使得对时序例外约束的检查效率较低,且容易出错。
发明内容
有鉴于此,本申请旨在提供一种时序例外约束检查方法、装置、系统及存储介质,以提高对时序例外约束的检查效率与准确率。
第一方面,本申请实施例提供一种时序例外约束检查方法,包括:获取芯片的约束文件;提取所述约束文件中的时序例外约束的对应数据;所述时序例外约束的对应数据包括该时序例外约束的约束条件和该时序例外约束涉及电路的路径;统计所述约束条件的约束条件数量和所述路径的路径数量;将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中。
本申请实施例的有益效果为:可视化报表具有较高的可阅读性,可以辅助用户快速提取所需信息。时序例外约束的危险性与约束条件数量和路径数量相关,将约束条件数量和路径数量与时序例外约束关联记录于可视化报表中,以可视化报表为用户对时序例外约束的检查提供指导,以使得用户可以从可视化报表中快速确定可能存在危险时序例外约束,从而及时确认和修改,提高对时序例外约束的检查效率。
一实施例中,所述将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中之后,所述方法还包括:响应于在所述可视化报表中对所述时序例外约束的确认操作,生成豁免文件;所述豁免文件包括被确认为合规的时序例外约束。
本申请实施例的有益效果为:芯片的设计通常需要多轮调整,时序例外约束也需要进行多轮检查,而一些时序例外约束可能会被反复检查, 通过豁免文件记录用户已经确认合规的时序例外约束,以使得用户可以结合豁免文件对时序例外约束进行检查,对于已经确认的时序例外约束可以快速通过,从而减少重复工作所需的时间,提高检查效率。
一实施例中,所述生成豁免文件之后,所述方法还包括:使所述豁免文件内时序例外约束对应的约束条件和路径不参与统计。
本申请实施例的有益效果为:使豁免文件内时序例外约束对应的约束条件和路径不参与统计,用户无需再次确认,减少用户的重复工作,提高检查效率。
一实施例中,所述提取所述约束文件中的时序例外约束的对应数据之后,所述方法还包括:根据每一个时序例外约束的标识信息,从预设的时序例外约束类型和标识信息关联关系中,确定每一个时序例外约束的约束类型;所述时序例外约束的标识信息被配置为与所述约束类型关联记录于所述可视化报表中。
本申请实施例的有益效果为:确定各时序例外约束的约束类型,使各时序例外约束根据约束类型在可视化报表中记录,使得用户可以根据约束类型对各时序例外约束进行检查,实现时序例外约束的分类检查,相较于对约束文件中的代码逐条检查,分类检查可以提高检查效率,以及减少出错的可能性。
一实施例中,所述时序例外约束的对应数据还包括该时序例外约束所属的芯片工作模式和/或所属的模块;所述提取所述约束文件中的时序例外约束及所述时序例外约束的对应数据之后,所述方法还包括:对于每一个时序例外约束,根据该时序例外约束的对应数据确定该时序例外约束所属的芯片工作模式和/或所属的模块;所述时序例外约束的约束条件数量和所述路径数量被配置为与所述芯片工作模式和/或所述模块关联记录于所述可视化报表中。
本申请实施例的有益效果为:提取芯片工作模式和/或所属的模块,并将芯片工作模式和/或模块关联记录于可视化报表中,以使得用户可以根据芯片工作模式和/或所属的模块进行检查,相较于对约束文件中的代码逐条检查,根据芯片工作模式和/或所属的模块进行检查,可以减少将不同芯片工作模式和/或模块的时序例外约束混淆的可能性,减少因检查过程中出错影响检查效率的情况发生。
本申请实施例的有益效果为:所述芯片的工作模式包括功能模式、低功耗模式和测试模式中的至少一种;相应的,所述约束文件包括功能模式约束文件、低功耗模式约束文件和测试模式约束文件中的至少一个。
功能模式指芯片正常工作时采用的模式,测试模式指调试芯片时所使用的模式,低功耗模式指芯片限制部分功能运行下的模式,针对不同模式,通常会设置不同的约束文件。本申请实施例中,针对不同模式下的约束文件均可进行检查,扩展时序例外约束检查方法的适用范围,同时,用户无需分开对各约束文件进行检查,提高时序例外约束的检查效率。
本申请实施例的有益效果为:所述将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中之后,所述方法还包括:针对每一个时序例外约束:根据该时序例外约束的约束条件数量确定该时序例外约束的风险等级;基于所述风险等级在所述可视化报表中对该时序例外约束进行标记。
时序例外约束的约束条件越少,则该时序例外约束可能越危险,越可能出现问题,本申请实施例的有益效果为:根据时序例外约束的约束条件数量确定该时序例外约束的风险等级,并在可视化报表中标记时序例外约束的风险等级,由此,可知直观地显示各时序例外约束的危险性,便于区分与确认,提高时序例外约束检查的效率,以及减少遗漏的可能性,提高时序例外约束的准确性,从而减少芯片出现问题的可能性。
一实施例中,所述将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中之后,所述方法还包括:针对每一个时序例外约束:根据该时序例外约束的路径数量确定该时序例外约束的风险等级;基于所述风险等级在所述可视化报表中对该时序例外约束进行标记。
时序例外约束通常是针对部分电路路径所涉及,若同一时序例外约束涉及电路路径越多,则涉及未考虑到的路径的可能性越大,时序例外约束对未考虑到的路径进行约束则可能出现安全性问题。因此,时序例外约束涉及的路径越多,则越危险。本申请实施例的有益效果为:根据时序例外约束的路径数量确定该时序例外约束的风险等级,并在可视化报表中标记时序例外约束的风险等级,由此,可知直观地显示各时序例外约束的危险性,便于区分与确认,提高时序例外约束检查的效率,以及减少遗漏的可能性,提高时序例外约束的准确性,从而减少芯片出现问题的可能性。
第二方面,本申请实施例提供一种时序例外约束检查装置,包括:获取模块,用于获取芯片的约束文件;提取模块,用于提取所述约束文件中的时序例外约束的对应数据;所述时序例外约束的对应数据包括该时序例外约束的约束条件和该时序例外约束涉及电路的路径;数据处理模块,用于统计所述约束条件的约束条件数量和所述路径的路径数量;可视化模块,用于将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中。
第三方面,本申请实施例提供一种时序例外约束检查系统,包括:第一设备,配置有约束文件,服务器,与所述第一设备通信连接,用于接收所述第一设备的约束文件,并执行如第一方面任一项所述的时序例外约束检查方法。
第四方面,本申请实施例提供一种存储介质,所述存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如第一方面所述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例提供的一种时序例外约束检查方法的流程图;
图2为本申请一实施例提供的第一统计图;
图3为本申请一实施例提供的第二统计图;
图4为本申请一实施例提供的风险等级示意图;
图5为本申请一实施例提供的一种时序例外约束检查装置的示意图;
图6为本申请一实施例提供的一种时序例外约束检查系统的示意图。
图标:时序例外约束检查装置200;获取模块210;提取模块220;数据处理模块230;可视化模块240;时序例外约束检查系统300;第一设备310;服务器320。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
目前,时序例外约束无法由工具进行准确、完整地检查。可以理解,约束文件是人根据芯片电路设计所撰写的,若约束文件本身存在设计上的错误,使得工具无法区分、无法判断是否正确。例如,设计出来的目的可能是针对某些电路的路径,但实际可能存在工程师未考虑到的电路路径也在时序例外约束的覆盖范围内,示例性地,从A点到B点,工程师所想到的路径为3条,并相应设计了时序例外约束,而A点到B点可能是10条路径,所设计时序例外约束可能并不适用于其余路径,甚至可能影响功能的正常运行,或出现安全问题。而工具的检查并不能明确获知人的想法,可能将这10条路径确定为都需要使用该时序例外约束,将其判断为正常,从而不进行报警或显示异常,故时序例外约束的检查通常需要人工检查。
本申请提供一种时序例外约束检查方法,该时序例外约束检查方法可以部署在电子设备上,例如,电子设备可以是计算机、服务器等。请参阅图1,图1为本申请一实施例提供的一种时序例外约束检查方法的流程图,时序例外约束检查方法包括:
S110,获取芯片的约束文件。
时序例外约束通常是配置在芯片的约束文件中的,因此,在本申请的实施例中,可以先获取芯片的约束文件,以从中提取时序例外约束。
本实施例中,约束文件可以是存储在部署有时序例外约束检查方法的电子设备上,在进行时序例外约束检查时,可以从对应的位置获取约束文件。在一些实施例中,约束文件可以是响应于用户的操作指令,将用户选中的约束文件导入,以使电子设备对其进行时序例外约束检查。
在一些实施例中,约束文件还可以是存储在与部署时序例外约束检查方法的电子设备通信连接的其他设备上,例如,在服务器上部署时序例外约束检查方法,约束文件可以存储在其他的计算机、手机上等。
上述仅为示例,约束文件的获取方式不应称为对本申请的限制。
一实施例中,若部署时序例外约束检查方法的电子设备可以对约束文件进行存储,并记录版本信息。
芯片设计通常需要多次迭代,本实施例中,通过对约束文件及版本信息进行记录,便于回溯,追踪问题等,提高设计效率。
在一些实施例中,若电子设备检查到存在约束文件的更新,则自动执行本申请提供的时序例外约束检查方法。
本实施例中,在约束文件更新后,自动执行本申请提供的时序例外约束检查方法,可以及时确定约束文件的问题,以便于作出对应处理,从而提高芯片设计的效率。
芯片通常具有不同的模式,如功能模式、低功耗模式和测试模式。功能模式是指芯片正常工作的模式,其中,芯片正常工作的模式可能有多种,在此不再进一步区分。低功耗模式是指芯片限制某些功能运行的模式,例如,对于手机芯片,低功耗模式是指手机熄屏下芯片所处的模式。测试模式是指芯片调试时所使用的模式,例如,电脑或手机进入BIOS(Basic Input Output System,基本输入输出系统)调试时芯片所处的模式。功能模式、低功耗模式和测试模式可以参考现有技术,在此不再展开。
因此,在本申请的一实施例中,上述电子设备所获取的约束文件可以包括功能模式对应的功能模式约束文件、低功耗模式对应的低功耗模式约束文件和测试模式对应的测试模式约束文件中的至少一种。
对于不同的芯片工作模式,约束文件中的约束通常不同,一种模式通常具有一个或多个约束文件,在本申请的实施例中,对于不同模式的约束文件,可以将其分开进行存储,以及在进行时序例外约束检查时,建立芯片工作模式与时序例外约束之间的对应关系。
同一时序例外约束在不同芯片工作模式下所设置的约束条件、路径等可能不同,通过该方式,可以使时序例外约束根据芯片工作模式进行区分,可以便于根据芯片工作模式对时序例外约束进行检查,减少混淆的可能性,有助于芯片设计效率和准确性的提升。此外,本申请实施例所提供的时序例外约束检查方法支持对不同芯片工作模式下时序例外约束进行同时检查,且可以对不同芯片工作模式进行区分,可以有效提高检查的效率与扩展适用范围。
对于同一芯片工作模式下,约束文件中还可以针对芯片中的不同电路模块或层级结构进行区分,例如,芯片的TOP层(顶层)和BOTTOM层(底层),模块是指能够实现各种功能的一个电路或多个电路单元,如电源电路模块、通信电路模块等。同理,本实施例中,还可以根据约束文件所针对的电路模块或层级结构进行区分,并在检查时,建立模块或层级结构与时序例外约束之间的对应关系,以便于区分不同模块或层级结构,提高效率。
S120,提取约束文件中的时序例外约束的对应数据。
约束文件包括不同的约束条件,如接口、功率、时序、时钟、边界等约束,以及一些特殊的规则、路径、需要禁止的条件等。在本申请的实施例中,是针对时序例外约束的检查,故需从约束文件中提取时序例外约束及其对应的数据。
在本申请的一些实施例中,可以通过检测时序例外约束的标识信息确定时序例外约束在约束文件中的位置并进行提取。
在约束文件中,标识信息可以是时序例外约束的全称或代码描述,示例性地,对于SMP、SFP和SDT,可以分别检测set_multicycle_path,set_false_path,set_disable_timing,若检测到该标识信息,则将标识信息所在的语句进行提取与保存,标识信息所在的语句包括时序例外约束的对应数据。其中,标识信息还可以是信息,上述仅为示例,不应成为对本申请的限制。
在一些实施例中,约束文件还包括所属的芯片工作模式,则在提取时序例外约束的对应数据时,可以建立时序例外约束对应数据与芯片工作模式之间的对应关系,使得对应数据携带有时序例外约束所属的芯片工作模式。相应地,约束文件还包括所属的模块,在提取时序例外约束的对应数据时,可以建立时序例外约束对应数据与模块之间的对应关系。
S130,统计约束条件的约束条件数量和路径的路径数量。
本实施例中,时序例外约束的对应数据包括该时序例外约束的约束条件和该时序例外约束涉及电路的路径。约束条件用于限定该时序例外约束的适用条件,路径指实际应用该时序例外约束的电路路径。
在所提取的时序例外约束的语句中,即在时序例外约束的对应数据中,会记录约束条件和路径,时序例外约束的约束条件指option(约束条件),option包括“-from,-to,-through,-from_clock,-to_clock”,当检测到此类关键词,可以进行记录,包括但不限于记录数量、位置等。同理,时序例外约束的对应数据中同样会包括涉及的路径,可以对涉及的路径进行记录,包括但不限于记录路径的数量、该路径所涉及的电路等。其中,不同的芯片中,各时序例外约束可能涉及的电路路径不同,在此不展开说明。
示例性地,请参阅图2,图2为本申请一实施例提供的第一统计示意图。其中,Severity项表示风险等级,Risk表示高风险,option num表示约束条件数量,-from,-to,-through,-from_clock,-to_clock分别表示具体的约束条件,path_num表示路径数量。在该示例中,约束条件包括两个,分别为-through和-to_clock,共涉及21条路径。
此外,除统计数量外,还可以将对应的约束条件、路径的具体信息进行记录,以便于查阅。
在本申请的一些实施例中,在提取得到约束文件中的时序例外约束的对应数据之后,可以将时序例外约束对应数据输入至预设的检测工具中,统计得到约束条件的约束条件数量和所述路径的路径数量。例如,检测工具可以是Prime Time。
需要说明的是,约束条件影响时序例外约束的安全性,约束条件越完整,该时序例外约束越安全。例如,若5个约束条件完整,可以确定出符合5个约束条件的唯一确定的电路路径。而若约束条件仅有两个,例如“-to”和“-from”,则符合这两条约束条件的电路路径可能有多条,其中部分路径可能无法应用该时序例外约束,从而出现设计之外的问题,出现异常或安全性问题等。反之,路径越多,则该时序例外约束越危险,越可能涉及未考虑过的电路路径,因此,可以通过统计约束条件的约束条件数量和路径的路径数量,并提供给用户,以作为用户检查与判断时序例外约束安全的依据。
在一些其他的实施例中,还可以统计其他类型的数据,例如,时序例外约束的分类、芯片工作模式、所属模块等进行统计。
本实施例中,分类可以通过时序例外约束的标识信息进行区分,即根据每一个时序例外约束的标识信息,从预设的时序例外约束类型和标识信息关联关系中,确定每一个时序例外约束的约束类型。
例如,预设的时序例外约束类型可以包括MCP、SFP和SDT三种,可以根据关键词set_multicycle_path,set_false_path,set_disable_timing确定对应的时序例外约束的约束类型。
同理,对于每一个时序例外约束,还可以根据该时序例外约束的对应数据确定该时序例外约束所属的芯片工作模式和/或所属的模块。芯片的工作模式和/或模块会在时序例外约束的语句中描述,可以通过提取关键词,并将关键词与预设的工作模式和/或模块的词语进行比对,确定对应的工作模式和/或模块,并进行统计。
例如,请参阅图3,图3为本申请一实施例提供的第二统计示意图,其中,TILE标识所属的模块,MODE表示芯片工作模式,TEXP_NUM表示时序例外约束的数量,MCP、SFP和SDT为三种不同类型的时序例外约束,并分别统计各自的数量。
对于不同的模块,可以分别统计各自的时序例外约束数量,以及不同时序例外约束类型对应的数量,例如,如图3中的ccx0_sw_mtlk4_t模块,具有72条时序例外约束,涉及MCP有9条,SFP有50条,SDT有13条。其中,图4所示的所有模块和时序例外约束均为芯片的func工作模式约束文件中提取得到,因此,各时序例外约束对应的芯片工作模式均为func模式。
S140,将每一个时序例外约束的约束条件数量和路径数量,与该时序例外约束的标识信息关联记录于可视化报表中。
约束文件此类由代码撰写的文件,需要人工逐行阅读与确定,且由于其为代码,还需要人为理解其逻辑是否正确,可阅读性较差。在本申请实施例中,报表指用表格、图表等格式来显示数据,相较于文字、代码等,表格、图标等更容易提取出所需要的信息,因此,可视化报表能够具有良好的可阅读性。
将时序例外约束及对应的约束条件数量和路径数量关联记录于可视化报表中,可以便于用户快速查阅并确认问题,实现时序例外约束检查效率的提升。
以图2为例,图2可以视为本申请所提供的一种可视化报表,用户可查看option数量,确认是否可能存在危险,其中,option数量为2条,而完整的时序例外约束可能有3条或5条option,则表征该时序例外约束可能存在危险。再确认各约束条件是否完整,该时序例外约束包括-through和-to clocks,缺少一些关键条件,例如-from和-to,则可能存在危险。最后,还可以确认路径数量,所涉及的路径数量为21,涵盖了一个较大的路径范围,而该时序例外约束实际设计的目的可能是应用于其中的5条路径,21远大于5,则可能存在风险。
因此,通过可视化报表,可以有效提高用户确认时序例外约束是否存在危险的效率。
此外,在统计路径的过程中,还会统计各路径的具体内容,则相应地,在本实施例,puth_num栏的路径数量可进行展开,显示所涉及路径的具体信息。
相应地,可视化报表中同样可以记录时序例外约束的类型、工作模式或所属模块,并根据类型、工作模式或所属模块对各时序例外约束分类显示。如图3所示,可以根据模块TILE、芯片工作模式MODE进行区分,还可以根据时序例外约束的约束类型MCP、SFP、SDT进行区分,用户可以通过点击相应数据对具体内容进行展开,具体实现原理可以参考现有的一些表格工具,在此不再赘述。
本申请实施例通过对约束类型、芯片工作模式或所属模块进行分类,用户可以根据需求选择时序例外约束进行检查,以及根据相应的信息前往约束文件进行问题的确认与修改,有效提高用户的工作效率。
在一些实施例中,还可以将可视化报表显示在网页上。
本实施例中,可以基于HTML(超文本标记语言)构建可视化报表,并显示在网页中,由此,在多人协同工作的环境中,各用户无需下载报表,打开网页即可进行检查,并响应于用户的操作进行实时更新,提高工作效率。
时序例外约束的危险性与约束条件的完整性相关,那么,在本申请的一实施例中,在将时序例外约束与约束条件和路径数量记录于可视化报表之后,还可以针对每一个时序例外约束:根据该时序例外约束的约束条件数量确定该时序例外约束的风险等级;基于风险等级在可视化报表中对该时序例外约束进行标记。
例如,对于MCP,最多可以有5种option,则可以根据MCP所拥有的option数量确定风险等级,示例性地,对于少于3个option的MCP,则将其确认为较高风险,对于3个至4个option的MCP,将其确认为低风险,将包含5个option的MCP,将其确认为安全。可以理解,上述仅为示例,不同的时序例外约束可能具有不同的最大约束条件数量,可以根据实际情况配置风险等级及各风险等级对应的约束条件数量,在此不再展开。
时序例外约束的危险性还与路径数量相关,相应地,在本申请的一些实施例中,还可以针对每一个时序例外约束:根据该时序例外约束的路径数量确定该时序例外约束的风险等级,并基于风险等级在所述可视化报表中对该时序例外约束进行标记。
约束条件限制了电路路径的起始(from)、经过(through)、目标位置(to),以及对于一些时序例外约束,还可以限制时钟(to clock和from clock),因此,对于约束条件完备的时序例外约束,其针对的路径通常是确定的一条或有限的几条。因此,可以设置多个阈值,每一阈值对应一个风险等级。例如,将路径数小于3的确定为安全,将路径数量在3至5之间的确定为低风险,将路径数量大于5的确定为高风险。上述仅为示例,不应作为对本申请的限制。
无论是基于路径数量或是基于约束条件数量,在确定风险等级之后,可以基于风险等级在可视化报表中对该时序例外约束进行标记。标记可以是文字、颜色、符号等,例如,图2中,可以用Severity项表示风险等级,Risk表示高风险。
通过标记,可以便于用户快速确定该时序例外约束的危险程度,给用户对时序例外约束的检查与修改提供指导,及时处理风险较高的问题。
在一些实施例中,还可以利用可视化报表记录各风险等级对应的时序例外约束数量。如图4所示,Risk表示高风险,Qualified表示低风险,Best表示安全。
相应地,在一些实施例中,各数字可供用户点击,用户在点开后,会展示存在风险的时序例外约束的具体信息。
芯片的设计过程是多次迭代的,因此,在完成一轮时序例外约束的检查与修改之后,通常会将约束文件重新进行检查。此时,电子设备会重新执行S110至S140。而当一轮问题修复后,可能会引发其他的问题,也存在一些经过检查,并认为是正常、合规的时序例外约束,若将此类时序例外约束继续呈现给用户检查,则可能会耗费较多的时间做重复性工作。
在本申请的一些实施例中,可视化报表被配置为允许用户进行操作,以及响应于在可视化报表中对时序例外约束的确认操作,生成豁免文件。
本实施例中,豁免文件包括被确认为合规的时序例外约束,即若用户认为某条时序例外约束没有风险、合规,则可以在可视化报表中进行确认,例如署名、标记等,可视化报表所有的时序例外约束均完成检查后,则将进行署名或标记的时序例外约束进行提取,重新生成一个豁免文件。该豁免文件同样可以提供给用户,便于用户在下一次检查时根据豁免文件获知已经确认过的问题,减少重复工作量,以提高工作效率。
进一步地,在一些实施例中,还可以结合豁免文件对约束条件的约束条件数量和路径的路径数量进行统计。例如,在获得豁免文件后,使豁免文件中涉及的时序例外约束不参与S120中时序例外约束的提取,或者,豁免文件中涉及的时序例外约束不参与S130中约束条件和路径的统计,再或者,在确定约束文件未发生改变的情况下,将豁免文件中的时序例外约束从可视化报表中剔除。在一些实施例中,还可以对可视化报表中豁免文件涉及的时序例外约束在进行标记,例如,增加通过标记,将其颜色标记为灰色等,以标识时序例外约束无需重新确认。
上述过程的目的均在于使豁免文件内时序例外约束对应的约束条件和路径不参与统计,减少用户对可视化报表进行确认时所执行的重复工作,从而提高检查效率。
基于同一发明构思,本申请实施例还提供一种时序例外约束检查装置。请参阅图5,图5为本申请一实施例提供的一种时序例外约束检查装置的示意图,时序例外约束检查装置200包括:获取模块210、提取模块220、数据处理模块230和可视化模块240。
获取模块210,用于获取芯片的约束文件。
提取模块220,用于提取约束文件中的时序例外约束的对应数据;时序例外约束的对应数据包括该时序例外约束的约束条件和该时序例外约束涉及电路的路径。
数据处理模块230,用于统计约束条件的约束条件数量和路径的路径数量。
可视化模块240,用于将每一个时序例外约束的约束条件数量和路径数量,与该时序例外约束的标识信息关联记录于可视化报表中。
可视化模块240,还用于响应于在可视化报表中对所述时序例外约束的确认操作,生成豁免文件;豁免文件包括被确认为合规的时序例外约束。
数据处理模块230,还用于使豁免文件内时序例外约束对应的约束条件和路径不参与统计。
数据处理模块230,还用于根据每一个时序例外约束的标识信息,从预设的时序例外约束类型和标识信息关联关系中,确定每一个时序例外约束的约束类型;时序例外约束的标识信息被配置为与约束类型关联记录于可视化报表中。
时序例外约束的对应数据还包括该时序例外约束所属的芯片工作模式和/或所属的模块 。数据处理模块230,还用于对于每一个时序例外约束,根据该时序例外约束的对应数据确定该时序例外约束所属的芯片工作模式和/或所属的模块;时序例外约束的约束条件数量和路径数量被配置为与芯片工作模式和/或模块关联记录于可视化报表中。
其中,芯片的工作模式包括功能模式、低功耗模式和测试模式中的至少一种;相应的,所述约束文件包括功能模式约束文件、低功耗模式约束文件和测试模式约束文件中的至少一种。
针对每一个时序例外约束:数据处理模块230,还用于根据该时序例外约束的约束条件数量确定该时序例外约束的风险等级,可视化模块240还用于基于风险等级在可视化报表中对该时序例外约束进行标记。
针对每一个时序例外约束:数据处理模块230,还用于根据该时序例外约束的路径数量确定该时序例外约束的风险等级;可视化模块240还用于基于所述风险等级在所述可视化报表中对该时序例外约束进行标记。
时序例外约束检查装置200所实现的功能与前述时序例外约束检查方法相似,具体内容可以参考前文,在此不再赘述。
基于同一发明构思,本申请实施例还提供一种时序例外约束检查系统300。请参阅图6,时序例外约束检查系统300包括:第一设备310和服务器320。
第一设备310,可以是各类存储有约束文件的设备,例如,手机、计算机等,约束文件可以第一设备310自身芯片所使用的约束芯片,也可以是为其他芯片所设计的芯片,约束文件的具体作用不应称为对本申请的限制。其中,第一设备310可以有一个或多个。
服务器320,与第一设备310通信连接。
在本申请的实施例中,服务器320部署有实现前述任一实施例时序例外约束检查方法的环境,服务器320可以接收第一设备310传输的约束文件,并对其进行检查。
基于同一发明构思,本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序在计算机上运行时,使得计算机执行上述实施例中提供的方法。其中,前述时序例外约束检查系统300中的服务器可以是一种计算机。
该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如DVD(digital videodisc,数字化视频光盘))、或者半导体介质(例如SSD(Solid State Disk,固态硬盘))等。
所述电子凭证管理方法如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请所提供的实施例中,应该理解到,所揭露的方法和装置,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的。在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
以上各实施例可以在不冲突的情况下自由组合,组合得到的实施例涵盖在本申请的保护范围之内。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (11)

1.一种时序例外约束检查方法,其特征在于,包括:
获取芯片的约束文件;
提取所述约束文件中的时序例外约束的对应数据;所述时序例外约束的对应数据包括该时序例外约束的约束条件和该时序例外约束涉及电路的路径;
统计所述约束条件的约束条件数量和所述路径的路径数量;
将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中。
2.根据权利要求1所述的时序例外约束检查方法,其特征在于,所述将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中之后,所述方法还包括:
响应于在所述可视化报表中对所述时序例外约束的确认操作,生成豁免文件;所述豁免文件包括被确认为合规的时序例外约束。
3.根据权利要求2所述的时序例外约束检查方法,其特征在于,所述生成豁免文件之后,所述方法还包括:
使所述豁免文件内时序例外约束对应的约束条件和路径不参与统计。
4.根据权利要求1所述的时序例外约束检查方法,其特征在于,所述提取所述约束文件中的时序例外约束的对应数据之后,所述方法还包括:
根据每一个时序例外约束的标识信息,从预设的时序例外约束类型和标识信息关联关系中,确定每一个时序例外约束的约束类型;所述时序例外约束的标识信息被配置为与所述约束类型关联记录于所述可视化报表中。
5.根据权利要求4所述的时序例外约束检查方法,其特征在于,所述时序例外约束的对应数据还包括该时序例外约束所属的芯片工作模式和/或所属的模块;所述提取所述约束文件中的时序例外约束及所述时序例外约束的对应数据之后,所述方法还包括:
对于每一个时序例外约束,根据该时序例外约束的对应数据确定该时序例外约束所属的芯片工作模式和/或所属的模块;所述时序例外约束的约束条件数量和所述路径数量被配置为与所述芯片工作模式和/或所述模块关联记录于所述可视化报表中。
6.根据权利要求5所述的时序例外约束检查方法,其特征在于,所述芯片的工作模式包括功能模式、低功耗模式和测试模式中的至少一种;相应的,所述约束文件包括功能模式约束文件、低功耗模式约束文件和测试模式约束文件中的至少一种。
7.根据权利要求1-6任一项所述的时序例外约束检查方法,其特征在于,所述将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中之后,所述方法还包括:
针对每一个时序例外约束:
根据该时序例外约束的约束条件数量确定该时序例外约束的风险等级;
基于所述风险等级在所述可视化报表中对该时序例外约束进行标记。
8.根据权利要求1-6任一项所述的时序例外约束检查方法,其特征在于,所述将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中之后,所述方法还包括:
针对每一个时序例外约束:
根据该时序例外约束的路径数量确定该时序例外约束的风险等级;
基于所述风险等级在所述可视化报表中对该时序例外约束进行标记。
9.一种时序例外约束检查装置,其特征在于,包括:
获取模块,用于获取芯片的约束文件;
提取模块,用于提取所述约束文件中的时序例外约束的对应数据;所述时序例外约束的对应数据包括该时序例外约束的约束条件和该时序例外约束涉及电路的路径;
数据处理模块,用于统计所述约束条件的约束条件数量和所述路径的路径数量;
可视化模块,用于将每一个时序例外约束的所述约束条件数量和所述路径数量,与该时序例外约束的标识信息关联记录于可视化报表中。
10.一种时序例外约束检查系统,其特征在于,包括:
第一设备,配置有约束文件,
服务器,与所述第一设备通信连接,用于接收所述第一设备的约束文件,并执行如权利要求1-8任一项所述的时序例外约束检查方法。
11.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1-8任一项所述的时序例外约束检查方法。
CN202311618799.6A 2023-11-30 2023-11-30 时序例外约束检查方法、装置、系统及存储介质 Active CN117313604B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311618799.6A CN117313604B (zh) 2023-11-30 2023-11-30 时序例外约束检查方法、装置、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311618799.6A CN117313604B (zh) 2023-11-30 2023-11-30 时序例外约束检查方法、装置、系统及存储介质

Publications (2)

Publication Number Publication Date
CN117313604A CN117313604A (zh) 2023-12-29
CN117313604B true CN117313604B (zh) 2024-02-06

Family

ID=89285234

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311618799.6A Active CN117313604B (zh) 2023-11-30 2023-11-30 时序例外约束检查方法、装置、系统及存储介质

Country Status (1)

Country Link
CN (1) CN117313604B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008123056A (ja) * 2006-11-08 2008-05-29 Sharp Corp 論理回路のタイミング制約生成システムおよび論理回路のタイミング制約生成方法、制御プログラム、可読記録媒体
US7926011B1 (en) * 2007-01-10 2011-04-12 Cadence Design Systems, Inc. System and method of generating hierarchical block-level timing constraints from chip-level timing constraints
CN103177145A (zh) * 2011-12-20 2013-06-26 国际商业机器公司 一种用于集成电路的多个时序模式合并的方法和系统
CN103207885A (zh) * 2012-01-16 2013-07-17 卡西欧计算机株式会社 半导体电路设计支援装置及方法、计算机可读记录介质
CN103714000A (zh) * 2013-12-18 2014-04-09 杭州电子科技大学 一种面向敏感区域的嵌入式软件测试用例生成方法
CN115935866A (zh) * 2022-12-27 2023-04-07 深存科技(无锡)有限公司 一种集成电路时序约束功能验证方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080201671A1 (en) * 2007-02-16 2008-08-21 Atrenta, Inc. Method for generating timing exceptions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008123056A (ja) * 2006-11-08 2008-05-29 Sharp Corp 論理回路のタイミング制約生成システムおよび論理回路のタイミング制約生成方法、制御プログラム、可読記録媒体
US7926011B1 (en) * 2007-01-10 2011-04-12 Cadence Design Systems, Inc. System and method of generating hierarchical block-level timing constraints from chip-level timing constraints
CN103177145A (zh) * 2011-12-20 2013-06-26 国际商业机器公司 一种用于集成电路的多个时序模式合并的方法和系统
CN103207885A (zh) * 2012-01-16 2013-07-17 卡西欧计算机株式会社 半导体电路设计支援装置及方法、计算机可读记录介质
CN103714000A (zh) * 2013-12-18 2014-04-09 杭州电子科技大学 一种面向敏感区域的嵌入式软件测试用例生成方法
CN115935866A (zh) * 2022-12-27 2023-04-07 深存科技(无锡)有限公司 一种集成电路时序约束功能验证方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
An Automated Propagation Approach that Promotes and Demotes the Timing Exception Between Hierarchical Blocks and Flat Design;Wei Chao等;《2023 International Symposium of Electronics Design Automation (ISEDA)》;第102-105页 *
基于TQ时序分析器的时序分析和约束;李珈;《电子测试》(第11期);第27-28页 *
基于关键路径的FPGA时序电路最大工作频率测试方法;袁靖茹等;《复旦学报(自然科学版)》;第54卷(第06期);第706-712页 *
对全速测试中时序例外路径的处理方法的改进;韩少锋等;《电子测试》(第11期);第13-16页 *

Also Published As

Publication number Publication date
CN117313604A (zh) 2023-12-29

Similar Documents

Publication Publication Date Title
CN109710508B (zh) 测试方法、测试装置、测试设备及计算机可读存储介质
US8875110B2 (en) Code inspection executing system for performing a code inspection of ABAP source codes
US8397104B2 (en) Creation of test plans
CN110908890A (zh) 一种接口的自动测试方法和装置
Kang et al. Development of a Bayesian belief network model for software reliability quantification of digital protection systems in nuclear power plants
CN107862327B (zh) 一种基于多特征的安全缺陷识别系统和方法
CN108009080B (zh) 一种代码扫描工具的评估方法及装置
CN102591773A (zh) 等保测评中操作系统安全的自动测评方法及其系统
CN103257919A (zh) 脚本程序检查方法和装置
CN202736027U (zh) 等保测评中操作系统安全的自动测评系统
CN103488460B (zh) 自动标记源代码的系统和方法
CN103514092A (zh) Atm机软件系统自动测试方法
CN111752833B (zh) 一种软件质量体系准出方法、装置、服务器及存储介质
CN117313604B (zh) 时序例外约束检查方法、装置、系统及存储介质
CN105653455B (zh) 一种程序漏洞的检测方法及检测系统
JP2013182468A (ja) パラメータ値設定誤り検出システム、パラメータ値設定誤り検出方法およびパラメータ値設定誤り検出プログラム
CN112084108A (zh) 一种测试脚本生成方法、装置及相关组件
CN107402883B (zh) 一种数据测试处理方法和装置
CN111651346A (zh) 前端组件的测试方法、装置、存储介质及计算机设备
CN112612882B (zh) 检阅报告生成方法、装置、设备和存储介质
CN109145609A (zh) 一种数据处理方法和装置
Dautovic et al. Automated quality defect detection in software development documents
Koutsopoulos et al. Advancing data race investigation and classification through visualization
CN113868137A (zh) 埋点数据的处理方法、装置、系统和服务器
CN112631852A (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