申请/专利权人:上海合芯数字科技有限公司;合芯科技有限公司
申请日:2023-09-04
公开(公告)日:2024-04-16
公开(公告)号:CN117234591B
主分类号:G06F9/30
分类号:G06F9/30
优先权:
专利状态码:有效-授权
法律状态:2024.04.16#授权;2024.01.02#实质审查的生效;2023.12.15#公开
摘要:本申请提供一种指令验证方法、系统、设备、介质及产品。该方法包括:激励发生器向待测缓存和缓存模型发送激励;激励是根据预设的激励发送条件和激励类型,基于Power指令集的larx指令和stcx指令生成;待测缓存响应激励,执行处理得到第一处理结果;以及,信息采集器从待测缓存中采集获得第一处理结果,发送至结果比较器;缓存模型响应激励,执行处理得到第二处理结果,并将第二处理结果发送至结果比较器;结果比较器检测第一处理结果和第二处理结果是否一致,若一致,则判定验证成功;若不一致,则判定验证失败。本申请的方案,能够全面有效地验证指令在缓存中的行为。
主权项:1.一种指令验证方法,其特征在于,应用于指令验证系统,所述指令验证系统包括激励发生器、待测缓存、缓存模型、信息采集器以及结果比较器;所述方法包括:所述激励发生器向所述待测缓存和所述缓存模型发送激励;所述激励是根据预设的激励发送条件和激励类型,基于Power指令集的larx指令和stcx指令生成;所述待测缓存响应所述激励,执行处理得到第一处理结果;以及,所述信息采集器从所述待测缓存中采集获得所述第一处理结果,发送至所述结果比较器;所述缓存模型响应所述激励,执行处理得到第二处理结果,并将所述第二处理结果发送至所述结果比较器;其中,所述缓存模型基于缓存机制和所述Power指令集的larx指令和stcx指令建立,用于模拟标准缓存对接收到的激励执行指令操作处理;所述结果比较器检测所述第一处理结果和所述第二处理结果是否一致,若一致,则判定验证成功;若不一致,则判定验证失败;所述缓存模型包括:指令执行模块、控制模块、目录、数据存储以及保留站;所述指令执行模块用于响应larx指令或stcx指令,访问所述目录并基于所述数据存储中的缓存数据,执行所述larx指令或所述stcx指令在所述缓存模型中的执行流程,所述执行流程包括按照预设的保留设置条件和保留清空条件,更新所述保留站中的数据;所述控制模块用于当检测到所述larx指令和所述stcx指令之间存在load请求或者snoop请求时,按照预设的保留维护条件,执行对所述保留站的维护处理;所述激励发送条件,包括:针对larx指令,满足以下条件:同一线程下正在执行的larx指令不超过1个,且该线程下不存在正在执行的stcx指令;不同线程下的larx指令允许并行发送,且不同线程下的larx指令指示的地址允许相同;针对stcx指令,满足以下条件:同一线程下正在执行的stcx指令不超过1个;且该线程下需要确认已经有相同线程的larx指令发送至该线程,若存在该larx指令,需在该larx指令执行完成后执行stcx指令;若不存在该larx指令,需将stcx指令转换为stcxfnk指令类型;不同线程下的stcx指令允许并行发送,且不同线程下的stcx指令指示的地址允许相同。
全文数据:
权利要求:
百度查询: 上海合芯数字科技有限公司;合芯科技有限公司 指令验证方法、系统、设备、介质及产品
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。