Data transfer controller using dummy signals for continued operation under insignificant faulty conditions

Abstract: In a data processing system, a processor (2) issues a transfer request through a data transfer controller (1) to an extended buffer memory (4) to elicit an accept signal. If the accept signal is not returned from the buffer memory (4) within a specified period, a first dummy signal is generated instead, and the controller (1) notifies this fact to the processor (2) and waits for the return of an advance notice from the buffer memory (4). If the advance notice is not returned within a specified period, a second dummy signal is generated instead to allow the controller (1) to proceed to transfer data read out of the buffer memory (4) to a main memory (3). The controller (1) then waits for the return of a status report signal from the buffer memory (4). If the status report signal is not received within a specified period, a third dummy signal is generated instead to allow the controller (1) to proceed to examine a status signal from the buffer memory (4) to determine whether the transferred data has been correctly read out of the buffer memory (4). A reply signal is applied to the processor (2) indicating the result of determination.

Description: The present invention relates generally to data processors, and more specifically to a data transfer controller for a data processor of the type which is provided with an extended buffer memory in addition to the main memory. In a supercomputer involving large scale scientific calculations, it is sometimes impossible to store all the necessary data simultaneously in the main memory. As a result, a large capacity extended buffer memory has been additionally provided to permit high speed data transfer. If a fault is detected in the extended buffer memory during a data transfer mode, the controlling program is notified of this fact to cancel instructions which are being performed or have been put in a queue waiting to be executed. The controlling program segregates the extended buffer memory from the system to fix the fault, and after recovery the extended buffer memory is integrated again with the system. However, due to the cancellation of instructions, all flip-flops which are set for the cancelled instructions must be cleared and reset with the next instructions. This adds to significant complexity to the control algorithm and results in an increase in the amount of hardware. US-A-4,590,586 describes a maintenance exerciser making requests of certain inoperative and malfunctioning storage memory bank portions of a large scale storage memory unit. When the maintenance exerciser makes abundant and repetitive requests to storage memory banks which are non-responding, resulting that such requests would time-out save for the circuit, then such requests of the maintenance exerciser which would time-out would, by suspending successive prioritizations, significantly impede the concurrent access of normal system requestors to remaining correctly functional and responsive storage memory banks. A time delay circuit accomplishes a forced clear of an unacknowledged request from a maintenance exerciser to an unresponsive storage memory bank, thereby simultaneously forcibly precluding, or clearing, that the maintenance exerciser should experience a time-out to the requested memory while allowing the priority network successive prioritizations. Thus a memory is divided into a plurality of banks and requests are issued when excess requests to the memory banks are made. When memory excess requests are timed-out, the requests are forcibly cleared to allow the system to continue operation. It is therefore an object of the present invention to continue data transfer operation in the presence of an insignificant faulty condition in the extended buffer memory by issuing a dummy signal instead of a response signal if the latter is not returned from the extended buffer memory within a specified time interval from the instant a data request is applied to the buffer memory. According to the present invention, there is provided a data transfer controller for a data processing system having a processor, a main memory and an extended buffer memory, comprising: request control means for applying a request signal to said extended buffer memory in response to a request from said processor to cause said extended buffer memory to return an accept signal, first time-out counter means for incrementing a first count by a unit value in response to the application of said request signal to said extended buffer memory, and resetting said first count in response to said accept signal or generating a first time-out signal if said first count reaches a prescribed value; a first dummy signal generator for generating a first dummy signal in response to said first time-out signal; second time-out counter means for incrementing a second count by a unit value in response to said accept signal or said first dummy signal and resetting said second count in response to an advance notice signal from said extended buffer memory, or generating a second time-out signal if said second count reaches a prescribed value; a second dummy signal generator for generating a second dummy signal in response to said second time-out signal; data transfer means responsive to said advance notice signal or said second dummy signal for transferring data read out of said extended buffer memory to said main memory; third time-out counter means for incrementing a third count by a unit value following the transfer of data to said main memory, and resetting said third count in response to a status report signal from said extended buffer memory, or generating a third time-out signal if said third count reaches a prescribed value; a third dummy signal generator for generating a third dummy signal in response to said third time-out signal; and reply control means responsive to said status report signal or said third dummy signal for examining a status signal of said extended buffer memory and transmitting a reply signal to said processor indicating whether said transferred data has been correctly read out of said extended buffer memory or not. In operation, if the first response signal is not returned from the buffer memory within the time-out period of the first counter, the first dummy signal is generated instead, and the data transfer controller notifies this fact to the processor and waits for the return of the second response signal from the buffer memory. If the second response signal is not returned within the time-out period of the second counter, the second dummy signal is generated instead to allow the controller to proceed to transfer data read out of the buffer memory to the main memory. The controller then waits for the return of the third response signal from the buffer memory. If the third response signal is not received within the time-out period of the third counter, the third dummy signal is generated instead to allow the controller to proceed to examine the status signal from the buffer memory to determine whether the transferred data has been correctly read out of the buffer memory and send the reply signal to the processor. BRIEF DESCRIPTION OF THE DRAWINGS The present invention will be described in further detail with reference to the accompanying drawings, in which the sole drawing is a block diagram of a data processing system according to the present invention. DETAILED DESCRIPTION Referring now to the sole drawing, the data processor of the present invention generally comprises a processor 2, a main memory 3, an extended buffer memory 4, and a data transfer controller 1 which cooperates with processor 2 and memories 3 and 4. Data transfer controller 1 comprises a request control circuit 10, a data transfer circuit 20 and a reply control circuit 30. Request control circuit 10 is connected by a data transfer request bus 900 to the processor 2 to receive a data transfer request signal. In response to this transfer request signal, request controller 10 generates a read address identifying the location of the necessary data to be read out of memory 4 as well as a write address identifying the location of the read data to be written into memory 3 and further generates a signal indicating the amount of the data to be transferred from memory 4 to memory 3. These signals are sent from request controller 10 on bus 100 to the extended buffer memory 4 as a read request signal. On receiving this read request signal buffer memory 4 returns an accept signal on line 104 if there is no trouble in the buffer memory 4. In preparation for such a faulty condition, request control circuit 10 activates a time-out counter 11. If an accept signal is returned from buffer memory 4 within the time-out period of counter 11, it is passed through an OR gate 13 to request control circuit 10 to reset the counter 11 and activates a time-out counter 21 in preparation for receiving an advance notice signal on line 204 from buffer memory 4, indicating that data will be read out of buffer memory 4 and transferred through bus 200. If the accept signal is not received from buffer memory 4 before the end of the time-out period of counter 11, a dummy signal generator 12 is activated by counter 11 to generate a dummy accept signal, which is applied through OR gate 13 to the reset input of the counter 11 on the one hand, and supplied, on the other, to the request control circuit 10. In response to this dummy signal, request control circuit 10 informs this fact on line 902 to the processor 2, indicating that there is a faulty condition in the buffer memory 4 and activates the time-out counter 21 in preparation for receiving an advance notice signal on line 204 from buffer memory 4. The advance notice signal is one which is generated just prior to the readout of data. This signal is passed through an OR gate 23 to the data transfer circuit 20 as well as to the reset terminal of the time-out counter 21. Subsequently, data is read out of buffer from the specified address location and forwarded through input bus 200 and passed through data transfer circuit 20 to the main memory 3 through output bus 300. If no advance notice is received within the time-out period of counter 21, the latter activates a dummy signal generator 22 to cause it to supply a dummy advance notice through OR gate 23 to data transfer circuit 20 as well as to counter 21. At the end of a data transfer operation, data transfer circuit 20 activates a third time-out counter 31 in preparation for a status report signal which will be transmitted through bus 304 from buffer memory 4 simultaneously with a status signal transmitted on bus 400. The status report signal is applied through an OR gate 33 to the reset input of the time-out counter 31 as well as to the reply control circuit 30, and the status signal is supplied to the reply control circuit 30. Reply control circuit 30 examines the status signal and determines if the data has been correctly read out from buffer memory 4 and sends a reply signal on bus 901 to the processor 2, indicating the result of the determination. If buffer memory 4 fails to send a status report signal within the time-out period of counter 31, the latter causes a dummy signal generator 32 to issue a dummy status report signal to OR gate 33, so that counter 31 is reset and the reply control circuit 30 can proceed to examine a status signal sent with the failed status report signal. Therefore, data transfer operation is not interrupted by insignificant failures of the extended buffer memory 4, without substantially increasing the hardware. The foregoing description shows only one preferred embodiment of the present invention. Various modifications are apparent to those skilled in the art without departing from the scope of the present invention which is only limited by the appended claims. Therefore, the embodiment shown and described is only illustrative, not restrictive.

