WO2014048327A1 - Commissioning system and method - Google Patents

Commissioning system and method Download PDF

Info

Publication number
WO2014048327A1
WO2014048327A1 PCT/CN2013/084223 CN2013084223W WO2014048327A1 WO 2014048327 A1 WO2014048327 A1 WO 2014048327A1 CN 2013084223 W CN2013084223 W CN 2013084223W WO 2014048327 A1 WO2014048327 A1 WO 2014048327A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
module
core
debug
debugging
Prior art date
Application number
PCT/CN2013/084223
Other languages
French (fr)
Chinese (zh)
Inventor
党君礼
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2014048327A1 publication Critical patent/WO2014048327A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/348Circuit details, i.e. tracer hardware

Definitions

  • the present invention relates to the field of chip testing, and in particular, to a debugging system and method.
  • BACKGROUND OF THE INVENTION As Moore's Law gradually fails and the feature size of an integrated circuit approaches physical limits, power consumption and application diversity, and product launch cycles are further shortened in response to market demands, and system on chip (SOC) has been promoted.
  • SOC system on chip
  • a debugging system comprising: a core cluster, a data pool, a data acquisition module, a data transmission module, a clock management module, and debugging Processing the module;
  • the core cluster includes at least one IP core, the IP core includes at least one integrated component;
  • the clock management module is configured to generate a clock signal to drive an integrated component in the IP core and the data acquisition module to operate;
  • the data acquisition module is configured to collect data of the integrated component in the IP core to obtain sampling data, and transmit the sampling data to the debugging processing module by using the data transmission module;
  • the debugging processing module is configured to receive The sampled data is processed, and corresponding debug data is generated and transmitted to the data pool by the data transmission module;
  • the data pool is set to process the debug data, and the processed data is loaded into the corresponding data.
  • the debug data includes at least one of: load data and command parameter configuration data; the data pool is configured to perform predetermined data format conversion on the load data, and/or parse the command parameter configuration data.
  • the data acquisition module includes: a multiplexer and a control register; the control register is configured to generate a control signal to the multiplexer in a configuration of the data pool; the multiplexer setting In order to select corresponding sampling data according to the control signal, the data transmission module is transmitted.
  • the data transmission module includes: a data cache module and a bus bridge; the data cache module is configured to buffer the sample data output by the data module and the debug data generated by the debug processing module under the driving of the clock management module;
  • the bus bridge is configured to transfer data between the data cache module and the debug processing module driven by the clock management module.
  • the data buffering module includes a first FIFO data buffer and a first FIFO buffer controller; the first FIFO buffer controller is configured to control the first FIFO data buffer to buffer and output sampled data; a FIFO data buffer is configured to buffer the sampling data output by the data module under the driving of the clock management module, and when a full signal is generated, the full signal is transmitted to the clock management module; the clock management module further It is arranged to close the corresponding integrated component according to the full signal.
  • the data cache module further includes a second FIFO data buffer and a second FIFO cache controller; the second cache controller is configured to control the second FIFO data buffer to buffer and output the debug data;
  • the second FIFO data buffer is configured to buffer the debug data under the driving of the clock management module, and when a full signal is generated, the full signal is transmitted to the debug processing module; the debug processing module further It is set to stop transmitting debug data to the second FIFO data buffer after receiving the full signal.
  • the IP core includes at least one integrated component of a CUP, a DSP, and a hardware accelerator.
  • a debugging method comprising: the following steps: collecting at least one IP core in a core cluster driven by a clock management module Data of at least one of the integrated components obtains sampled data; processing the sampled data to generate corresponding debug data; processing the debug data, and loading the processed debug data to an input of the corresponding integrated component. After the data of the at least one integrated component of the at least one IP core in the core cluster is collected, before the processing the collected data, the method further includes: selecting corresponding sampling data according to the received control signal.
  • the debugging data at least includes: one of loading data and command parameter configuration data; the processing the debugging data includes: performing predetermined data format conversion on the loading data, and/or parsing the command parameter Configuration Data.
  • the invention has the beneficial effects that: the debugging system and the method provided by the invention can effectively debug the multi-core integrated circuit. In the setting of a multi-core cluster, it is possible to debug the integrated components in the IP core and solve the problem of multi-core debugging.
  • the clock management module is set, and each module in the system is in the clock management module.
  • FIG. 1 is a schematic structural diagram of a debugging system according to an embodiment of the present invention
  • FIG. 2 is a schematic structural diagram of a core cluster according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of sampling a signal by a data collecting module according to an embodiment of the present invention
  • FIG. 5 is a schematic structural diagram of a data collection module according to an embodiment of the present invention
  • FIG. 6 is a schematic structural diagram of another embodiment of the debugging system according to an embodiment of the present invention
  • FIG. 8 is a schematic structural diagram of a clock management module according to an embodiment of the present invention
  • FIG. 9 is a schematic structural diagram of a bus bridge according to an embodiment of the present invention
  • FIG. 10 is a flowchart of a debugging method according to an embodiment of the present invention.
  • the debugging system described in this embodiment includes: a core cluster, a data pool, a data acquisition module, a data transmission module, a clock management module, and a debugging processing module, and the six modules cooperate to complete debugging, wherein: Including at least one IP core, the IP core includes at least one integrated component; the clock management module is configured to generate a clock signal to drive the integrated component and the data acquisition module in the IP core; and the data acquisition module is configured to acquire data of the integrated component in the IP core.
  • the debugging system of this embodiment can debug various integrated circuits and compare the debugging of the SOC chip.
  • the core cluster is the debug tracking object of the embodiment.
  • the composition of the core cluster is flexible, including multiple IP cores, wherein multiple integrated components can be integrated in the IP core. Taking the SOC chip as an example, an IP core can include 4 CPUs or Four DSPs can also include CPU, DSP or hardware accelerators.
  • the integrated components within the IP core can be one or more of a CPU, DSP, or hardware accelerator; the number and variety of CPUs, DSPs, and hardware accelerators are not limited.
  • the CPU and the DSP may be IP cores provided by the manufacturer, or may be self-developed IP cores; the hardware accelerator refers to a logic circuit that the manufacturer provides or self-develops to perform a certain function.
  • These CPUs, DSPs, and hardware accelerators can or do not support interrupts.
  • the core cluster includes an IP core including: IP0-IPti, and a clock signal of the clock management module is loaded at a clock input end of each IP core.
  • the data sampling module receives the data transmitted by the IP core (which can be preset by the clock management module to control the IP core), and the data acquisition module will The sampling data is transmitted to the debugging processing module; the debugging processing module processes the sampling data to generate corresponding debugging data and transmits the data to the data pool; the data pool processes the debugging data and loads it into the corresponding IP core.
  • the clock management module makes it easy to manage and maintain the stability of the commissioning.
  • the clock management module of this embodiment is used to manage the operation of the core, and the generated clock signal is used as an enable signal to the IP core, and the IP core operates under the clock of the clock management module.
  • the same data acquisition module is also in the clock management module.
  • Elk is the clock for the normal operation of IP_cl US t er .
  • clk_gated is the output of the clock management module and is used to manage the operation of the core. On each rising edge of clk_gated, the core runs a clock, and then the output is sent to the data sampling module.
  • the data sampling module drives the sampled N data one by one under the driving of elk to obtain a stable sampled data stream. And send it to the debug processing module for processing.
  • the above debug data may include at least one of: load data and command parameter configuration data.
  • the data pool When the debug data is loaded data, the data pool performs data format conversion on the load data according to a predefined format, and loads the converted data on the input of the integrated component. When the debug data is configured as command parameters, the data pool will parse the command parameter configuration data and distribute the parsed data to the corresponding integrated component. If the data transmitted from the debug processing module to the data pool is referred to as downlink data, the data transmitted from the data sampling module to the debug processing module is referred to as uplink data. The data pool is responsible for processing the downlink data. For example, according to the MSB of the data, the data type is determined. As shown in FIG. 4, the downlink data bit width is N+1 bits.
  • data[N] is l 'b0, it indicates that data[Nl :0] is the IP_cluster load data, the data pool will load the data into the IP_cluster input according to the predefined format; if the data[N] is ⁇ , it indicates that the data[Nl:0] is the commissioning command parameter configuration.
  • the data is parsed and the processed data is transferred to the corresponding integrated component in the corresponding IP (such as the first CPU in IP0, the second DSP in IP1, etc.). As shown in FIG.
  • the data acquisition module in this embodiment includes a multiplexer and a control register; wherein the multiplexer receives the core cluster transmission The data, the control register generates a control signal to the multiplexer according to the configuration of the data pool, and the multiplexer selects corresponding data according to the control signal for output.
  • IP0 includes 2 CPUs (CPU1, CPU2)
  • IP1 includes 3 DSPs (DSP1, DSP2, DSP3)
  • IP2 includes one CPU (CPU3), one DSP ( DSP4) and a hardware accelerator; the user only needs to debug the first CPU in the IPO, the second DSP in IP1 and the hardware accelerator in IP2, the specific process is as follows: Multiple selectors receive IP0, IP1 and D2, dl, d2, d3, d4, d5, d6, d7 data of IP2 transmission, d0, dl are the output data of 2 CPUs (CPU1, CPU2) in IPO, d2, d3, d4 are three DSPs in IP1 ( DSP1, DSP2, DSP3) output data, d5, d6, d7 are the output data corresponding to the three integrated components of CPU3, DSP4, and hardware accelerator in IP2; the data pool configures the control register to generate CPU1, DSP2, hardware The control signal of the
  • the data transmission module in the embodiment includes: a data cache module and a bus bridge; the data cache module is configured to cache the data module under the driving of the clock management module. The output sample data and the debug data generated by the debug processing module; the bus bridge is configured to transfer data between the data cache module and the debug processing module driven by the clock management module.
  • the data pool reads the debug data from the data cache module, and the data acquisition module caches the collected data to the data cache module to debug the SOC chip as an example.
  • the schematic diagram of the debug system is shown in FIG.
  • the data buffering module includes a first FIFO data buffer and a first FIFO buffer controller; and the first FIFO buffer controller is configured to control the first FIFO data.
  • the buffer buffers and outputs the sampled data;
  • the first FIFO data buffer is configured to buffer the sampled data output by the data module under the driving of the clock management module, and when the full signal is generated, the full signal is transmitted to the clock management module
  • the clock management module is also arranged to turn off the corresponding integrated component according to the full signal.
  • the full signal of the upstream FIFO (alm 0S t_full) needs to be connected to the clock management module to prevent the upstream FIFO from overflowing due to the small bus transmission speed, thus preventing the uplink data from being lost; the full signal needs to be controlled in the clock management module, in the uplink
  • the core clock is pulled to a fixed level (that is, the integrated component corresponding to the clock is turned off), and when the almost_foll is invalid, the core clock is released, thereby realizing dynamic debugging of the core. As shown in FIG.
  • the data cache module further includes a second FIFO data buffer and a second FIFO buffer controller; and the second cache controller is configured to control the second FIFO data buffer.
  • Debugging and outputting the debug data the second FIFO data buffer is set to buffer the debug data under the driving of the clock management module, and when the full signal is generated, the full signal is transmitted to the debug processing module; the debug processing module is also set Stop transmitting debug data to the second FIFO data buffer after receiving the full signal.
  • the full signal of the downstream FIFO (alm 0S t_foll) is used to prevent loss of configuration data or load data when the bus rate is too high.
  • the bus bridge transmits the full signal of the downlink FIFO to the debug processing module through the bus.
  • the debug processing module receives the signal that the downlink FIFO is full, stops sending the debug data to the data cache module, and waits for Continue to send after the full signal fails.
  • the clock management module in this embodiment may be composed of clock gating management (clk_gate_ctrl), latch and AND gate; the gating management unit is controlled by the counting configuration register (cnt_config_reg) and almost_full.
  • the counting configuration register can be dynamically configured by datajx) 0 l, thereby controlling the running rate and sampling rate of the core, thereby controlling the overall speed of the commissioning.
  • the bus bridge in this embodiment may include: a bus bridge and a bus external interface.
  • the bus bridge selection method is more flexible. Which bus is selected should be selected according to the size of the chip, the number and size of the signals to be tested, and the minimum commissioning time of each chip.
  • the bus can be used with a variety of standard buses or custom buses. In order to speed up the progress involved, it is recommended that the bus external interface module use an off-the-shelf IP core.
  • the bus bridge needs to be designed separately according to the type of bus.
  • the above debugging processing module can be a debugging tracker, and the debugging tracker is an interface between the human and the chip, and has the following functions: parameter setting function; parameter conversion into standard format function; extracting simulation waveform, converting it into standard debugging format Function; It has the function of saving the sampled data; It can perform the waveform recovery function according to the configuration parameters; It has the function of real-time waveform; It can compare the measured waveform with the simulated waveform.
  • the following functions can be implemented by the above-described debugging system of the present invention:
  • the external debugging interface has diversity, which solves the problem of few types of debugging interfaces and speed mismatches;
  • the existing waveform can be converted into a commissioning loading signal, which enhances the debugging capability of the system
  • the embodiment further provides a debugging method.
  • the method includes the following steps: Step 101: Acquire at least one integrated component in at least one IP core in the core cluster driven by the clock management module. The data obtains the sampled data; Step 102: Process the sampled data to generate corresponding debug data; Step 103: Process the debug data, and load the processed debug data into the input of the corresponding integrated component. Further, after the data of the at least one integrated component in the at least one IP core in the core cluster is collected in step 101, before step 102, the method further comprises: selecting corresponding sampling data according to the received control signal.
  • the debugging data includes at least one of loading data and command parameter configuration data.
  • the processing of the debugging data in step 103 specifically includes: performing predetermined data format conversion on the loading data, and/or parsing the command parameter configuration data. .

