EP1556765A1 - Übertragung von generischen digitalnachrichten durch eine überwachungsschaltung eines mikroprozessors - Google Patents
Übertragung von generischen digitalnachrichten durch eine überwachungsschaltung eines mikroprozessorsInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection 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/2236—Detection 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance 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)
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)
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)
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 |
-
2002
- 2002-10-29 WO PCT/FR2002/003723 patent/WO2004042576A1/fr active Application Filing
- 2002-10-29 EP EP02785558A patent/EP1556765A1/de not_active Withdrawn
- 2002-10-29 JP JP2004549240A patent/JP4389786B2/ja not_active Expired - Fee Related
- 2002-10-29 US US10/531,510 patent/US20060026313A1/en not_active Abandoned
-
2008
- 2008-07-01 US US12/166,215 patent/US7602810B2/en active Active
Non-Patent Citations (1)
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 |