Claims Analysis
Total Claims: 11
Claim 1
Independent Claim
276 words
A method for managing bidirectional data flow between a first data bus having a fixed data flow rate and storage device connected to a second data bus having variable latency, the method comprising the steps of: receiving inbound data from the first data bus at a fixed rate, once reception of data begins, and immediately storing the inbound data received from the first data bus in a receive buffer memory; forwarding inbound data stored in the receive buffer memory to the storage device, by way of the second data bus; retrieving outbound data from the storage device, by way of the second data bus, and storing the retrieved outbound data in a transmit buffer memory; transmitting outbound data stored in the transit buffer memory onto the first data bus, at a rate that is fixed once access is granted to the first data bus; and controlling the steps of forwarding inbound data to the storage device and retrieving outbound data from the storage device, in such a manner as to require only small receive and transmit buffer memories and to minimize overflow of the receive buffer memory and underflow of the transmit buffer memory, wherein the step of controlling includes determining whether transmitting is in progress, and if transmitting is in progress, giving highest priority for storage device access to the step of retrieving outbound data from the storage device, whereby the possibility of underflowing the transmit buffer memory is minimized; if transmitting is not in progress, giving highest priority for storage device access to the step of forwarding inbound data to the storage device, whereby the possibility of overflowing the receive buffer memory is minimized.
Claim 2
Independent Claim
276 words
A method for managing bidirectional data flow between a first data bus having a fixed data flow rate and storage device connected to a second data bus having variable latency, the method comprising the steps of: receiving inbound data from the first data bus at a fixed rate, once reception of data begins, and immediately storing the inbound data received from the first data bus in a receive buffer memory; forwarding inbound data stored in the receive buffer memory to the storage device, by way of the second data bus; retrieving outbound data from the storage device, by way of the second data bus, and storing the retrieved outbound data in a transmit buffer memory; transmitting outbound data stored in the transit buffer memory onto the first data bus, at a rate that is fixed once access is granted to the first data bus; and controlling the steps of forwarding inbound data to the storage device and retrieving outbound data from the storage device, in such a manner as to require only small receive and transmit buffer memories and to minimize overflow of the receive buffer memory and underflow of the transmit buffer memory, wherein the step of controlling includes determining whether transmitting is in progress, and if transmitting is in progress, giving highest priority for storage device access to the step of retrieving outbound data from the storage device, whereby the possibility of underflowing the transmit buffer memory is minimized; if transmitting is not in progress, giving highest priority for storage device access to the step of forwarding inbound data to the storage device, whereby the possibility of overflowing the receive buffer memory is minimized.
Claim 3
Dependent Claim
90 words
A method as defined in claim 1, wherein the step of controlling further includes, if transmitting is in progress: determining whether the transmit buffer memory is "nearly empty" as indicated by a preselected threshold level having been reached; if the transmit buffer memory is nearly empty, initiating a request to retrieve more outbound data from the storage device; and if the transmit buffer memory is more full than nearly empty, and if the receive buffer memory is not empty, initiating a request to forward inbound data to the storage device.
Claim 4
Dependent Claim
84 words
A method as defined in claim 1, wherein the step of controlling further includes, if transmitting is not in progress: determining whether a step of forwarding inbound data to the storage device is needed and, if so, initiating a request to forward inbound data to the storage device; and if a step of forwarding inbound data to the storage device is not needed, determining whether a step of retrieving outbound data from the storage device is needed and, if so, initiating such a request.
Claim 5
Dependent Claim
119 words
A method as defined in claim 3, wherein the step of determining whether a step of forwarding inbound data to the storage device is needed includes: determining whether receiving is in progress; if receiving is in progress, determining whether the receive buffer memory is "nearly full" as indicated by a preselected memory threshold level having been reached, whereby a nearly full receive buffer memory indicates a need to perform a step of forwarding inbound data to the storage device; and if receiving is not in progress, indicating an idle condition, determining whether the receive buffer memory is not empty, whereby a not empty condition indicates a need to perform a step of forwarding inbound data to the storage device.
Claim 6
Dependent Claim
236 words
A method as defined in claim 1, wherein the step of controlling includes: determining whether transmitting is in progress and; if transmitting is in progress, giving highest priority for storage device access to the step of retrieving outbound data from the storage device, whereby the possibility of underflowing the transmit buffer memory is minimized; if transmitting is in progress, determining whether the transmit buffer memory is "nearly empty" as indicated by a preselected threshold level having been reached, if the transmit buffer memory is nearly empty, initiating a request to retrieve more outbound data from the storage device, and if the transmit buffer memory is more full than nearly empty, and if the receive buffer memory is not empty, initiating a request to forward inbound data to the storage device; if transmitting is not in progress, giving highest priority for storage device access to the step of forwarding inbound data to the storage device, whereby the possibility of overflowing the receive buffer memory is minimized; and if transmitting is not in progress, determining whether a step of forwarding inbound data to the storage device is needed and, if so, initiating a request to forward inbound data to the storage device, and if a step of forwarding inbound data to the storage device is not needed, determining whether a step of retrieving outbound data from the storage device is needed and, if so, initiating such a request.
Claim 7
Dependent Claim
119 words
A method as defined in claim 5, wherein the step of determining whether a step of forwarding inbound data to the storage device is needed includes: determining whether receiving is in progress; if receiving is in progress, determining whether the receive buffer memory is "nearly full" as indicated by a preselected memory threshold level having been reached, whereby a nearly full receive buffer memory indicates a need to perform a step of forwarding inbound data to the storage device; and if receiving is not in progress, indicating an idle condition, determining whether the receive buffer memory is not empty, whereby a not empty condition indicates a need to perform a step of forwarding inbound data to the storage device.
Claim 8
Dependent Claim
388 words
Apparatus for managing bidirectional data flow between a first data bus having a fixed data flow rate and storage device connected to a second data bus having variable latency, the apparatus comprising: a receive buffer memory, for temporary storage of inbound data received from the first data bus and destined for the storage device; a transmit buffer memory, for temporary storage of outbound data retrieved from the storage device and destined for the first data bus; means for receiving inbound data from the first data bus at a fixed rate, once reception of data begins, and immediately storing the inbound data received from the first data bus in the receive buffer memory; means for forwarding inbound data stored in the receive buffer memory to the storage device, by way of the second data bus; means for retrieving outbound data from the storage device, by way of the second data bus, and storing the retrieved outbound data in the transmit buffer memory; means for transmitting outbound data stored in the transmit buffer memory onto the first data bus, at a rate that is fixed once access is granted to the first data bus; and means for controlling the means for forwarding inbound data to the storage device and the means for retrieving outbound data from the storage device, in such a manner as to require only small receive and transmit buffer memories and to minimize overflow of the receive buffer memory and underflow of the transmit buffer memory, wherein the means for controlling includes means for determining whether transmitting is in progress, and transmit priority means, operative only if transmitting is in progress, giving highest priority for storage device access to the means for retrieving outbound data from the storage device, whereby the possibility of underflowing the transmit buffer memory is minimized; wherein the transmit priority means includes means for determining whether the transmit buffer memory is "nearly empty" as indicated by a preselected threshold level having been reached, means operative only if the transmit buffer memory is nearly empty, for initiating a request to retrieve more outbound data from the storage device, and means operative only if the transmit buffer memory is more full than nearly empty, and if the receive buffer memory is not empty, for initiating a request to forward inbound data to the storage device.
Claim 9
Dependent Claim
388 words
Apparatus for managing bidirectional data flow between a first data bus having a fixed data flow rate and storage device connected to a second data bus having variable latency, the apparatus comprising: a receive buffer memory, for temporary storage of inbound data received from the first data bus and destined for the storage device; a transmit buffer memory, for temporary storage of outbound data retrieved from the storage device and destined for the first data bus; means for receiving inbound data from the first data bus at a fixed rate, once reception of data begins, and immediately storing the inbound data received from the first data bus in the receive buffer memory; means for forwarding inbound data stored in the receive buffer memory to the storage device, by way of the second data bus; means for retrieving outbound data from the storage device, by way of the second data bus, and storing the retrieved outbound data in the transmit buffer memory; means for transmitting outbound data stored in the transmit buffer memory onto the first data bus, at a rate that is fixed once access is granted to the first data bus; and means for controlling the means for forwarding inbound data to the storage device and the means for retrieving outbound data from the storage device, in such a manner as to require only small receive and transmit buffer memories and to minimize overflow of the receive buffer memory and underflow of the transmit buffer memory, wherein the means for controlling includes means for determining whether transmitting is in progress, and transmit priority means, operative only if transmitting is in progress, giving highest priority for storage device access to the means for retrieving outbound data from the storage device, whereby the possibility of underflowing the transmit buffer memory is minimized; wherein the transmit priority means includes means for determining whether the transmit buffer memory is "nearly empty" as indicated by a preselected threshold level having been reached, means operative only if the transmit buffer memory is nearly empty, for initiating a request to retrieve more outbound data from the storage device, and means operative only if the transmit buffer memory is more full than nearly empty, and if the receive buffer memory is not empty, for initiating a request to forward inbound data to the storage device.
Claim 10
Dependent Claim
119 words
Apparatus as defined in claim 7, wherein the means for controlling includes: receive priority means, operative only if transmitting is not in progress, giving highest priority for storage device access to the means for forwarding inbound data to the storage device, whereby the possibility of overflowing the receive buffer memory is minimized; wherein the receive priority means includes means for determining whether forwarding inbound data to the storage device is needed and, if so, initiating a request to forward inbound data to the storage device; and means operative only if forwarding inbound data to the storage device is not needed, for determining whether retrieving outbound data from the storage device is needed and, if so, initiating such a request.
Claim 11
Dependent Claim
119 words
Apparatus as defined in claim 8, wherein the means for determining whether forwarding inbound data to the storage device is needed includes: means for determining whether receiving is in progress; means operative only if receiving is in progress, for determining whether the receive buffer memory is "nearly full" as indicated by a preselected memory threshold level having been reached, whereby a nearly full receive buffer memory indicates a need for forwarding inbound data to the storage device; and means operative only if neither receiving nor transmitting is in progress, indicating an idle condition, for determining whether the receive buffer memory is not empty, whereby a not empty condition indicates a need for forwarding inbound data to the storage device.