Abstract

The present invention relates to a commissioning system and method. The commissioning system comprises: a core cluster, a data pool, a data acquisition module, a data transmission module, a clock management module, and a commissioning processing module. The core cluster comprises at least one IP core, the IP core comprising at least one integrated component; the clock management module is configured to generate a clock signal to drive the integrated component in the IP core and the data acquisition module to work; the data acquisition module is configured to acquire data of the integrated component in the IP core and obtain sampling data, and transmit the sampling data to the commissioning processing module by using the data transmission module; the commissioning processing module is configured to process the received sampling data, generate corresponding commissioning data and transmit the commissioning data to the data pool by using the data transmission module; and the data pool processes the commissioning data and loads the processed data to the corresponding integrated component for input. The present invention can improve the commissioning efficiency and accuracy.

Description

一种调试系统及方法 技术领域 本发明涉及芯片测试领域, 尤其涉及一种调试系统及方法。 背景技术 随着摩尔定律逐渐失效和集成电路的特征尺寸接近物理极限, 功耗和应用的多样 性、 产品的推出周期应市场之需进一步缩短, 已促使片上系统(System on Chip, 简称 为 SOC) 已成为目前主流的集成电路设计方法学。 在力争将海量运算量和控制灵活性 集于一身时, 又要适应某些特殊算法 (因为时延太紧或者吞吐量太大, 或二者兼而有 之) 时, DSP配合 CPU, 在加上某些特殊的硬件加速器, 以及各种互联结构和外设 IP 构成的 SOC系统, 已成为目前 SOC系统的主流设计和实现方法。 然而如何对集成有 多个 DSP、 CPU以及多个硬件加速器的 SOC芯片进行跟踪和调试, 是一个非常棘手 的问题。 由于所要观测的控制信号繁多, 数据信号量太大, 所以一般的调测系统难以 满足速度和吞吐量的要求, 也没有办法进行裁剪, 并且现有技术中单独对 CPU、 DSP 和硬件加速器的进行调试, 效率非常低, 并且不精确。 发明内容 本发明要解决的主要技术问题是, 提供一种调试系统及方法, 能够提高调测的效 率和准确性。 为解决上述技术问题, 本发明提供一种调试系统, 其具体技术方案如下: 一种调试系统, 其特征在于, 包括: 核簇、 数据池、 数据采集模块、 数据传输模 块、 时钟管理模块和调试处理模块; 所述核簇包括至少一个 IP核, 所述 IP核包括至 少一个集成元件;所述时钟管理模块设置为产生时钟信号驱动所述 IP核中的集成元件 和所述数据采集模块工作;所述数据采集模块设置为采集所述 IP核中集成元件的数据 获得采样数据, 并将所述采样数据通过所述数据传输模块传输给所述调试处理模块; 所述调试处理模块设置为对接收到的采样数据进行处理, 并产生相应的调试数据通过 所述数据传输模块传输给所述数据池; 所述数据池设置为对所述调试数据进行处理, 并将处理后的数据加载到对应的所述集成元件的输入。 所述调试数据至少包括: 加载数据和命令参数配置数据中的一种; 所述数据池设 置为对所述加载数据进行预定的数据格式转换, 和 /或对所述命令参数配置数据进行解 析。 所述数据采集模块包括: 多路选择器和用于控制寄存器; 所述控制寄存器设置为 在所述数据池的配置下, 产生控制信号给所述多路选择器; 所述多路选择器设置为根 据所述控制信号, 选择相应的采样数据传输给所述数据传输模块。 所述数据传输模块包括: 数据缓存模块和总线桥; 所述数据缓存模块设置为在所 述时钟管理模块的驱动下缓存所述数据模块输出的采样数据和所述调试处理模块产生 的调试数据; 所述总线桥设置为在所述时钟管理模块的驱动下在所述数据缓存模块与 所述调试处理模块之间传输数据。 所述数据缓存模块包括第一 FIFO数据缓存器和第一 FIFO缓存控制器;所述第一 FIFO缓存控制器设置为控制所述第一 FIFO数据缓存器对采样数据进行缓存和输出; 所述第一 FIFO数据缓存器设置为在时钟管理模块的驱动下缓存所述数据模块输出的 采样数据, 并且当产生将满信号时, 将将满信号传输到所述时钟管理模块; 所述时钟 管理模块还设置为根据所述将满信号关闭对应的所述集成元件。 所述数据缓存模块还包括第二 FIFO数据缓存器和第二 FIFO缓存控制器;所述第 二缓存控制器设置为控制所述第二 FIFO数据缓存器对所述调试数据进行缓存和输出; 所述第二 FIFO数据缓存器设置为在所述时钟管理模块的驱动下缓存所述调试数据, 并且当产生将满信号时, 将将满信号传输给所述调试处理模块; 所述调试处理模块还 设置为接收到将满信号后停止发送调试数据给所述第二 FIFO数据缓存器。 所述 IP核包括 CUP、 DSP和硬件加速器中的至少一种集成元件。 同样为解决上述的技术问题本发明还提供了一种调试方法, 其技术方案如下: 一种调试方法, 其特征在于, 包括以下步骤: 在时钟管理模块的驱动下采集核簇 中至少一个 IP核中的至少一个集成元件的数据获得采样数据;对采样数据进行处理产 生相应的调试数据; 对所述调试数据进行处理, 将处理后的调试数据加载到对应的所 述集成元件的输入。 所述采集核簇中至少一个 IP核中的至少一个集成元件的数据之后,对采集到的数 据进行处理之前还包括: 根据接收的控制信号选择出相应的采样数据。 所述调试数据至少包括: 加载数据和命令参数配置数据中的一种; 所述对所述调 试数据进行处理包括: 对所述加载数据进行预定的数据格式转换, 和 /或解析所述命令 参数配置数据。 本发明的有益效果是: 本发明提供的一种调试系统及方法能够有效的对多核集成电路进行调测。 在设置 由多核组成的核簇, 可以实现对统一的对 IP核中的集成元件进行调测, 解决多核调测 的问题; 设置时钟管理模块, 是系统的中的各个模块在均在时钟管理模块的控制下工 作, 可以提高了系统的调测速度降低能耗; 在数据采集模块中设置多路选择器, 可以 根据需求配置选择需要测试的采样信号; 设置数据缓存模块用来缓存调测数据和采样 数据, 便于提高调测的稳定性和准确性, 同时在数据缓存模块中设置第一 FIFO缓存 器, 并将其将满信号传输给时钟管理模块进行处理, 可以实现动态调测功能。 附图说明 图 1为本发明实施例调试系统的一种结构示意图; 图 2为本发明实施例中核簇的结构示意图; 图 3为本发明实施例中数据采集模块对信号采样的示意图; 图 4为本发明实施例数据池下行数据的格式表; 图 5为本发明实施例中数据采集模块的结构示意图; 图 6为本发明实施例调试系统的另一种结构示意图; 图 7为本发明实施例中数据缓存模块的结构示意图; 图 8为本发明实施例中时钟管理模块的结构示意图; 图 9为本发明实施例中总线桥的结构示意图; 图 10为本发明实施例调试方法的流程图。 具体实施方式 下面通过具体实施方式结合附图对本发明作进一步详细说明。 本实施例描述的调试系统, 如图 1所示, 包括: 核簇、 数据池、 数据采集模块、 数据传输模块、 时钟管理模块和调试处理模块, 这 6个模块配合完成调试, 其中: 核簇包括至少一个 IP核, 该 IP核包括至少一个集成元件; 时钟管理模块设置为产生时钟信号驱动 IP核中的集成元件和数据采集模块工作; 数据采集模块设置为采集 IP核中集成元件的数据获得采样数据,并将采样数据通 过数据传输模块传输给调试处理模块; 调试处理模块设置为对接收到的采样数据进行处理, 并产生相应的调试数据通过 数据传输模块传输给数据池; 数据池设置为对调试数据进行处理, 并将处理后的数据 加载到对应的集成元件的输入。 本实施例的调试系统可以对各种集成电路进行调试, 比较对 SOC芯片进行调试。 核簇是本实施例的调试跟踪对象, 核簇的组成很灵活, 包括多个 IP核, 其中 IP 核内可以集成多个集成元件, 以 SOC芯片为例, 一个 IP核可以包括 4个 CPU或者 4 个 DSP, 也可以包括 CPU、 DSP或者硬件加速器。 IP核内的集成元件可以是 CPU、 DSP或者硬件加速器中的一种或多种; CPU、 DSP和硬件加速器的数量和种类都不受 限制。 CPU和 DSP可以是厂商提供的 IP核, 也可以是自研的 IP核; 硬件加速器指的 是厂商提供或者自研的可以完成某种功能的逻辑电路。 这些 CPU、 DSP和硬件加速器 可以支持或者不支持中断功能。 如图 2所示, 核簇包括的 IP核包括: IP0-IPti, 时钟管 理模块的时钟信号加载在每个 IP核的时钟输入端。 当时钟管理模块控制 IP核和数据 采样模块工作时, 数据采样模块会接收到 IP核(具体哪个可以人为预先设定, 通过时 钟管理模块来控制 IP核来实现)传输的数据, 数据采集模块将采样数据传输到调试处 理模块; 调试处理模块处理采样数据产生相应的调试数据传输给数据池; 数据池对调 试数据进行处理并加载到对应 IP核中。采用时钟管理模块能够方便管理和保持调测的 稳定性。 本实施例的时钟管理模块是用来管理核的运行的, 其产生的时钟信号作为使 能信号给 IP核, IP核在时钟管理模块的时钟驱动下工作, 同样数据采集模块也是在时 钟管理模块的驱动下工作的, 具体的采样过程如图 3所示, elk为 IP_clUSter正常工作 的时钟, clk_gated 是时钟管理模块的输出, 用来对核的运行进行管理。 在 clk_gated 的每个上升沿, 核运行一个时钟, 进而将输出送到数据采样模块, 数据采样模块在 elk 的驱动下, 对被采样的 N个数据进行逐一采样, 从而获得一个稳定的采样数据流, 并 将其送到调试处理模块处理。 上述的调试数据可以至少包括: 加载数据和命令参数配置数据中的一种。 当调试 数据为加载数据时, 数据池根据预先定义好的格式对加载数据进行数据格式转换, 将 转换后的数据加载在集成元件的输入。 当调试数据为命令参数配置数据时, 数据池将 对该命令参数配置数据进行解析, 将解析后的数据分配到对应的集成元件。 如将由调试处理模块到数据池方向传输的数据称之为下行数据, 将有数据采样模 块到调试处理模块方向传输的数据称之为上行数据。数据池负责对下行数据进行处理, 例如根据数据的 MSB来判断数据种类, 如图 4所示, 从下行数据位宽为 N+1位, 如 果 data[N]为 l 'b0, 表明 data[N-l:0]是 IP_cluster加载数据, 数据池会根据预先定义好 的格式, 将数据——加载到 IP_cluster的输入; 如果是 data[N]为 ΓΜ,表明 data[N-l:0] 是调测命令参数配置数据则对其进行解析将处理后的数据传输到相应的 IP 中相应的 集成元件 (如 IP0中的第一个 CPU, IP1中的第二个 DSP等)。 如图 5所示, 为了根据用户的需求对特定的, 或者用户感兴趣的数据进行测试, 本实施例中的数据采集模块包括多路选择器和控制寄存器; 其中多路选择器接收核簇 传输的数据, 控制寄存器根据数据池的配置产生一个控制信号给多路选择器, 多路选 择器根据该控制信号选取相应的数据进行输出。如对一个包括三个 IP核的核簇进行测 试,其中 IP0包括 2个 CPU (CPU1、 CPU2), IP1包括 3个 DSP (DSP1、 DSP2、 DSP3 ), IP2包括一个 CPU (CPU3 )、一个 DSP (DSP4)和一个硬件加速器; 用户只要求对 IPO 中的第一个 CUP、 IP1中的第二个 DSP和 IP2中的硬件加速器进行调试, 具体的过程 如下: 多路选择器接收 IP0、 IP1禾口 IP2传输的 d0、 dl、 d2、 d3、 d4、 d5、 d6、 d7数据, d0、 dl为 IPO中 2个 CPU ( CPU1、 CPU2) 的输出数据, d2、 d3、 d4为 IP1中三个 DSP (DSP1、 DSP2、 DSP3 ) 输出的数据, d5、 d6、 d7为 IP2中 CPU3、 DSP4、 硬件 加速器这三个集成元件对应的输出数据; 数据池对控制寄存器进行配置使其产生选择 CPU1、 DSP2、 硬件加速器的控制信号, 多选择器接收器接收到该控制信号后从 d0、 dl、 d2、 d3、 d4、 d5、 d6、 d7中选取 d0、 d3、 d7数据进行输出。 在实施调试过程中考虑到数据的传输速率和整个系统的稳定性, 本实施例中的数 据传输模块包括: 数据缓存模块和总线桥; 数据缓存模块设置为在时钟管理模块的驱 动下缓存数据模块输出的采样数据和调试处理模块产生的调试数据; 总线桥设置为在 时钟管理模块的驱动下在数据缓存模块与调试处理模块之间传输数据。 其中数据池从 数据缓存模块中读取调试数据, 数据采集模块将采集到的数据缓存到数据缓存模块, 以对 SOC芯片调试为例, 调试系统的结构示意图如图 6所示, 其中核簇、 时钟管理模 块、 数据池、 数据采集模块、 数据缓存模块和总线桥都位于芯片上, 调试处理模块位 于芯片外。 如图 7所示, 为了能够使调试系统能够实现动态调测功能, 上述数据缓存模块包 括第一 FIFO数据缓存器和第一 FIFO缓存控制器; 第一 FIFO缓存控制器设置为控制 第一 FIFO数据缓存器对采样数据进行缓存和输出;第一 FIFO数据缓存器设置为在时 钟管理模块的驱动下缓存数据模块输出的采样数据, 并且当产生将满信号时, 将将满 信号传输到时钟管理模块;时钟管理模块还设置为根据将满信号关闭对应的集成元件。 上行 FIFO的将满信号 (alm0St_full) 需要接到时钟管理模块, 防止因为总线传输速度 较小时引起上行 FIFO溢出, 从而防止上行数据丢失; 将满信号需要在时钟管理模块 中控制时钟, 在上行 FIFO数据将要溢出时, almost_full有效时, 将核的时钟拉到固定 电平(即关闭该时钟对应的集成元件), 在 almost_foll无效时, 释放核的时钟, 从而实 现对核的动态调测。 如图 7所示为了防止总线速率太高导致下行加载数据丢失, 数据缓存模块还包括 第二 FIFO数据缓存器和第二 FIFO缓存控制器;第二缓存控制器设置为控制第二 FIFO 数据缓存器对调试数据进行缓存和输出; 第二 FIFO数据缓存器设置为在时钟管理模 块的驱动下缓存调试数据, 并且当产生将满信号时,将将满信号传输给调试处理模块; 调试处理模块还设置为接收到将满信号后停止发送调试数据给第二 FIFO数据缓存器。 下行 FIFO的将满信号 (alm0St_foll)用来防止在总线速率太高时, 配置数据或者加载 数据的丢失。 此信号需要接到总线桥上, 由总线桥将下行 FIFO将满的信号通过总线 传给调试处理模块, 调试处理模块接收到下行 FIFO将满的信号, 停止发送调试数据 至数据缓存模块, 等待将满信号失效后继续发送。 如图 8所示,本实施例中的时钟管理模块可以由时钟门控管理 (clk_gate_ctrl),latch 和与门组成; 门控管理单元受计数配置寄存器(cnt_config_reg)和 almost_full来控制。 其中计数配置寄存器可以通过 datajx)0l对其进行动态配置,从而可以控制核的运行速 率和采样速率, 进而控制调测的总体速度。 Almost_foll是用来在上行 FIFO将满时, 对核进行锁定操作, 防止上行数据溢出。 如图 9所示, 本实施中的总线桥可以包括: 总线桥接和总线对外接口。 通过对外 接口的多样化可以实现片内到片外数据传输多样化, 满足各种与接口相对应的调试处 理模块。 总线桥选择方式比较灵活, 选用何种总线, 应根据芯片的规模大小、 被测信 号的数量和规模以及每块芯片最小调测时间来进行选择。总线可以选用各种标准总线, 也可以采用自定义总线。为了加快涉及进度,建议总线对外接口模块选用现成的 IP核, 总线桥接需要根据总线的类型进行单独设计。 上述调试处理模块可以为调试跟踪器, 调试跟踪器是人和芯片交互的界面, 具有 以下几个功能: 参数设置功能; 参数转化为标准格式功能; 提取仿真波形, 将其转化为标准调测格式功能; 对被采样的数据具有保存功能; 能根据配置参数进行波形恢复功能; 具有再实波形功能; 可以将实测波形与仿真波形进行比对功能。 通过上述本发明的调试系统可以对实现以下功能: TECHNICAL FIELD The present invention relates to the field of chip testing, and in particular, to a debugging system and method. BACKGROUND OF THE INVENTION As Moore's Law gradually fails and the feature size of an integrated circuit approaches physical limits, power consumption and application diversity, and product launch cycles are further shortened in response to market demands, and system on chip (SOC) has been promoted. Has become the mainstream of integrated circuit design methodology. When trying to combine massive computation and control flexibility, and adapt to some special algorithms (because the delay is too tight or the throughput is too large, or both), DSP cooperates with CPU, in addition Some special hardware accelerators, as well as SOC systems composed of various interconnect structures and peripheral IPs, have become the mainstream design and implementation methods of current SOC systems. However, how to track and debug the SOC chip with multiple DSPs, CPUs and multiple hardware accelerators is a very difficult problem. Due to the large number of control signals to be observed and the large amount of data signals, it is difficult for the general commissioning system to meet the speed and throughput requirements, and there is no way to perform the cutting, and the CPU, DSP and hardware accelerators are separately implemented in the prior art. Debugging, very inefficient and inaccurate. SUMMARY OF THE INVENTION The main technical problem to be solved by the present invention is to provide a debugging system and method, which can improve the efficiency and accuracy of commissioning. To solve the above technical problem, the present invention provides a debugging system, and the specific technical solution thereof is as follows: A debugging system, comprising: a core cluster, a data pool, a data acquisition module, a data transmission module, a clock management module, and debugging Processing the module; the core cluster includes at least one IP core, the IP core includes at least one integrated component; the clock management module is configured to generate a clock signal to drive an integrated component in the IP core and the data acquisition module to operate; The data acquisition module is configured to collect data of the integrated component in the IP core to obtain sampling data, and transmit the sampling data to the debugging processing module by using the data transmission module; the debugging processing module is configured to receive The sampled data is processed, and corresponding debug data is generated and transmitted to the data pool by the data transmission module; the data pool is set to process the debug data, and the processed data is loaded into the corresponding data. The input of the integrated component. The debug data includes at least one of: load data and command parameter configuration data; the data pool is configured to perform predetermined data format conversion on the load data, and/or parse the command parameter configuration data. The data acquisition module includes: a multiplexer and a control register; the control register is configured to generate a control signal to the multiplexer in a configuration of the data pool; the multiplexer setting In order to select corresponding sampling data according to the control signal, the data transmission module is transmitted. The data transmission module includes: a data cache module and a bus bridge; the data cache module is configured to buffer the sample data output by the data module and the debug data generated by the debug processing module under the driving of the clock management module; The bus bridge is configured to transfer data between the data cache module and the debug processing module driven by the clock management module. The data buffering module includes a first FIFO data buffer and a first FIFO buffer controller; the first FIFO buffer controller is configured to control the first FIFO data buffer to buffer and output sampled data; a FIFO data buffer is configured to buffer the sampling data output by the data module under the driving of the clock management module, and when a full signal is generated, the full signal is transmitted to the clock management module; the clock management module further It is arranged to close the corresponding integrated component according to the full signal. The data cache module further includes a second FIFO data buffer and a second FIFO cache controller; the second cache controller is configured to control the second FIFO data buffer to buffer and output the debug data; The second FIFO data buffer is configured to buffer the debug data under the driving of the clock management module, and when a full signal is generated, the full signal is transmitted to the debug processing module; the debug processing module further It is set to stop transmitting debug data to the second FIFO data buffer after receiving the full signal. The IP core includes at least one integrated component of a CUP, a DSP, and a hardware accelerator. The present invention also provides a debugging method, and the technical solution thereof is as follows: A debugging method, comprising: the following steps: collecting at least one IP core in a core cluster driven by a clock management module Data of at least one of the integrated components obtains sampled data; processing the sampled data to generate corresponding debug data; processing the debug data, and loading the processed debug data to an input of the corresponding integrated component. After the data of the at least one integrated component of the at least one IP core in the core cluster is collected, before the processing the collected data, the method further includes: selecting corresponding sampling data according to the received control signal. The debugging data at least includes: one of loading data and command parameter configuration data; the processing the debugging data includes: performing predetermined data format conversion on the loading data, and/or parsing the command parameter Configuration Data. The invention has the beneficial effects that: the debugging system and the method provided by the invention can effectively debug the multi-core integrated circuit. In the setting of a multi-core cluster, it is possible to debug the integrated components in the IP core and solve the problem of multi-core debugging. The clock management module is set, and each module in the system is in the clock management module. Working under the control, can improve the system's commissioning speed and reduce energy consumption; set the multiplexer in the data acquisition module, you can select the sampling signal to be tested according to the requirements; set the data cache module to cache the commissioning data and Sampling data facilitates the stability and accuracy of the commissioning. At the same time, the first FIFO buffer is set in the data buffer module, and the full signal is transmitted to the clock management module for processing, and the dynamic debugging function can be realized. BRIEF DESCRIPTION OF DRAWINGS FIG. 1 is a schematic structural diagram of a debugging system according to an embodiment of the present invention; FIG. 2 is a schematic structural diagram of a core cluster according to an embodiment of the present invention; FIG. 3 is a schematic diagram of sampling a signal by a data collecting module according to an embodiment of the present invention; FIG. 5 is a schematic structural diagram of a data collection module according to an embodiment of the present invention; FIG. 6 is a schematic structural diagram of another embodiment of the debugging system according to an embodiment of the present invention; FIG. 8 is a schematic structural diagram of a clock management module according to an embodiment of the present invention; FIG. 9 is a schematic structural diagram of a bus bridge according to an embodiment of the present invention; FIG. 10 is a flowchart of a debugging method according to an embodiment of the present invention; . BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, the present invention will be further described in detail by way of specific embodiments with reference to the accompanying drawings. The debugging system described in this embodiment, as shown in FIG. 1, includes: a core cluster, a data pool, a data acquisition module, a data transmission module, a clock management module, and a debugging processing module, and the six modules cooperate to complete debugging, wherein: Including at least one IP core, the IP core includes at least one integrated component; the clock management module is configured to generate a clock signal to drive the integrated component and the data acquisition module in the IP core; and the data acquisition module is configured to acquire data of the integrated component in the IP core. Sampling data, and transmitting the sampling data to the debugging processing module through the data transmission module; the debugging processing module is configured to process the received sampling data, and generate corresponding debugging data to be transmitted to the data pool through the data transmission module; the data pool is set to The debug data is processed and the processed data is loaded into the input of the corresponding integrated component. The debugging system of this embodiment can debug various integrated circuits and compare the debugging of the SOC chip. The core cluster is the debug tracking object of the embodiment. The composition of the core cluster is flexible, including multiple IP cores, wherein multiple integrated components can be integrated in the IP core. Taking the SOC chip as an example, an IP core can include 4 CPUs or Four DSPs can also include CPU, DSP or hardware accelerators. The integrated components within the IP core can be one or more of a CPU, DSP, or hardware accelerator; the number and variety of CPUs, DSPs, and hardware accelerators are not limited. The CPU and the DSP may be IP cores provided by the manufacturer, or may be self-developed IP cores; the hardware accelerator refers to a logic circuit that the manufacturer provides or self-develops to perform a certain function. These CPUs, DSPs, and hardware accelerators can or do not support interrupts. As shown in FIG. 2, the core cluster includes an IP core including: IP0-IPti, and a clock signal of the clock management module is loaded at a clock input end of each IP core. When the clock management module controls the IP core and the data sampling module to work, the data sampling module receives the data transmitted by the IP core (which can be preset by the clock management module to control the IP core), and the data acquisition module will The sampling data is transmitted to the debugging processing module; the debugging processing module processes the sampling data to generate corresponding debugging data and transmits the data to the data pool; the data pool processes the debugging data and loads it into the corresponding IP core. The clock management module makes it easy to manage and maintain the stability of the commissioning. The clock management module of this embodiment is used to manage the operation of the core, and the generated clock signal is used as an enable signal to the IP core, and the IP core operates under the clock of the clock management module. The same data acquisition module is also in the clock management module. The specific sampling process is shown in Figure 3. Elk is the clock for the normal operation of IP_cl US t er . clk_gated is the output of the clock management module and is used to manage the operation of the core. On each rising edge of clk_gated, the core runs a clock, and then the output is sent to the data sampling module. The data sampling module drives the sampled N data one by one under the driving of elk to obtain a stable sampled data stream. And send it to the debug processing module for processing. The above debug data may include at least one of: load data and command parameter configuration data. When the debug data is loaded data, the data pool performs data format conversion on the load data according to a predefined format, and loads the converted data on the input of the integrated component. When the debug data is configured as command parameters, the data pool will parse the command parameter configuration data and distribute the parsed data to the corresponding integrated component. If the data transmitted from the debug processing module to the data pool is referred to as downlink data, the data transmitted from the data sampling module to the debug processing module is referred to as uplink data. The data pool is responsible for processing the downlink data. For example, according to the MSB of the data, the data type is determined. As shown in FIG. 4, the downlink data bit width is N+1 bits. If data[N] is l 'b0, it indicates that data[Nl :0] is the IP_cluster load data, the data pool will load the data into the IP_cluster input according to the predefined format; if the data[N] is ΓΜ, it indicates that the data[Nl:0] is the commissioning command parameter configuration. The data is parsed and the processed data is transferred to the corresponding integrated component in the corresponding IP (such as the first CPU in IP0, the second DSP in IP1, etc.). As shown in FIG. 5, in order to test specific or user-interested data according to user requirements, the data acquisition module in this embodiment includes a multiplexer and a control register; wherein the multiplexer receives the core cluster transmission The data, the control register generates a control signal to the multiplexer according to the configuration of the data pool, and the multiplexer selects corresponding data according to the control signal for output. For example, a core cluster consisting of three IP cores, IP0 includes 2 CPUs (CPU1, CPU2), IP1 includes 3 DSPs (DSP1, DSP2, DSP3), IP2 includes one CPU (CPU3), one DSP ( DSP4) and a hardware accelerator; the user only needs to debug the first CPU in the IPO, the second DSP in IP1 and the hardware accelerator in IP2, the specific process is as follows: Multiple selectors receive IP0, IP1 and D2, dl, d2, d3, d4, d5, d6, d7 data of IP2 transmission, d0, dl are the output data of 2 CPUs (CPU1, CPU2) in IPO, d2, d3, d4 are three DSPs in IP1 ( DSP1, DSP2, DSP3) output data, d5, d6, d7 are the output data corresponding to the three integrated components of CPU3, DSP4, and hardware accelerator in IP2; the data pool configures the control register to generate CPU1, DSP2, hardware The control signal of the accelerator, after receiving the control signal, the multi-selector receiver selects d0, d3, d7 data from d0, dl, d2, d3, d4, d5, d6, d7 for output. In the implementation of the debugging process, the data transmission module in the embodiment includes: a data cache module and a bus bridge; the data cache module is configured to cache the data module under the driving of the clock management module. The output sample data and the debug data generated by the debug processing module; the bus bridge is configured to transfer data between the data cache module and the debug processing module driven by the clock management module. The data pool reads the debug data from the data cache module, and the data acquisition module caches the collected data to the data cache module to debug the SOC chip as an example. The schematic diagram of the debug system is shown in FIG. 6 , wherein the core cluster, Clock management module The block, data pool, data acquisition module, data cache module, and bus bridge are all on the chip, and the debug processing module is located off-chip. As shown in FIG. 7, in order to enable the debugging system to implement the dynamic debugging function, the data buffering module includes a first FIFO data buffer and a first FIFO buffer controller; and the first FIFO buffer controller is configured to control the first FIFO data. The buffer buffers and outputs the sampled data; the first FIFO data buffer is configured to buffer the sampled data output by the data module under the driving of the clock management module, and when the full signal is generated, the full signal is transmitted to the clock management module The clock management module is also arranged to turn off the corresponding integrated component according to the full signal. The full signal of the upstream FIFO (alm 0S t_full) needs to be connected to the clock management module to prevent the upstream FIFO from overflowing due to the small bus transmission speed, thus preventing the uplink data from being lost; the full signal needs to be controlled in the clock management module, in the uplink When the FIFO data is about to overflow, when the almost_full is valid, the core clock is pulled to a fixed level (that is, the integrated component corresponding to the clock is turned off), and when the almost_foll is invalid, the core clock is released, thereby realizing dynamic debugging of the core. As shown in FIG. 7, in order to prevent the downlink load data from being lost due to the bus speed being too high, the data cache module further includes a second FIFO data buffer and a second FIFO buffer controller; and the second cache controller is configured to control the second FIFO data buffer. Debugging and outputting the debug data; the second FIFO data buffer is set to buffer the debug data under the driving of the clock management module, and when the full signal is generated, the full signal is transmitted to the debug processing module; the debug processing module is also set Stop transmitting debug data to the second FIFO data buffer after receiving the full signal. The full signal of the downstream FIFO (alm 0S t_foll) is used to prevent loss of configuration data or load data when the bus rate is too high. This signal needs to be connected to the bus bridge. The bus bridge transmits the full signal of the downlink FIFO to the debug processing module through the bus. The debug processing module receives the signal that the downlink FIFO is full, stops sending the debug data to the data cache module, and waits for Continue to send after the full signal fails. As shown in FIG. 8, the clock management module in this embodiment may be composed of clock gating management (clk_gate_ctrl), latch and AND gate; the gating management unit is controlled by the counting configuration register (cnt_config_reg) and almost_full. The counting configuration register can be dynamically configured by datajx) 0 l, thereby controlling the running rate and sampling rate of the core, thereby controlling the overall speed of the commissioning. Almost_foll is used to lock the core when the upstream FIFO is full to prevent upstream data from overflowing. As shown in FIG. 9, the bus bridge in this embodiment may include: a bus bridge and a bus external interface. Through the diversification of the external interface, the on-chip to off-chip data transmission can be diversified, and various debugging processing modules corresponding to the interface can be satisfied. The bus bridge selection method is more flexible. Which bus is selected should be selected according to the size of the chip, the number and size of the signals to be tested, and the minimum commissioning time of each chip. The bus can be used with a variety of standard buses or custom buses. In order to speed up the progress involved, it is recommended that the bus external interface module use an off-the-shelf IP core. The bus bridge needs to be designed separately according to the type of bus. The above debugging processing module can be a debugging tracker, and the debugging tracker is an interface between the human and the chip, and has the following functions: parameter setting function; parameter conversion into standard format function; extracting simulation waveform, converting it into standard debugging format Function; It has the function of saving the sampled data; It can perform the waveform recovery function according to the configuration parameters; It has the function of real-time waveform; It can compare the measured waveform with the simulated waveform. The following functions can be implemented by the above-described debugging system of the present invention:
( 1 ) 解决了目前多核异构 SOC上, 多个 DSP、 CPU、 硬件加速器分别调测的问 题; (1) Solved the problem of multiple DSP, CPU, and hardware accelerators on the current multi-core heterogeneous SOC;
(2) 对外调测接口具有多样性, 解决了目前调测接口种类少和速度不匹配问题; (2) The external debugging interface has diversity, which solves the problem of few types of debugging interfaces and speed mismatches;
(3 ) 采用门控时钟的方式, 提高了系统的调测速度; (4) 提出了调测数据再恢复的方法, 解决了实时波形再现的问题; (3) The method of gated clock is used to improve the commissioning speed of the system; (4) The method of recovering the commissioning data is proposed, which solves the problem of real-time waveform reconstruction;
(5 ) 可以将已有波形转为调测加载信号, 增强了对系统的调测能力; (5) The existing waveform can be converted into a commissioning loading signal, which enhances the debugging capability of the system;
(6) 增加了实时波形和仿真波形比对功能, 可进行实时查错。 对应上述的调试系统本实施例还提供了一种调试方法, 如图 10所示, 包括以下 步骤: 步骤 101 : 在时钟管理模块的驱动下采集核簇中至少一个 IP核中的至少一个集成 元件的数据获得采样数据; 步骤 102: 对采样数据进行处理产生相应的调试数据; 步骤 103: 对调试数据进行处理, 将处理后的调试数据加载到对应的集成元件的 输入。 进一步地,在步骤 101中采集核簇中至少一个 IP核中的至少一个集成元件的数据 之后, 在步骤 102之前还包括: 根据接收的控制信号选择出相应的采样数据。 进一步地, 上述调试数据至少包括: 加载数据和命令参数配置数据中的一种; 步骤 103中对调试数据进行处理具体包括: 对加载数据进行预定的数据格式转换, 和 /或解析命令参数配置数据。 以上内容是结合具体的实施方式对本发明所作的进一步详细说明, 不能认定本发 明的具体实施只局限于这些说明。 对于本发明所属技术领域的普通技术人员来说, 在 不脱离本发明构思的前提下, 还可以做出若干简单推演或替换, 都应当视为属于本发 明的保护范围。 (6) Added real-time waveform and simulation waveform comparison function for real-time error detection. Corresponding to the above debugging system, the embodiment further provides a debugging method. As shown in FIG. 10, the method includes the following steps: Step 101: Acquire at least one integrated component in at least one IP core in the core cluster driven by the clock management module. The data obtains the sampled data; Step 102: Process the sampled data to generate corresponding debug data; Step 103: Process the debug data, and load the processed debug data into the input of the corresponding integrated component. Further, after the data of the at least one integrated component in the at least one IP core in the core cluster is collected in step 101, before step 102, the method further comprises: selecting corresponding sampling data according to the received control signal. Further, the debugging data includes at least one of loading data and command parameter configuration data. The processing of the debugging data in step 103 specifically includes: performing predetermined data format conversion on the loading data, and/or parsing the command parameter configuration data. . The above is a further detailed description of the present invention in connection with the specific embodiments, and the specific implementation of the invention is not limited to the description. It will be apparent to those skilled in the art that the present invention may be made without departing from the spirit and scope of the invention.

