CN115935868B - 一种集成电路设计和验证流程管理用自动化系统 - Google Patents
一种集成电路设计和验证流程管理用自动化系统 Download PDFInfo
- Publication number
- CN115935868B CN115935868B CN202211612798.6A CN202211612798A CN115935868B CN 115935868 B CN115935868 B CN 115935868B CN 202211612798 A CN202211612798 A CN 202211612798A CN 115935868 B CN115935868 B CN 115935868B
- Authority
- CN
- China
- Prior art keywords
- log
- state
- module
- flow
- key
- 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
Abstract
本发明公开了一种集成电路设计和验证流程管理用自动化系统,涉及集成电路设计技术领域。本发明包括状态监控模块,状态信息维护模块,关键日志实时自动提取模块和可视化界面模块;所述状态监控模块用于实时监测各个目标流程的运行状态;所述状态信息维护模块用于维护全局的各个流程的状态信息;所述关键日志实时自动提取模块用于支持用户自定义格式日志自动提取;所述可视化界面模块提供用户简洁方便的交互界面,包括解析各个流程之间的依赖关系和计算各个图形摆放的坐标位置,还提供按键控制目标流程。本发明实现了芯片设计和验证流程中各个环节的任务创建、执行、运行状态实时监控和关键日志实时自动提取等功能,提高了芯片设计效率。
Description
技术领域
本发明涉及集成电路设计技术领域,涉及一种集成电路设计和验证流程管理用自动化系统。
背景技术
目前,在集成电路设计、验证过程中流程复杂、步骤繁琐,集成电路后端设计工程师需要在多种应用工具之间来回切换,通过命令行与各种应用工具打交道,缺少直观的交互界面,另外在实际流程中某个环节的运行进度也无法直观的获得,导致操作步骤繁琐,出错率高,单个流程输出结果还需要手动输入通过命令行查看寻找关键日志信息,严重影响后端设计工程师的工作效率。
发明内容
本发明为了弥补现有技术的不足,提供了一种集成电路设计和验证流程管理用自动化系统,实现了在芯片设计和验证过程中提供流程可视化交互界面,实现芯片设计和验证流程中各个环节的任务创建、执行、运行状态实时监控和关键日志实时自动提取等功能,提高了芯片设计效率,降低了出错率。本发明是通过如下技术方案实现的:本发明提供了一种集成电路设计和验证流程管理用自动化系统,包括状态监控模块,状态信息维护模块,关键日志实时自动提取模块和可视化界面模块;
所述状态监控模块用于实时监测各个目标流程的运行状态;
所述状态信息维护模块用于维护全局的各个流程的状态信息;状态信息维护模块还包括当前流程的运行状态进度的动态估计和展示模块;关键日志实时自动提取模块用于支持用户自定义格式日志自动提取;提取关键日志信息并展示在可视化界面悬浮窗口中;
可视化界面模块提供简洁方便的交互界面,包括解析各个流程之间的依赖关系和计算各个图形摆放的坐标位置,还提供按键控制目标流程。
作为优选方案,系统根据用户定义的输入文件,其定义的各个流程的前置依赖,解析各个目标流程的相互依赖关系,根据相互的依赖关系在主界面中绘制对应的流程关系;具体算法实现为:首先找到不存在前置依赖的流程,说明其是起始流程,随后依次找到其所有强依赖的后一级后置流程,根据后置流程的个数确定其前置依赖的中心坐标位置,同时依次计算后置同一层级的流程的摆放坐标位置,再接着递归计算后置流程的目标坐标位置,并且保证同一层级不相互覆盖。
作为优选方案,所述状态监控模块主要通过后台定时任务监测输入文件中定义的目标流程进程状态和日志状态,结合两者的状态判断当前目标流程的运行状态。
作为优选方案,所述状态信息维护模块包括定时任务和锁机制,由于用户的点击操作会修改目标流程的当前状态,可能与定时任务监测和刷新状态发生资源冲突,所以在系统中加入锁机制,防止资源竞争引发的状态刷新问题;启动操作时会找到当前流程前置的所有强依赖的前置流程依次按顺序启动,只有前置流程都顺利完成,其后续目标流程才能启动;前置依赖的目标流程都启动完成后,定时任务监测会监测到会启动当前流程,以此达到流程化启动的效果。
作为优选方案,当前流程的运行状态进度的动态估计和展示,包括以下实现方法:(1)日志关键词匹配体现进度,在流程运行过程中打印相对应的关键日志体现运行的不同进度,定时任务检测日志关键词维护进度状态;(2)用户在输入文件中指定当前流程预估所需时间,系统解析记录后作为参考展示进度条功能;(3)记录当前流程前N次运行时间取平均值作为历史运行时间作为参考计算进度增长步长。
作为优选方案,所述关键日志实时自动提取模块支持用户自定义在输入文件中定义匹配格式,针对不同流程的关键日志信息本系统提供了灵活的日志提取功能,针对复杂的输出日志格式,也能很好的支持模式匹配;日志提取模块主要分为格式解析和日志提取两个部分,格式解析是解析输入文件中用户定义的匹配格式,日志提取根据解析的匹配格式去日志中进行匹配得到最终的展示数据并在主界面悬浮窗口中显示;关键日志实时自动提取模块还支持用户自定义设置关键输出日志的达标信息,系统自动提取并检测其是否达标,如果不达标则提供预警机制,及时告知设计人员出现异常。
作为优选方案,所述可视化界面模块首先解析输入文件依赖关系,并根据依赖关系算法绘制整个流程的依赖关系;用户可直观的根据主界面各个流程状态了解当前流程的运行状态和各个目标流程的当前状态。
本发明的有益效果是:
本发明针对集成电路设计和验证流程多、步骤繁琐、设计人员易出错、不易交互等问题,提供了一种集成电路后端设计验证流程自动化管理系统,能够在芯片设计、验证过程中提供流程可视化交互界面,简单快捷的实现芯片设计验证流程中各个环节的任务创建、执行、运行状态实时监控和关键日志实时自动提取等功能,将芯片产品设计流程与有效提升设计效率的特性相结合,在芯片设计流程中很大程度上降低了后端工程师的设计风险。
(1)本发明实现了芯片设计验证流程各环节任务创建、启动、停止、运行状态实时监控和输出报告关键信息提取,全部可视化,交互方便直观简便;
(2)本发明系统高度集成化,封装化,对外进行技术保护,防止技术人员输错指令,降低操作失误概率;
(3)本发明采用多任务顺序流程控制,一键按顺序启动指定依赖关系的多个流程,无需等待人工逐个等待前置流程完成后再下控制指令启动下一个流程,节省时间和人力,极大提高芯片设计人员的工作效率;
(4)实现芯片设计全流程运行状态实时监控与反馈,关键日志信息提取展示,实现用户自定义关键日志信息的提取和展示。设计人员每天有大量重复性工作花费在检查各种运行日志中,关键日志实时自动提取可以显著减轻工作强度。
(5)本系统还提供了当前流程运行状态进度的动态估计和展示功能,相比于目前已有的工业软件仅仅只有状态变化,没有具体的进度信息,能让用户更加直观的感受到当前流程的运行进度,对于设计人员合理安排时间,减少人力成本具有至关重要的作用。
附图说明
下面结合附图对本发明作进一步的说明。
图1为本发明的系统结构框图示意图;
图2为本发明的系统关系示意图;
图3为本发明的状态信息维护模块结构示意图;
图4为本发明图形绘制摆放流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。
附图为本发明的一种集成电路设计和验证流程管理用自动化系统的具体实施例。该实施例包括状态监控模块,状态信息维护模块,关键日志实时自动提取模块和可视化界面模块。
其中,状态监控模块用于实时监测各个目标流程的运行状态,
并刷新界面,芯片设计流程中每一个单个的步骤称为一个目标流程,可视化界面中选用不同的颜色用于体现不同的目标流程运行状态,让用户能非常直观的了解当前整个流程的运行情况;及时的将进程的运行状态报告于用户,便于用户对进程的管理与调整。
状态信息维护模块用于维护定时任务或者用户实时操作所引起的全流程状态变化的状态,包括相应的操作对应的状态变化情况,比如启动、停止、重置状态;为了避免资源竞争,在其中加入共享锁防止资源竞争。针对一个工程,其所有流程的状态是动态变化的,当用户启动、停止或者重置状态后,各个流程的状态都会受到影响,因此需要维护一份全流程的状态数据,以便实时能够标识各个流程的状态,更重要的是自动化、流程化的启动过程也需要实时维护各个目标流程的状态,这样才能严格做到流程化管理。本系统还提供了运行状态进度的动态估计和展示功能,相比于目前已有的工业软件仅仅只有状态变化,没有具体的进度信息,能让用户更加直观的感受到当前流程的运行进度,对于设计人员合理安排时间,减少人力成本具有至关重要的作用。
该系统还支持批量启动多个目标流程,由于在芯片设计验证流程过程中,各个环节的流程有严格的顺序要求,前置流程如果未完成或者有错误,后置的流程是无法启动的,即使启动也会由于缺失前置文件而失败;所以在选中多个流程后,点击启动按钮,则最先启动顺序在前的,运行中流程的后置流程则会变成等待先决启动状态;此外对于运行过程中的流程,系统会根据历史执行时长或者自定义进度日志反馈当前流程的运行进度。
关键日志实时自动提取模块用于提取关键日志信息并展示在可视化界面悬浮窗口中,减少用户手动查看日志的操作,减轻工作量,提高效率。该模块支持用户自定义匹配格式,能够应对较为复杂的日志提取场景。支持用户自定义关键日志信息提取和悬浮展示,用户可以配置所关心的关键输出信息。
可视化界面模块提供给用户简洁、直观的交互界面,以便于所有的用户操作都可在可视化界面中进行,并且能清晰的看到整个芯片设计流程的前后依赖关系和流向关系。启动流程后能够知道启动的流程链路以及各个目标流程的当前状态,不同颜色的标识能直观反映相对应的状态。
具体实现本系统的操作方式包括:
系统根据用户定义的输入文件(例如json格式),其定义的各个流程的前置依赖,解析各个目标流程的相互依赖关系,根据相互的依赖关系在主界面中绘制对应的流程关系;具体算法实现为:首先找到不存在前置依赖的流程,说明其是起始流程,随后依次找到其所有强依赖的后一级后置流程,根据后置流程的个数确定其前置依赖的中心坐标位置,同时依次计算后置同一层级的流程的摆放坐标位置,再接着递归计算后置流程的目标坐标位置,并且保证同一层级不相互覆盖。进而展现出整个图形绘制摆放流程及其清晰的依赖关系。
状态监控模块主要通过后台定时任务监测输入文件中定义的目标流程进程状态和日志状态,结合两者的状态判断当前目标流程的运行状态。通过后台定时任务完成相应进程和对目标流程日志的双重监测,系统能够监测所对应目标流程的进程的运行情况,同时结合目标流程的输出日志,判断当前流程所对应的运行状态。其中状态主要分为初始默认状态、运行中、等待中、已完成、中止或错误等状态。具体判断方式如下:如若目标进程存在,则为正在运行中;如若进程不存在,且日志不存在,则为默认初始状态(未启动);如果进程不存在,且日志存在,并且日志输出信息完整,则表示当前流程顺利运行完毕;如果进程不存在,且日志存在,且输出信息不完整,则为中断或者错误状态。当启动指令发出时,会首先监测前置的各个流程是否都执行完毕,如果前置有流程没有执行完毕,则当前流程为等待前置流程完成状态。
状态信息维护模块包括定时任务和锁机制,由于用户的点击操作会修改目标流程的当前状态,可能与定时任务监测和刷新状态发生资源冲突,所以在系统中加入锁机制,防止资源竞争引发的状态刷新问题;启动操作时会找到当前流程前置的所有强依赖的前置流程依次按顺序启动,只有前置流程都顺利完成,其后续目标流程才能启动;例如该实施了中等待前置流程运行完毕的流程会呈现蓝色状态,这样能直观的显示当前启动的链路状况。前置依赖的目标流程都启动完成后,定时任务监测会监测到会启动当前流程,以此达到流程化启动的效果。
状态信息维护模块还包括当前流程的运行状态进度的动态估计和展示,包括以下实现方法:(1)日志关键词匹配体现进度,在流程运行过程中打印相对应的关键日志体现运行的不同进度,定时任务检测日志关键词维护进度状态;(2)用户在输入文件中指定当前流程预估所需时间,系统解析记录后作为参考展示进度条功能;(3)记录当前流程前N次运行时间取平均值作为历史运行时间作为参考计算进度增长步长。以此得到当前流程的实时进度数值并将其展现在可视化界面中,能够让设计人员直观了解当前流程的运行状态,合理安排时间,减少人力反复检测状态的过程,有效提升工作效率。
关键日志实时自动提取模块支持用户自定义在输入文件中定义匹配格式,针对不同流程的关键日志信息本系统提供了灵活的日志提取功能,针对复杂的输出日志格式,也能很好的支持模式匹配;日志提取模块主要分为格式解析和日志提取两个部分,格式解析是解析输入文件中用户定义的匹配格式,日志提取根据解析的匹配格式去日志中进行匹配得到最终的展示数据并在主界面悬浮窗口中显示。系统还定义了一套详细完善的语法规则,能够灵活应对各种不同格式的日志。关键日志实时自动提取模块还支持用户自定义设置关键输出日志的达标信息,系统自动提取并检测其是否达标,如果不达标则提供预警机制,及时告知设计人员出现异常,起到监控报警的作用,能够有效避免人力物力的资源浪费,甚至能避免直接的经济损失。
可视化界面模块首先解析输入文件依赖关系,并根据依赖关系算法绘制整个流程的依赖关系;用户可直观的根据主界面各个流程状态了解当前流程的运行状态和各个目标流程的当前状态。界面还提供了启动、停止、重置、窗口调整等一系列功能按钮,减少了用户下达命令行指令的过程,降低操作门槛,减少误操作的概率。
此外,本发明的自动化系统还支持多人协作,不同的用户在不同的客户机上能够协同操作同一个流程,并且看到同样的运行的状态,本系统能够为多人协作提供底层数据交互。
工作原理:用户输入文件,系统解析依赖关系等信息,并将其在可视化界面中进行展示;对解析后的信息分别进行定时任务监测与状态信息维护,也将其进行可视化展示;对解析后的信息也进行自动化日志提取,即进行匹配格式解析和关键日志提取,并将得到的具体数据进行可视化展示。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
Claims (5)
1.一种集成电路设计和验证流程管理用自动化系统,其特征在于,包括状态监控模块,状态信息维护模块,关键日志实时自动提取模块和可视化界面模块;
所述状态监控模块用于实时监测各个目标流程的运行状态;
所述状态信息维护模块用于维护全局的各个流程的状态信息,状态信息维护模块还包括当前流程的运行状态进度的动态估计和展示模块;当前流程的运行状态进度的动态估计和展示,包括以下实现方法:(1)日志关键词匹配体现进度,在流程运行过程中打印相对应的关键日志体现运行的不同进度,定时任务检测日志关键词维护进度状态;(2)用户在输入文件中指定当前流程预估所需时间,系统解析记录后作为参考展示进度条功能;(3)记录当前流程前N次运行时间取平均值作为历史运行时间作为参考计算进度增长步长;
关键日志实时自动提取模块用于支持用户自定义格式日志自动提取;提取关键日志信息并展示在可视化界面悬浮窗口中;
可视化界面模块提供简洁方便的交互界面,包括解析各个流程之间的依赖关系和计算各个图形摆放的坐标位置,还提供按键控制目标流程;系统根据用户定义的输入文件,其定义的各个流程的前置依赖,解析各个目标流程的相互依赖关系,根据相互的依赖关系在主界面中绘制对应的流程关系;具体算法实现为:首先找到不存在前置依赖的流程,说明其是起始流程,随后依次找到其所有强依赖的后一级后置流程,根据后置流程的个数确定其前置依赖的中心坐标位置,同时依次计算后置同一层级的流程的摆放坐标位置,再接着递归计算后置流程的目标坐标位置,并且保证同一层级不相互覆盖。
2.根据权利要求1所述的集成电路设计和验证流程管理用自动化系统,其特征在于,所述状态监控模块主要通过后台定时任务监测输入文件中定义的目标流程进程状态和日志状态,结合两者的状态判断当前目标流程的运行状态。
3.根据权利要求1所述的集成电路设计和验证流程管理用自动化系统,其特征在于,所述状态信息维护模块包括定时任务和锁机制,由于用户的点击操作会修改目标流程的当前状态,可能与定时任务监测和刷新状态发生资源冲突,所以在系统中加入锁机制,防止资源竞争引发的状态刷新问题;启动操作时会找到当前流程前置的所有强依赖的前置流程依次按顺序启动,只有前置流程都顺利完成,其后续目标流程才能启动;前置依赖的目标流程都启动完成后,定时任务监测会监测到会启动当前流程,以此达到流程化启动的效果。
4.根据权利要求1所述的集成电路设计和验证流程管理用自动化系统,其特征在于,所述关键日志实时自动提取模块支持用户自定义在输入文件中定义匹配格式,针对不同流程的关键日志信息本系统提供了灵活的日志提取功能,针对复杂的输出日志格式,也能很好的支持模式匹配;日志提取模块主要分为格式解析和日志提取两个部分,格式解析是解析输入文件中用户定义的匹配格式,日志提取根据解析的匹配格式去日志中进行匹配得到最终的展示数据并在主界面悬浮窗口中显示;关键日志实时自动提取模块还支持用户自定义设置关键输出日志的达标信息,系统自动提取并检测其是否达标,如果不达标则提供预警机制,及时告知设计人员出现异常。
5.根据权利要求1所述的集成电路设计和验证流程管理用自动化系统,其特征在于,所述可视化界面模块首先解析输入文件依赖关系,并根据依赖关系算法绘制整个流程的依赖关系;用户可直观的根据主界面各个流程状态了解当前流程的运行状态和各个目标流程的当前状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211612798.6A CN115935868B (zh) | 2022-12-15 | 2022-12-15 | 一种集成电路设计和验证流程管理用自动化系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211612798.6A CN115935868B (zh) | 2022-12-15 | 2022-12-15 | 一种集成电路设计和验证流程管理用自动化系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115935868A CN115935868A (zh) | 2023-04-07 |
CN115935868B true CN115935868B (zh) | 2023-07-04 |
Family
ID=86697429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211612798.6A Active CN115935868B (zh) | 2022-12-15 | 2022-12-15 | 一种集成电路设计和验证流程管理用自动化系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115935868B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020172913A1 (zh) * | 2019-02-28 | 2020-09-03 | 东北大学 | 一种基于组态的生产指标可视化监控系统及方法 |
CN112860965A (zh) * | 2020-12-31 | 2021-05-28 | 浙江大学 | 一种基于日志的网络模拟可视化仿真平台 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6173246B1 (en) * | 1998-07-21 | 2001-01-09 | Billups, Iii James T. | Method and system for a unified process automation software system |
GB2581861B (en) * | 2018-09-14 | 2022-10-05 | Sino Ic Tech Co Ltd | IC Test Information Management System Based on Industrial Internet |
CN113487277B (zh) * | 2021-06-29 | 2024-02-20 | 国网安徽省电力有限公司 | 基于机器人流程自动化的数字员工管理系统 |
CN114356190A (zh) * | 2022-01-06 | 2022-04-15 | 中电云数智科技有限公司 | 基于Web的AI可视化建模流程绘制方法、系统及用途 |
-
2022
- 2022-12-15 CN CN202211612798.6A patent/CN115935868B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020172913A1 (zh) * | 2019-02-28 | 2020-09-03 | 东北大学 | 一种基于组态的生产指标可视化监控系统及方法 |
CN112860965A (zh) * | 2020-12-31 | 2021-05-28 | 浙江大学 | 一种基于日志的网络模拟可视化仿真平台 |
Non-Patent Citations (1)
Title |
---|
Robotic Process Automation and Aritificial Intelligence in Industry 4.0 - A Literature review;Jorge Ribeiro;Procedia Computer Science;第181卷;51-58 * |
Also Published As
Publication number | Publication date |
---|---|
CN115935868A (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5177420A (en) | Method of and apparatus for generating control program | |
JP3072751B2 (ja) | アクションバー及びプルダウン・メニューのワークステーションでの表示・処理装置及び方法 | |
US5644487A (en) | Monitoring and control system and method | |
US9122269B2 (en) | Method and system for operating a machine from the field of automation engineering | |
US5404288A (en) | Transfer line control system utilizing distributed computing | |
EP1624352A1 (en) | Manual restart learning process and manual restart process for an automated system | |
CN109844660B (zh) | 调试辅助装置以及调试辅助方法 | |
CN106293748A (zh) | 一种图形化交互式机器视觉系统及其工作方法 | |
US11960925B2 (en) | Program generating device, program generating method, and information storage medium | |
US20060085783A1 (en) | Multi-process display method in debugger system | |
CN115935868B (zh) | 一种集成电路设计和验证流程管理用自动化系统 | |
JPH1139190A (ja) | 並列処理プログラムのデバッグシステム、及びそのデバッグ方法 | |
US20190056855A1 (en) | System and method for temporal planning and monitoring of machine states | |
CN112131759B (zh) | 一种综合环境模拟多参数工况输入系统及工况创建方法 | |
JP7093294B2 (ja) | 作画システムおよびプログラム | |
CN112631532A (zh) | 亮暗线调节方法、装置和系统以及计算机存储介质 | |
JP2003084811A (ja) | ラダーモニタ装置、並びに、そのプログラムおよび記録媒体 | |
CN109558171B (zh) | 一种使用电子表格定义和控制计算机的方法 | |
CN109859905A (zh) | 一种高速编织机智能控制器 | |
CN117819197A (zh) | 自动化流程的控制方法、系统、电子设备及存储介质 | |
US20160018809A1 (en) | Ladder chart creation device, monitoring device, computer program, and machine control device | |
CN109032443B (zh) | 一种自动操作设备的软件控制方法及装置 | |
JP2533370B2 (ja) | 制御プログラム作成方法 | |
JP2533373B2 (ja) | 制御プログラム作成方法 | |
JP2003223204A (ja) | プログラマブルコントローラのプログラミング方法およびその装置並びに記憶媒体 |
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 |