逻辑分析装置、信号捕获方法及芯片与流程

摘要: 本技术涉及芯片设计与调试,具体涉及一种逻辑分析装置、信号捕获方法及芯片。背景技术:1、随着集成电路规模和复杂度的持续提升,芯片内部信号繁多、运行状态难以直接观测...
逻辑分析装置、信号捕获方法及芯片与流程

本技术涉及芯片设计与调试,具体涉及一种逻辑分析装置、信号捕获方法及芯片。

背景技术:

1、随着集成电路规模和复杂度的持续提升,芯片内部信号繁多、运行状态难以直接观测,内部功能异常的定位成为研发验证与量产调试阶段的关键难题。以pcie switch芯片为例,其接口功能复杂、信号繁多,内部问题的定位难度尤为突出。

2、目前,芯片内部问题的定位通常依赖两类手段:一是采用示波器、外部逻辑分析仪等芯片外部测试设备对芯片引脚信号进行捕获分析;二是在芯片内部设置统计计数器,由软件读取计数值间接推断内部状态。然而,外部测试设备无法观测芯片内部深层逻辑信号,统计计数器无法还原信号的时序细节,亦无法捕捉某些条件下的瞬态异常事件,对于pcie等高速接口芯片,内部异常的定位效率极低。

3、为此,业界出现了将逻辑分析仪功能嵌入芯片内部的技术探索,但现有方案所采用的架构和机制,在异常发生前状态的追溯、采样点时序关系的获取以及有效数据的提取效率等方面仍存在不足,制约了其在复杂调试场景下的适用性。

技术实现思路

1、本技术提供一种逻辑分析装置、信号捕获方法及芯片,以解决现有技术中存在的片内信号观测灵活性不足、触发前历史信号状态缺失、采样点缺乏时间信息以及有效数据存储范围定位困难等技术问题。

2、根据第一方面,一种实施例中提供一种逻辑分析装置,集成于芯片中,包括配置单元、信号源选择模块、触发判断模块、逻辑匹配模块、至少一个捕获模块和存储模块;

3、所述配置单元,用于接收配置指令和使能信号,并将所述使能信号输出至所述配置指令指定的捕获模块;所述配置指令用于为所述触发判断模块指定待测信号组并配置触发条件,为所述逻辑匹配模块指定待测信号组并配置匹配条件,以及为所述配置指令指定的捕获模块配置捕获模式和预设采样数量并分配所述存储模块中的存储空间;

4、所述信号源选择模块,用于根据所述配置指令,从多个预定义待测信号组中分别确定供所述触发判断模块使用的待测信号组和供所述逻辑匹配模块使用的待测信号组;将系统时间戳与供所述触发判断模块使用的待测信号组拼接形成第一复合信号组,并将所述系统时间戳与供所述逻辑匹配模块使用的待测信号组拼接形成第二复合信号组;其中,供所述触发判断模块使用的待测信号组与供所述逻辑匹配模块使用的待测信号组相同或不同;

5、所述触发判断模块,用于每个时钟周期根据所述触发条件对所述第一复合信号组进行判断,并在满足所述触发条件时向所述配置指令指定的捕获模块输出触发信号;

6、所述逻辑匹配模块,用于每个时钟周期根据所述匹配条件对所述第二复合信号组进行判断,并在满足所述匹配条件时向所述配置指令指定的捕获模块输出匹配成功信号及对应的采样值;

7、接收所述使能信号的捕获模块,用于响应于所述使能信号,在所述触发信号到来之前,若接收到所述采样值,则将其以循环覆盖方式输出至所分配的存储空间;在所述触发信号到来后,根据所述捕获模式和所述预设采样数量,将满足所述匹配条件的采样值输出至所分配的存储空间;将所述触发信号首次到来后首个输出的采样值在所述存储空间的存储位置记录为存储起始位置;在捕获任务结束时,将最后输出的采样值在所述存储空间的存储位置记录为存储结束位置,并将所述存储起始位置、所述存储结束位置及捕获完成通知上报至所述配置单元;