Claims: A data transfer controller for a data processing system having a processor (2), a main memory (3) and an extended buffer memory (4), comprising: request control means (10) for applying a request signal (100) to said extended buffer memory in response to a request from said processor to cause said extended buffer memory to return an accept signal (104); first time-out counter means (11) for incrementing a first count by a unit value in response to the application of said request signal to said extended buffer memory, and resetting said first count in response to said accept signal or generating a first time-out signal if said first count reaches a prescribed value; a first dummy signal generator (12) for generating a first dummy signal in response to said first time-out signal; second time-out counter means (21) for incrementing a second count by a unit value in response to said accept signal or said first dummy signal and resetting said second count in response to an advance notice signal (204) from said extended buffer memory, or generating a second time-out signal if said second count reaches a prescribed value; a second dummy signal generator (22) for generating a second dummy signal in response to said second time-out signal; data transfer means (20) responsive to said advance notice signal or said second dummy signal for transferring data read out of said extended buffer memory to said main memory; third time-out counter means (31) for incrementing a third count by a unit value following the transfer of data to said main memory, and resetting said third count in response to a status report signal (304) from said extended buffer memory, or generating a third time-out signal if said third count reaches a prescribed value; a third dummy signal generator (32) for generating a third dummy signal in response to said third time-out signal; and reply control means (30) responsive to said status report signal or said third dummy signal for examining a status signal (400) of said extended buffer memory and transmitting a reply signal (901) to said processor indicating whether said transferred data has been correctly read out of said extended buffer memory or not. A data transfer controller as claimed in claim 1, wherein said request control means (10) notifies said processor that a faulty condition exists in said extended buffer memory in response to said first dummy signal.

Inventors: IKENO MOTOKIYO, IKENO, MOTOKIYO
Applicants: NIPPON ELECTRIC CO, NEC CORPORATION
Application year: 1990
Main classification: G06F11
IPC codes: G06F11, G06F12