Browse Prior Art Database

Tailorable Embedded Event Trace

IP.com Disclosure Number: IPCOM000122626D
Original Publication Date: 1991-Dec-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 3 page(s) / 127K

Publishing Venue

IBM

Related People

Berglund, NC: AUTHOR [+4]

Abstract

Described is a tailorable event trace facility that provides a historical record of events in an embedded controller. This trace can be tailored, by the requester of the trace, to only trace selected events. This trace is always active, it is setup during the controller initialization, and is able to trace events not observable by external trace facilities. MOTIVATION

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Tailorable Embedded Event Trace

      Described is a tailorable event trace facility that
provides a historical record of events in an embedded controller.
This trace can be tailored, by the requester of the trace, to only
trace selected events.  This trace is always active, it is setup
during the controller initialization, and is able to trace events not
observable by external trace facilities.
MOTIVATION

      Due to the inaccessibility of information about the internal
state or activity of a controller, analysis of problems involving
embedded controllers can be time consuming and frustrating.  In the
development laboratory, because the controller can be exposed, probes
can usually obtain this information.  In some cases, especially with
probes that are not adapted to the control system, this important
information is difficult to obtain.  Outside the development
laboratory, there may be no way to obtain sufficient information to
recreate the problem for analysis by the development team.
THE TRACE FACILITY

      The trace facility (see the figure) is comprised of two major
components.  One component, called Trace Operation, provides buffer
management and event filtering for all of the controller code.  The
other component, called Trace Control, provides the operator with
trace control and access to the trace buffer.
TRACE OPERATION

      Whenever a traceable event occurs, the controller code (c)
simply calls the trace facility, providing the trace facility with
the event tag and data for that event.  The Trace Operation component
checks that tracing is enabled (d).  If tracing is disabled, the
event is discarded.  If tracing is enabled, the trace facility checks
if selective tracing is active (e).  If selective tracing is inactive
(i.e., inclusive), then the event is immediately added to the trace
buffer.  If selective tracing is active, then the event is filtered
(f).  The event is filtered by applying the trace filter mask to the
event's tag.  If masking indicates that the event tag is to be
traced, the event is added to the trace buffer.  If it does not, the
event is discarded.
TRACE CONTROL

      The Trace Control component (b) receives trace control messages
from the operator (a) via an existing interface. These messages are
acted upon by modifying trace facility flags and variables that
control the Trace Operation component or by returning the trace data
from the trace buffer (g).  When any of the trace control messages
are acted upon by the trace control component, a special event is
copied to the trace buffer (g) to identify the control action taken.
The trace control component provides the following control
facilities:
-  Enable/disable trace:  In the case of the trace buffer being
implemented as a circular buffer, disabling the trace preserves trace
information collected earlier from being overwritten by subsequent
events.
-...