Claims Analysis
Total Claims: 32
Claim 1
Independent Claim
168 words
In a system including a host computer and I/O devices coupled to the host computer via a universal serial bus (USB), wherein said host computer generates requests to read data stored in the I/O devices, a method comprising the steps: the host computer generating first request to read a first data stored in an I/O device at a first address; the host computer generating a request on the USB to read the first data and additional data stored in the I/O device in response to generation of the first request; the I/O device returning the first and additional data stored in the I/O device to the host computer via the USB in response to generation of the request to read the first data and the additional data; providing the first data to the host computer after the I/O device returning the first and additional data, and; storing the additional data in a data cache in the host computer after the I/O device returning the first and additional data.
Claim 2
Dependent Claim
168 words
In a system including a host computer and I/O devices coupled to the host computer via a universal serial bus (USB), wherein said host computer generates requests to read data stored in the I/O devices, a method comprising the steps: the host computer generating first request to read a first data stored in an I/O device at a first address; the host computer generating a request on the USB to read the first data and additional data stored in the I/O device in response to generation of the first request; the I/O device returning the first and additional data stored in the I/O device to the host computer via the USB in response to generation of the request to read the first data and the additional data; providing the first data to the host computer after the I/O device returning the first and additional data, and; storing the additional data in a data cache in the host computer after the I/O device returning the first and additional data.
Claim 3
Dependent Claim
92 words
The method of claim 1, wherein the host computer generating the request to read the first and additional data comprises: the host computer constructing a first packet from the request to read the first and additional data stored in the I/O device, and; the host computer transmitting the first packet over the USB to an I/O device interface in data communication with the I/O device; wherein the I/O device returning the first and additional data to the host computer is performed in response to the I/O device interface receiving the first packet.
Claim 4
Dependent Claim
41 words
The method of claim 2 wherein the I/O device returning the first and additional data comprises: the I/O device interface generating a second packet containing the first and additional; the I/O device interface transmitting the second packet to the host computer.
Claim 5
Dependent Claim
19 words
The method of claim 3 wherein the first and additional data are stored in registers in the I/O device.
Claim 6
Dependent Claim
198 words
The method of claim 1 further comprising: the host computer creating a data structure including information indicating cacheability of data stored in the I/O device, wherein the cacheability information in the data structure is accessible using addresses of data stored in the I/O device; the host computer creating a cache table including information indicating availability and validity of data stored in the cache, wherein the availability and validity information in the cache table is accessible using addresses of data stored in the I/O device; the host computer accessing the data structure using the first address to determine cacheablity of the first data stored in the I/O device after the host computer generating the first request; the host computer accessing the cache table using the first address to determine whether the first data is available and valid in the data cache after the host computer generating the first request; wherein the host computer generating the request to read the first data and the additional data is performed in response to (1) the data structure indicating the first data is cacheable and (2) the cache table indicating the first data is not available in the data cache as valid data.
Claim 7
Dependent Claim
209 words
The method of claim 1 further comprising: the host computer creating a data structure including information indicating cacheability of data stored in the I/O device, wherein the cacheability information in the data structure is accessible using addresses of data stored in the I/O device; the host computer creating a cache table including information indicating availability and validity data stored in the cache is valid, wherein the availability and validity information in the cache table is accessible using addresses of data stored in the I/O device; the host computer generating a second request to read a second data stored in the I/O device at a second address after the host computer generating the first request; the host computer accessing the data structure using the second address to determine the cacheablity of the second data stored in the I/O device; the host computer accessing the cache table using the second address to determine whether the second data is available in the data cache as valid data after the host computer generating the first request; reading the second data from the data cache when (1) the data structure indicates the second data is cacheable and (2) the cache table indicates the second data is available as valid data in the data cache.
Claim 8
Dependent Claim
33 words
The method of claim 6 further comprising updating the cache table to indicate invalidity of the second data stored in the data cache after the second data is read from the data cache.
Claim 9
Dependent Claim
131 words
The method of claim 1 further comprising: the host computer creating a data structure including information indicating cacheability of data stored in the I/O device, wherein the cacheability information in the data structure is accessible using addresses of data stored in the I/O device; the host computer generating a second request to read a second data stored in the I/O device at a second address after the host computer generating the first request; the host computer accessing the data structure using the second address to determine whether the second data is cacheable after the host computer generating the first request; the I/O device returning the second data stored in the I/O device to the host computer via the USB in response to the data structure indicating the second data is uncacheable.
Claim 10
Dependent Claim
76 words
The method of claim 8 further comprising: the host computer creating a cache table including information indicating availability and validity data stored in the cache is valid, wherein the availability and validity information in the cache table is accessible using addresses of data stored in the I/O device; updating the cache table to indicate that all data stored in the data cache is invalid in response to the data structure indicating the second data is uncacheable.
Claim 11
Dependent Claim
96 words
The method of claim 9 further comprising: the host computer generating a request for reading data stored at predefined addresses in the I/O device in response to the data structure indicating the second data is uncacheable, wherein the data at predefined addresses includes the second data; the I/O device returning the data stored at the predefined addresses to the host computer via the USB in response to generation of the request to read data stored at predefined addresses; storing the data returned from the I/O device in the data cache subsequent to updating the cache table.
Claim 12
Dependent Claim
81 words
The method of claim 1 further comprising: the host computer generating one or more requests to write data to the I/O device; the host computer constructing a packet from the one or more requests to write data, wherein the requests to write data are stored in a queue, and; the host computer transmitting the packet over the USB to an I/O device interface in data communication with the I/O device before returning the first and additional data to the host computer.
Claim 13
Dependent Claim
28 words
The method of claim 5 further comprising the host computer updating the cache table to indicate availability and validity of the additional data stored in the data cache.
Claim 14
Dependent Claim
213 words
In a system including a host computer and I/O devices coupled to the host computer via a universal serial bus (USB), wherein the host computer generates requests for reading data stored in the I/O devices, a method comprising the steps: storing data read from the I/O device in a data cache; creating a data structure including information indicating cacheability of data stored in the I/O device, wherein cacheability information in the data structure is accessible using addresses of data stored in the I/O device; creating a cache table including information indicating availability and validity of data stored in the cache, wherein availability and validity information in the cache table is accessible using addresses of data stored in the I/O device; the host computer generating a request to read data stored in an I/O device at an address; accessing the data structure using the address to determine whether the requested data is cacheable; accessing the cache table using the address to determine whether the requested data is available in the data cache as valid data; reading the requested data from the data cache in response to (1) the data structure indicating the requested data is cacheable and (2) the cache table indicating the requested data is available in the data cache as valid data.
Claim 15
Dependent Claim
213 words
In a system including a host computer and I/O devices coupled to the host computer via a universal serial bus (USB), wherein the host computer generates requests for reading data stored in the I/O devices, a method comprising the steps: storing data read from the I/O device in a data cache; creating a data structure including information indicating cacheability of data stored in the I/O device, wherein cacheability information in the data structure is accessible using addresses of data stored in the I/O device; creating a cache table including information indicating availability and validity of data stored in the cache, wherein availability and validity information in the cache table is accessible using addresses of data stored in the I/O device; the host computer generating a request to read data stored in an I/O device at an address; accessing the data structure using the address to determine whether the requested data is cacheable; accessing the cache table using the address to determine whether the requested data is available in the data cache as valid data; reading the requested data from the data cache in response to (1) the data structure indicating the requested data is cacheable and (2) the cache table indicating the requested data is available in the data cache as valid data.
Claim 16
Dependent Claim
45 words
The method of claim 13 further comprising updating the cache table in response to reading the requested data from the data cache, wherein the cache table is updated to indicate that the requested data is no longer available in the data cache as valid data.
Claim 17
Dependent Claim
73 words
The method of claim 13 further comprising: reading data stored at predefined addresses in the I/O device when the cache table indicates that the requested data is unavailable in the data cache, wherein the data stored at the predefined addresses includes the requested data; storing data read from the I/O device in the data cache; updating the cache table to indicate the availability and validity of the data stored in the data cache.
Claim 18
Dependent Claim
42 words
The method of claim 13 further comprising: reading the requested data from the I/O device when the data structure indicates that the requested data is not cacheable; updating the cache table to indicate invalidity of all data stored in the data cache.
Claim 19
Dependent Claim
70 words
The method of claim 13 further comprising: reading data stored at predefined addresses in the I/O device when the data structure indicates that the requested data is not cacheable, wherein the data at the predefined addresses includes the requested data; storing all data read from the I/O device in the data cache; updating the cache table to indicate the availability and validity of the data stored in the data cache.
Claim 20
Dependent Claim
189 words
A universal serial bus system comprising: a universal serial bus (USB) for transmitting data between devices connected thereto; an I/O device coupled to the USB, the I/O device having addressable memory for storing data; a host computer coupled to the USB, wherein the host computer includes a memory, wherein the host computer is configured to generate (1) a first request on the USB to read a first data stored at a first address in the I/O device, and (2) a request on the USB to read the first data and additional data stored in the I/O device, wherein the request to read the first data and the additional data is generated in response to generation of the first request; wherein the I/O device is configured to return the requested first and additional data to the host computer via the USB in response to the host computer generating the request to read the first data and the additional data, and; wherein the host computer includes a cache in the memory for storing the returned additional data, wherein the returned additional data is avaible for subsequent access by the host computer.
Claim 21
Dependent Claim
189 words
A universal serial bus system comprising: a universal serial bus (USB) for transmitting data between devices connected thereto; an I/O device coupled to the USB, the I/O device having addressable memory for storing data; a host computer coupled to the USB, wherein the host computer includes a memory, wherein the host computer is configured to generate (1) a first request on the USB to read a first data stored at a first address in the I/O device, and (2) a request on the USB to read the first data and additional data stored in the I/O device, wherein the request to read the first data and the additional data is generated in response to generation of the first request; wherein the I/O device is configured to return the requested first and additional data to the host computer via the USB in response to the host computer generating the request to read the first data and the additional data, and; wherein the host computer includes a cache in the memory for storing the returned additional data, wherein the returned additional data is avaible for subsequent access by the host computer.
Claim 22
Dependent Claim
82 words
The system of claim 18: wherein the host computer is configured to construct a first packet from the request to read the first data and the additional data; wherein the host computer is configured to transmit the first packet over the USB to a I/O device interface in data communication with the I/O device; wherein the I/O device is configured to return the first and additional data to the host computer in response to the I/O device interface receiving the first packet.
Claim 23
Dependent Claim
137 words
The system of claim 18 further comprising: a data structure stored in memory of the host computer, wherein the data structure is configured to indicate cacheability of data stored in the I/O device, wherein the data structure is accessible using addresses of data stored in the I/O device; a cache table stored in memory of the host computer, wherein the cache table is configured to indicate availability and validity of data stored in the cache, wherein the cache table is accessible using addresses of data stored in the I/O device; wherein the host generates the request to read the first data and the additional data in response to the (1) the data structure indicating the first data is cacheable and (2) the cache table indicating the first data is not available as valid data in the cache.
Claim 24
Dependent Claim
30 words
The system of claim 20 wherein the host computer is configured to update the cache table to indicate availability and validity of the additional data stored in the data cache.
Claim 25
Dependent Claim
216 words
The system of claim 18 further comprising: a data structure stored in memory of the host computer, wherein the data structure is configured to indicate cacheability of data stored in the I/O device, wherein the data structure is accessible using addresses of data stored in the I/O device; a cache table stored in memory of the host computer, wherein the cache table is configured to indicate availability and validity of data stored in the cache, wherein the cache table is accessible using addresses of data stored in the I/O device; wherein the host computer is configured to generate a second request to read a second data stored in the I/O device at a second address; wherein the host computer is configured (1) to access the data structure using the second address to determine whether the second data is cacheable in the host computer cache, and (2) to access the cache table using the second address to determine whether the second data is available and valid in the host computer cache; wherein the host computer is configured to read the second data from the host computer cache in response to (1) the data structure indicating the second data is cacheable and (2) the cache table indicating the second data is available and valid in the data cache.
Claim 26
Independent Claim
39 words
The system of 22 wherein the host computer is configured to update the cache table to indicate invalidity of the second data stored in the data cache is invalid after the second data is read from the data cache.
Claim 27
Independent Claim
39 words
The system of 22 wherein the host computer is configured to update the cache table to indicate invalidity of the second data stored in the data cache is invalid after the second data is read from the data cache.
Claim 28
Dependent Claim
166 words
The system of claim 18 further comprising: a data structure stored in memory of the host computer, wherein the data structure is configured to indicate cacheability of data stored in the I/O device, wherein the data structure is accessible using addresses of data stored in the I/O device; a cache table stored in memory of the host computer, wherein the cache table is configured to indicate availability and validity of data stored in the cache, wherein the cache table is accessible using addresses of data stored in the I/O device; wherein the host computer is configured to generate a second request to read a second data stored in the I/O device at a second address; wherein the USB interface is configured to access the data structure using the second address to determine whether the second data is cacheable; wherein the I/O device is configured to return the second data to the host computer in response to the data structure indicating the second data to be uncacheable.
Claim 29
Dependent Claim
28 words
The system of claim 21 wherein host computer is configured to update the cache table to indicate availability and validity of the second additional data in the cache.
Claim 30
Dependent Claim
80 words
The system of claim 18: wherein the host computer is configured to construct a packet from requests to write data to the I/O device, wherein the write data requests are stored in a queue of memory of the host computer, and; wherein the host computer is configured to transmit the packet over the USB to an I/O device interface in data communication with the I/O device before the I/O device returns the first and additional data to the host computer.
Claim 31
Dependent Claim
41 words
The system at claim 18 wherein the first request is generated by a software application executing on the host computer and the request for the first data and the additional data is generated by a driver executing on the host computer.
Claim 32
Dependent Claim
18 words
The system of claim 18 wherein the I/O device includes registers for storing the first and additional data.