CN112527625A - 多处理器设备 - Google Patents

多处理器设备 Download PDF

Info

Publication number
CN112527625A
CN112527625A CN202010977278.XA CN202010977278A CN112527625A CN 112527625 A CN112527625 A CN 112527625A CN 202010977278 A CN202010977278 A CN 202010977278A CN 112527625 A CN112527625 A CN 112527625A
Authority
CN
China
Prior art keywords
processor
debugging
program
data
program counter
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.)
Pending
Application number
CN202010977278.XA
Other languages
English (en)
Inventor
松井司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of CN112527625A publication Critical patent/CN112527625A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/321Program or instruction counter, e.g. incrementing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • 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/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3644Software debugging by instrumenting at runtime
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4831Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
    • G06F9/4837Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority time dependent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供多处理器设备。多处理器设备包括第一处理器和第二处理器,其中,多处理器设备被构造为,当要通过使用第二处理器进行对第一处理器的调试时,使第二处理器参照第一处理器的程序计数器的值,并通过使用从程序计数器参照的值来从存储器获取指令。

Description

多处理器设备
技术领域
本发明总体上涉及一种多处理器设备,尤其涉及一种用于实现多处理器设备上的更高效的调试操作的技术。
背景技术
在程序的开发中,在调试上花费了大量时间,并且需要高效地进行调试。而且,当调试进行周期性控制的程序的操作时,需要在不停止程序操作的情况下参照程序的转换和数据的信息。为了进行这样的调试,已知使用调试专用硬件的方法、使用处理器进行调试的方法等。
作为由多个处理器形成的多处理器的调试方法,已知日本特开2007-004364号公报公开的方法。在日本特开2007-004364号公报中,使用多个处理器中的一个或更多个处理器进行调试,以对其他调试对象处理器进行调试。在该方法中,使用看门狗定时器等来检测调试对象处理器中的异常。
然而,使用上述调试专用硬件的方法的问题在于,只是为了仅在调试时使用的调试专用硬件而添加该硬件将导致电路规模的增大。
另外,如日本特开2007-004364号公报所公开的多处理器的调试方法的问题在于,在某些情况下,当要周期性地参照数据时,不能立即参照调试对象处理器的数据,或者由于条件分支等导致的附加处理操作而无法参照期望的参照数据。
发明内容
根据本发明的一方面,一种多处理器设备包括第一处理器和第二处理器,其中,所述多处理器设备被构造为,当要通过使用所述第二处理器进行对所述第一处理器的调试时,使所述第二处理器参照所述第一处理器的程序计数器的值,并通过使用从所述程序计数器参照的值来从存储器获取指令。
本发明实现了多处理器设备上的更高效的调试操作。
通过以下(参照附图)对示例性实施例的描述,本发明的其他特征将变得清楚。
附图说明
包含在说明书中并构成说明书的一部分的附图例示了本发明的实施例,并且与文字说明一起用来解释本发明的原理。
图1是示出根据实施例的多处理器设备中包括的第一处理器的功能和布置的框图;
图2是示出根据实施例的多处理器设备中包括的第一处理器和第二处理器的、在调试模式下使用的功能和布置的框图;
图3A和图3B是示出调试对象程序部分与调试程序部分之间的位置关系的示例的图;
图4A和图4B是示出调试对象程序部分与调试程序部分之间的位置关系的另一示例的图;
图5A和图5B是示出调试对象程序部分与调试程序部分之间的位置关系的又一示例的图;
图6是示出通过根据实施例的调试方法执行程序的调试的序列的说明图;并且
图7是按时序示出作为调试对象的第一处理器和作为调试处理器的第二处理器的处理操作的时序图。
具体实施方式
下文中,将参照附图详细描述实施例。注意,以下实施例并不意图限制本发明的范围。在实施例中描述了多个特征,但是并不限制发明需要所有这些特征,并且这些特征可以适当地组合。此外,在附图中,对相同或类似的构造赋予相同的附图标记,并且将省略其冗余描述。
当要调试进行诸如电机控制等的周期性控制的程序时,需要在不停止该程序的操作的情况下参照数据。在实施例中,为了在没有调试专用模块的多处理器中进行调试,调试处理器将通过参照调试对象处理器的程序计数器来获取指令。这将允许调试处理器与调试对象处理器同步进行调试,而无需停止程序的操作。
图1是示出根据实施例的多处理器设备中包括的第一处理器100的功能和布置的框图。多处理器设备还包括具有与图1所示的第一处理器100类似的布置的至少另一个处理器。另选地,多处理器设备可以包括多个处理器,该多个处理器具有在能够实现根据该实施例的调试功能的程度内的彼此不同的布置。该实施例涉及具有多处理器布置(其包括多个处理器)的多处理器设备的调试装置,并且尤其涉及当使用多个处理器中的一些处理器进行调试时使用的调试装置。
第一处理器100包括程序计数器101、本地指令存储器102、功能单元103、寄存器文件104、本地数据存储器105和总线接口106。
程序计数器101也被称为指令指针(IP)和顺序控制计数器(SCC),并保持要用于参照本地指令存储器102的地址。多处理器设备中包括的各个处理器包括其自身的固有程序计数器。
本地指令存储器102保持形成要在第一处理器100中执行的程序的指令。第一处理器100被形成为,能够在正常操作时(即,在未设置调试模式时)通过使用其自身的程序计数器101中包括的值(地址),从本地指令存储器102获取指令,并且将获取的指令传送到功能单元103。
功能单元103接收作为基于来自程序计数器101的值(地址)参照本地指令存储器102的结果而获得的指令,并处理该指令。功能单元103对已经参照的指令进行解码,并且根据解码结果执行各种处理。由功能单元103进行的处理操作包括使用寄存器文件104的数据和/或本地数据存储器105的数据的计算、与寄存器文件104的数据交换以及与本地数据存储器105的数据交换。
寄存器文件104由多个寄存器形成,并且保持用于要由功能单元103进行的计算和处理操作的设置、参数等。功能单元103可以对寄存器文件104中包括的任意寄存器进行读出和写入。
本地数据存储器105保持用于要由第一处理器100执行的各个程序的数据。
总线接口106是第一处理器100用来访问外部的接口,并且连接到外围模块(诸如定时器,PWM(脉冲宽度调制)等)、共享存储器、外部总线接口等。
图2是示出根据本实施例的多处理器设备中包括的第一处理器100和第二处理器200的、在调试模式下使用的功能和布置的框图。在图2所示的示例中,第一处理器100是要被调试的处理器(即,调试对象),第二处理器200是要对调试对象处理器进行调试的处理器(即,调试处理器)。第二处理器200具有与第一处理器100类似的布置。包括在第二处理器200中的程序计数器201、本地指令存储器202、功能单元203、寄存器文件204、本地数据存储器205和总线接口206分别对应于第一处理器100的程序计数器101、本地指令存储器102、功能单元103、寄存器文件104、本地数据存储器105和总线接口106。
多处理器设备被布置为使得第二处理器200可以参照在第一处理器100的程序计数器101中保持的值,并且使得第二处理器200可以参照第一处理器100的寄存器文件104的数据和本地数据存储器105的数据。例如通过借助于多处理器设备中的布线将第一处理器100和第二处理器200适当地连接来实现这种布置。
如上所述,在正常操作时,第一处理器100和第二处理器200将分别使用其自身的程序计数器(即程序计数器101和程序计数器201)来获取指令。
在调试模式下,当要由作为调试处理器的第二处理器200进行对作为调试对象的第一处理器100的调试时,第二处理器200将被布置为进行以下处理操作。
(1)参照保持在第一处理器100的程序计数器101中的值。
(2)使用通过参照程序计数器101获得的值,从第二处理器200的本地指令存储器202中获取指令,并将获取的指令传送至第二处理器200的功能单元203。
在通过使用通过参照第一处理器100的程序计数器101获得的值而获取的指令需要将第一处理器100的数据用作参照的情况下,第二处理器200的功能单元203参照由第一处理器100保持的数据。例如,在所获取的指令需要获得第一处理器100的寄存器文件104的数据的情况下,第二处理器200的功能单元203将参照第一处理器100的寄存器文件104。另选地,在所获取的指令需要获得第一处理器100的本地数据存储器105的数据的情况下,第二处理器200的功能单元203将参照第一处理器100的本地数据存储器105。
第二处理器200经由总线接口206将作为参照操作的结果而获得的第一处理器100的数据和第一处理器100的程序转换信息存储在转储目的地中。
通过基于要在第一处理器100中执行的调试对象程序来考虑处理要参照的期望执行时间数据的指令的位置(即地址),来生成要由第二处理器200执行的调试程序。结果,第二处理器200的本地指令存储器202将用于对调试对象程序进行调试的调试程序保持在与存储要在第一处理器100中执行的调试对象程序的位置相关联的位置处。
图3A和图3B是示出调试对象程序部分301与调试程序部分302之间的位置关系的示例的图。调试对象程序部分301由四个指令形成,即在第一处理器100的本地指令存储器102中的保持在地址“0x30”处的“LOAD A@P1”(将数据A加载到第一处理器100中)、保持在地址“0x34”处的“LOAD B@P1”(将数据B加载到第一处理器100中)、保持在地址“0x38”处的“C=A×B”(将C设置为A与B相乘的结果)、以及保持在地址“0x3c”处的“STORE C@P1”(将数据C存储在第一处理器100中)。
调试程序部分302由四个指令形成,即在第二处理器200的本地指令存储器202中的保持在地址“0x30”处的“NOP”(不执行任何操作)、保持在地址“0x34”处的“LOAD A@P1”(加载已加载到第一处理器100中的数据A)、保持在地址“0x38”处的“STORE A@P2”(将数据A存储在第二处理器200中)、以及保持在地址“0x3c”处的“NOP”。
在图3A和图3B所示的示例中,调试程序部分302在本地指令存储器202中的起始地址与调试对象程序部分301在本地指令存储器102中的起始地址相匹配。在这种情况下,可以布置为使得第二处理器200将参照保持在第一处理器100的程序计数器101中的值,从第二处理器200的本地指令存储器202中获取保持在由在参照操作中获得的程序计数器101的值所指示的地址处的指令,并且将获取的指令传送到功能单元203。
图4A和图4B是示出调试对象程序部分301与调试程序部分302之间的位置关系的另一示例的图。在第一处理器100的本地指令存储器102中保持的调试对象程序部分301的地址与图3A和图3B所示的示例中的地址相同。然而,在第二处理器200的本地指令存储器202中存储调试程序部分302的地址与存储相应的调试对象程序部分301的地址不匹配。在图4A和图4B所示的示例中,调试程序部分302被存储在各自通过将“4”与存储调试对象程序部分301的地址相加而获得的地址处。
在这种情况下,可以布置为使得第二处理器200将参照第一处理器100的程序计数器101中保持的值,从第二处理器200的本地指令存储器202中获取在通过将“4”与由从程序计数器101参照的值所指示的地址相加而获得的地址处保持的指令,并且将获取的指令传送到功能单元203。
图5A和图5B是示出调试对象程序部分301与调试程序部分302之间的位置关系的又一示例的图。在图5A和图5B所示的示例中,调试程序部分302被存储在各自通过从存储调试对象程序部分301的地址中减去8而获得的地址处。在这种情况下,可以布置为使得第二处理器200将参照保持在第一处理器100的程序计数器101中的值,从第二处理器200的本地指令存储器202中获取在通过从由在程序计数器101中参照的值所指示的地址中减去“8”而获得的地址处保持的指令,并将获取的指令传送到功能单元203。
图6是示出通过根据实施例的调试方法执行程序的调试的序列的说明图。作为调试对象的第一处理器100加载数据并使用该数据进行乘法运算。为了确认由第一处理器100加载的数据,作为调试处理器的第二处理器200参照该数据并转储该数据。
在图6的上部的波形图中,第一行示出了共同输入到第一处理器100和第二处理器200的时钟信号。第二行示出了保持在第一处理器100的程序计数器101中的值。当设置调试模式时,第二处理器200也将使用这些值来获取相应的指令。第三行示出了当已经获取了第二行中所示的程序计数器101的相应值时,要由作为调试对象的第一处理器100执行的各个指令。在图6所示的示例中,当程序计数器101的值为“0x30”时以及当值为“0x34”时,第一处理器100加载数据,当值为“0x38”时,第一处理器100通过使用加载数据来进行乘法运算,并且当值为“0x3c”时,第一处理器100存储乘法结果。第四行示出了当已经获取了第二行中所示的程序计数器101的相应值时,要由作为调试处理器的第二处理器200执行的各个指令。在图6所示的示例中,当程序计数器101中的值为“0x30”时以及当值为“0x3c”时,第二处理器200执行NOP指令,当值为“0x34”时,第二处理器200加载当值为“0x30”时由第一处理器100加载的数据,并且当值为“0x38”时,第二处理器200进行将加载的数据存储在转储目的地中以进行调试的处理。
图7是按时序示出作为调试对象的第一处理器100和作为调试处理器的第二处理器200的处理操作的时序图。图7示出了如下状态,其中,正以周期T反复地(即,周期性地)执行图6所示的第二处理器200的数据参照操作。在图7所示的示例中,第一处理器100执行周期性控制程序以进行周期性控制。因此,用于形成周期性控制程序的指令被存储在本地指令存储器102中。周期性控制程序包括调试对象部分和未被设置为调试对象的部分。在图7所示的示例中,由S101、S102和S104表示的并且要在参照对象信息拥有状态中设置第一处理器100的程序部分是调试对象部分,而除了这些之外的、包括S103的附加处理的部分是未被设置为调试对象的部分。
在S101中,第一处理器100改变为参照对象信息拥有状态。在S101中,进行对参照对象信息的读出、计算等。对应于S101的处理称为参照信息拥有处理。由于第二处理器200将通过使用第一处理器100的程序计数器101进行操作,因此第二处理器200将在S201中对参照对象信息进行参照,而该信息被第一处理器100拥有。S102中的参照信息拥有处理和S202中的参照处理分别类似于S101和S202的处理操作。在S103中,生成诸如分支处理、存储器访问中的附加延迟等的附加处理操作,并且在第一处理器100中生成附加时间。然而,由于第二处理器200被形成为与第一处理器100的参照信息拥有处理同步地开始调试操作,因此在S103中正在进行附加处理操作的同时,第二处理器200将待机而不参照数据。随后,在第一处理器100在S104中以与S101和S102类似的方式拥有参照对象信息之后,第二处理器200将在S203中参照第一处理器100的数据。
在根据本实施例的多处理器设备中,作为调试处理器的第二处理器200可以通过使用作为调试对象的第一处理器100的程序计数器101中保持的值来获取指令。这允许与调试对象的行为同步地参照数据。
另外,在根据本实施例的多处理器设备中,在要从多个处理器设置调试处理器的布置中,可以与调试对象的行为同步地参照期望的数据,而无需添加调试专用硬件。
通常,当要将特定处理器用于调试多处理器布置中的其他处理器的操作时,存在以下问题:由于无法掌握调试对象处理器的操作的详细进度状态,因此难以在计算操作期间执行数据参照操作。在根据本实施例的多处理器设备中,可以通过生成与调试对象程序的程序计数器相对应的调试程序、使调试处理器参照调试对象处理器的程序计数器、并使用从调试对象处理器的程序计数器参照的值获取指令来执行调试,从而以与调试对象处理器的操作的进度状态同步的形式执行调试。结果,在计算操作期间进行数据参照操作变得更容易,从而允许更高效且有效地进行调试。
另外,在根据本实施例的多处理器设备中,调试对象程序的存储地址和相应调试程序的存储地址具有预定的关系。因此,当要对调试对象程序进行调试时,不需要单独进行对相应调试程序的存储地址的搜索,并且可以从调试对象程序本身的存储地址指定调试程序的存储地址。
上面已经描述了根据该实施例的多处理器设备的操作和布置。这些实施例仅是示例,并且对于本领域技术人员应当显而易见的是,可以对部件和处理的组合进行各种变型,并且这些变型落入本发明的范围内。
虽然参照示例性实施例对本发明进行了描述,但是应当理解,本发明并不限于所公开的示例性实施例。应当对所附权利要求的范围给予最宽的解释,以使其涵盖所有这些变型以及等同的结构和功能。