Claims

权 利 要 求 书 Claim
1. 一种调试系统, 包括: 核簇、 数据池、 数据采集模块、 数据传输模块、 时钟管 理模块和调试处理模块; 所述核簇包括至少一个 IP核, 所述 IP核包括至少一 个集成元件;所述时钟管理模块设置为产生时钟信号驱动所述 IP核中的集成元 件和所述数据采集模块工作;所述数据采集模块设置为采集所述 IP核中集成元 件的数据获得采样数据, 并将所述采样数据通过所述数据传输模块传输给所述 调试处理模块; 所述调试处理模块设置为对接收到的采样数据进行处理, 并产 生相应的调试数据通过所述数据传输模块传输给所述数据池; 所述数据池设置 为对所述调试数据进行处理, 并将处理后的数据加载到对应的所述集成元件的 输入。 A debugging system, comprising: a core cluster, a data pool, a data acquisition module, a data transmission module, a clock management module, and a debugging processing module; the core cluster includes at least one IP core, and the IP core includes at least one integrated component The clock management module is configured to generate a clock signal to drive the integrated component in the IP core and the data acquisition module to work; the data acquisition module is configured to collect data of the integrated component in the IP core to obtain sampling data, and And transmitting, by the data transmission module, the debugging processing module; the debugging processing module is configured to process the received sampling data, and generate corresponding debugging data to be transmitted to the office through the data transmission module. The data pool is configured to process the debug data and load the processed data to an input of the corresponding integrated component.
2. 如权利要求 1所述的调试系统, 所述调试数据至少包括: 加载数据和命令参数 配置数据中的一种; 所述数据池设置为对所述加载数据进行预定的数据格式转 换, 和 /或对所述命令参数配置数据进行解析。 2. The debugging system of claim 1, wherein the debug data comprises at least one of: load data and command parameter configuration data; the data pool is configured to perform a predetermined data format conversion on the load data, and / / Analyze the command parameter configuration data.
3. 如权利要求 2所述的调试系统, 其中, 所述数据采集模块包括: 多路选择器和 控制寄存器; 所述控制寄存器设置为在所述数据池的配置下, 产生控制信号给 所述多路选择器; 所述多路选择器设置为根据所述控制信号, 选择相应的采样 数据传输给所述数据传输模块。 3. The debugging system of claim 2, wherein the data acquisition module comprises: a multiplexer and a control register; the control register is configured to generate a control signal to the a multiplexer; the multiplexer is configured to select, according to the control signal, corresponding sampling data to be transmitted to the data transmission module.
4. 如权利要求 1-3任一项所述的调试系统, 其中, 所述数据传输模块包括: 数据 缓存模块和总线桥; 所述数据缓存模块设置为在所述时钟管理模块的驱动下缓 存所述数据模块输出的采样数据和所述调试处理模块产生的调试数据; 所述总 线桥设置为在所述时钟管理模块的驱动下在所述数据缓存模块与所述调试处理 模块之间传输数据。 The debugging system according to any one of claims 1 to 3, wherein the data transmission module comprises: a data cache module and a bus bridge; the data cache module is configured to be cached by the clock management module The sampling data output by the data module and the debug data generated by the debug processing module; the bus bridge is configured to transmit data between the data cache module and the debug processing module under the driving of the clock management module .
5. 如权利要求 4所述的调试系统, 其中, 所述数据缓存模块包括第一 FIFO数据 缓存器和第一 FIFO缓存控制器;所述第一 FIFO缓存控制器设置为控制所述第 一 FIFO数据缓存器对采样数据进行缓存和输出;所述第一 FIFO数据缓存器设 置为在时钟管理模块的驱动下缓存所述数据模块输出的采样数据, 并且当产生 将满信号时, 将将满信号传输到所述时钟管理模块; 所述时钟管理模块还设置 为根据所述将满信号关闭对应的所述集成元件。 如权利要求 5所述的调试系统, 其中, 所述数据缓存模块还包括第二 FIFO数 据缓存器和第二 FIFO缓存控制器; 所述第二缓存控制器设置为控制所述第二 FIFO数据缓存器对所述调试数据进行缓存和输出; 所述第二 FIFO数据缓存器 设置为在所述时钟管理模块的驱动下缓存所述调试数据, 并且当产生将满信号 时, 将将满信号传输给所述调试处理模块; 所述调试处理模块还设置为接收到 将满信号后停止发送调试数据给所述第二 FIFO数据缓存器。 如权利要求 6所述的调试系统, 其中, 所述 IP核包括 CUP、 DSP和硬件加速 器中的至少一种集成元件。 一种调试方法, 包括以下步骤: 5. The debugging system of claim 4, wherein the data buffering module comprises a first FIFO data buffer and a first FIFO buffer controller; the first FIFO buffer controller being configured to control the first FIFO The data buffer buffers and outputs the sampled data; the first FIFO data buffer is configured to buffer the sampled data output by the data module under the driving of the clock management module, and when the full signal is generated, the full signal is to be Transmitting to the clock management module; the clock management module is further configured to turn off the corresponding integrated component according to the full signal. The debugging system of claim 5, wherein the data buffering module further comprises a second FIFO data buffer and a second FIFO buffer controller; the second cache controller is configured to control the second FIFO data buffer The buffer data is buffered and outputted; the second FIFO data buffer is configured to buffer the debug data under the driving of the clock management module, and when a full signal is generated, the full signal is transmitted to The debug processing module is further configured to stop sending debug data to the second FIFO data buffer after receiving a full signal. The debug system of claim 6, wherein the IP core comprises at least one integrated component of a CUP, a DSP, and a hardware accelerator. A debugging method that includes the following steps:
在时钟管理模块的驱动下采集核簇中至少一个 IP 核中的至少一个集成元 件的数据获得采样数据;  Acquiring data of at least one integrated component in at least one IP core in the core cluster to obtain sampling data, driven by a clock management module;
对采样数据进行处理产生相应的调试数据;  Processing the sampled data to generate corresponding debug data;
对所述调试数据进行处理, 将处理后的调试数据加载到对应的所述集成元 件的输入。 如权利要求 8所述的调试方法, 其中, 所述采集核簇中至少一个 IP核中的至少 一个集成元件的数据之后, 对采集到的数据进行处理之前还包括:  The debug data is processed, and the processed debug data is loaded into the input of the corresponding integrated component. The debugging method according to claim 8, wherein, after the collecting data of the at least one integrated component of the at least one IP core in the core cluster, before processing the collected data, the method further comprises:
根据接收的控制信号选择出相应的采样数据。 如权利要求 9所述的调试方法, 其中, 所述调试数据至少包括: 加载数据和命 令参数配置数据中的一种;  Corresponding sampling data is selected according to the received control signal. The debugging method according to claim 9, wherein the debug data includes at least one of: load data and command parameter configuration data;
所述对所述调试数据进行处理具体包括:  The processing the debugging data specifically includes:
对所述加载数据进行预定的数据格式转换,和 /或解析所述命令参数配置数 据。  Performing a predetermined data format conversion on the load data, and/or parsing the command parameter configuration data.
PCT/CN2013/084223 2012-09-25 2013-09-25 Commissioning system and method WO2014048327A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210361208.7A CN103678078B (en) 2012-09-25 2012-09-25 A kind of debug system and method
CN201210361208.7 2012-09-25

