EP1556765A1 - Übertragung von generischen digitalnachrichten durch eine überwachungsschaltung eines mikroprozessors - Google Patents

Übertragung von generischen digitalnachrichten durch eine überwachungsschaltung eines mikroprozessors

Info

Publication number
EP1556765A1
EP1556765A1 EP02785558A EP02785558A EP1556765A1 EP 1556765 A1 EP1556765 A1 EP 1556765A1 EP 02785558 A EP02785558 A EP 02785558A EP 02785558 A EP02785558 A EP 02785558A EP 1556765 A1 EP1556765 A1 EP 1556765A1
Authority
EP
European Patent Office
Prior art keywords
bits
groups
monitoring circuit
message
identifier
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.)
Withdrawn
Application number
EP02785558A
Other languages
English (en)
French (fr)
Inventor
Laurent Regnier
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.)
STMicroelectronics SA
Original Assignee
STMicroelectronics SA
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 STMicroelectronics SA filed Critical STMicroelectronics SA
Publication of EP1556765A1 publication Critical patent/EP1556765A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • 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

Definitions

  • the present invention relates to microprocessor testing. It relates more particularly to a method and a device for transmitting digital data between a test circuit integrated in a microprocessor chip and an analysis tool.
  • FIG. 1 schematically represents an integrated circuit 10 comprising a microprocessor ( ⁇ P) 12, an internal memory (MEM) 14 and input / output terminals (I / O) 16.
  • the microprocessor 12 is intended to execute a program or software stored in memory 14. Under the control of the program, the microprocessor 12 can process data supplied by the input / output terminals 16 or stored in memory 14 and supply data by the input / output terminals 16
  • a monitoring circuit 18 (TEST) is generally integrated into the integrated circuit 10.
  • the monitoring circuit 18 is adapted to read specific data supplied by the microprocessor 12 during the course of a program, and possibly to carry out processing on the data read.
  • Monitoring terminals 22 connect the monitoring circuit 18 to an analysis tool 24.
  • the analysis tool 24 can perform processing of the signals received, for example as a function of commands supplied by a user, and provide a detailed analysis of the operation of the microprocessor 12. In particular, the analysis tool 24 can determine the sequence of program instructions actually executed by the microprocessor 12.
  • the number of monitoring terminals 22 for a conventional monitoring circuit 18 can be of the same order of magnitude as the number of input / output terminals 16 of the microprocessor 12, for example from 200 to 400.
  • the monitoring terminals 22 as well as the connections of the monitoring circuit 18 occupy a large surface area of silicon, which leads to an undesirable increase in the cost of the circuit.
  • a first version of the integrated circuit 10 including the monitoring circuit 18 and the monitoring terminals 22 is produced in small quantities to carry out the development of the microprocessor 12. After this development, a version of the integrated circuit 10 cleared of the monitoring circuit 18 and of the monitoring terminals 22 is marketed. This involves the production of two versions of the integrated circuit, which is labor intensive and relatively expensive. In addition, the final chip is not identical to the chip tested.
  • monitoring circuit 18 which occupies a reduced surface area and requires only a reduced number of monitoring terminals 22, which reduces the cost of the monitoring circuit 18.
  • the monitoring circuit 18 can then be left on the integrated circuit 10 finally marketed.
  • the standard IEEE-ISTO-5001 in preparation offers in its version of 1999, accessible for example on the site www.ieee-isto.org/Nexus5001, a particular protocol for the exchange of messages between a monitoring circuit 18 and a analysis tool 24 for a monitoring circuit 18 requiring only a reduced number of monitoring terminals 22.
  • the IEEE-ISTO-5001 standard provides for several standardized messages, called public messages, the characteristics of which are fixed once and for all and cannot be modified by the users of the chip 10.
  • public messages there are in particular the messages of program monitoring and data messages.
  • Program follow-up messages provide information on the order in which the program instructions are executed by the microprocessor 12. This is for example a message indicating that a jump has taken place during the execution of the program executed by the microprocessor 12.
  • the data messages group the other public messages that can be transmitted by the monitoring circuit 18 and in particular provide information on the data processed by the microprocessor 12. This is, for example, a message indicating that a operation of reading or writing data in an area of memory 14 was carried out by microprocessor 12.
  • Each public message is made up of a succession of bits divided into several juxtaposed groups comprising a header group and secondary groups, each group coding a particular datum.
  • the header group corresponds to an identifier of the type of message. It consists of a fixed and identical number of bits for all public messages.
  • the number of secondary groups of a given public message and the size of each of them are fixed by the value of the identifier of the message.
  • the secondary groups can correspond to a given representative of the address of the jump destination instruction and of the number of instructions executed by the microprocessor 12 since the last transmission of a jump message.
  • the secondary groups can correspond to the address of a register in memory 14 where the data is written or read and to the value of the data.
  • the analysis tool 24 From the public messages, in particular, from the program monitoring messages, the analysis tool 24 reconstructs the sequence of instructions executed by the microprocessor 12. The reconstructed sequence of instructions can then be compared to a sequence instructions theoretically executed by the microprocessor 12 so as to determine malfunctions of the microprocessor 12.
  • the standard IEEE-ISTO-5001 also provides for the possibility for users to define specific messages that can be transmitted by the monitoring circuit 18 in addition to the public messages.
  • a specific message is intended to be used when none of the public messages provided for by the standard can fulfill a function desired by the user.
  • a specific message comprises, like a public message, a first group of header bits corresponding to an identifier of the specific message. The arrangement of the other bits of the specific message does not follow any particular rules and can vary considerably from one user to another.
  • the analysis tool 24 connected to the monitoring circuit 18 must include processing means adapted to the processing of specific messages.
  • each user wishes the monitoring circuit 18 to transmit particular information which depends in particular on the architecture which has been defined for the microprocessor 12. The user then tends to favor the use of specific messages over public messages so as to transmit exactly the desired information. This reduces the interest of the IEEE standard. ISTO-5001 since in practice most of the messages transmitted by the monitoring circuit 18 are not public messages. In this case, it is very difficult to provide analysis tools 24 which can be used interchangeably for monitoring circuits 18 designed by different users and which implement different specific messages.
  • the present invention provides for the transmission of adaptable messages, the provision of which follows determined rules so as to be able to easily implement new functions without requiring the definition of specific messages and so as to allow the use of more standardized analysis tools.
  • An advantage of the present invention is that it makes use of messages whose structure is compatible with that of the public messages already provided for by the IEEE-ISTO-5001 standard, which promotes the aforementioned standardization.
  • the present invention provides a method of transmitting digital messages by output terminals of a microprocessor monitoring circuit of a determined type among several types of monitoring circuits and integrated into a microprocessor, each message comprising a message identifier and consisting of several groups of successive and juxtaposed bits, the groups of bits being divided into one or more segments each comprising a determined number of bits, the method consisting in successively transmitting segments associated with the groups of successive bits and juxtaposed comprising a first group of bits corresponding to the identifier and comprising a fixed number of bits whatever the type of monitoring circuit; second groups of bits, at least one of the second groups comprising a fixed number of bits depending on the identifier and the type of monitoring circuit, the number of the other second groups depending on the identifier and being independent of the type of monitoring circuit surveillance; a third group of bits comprising a number of bits greater than unity and dependent on the message to be transmitted; and fourth groups of bits each comprising a number of bits greater than unity and dependent on the message to be transmitted, the
  • said at least one of the second groups is juxtaposed with the first group.
  • said other second groups have a number of bits which depends on the identifier and which is independent of the type of monitoring circuit.
  • said other second groups have a number of bits greater than the unit which depends on the message to be transmitted.
  • the present invention also provides a device for transmitting digital messages by output terminals of a monitoring circuit, of a determined type from among several types of monitoring circuits, integrated into a microprocessor, each message comprising a message identifier, said device comprising means for supplying successive and juxtaposed groups of bits constituting the message, means for dividing the groups of bits into one or more segments each comprising a determined number of bits and means for successively transmitting said segments, the means for supply of groups of bits being adapted to successively supply a first group of bits corresponding to the identifier and comprising an identical fixed number of bits whatever the type of monitoring circuit, second groups of bits, at least one of said second groups comprising a fixed number of bits depending on the identifier and the type of circulation it monitoring, the number of other second groups depending on the identifier and being independent of the type of monitoring circuit, a third group of bits comprising a number of bits greater than unity and dependent on the message to be transmitted and fourth groups of bits each comprising a number of bits greater than unity and dependent on the message
  • FIG. 1 previously described , very schematically represents the architecture of a chip integrating a microprocessor and a monitoring circuit; and FIG. 2 represents an example of a message supplied by the monitoring circuit to an analysis tool according to the present invention.
  • the present invention provides for modifying the structure of public messages already provided for by the IEEE-ISTO-5001 standard so as to allow the transmission of messages adapted to the wishes of different users.
  • FIG. 2 represents a message according to the invention.
  • the bits are represented from the least significant bit on the left of the figure to the most significant bit on the right of the figure.
  • the bits of the message are transmitted by the monitoring circuit 18 in this order.
  • the message comprises a first group of TCODE bits corresponding to a fixed number of identical bits for all the messages.
  • the first group of bits is equal to an identifier of the message.
  • the identifier group can take different other values according to the wishes of the users.
  • the IEEE-ISTO-SOOl standard provides for an identifier group set at six bits. According to the present invention, the number of bits of the identifier group may possibly be increased depending on the number of messages to be provided to satisfy the wishes of users.
  • the TCODE identifier group is juxtaposed with a fixed CUSTOM user group.
  • the number of bits making up the CUSTOM fixed user group is set by the user for each possible identifier value.
  • the CUSTOM fixed user group may possibly contain no bits.
  • the CUSTOM fixed user group can represent any type of data that the user wishes to transmit to the analysis tool 24. It can be the concatenation of different values or a data item originating from processing carried out by the monitoring circuit 18.
  • the CUSTOM fixed user group is followed by several mandatory groups MAND_1 to MAND_N juxtaposed.
  • the number of compulsory groups, the number of bits of each compulsory group and the nature of the data contained in each compulsory group are determined once and for all for each identifier value.
  • the last compulsory group MAND_N of a message according to the invention necessarily comprises a variable number of bits, the other compulsory groups possibly comprising a fixed number greater than unity or a variable number of bits.
  • a group with a variable number of bits consists of at least one bit (possibly equal to 0).
  • the last mandatory group MAD_N is followed by one or more optional user groups CUST_1 at CUSTJS. juxtaposed each with a variable number of bits.
  • the number of optional user groups CUST_1 to CUSTJSF is not defined a priori and may vary for the same identifier and for the same user according to operating conditions of the microprocessor 12.
  • the message structure proposed according to the present invention advantageously uses the data transmission protocol between the monitoring circuit 18 and the analysis tool 24 provided for by the IEEE-ISTO-5001 standard.
  • the bits of successive groups each comprising a fixed number of bits are concatenated to form a single packet having a fixed number of bits.
  • the bits of a group having a fixed number of bits and the bits of a group having a variable number of bits which is juxtaposed and follows the group having a fixed number of bits can also be concatenated to form a single packet having a variable number of bits.
  • the packets thus formed are divided into segments of n bits, where n is for example between 4 and 16, each segment being intended to be transmitted by a bus of n bits.
  • n When the number of bits in a packet is less than n, all the bits are copied into a segment and the most significant bits not used in the segment are given a predetermined value, for example 0.
  • the n least significant bits of the packet When the number of bits of a packet is greater than n, the n least significant bits of the packet are copied bit by bit in a first segment, then the next n least significant bits of the packet are copied bit by bit in a second segment, and so on until each bit of the packet has been copied.
  • the most significant unused bits of the last segment thus formed receive a predetermined value, for example 0.
  • the segments are transmitted subsequently by the n-bit bus in cadence with a clock signal specific to the monitoring circuit 18 To allow the reconstruction of the data packets from the segments, it is planned to transmit with each segment to additional test terminals a transmission code which allows the analysis tool to identify the nature of the data contained in the segment.
  • the IEEE-ISTO-5001 standard provides transmission codes to identify: a message start segment; an intermediate segment of a packet having a fixed or variable number of bits; an end segment of a packet having a variable number of bits, when such a packet is followed by another packet of the same message; an end of message segment; and an empty segment corresponding to a period of inactivity between two messages.
  • the position of the optional user groups CUST_1 to CUST_N in the transmitted message advantageously uses the protocol previously described since the analysis tool 24 does not need to know beforehand the number of optional user groups CUST_1 to CUST_N present. in the message.
  • the optional user groups CUST_1 to CUST_N are groups having a variable number of bits placed at the end of the message.
  • a specific identification code indicating an end segment of an optional user group is therefore provided by the monitoring circuit 18 between each optional group during the transmission of the optional groups d user CUST_1 to CUST_N. This allows the analysis tool 24 to count the optional user groups when the message is received.
  • the present invention also makes it possible to modify the composition of the messages to be transmitted in order to adapt them to the wishes of the users while allowing the transmission of the public messages already provided for by the IEEE-ISTO-5001 standard.
  • the position of the groups in a message being fixed for all the messages according to the invention which can be transmitted by the monitoring circuit 18 to the analysis tool 24, it is possible to standardize the algorithms for calculating the tools as much as possible. analysis for processing received messages.
  • a configuration file is transmitted to the analysis tool 24 so that it has knowledge of the messages that can be transmitted by the monitoring circuit 18 and in particular that it has knowledge for each message of the number of bits (possibly equal to zero) constituting the fixed group CUSTOM user.
  • the analysis tool 24 On reception of a message by the analysis tool 24, the analysis tool 24 therefore knows the position of the fixed user group CUSTOM and can thus analyze all the data present in this group.
  • the optional user groups CTJST_1 to CUST_N being clearly identified by the analysis tool 24, they can be ignored by an analysis tool 24 which would not be suitable for processing them.
  • the nature of the data contained in the CUSTOM fixed user group can possibly be standardized. We can therefore offer users a choice of possible configurations of the fixed user group so as to further standardize the analysis tool 24.
  • Such a group can in particular contain data which are used by the analysis tool 24 to processing optional user groups CUST_1 to CUST_N.

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)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
EP02785558A 2002-10-29 2002-10-29 Übertragung von generischen digitalnachrichten durch eine überwachungsschaltung eines mikroprozessors Withdrawn EP1556765A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/FR2002/003723 WO2004042576A1 (fr) 2002-10-29 2002-10-29 Transmission de messages numeriques generiques par un circuit de surveillance d'un microprocesseur

