Parallel SCSI host adapter and method for fast capture of shadow state data
First Claim
1. A parallel SCSI host adapter having a SCSI bus port and a host I/O bus port, said parallel SCSI host adapter comprising:
- a first data channel comprising a first shadow register, wherein said first data channel is selectably connected to said SCSI bus port to form a first data path between said SCSI bus port and said host I/O bus port;
a second data channel comprising a second shadow register coupled to said first shadow register, wherein said second data channel is selectably connected to said SCSI bus port to form a second data path between said SCSI bus port and said host I/O bus port; and
a first snapshot strobe line connected to said second shadow register, wherein an active signal on said first snapshot strobe line causes content of said first shadow register to be loaded in said second shadow register.
6 Assignments
0 Petitions
Accused Products
Abstract
A parallel SCSI host adapter includes a SCSI bus port and a host I/O bus port. The parallel SCSI host adapter takes a snapshot of state data for a first data channel coupling the SCSI bus port to the host I/O bus port following receipt of a complete Packetized SCSI protocol information unit having a context from the SCSI bus port. Following the snapshot, another Packetized SCSI protocol information unit for the same context is transferred over the first data channel. Since the snapshot requires substantially no time delay relative to a time delay associated with saving the state data in a hardware I/O command block for the context, latency between the information units for the same context is minimized in the parallel SCSI host adapter.
35 Citations
16 Claims
-
1. A parallel SCSI host adapter having a SCSI bus port and a host I/O bus port, said parallel SCSI host adapter comprising:
-
a first data channel comprising a first shadow register, wherein said first data channel is selectably connected to said SCSI bus port to form a first data path between said SCSI bus port and said host I/O bus port;
a second data channel comprising a second shadow register coupled to said first shadow register, wherein said second data channel is selectably connected to said SCSI bus port to form a second data path between said SCSI bus port and said host I/O bus port; and
a first snapshot strobe line connected to said second shadow register, wherein an active signal on said first snapshot strobe line causes content of said first shadow register to be loaded in said second shadow register. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
a second snapshot strobe line connected to said first shadow register, wherein an active signal on said second snapshot strobe line causes content of said second shadow register to be loaded in said first shadow register.
-
-
5. A parallel SCSI host adapter as in claim 4 wherein said first data channel further comprises:
a first hardware I/O command block pointer register connected to said second snapshot strobe line.
-
6. A parallel SCSI host adapter as in claim 1 wherein said first data channel further comprises:
a first hardware I/O command block array pointer register.
-
7. A parallel SCSI host adapter as in claim 6 wherein said second data channel further comprises:
-
a second hardware I/O command block array pointer register connected to said first snapshot strobe line, and coupled to said first hardware I/O command block array pointer register wherein said active signal on said first snapshot strobe line causes content of said first hardware I/O command block array pointer register to be loaded in said second hardware I/O command block array pointer register.
-
-
8. A parallel SCSI host adapter as in claim 7 further comprising:
-
a second snapshot strobe line connected to said first shadow register, wherein an active signal on said second snapshot strobe line causes content of said second shadow register to be loaded in said first shadow register.
-
-
9. The parallel SCSI host adapter as in claim 8 wherein said second snapshot strobe line is connected to said a first hardware I/O command block array pointer register, and further wherein said active signal on said second snapshot strobe line causes content of said second hardware I/O command block array pointer register to be loaded in said first hardware I/O command block array pointer register.
-
10. A method comprising:
-
transferring a first Packetized SCSI protocol data information unit over a first data path of a first data channel coupling a SCSI port of a parallel SCSI host adapter to a host I/O port of said parallel SCSI host adapter;
transferring content contained in a first shadow register of said first data channel, upon completion of receipt of said first Packetized SCSI protocol data information unit by said SCSI port, to a second shadow register of a second data channel selectively coupling said SCSI port of said parallel SCSI host adapter to said host I/O port of said parallel SCSI host adapter; and
transferring another Packetized SCSI protocol data information unit over said first data path following said transferring content contained in said first shadow register. - View Dependent Claims (11, 12)
transferring content contained in a first hardware I/O command block array pointer register of said first data channel, upon said completion of receipt of said first Packetized SCSI protocol data information unit by said SCSI port, to a second hardware I/O command block array pointer register of said second data channel.
-
-
12. The method of claim 10 further comprising:
transferring said content of said second shadow register to a stored hardware I/O command block during said transferring another Packetized SCSI protocol data information unit.
-
13. A parallel SCSI host adapter comprising:
-
a SCSI module;
a data path multiplexer;
a data bus connecting said data path multiplexer to said SCSI module;
a first clock line connecting said data path multiplexer to said SCSI module;
a first snapshot strobe line connecting said data path multiplexer to said SCSI module;
a first data buffer connected to said data path multiplexer;
first shadow address/count registers;
a second clock line connecting said data path multiplexer to said first shadow address/count registers;
a first DMA engine connected to said first data buffer;
a second data buffer connected to said data path multiplexer;
second shadow address/count registers connected to said first shadow address/count registers;
a third clock line connecting said data path multiplexer to said second shadow address/count registers;
a second DMA engine connected to said second data buffer;
a second snapshot strobe line connecting said data path multiplexer to said second shadow address/count registers; and
a third snapshot strobe line connecting said data path multiplexer to said first shadow address/count registers. - View Dependent Claims (14, 15, 16)
a first hardware I/O control block array pointer register connected to said third snapshot strobe line.
-
-
15. The parallel SCSI host adapter of claim 14 further comprising:
a second hardware I/O control block array pointer register connected to said second snapshot strobe line.
-
16. The parallel SCSI host adapter of claim 13 further comprising:
a hardware I/O control block array pointer register connected to said second snapshot strobe line.
Specification