8、所述存储模块,用于存储所述采样值。

9、一实施例中,所述系统时间戳为系统时钟计数值;所述第一复合信号组的位宽为所述系统时钟计数值的位宽与供所述触发判断模块使用的待测信号组的位宽之和;所述第二复合信号组的位宽为所述系统时钟计数值的位宽与供所述逻辑匹配模块使用的待测信号组的位宽之和;所述系统时钟计数值占据高位,所拼接的待测信号组占据低位。

10、一实施例中,所述触发条件和所述匹配条件中的至少一者包括以下一种或多种条件的组合:指定的单比特信号出现上升沿,或指定的多比特信号中所有比特同时出现上升沿;指定的单比特信号出现下降沿,或指定的多比特信号中所有比特同时出现下降沿;指定的单比特信号或多比特信号的值等于预设值;指定的单比特信号或多比特信号的值不等于预设值;其中,在未配置所述触发条件时,所述触发判断模块默认每个时钟周期均输出所述触发信号;在未配置所述匹配条件时,所述逻辑匹配模块默认每个时钟周期均输出所述匹配成功信号及对应的采样值。

11、一实施例中,所述捕获模块为至少两个,所述存储模块包括多个存储器;所述装置还包括写控制单元;所述配置单元还用于将所述多个存储器的存储空间按需分配给各所述捕获模块,并为各所述捕获模块分配的存储空间配置互不重叠的地址范围;所述写控制单元用于接收所述捕获模块发送的采样值,根据当前写入地址所属的地址范围从所述多个存储器中确定本次写操作对应的目标存储器,并将接收到的采样值写入所述目标存储器的对应地址;其中,被分配存储空间的捕获模块经所述写控制单元将采样值写入对应的存储器,未被分配存储空间的捕获模块不占用所述存储模块的存储空间。

12、一实施例中,所述捕获模式包括单次捕获模式和多次捕获模式;在所述单次捕获模式下,响应所述使能信号的捕获模块自所述触发信号到来后开始输出满足所述匹配条件的采样值,当输出的所述采样值的数量达到所述预设采样数量时,所述捕获任务结束;在所述多次捕获模式下,响应所述使能信号的捕获模块在每次所述触发信号到来后开始输出满足所述匹配条件的采样值,当输出数量达到所述预设采样数量时暂停输出,并等待所述触发信号的下一次到来,直至所分配的存储空间写满时,所述捕获任务结束。

13、一实施例中,所述装置还包括读控制单元;所述配置单元还用于接收读取指令,并将所述读取指令发送至所述读控制单元;所述读控制单元用于根据所述读取指令读取所述存储模块中指定位置的数据,并将读取数据返回所述配置单元;所述配置单元设有捕获完成指示寄存器、存储起始位置寄存器和存储结束位置寄存器;所述捕获完成指示寄存器基于所述捕获完成通知更新,所述存储起始位置寄存器和所述存储结束位置寄存器分别用于记录所述存储起始位置和所述存储结束位置;所述配置单元还用于下发清零指令;所述捕获模块还用于根据所述清零指令控制向已分配的存储空间写入零值,并在清零完成后向所述配置单元上报清零完成通知;所述配置单元还设有清零完成指示寄存器,所述清零完成指示寄存器基于所述清零完成通知更新。

14、根据第二方面,一种实施例中提供一种信号捕获方法,应用于本技术第一方面任一实施例所述的逻辑分析装置,包括:接收配置指令和使能信号;所述配置指令用于为触发判断指定待测信号组并配置触发条件,为逻辑匹配指定待测信号组并配置匹配条件,以及配置捕获模式和预设采样数量并分配存储空间;

15、根据所述配置指令,从多个预定义待测信号组中分别确定用于触发判断的待测信号组和用于逻辑匹配的待测信号组;将系统时间戳与用于触发判断的待测信号组拼接形成第一复合信号组,并将所述系统时间戳与用于逻辑匹配的待测信号组拼接形成第二复合信号组;其中,用于触发判断的待测信号组与用于逻辑匹配的待测信号组相同或不同;

