Browse Prior Art Database

Automated Error Code Database for Microcode Generation

IP.com Disclosure Number: IPCOM000114148D
Original Publication Date: 1994-Nov-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 4 page(s) / 231K

Publishing Venue

IBM

Related People

Nylander-Hill, PR: AUTHOR

Abstract

In a product application destined for wide distribution and continuing maintenance, it is often the case that Error Code Dictionaries are defined. Error Code Dictionaries for a tape product contain large segments of diverse, inter-related data and text that evolve with a microcode application to document the failure mechanisms of the device. These data dictionaries are partially implemented within the microcode, leaving textual descriptions for human reference only. The complex relationships between different data at different release levels of microcode can easily lose their integrity if they are validated manually.

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

Automated Error Code Database for Microcode Generation

      In a product application destined for wide distribution and
continuing maintenance, it is often the case that Error Code
Dictionaries are defined.  Error Code Dictionaries for a tape product
contain large segments of diverse, inter-related data and text that
evolve with a microcode application to document the failure
mechanisms of the device.  These data dictionaries are partially
implemented within the microcode, leaving textual descriptions for
human reference only.  The complex relationships between different
data at different release levels of microcode can easily lose their
integrity if they are validated manually.

      This disclosure discusses a VM-based process developed to build
and support error codes and associated data.  In this application,
error codes are defined as a set of unique 2-byte hex codes.  These
codes appear in the device sense data transmitted to the host and are
also used to direct internal microcode processes related to error
recovery and reporting.  Each code represents a unique failure and is
defined in terms of the microcode module or object that detected it.
Error codes have inherently close relationships to other pieces of
information used in reporting or servicing the device.  As an
example, error codes are defined with pointers to internal recovery
codes and flags, external host error recovery codes, failing
component information for service, and keys to direct how sense data
is categorized, built, and presented.  These error code relationships
are considered primary relationships, however the sub-relationships
are governed by sets of rules and associations as well.  These
extensive relationships are defined by multiple mappings into data
tables or other constant structures.

      GUMECD is the VM-based process designed to maintain and control
a database supporting large segments of constant, interrelated error
data dictionaries.  GUMECD is implemented as a disconnected service
machine and serves as a database repository for update and query
activity as well as the mechanism by which the code and data that
deal with errors are generated.

      The GUMECD error code database is organized by link level and
device family.  This allows for multiple link-level support and
definition for multiple microcode projects.  Links can be defined,
opened, and locked.  Links are defined as nodes of a tree structure
with multiple lines of descent.  When a GUMECD link-request or query
is invoked, inheritance rules are found by traversing this tree
structure.  These rules are applied to the database, so that younger
links can inherit information from ancestral links.  Once a link or
node is locked, error mapped data at that level is frozen and cannot
be altered.

      Input to this database is primarily from VM.  AIX-based job
streams run in batch mode via a LAN supporting RS-6000 workstations.
These remote requests serve to...