Claims
- 1. A computer system comprising:
- a processing unit;
- a local bus coupled to said processing unit;
- a peripheral bus;
- a peripheral bus bridge coupled to said local bus and said peripheral bus;
- a peripheral device; and
- a parallel port circuit coupled to said peripheral bus and coupled to said peripheral device, wherein said parallel port circuit includes:
- a data buffer configured to receive write data from said peripheral bus of said computer system;
- a control unit coupled to said data buffer and configured to cause said write data to be latched within said data buffer in response to a write cycle to said parallel port executed by said processing unit, wherein said control unit is further configured to generate a handshake signal to said peripheral device to indicate that said write data is contained by said data buffer;
- a time-out counter coupled to said control unit and configured to count a predetermined time period following said assertion of said handshake signal;
- a status register coupled to said control unit and including an error bit, wherein said control unit is configured to set said error bit if said peripheral device fails to assert an acknowledge signal indicating receipt of said write data before an expiration of said predetermined time period; and
- a configuration register coupled to said control unit, wherein said configuration register is configured to store a configuration value to control whether a non-maskable interrupt signal or a parallel port interrupt signal is asserted in response to said expiration of said predetermined time period;
- wherein, in a first mode of operation set by said configuration value stored in said configuration register, if said peripheral device fails to assert said acknowledge signal indicating receipt of said write data within said predetermined time period, said control unit initiates an abort cycle on said peripheral bus and asserts said non-maskable interrupt signal; and
- wherein, in a second mode of operation set by said configuration value in said configuration register, if said peripheral device fails to assert said acknowledge signal indicating receipt of said write data within said predetermined time period, said control unit releases said processing unit from said write cycle and asserts said parallel port interrupt signal.
- 2. The computer system as recited in claim 1 wherein said handshake signal includes a data strobe signal.
- 3. The computer system as recited in claim 1 wherein said data buffer includes a latching circuit.
- 4. The computer system as recited in claim 1 wherein said predetermined time period of said time-out counter is programmable.
- 5. The computer system as recited in claim 1 wherein said data buffer is a bidirectional buffer and is configured to receive read data from said peripheral device
- wherein said control unit is configured to cause said read data to be latched within said data buffer in response to a read cycle to said parallel port executed by said processing unit, wherein said control unit is further configured to generate a second handshake signal to said peripheral device to indicate that said read data is required to be provided to said data buffer;
- wherein said time-out counter coupled to said control unit is configured to count a second predetermined time period following said assertion of said second handshake signal;
- wherein said control unit is configured to set a second error bit in said status register if said peripheral device fails to assert a second acknowledge signal indicating receipt of said read data before an expiration of said second predetermined time period; and
- wherein said configuration register is configured to store a configuration value to control whether a non-maskable interrupt or a parallel port interrupt is asserted in response to said expiration of said second predetermined time period;
- wherein, in a first mode of operation set by said configuration value, if said peripheral device fails to assert said second acknowledge signal indicating receipt of said read data within said second predetermined time period, said control unit asserts said non-maskable interrupt signal;
- wherein, in a second mode of operation set by said configuration value, if said peripheral device fails to assert said second acknowledge signal indicating receipt of said read data within said second predetermined time period, said control unit asserts said parallel port interrupt signal.
- 6. The computer system as recited in claim 5 wherein in response to said non-maskable interrupt signal or said parallel port interrupt signal, read data associated with said read cycle received at said data buffer is identified as valid or invalid and said read cycle is re-executed if said read data is indicated to be invalid.
- 7. The computer system of claim 1, wherein write data associated with a subsequent write cycle is discarded if said subsequent write cycle is initiated after said predetermined time period.
- 8. The computer system as recited in claim 1, wherein said peripheral bus is a PCI bus and said peripheral bus bridge is a PCI bridge.
- 9. The computer system as recited in claim 8, wherein said initiation of an abort cycle includes asserting a PCI STOP signal and deasserting a PCI DEVSEL signal.
- 10. A method for operating a parallel port of a computer system including a processing unit, a local bus, a peripheral bus, a peripheral bus bridge and a peripheral device, said method comprising:
- executing a write cycle on said peripheral bus of said computer system;
- latching data within a data buffer of said parallel port in response to said write cycle;
- providing a data strobe signal to said peripheral device;
- initiating the countdown of a predetermined time period;
- waiting for an acknowledge signal from said peripheral device;
- initiating an abort cycle on said peripheral bus in a first mode of operation if said acknowledge signal is not provided from said peripheral device within said predetermined time period;
- setting an error bit within a status register if said acknowledge signal is not provided from said peripheral device within said predetermined time period; and
- asserting an interrupt signal to said processing unit if said acknowledge signal is not provided from said peripheral device within said predetermined time period; wherein said interrupt signal is selectable as a non-maskable interrupt signal in said first mode of operation and a parallel port interrupt signal in a second mode of operation.
- 11. The method for operating a parallel port of a computer system as recited in claim 10, wherein said peripheral bus is a PCI bus and said peripheral bus bridge is a PCI bridge.
- 12. The method for operating a parallel port of a computer system as recited in claim 11, wherein said step of initiating an abort signal includes the steps of asserting a PCI STOP signal and deasserting a PCI DEVSEL signal.
Parent Case Info
This application is a continuation of application Ser. No. 08/223,643, filed Apr. 6, 1994 now abandoned.
US Referenced Citations (7)
Foreign Referenced Citations (1)
Number |
Date |
Country |
60-178561 |
Feb 1986 |
JPX |
Non-Patent Literature Citations (1)
Entry |
Shanley et al., "PCI System Architecture" 3rd ed., Addison-Wesley pub. p. 32, pp. 163-186 1995. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
223643 |
Apr 1994 |
|