16、每个时钟周期分别根据所述触发条件对所述第一复合信号组进行判断、根据所述匹配条件对所述第二复合信号组进行判断,并在满足所述触发条件时输出触发信号、在满足所述匹配条件时输出匹配成功信号及对应的采样值;

17、响应于所述使能信号,在所述触发信号到来之前,若接收到所述采样值,则将其以循环覆盖方式输出至所分配的存储空间;

18、在所述触发信号到来后,根据所述捕获模式和所述预设采样数量,将满足所述匹配条件的采样值输出至所分配的存储空间;将所述触发信号首次到来后首个输出的采样值在所述存储空间的存储位置记录为存储起始位置;

19、在捕获任务结束时,将最后输出的采样值在所述存储空间的存储位置记录为存储结束位置,并上报所述存储起始位置、所述存储结束位置及捕获完成通知。

20、一实施例中,还包括:根据上报的所述存储起始位置和所述存储结束位置,确定有效采样数据的存储位置范围;当所述有效采样数据跨越所述存储空间的末位置和首位置时,按照循环写入顺序从所述存储空间中读取所述有效采样数据。

21、根据第三方面,一种实施例中提供一种集成有两个如本技术第一方面任一实施例所述的逻辑分析装置的芯片,包括:第一逻辑分析装置,与所述芯片的第一数据接口连接,用于对满足第一匹配条件的第一报文进行采样,并将携带第一系统时间戳的采样值存储;第二逻辑分析装置,与所述芯片的第二数据接口连接,用于对满足第二匹配条件的第二报文进行采样,并将携带第二系统时间戳的采样值存储;其中,所述第二报文为所述第一报文经所述芯片的内部交换逻辑转发后所得的报文;时钟模块,用于为所述第一逻辑分析装置和所述第二逻辑分析装置提供基于同一时钟源的同步时钟,使所述第一系统时间戳和所述第二系统时间戳同步;其中,所述第一匹配条件和所述第二匹配条件用于识别同一报文;所述第一系统时间戳和所述第二系统时间戳用于确定所述第一报文经所述芯片的内部交换逻辑转发至所述第二数据接口的传输延时。

22、一实施例中,所述第一数据接口和所述第二数据接口为pcie接口,所述第一报文和所述第二报文均为pcie报文;所述第一匹配条件和所述第二匹配条件均包含对所述pcie报文中报文头字段的取值进行匹配,以实现对同一报文的识别;所述芯片还包括处理模块,所述处理模块用于根据所述第一系统时间戳与所述第二系统时间戳的差值确定所述传输延时。

23、依据上述实施例的逻辑分析装置、信号捕获方法及芯片,由于捕获模块在所述触发信号到来之前,将满足所述匹配条件的采样值以循环覆盖方式输出至所分配的存储空间,从而保留触发点之前满足所述匹配条件的采样数据,能够为分析触发事件的前因信号序列提供数据支持,提升问题定位的完整性。由于信号源选择模块将系统时间戳与待测信号组拼接形成复合信号组,逻辑匹配模块在满足所述匹配条件时输出的采样值中携带有拼接于所述复合信号组中的系统时间戳,从而每个采样值均可关联其被捕获时刻的时间信息,支持采样点粒度的时序分析。由于捕获模块将所述触发信号首次到来后首个输出的采样值在存储空间的存储位置记录为存储起始位置,并在捕获任务结束时将最后输出的采样值在存储空间的存储位置记录为存储结束位置,上报至所述配置单元,从而软件可直接获知有效数据的存储范围,无需遍历扫描全部存储空间即可快速提取有效采样数据,读取效率高。进一步地,由于信号源选择模块根据所述配置指令,从多个预定义待测信号组中分别确定供所述触发判断模块使用的待测信号组和供所述逻辑匹配模块使用的待测信号组,且两者可以相同或不同,从而支持以一个信号组的状态作为触发条件、同时捕获另一信号组数据的跨信号组联动分析,增强信号观测的灵活性。