Browse Prior Art Database

Method for a nonvolatile trace buffer

IP.com Disclosure Number: IPCOM000008030D
Publication Date: 2002-May-13
Document File: 4 page(s) / 53K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method for a nonvolatile trace buffer (NVTB). Benefits include improved performance.

This text was extracted from a Microsoft Word document.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 50% of the total text.

Method for a nonvolatile trace buffer

Disclosed is a method for a nonvolatile trace buffer (NVTB). Benefits include improved performance.

Background

              Application code is the system application under development by the software developer.

              Embedded real-time system software crashes are conventionally debugged using numerous techniques, including:

§         Use a third-party software debugger to step through code and analyze its behavior; debuggers can be expensive and complex to use; debuggers can also severely impact the real-time behavior of the software under debug; sometimes, the problem may not be repeatable under these conditions.

§         Insert I/O trace messages in the software under debug, such as printf(debug_value). This technique, while being simple and sometimes effective, can also severely impact real-time behavior (affects interrupt control and task scheduling). The message is not guaranteed to reach the I/O device (such as, a user console) by the time the pending crash occurs. The message may have not exited the I/O buffer quickly enough.

General description

              The disclosed method is an NVTB software debugging technique for use in an embedded real-time software system. The method assumes that the software system under debug is comprised of the two software blocks typically found in an embedded software system:

§         Boot code

§         Application code

              The boot code resides in Flash memory. It is executed immediately after a hard (power-on) reset or soft (software) reset. The code’s primary functions are:

§         Initialise hardware, including I/O ports and RAM

§         Upload application code from a remote device or Flash into RAM

§         Execute the application code

§         Provide a simple text based user menu system

              The menu system is accessible through an I/O port connected to a user console. Typically, the user can upload boot code into Flash and configure system parameters stored in battery-backed memory.

 


Advantages

              The disclosed method provides several advantages, including:

§         Simple implementation and use, reducing the debugging effort

§         No severe impact on real-time behavior, including tasks and interrupts

§         Successful handling of all types of crashes, such as illegal address access, bus errors, and watchdog resets

Detailed description

              The disclosed method includes an NVTB software debugging technique for use in an embedded real-time software system. The method requires that a block of data memory in RAM

be reserved by the boot code and shared by the application code (see Figure 1). That block forms the nonvolatile tr...