Publications (1)

Publication Number Publication Date
WO2014048327A1 true WO2014048327A1 (en) 2014-04-03

Family

ID=50315722

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/084223 WO2014048327A1 (en) 2012-09-25 2013-09-25 Commissioning system and method

Country Status (2)

Country Link
CN (1) CN103678078B (en)
WO (1) WO2014048327A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105245398A (en) * 2015-09-07 2016-01-13 上海交通大学 Multichannel parallel detection system for massive LOC (Lab-on-Chip) signal processing
CN106294056B (en) * 2016-08-10 2019-04-02 北京网迅科技有限公司杭州分公司 Chip adjustment method and device
CN106649140A (en) * 2016-12-29 2017-05-10 深圳前海弘稼科技有限公司 Data processing method, apparatus and system
CN107832174A (en) * 2017-11-09 2018-03-23 郑州云海信息技术有限公司 A kind of closed-Loop Analysis method and system for USB high speed signals

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493847A (en) * 2008-01-22 2009-07-29 中兴通讯股份有限公司 Communication chip system chip tracing and debugging method and apparatus
CN101770420A (en) * 2008-12-30 2010-07-07 上海摩波彼克半导体有限公司 System on chip (SOC) debugging structure and method for realizing output of debugging information
CN102411535A (en) * 2011-08-02 2012-04-11 上海交通大学 Navigating-SoC (System On Chip) simulating, verifying and debugging platform

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100458731C (en) * 2007-02-12 2009-02-04 北京中星微电子有限公司 Method for checking IC design with hardware logic
US10198333B2 (en) * 2010-12-23 2019-02-05 Intel Corporation Test, validation, and debug architecture
CN102360329B (en) * 2011-09-29 2014-11-05 西北工业大学 Bus monitoring and debugging control device and methods for monitoring and debugging bus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493847A (en) * 2008-01-22 2009-07-29 中兴通讯股份有限公司 Communication chip system chip tracing and debugging method and apparatus
CN101770420A (en) * 2008-12-30 2010-07-07 上海摩波彼克半导体有限公司 System on chip (SOC) debugging structure and method for realizing output of debugging information
CN102411535A (en) * 2011-08-02 2012-04-11 上海交通大学 Navigating-SoC (System On Chip) simulating, verifying and debugging platform

Also Published As

Publication number Publication date
CN103678078A (en) 2014-03-26
CN103678078B (en) 2016-05-11

Similar Documents

Publication Publication Date Title
WO2020177283A1 (en) Axi2wb bus bridge implementation method and device, equipment and storage medium
US9195610B2 (en) Transaction info bypass for nodes coupled to an interconnect fabric
WO2009043225A1 (en) A multi-core processor, its frequency conversion device and a method of data communication between the cores
US9639447B2 (en) Trace data export to remote memory using remotely generated reads
WO2014048327A1 (en) Commissioning system and method
WO2016192217A1 (en) Apb bus bridge
JP7421486B2 (en) Debugging solution for multi-core processors
EP2434404B1 (en) Method and arrangement for streaming data profiling
WO2012155674A1 (en) Concurrent access method and system and interface device
EP2557501B1 (en) Circuit arrangement and method for testing same
TW201248422A (en) Method for debugging loongson cpu and south/north bridge chips and device thereof
Ramagundam et al. Design and implementation of high-performance master/slave memory controller with microcontroller bus architecture
Jeemon Pipelined 8-bit RISC processor design using Verilog HDL on FPGA
WO2023103297A1 (en) System and method for optimizing ahb bus data transmission performance, and server
Geier et al. In situ latency monitoring for heterogeneous real-time systems
Ramagundam et al. AMBA-BASED AHB MASTER/SLAVE MEMORY CONTROLLER DESIGN
CN211653643U (en) Interface conversion circuit, chip and electronic equipment
Lei et al. Design and implementation of DMA transfers in WISHBONE interface
Roy et al. On efficient minimization techniques of logical constituents and sequential data transmission for digital IC
CN103309798B (en) A kind of DSP debugging apparatus
Jin et al. Design and implementation of multi-serial monitoring system based on DSP and FPGA
Zhang et al. UART integration in OR1200 based SoC Design
An et al. Design and implementation of Wishbone-AHB bus bridge
Chi et al. An intelligent interface design method based on DSP and FPGA
Zhaohui Design of Multi-DSP Digital Signal Processing System

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13841053

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13841053

Country of ref document: EP

Kind code of ref document: A1