1. Field of the Invention
The present invention concerns the testing of computer control devices and, more particularly, a generic tester for computer peripheral controllers.
2. Description of the Prior Art
Typical computer systems, e.g., home personal computers, usually include a number of sophisticated peripheral controllers which are responsible for the operation of various peripheral devices under the direction of the central processing unit (CPU) of the computer. Examples of these peripheral devices are the hard or floppy disk drives commonly employed in computer systems for the bulk storage of data. Controller units for disk drives typically direct the operation of the disk drive, providing a conduit and translator for commands and data between the CPU and the disk drive. For example, when providing data for storage the CPU typically sends eight or sixteen bits in parallel, that is, simultaneously. A disk drive, however, can only store this data serially, one bit at a time. One function of the peripheral controller is to temporarily store the eight or sixteen bits of parallel data and transfer the data to the disk serially. Conversely, the controller will also receive data from the disk serially and forward it to the CPU in eight or sixteen parallel bits.
It is difficult to develop a satisfactory apparatus to enable manufacturers of peripheral controllers to test their products for proper operation. Peripheral controllers have previously been tested by simply plugging them into a host computer system of the type they were intended to operate in. This procedure, however, suffers from a number of disadvantages. Defective controllers may very well damage the electronics of the host/test computer system. In subsequent testing it therefore becomes necessary to determine whether the peripheral controller under test or the host/test computer system is defective. With this procedure the number of abnormal conditions to which the peripheral controller-under-test can be subjected (and expected to tolerate) is also limited. In addition, the information relating to the specific defect in a failed unit-under-test is also sketchy.
Peripheral controllers have also been tested with actual peripherals and various kinds of isolated "black box" devices providing command and data signals identical to those which would be provided by the host computer that the unit-under-test (UUT) is expected to work with. This testing procedure also suffers from a number of disadvantages since the unit-under-test may still damage the peripherals so that it is again necessary in subsequent tests to first verify that the peripheral is functioning properly. Black box type host computer simulators also provide only limited control over a wide range of abnormal conditions the unit-under-test is expected to encounter and tolerate. In addition, such host commputer simulators are also not adaptable from one peripheral controller product to another. Typically a period of up to eight months are needed to develop a new host computer simulator.
Thus there still exists a need for a peripheral controller test system capable of testing controller products without employing an actual peripheral or host computer. A need further remains for an automatic test system which can be more quickly modified for testing different kinds of peripheral controllers.