Claims (6)

1.一种多处理器设备,其包括第一处理器和第二处理器,其中,所述多处理器设备被构造为,当要通过使用所述第二处理器进行对所述第一处理器的调试时,使所述第二处理器参照所述第一处理器的程序计数器的值,并通过使用从所述程序计数器参照的值来从存储器获取指令。
2.根据权利要求1所述的多处理器设备,其中,所述第二处理器的功能单元基于通过使用从所述程序计数器参照的值而获取的所述指令,来参照所述第一处理器中保持的数据。
3.根据权利要求1所述的多处理器设备,其中,所述第一处理器和所述第二处理器中的各个包括固有程序计数器。
4.根据权利要求3所述的多处理器设备,其中,在正常操作时,所述第二处理器被构造为,通过使用所述第二处理器的程序计数器的值,来从所述存储器获取指令。
5.根据权利要求1所述的多处理器设备,其中,所述存储器将用于对调试对象程序进行调试的程序,保持在与存储有要由所述第一处理器执行的调试对象程序的位置相关联的位置处。
6.根据权利要求1所述的多处理器设备,其中,所述第一处理器执行用于进行周期性控制的程序,并且所述程序包括被设置为调试对象的部分和未被设置为调试对象的部分。
CN202010977278.XA 2019-09-19 2020-09-17 多处理器设备 Pending CN112527625A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019170809A JP7378254B2 (ja) 2019-09-19 2019-09-19 マルチプロセッサデバイス
JP2019-170809 2019-09-19

