[发明专利]验证用于多级部件的硬件设计在审
申请号: | 202011538039.0 | 申请日: | 2020-12-23 |
公开(公告)号: | CN113051865A | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 罗伯特·麦凯美 | 申请(专利权)人: | 畅想科技有限公司 |
主分类号: | G06F30/398 | 分类号: | G06F30/398;G06F115/02 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 郭妍 |
地址: | 英国赫*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 验证 用于 多级 部件 硬件 设计 | ||
1.一种用于验证用于多级部件的硬件设计的方法(300),所述多级部件被配置为接收输入数据并且通过在多个连续阶段中的每个阶段处理所述输入数据来生成输出数据,每个阶段能够在每个周期中被启用或停止,所述方法(300)包括在一个或多个处理器处:
针对从第二阶段到最后一个阶段的多个阶段中的每个阶段:
验证第一属性,所述第一属性为如果当在一个周期中所述阶段由任何一组输入启用并且在后续周期中由第一最小输入序列启用任何后续阶段时实例化处于相同状态,则所述硬件设计的所述实例化的所述输出数据的相关部分相同(304);以及
验证第二属性,所述第二属性为如果实例化在以下情况下处于相同状态,则所述硬件设计的所述实例化的所述输出数据的所述相关部分相同:(i)当在一个周期中所述阶段被启用并且在后续周期中由第二最小输入序列启用任何后续阶段时,以及(ii)当所述阶段停止,然后在下一个周期中所述阶段被启用,并且在后续周期中由所述第二最小输入序列启用所述后续阶段时(306)。
2.如权利要求1所述的方法(300),其中在以下约束下针对阶段验证所述第二属性:当所述阶段在周期中停止时,在所述阶段之前的阶段也停止。
3.如权利要求1所述的方法(300),其中所述输出数据的所述相关部分为所有的所述输出数据,或者其中所述输出数据的所述相关部分基于对所述多级部件的所述输入和/或所述多级部件的操作模式。
4.如权利要求1至3中任一项所述的方法(300),还包括通过验证当所述阶段由最小输入序列启用时所述硬件设计的实例化的所述输出数据对于相同的输入数据相同而与所述硬件设计的初始状态无关,验证所述硬件设计与初始状态无关。
5.如权利要求1至3中任一项所述的方法(300),其中对于所述多级部件的每个可能的有效状态,针对阶段验证所述第一属性。
6.如权利要求1至3中任一项所述的方法(300),其中对于所述多级部件的其中阶段被启用的每一组可能的输入,针对所述阶段验证第一属性。
7.如权利要求1至3中任一项所述的方法(300),其中对于仅一个最小输入序列,针对阶段验证所述第一属性和所述第二属性中的至少一者。
8.如权利要求1至3中任一项所述的方法(300),其中对于所述多级部件的每个可能的有效状态,针对阶段验证所述第二属性。
9.如权利要求1至3中任一项所述的方法(300),其中对于所述多级部件的其中阶段停止的每一组可能的输入,针对所述阶段验证第二属性。
10.如权利要求1至3中任一项所述的方法(300),其中用于所述后续阶段的最小输入序列是使相同输入前进经过所述后续阶段的每个阶段的输入序列。
11.如权利要求1至3中任一项所述的方法(300),其中所述第一最小输入序列和/或第二最小输入序列包括其中在连续周期中启用所述后续阶段的输入序列。
12.如权利要求1至3中任一项所述的方法(300),还包括输出指示所述验证是否成功的一个或多个信号(308)。
13.如权利要求1至3中任一项所述的方法(300),还包括响应于确定所述验证中的至少一个验证不成功(310),修改所述硬件设计(312)。
14.如权利要求13所述的方法(300),还包括重新验证所述修改后的硬件设计。
15.如权利要求1至3中任一项所述的方法(300),其中使用形式验证工具来形式验证所述第一属性和所述第二属性中的至少一者。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于畅想科技有限公司,未经畅想科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011538039.0/1.html,转载请声明来源钻瓜专利网。