Claims
- 1. For use in connection with an information processing system including at least one host CPU and a host memory, said host memory being addressable in a first addressing format, and a subsystem for performing a predetermined aspect of information processing operations being performed by said information processing system, said subsystem including a subsystem memory section addressable in a second addressing format, a method for implementing a data storage and retrieval process for managing data requests in said second format to read and write information between said information processing system and said subsystem, said method comprising:
- generating a data read request from the host CPU for a data read transaction between the subsystem and the host memory, said request being presented as a requested address in said second addressing format;
- calculating within said subsystem an equivalent host memory target address in said first addressing format equivalent to said request in said second format;
- accessing a host memory location at the host memory target address;
- transferring data between said host memory location at the host memory target address and said subsystem in response to said data read request; and
- storing said host memory target address until said accessing step is completed.
- 2. The method as set forth in claim 1 wherein said data read request is a data write request from said subsystem to said host memory.
- 3. The method as set forth in claim 2 and further including:
- storing said data read request within said subsystem until said data read request is accessed by said host CPU.
- 4. The method as set forth in claim 1 wherein said subsystem is a video graphics device.
- 5. The method as set forth in claim 1 wherein said first addressing format is a linear addressing format.
- 6. The method as set forth in claim 1 wherein said second addressing format is a coordinate addressing format.
- 7. The method as set forth in claim 6 wherein said first addressing format is a linear addressing format.
- 8. The method as set forth in claim 1, wherein, after said step of generating, said method includes:
- determining whether said requested address is stored in said subsystem memory section; and
- calculating said equivalent host memory target address only if it is determined that said requested address is not stored in said subsystem memory section.
- 9. The method as set forth in claim 1 wherein said generating step includes:
- presenting said requested address in terms of a start coordinate address, an X coordinate extent and a Y coordinate extent.
- 10. The method as set forth in claim 9 wherein said first addressing format comprises a linear addressing scheme, said data read request being fulfilled through sequential data transfers from said equivalent host target memory address to said subsystem.
- 11. The method as set forth in claim 10 and further including:
- determining, after each sequential data transfer, whether the entire data read request has been completed.
- 12. The method as set forth in claim 11 and further including:
- continuing said reading of data between said host memory target address and said subsystem in response to said data read request until the entire data read request has been completed.
- 13. A subsystem for use with a host computer system, said host computer system including at least one host CPU and a host memory, said host memory being addressable in a first addressing format, said subsystem including a subsystem memory section addressable in a second addressing format, said subsystem being selectively operable for implementing a data storage and retrieval process for managing subsystem requests in said second format to read and write information between said host computer system and said subsystem, said host CPU being selectively operable for generating a data transfer request for a data transfer transaction between the subsystem and the host memory, said request being presented as a requested address in said second addressing format, said subsystem including:
- an address format translation device selectively operable in response to said data transfer request for calculating an equivalent host memory target address in said first addressing format equivalent to said request in said second format;
- a control device connected to said address format translation device, said control device being selectively operable for accessing said the host memory target address;
- means for transferring data between a host memory location at said host memory target address and said subsystem in response to said data transfer request;
- means for calculating whether said requested address is stored in said subsystem memory section; and
- means for determining said equivalent host memory section target address only if it is determined that said requested address is not stored in said subsystem memory.
- 14. The subsystem as set forth in claim 13 wherein said data transfer request is a data read request from said subsystem to said host memory.
- 15. The subsystem as set for in claim 14 and further including:
- a temporary storage device connected to said address format translation device, said temporary storage device being operable for storing said host memory target address until said accessing is completed.
- 16. The subsystem as set forth in claim 13 wherein said data transfer request is a data write request from said subsystem to said host memory.
- 17. The subsystem as set forth in claim 16 and further including:
- a storage device operable for storing said data transferred within said subsystem until said data transferred is accessed by said host CPU.
- 18. The subsystem as set forth in claim 13 wherein said subsystem is a video graphics device.
- 19. The subsystem as set forth in claim 13 wherein said first addressing format is a linear addressing format.
- 20. The subsystem as set forth in claim 13 wherein said second addressing format is a coordinate addressing format.
- 21. The subsystem as set forth in claim 20 wherein said first addressing format is a linear addressing format.
- 22. The subsystem as set forth in claim 13 wherein said requested address is presented in terms of a start coordinate address, an X coordinate extent and a Y coordinate extent.
- 23. The subsystem as set forth in claim 22 wherein said first addressing format comprises a linear addressing scheme, said data transfer request being fulfilled through sequential data transfers from said equivalent host target memory address to said subsystem.
- 24. The subsystem as set forth in claim 23 and further including:
- a transfer completion checking device for determining, after each sequential data transfer, whether the entire data transfer request has been completed.
- 25. The subsystem as set forth in claim 24 and further including:
- means effective to continue said transferring of data between said host memory target address and said subsystem in response to said data transfer request until the entire data transfer request has been completed.
- 26. A computer based information processing system comprising:
- a main system bus;
- a host CPU connected to said main system bus;
- a host memory coupled to said main system bus, said host memory being addressable in a first addressing format;
- a display device;
- a graphics subsystem connected between said main system bus and said display device, said graphics subsystem being selectively operable for implementing a data storage and retrieval process for handling host CPU requests for storage and retrieval of information between said host memory and said graphics subsystem, said host CPU being selectively operable for generating a data transfer request for a data transfer transaction between the graphics subsystem and the host memory, said request being presented as a requested address in second addressing format, said graphics subsystem further including:
- an address format translation device connected to a subsystem processor device, said address format translation device being selectively operable in response to said data transfer request for calculating an equivalent host memory target address in said first addressing format equivalent to said request in said second format;
- a control device connected to said address format translation device, said control device being selectively operable for accessing said the host memory target address;
- means for transferring data between said host memory target address and said graphics subsystem in response to said data transfer request;
- means for calculating whether said requested address is stored in a subsystem memory; and
- means for determining said equivalent host memory target address only if it is determined that said requested address is not stored in said subsystem memory.
RELATED APPLICATIONS
The present application is related to co-pending applications entitled "HOST DMA THROUGH SUBSYSTEM XY PROCESSING", filed on, assigned to the assignee of the present application, and included herein by reference.
US Referenced Citations (7)