Claims
- 1. A process of transferring blocks of data from a first bus to a second bus comprising the steps of:
- detecting if a partial word from a first block of data has been stored in a register and if said blocks of data are being transferred in chain mode;
- transferring said partial word from said register to said second bus prior to receiving a subsequent block of data from said first bus upon detecting that said partial word is stored in said register and that said blocks of data are being transferred in chain mode.
- 2. The process of claim 1, wherein the first bus is an external bus.
- 3. The process of claim 1, wherein the first bus is a SCSI bus.
- 4. The process of claim 1, wherein the second bus is a parallel bus.
- 5. The process of claim 1, wherein the second bus is an internal bus.
- 6. A process for transferring a block of data from a system memory to a bus comprising the steps of:
- detecting if said block of data ends in a partial word;
- detecting if said block of data is being transferred from said system memory in chain mode;
- joining said partial word with a remainder of said partial word if said block of data is being transferred in chain mode;
- transferring said partial word and said remainder to said bus;
- joining said partial word with a dummy byte if said block of data is not being transferred in chain mode; and,
- transferring said partial word and said dummy byte to said bus.
- 7. A process of controlling the transfer of multiple byte words received from an external bus to a system bus comprising the steps of:
- transferring said multiple byte words from said external bus to said system bus as long as said multiple bye words do not form a partial word;
- detecting if at least one residue byte is present in said multiple byte words;
- storing said at least one residue byte in a residue register;
- setting a residue flag that indicates that a residue byte has been stored;
- transferring said at least one residue byte from said residue register to said system bus prior to transferring subsequent multiple byte words; and
- resetting said residue flag.
- 8. The process of claim 7, wherein the external bus is a SCSI bus.
- 9. The process of claim 7, wherein the external bus is a parallel bus.
- 10. A process for transferring a block of data from a system memory to a bus comprising the steps of:
- determining if said block of data ends in a partial word;
- determining if said block of data is being transferred in chain mode;
- transferring said partial word to said bus with a dummy byte when said block of data is being transferred in a mode other than chain mode;
- storing said partial word when said block of data is being transferred in chain mode; and,
- transferring said partial word to said bus with a remainder of said partial word from a subsequent block of data when said block of data is being transferred in chain mode.
- 11. A device for controlling a transfer of data in a transmit mode from a system bus having a first predetermined byte width, to an external bus having a second predetermined byte width, and for controlling a transfer of data in a receive mode from said external bus to said system bus comprising:
- a byte router that arranges said data in words having said first predetermined byte width during said receive mode, and having said second predetermined byte width during said transmit mode;
- a processor that generates a first flag when a first residue byte is detected during said receive mode and a second flag when a second residue byte is detected during said transmit mode;
- a control register that stores said first or second flags;
- a first register that stores said first residue byte when said first flag is stored in said control register; and,
- a second register that stores said second residue byte when said second flag is stored in said control register.
CROSS REFERENCE TO RELATED APPLICATION(S)
This is a continuation of application Ser. No. 07/867,951 filed on Apr. 13, 1992 now U.S. Pat. No. 5,721,954.
US Referenced Citations (32)
Non-Patent Literature Citations (3)
Entry |
NCR Corporation "NCR 53C720 SCSI I/O Processor--Programmer's Guide" 1991. |
NCR Corporation "NCR 53C720 SCSI I/O Processor--Data Manual" 1991. |
Hurlbut et al., "Odd Byte Data Alignment Mechanism for System I/O". IBM Technical Disclosure Bulletin, vol. 24 No. 11B. Apr. 1982, pp. 5948-5950. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
867951 |
Apr 1992 |
|