Programmatic time-gap defect correction apparatus and method
First Claim
1. An apparatus for correcting time-gap defects in a computer system configured to communicate with devices of both synchronous and asynchronous types, the apparatus comprising:
- a processor configured to process data communicated with devices of both synchronous and asynchronous types; and
a controller configured to control an exchange of data between the devices, the controller including a buffer, having a capacity of bytes and configured to temporarily store the data exchanged, and a memory device operably connected to the processor to store data structures comprising executables, the executables comprising;
a driver configured to control operation of the controller, and an error avoidance module, the error avoidance module configured to be invoked by the driver to compare the capacity to a count of bytes transferred with respect to the buffer, and to force an error condition based on the count.
1 Assignment
0 Petitions
Accused Products
Abstract
A programmatic time-gap defect correction apparatus and method corrects errors which may go undetected by a computer system. Buffer underruns or overruns, which may incur errors in data transfers, yet remain undetected and uncorrected in a computer system, are corrected by an error avoidance module in accordance with the invention. Bytes transferred to and from buffers, used by an I/O controllers to temporarily store data while being transferred between synchronous and asynchronous devices, are counted and an error condition is forced based on the count. If the count exceeds the capacity of the buffer, an error condition is forced, thereby reducing chances that errors are incurred into the data transfer.
24 Citations
24 Claims
-
1. An apparatus for correcting time-gap defects in a computer system configured to communicate with devices of both synchronous and asynchronous types, the apparatus comprising:
-
a processor configured to process data communicated with devices of both synchronous and asynchronous types; and
a controller configured to control an exchange of data between the devices, the controller including a buffer, having a capacity of bytes and configured to temporarily store the data exchanged, and a memory device operably connected to the processor to store data structures comprising executables, the executables comprising;
a driver configured to control operation of the controller, and an error avoidance module, the error avoidance module configured to be invoked by the driver to compare the capacity to a count of bytes transferred with respect to the buffer, and to force an error condition based on the count. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for correcting time-gap defects in a computer system configured to communicate with devices of both synchronous and asynchronous types, the method comprising:
-
transferring bytes of data between a device and a buffer having a capacity;
providing a count of the bytes;
comparing the count to the capacity; and
forcing an error condition based on the count. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. An article including a computer readable medium configured to correct programmatic time-gap defects in a computer system having synchronous and asynchronous devices interconnected to one another, the apparatus comprising:
-
a controller driver configured to control operation of a controller in the computer system;
an error avoidance module configured to count the number of bytes transferred with respect to a buffer used by the controller, during an exchange of data, and to force an error condition based on the count. - View Dependent Claims (23)
-
-
24. An apparatus for correcting programmatic time-gap defects, the apparatus comprising:
-
a processor configured to communicate with devices of both synchronous and asynchronous types; and
a controller for controlling an exchange of data between the devices, the controller including a buffer, having a byte capacity; and
a memory device configured to store executables comprising;
a driver configured to control the controller and invoke an error avoidance module, and the error avoidance module configured to compare the byte capacity to a count of bytes transferred with respect to the buffer, and to force an error condition based on the count.
-
Specification