Publications (1)

Publication Number Publication Date
CN112527625A true CN112527625A (zh) 2021-03-19

Family

ID=72355840

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010977278.XA Pending CN112527625A (zh) 2019-09-19 2020-09-17 多处理器设备

Country Status (4)

Country Link
US (1) US20210089310A1 (zh)
EP (1) EP3796175B1 (zh)
JP (1) JP7378254B2 (zh)
CN (1) CN112527625A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010032305A1 (en) * 2000-02-24 2001-10-18 Barry Edwin F. Methods and apparatus for dual-use coprocessing/debug interface
US20100262811A1 (en) * 2009-04-08 2010-10-14 Moyer William C Debug signaling in a multiple processor data processing system
US20120311266A1 (en) * 2011-06-02 2012-12-06 Renesas Electronics Corporation Multiprocessor and image processing system using the same
US20160274992A1 (en) * 2015-03-16 2016-09-22 Wistron Neweb Corp. Method and multi-core processing system for tracing program execution state
EP3327573A1 (en) * 2016-11-28 2018-05-30 Renesas Electronics Corporation Multi-processor and multi-processor system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100255026B1 (ko) * 1994-12-28 2000-05-01 디. 크레이그 노룬드 마이크로프로세서 및 디버그 시스템
JP3846939B2 (ja) * 1995-08-30 2006-11-15 フリースケール セミコンダクター インコーポレイテッド データプロセッサ
US7793261B1 (en) * 1999-10-01 2010-09-07 Stmicroelectronics Limited Interface for transferring debug information
JP4633553B2 (ja) 2005-06-22 2011-02-16 ルネサスエレクトロニクス株式会社 デバッグシステム、デバッグ方法およびプログラム
US8239836B1 (en) * 2008-03-07 2012-08-07 The Regents Of The University Of California Multi-variant parallel program execution to detect malicious code injection
JP5329983B2 (ja) * 2009-01-08 2013-10-30 株式会社東芝 デバッグ支援装置
JP2013061783A (ja) * 2011-09-13 2013-04-04 Toyota Motor Corp マルチコア・プロセッサ
US9710349B2 (en) * 2013-11-05 2017-07-18 Texas Instruments Incorporated Storing first computer trace information in memory of second computer
JP6786448B2 (ja) * 2017-06-28 2020-11-18 ルネサスエレクトロニクス株式会社 半導体装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010032305A1 (en) * 2000-02-24 2001-10-18 Barry Edwin F. Methods and apparatus for dual-use coprocessing/debug interface
US20100262811A1 (en) * 2009-04-08 2010-10-14 Moyer William C Debug signaling in a multiple processor data processing system
US20120311266A1 (en) * 2011-06-02 2012-12-06 Renesas Electronics Corporation Multiprocessor and image processing system using the same
US20160274992A1 (en) * 2015-03-16 2016-09-22 Wistron Neweb Corp. Method and multi-core processing system for tracing program execution state
EP3327573A1 (en) * 2016-11-28 2018-05-30 Renesas Electronics Corporation Multi-processor and multi-processor system

