Claims
- 1. A system for transferring a designated number d of data bytes in a data block from a first to a second data bus comprising:
- a data buffer, having a capacity of less than d data bytes, connected between said busses;
- a first counter for counting the total number of data bytes in said data block transferred from said first bus to said buffer, said first counter having a count capacity greater than capacity of said buffer;
- a second counter for counting data bytes transferred from said buffer to said second bus; and
- means connected to said counters for indicating when d data bytes have been transferred from said first bus to said buffer and from said buffer to said second bus.
- 2. The system of claim 1 further comprising:
- means for providing the number d to said first counter.
- 3. The system of claim 2 wherein:
- said first counter can hold a maximum count of 2.sup.n, where n is a positive integer and 2.sup.n >d; and
- d is provided to said first counter as an n bit binary number.
- 4. The system of claim 3 wherein said second counter is a modulo 2.sup.k+1 counter, where k is an integer, 0<k<n, and 2.sup.k =buffer data byte capacity.
- 5. The system of claim 4 further comprising:
- means for providing the k+1 low order bits of said n bit binary number to said second counter.
- 6. The system of claim 5 wherein:
- said first counter is decremented for each data byte transferred from said first bus to said buffer; and
- said second counter is decremented for each data byte transferred from said buffer to said second bus, said second counter rolling over on a 2.sup.k+1 frequency.
- 7. The system of claim 1 wherein said indicating means includes means for generating a first signal indicating when d data bytes have been transferred from said first bus to said buffer and a second signal indicating when d data bytes have been transferred from said buffer to said second bus.
- 8. The system of claim 7 wherein said generating means comprises:
- a first decoder connected to said first counter for receiving a count from said first counter;
- a second decoder connected to said second counter for receiving a count from said second counter; and
- a signal bus connecting said first and second decoders.
- 9. The system of claim 8 wherein:
- 2.sup.k =buffer data byte capacity, where k is a positive integer;
- said first decoder generates said first signal, and further generates third and fourth signals;
- said third signal indicates less than 2.sup.k+1 data bytes remain to be transferred from said first bus to said buffer; and
- said fourth signal indicates less than 2.sup.k data bytes remain to be transferred from said first bus to said buffer.
- 10. The system of claim 9 wherein:
- said second decoder receives said third and fourth signals and generates said second signal, in response to the third and fourth signals.
- 11. The system of claim 1 wherein said data buffer is a fall through, FIFO device having a plurality of adjacent stages, data bytes from the first bus are received at a first stage and ripple through adjacent empty stages, and wherein data bytes are transferred to the second bus from the last stage.
- 12. The system of claim 1 wherein said buffer includes:
- means for receiving a first strobe signal to transfer data from said first bus to said buffer; and
- means for receiving a second strobe signal to transfer data from said buffer to said second bus.
- 13. The system of claim 12 wherein:
- said first counter includes means for receiving a first count changing signal concurrently with receipt by said buffer of said first strobe signal; and
- said second counter includes means for receiving a second count changing signal concurrently with receipt by said buffer of said second strobe signal.
- 14. The system of claim 13 wherein said first and second count changing signals decrement said counters.
- 15. A system for transferring a designated number d of data bytes in a data block from a first to a second data bus comprising:
- a data buffer, having a capacity of less than d data bytes, connected between said busses;
- a first counter for counting the total number of data bytes in said data block transferred from said first bus to said buffer, wherein said first counter can hold a maximum count of 2.sup.n, where n is a positive integer and 2.sup.n >d;
- a second counter for counting data bytes transferred from said buffer to said second bus, wherein said second counter is a modulo 2.sup.k+1 counter, where k is an integer, 0<k<n, and 2.sup.k =buffer data byte capacity;
- means for providing the number d to said first counter, d being provided to said first counter as an n bit binary number, and for providing the k+1 low order bits of said n bit binary number to said second counter;
- a first decoder connected to said first counter for generating a first signal indicating when d data bytes have been transferred from said first bus to said buffer; and
- a second decoder connected to said second counter for generating a second signal indicating when d data bytes have been transferred from said buffer to said second bus.
- 16. The system of claim 15 wherein:
- said first counter is decremented for each data byte transferred between said first bus and said buffer; and
- said second counter is decremented for each data byte transferred between said second bus and said buffer, said second counter rolling over on a 2.sup.k+1 frequency.
- 17. The system of claim 16 further comprising a signal bus connecting said first and second decoders, wherein:
- said first decoder generates said first signal, and further generates third and fourth signals;
- said third signal indicates less than 2k+1 data bytes remain to be transferred between said first bus and said buffer;
- said fourth signal indicates less than 2k data bytes remain to be transferred between said first bus and said buffer; and
- said second decoder receives said third and fourth signals over said bus and generates said second signal, in response to the third and fourth signals.
- 18. The system of claim 17 wherein:
- said data buffer is a fall through, FIFO device having a plurality of adjacent stages, data bytes from the first bus are received at a first stage and ripple through adjacent empty stages, and wherein data bytes are transferred to the second bus from the last stage;
- said buffer includes means for receiving a first strobe signal to transfer data between said first bus and said buffer, and means for receiving a second strobe signal to transfer data between said buffer and said second bus;
- said first counter includes means for receiving a first decrementing signal concurrently with receipt by said buffer of said first strobe signal; and
- said second counter includes means for receiving a second decrementing signal concurrently with receipt by said buffer of said second strobe signal.
- 19. A method for transferring a designated number d of data bytes between first and second data busses connected by a data buffer, said buffer having a capacity of less than d data bytes, comprising:
- loading a first counter with the number d;
- loading a second counter with a number less than d;
- transferring data bytes between said first bus and buffer and decrementing said first counter with each such transfer;
- transferring data bytes between said buffer and said second bus and decrementing said second counter with each such transfer; and
- generating first and second signals in response to the counts in said counters indicating when d data bytes have been transferred between said busses.
- 20. The method of claim 19 wherein said first counter can hold a maximum count of 2.sup.n, where n is a positive integer and 2.sup.n >d, said second counter is a modulo 2.sup.k+1 counter, where k is an integer, 0<k <n, and 2.sup.k =buffer data byte capacity, and wherein:
- d is provided to said first counter as an n bit binary number when loading said first counter; and
- the k+1 low order bits of said n bit binary number are provided to said second counter when loading said second counter.
- 21. A data transfer system comprising:
- a first counter for counting data transfers through one port of a buffer, said first counter having a count capacity greater than capacity of said buffer;
- a second counter for counting data transfers through another port of said buffer; and
- decoding circuitry connected to each of said counters, said circuitry receiving selected count information from each of said counters to indicate when a predetermined amount of data, greater than the capacity of the buffer, has been transferred through said buffer.
- 22. The data transfer system of claim 21 wherein said first counter has a count capacity greater than said second counter.
Parent Case Info
This is a continuation of application Ser. No. 07/522,715 filed on May 14, 1990, now abandoned.
US Referenced Citations (16)
Continuations (1)
|
Number |
Date |
Country |
Parent |
522715 |
May 1990 |
|