Publications (1)

Publication Number Publication Date
EP1556765A1 true EP1556765A1 (de) 2005-07-27

Family

ID=32309749

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02785558A Withdrawn EP1556765A1 (de) 2002-10-29 2002-10-29 Übertragung von generischen digitalnachrichten durch eine überwachungsschaltung eines mikroprozessors

Country Status (4)

Country Link
US (2) US20060026313A1 (de)
EP (1) EP1556765A1 (de)
JP (1) JP4389786B2 (de)
WO (1) WO2004042576A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8214469B2 (en) * 2006-04-06 2012-07-03 Qwest Communications International Inc. Multiple use of common perspectives
WO2009134417A2 (en) * 2008-04-30 2009-11-05 Alexander Poltorak Mutli-tier quality of service wireless communications networks
JP5312162B2 (ja) * 2009-04-10 2013-10-09 キヤノン株式会社 情報処理装置、管理サーバ、情報処理方法、及びプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE470031B (sv) * 1991-06-20 1993-10-25 Icl Systems Ab System och metod för övervakning och förändring av driften av ett datorsystem
US5237684A (en) * 1991-08-12 1993-08-17 International Business Machines Corporation Customized and versatile event monitor within event management services of a computer system
US5996092A (en) * 1996-12-05 1999-11-30 International Business Machines Corporation System and method for tracing program execution within a processor before and after a triggering event
EP1184790B1 (de) 1997-04-08 2009-11-25 Advanced Micro Devices, Inc. Ablaufdaten-Cachespeicher für mikroprozessorbetriebene Anordung
US6167536A (en) * 1997-04-08 2000-12-26 Advanced Micro Devices, Inc. Trace cache for a microprocessor-based device
JP3277900B2 (ja) * 1998-09-30 2002-04-22 日本電気株式会社 プログラム検査方法、プログラム検査装置及び、検査プログラムを記憶したコンピュータ読み取り可能な記憶媒体
US6332117B1 (en) * 1998-10-22 2001-12-18 International Business Machines Corporation General event stamping scheme
US6519766B1 (en) * 1999-06-15 2003-02-11 Isogon Corporation Computer program profiler

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2004042576A1 *

