CN106294056B - 芯片调试方法和装置 - Google Patents
芯片调试方法和装置 Download PDFInfo
- Publication number
- CN106294056B CN106294056B CN201610651804.7A CN201610651804A CN106294056B CN 106294056 B CN106294056 B CN 106294056B CN 201610651804 A CN201610651804 A CN 201610651804A CN 106294056 B CN106294056 B CN 106294056B
- Authority
- CN
- China
- Prior art keywords
- sampling
- signal
- memory
- debugging
- sampled
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明揭示了一种芯片调试方法和装置,所述方法包括以下步骤:与信息处理设备的通信接口连接,从信息处理设备获取调试配置信息;根据调试配置信息从调试芯片采集采样信号;将采样信号输出至信息处理设备。从而,通过利用现有的信息处理设备进行调试配置信息的设置,根据调试配置信息从调试芯片采集到采样信号后再输出至信息处理设备,再利用信息处理设备根据采样信号对调试芯片进行逻辑分析处理和调试操作,充分利用了现有设备的功能,极大的降低了成本,实现成本低。而且,用户可以在信息处理设备上便捷、直观的进行调试配置信息的设置以及对调试芯片进行逻辑分析处理和调试操作,因此操作方便快捷,功能足够丰富。
Description
技术领域
本发明涉及电子技术领域,特别是涉及到一种芯片调试方法和装置。
背景技术
当数字逻辑经过加工、生产成为芯片之后,想要再对内部的逻辑行为进行追踪是非常困难的。因为芯片封装以后,通常只能对其外部的引脚进行探测,所有其内部逻辑和状态行为都不可见。但是芯片成样,最重要和首要的一项工作就是要检查芯片功能完整性,一旦在测试过程中发现芯片行为和仿真或者预期不一致,就需要对内部逻辑、状态进行追踪、调试从而定位找到问题。
目前,芯片调试的常用做法是在芯片设计阶段就把内部重要的寄存器、状态机状态以及一些控制信号、数据信号通过一系列的分组、多路选择分派到芯片外部引脚上,再通过示波器、逻辑分析仪等信号分析仪器进行逻辑分析,从而获知芯片内部工作状况。
示波器使用方便、成本适中,但只利于观测静态信号,并且信号的工作频率基本都在1GHz以下。而且,示波器只提供几个探针,利用示波器能同时观测的信号数目也非常有限。
逻辑分析仪功能强大,可以设置复杂的信号先后采样条件来直接捕捉想要追踪的信号,支持的采样频率也很高,基本满足所有需求,而且采样结果能够以波形图像直接清晰的显示。但是使用和维护成本非常高,购买动辄需要数万甚至数十万美金,设备的体积较大移动性较差。由于设备价格很高,通常可支配数目非常有限,当多个项目或者不同芯片同时需要调试时,要考虑协调安排,从而产生隐性的时间成本。
综上所述,现有的芯片调试方案,要么成本较高,要么功能有限,二者无法兼顾。
发明内容
本发明的主要目的为提供一种芯片调试方法和装置,旨在提供一种实现成本低且功能丰富的芯片调试方案。
为达以上目的,本发明提出一种芯片调试方法,所述方法包括以下步骤:
与信息处理设备的通信接口连接,从所述信息处理设备获取调试配置信息;
根据所述调试配置信息从调试芯片采集采样信号;所述调试配置信息包括通道设置信息,根据通道设置信息配置传输待采样的信号的信号通道和传输用于采样条件判断的信号的信号通道;
将所述采样信号输出至所述信息处理设备。
进一步地,所述调试配置信息包括采样条件,所述根据所述调试配置信息从调试芯片采集采样信号的步骤包括:
获取调试芯片传输的输入信号并写入内存;
根据所述输入信号和所述采样条件确定采样点;
根据所述采样点、所述采样条件和所述内存的存储空间确定采样结束点;
当到达所述采样结束点时停止向所述内存写入所述输入信号,此时所述内存中保存的输入信号即为采样信号。
进一步地,所述根据所述采样点、所述采样条件和所述内存的存储空间确定采样结束点的步骤包括:
当所述采样条件为向前采样时,将所述内存的存储空间减去向前采样的周期的差值加上所述采样点的周期之和作为所述采样结束点的周期;
当所述采样条件为向后采样时,将所述内存的存储空间加上所述采样点的周期之和作为所述采样结束点的周期。
进一步地,所述获取调试芯片传输的输入信号并写入内存的步骤包括:
获取调试芯片传输的输入信息,对所述输入信号进行压缩处理后写入所述内存。
进一步地,所述信号通道为一个,其传输的信号既作为待采样的信号又作为用于采样条件判断的信号;或者,
所述信号通道包括采样通道和条件通道,所述采样通道传输待采样的信号,所述条件通道传输用于采样条件判断的信号。
本发明同时提出一种芯片调试装置,所述装置包括:
接口控制模块,用于与信息处理设备的通信接口连接,从所述信息处理设备获取调试配置信息;
信号采集模块,用于根据所述调试配置信息从调试芯片采集采样信号;所述信号采集模块包括读写控制单元,所述读写控制单元配置两个信号通道,所述两个信号通道分别为采样通道和条件通道;
所述接口控制模块还用于:将所述采样信号输出至所述信息处理设备。
进一步地,所述信号采集模块包括内存和采样结束控制单元,其中:
所述读写控制单元,用于获取调试芯片传输的输入信号并写入所述内存;
所述采样结束控制单元,用于根据所述输入信号和所述采样条件确定采样点;根据所述采样点、所述采样条件和所述内存的存储空间确定采样结束点;
所述读写控制单元还用于:当到达所述采样结束点后停止向所述内存写入所述输入信号,此时所述内存中保存的输入信号即为采样信号。
进一步地,所述采样结束控制单元用于:
当所述采样条件为向前采样时,将所述内存的存储空间减去向前采样的周期的差值加上所述采样点的周期之和作为所述采样结束点的周期;
当所述采样条件为向后采样时,将所述内存的存储空间加上所述采样点的周期之和作为所述采样结束点的周期。
进一步地,所述读写控制单元还用于:对所述输入信号进行压缩处理后写入所述内存。
本发明实施例所提供的一种芯片调试方法,通过利用现有的信息处理设备进行调试配置信息的设置,根据调试配置信息从调试芯片采集到采样信号后再输出至信息处理设备,再利用信息处理设备根据采样信号对调试芯片进行逻辑分析处理和调试操作,充分利用了现有设备的功能,极大的降低了成本,实现成本低。而且,用户可以在信息处理设备上便捷、直观的进行调试配置信息的设置以及对调试芯片进行逻辑分析处理和调试操作,因此操作方便快捷,功能足够丰富,可以很大程度上替代示波器和逻辑分析仪等传统仪器,达到芯片逻辑分析、调试过程中可视、可追踪等要求。
附图说明
图1是本发明第一实施例的芯片调试方法的流程图;
图2是本发明实施例中设置调试配置信息的图像用户界面示意图;
图3是本发明实施例中根据调试配置信息从调试芯片采集采样信号的具体流程图;
图4是本发明实施例中将采样信号转换为波形图像的示意图;
图5本发明实施例的芯片调试方法一可选的实现方案;
图6是本发明实施例的芯片调试方法又一可选的实现方案;
图7是本发明第二实施例的芯片调试装置的模块示意图;
图8是图7中的信号采集模块的模块示意图;
图9是本发明实施例中一可选的芯片调试装置各单元模块的信令交互示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本发明实施例所述的信息处理设备,是指具有通信接口的计算机设备,包括个人电脑(PC)、笔记本电脑、智能电视等终端设备,以及手机、平板、掌上电脑等移动终端。所述通信接口包括并行接口(简称并口,如打印机接口)、串行接口(简称串口)、通用串行总线(Universal Serial Bus,USB)接口、外设部件互联标准(PCI-Express,PCI-E)总线接口等。
实施例一
参照图1,提出本发明第一实施例的芯片调试方法,所述方法包括以下步骤:
S11、与信息处理设备的通信接口连接,从信息处理设备获取调试配置信息。
芯片调试装置与信息处理设备的通信接口连接,通过通信接口进行通信。可选地,芯片调试装置与信息处理设备之间可以通过联合测试行为组织(Joint Test ActionGrou,JTAG)协议进行通信,此时需要对信息处理设备的通信接口进行协议转换,转换为JTAG协议。其中,并口作为一个通用、标准、简单的接口,硬件连接简单,驱动开发也简单,用户可以自己需要开发驱动和上层应用。因此,芯片调试装置优选与信息处理设备的并口连接,信息处理设备通过并口转JTAG程序将并口转换为JTAG协议。
本领域技术人员可以理解,也可以同理采用其它通信协议进行通信,在此不再赘述。
在采样之前,用户先在信息处理设备上进行调试配置信息的设置,当设置完成后,信息处理设备将调试配置信息发送给芯片调试装置,芯片调试装置接收到调试配置信息后,则开始执行采样流程。通常的,调试配置信息至少包括采样条件,进一步地,还可以包括通道设置信息等。
例如,用户可以在信息处理设备上打开开发好的应用软件,呈现如图2所示的图形用户界面(Graphical User Interface,GUI),在GUI上直观、方便地完成调试配置信息的设置。
S12、根据调试配置信息从调试芯片采集采样信号。
本步骤S12中,芯片调试装置获取调试配置信息后,随即根据调试配置信息从调试芯片采集采样信号。如图3所示,芯片调试装置采集采样信号的具体流程为:
S121、获取调试芯片传输的输入信号并写入内存。
芯片调试装置通过信号通道接收调试芯片输入的输入信号,并将输入信号写入内存中。
所述信号通道为32位的信号通道,当然,也可以是其它位数的信号通道,本发明对此不做限制。
所述内存的存储空间大小可以根据实际需要进行设定,理论上存储空间越大,可以保存下来的信号信息就越多。例如,可以设定内存的存储空间为深度1024x宽度33,即为1024个33位组成的内部存储空间。
进一步地,芯片调试装置获取输入信号后,还对输入信号进行压缩处理,再将压缩处理后的输入信号写入内存,从而使得内存中可以保存更多的信号数据。在输入信号不是频繁变动的情况下,压缩处理可以节省大量的存储空间,帮助用户看到更多、更有意义的信号变化数据。
压缩信号(即压缩处理后的输入信号)由两个33位数据组成,第一个33位数据中的第33位表示是否被压缩,第32位为采样数据,第二个33位则表示该信号出现的次数,至少为2,计满32位需要重新压缩。
进一步地,当调试配置信息中还包括通道设置信息时,在步骤S121之前,还根据通道设置信息配置传输待采样的信号的信号通道和传输用于采样条件判断的信号的信号通道。
在一些实施例中,只配置一个信号通道,该信号通道传输的信号既作为待采样的信号又作为用于采样条件判断的信号。
在另一些实施例中,配置两个信号通道,分别为采样通道和条件通道。其中,采样通道传输待采样的信号,条件通道传输用于采样条件判断的信号,也就是说,采样通道传输的信号作为最终采样的信号,条件通道传输的信号用来进行采样条件的判断。此时,采样通道和条件通道可以配置同一个信号输入,即两条通道连接到同一个信号输入上;或者,采样通道和条件通道也可以配置不同的信号输入,即两条通道连接到两个不同的信号输入上。例如,用户需要采集数据信号,但不希望采集控制信号,则通过采样通道传输数据信号,通过条件通道传输控制信号,对采样通道传输的数据信号进行采样,通过条件通道传输的控制信号进行采样条件判断。从而,通过配置两个信号通道,可以实现信号分流,使得采集的信号更加准确,避免不必要的信号的干扰。
S122、根据输入信号和采样条件确定采样点。
信号采样开始进行之后,需要找到结束采样的采样结束点,但在找到结束点之前,需要先找到开始采样的采样点。因此,在正式采样之前,芯片调试装置需要首先根据输入信号和采样条件找到采样点。
所述采样条件至少包括一级采样条件,还可以进一步包括二级采样条件,甚至多级采样条件。当采样条件只包括一级采样条件时,只要输入信号满足一级采样条件,则将当前的周期(时钟周期)作为开始采样的采样点。当采样条件包括一级采样条件和二级采样条件时,输入信号在满足一级采样条件之后,还要进行二级采样条件判断,将输入信号满足二级采样条件时的周期作为开始采样的采样点。多级采样条件依次类推,在此不再赘述。
当信号通道有两个时,利用条件通道上传输的输入信号进行采样条件判断,也就是说,根据条件通道上传输的输入信号和采样条件确定采样点。
采样条件包括条件信息,对于采样条件的条件信息,可以是对输入信号(如32位输入信号)进行随意的逻辑组合设置,如输入信号中任意几个位置出现单个0或者1,或者进行逻辑组合运算。例如:当输入信号的某几位中任意出现0或者1(逻辑或)时,则满足采样条件;当输入信号的某几位同时为0或者1(逻辑与)时,则满足采样条件。
S123、根据采样点、采样条件和内存的存储空间确定采样结束点。
由于内存的写入是一个不断覆盖的过程,信号的保存也是以写满一个完整的内存空间为依据(尽可能保存最大的信号采样量),所以只要找到准确的采样结束点,那么整个内存里保存的信号数据就是采样的预期标本。因此,采样开始后,芯片调试装置则根据采样点、采样条件和内存的存储空间确定采样结束点。
其中,采样条件还包括方向信息,所述方向信息包括向前采样和向后采样。向前采样,即保存采样点之前的输入信号,根据设置的向前采样的周期数进行保存;向后采样,即保存采样点之后的输入信号,这是最常用的应用场景,一般的,当采样条件没有设置方向信息时,则默认为向后采样。基于内存的存储空间限制,向前采样和向后采样的信号采样总数不能超过内存的存储空间(以存满为止)。
当采样条件为向前采样时,将内存的存储空间减去向前采样的周期的差值加上采样点的周期之和作为采样结束点的周期。举例而言,内存的存储空间为1000个单位,向前采样的周期数为500,采样点的周期数为800,内存空间的一个单位可以存储一个周期的信号数据,则有:采样结束点的周期=1000-500+800=1300,也就是说,周期达到1300时,到达采样结束点,结束采样。
当采样条件为向后采样时,由于此时向前采样的周期为零,因此直接将采样点的周期加上内存的存储空间之和作为采样结束点的周期。举例而言,内存的存储空间为1000个单位,采样点的周期数为200,内存空间的一个单位可以存储一个周期的信号数据,则有:采样结束点的周期=1000+200=1200,也就是说,周期达到1200时,到达采样结束点,结束采样。
S124、当到达采样结束点时停止向内存写入输入信号。
本步骤S124中,当达到采样结束点的周期时,芯片调试装置则结束采样,立即停止继续向内存写入输入信号,保护采样现场,此时内存中保存的输入信号即为采样信号。
S13、将采样信号输出至信息处理设备。
芯片调试装置采集到采样信号后,可以标记采样结束状态,等待用户通过信息处理设备读取采样信号,当信息处理设备读取采样信号时,芯片调试装置则将采样信号输出至信息处理设备。可选地,当采集到采样信号后,芯片调试装置也可以立即主动的将采样信号发送给信息处理设备。
信息处理设备获取采样信号后,可以根据标准的波形格式在应用软件中对采样信号进行转换,转换后可以在波形工具中打开,展示如图4所示的波形图像,使得用户可以通过图形化的方式进行调试,有助于提升调试效率。具体的调试方式与现有技术相同,在此不再赘述。
本发明实施例中,一次完整的采样操作是,用户设置好调试配置信息,点击开始采样之后,就开始不断读取采样结束状态,一旦读取到结束状态,用户就可以读取内存里保存的采样信号,并准备进行下一次采样。
具体实施时,本发明实施例的芯片调试方法可以通过以下两种可选的方案实现:
1、片外独立方案:如图5所示,芯片调试装置独立于调试芯片,可以利用现场可编程门阵列(Field-Programmable Gate Array,FPGA)等可编程的芯片作为载体,也就是说,本发明的芯片调试方法可以应用于一个可编程的芯片,结构简单,成本低廉。此时,FPGA分别与信息处理设备的并口等通信接口和调试芯片的相应的引脚连接,信息处理设备中具有用于设置调试配置信息的用户GUI程序以及用于实现并口转JTAG的并口转JTAG程序,FPGA通过JTAG协议(或者其它通信协议)分别与信息处理设备和调试芯片通信。片外方案更接近于逻辑分析产品,用于已经生产完成后的调试芯片的逻辑分析。
2、片内集成方案:如图6所示,将芯片调试装置直接集成到调试芯片内部,集成以后,采样时钟、内存选择等一系列问题可以得到更好的解决,用户完全可以开发出适合自己芯片的一套片内调试系统,也就是说,本发明的芯片调试方法可以应用于调试芯片。此时,调试芯片与信息处理设备的并口等通信接口连接,信息处理设备中具有用于设置调试配置信息的用户GUI程序以及用于实现并口转JTAG的并口转JTAG程序,调试芯片通过JTAG协议(或者其它通信协议)与信息处理设备通信。
采用本发明实施例的芯片调试方法,利用计算机设备的并口(如打印机接口)等通信接口就能实现芯片配置、采样条件设置、信号采样等芯片调试操作,使用方便,成本低廉,功能足够丰富,可以很大程度上替代示波器和逻辑分析仪等传统仪器,达到芯片逻辑分析、调试过程中可视、可追踪等要求。
本发明实施例的芯片调试方法,用户可以利用信息处理设备便捷的进行调试配置信息的设置,并通过信息处理设备的通信接口传输该调试配置信息以及读取根据该调试配置信息从调试芯片采集到采样信号,根据该采样信号在信息处理设备上方便、直观的对调试芯片进行逻辑分析处理和调试操作。本发明实施例的芯片调试方法,实现成本低,操作方便快捷,功能足够丰富,可以很大程度上替代示波器和逻辑分析仪等传统仪器,达到芯片逻辑分析、调试过程中可视、可追踪等要求。
实施例二
参照图7,提出本发明第二实施例的芯片调试装置,所述装置包括接口控制模块和信号采集模块,其中:
接口控制模块:用于与信息处理设备的通信接口连接,从信息处理设备获取调试配置信息,将信号采集模块采集到的采样信号输出至信息处理设备。
接口控制模块与信息处理设备的通信接口连接,通过通信接口进行通信。可选地,接口控制模块与信息处理设备之间可以通过联合测试行为组织(Joint Test ActionGrou,JTAG)协议进行通信,此时需要对信息处理设备的通信接口进行协议转换,转换为JTAG协议,此时接口控制模块为JTAG接口控制模块。其中,并口作为一个通用、标准、简单的接口,硬件连接简单,驱动开发也简单,用户可以自己需要开发驱动和上层应用。因此,接口控制模块优选与信息处理设备的并口连接,信息处理设备通过并口转JTAG程序将并口转换为JTAG协议。
本领域技术人员可以理解,也可以同理采用其它通信协议进行通信,在此不再赘述。
在采样之前,用户先在信息处理设备上进行调试配置信息的设置,当设置完成后,接口控制模块通过信息处理设备的通信接口获取该调试配置信息。通常的,调试配置信息至少包括采样条件,进一步地,还可以包括通道设置信息等。
信号采集模块:用于根据调试配置信息从调试芯片采集采样信号。
如图8、图9所示,信号采集模块包括内存、读写控制单元和采样结束控制单元,接口控制模块利用标准的JTAG接口来配置采样结束控制单元,在采样完成之后,也利用JTAG接口控制读写控制单元来读取内存中采样的信号数据。
内存:用于存储输入信号。内存的存储空间大小可以根据实际需要进行设定,理论上存储空间越大,可以保存下来的信号信息就越多。例如,可以设定内存的存储空间为深度1024x宽度33,即为1024个33位组成的内部存储空间。
读写控制单元:用于向内存中写入数据和从内存中读取数据,包括:获取调试芯片传输的输入信号并写入内存,当到达采样结束点时,停止向内存中继续写入输入信号,此时内存中保存的输入信号即为采样信号;采样完成后,读取内存中的采样信号,并发送给接口控制模块。
具体的,读写控制单元通过信号通道接收调试芯片输入的输入信号,并将输入信号写入内存中,当达到采样结束点的周期时,读写控制单元则结束采样,立即停止继续向内存写入输入信号,保护采样现场,此时内存中保存的输入信号即为采样信号。所述信号通道为32位的信号通道,当然,也可以是其它位数的信号通道,本发明对此不做限制。
进一步地,读写控制单元获取输入信号后,还对输入信号进行压缩处理,再将压缩处理后的输入信号写入内存,从而使得内存中可以保存更多的信号数据。在输入信号不是频繁变动的情况下,压缩处理可以节省大量的存储空间,帮助用户看到更多、更有意义的信号变化数据。
压缩信号(即压缩处理后的输入信号)由两个33位数据组成,第一个33位数据中的第33位表示是否被压缩,第32位为采样数据,第二个33位则表示该信号出现的次数,至少为2,计满32位需要重新压缩。
进一步地,当调试配置信息中还包括通道设置信息时,在获取输入信号之前,读写控制单元还根据通道设置信息配置传输待采样的信号的信号通道和传输用于采样条件判断的信号的信号通道。
本实施例中,读写控制单元配置两个信号通道,分别为采样通道和条件通道(如图8所示)。其中,采样通道传输待采样的信号,条件通道传输用于采样条件判断的信号,也就是说,采样通道传输的信号作为最终采样的信号,条件通道传输的信号用来进行采样条件的判断。此时,读写控制单元可以为采样通道和条件通道配置同一个信号输入,即两条通道连接到同一个信号输入上;或者,也可以为采样通道和条件通道配置不同的信号输入,即两条通道连接到两个不同的信号输入上。例如,用户需要采集数据信号,但不希望采集控制信号,则通过采样通道传输数据信号,通过条件通道传输控制信号,对采样通道传输的数据信号进行采样,通过条件通道传输的控制信号进行采样条件判断。从而,通过配置两个信号通道,可以实现信号分流,使得采集的信号更加准确,避免不必要的信号的干扰。
在另一些实施例中,读写控制单元也可以只配置一个信号通道,该信号通道传输的信号既作为待采样的信号又作为用于采样条件判断的信号。
当一次采样结束后,读写控制单元可以标记采样结束状态,等待用户通过信息处理设备读取采样信号,当信息处理设备读取采样信号时,接口控制模块则控制读写控制单元读取内存中本次采集的采样信号,并输出至信息处理设备。可选地,当采集到采样信号后,读写控制单元也可以立即读取内存中本次采集的采样信号,并通过接口控制模块主动将采样信号发送给信息处理设备。
采样结束控制模块:用于确定采样结束点,具体为:根据输入信号和采样条件确定采样点,根据采样点、采样条件和内存的存储空间确定采样结束点。
信号采样开始进行之后,需要找到结束采样的采样结束点,但在找到结束点之前,需要先找到开始采样的采样点。因此,在正式采样之前,采样结束控制模块需要首先根据输入信号和采样条件找到采样点。
所述采样条件至少包括一级采样条件,还可以进一步包括二级采样条件,甚至多级采样条件。当采样条件只包括一级采样条件时,只要输入信号满足一级采样条件,采样结束控制模块则将当前的周期(时钟周期)作为开始采样的采样点。当采样条件包括一级采样条件和二级采样条件时,输入信号在满足一级采样条件之后,采样结束控制模块还要进行二级采样条件判断,将输入信号满足二级采样条件时的周期作为开始采样的采样点。多级采样条件依次类推,在此不再赘述。
当信号通道有两个时,采样结束控制模块利用条件通道上传输的输入信号进行采样条件判断,也就是说,根据条件通道上传输的输入信号和采样条件确定采样点。
采样条件包括条件信息,对于采样条件的条件信息,可以是对输入信号(如32位输入信号)进行随意的逻辑组合设置,如输入信号中任意几个位置出现单个0或者1,或者进行逻辑组合运算。例如:当输入信号的某几位中任意出现0或者1(逻辑或)时,则满足采样条件;当输入信号的某几位同时为0或者1(逻辑与)时,则满足采样条件。
由于内存的写入是一个不断覆盖的过程,信号的保存也是以写满一个完整的内存空间为依据(尽可能保存最大的信号采样量),所以只要找到准确的采样结束点,那么整个内存里保存的信号数据就是采样的预期标本。因此,采样开始后,采样结束控制模块则根据采样点、采样条件和内存的存储空间确定采样结束点。
其中,采样条件还包括方向信息,所述方向信息包括向前采样和向后采样。向前采样,即保存采样点之前的输入信号,根据设置的向前采样的周期数进行保存;向后采样,即保存采样点之后的输入信号,这是最常用的应用场景,一般的,当采样条件没有设置方向信息时,采样结束控制模块则默认为向后采样。基于内存的存储空间限制,向前采样和向后采样的信号采样总数不能超过内存的存储空间(以存满为止)。
当采样条件为向前采样时,采样结束控制模块将内存的存储空间减去向前采样的周期的差值加上采样点的周期之和作为采样结束点的周期。举例而言,内存的存储空间为1000个单位,向前采样的周期数为500,采样点的周期数为800,内存空间的一个单位可以存储一个周期的信号数据,则有:采样结束点的周期=1000-500+800=1300,也就是说,周期达到1300时,到达采样结束点,结束采样。
当采样条件为向后采样时,由于此时向前采样的周期为零,因此采样结束控制模块直接将采样点的周期加上内存的存储空间之和作为采样结束点的周期。举例而言,内存的存储空间为1000个单位,采样点的周期数为200,内存空间的一个单位可以存储一个周期的信号数据,则有:采样结束点的周期=1000+200=1200,也就是说,周期达到1200时,到达采样结束点,结束采样。
当确定采样结束点后,采样结束控制模块可以将采样结束点的周期发送给读写控制单元,由读写控制单元在达到采样结束点时自动结束采样,即停止向内存写入输入信号;或者,由采样结束控制模块在达到采样结束点后控制或通知读写控制单元结束采样,即停止向内存写入输入信号。
本发明实施例的芯片调试装置,可以是独立于调试芯片和计算机设备的装置,可以如图5所示承载于FPGA等可编程的芯片中,分别与信息处理设备的并口等通信接口和调试芯片的相应的引脚连接,通过JTAG协议(或者其它通信协议)分别与信息处理设备和调试芯片通信;也可以集成于调试芯片内部(如图6所示),与信息处理设备的并口等通信接口连接,通过JTAG协议(或者其它通信协议)与信息处理设备通信。
本发明实施例的芯片调试装置,通过利用现有的信息处理设备进行调试配置信息的设置,根据调试配置信息从调试芯片采集到采样信号后再输出至信息处理设备,再利用信息处理设备根据采样信号对调试芯片进行逻辑分析处理和调试操作,充分利用了现有设备的功能,极大的降低了成本,实现成本低。而且,用户可以在信息处理设备上便捷、直观的进行调试配置信息的设置以及对调试芯片进行逻辑分析处理和调试操作,操作方便快捷,功能足够丰富,可以很大程度上替代示波器和逻辑分析仪等传统仪器,达到芯片逻辑分析、调试过程中可视、可追踪等要求。
采样本发明的技术方案,用户可以根据实际情况进行调整,稍加修改就可以成为更适合用户的工具或者一款新的产品。
本领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用信息处理设备中的已知设备。这些设备具有存储在其内的信息处理设备程序,这些信息处理设备程序选择性地激活或重构。这样的信息处理设备程序可以被存储在设备(例如,信息处理设备)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述信息处理设备可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存储器)、EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,信息处理设备)以能够读的形式存储或传输信息的任何介质。
本技术领域技术人员可以理解,可以用信息处理设备程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些信息处理设备程序指令提供给通用信息处理设备、专业信息处理设备或其他可编程数据处理方法的处理器来实现,从而通过信息处理设备或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (7)
1.一种芯片调试方法,其特征在于,包括以下步骤:
与信息处理设备的通信接口连接,从所述信息处理设备获取调试配置信息;
根据所述调试配置信息从调试芯片采集采样信号;所述调试配置信息包括通道设置信息,根据通道设置信息配置传输待采样的信号的信号通道和传输用于采样条件判断的信号的信号通道;所述配置信息包括采样条件;获取调试芯片传输的输入信号并写入内存;根据所述输入信号和所述采样条件确定采样点;根据所述采样点、所述采样条件和所述内存的存储空间确定采样结束点;当到达所述采样结束点时停止向所述内存写入所述输入信号,此时所述内存中包括的输入信号记为采样信号;
将所述采样信号输出至所述信息处理设备。
2.根据权利要求1所述的芯片调试方法,其特征在于,所述根据所述采样点、所述采样条件和所述内存的存储空间确定采样结束点的步骤包括:
当所述采样条件为向前采样时,将所述内存的存储空间减去向前采样的周期的差值加上所述采样点的周期之和作为所述采样结束点的周期;
当所述采样条件为向后采样时,将所述内存的存储空间加上所述采样点的周期之和作为所述采样结束点的周期。
3.根据权利要求1所述的芯片调试方法,其特征在于,所述获取调试芯片传输的输入信号并写入内存的步骤包括:
获取调试芯片传输的输入信息,对所述输入信号进行压缩处理成由两个33位数据组成的压缩信号,且第一个33位数据中的第33位表示是否被压缩,第二个33位数据表示所述压缩信号出现的次数,然后写入所述内存。
4.根据权利要求1所述的芯片调试方法,其特征在于,
所述信号通道为一个,其传输的信号既作为待采样的信号又作为用于采样条件判断的信号;或者,
所述信号通道包括采样通道和条件通道,所述采样通道传输待采样的信号,所述条件通道传输用于采样条件判断的信号。
5.一种芯片调试装置,其特征在于,包括:
接口控制模块,用于与信息处理设备的通信接口连接,从所述信息处理设备获取调试配置信息;
信号采集模块,用于根据所述调试配置信息从调试芯片采集采样信号;所述信号采集模块包括读写控制单元,所述读写控制单元配置两个信号通道,所述两个信号通道分别为采样通道和条件通道;所述信号采样模块包括内存和采样结束控制单元,其中,所述读写控制单元,用于获取调试芯片传输的输入信号并写入所述内存;所述采样结束控制单元,用于根据所述输入信号和所述采样条件确定采样点;根据所述采样点、所述采样条件和所述内存的存储空间确定采样结束点;所述读写控制单元还用于:当到达所述采样结束点后停止向所述内存写入所述输入信号,此时所述内存中保存的输入信号即为采样信号;
所述接口控制模块还用于:将所述采样信号输出至所述信息处理设备。
6.根据权利要求5所述的芯片调试装置,其特征在于,所述采样结束控制单元用于:
当所述采样条件为向前采样时,将所述内存的存储空间减去向前采样的周期的差值加上所述采样点的周期之和作为所述采样结束点的周期;
当所述采样条件为向后采样时,将所述内存的存储空间加上所述采样点的周期之和作为所述采样结束点的周期。
7.根据权利要求5或6所述的芯片调试装置,其特征在于,所述读写控制单元还用于:对所述输入信号进行压缩处理成由两个33位数据组成的压缩信号,且第一个33位数据中的第33位表示是否被压缩,第二个33位数据表示所述压缩信号出现的次数,然后写入所述内存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610651804.7A CN106294056B (zh) | 2016-08-10 | 2016-08-10 | 芯片调试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610651804.7A CN106294056B (zh) | 2016-08-10 | 2016-08-10 | 芯片调试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106294056A CN106294056A (zh) | 2017-01-04 |
CN106294056B true CN106294056B (zh) | 2019-04-02 |
Family
ID=57667995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610651804.7A Active CN106294056B (zh) | 2016-08-10 | 2016-08-10 | 芯片调试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106294056B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108628693B (zh) * | 2018-04-17 | 2019-10-25 | 清华大学 | 处理器调试方法和系统 |
CN109581913A (zh) * | 2018-11-20 | 2019-04-05 | 深圳芯邦科技股份有限公司 | 一种mcu控制方法及相关设备 |
CN111435143A (zh) * | 2019-01-11 | 2020-07-21 | 中车株洲电力机车研究所有限公司 | 通用测试装置及方法 |
CN110032482A (zh) * | 2019-04-11 | 2019-07-19 | 盛科网络(苏州)有限公司 | 片上调试装置和方法 |
CN110413471A (zh) * | 2019-07-29 | 2019-11-05 | 杭州迪普科技股份有限公司 | 一种fpga内部信号数据获取方法、系统 |
CN110597678B (zh) * | 2019-09-09 | 2022-05-31 | 腾讯科技(深圳)有限公司 | 一种调试方法及调试单元 |
CN111428691A (zh) * | 2020-04-21 | 2020-07-17 | 硅谷数模(苏州)半导体有限公司 | 芯片的调试方法、芯片的调试装置、存储介质和处理器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541707A (zh) * | 2010-12-15 | 2012-07-04 | 中国科学院电子学研究所 | 复用jtag接口的fpga片内逻辑分析仪系统和方法 |
CN103116554A (zh) * | 2013-03-05 | 2013-05-22 | 中国人民解放军国防科学技术大学 | 用于fpga芯片调试的信号采样缓存装置 |
CN103631689A (zh) * | 2012-08-28 | 2014-03-12 | 瑞萨集成电路设计(北京)有限公司 | 数据采集装置、在线仿真调试系统及方法 |
CN103678078A (zh) * | 2012-09-25 | 2014-03-26 | 深圳市中兴微电子技术有限公司 | 一种调试系统及方法 |
-
2016
- 2016-08-10 CN CN201610651804.7A patent/CN106294056B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541707A (zh) * | 2010-12-15 | 2012-07-04 | 中国科学院电子学研究所 | 复用jtag接口的fpga片内逻辑分析仪系统和方法 |
CN103631689A (zh) * | 2012-08-28 | 2014-03-12 | 瑞萨集成电路设计(北京)有限公司 | 数据采集装置、在线仿真调试系统及方法 |
CN103678078A (zh) * | 2012-09-25 | 2014-03-26 | 深圳市中兴微电子技术有限公司 | 一种调试系统及方法 |
CN103116554A (zh) * | 2013-03-05 | 2013-05-22 | 中国人民解放军国防科学技术大学 | 用于fpga芯片调试的信号采样缓存装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106294056A (zh) | 2017-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106294056B (zh) | 芯片调试方法和装置 | |
CN107704346B (zh) | Soc芯片调试方法及调试系统 | |
CN106054058B (zh) | 一种能够对多个σ-△adc芯片测试和温度控制的系统及方法 | |
US8607174B2 (en) | Verification module apparatus to serve as a prototype for functionally debugging an electronic design that exceeds the capacity of a single FPGA | |
US7225357B2 (en) | SDIO card development system | |
CN101808343B (zh) | Arm数字基带芯片中sim/usim卡控制器自动化测试电路结构及方法 | |
CN109240965B (zh) | Fpga逻辑捕获处理显示套件及其使用方法 | |
JP2007147352A (ja) | 無線インターフェースモジュール及び電子機器 | |
CN107592250B (zh) | 基于航空fc总线多速率自适应测试设备 | |
CN104077906A (zh) | 一种基于nfc的数据自动采集装置及方法 | |
CN104730260B (zh) | 一种便携移动式血凝分析系统及方法 | |
CN103092119B (zh) | 一种基于fpga的总线状态监视方法 | |
CN115496018A (zh) | 一种SoC芯片多版本验证方法、装置及设备 | |
CN111722968A (zh) | 一种硬件调试方法、装置、系统及可读存储介质 | |
EP2062141B1 (en) | Providing maintenance access via an external connector | |
CN110535918A (zh) | 一种采用gprs技术的数据传送装置与方法 | |
CN104572515B (zh) | 跟踪模块、方法、系统和片上系统芯片 | |
CN104035422B (zh) | 一种基于智能移动终端的数据计算方法 | |
CN105391576A (zh) | 一种片上网络运行过程重现方法及系统 | |
CN202198586U (zh) | 一种新型的电子血压计 | |
CN107748730B (zh) | 一种基于PXIe总线的费控卡表交互故障分析系统 | |
CN110990220A (zh) | 一种集成多接口的功耗信号采集装置 | |
CN110196701A (zh) | 基于ble设备的数据交互调测系统及方法 | |
CN205608200U (zh) | 一种基于蓝牙与微波技术的无线控制电法勘探仪器 | |
CN205210586U (zh) | 一种通过usb接口读取hart仪表参数的系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20170104 Assignee: Hangzhou Yixin Technology Co.,Ltd. Assignor: HANGZHOU BRANCH, BEIJING WANGXUN TECHNOLOGY Co.,Ltd. Contract record no.: X2022330000333 Denomination of invention: Chip debugging method and device Granted publication date: 20190402 License type: Common License Record date: 20220725 |
|
EE01 | Entry into force of recordation of patent licensing contract |