System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 程序控制方法、装置、电子设备及存储介质制造方法及图纸_技高网

程序控制方法、装置、电子设备及存储介质制造方法及图纸

技术编号:45085814 阅读:8 留言:0更新日期:2025-04-25 18:23
本发明专利技术实施例提供一种程序控制方法、装置、电子设备及存储介质,该方法应用于控制系统,控制系统包括控制端和程序调度器,该方法包括:控制端读取待测设计的时钟信号,在时钟信号到达一个时钟周期边沿的情况下,暂停待测设计的运行,并向程序调度器发送控制信号;程序调度器在接收到控制端发送的控制信号的情况下,按照测试程序中各个子程序的执行顺序依次调度子程序;在测试程序中各个子程序均运行至预设位置的情况下,向控制端发送唤醒信号;控制端在接收到唤醒信号的情况下,驱动待测设计继续运行至下一个时钟周期边沿。在本发明专利技术实施例中,可以通过软件编程语言控制硬件时钟以及完成并行操作,提高了程序控制效率。

【技术实现步骤摘要】

本专利技术涉及芯片,尤其涉及一种程序控制方法、装置、电子设备及存储介质


技术介绍

1、在对待测设计进行验证的过程中,一般都是使用硬件编程语言,近几年,产生了使用软件编程语言去进行芯片验证的需求。然而软件编程语言并不能很好地控制硬件所需的并行操作以及时钟。在现有的工具中,cocotb基于回调来控制协程能够很好地去满足控制需求。但对实现的要求比较高,运行效率也较低,因此,降低了软件编程语言中控制硬件时钟以及完成并行操作的效率。


技术实现思路

1、本专利技术实施例提供一种程序控制方法、装置、电子设备及存储介质,可以解决相关技术中软件编程语言无法很好地控制硬件所需的并行操作以及时钟,且控制实现的要求比较高,运行效率也较低的问题。

2、为了解决上述问题,本专利技术实施例公开了一种程序控制方法,应用于控制系统,所述控制系统包括控制端和程序调度器,所述方法包括:

3、所述控制端读取待测设计的时钟信号,在所述时钟信号到达一个时钟周期边沿的情况下,暂停所述待测设计的运行,并向所述程序调度器发送控制信号;

4、所述程序调度器在接收到控制端发送的控制信号的情况下,按照测试程序中各个子程序的执行顺序依次调度所述子程序;在所述测试程序中各个子程序均运行至预设位置的情况下,向所述控制端发送唤醒信号;

5、所述控制端在接收到唤醒信号的情况下,驱动所述待测设计继续运行至下一个时钟周期边沿。

6、可选地,所述方法还包括:

7、在所述时钟信号到达一个时钟周期边沿的情况下,获取所述待测设计的第一运行结果;

8、在至少一个子程序均运行至预设位置的情况下,获取所述至少一个子程序对应的第二运行结果;

9、将所述第一运行结果与所述第二运行结果进行匹配;

10、在所述第一运行结果与所述第二运行结果相匹配的情况下,确定所述待测设计运行正确;

11、在所述第一运行结果与所述第二运行结果不匹配的情况下,确定所述待测设计运行出错。

12、可选地,所述控制端在接收到唤醒信号的情况下,驱动所述待测设计继续运行至下一个时钟周期边沿,包括:

13、所述控制端在接收到唤醒信号的情况下,调用驱动接口,向所述待测设计发送驱动信号,驱动所述待测设计继续运行至下一个时钟周期边沿。

14、可选地,所述驱动所述待测设计继续运行至下一个时钟周期边沿,包括:

15、获取所述各个子程序中第一接口的信号值;所述第一接口为所述子程序中的任一接口;

16、确定所述待测设计中与所述第一接口相匹配的第二接口;

17、将所述信号值输入到所述第二接口,并驱动所述待测设计继续运行至下一个时钟周期边沿。

18、可选地,所述程序调度器在接收到控制端发送的控制信号的情况下,按照测试程序中各个子程序的执行顺序依次调度所述子程序,包括:

19、所述程序调度器在接收到控制端发送的控制信号的情况下,按照测试程序中各个子程序的执行顺序,调度所述测试程序中的第一子程序,并监测所述第一子程序的运行情况;

20、所述程序调度器在所述第一子程序运行至预设位置的情况下,对第二子程序进行调度;其中,所述第二子程序为所述第一子程序对应的下一个子程序。

21、可选地,在所述控制端读取待测设计的时钟信号之前,所述方法还包括:

22、根据所述测试程序的测试逻辑,在各个子程序的预设位置中添加等待函数;所述等待函数用于暂停所述子程序的运行。

23、另一方面,本专利技术实施例公开了一种程序控制装置,应用于控制系统,所述控制系统包括控制端和程序调度器,所述装置包括:

24、读取模块,用于读取待测设计的时钟信号;

25、发送模块,用于在所述时钟信号到达一个时钟周期边沿的情况下,暂停所述待测设计的运行,并向所述程序调度器发送控制信号;

