一种资源隔离验证方法和系统与流程
本发明涉及集成电路仿真验证领域,尤其涉及一种资源隔离验证方法和系统。
背景技术:
1、在统一总线虚拟设备的硬件设计中,多个虚拟设备实例共享队列、门铃、直接存储器访问地址窗口、中断向量和路由上下文等物理资源,资源隔离是保障各实例互不干扰的关键。在rtl(register transfer level,寄存器传输级)仿真验证阶段,验证平台通常通过输入输出内存管理单元检查直接存储器访问地址范围是否越权,或者依据设备标识和资源编号对总线上的事务进行归属关联,以此判断虚拟设备实例对资源的访问是否合法。验证过程中,测试用例驱动虚拟设备实例完成创建、配置、运行和销毁等生命周期操作,监测组件采集设备接口和总线上的事务,比对组件将被测设计的实际响应与预期结果进行比较,从而发现资源访问越权或地址冲突等隔离问题。当虚拟设备实例销毁后,其占用的硬件资源被回收并可重新分配给后续创建的实例,这种资源回收复用机制在长时间运行和多实例交替创建的场景中频繁发生。
2、然而,设备标识和资源编号在实例销毁后会被循环使用,同一队列编号或中断向量在不同时期可能归属于不同的虚拟设备实例。虚拟设备实例在运行阶段发出的直接存储器访问事务经过地址转换、总线传输和目标执行后才能返回完成响应,事务从发出到完成之间存在多个时钟周期的延迟。当实例在事务尚未返回时被销毁,其占用的资源经过回收流程后重新分配给新创建的实例,仍在传输途中的旧事务完成后会按照相同的资源编号到达已经归属于新实例的队列或中断,而现有验证方法仅依据设备标识和资源编号判断事务归属,难以识别该完成项实际来自已经不存在的旧实例。验证平台一旦将旧实例的迟到完成项误认为新实例的合法事务,或者将新实例的合法访问与旧实例的残留事务混淆,就无法发现被测设计在资源复用过渡期存在的隔离缺陷,导致跨生命周期的资源归属冲突遗漏到流片后的芯片中,影响系统运行的稳定性。
技术实现思路
1、针对现有技术中的不足之处,本发明公开一种资源隔离验证方法,应用于包括多个待测单元的rtl仿真验证平台,所述资源隔离验证方法应用于统一总线传输协议;设置测试单元和控制单元;所述资源隔离验证方法包括:所述控制单元基于所有保存在各所述待测单元中的共享资源构建对应的资源归属表;所述测试单元分别在各所述待测单元中创建对应的设备实例,每个所述设备实例具有对应的实例唯一标识;所述控制单元持续获取各所述待测单元的配置更新信息以持续更新所述资源归属表,所述配置更新信息包括对应的所述设备实例的所述实例唯一标识和被配置的所述共享资源的资源信息标识,所述资源归属表中关联保存有所述资源信息标识和对应的所述实例唯一标识;在所述设备实例发出资源访问事务时,所述控制单元基于所述资源访问事务中携带的所述资源信息标识获取当前的所述资源归属表中对应的所述实例唯一标识并记录;在所述资源访问事务被执行完毕后,所述控制单元基于对应的所述资源信息标识获取当前的所述资源归属表中对应的所述实例唯一标识,将当前获取的所述实例唯一标识和对应的记录的所述实例唯一标识进行比对,并在比对结果表示为不一致时判断为资源隔离异常。
2、优选的,所述实例唯一标识包括所述设备实例对应的所述待测单元的单元唯一标识和所述设备实例的代次标识;每个所述待测单元中允许重复创建所述设备实例,在创建所述设备实例时,所述设备实例的所述代次标识按照在对应的所述待测单元中的创建顺序递增设置。
3、优选的,所述测试单元在创建所述设备实例后向所述设备实例下发生命周期指令;所述生命周期指令包括资源配置指令和资源访问指令;在接收所述资源配置指令时,所述设备实例基于预设的配置逻辑执行所述资源配置指令,将执行结果作为所述配置更新信息以供所述控制单元获取;在接收所述资源访问指令时,所述设备实例基于所述资源访问指令构建所述资源访问事务并发出;所述资源归属表中保存有每项所述共享资源的归属记录;在更新所述资源归属表后,所述控制单元基于预设的资源配置规则对所述配置更新信息进行校验,并在校验未通过时基于对应的所述资源信息标识和所述实例唯一标识查询所述资源归属表中对应的所述归属记录,以对所述设备实例进行回溯;在所述资源访问事务被执行完毕且判断为资源隔离异常时,所述控制单元基于对应的所述资源信息标识和所述实例唯一标识查询所述资源归属表中对应的所述归属记录,以对所述设备实例进行回溯。
4、优选的,还设置有监控单元,所述监控单元持续监控所述设备实例以获取所述资源访问指令;在所述测试单元向所述设备实例下发所述资源访问指令后,所述设备实例校验所述资源访问指令的合法性,以确定是否构建所述资源访问事务;在所述设备实例接收所述资源访问指令后,所述控制单元从所述监控单元获取对应的所述资源访问指令,基于所述资源访问指令中携带的所述资源信息标识从当前的所述资源归属表中获取对应的所述实例唯一标识,基于所述实例唯一标识预测对应的所述设备实例是否构建所述资源访问事务;所述控制单元将所述设备实例是否构建所述资源访问事务的实际结果和所述控制单元的预测结果进行比对:若不一致,则判断为资源隔离异常;若所述实际结果和所述预测结果均为构建所述资源访问事务,则记录对应的所述实例唯一标识,待所述资源访问事务被执行完毕后将从当前的所述资源归属表中获取的所述实例唯一标识和对应的记录的所述实例唯一标识进行比对,并在比对结果表示为不一致时判断为资源隔离异常;若所述实际结果和所述预测结果均为拒绝构建所述资源访问事务,则获取所述资源访问事务中涉及的所述共享资源的资源变化情况,并在所述资源变化情况表示为所述设备实例仍对所述共享资源进行访问时判断为资源隔离异常。
5、优选的,在所述设备实例发出资源访问事务时,所述控制单元基于所述资源访问事务中携带的所述资源信息标识获取当前的所述资源归属表中对应的所述实例唯一标识,将对应的所述资源信息标识和对应的所述实例唯一标识关联保存在事务账本中;在接收所述配置更新信息时,所述控制单元基于所述配置更新信息中携带的所述实例唯一标识和所述资源信息标识关联后查询所述事务账本,并在所述事务账本中保存有对应的所述资源访问事务时判断为资源隔离异常。
6、本发明公开一种资源隔离验证系统,应用于包括多个待测单元的rtl仿真验证平台,采用所述资源隔离验证方法,应用于统一总线互联协议;所述资源隔离验证系统包括测试单元和控制单元;所述测试单元用于分别在各所述待测单元中创建对应的设备实例,每个所述设备实例具有对应的实例唯一标识;所述控制单元包括:构建模块,用于基于所有保存在各所述待测单元中的共享资源构建对应的资源归属表;更新模块,连接所述构建模块,用于持续获取各所述待测单元的配置更新信息以持续更新所述资源归属表,所述配置更新信息包括对应的所述设备实例的所述实例唯一标识和被配置的所述共享资源的资源信息标识,所述资源归属表中关联保存有所述资源信息标识和对应的所述实例唯一标识;记录模块,连接所述更新模块,用于在所述设备实例发出资源访问事务时,基于所述资源访问事务中携带的所述资源信息标识获取当前的所述资源归属表中对应的所述实例唯一标识并记录;第一判断模块,连接所述记录模块,用于在所述资源访问事务被执行完毕后,基于对应的所述资源信息标识获取当前的所述资源归属表中对应的所述实例唯一标识,将当前获取的所述实例唯一标识和对应的记录的所述实例唯一标识进行比对,并在比对结果表示为不一致时判断为资源隔离异常。
7、优选的,所述测试单元包括:指令下发模块,用于在创建所述设备实例后向所述设备实例下发生命周期指令;所述生命周期指令包括资源配置指令和所述资源访问指令;所述设备实例包括:第一执行模块,用于在接收所述资源配置指令时,基于预设的配置逻辑执行所述资源配置指令,将执行结果作为所述配置更新信息以供所述控制单元获取;第二执行模块,用于在接收所述资源访问指令时,基于所述资源访问指令构建所述资源访问事务并发出;所述资源归属表中保存有每项所述共享资源的归属记录;所述控制单元包括:第一回溯模块,用于在更新所述资源归属表后,基于预设的资源配置规则对所述配置更新信息进行校验,并在校验未通过时基于对应的所述资源信息标识和所述实例唯一标识查询所述资源归属表中对应的所述归属记录,以对所述设备实例进行回溯;第二回溯模块,用于在所述资源访问事务被执行完毕且判断为资源隔离异常时,基于对应的所述资源信息标识和所述实例唯一标识查询所述资源归属表中对应的所述归属记录,以对所述设备实例进行回溯。
8、优选的,还包括:监控单元,分别连接所述设备实例和所述控制单元,用于持续监控所述设备实例以获取所述资源访问指令;所述设备实例包括:确定模块,用于在所述测试单元向所述设备实例下发所述资源访问指令后,校验所述资源访问指令的合法性,以确定是否构建所述资源访问事务;所述控制单元包括:预测模块,用于在所述设备实例接收所述资源访问指令后,从所述监控单元获取对应的所述资源访问指令,基于所述资源访问指令中携带的所述资源信息标识从当前的所述资源归属表中获取对应的所述实例唯一标识,基于所述实例唯一标识预测对应的所述设备实例是否构建所述资源访问事务;比对模块,连接所述预测模块,用于将所述设备实例是否构建所述资源访问事务的实际结果和所述预测模块的预测结果进行比对:若不一致,则判断为资源隔离异常;若所述实际结果和所述预测结果均为构建所述资源访问事务,则记录对应的所述实例唯一标识,待所述资源访问事务被执行完毕后将从当前的所述资源归属表中获取的所述实例唯一标识和对应的记录的所述实例唯一标识进行比对,并在比对结果表示为不一致时判断为资源隔离异常;若所述实际结果和所述预测结果均为拒绝构建所述资源访问事务,则获取所述资源访问事务中涉及的所述共享资源的资源变化情况,并在所述资源变化情况表示为所述设备实例仍对所述共享资源进行访问时判断为资源隔离异常。
9、优选的,所述控制单元包括:保存模块,用于在所述设备实例发出资源访问事务时,基于所述资源访问事务中携带的所述资源信息标识获取当前的所述资源归属表中对应的所述实例唯一标识,将所述资源信息标识和所述实例唯一标识关联保存在事务账本中;第二判断模块,连接所述保存模块,用于在接收所述配置更新信息时,基于所述配置更新信息中携带的所述实例唯一标识和所述资源信息标识关联后查询所述事务账本,并在所述事务账本中保存有对应的所述资源访问事务时判断为资源隔离异常。
10、采用本发明能够得到如下有益效果:通过将资源归属表中保存的实例唯一标识和资源访问事务被执行完毕后从资源归属表中获取的实例唯一标识进行比对校验,解决了资源在设备实例间重新分配后旧实例在途事务的完成项与新实例资源之间归属无法区分的问题,提高了资源复用过渡期隔离缺陷的检出能力。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com