Computer system with input/output cache
AssigneeInternational Business Machines Corporation
InventorsJames O. Nicholson, John C. O'Quin, III, John T. O'Quin, II, Frederick E. Strietelmeier
Life of this patent
Estimating the term…
Abstract
A computer system has a cache located between input/output devices and a main system memory. All system memory accesses by the input/output devices are made through the cache. Memory accesses through the cache are limited to those addresses which are accessible to a central processor and input/output devices. All access to such addresses by the central processor are made through the cache.
Claims5
In a computer system having a central processor for accessing virtual pages, an input/output device for accessing virtual pages, a system memory, a central processor cache connected to the central processor and the system memory, and an input/output cache connected to the system memory, to the central processor, and to the input/output device, a method of accessing the system memory comprising the steps performed by the computer system of:
- allocating locations in the system memory among a central processor non-shared region, an input/output non-shared region, and a shared region;
- addressing the central processor non-shared region through the central processor cache in response to an access of a virtual page stored in locations allocated to the central processor non-shared region, wherein such access can only be initiated by the central processor;
- addressing the shared region through the input/output cache in response to an access of a virtual page stored in locations allocated to the shared region, wherein such accesses can be initiated by either the central processor or the input/output device;
- and
- addressing the input/output non-shared region through the input/output cache in response to an access of a virtual page stored in locations allocated to the input/output non-shared region, wherein such accesses can only be initiated by the input/output device.
A method for reading data from and writing data to a system memory in a computer system comprising the steps of:
- allocating locations in the system memory among a central processor non-shared region, an input/output non-shared region, and a shared region;
- reading, by a central processor, contents of locations in the central processor non-shared region from a central processor cache connected to the system memory and to the central processor, wherein the central processor cache reads the contents of such locations from the system memory and caches them for access by the central processor;
- writing data from the central processor to locations in the central processor non-shared region by writing such data to the central processor cache, which caches such data and writes it to the system memory;
- reading, by the central processor, contents of locations in the shared region from an input/output cache connected to the system memory, to an input/output device, and tot he central processor, wherein the input/output cache reads the contents of such locations from the system memory and caches them for access by the central processor;
- writing data from the central processor to locations in the shared region by writing such data to the input/output cache, which caches such data and writes it to the system memory;
- reading, by the input/output device, contents of locations in the shared region and in the input/output non-shared region from the input/output cache, wherein the input/output cache reads the contents of such locations from the system memory and caches them for access by the input/output device;
- and
- writing data from the input/output device to locations in the input/output non-shared region by writing such data to the input/output cache, which caches such data and writes it to the system memory.
Dependencies are inferred from the claim text.