26、调度模块,用于在接收到控制端发送的控制信号的情况下,按照测试程序中各个子程序的执行顺序依次调度所述子程序;

27、所述发送模块,用于在所述测试程序中各个子程序均运行至预设位置的情况下,向所述控制端发送唤醒信号;

28、驱动模块,用于在接收到唤醒信号的情况下,驱动所述待测设计继续运行至下一个时钟周期边沿。

29、可选地,所述装置还包括:

30、获取模块,用于在所述时钟信号到达一个时钟周期边沿的情况下,获取所述待测设计的第一运行结果;在至少一个子程序均运行至预设位置的情况下,获取所述至少一个子程序对应的第二运行结果;

31、匹配模块,用于将所述第一运行结果与所述第二运行结果进行匹配;

32、确定子模块,用于在所述第一运行结果与所述第二运行结果相匹配的情况下,确定所述待测设计运行正确;在所述第一运行结果与所述第二运行结果不匹配的情况下,确定所述待测设计运行出错。

33、可选地,所述驱动模块,包括:

34、驱动子模块,用于在接收到唤醒信号的情况下,调用驱动接口,向所述待测设计发送驱动信号,驱动所述待测设计继续运行至下一个时钟周期边沿。

35、可选地,所述驱动模块,还包括:

36、获取子模块,用于获取所述各个子程序中第一接口的信号值;所述第一接口为所述子程序中的任一接口;

37、第一确定子模块,用于确定所述待测设计中与所述第一接口相匹配的第二接口;

38、输入模块,用于将所述信号值输入到所述第二接口,并驱动所述待测设计继续运行至下一个时钟周期边沿。

39、可选地,所述调度模块,还包括:

40、第一调度子模块,用于在接收到控制端发送的控制信号的情况下,按照测试程序中各个子程序的执行顺序,调度所述测试程序中的第一子程序;

41、监测模块,用于监测所述第一子程序的运行情况;

42、第二调度子模块,用于在所述第一子程序运行至预设位置的情况下,对第二子程序进行调度;其中,所述第二子程序为所述第一子程序对应的下一个子程序。

43、可选地,所述装置还包括:

44、添加模块,用于根据所述测试程序的测试逻辑,在各个子程序的预设位置中添加等待函数;所述等待函数用于暂停所述子程序的运行。

45、再一方面,本专利技术实施例还公开了一种电子设备,所述电子设备包括处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放可执行指令,所述可执行指令使所述处理器执行前述的程序控制方法。

46、本专利技术实施例还公开了一种可读存储介质,当所述可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行前述的程序控制方法。

47、本专利技术实施例包括以下优点:

48、本专利技术实施例提供了一种程序控制方法,控制系统包括控制端和程序调度器,在程序控制的过程中,程序调度器本文档来自技高网...

【技术保护点】

1.一种程序控制方法,其特征在于,应用于控制系统,所述控制系统包括控制端和程序调度器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述控制端在接收到唤醒信号的情况下,驱动所述待测设计继续运行至下一个时钟周期边沿,包括:

4.根据权利要求1所述的方法,其特征在于,所述驱动所述待测设计继续运行至下一个时钟周期边沿,包括:

5.根据权利要求1所述的方法,其特征在于,所述程序调度器在接收到控制端发送的控制信号的情况下,按照测试程序中各个子程序的执行顺序依次调度所述子程序,包括:

6.根据权利要求1所述的方法,其特征在于,在所述控制端读取待测设计的时钟信号之前,所述方法还包括:

7.一种程序控制装置,其特征在于,应用于控制系统,所述控制系统包括控制端和程序调度器,所述装置包括:

8.根据权利要求7所述的装置,其特征在于,所述装置还包括:

9.根据权利要求7所述的装置,其特征在于,所述驱动模块,包括:

10.一种电子设备,其特征在于,所述电子设备包括处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放可执行指令,所述可执行指令使所述处理器执行如权利要求1至6中任一项所述的程序控制方法。

11.一种可读存储介质,其特征在于,当所述可读存储介质中的指令由电子设备的处理器执行时,使得所述处理器能够执行如权利要求1至6中任一项所述的程序控制方法。

...

【技术特征摘要】

1.一种程序控制方法,其特征在于,应用于控制系统,所述控制系统包括控制端和程序调度器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述控制端在接收到唤醒信号的情况下,驱动所述待测设计继续运行至下一个时钟周期边沿,包括:

4.根据权利要求1所述的方法,其特征在于,所述驱动所述待测设计继续运行至下一个时钟周期边沿,包括:

5.根据权利要求1所述的方法,其特征在于,所述程序调度器在接收到控制端发送的控制信号的情况下,按照测试程序中各个子程序的执行顺序依次调度所述子程序,包括:

6.根据权利要求1所述的方法,其特征在于,在所述控制端读取待测设计的时钟信号之前,所述方法还包括...

【专利技术属性】
技术研发人员:刘锦程唐丹包云岗
申请(专利权)人:北京开源芯片研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1