Table of Contents
Previous Chapter
This section describes the preliminary design of the ACIS Front End's I/O Library software. The details of this section are TBD.
This library will provide the following functions:
The "Touch Watchdog Timer" function is used by a main science processing, or diagnostic processing loop to prevent the timer from causing a hardware reset. If the Front End crashes, and this loop hangs, the Watchdog Timer will eventually expire and cause the Front End Processor to go into a reset state. The Back End Processor must then determine if the Front End should be restarted.
The "Force Hardware Reset" function is used by a main science processing or diagnostic processing loop to force the Front End Processor to reset in the event of a fatal Front End Processor error. This library function uses the Watchdog Timer to cause the reset.
The "Report Status" function is used by the science code to report the current state of the processor to the Back End.
The "Poll Command Interface" function is used by the science code to monitor the interface for any pending commands. This function can be used by the science code in its main loop to monitor requests from the Back End.
The "Read Command" function is used by the science code to read a command from the Back End. This function will wait for a command to arrive, and return the read command. If the science code wishes to perform other operations while waiting for a command to arrive, it must use the "Poll Command Interface" function to ensure a command is available before attempting to read the command.
The "Get Space Remaining" function is used by the science code to determine the amount of buffer space remaining for data to be sent to the Back End processor. This allows the science code to poll the data interface until enough room is available for what the science code wants to send.
The "Append Data" function is used by the science code to append information to be sent to the Back End. This function first waits until enough room is available to send the requested information, and then appends the data to a buffer (or list of buffers) to be sent to the Back End. If the science code wishes to perform other operations while waiting for enough room to become available, it must first call "Get Space Remaining."
The "Reset Data" function is used by the science code to discard any data waiting to be sent to the Back End.