一种硬件跟踪电路、方法、装置及介质与流程

文档序号:36970081发布日期:2024-02-07 13:19阅读:22来源:国知局
一种硬件跟踪电路、方法、装置及介质与流程

本发明涉及电子电路领域,特别是涉及一种硬件跟踪电路、方法、装置及介质。


背景技术:

1、随着芯片行业的不断发展,芯片规模越来越大,用户对系统级芯片可见性的需求也随之提高。为了保证整个片上系统硬件的可见性,需要实时记录片上系统运行的状态、程序执行的路径和数据读写等信息。而上述目的通常是通过在片上进行硬件设计得以实现,利用非侵入式的方式实现对系统的监控。

2、目前,对于某些仅对片上系统中特定子系统有trace跟踪需求的应用场景中,缺少一套行之有效的片上系统trace跟踪硬件设计方案。

3、trace:计算机术语,一种用来调试网络服务器连接的超文本传输协议(hypertexttransfer protocol,http)方式。

4、所以,现在本领域的技术人员亟需要一种硬件跟踪电路,以在对特定子系统有跟踪需求场景下提供一种片上系统跟踪硬件的设计方案。


技术实现思路

1、本发明的目的是提供一种硬件跟踪电路、方法、装置及介质,以在对特定子系统有跟踪需求场景下提供一种片上系统跟踪硬件的设计方案,以解决片上系统的trace跟踪问题。

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、装置包括:

49、子系统跟踪模块,用于对待跟踪子系统进行跟踪,获取相应的数据和/或事件;

50、信息筛选模块,用于根据预设的筛选逻辑对数据和/或事件进行筛选;

51、信息存储模块,用于将筛选后的数据和/或事件存储至外部存储设备。

52、为解决上述技术问题,本发明还提供一种硬件跟踪装置,包括:

53、存储器,用于存储计算机程序;

54、处理器,用于执行计算机程序时实现如上述的硬件跟踪方法的步骤。

55、为解决上述技术问题,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的硬件跟踪方法的步骤。

56、本发明提供的一种硬件跟踪电路,提供一种对特定子系统进行trace跟踪的硬件电路方案。子系统设计人员通过将计划跟踪的数据和/或事件发送给筛选单元,由筛选单元对跟踪得到的信息进行初步筛选;再通过缓存单元对trace跟踪到的信息进行暂存,通过协议接口单元发送到外部存储设备中,实现trace跟踪信息的持久化存储,为后续的分析提供数据支持。至此,本方案完成对特定子系统的trace跟踪,给出一种适应于对特定子系统进行trace跟踪的硬件电路设计方案。另外,本方案通过筛选单元对trace跟踪信息的筛选,一方面以减小trace跟踪的信息量,在增加trace时间的同时并提高分析的效率;另一方面通过减小trace跟踪的信息量,也使得后续对trace跟踪信息的传输及存储的要求更小,有利于缩减电路的占地面积和成本。

57、本发明提供的硬件跟踪方法、装置、及计算机可读存储介质,与上述电路对应,效果同上。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1