Also Published As

Publication number Publication date
US7602810B2 (en) 2009-10-13
WO2004042576A1 (fr) 2004-05-21
US20060026313A1 (en) 2006-02-02
US20090006898A1 (en) 2009-01-01
JP4389786B2 (ja) 2009-12-24
JP2006504203A (ja) 2006-02-02

Similar Documents

Publication Publication Date Title
FR2747209A1 (fr) Police de lettres creuses a restitution progressive et ses procedes de creation, transmission et restitution
FR2969451A1 (fr) Procede et dispositif de communication entre un maitre et plusieurs esclaves suivant un protocole de communication serie, en particulier du type a drain ouvert
EP0027851A1 (de) System zum Steuern des Zeitraumes zwischen Datenblocken in einem Rechner-Rechner-Kommunikationssystem
EP1556765A1 (de) Übertragung von generischen digitalnachrichten durch eine überwachungsschaltung eines mikroprozessors
EP0540427A1 (de) Schnittstellenschaltung für IC Karte
EP1554656B1 (de) Protokoll zur übertragung von digitalen nachrichten
EP1556767B1 (de) Zeitkorrelation von, durch eine überwachungsschaltung eines mikroprozessors, übertragenen nachrichten
FR2865292A1 (fr) Procede d'arbitrage hierarchise
FR2685838A1 (fr) Procede pour verifier la conformite a une norme d'une cellule representative d'un circuit dedie a la gestion d'un protocole de communication, et systeme pour sa mise en óoeuvre.
EP1556766B1 (de) Überwachung eines microprozessorprogramms durch das senden von zeitörtlichen nachrichten
EP1576476A1 (de) Überwachungschaltung eines mikroprozessors und analysewerkzeug und seine ein- und ausgänge
EP1164487B1 (de) Vorrichtung zur funktionellen Widergabe einer spezifischen integrierten Halbleiterschaltung und deren Verwendung als Emulationsvorrichtung
EP1554653A1 (de) Übertragung von wiederholungsdigitalnachrichten zwischen einer überwachungsschaltung eines mikroprozessors und eines analysewerkzeugs
EP1330781A1 (de) Schaltung zur detektion und umsetzung einer datenspur
EP1599801A1 (de) Übertragung von einer digitalnachricht zwischen einer überwachungsschaltung eines mikroprozessors und eines analysewerkzeugs
WO2004049163A1 (fr) Dispositif de surveillance a memoire tampon optimisee
EP3817294B1 (de) Verfahren und module zur konnektivitätsteuerung von verbundenen objekten
FR2828568A1 (fr) Methode et dispositif d'identification des dispositifs connectes a un reseau de communication
EP1436712B1 (de) Empfänger von asynchronen daten mit schaltvorrichtung zum schlafmodusbetrieb
EP0859312B1 (de) Verfahren zur Benutzung eines Fuzzy-Logic-Prozessors in einem Netzwerk und dafür geeigneter Fuzzy-Logic-Prozessor
EP0370442B1 (de) Verfahren zur Herstellung einer invertierten Pilotfolge für eine Entschachtelung für eine digitale Übertragung
EP1436714A1 (de) Asynchroner empfänger des uart-typs mit zwei betriebsarten
WO2020174186A1 (fr) Procédé de validation d'un système flots de données
EP0604309A1 (de) Datenverarbeitungssystem mit hoher Datenübertragung, das Speicherbaustein und Speichersteuerung ergibt
FR2722355A1 (fr) Circuit de communication

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20050519

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SK TR

RBV Designated contracting states (corrected)

Designated state(s): DE ES FR GB IT

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20120322