Also Published As

Publication number Publication date
EP3796175B1 (en) 2024-01-10
JP2021047729A (ja) 2021-03-25
US20210089310A1 (en) 2021-03-25
EP3796175A1 (en) 2021-03-24
JP7378254B2 (ja) 2023-11-13

Similar Documents

Publication Publication Date Title
US7266725B2 (en) Method for debugging reconfigurable architectures
US8549258B2 (en) Configurable processing apparatus and system thereof
EP2642392B1 (en) Semiconductor integrated circuit device and system using the same
JP5611756B2 (ja) プログラム・フロー制御
US20080229141A1 (en) Debugging method
JPS6319854Y2 (zh)
KR100303712B1 (ko) 파이프라인기계에서의어드레스파이프라인을위한방법및장치
JP4865016B2 (ja) プロセッサ
US5872954A (en) Method of monitoring registers during emulation
CN112527625A (zh) 多处理器设备
CN115016993A (zh) 适用于异构冗余的错误清洗方法、装置和计算机设备
US20170228304A1 (en) Method and device for monitoring the execution of a program code
TW201734769A (zh) 處理向量指令
US10540222B2 (en) Data access device and access error notification method
CN110462603B (zh) 微型计算机
US9032255B2 (en) Semiconductor device and control method thereof
US9342359B2 (en) Information processing system and information processing method
JP3171615B2 (ja) データ転送のリトライ制御方式
JP2607319B2 (ja) プログラマブルコントローラ
Elhorst Lowering C11 atomics for ARM in LLVM
JPS6220032A (ja) 情報処理装置
JP2004185060A (ja) マイクロコンピュータ
SU1501065A1 (ru) Устройство дл контрол хода программ
EP0305530A1 (en) High-speed floating point arithmetic unit
JP2000347880A (ja) 割り込みコントローラおよびマイクロコンピュータ

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination