EP0473377A2

Data transfer in a data processing system.

Abstract

The peripheral cache DASD subsystem (19) is connected to one or more host processors (10). A channel connection (12) between the host processor and the peripheral subsystem has a much higher burst rate then the burst data transfer rate of a DASD (20) while having an extended signal propagation time preventing rapid exchanges of interactive control signals. The branch write occurs in that data is written both to the DASD and to the cache (16) simultaneously. The write domain is established in the subsystem by the host processor in a number of records to be updated or number of records to be formatted on the DASD when the available cache space is compared with a needed cache space for the entire write domain. Whenever the available cache space is less than the write domain needs, then the data transfer is subsetted to match the available cache space. Calculations for determining the maximum cache space is described and sets of machine operations are disclosed for effecting the above operations.

EP0473377A2, drawing sheet 1
Sheet 1 of 4

Term

Term ended

Projected expiry passed 23 August 2011, 15.1 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

12 claims: 7 independent, 5 dependent

  1. 1
    A method of operating a cached peripheral controller having a cache connected to a DASD, including the steps of:establishing that an upcoming data transfer for a predetermined number of records of a file constitutes a write domain to be transferred wherein the records have a predetermined number of bytes of data;measuring the available cache storage for storing the predetermined number of records;if the measured available cache storage is less than that necessary for storing the predetermined number of records, subsetting the data transfer into subsets of records in which available cache can receive and store all records in each of the subsets of records;and    storing the records transferred during the data transfer effectively simultaneously in the cache and in the DASD.
  2. 4
    A method as claimed in any of claims 1 to 3 further including the steps of:limiting the predetermined number of records to be no greater than can be stored in a track of said DASD having said second data storage capacity;upon transferring data equal to said second data storage capacity, repeating the measuring step for permitting continued data transfer only if the available cache segments can store records of said second data storage capacity, otherwise delaying the data transfer until cache segments are available for storing records of the file equal to the second data storage capacity;and    repeating the immediately above two recited steps until the data transfer is completed.
  3. 5
    A method as claimed in any of the preceding claims further including the steps of:providing a rate-changing buffer having a channel input-output end and a device input-output end and supplying all of the records to be recorded to the channel end of said rate-changing buffer and then from said device end simultaneously supplying a copy of each record to the cache and to the device for storage therein;at said channel end of the rate-changing buffer detecting when the data transfer is to stop at an address of a current track of the device receiving the records and resuming the data transfer at a different track of the device;and    repeating the measuring step upon each such detection of said end of track address for finding at least a number of available cache segments which having a storage capability to receive and store records of the file at least equal to said second data storage capacity.
  4. 6
    A method as claimed in any of the preceding claims further including the steps of:consecutively numbering the records in the file;establishing the write domain to begin with a first given record number and including all higher numbered records up to a second given record number;in said measuring step, detecting when a record of the file having a record number lower than said first given record number, then determining the number of records to be stored in the cache between said detected record number and said first given record number, and adding a number of cache segments for storing records of the file having numbers between said detected record number and said first given record number.
  5. 7
    A method as claimed in any of claims 1 to 4 further including the steps of:providing a rate-changing buffer having a channel input-output end and a device input-output end and supplying all of the records to be recorded to the channel end of said rate-changing buffer and then from said device end simultaneously supplying a ropy of each record to the cache and to the device for storage therein;and    performing said measuring step at the channel end of the rate changing buffer.
  6. 9
    A method of operating a cached peripheral controller having a cache connected to a device, including the steps of:establishing that an upcoming data transfer for a predetermined number of records of a file and constituting a write domain are to be transferred wherein each of the records have a predetermined number of data bytes;establishing a set of addressable cache segments in the cache each having a data storing capacity which is a sub-multiple of the data storing capacity of an addressable data storing portion of the device;and    before the data transfer, initially allocating a number of the cache segments for the data transfer which is at least equal to the number of records of data to be transferred.
  7. 11
    A method as claimed in any of claims 9 or 10 further including the steps of:providing a rate-changing buffer having a channel input-output end and a device input-output end and supplying all of the records to be recorded to the channel end of said rate-changing buffer and then from said device end simultaneously supplying a copy of each record to the cache and to the device for storage therein;and    performing said measuring step at the channel end of the rate changing buffer.