CN1059439A - 非同步通道/直接存取存储器设备通信系统 - Google Patents

非同步通道/直接存取存储器设备通信系统 Download PDF

Info

Publication number
CN1059439A
CN1059439A CN91108613A CN91108613A CN1059439A CN 1059439 A CN1059439 A CN 1059439A CN 91108613 A CN91108613 A CN 91108613A CN 91108613 A CN91108613 A CN 91108613A CN 1059439 A CN1059439 A CN 1059439A
Authority
CN
China
Prior art keywords
buffer
dip
record
chip
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN91108613A
Other languages
English (en)
Other versions
CN1022724C (zh
Inventor
布伦特·卡姆龙·比尔兹利
凯蒂·安托尼·贝罗
迈克尔·托马斯·本哈斯
弗劳伦斯·琼·克拉克
鲍尔·维恩·亨特
多纳德·马文·诺代尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1059439A publication Critical patent/CN1059439A/zh
Application granted granted Critical
Publication of CN1022724C publication Critical patent/CN1022724C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements

Abstract

一种控制单元。用于设备与一个缓冲器之间以 及一条通道与一个缓冲器之间传输数据的DASD操 作。以使通道与设备能够以互相独立的方式传输数 据。提供了用于在控制单元内的通道接口进程与控 制单元内的设备接口进程之间进行通信的机构。这 些机构中的一些是与记录一起存储在缓冲器中的而 另一些则是存储在控制存储器中的。基本通信机构 包括一设备记录指针、一通道记录指针、一个下一操 作字段、一设备状态标志、记录控制标志。以及两个 缓冲器指针。

Description

本发明涉及数据处理系统,而更具体地涉及对以非同步方式操作的DASD(直接存取存储器设备)外围数据处理系统的控制。
数据处理系统通常包括位于主计算机外部且有时离主计算机相当远的距离上的大规模存储器设备,诸如直接存取存储器设备(DASD)。从主计算机到DASD的通信是在延伸在DASD及其控制单元之间并将它们连接到主处理器的称作通道的信号电缆上完成的。
现代技术在DASD单元中设置了在同一轴上转动的若干独立的盘。这些盘是由头盘组件存取的,每一片盘的一面有一个进行存取的传感头。例如,在一台盘驱动器中可以有九片盘,它们提供十六个可用的面,其中一个可用的面用于保持精确的跟踪功能。在这样的单元中,有15个面可用于数据,而当所有的头都定位后,则可以存取包含15个物理记录道的一个柱面。
DASD单元通常采用计数关键数据结构(CKD),其中写在道上的记录设有一个计数字段(一个标识)、一个关键字段及一个数据字段。
在沿一条记录道写这些字段时,在各字段之间留有间隙。尔后,利用这些空隙来提供一个时间间隔,在这些时间间隔中DASD控制单元与主通道能互相通信。就是在这些空隙时间中,控制单元对其所接收到的命令作出应答将信息送回通道并为开始下一次查找、检索或写记录操作接收命令。这一过程称作空隙同步,即DASD设备正在工作着的特定记录正是通道要求工作的同一记录,所以从它们两者都在同一记录上工作这一意义上,通道与设备是互相同步的,这种工作或者是读记录或者是写记录。
随着系统越来越快,空隙产生的延迟或者在一个空隙时间中所完成的功能所产生的延迟必须缩减到这样的大小,使得这些功能再也没有充足的执行时间。这对于光纤通道尤其实际,因为其数据脉冲率数倍于铜通道的脉冲率。
本发明开发了非同步存储器子系统使通道与设备能够互相独立地传输数据。为了做到这一点,在设备与通道之间的数据路径上插入一个缓冲器,它与通道与设备具有各由独立的处理器控制的独立的数据路径。以这种方式,设备处理器能存取缓冲器的一部分中的记录而缓冲器的另一部分则由通道处理器使用。通道程序能够这样执行使得结束一条命令的执行而前进到下一条的通道与存储器控制活动没有必要在两个邻接的字段之间的记录间空隙中发生。
在一个同步系统中,设备与通道在同一记录上操作,所以设备传输到缓冲器的数据便是通道所需要的相同数据。在这样一个系统的控制单元中,共享的变量便是全部需用于实现通道处理器与设备处理器之间的接口的变量。简单的共享变量便已足够因为通道处理器与设备处理器始终在同一段上执行相同的操作。然而,在一个非同步系统中,在读操作中设备可大大超前于通道操作。设备处理器正在从设备向缓冲器传输数据而通道处理器正在存取这些数据以便将它们送上通道。所以,设备处理器是填充或前导活动,而通道处理器则是尾随或滞后活动。在写操作中正好相反,这时通道处理器将来自通道的数据填充缓冲器,而随后设备处理器存取这些数据将它们送至设备用于在存储器盘上写入记录。在这一情况中,通道处理器是前导或填充活动而设备处理器是尾随或清空活动。由于在一个非同步的控制单元中,通道与设备处理器可能在不同的字段上执行不同的操作。所以两者之间需要有一种更精巧的通信系统。
本发明的一个目的是除了允许通道与设备处理器并发地在同一字段上操作外,还允许它们并发地操作在不同的字段上。
另一个目的是以维持对缓冲器的记录一系列物理的记录控制来增进性能。
又一个目的是防止后随的进程赶上并超过前导的进程。
另一个目的是使得前导进程能以绕回到缓冲器的开始而不赶上与超过后随的处理器而向缓冲器传输多个记录。
简单地说,本发明是用于在通道进程间进行通信的一种具有特定机构的通信系统。本系统具有下述基本元素:两个记录指针,一张下一操作字段表,一个设备进程状态标志,记录控制标志,以及两个缓冲器指针。这些元素中的一些是与记录一起存储在缓冲器中的,这是为了便于设备与通道进程两者能够容易存取。
本发明的上述及其它特性与目的以及达到它们的方式参照下述结合附图的对本发明的说明会更加清楚,并且对本发明本身也将得到最好的了解,下面便是附图的说明。
图1示出了包含本发明的一个数据处理系统的简化框图。
图2示出缓冲器的一个布置图。
图3示出了表1与表2。表1示出了在读操作时与记录一起包含在缓冲器中的那些控制参数。表2示出了在写操作时与记录一起包含在缓冲器中的控制参数。
图4由表3构成,它示出了包含在缓冲器中的附加控制参数。
图5由表4与表5构成,示出向缓冲器存储及从缓冲器移出数据的规则。
为了非同步地操作,研制了一种扩展的CKD结构(ECKD)使通道程序得以在第一条数据传输命令执行以前描述一次数据传输的性质与范围。ECKD包含一条定位记录扩展命令。它使用一个变长参数来为随后的通道命令字(CCW)链定义操作域。参数指定要执行的操作,要处理的记录或道的位置与数目,以及传输长度因子。以这种方式,存储器子系统被告知要执行的数据传输的类型,要在上面进行操作的记录的数目,以及在启动数据传输以前设备必须定位到其上面的道扇区与记录的标识符(ID)。
非同步操作并不定义通道与设备操作在时间上必须相隔多久,也并不限定它们之间的间隔。在读操作时,在执行第一条读命令以前,设备控制可读取几个比特、一个字段、一条记录、或者甚至若干条记录到缓冲器中。在写操作时,在第一字段写入到设备前,通道控制可接受一条或多条写命令并将相关的数据传输到一个缓冲器中。
ECKD采用与著名的CKD方式相同的道寻址方式。道是一台设备上的最小可直接寻址空间,而每道有一个称作索引的任意起点。道的格式在ECKD中与在CKD中是相同的。道上的第一个区域是其内部地址,它标识该道,随后便是称作记录零的一个包含该道的地址的一个特殊记录。记录零之后跟随着包含用户记录的一个数据区。
在数据传输可以开始以前,必须先定位设备控制。这是以检测索引点或者不是记录零的计数起始区来进行的。一旦检测到计数区或索引,设备控制便可在该道上继续工作下去来执行通道命令的操作。
确认定位记录参数之后,控制单元引导设备查找一个第一指定的道。将设备定位在指定的扇区上,并开始一个查找操作进一步将本身定位在该道上的一个特定的记录区上。
图1示出了包含本发明的一个数据处理系统的一个简化框图。主处理器10以一条通道11连接到一个控制单元12。控制单元12与DASD13包含一个用于管理DASD上的存储活动的外围数据处理子系统。图1是经过简化的。实际上可能有若干条通道11连接到控制单元12。当前,一种通用的配置有16条连接到一个控制单元的通道。结果是可以在一个控制单元上连接多达16台主处理器,不过冗余要求通常限制主处理器的数目。在同一配置中,该控制单元可连接到64个DASD;然而,对于本发明的目的而言,究竟有多少条通道或者有多少个DASD连接到控制单元是无所谓的,所以,如图1所示的简化方式已足以说明本发明的环境。
控制单元12包括管理通道与DASD之间的数据传输所需要的全部电子电路、微处理器以及微代码。这些设备是公知的,并且在图1中只示出了控制单元12中的一部分电路。图1示出了一个控制存储器14,它包含控制寄存器15与一个数据缓冲器16。控制存储器14。及其中的各种缓冲器与寄存器,是连接到并受控于一台通道接口处理器17,一台设备接口处理器18以及一台异常情况处理器19。通道处理器17与设备处理器18两者都能存取数据缓冲器16,并且也可存取其它存储器区域,诸如图1中未示出的高速缓冲存储器。需要指出的是,设备处理器18与通道处理器17可以是独立的处理器或者它们可以实现为在同一处理器20上操作的独立进程。作为独立的处理器或者作为在同一处理器上的独立微代码模块的两种实现只是基本上受速度与成本考虑左右的不同选择而已。在这里所用的名词“设备接口处理器”与“设备接口进程”是同义词,对于名词通道进程与通道处理器也是一样。
图2示出了数据缓冲区16的布置。在图2所示的实现中,数据缓冲器包含64K字节,其中第一个1.0K区域独立且不同于1.0K与2.0K之间的区域而这第二区域独立且不同于从2.0K延伸到64K的缓冲区的主体部分。以这种方式,在缓冲区的三个独立部分中可进行一定的独立活动。例如,在部分30中,控制命令可以放置在保护区中。而高速缓冲存储器与通道数据传输则可发生在回绕区31中。区域32可用于纠错。
缓冲器的主体62K部分是该缓冲器用于在设备与通道之间传输数据的部分。写操作的计数字段(以及当关键字段不更新时用于分支操作的关键字段)可位于保护区33中而数据则进入剩下的61.5K区域34中,此后称作回绕区。图2示出了正在设备与通道之间传输的各种记录。如图所示,设备13当前正在存取记录2的数据字段且一个硬件设备缓冲器指针(DBP)35指向记录2数据字段中的这一特定位置。同样,图2示出了通道11当前正在从记录1存取数据而一个通道缓冲器指针(CBP)35包含记录1中的回绕数据字段的地址。这一非同步操作的图示示出了设备13与通道11可在不同记录上操作这一事实。
图2可用于阐明在非同步操作中存在的而在本发明中得到补救的某些通信问题。例如,假定一个读操作正在进行;因此设备进程18领先于通道进程17。参见图2,记录1已传输进缓冲器而设备进程当前正在从设备将记录2传输进缓冲器。假定由于某种原因,后随的通道进程17赶上了领先的设备进程18并超过了它,则通道11将接收到无意义的数据。同样,假如领先的设备进程到达了缓冲器的后尾并回绕回在2.5K处的顶部开始的缓冲器中读入更多的记录,设备进程有可能最终赶上通道进程并超过它,在这一情况中,通道将接收不到它为之发出读命令的所有记录。本发明以在系统中设置通信机构来防止这些情况的出现来处理这一问题。
为了通道进程或处理器(CHIP)与设备进程或处理器(DIP)之间的正常通信,本发明的通信系统具有作为其主要元素的两个逆指针、一张下一操作字段(NOF)表、一个DIP状态标志、记录控制标志、以及两个缓冲器指针。
两个逆指针称为通道定位记录与字段(CORF)以及设备定位记录与字段(DORF)。CORF为通道进程(CHIP)指示在道上意图操作的位置,而DORF则指示DIP在道上的位置。比较这两个指针便可确定通道程序与设备的相对位置。
CORF与DORF各包含两个元素:(1)一个记录计数(CORF.R与DORF.R),以及(2)一个字段标识符(CORF.F与DORF.F)。除了DORF.R也与记录为读操作而一起存储在数据缓冲器16以外,这些参数都是维护在存储器控制寄存器15中的。
一个1或2的记录计数分别指示相关的进程是在一个内部地址上还是在记录零上操作。记录计数中的其它值对于确定CHIP与DIP的相对位置是有用的,但并不一定与道上的特定记录相关。
位于控制寄存器15中的DORF字段标识符(DORF.F)指示DIP正在操作的实际的字段。通常,由DIP改变这一参数,然而,当在数据字段中出现错误而被异常情况处理器19纠正以后,该处理器将把DORF.F改变为一个特定的值向通道进程指示该数据字段是有效的并且它不能等待DIP前进到下一个记录。如果该数据是用于命令链中最后一个CCW的,等待DIP重新定位在记录上所花费的时间便可以节省。
DORF.F参数指示DIP正在操作的实际字段,而CORF.F参数则指示CHIP将要操作的下一个所要求的字段。
下一个操作字段(NOF)参数是在写或寻找操作时CHIP用于指导DIP的操作的。其主要用途是在写操作中通道程序在设备前面起动时。当CHIP前进通过通道程序时,为每一条写命令在缓冲器16中存储一个NOF项。以这种方式,当DIP到达缓冲器中所要求的点时,它便能取出该NOF并且指定的操作便可由DIP执行。
在CORF.F寄存器的比特零中包括一个NOF有效标志(NOFVAL)。这是在写操作中CHIP完成了各种操作以后用来向DIP发出信号的。首先,它是用于指示NOF与目的计数已存储在缓冲器16中。
注意NOF是CHIP在写时用来指导DIP的操作的。在读操作时,NOF不必在场;设备只须前进并顺序读取记录。然而,如果一个NOF在场,则设备将进行该NOF要求它做的操作。
DIP状态标志是DIP在控制寄存器15中设置的,使得CHIP能够检测出DIP是否是空闲的,还是正活跃于执行写与寻找操作,还是正活跃于执行读操作,或者出现错误。
记录控制标志(RCF)存储在缓冲器中的记录中供CHIP与DIP两者使用。CHIP使用这些标志指导DIP跳过下一个字段或一道中剩下的记录。DIP则使用这些标志将一个记录类型通知CHIP以及是否检测到了一个无效的道。
最后,有两个称作通道缓冲器记录指针(CBUF)及设备缓冲器记录指针(DBUF)的缓冲器指针。CHUF是CHIP设置来指示它当前正在处理的一个记录的缓冲器地址的。DBUF是DIP设置来指示它当前正在处理的一个记录的缓冲器地址的。这两个指针连同缓冲器回绕(WRAP)参数是供CHIP与DIP两者用来控制填充与清空进程使得该两个进程不致互相重叠。它们同时还指向包含正在被CHIP与DIP处理的记录的NOF与RCF的缓冲器记录。CBUF与DBUF是保持在控制存储器寄存器51中的。参见图2,注意DBUF指向DIP正在处理的记录的起始位置,即记录R2的起始位置,而CBUF则指向CHIP正在处理的记录,即记录R1的起始地址。在这一点上,还应注意缓冲器是分成256字节的页的,而每一个放置在缓冲器中的记录是起始在一个页的界限上的。所以,记录R1起始于页10,而记录R2起始于页16。CBUF与DBUF将总是指向缓冲器中页界限上的一个地址,而设备缓冲器指针35与通道缓冲器指针36则指向记录内的设备或通道位置。
前一页指针参数(PREVPTR)是一个在每一缓冲器记录映象中的单字节值,它指向前一个记录的第一个缓冲器页。它包括在每一个记录中以保证对于缓冲器寻址而言后随的与领先的进程是同步的。领先的进程在将其指针前移到新记录位置以后将这一参数存储在缓冲器中。当后随的进程将其指针前移到它计算出的下一个记录的起始点时,它将PREVPTR与前一个记录的位置进行比较。如果两个值相符,则新的后随进程指针(即,CHIP的CBUF或DIP的DBUF)被认为是正确的。如果两个值不符,则当前指针是错误的。
目的计数参数(INTCT)也存储在缓冲器中供写操作使用。在一次写操作中,每当CBUF前进到下一记录时,CHIP将目的计数的值存储在缓冲器中。目的计数指示在写操作区域中剩下的要处理的记录的数目。在写区域中,每一条通道命令在一个记录界限上操作;因此,剩下的要处理的CCW的数目等于目的计数。目的计数是起初与定位记录命令在一起传送的一个参数并在初始化时存储在控制寄存器中的。然后,每当一次跨越一个记录界限的写CCW或读CCW完成时,CHIP将内部寄存器中的目的计数减1。
图3.表1示出存储在缓冲器中供读操作用的参数。在字节0处,存储表示前一记录起始的页的前一页指针。这一值是DIP前移该指针存储的并在以后由CHIP检验。在字节1处,存储表示该记录的相对记录号的DORF.R参数。这是设备在处理这一记录时它正在其上工作的记录号。在字节2与3处,存储下一操作字段参数,在读操作中它是全零。在字节4与5处,存储记录控制标志,它们是DIP初始化的字节。CHIP使用字节4向DIP传送关于CHIP需要这一记录或者剩下的道的多少的信息。DIP使用字节5向CHIP传递信息,诸如记录的类型或者一个道是无效的。计数字段是存储在字节8至39,以及关键与数据字段是存储在字节42+中(字节42以后)。
图3,表2示出在写操作中与记录映象一起存储在缓冲器中的参数。在字节0处,存储前一页指针。当CHIP前移该指针时存储该值并在以后由DIP检验。在字节1处,存储目的计数以示在写区域中剩下的要处理的记录数目。在字节2与3处,存储下一个操作字段以供当DIP到达这一记录时向其指示之用。字节4与5存储记录控制标志,它们是由CHIP初始化而由DIP使用来指示关于所遇到的错误的该记录的状态的。在字节8到31处,存储写特殊内部地址指令的计数段,以及在字节32至39存储从主处理器传输来的计数。在字节42+存储关键与数据字段。
图4示出在缓冲器中各种记录控制标志的分解图。RCF1是由缓冲器填写进程初始化,并接着由CHIP设置及由DIP测试的。RCF2是由缓冲器填写进程初始化并接着由DIP设置及由CHIP测试的。注意,当CBUF在一个写操作上前进时,CHIP初始化RCF1。而当DBUF在读操作上前进时,DIP初始化RCF2。
在RCF1中,写映象参数是一个比特(bit),在写中由CHIP初始化为1而在读时由DIP初始化为0。当设置成1时,这一比特指示该记录是一个写映象;当设置成0时,这一比特指示该记录是一个读映象。在比特1,如果在这一道上剩下的记录不再需要,则由CHIP设置去往道末尾参数。这一参数可用于允许CHIP使DIP越过一个CHIP不需要的记录的计数字段上的一个无法纠正的错误。不需要关键参数在不需要关键字段时由CHIP设置。同样,当不需要数据字段时,由CHIP设置不需要数据参数。这些比特使得DIP能够越过关键字段或数据字段在比特7上的CHIP重做参数向异常情况处理器指示CHIP正在执行一次重做。
在RCF2中,记录类型的比特指示缓冲器映象中包含的记录的类型。如果这两个比特是零,则在缓冲器中是一个正常的记录。0-1指示一个内部地址,1-0指示记录零,而1-1指示索引或道末尾。道末尾(EOT)标志是CHIP在EOT时间而不是在下一道的开始时用于感测在读道命令的完成状态的。CHIP也使用EOT标志来起动索引处理以确定下一个道是哪一个。索引处理观察控制存储器中的道序列标志以得到下一个道的信息。无效道标志,比特10,在一个逆由DIP从DASD上读取时指示该道被发现为无效的。去往高速缓冲寄存器主处理器操作标志指示DIP被关闭并且CHIP必须退出至通道主处理器操作,DIP重做参数,比特15,指示DIP重做这一记录中的一个字段。这一比特是异常情况处理器用来进行错误修复的。
如上所述,需要在DIP与CHIP之间进行通信的一种机构,使这两个进程在处理缓冲器中的数据时不致互相重叠。缓冲器是分成256字节的页的,所以一个页地址可以包含在一个单字节寄存器中。每一个记录起始于一个页界限上。CHIP正在其上工作的页地址放在CBUF寄存器中。这两个寄存器用于分配缓冲器中的空间以使两个进程不致互相干扰。
对于写操作,在每一个记录的数据传输完成时CHIP前移CBUF。对于读操作,当接收到一个新记录的下一个CCW时CHIP前移CBUF。而当为读与写两种操作传输了数据字段时,DIP前移DBUF。
每当CHIP或DIP将CBUF或DBUF绕回到缓冲器的起始位置时,绕回参数被触发。绕回值为0指示CHIP与DIP是在通过缓冲器的同一行程中。绕回值为1指示填写进程已从缓冲器的末尾绕回到前面,而清空进程则没有。
在一次写操作时,DIP将记录存储进缓冲器并前移DBUF。对于DIP存储在缓冲器中的每一个记录,它将DORF.R与该记录一起存储。当CHIP查找它所需要的记录时,它将CORF.R与该记录在缓冲器中的DORF.R进行比较。如果比较结果相等,CHIP将该记录传输到通道;否则CHIP将CBUF前移到下一记录并继续比较直到相符或找到一个索引。
在读操作时,DIP是缓冲器填写者,而CHIP则是缓冲器清空者。CBUF,DBUF与WRAP(绕回)如图5表4中所描述的那样使用以防止DIP复盖缓冲器中CHIP仍然需要的记录。表4示出,如果WRAP比特为0,DIP可以前进。然而,如果WRAP比特为1,DBUF必须与CBUF进行比较,如果DBUF小于CBUF,DIP可以前进,因为这指示DIP正在CHIP已经处理过的一页上进行操作。然而如果WRAP为1且DBUF等于或企图大于CBUF,DIP必须停止处理。设备则需要重新定位;即将发生一个第一次转动。
在写操作时,表4示出如果WRAP比特为0,CHIP可以继续填写缓冲器。如果WRAP比特为1且CBUF小于DBUF,CHIP可以继续填写缓冲器。然而,如果WRAP比特为1且CBUF等于或企图大于DBUF,则CHIP必须等待到DIP已经完成了其写操作后再将下一个记录填写进这一缓冲器空间。
图5表5示出了从缓冲器中移出数据的规则。在这一情况中,当读操作时,如果WRAP比特为1,CHIP能继续移出直到缓冲器末尾的所有记录。然而,如果在读操作时WRAP比特为0,且如果DBUF大于CBUF,则CHIP可继续移出记录;但是如果CBUF等于DBUF,则CHIP必须等待。表5示出等待读取计数、关键、及数据字段的特殊实施规则。
在写操作时,表5示出如果WRAP为1,DIP可以继续写记录直到缓冲器的末尾。如果WRAP比特为0,且CBUF大于DBUF,DIP可以继续前进。然而,如果CBUF等于DBUF,则DIP必须等待下一个操作字段有效(NOFVAL)比特等于1才能前进。如果WRAP比特为0且CBUF小于DBUF,则DIP必须等待。
注意,当控制比特NOFVAL被设置时,指示CHIP已完成了计数字段,在缓冲器中建立了下一个操作字段(NOF),并装入了通道缓冲器指针36以在数据传输中锁住设备缓冲器指针35。
综上所述,在读操作时,DIP遍历缓冲器使记录进入并建立道映象。当DIP到达缓冲器的末尾时,它绕回到顶部并继续前进。CHIP在后面跟随。CBUF与DBUF用于协调CHIP与DIP。
当执行一次写操作时,一条定位记录指令通知控制单元12在区域中要写的记录的数目,但控制单元将不知道这些记录的计数字段是什么。它们可能在同一道上,它们也可能在不同的道上。通道接口处理器开始将记录从通道传输到缓冲器,而设备接口处理器定位设备来写要传输的第一个记录。当DIP正在定位时,CHIP向前进行并将记录传输进缓冲器;在DIP完成定位以前,CHIP可能进行了若干个记录的全部传输。当DIP定位时,DIP查询NOF找出要做什么,并逐步通过缓冲器将数据写到设备上。当DIP到达最后一个记录时,该区域的目的计数将等于1。从而使DIP在完成写入时能够通知CHIP。在需要错误修复的情况中,DIP也能通知异常情况处理器。在非同步操作中,即使DIP在一个中间记录上遇到了一个错误,CHIP仍然执行连续的写操作直到末尾。目的计数将在出现该错误时指示还要写到设备上去的记录的数目。
在一次成功的写操作的结尾,设置一个写区域完成字节以通知CHIP写操作是成功的并且CHIP可以进行其它工作了。DIP要做的下一件事情是立即切换成读模式。这是以一种完全互锁的方式进行的所以在DIP从写操作切换到读操作中不存在定时问题。
需要指出的是在图2所示的一个通道缓冲器指针36与一个设备缓冲器指针35中还存在一个附加的冲突防止机构。当CHIP与DIP工作在同一记录上时,这两个指针是实施为不能互相跨越的。因此,后随的进程被停止直到领先的进程有时间可以向前进行,从而它们能够简单地一个跟着另一个。
同样,在写操作中,DIP需要知道关键与数据字段的大小。计数字段是由DIP复制到图2中33所示的保护区中的。一个指针BFBFPGR被设置来指向计数字段在保护区中的位置。因此,在写命令中,BFPGR指向保护区,而DBUF则指向数据字段所在。DBUF在缓冲器上环绕,而缓冲器页总寄存器BFPGR永远指向保护区中的一个位置。
非同步系统中设备与通道之间的另一个重要的通信元素是称作重定位比特的一个比特,它是由DIP在设备重定位时设置的;即在设备中寻找正确的记录位置。由于设备定位在正确的记录上可能要用几个毫秒,当CHIP到达一个点上等待DIP在缓冲器中向前进让开它的道路时,CHIP查问这一重定位比特,如果这一比特是被设置的。则CHIP知道DIP是在一个重定位状态中。由于几个毫秒对于一个通道的闲置是一个非常长的时间长度。CHIP将释放该通道进行其它工作。当DIP最终重定位好并将重定位比特关断,CHIP收回通道而进程继续进行。
这一通信元素也被异常情况处理器用于错误修复。当DIP出现问题,它停止工作。设置一个出错信号并进行等待。当这一情况发生时,CHIP将最终赶上DIP,类似于一个重定位中的情形。然而,如果CHIP在缓冲器中赶上DIP以前完成了其操作,便没有理由单纯由于DIP出错而停止CHIP。因此,CHIP继续进行,完成该进程,并释放该通道去进行其它工作。DIP出现错误这一事实对于通道是透明的。
异常情况处理器(USURP)19必须决定在一个错误修复情况中要做什么,并且如果它确定必须进行命令重做,它将这一情况通知CHIP与DIP。当重做开始时,CHIP重新开始,而DIP通过重定位执行设置重定位比特直到完成重定位。这时,关掉重定位比特而重新开始操作。
已经这样描述了我们的发明以后,本领域中的技术人员将会理解,可以在不脱离本发明的精神与范围的情况下作出形式上与细节上的改变。

Claims (7)

1、一种用于外围数据处理系统的装置,其特征在于:
具有多条记录道的一个DASD(直接存取存储器设备);
连接为控制去往与来自所述记录道的数据传输的一台设备接口处理器(DIP);
适合于连接到一条通道以不同步于所述DIP所执行的数据传输的方式来控制去往与来自所述通道的数据传输的一台通道接口处理器(CHIP);
连接到所述DIP与所述CHIP用于包含去往与来自所述DASD与所述通道的数据传输中间的数据的缓冲器存储器装置;
其中所述DIP在读操作中作为一个领先进程操作将数据放置在所述缓冲器中,而所述CHIP作为一个后随进程操作将数据从所述缓冲器中移出并将该数据送至所述通道;
其中所述CHIP在写操作中作为一个领先进程操作将数据放置在所述缓冲器中,而所述DIP作为一个后随进程操作将数据从所述缓冲器中移出并将该数据送至所述DASD;其中所述领先进程在将缓冲器填满以后绕回到所述缓冲器的起始位置以继续在所述缓冲器中填写记录;
连接到所述DIP与所述CHIP的控制存储器,用于包含一个指示DIP当前正在处理的记录的缓冲器地址的第一记录指针装置,以及一个指示CHIP当前正在处理的记录的缓冲器地址的第二记录指针装置;以及
WRAP(绕回)指示装置,由所述领先进程在填满所述缓冲器时设置,并由所述后随进程在到达所述缓冲器的末尾时复位;
借此,DIP与CHIP能互相进行通信而得以避免复盖所述缓冲器中另一个进程所需要的数据。
2、权利要求1的装置。其特征在于:
通道缓冲器指针装置,用于指示CHIP当前正在处理的记录中CHIP的位置;
设备缓冲器指针装置,用于指示DIP当前正在处理的记录中DIP的位置;
下一操作字段指示装置。用于在写操作中通知DIP下一条命令;以及
有效指示装置,用于在写操作中通知DIP,CHIP已经完成了装入计数字段,已经建立了所述下一操作字段指示装置,并且已经装入所述通道缓冲器指针装置以封锁所述设备缓冲器装置当DIP与CHIP两者都正在从同一记录传输数据时不越过所述通道缓冲器装置。
3、权利要求2的装置,其特征在于:
包含在所述缓冲器装置中的第一记录控制指示装置,由CHIP在读操作中设置用于指示DIP跳过下一字段或者道中的剩下的记录以及
包含在所述缓冲器装置中的第二记录控制指示装置,由DIP在写操作中设置来指示关于所遇到的错误的记录状态;
借此,控制数据与记录映象一起保留在缓冲器中以增进性能。
4、一种用于外围数据处理系统的装置,其特征在于:
具有多条记录道的一个DASD;
连接为控制去往和来自所述记录道的数据传输的一台设备接口处理器(DIP);
适合于连接到一条通道以控制以不同步于所述DIP所执行的数据传输的方式去往和来自所述通道的数据传输的一台通道接口处理器(CHIP);
连接到所述DIP与所述CHIP用于包含去往和来自所述DASD与所述通道的数据传输中的中间数据的缓冲器存储器装置;
包含在所述缓冲器装置中的第一记录控制指示装置。由CHIP在读操作中设置用于指示DIP跳过下一字段或道中的剩下的记录;以及
包含在所述缓冲器装置中的第二记录控制指示装置,由DIP在写操作中设置以指示关于所遇到的错误的记录状态,借此,控制数据与记录映象一起保留在缓冲器中以增进性能。
5、权利要求4的装置,其特征在于:所述第二记录控制指示装置包含一个道末尾(EOT)标志。由DIP在读/写操作中设置用于通知CHIP需要一次道变换,并在读道操作时通知CHIP操作完成。
6、一种用于外围数据处理系统的装置,其特征在于:
具有多条记录道的一个DASD;
连接为控制去往和来自所述记录道的一台设备接口处理器(DIP);
适合于连接到一条通道从控制以不同步于所述DIP所执行的数据传输的方式去往与来自所述通道的数据传输的一台通道接口处理器(CHIP);
连接到所述DIP与所述CHIP用于包含去往和来自所述DASD与所述通道的数据传输中的中间数据的缓冲器存储器装置;
通道缓冲器指针装置,用于指示CHIP当前正在处理的记录中CHIP的位置;
设备缓冲器指针装置,用于指示DIP当前正在处理的记录中DIP的位置。
下一操作字段指示装置,用于在写操作中通知DIP下一条命令;以及
有效指示装置,用于在写操作中通知DIP,CHIP已完成装入计数字段,已建立所述下一操作字段指示装置,并已装入所述通道缓冲器指针装置以封锁所述设备缓冲器指针装置当DIP与CHIP两者都在从同一记录传输数据时不超越所述通道缓冲器指针装置。
7、权利要求6的装置,其特征在于:与在所述缓冲器中的记录映象一起,
前一记录缓冲器地址装置,用于确认后随进程所计算的记录起始地址。
CN91108613A 1990-08-31 1991-08-29 非同步通道/直接存取存储器设备通信系统 Expired - Fee Related CN1022724C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/575,735 US5155814A (en) 1990-08-31 1990-08-31 Nonsynchronous channel/dasd communication system
US07/575,735 1990-08-31

Publications (2)

Publication Number Publication Date
CN1059439A true CN1059439A (zh) 1992-03-11
CN1022724C CN1022724C (zh) 1993-11-10

Family

ID=24301488

Family Applications (1)

Application Number Title Priority Date Filing Date
CN91108613A Expired - Fee Related CN1022724C (zh) 1990-08-31 1991-08-29 非同步通道/直接存取存储器设备通信系统

Country Status (8)

Country Link
US (1) US5155814A (zh)
EP (1) EP0473314B1 (zh)
JP (1) JPH0748195B2 (zh)
KR (1) KR950004215B1 (zh)
CN (1) CN1022724C (zh)
CA (1) CA2046720C (zh)
DE (1) DE69123014D1 (zh)
TW (1) TW208104B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100371918C (zh) * 2005-03-07 2008-02-27 华为技术有限公司 一种直接存储器访问控制器及利用其实现数据传送的方法
CN116089130A (zh) * 2023-04-06 2023-05-09 西安热工研究院有限公司 一种数据管道的存储结构、工作方法、设备及储存介质
CN116107843A (zh) * 2023-04-06 2023-05-12 阿里云计算有限公司 确定操作系统性能的方法、任务调度方法、设备

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5255371A (en) * 1990-04-02 1993-10-19 Unisys Corporation Apparatus for interfacing a real-time communication link to an asynchronous digital computer system by utilizing grouped data transfer commands
JPH0679274B2 (ja) * 1990-08-31 1994-10-05 インターナショナル・ビジネス・マシーンズ・コーポレイション 非同期制御ユニットにおけるエラー回復方法
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5426758A (en) * 1992-09-23 1995-06-20 International Business Machines Corporation Method and system for accessing data from a multi-head data processing system utilizing a transducer head switching table
US5561823A (en) * 1994-03-14 1996-10-01 Conner Peripherals, Inc. Monitor system for determining the available capacity of a READ buffer and a WRITE buffer in a disk drive system
US5710943A (en) * 1995-06-30 1998-01-20 Maxtor Corporation Time based data retention in a variable data rate disk drive
US6052797A (en) * 1996-05-28 2000-04-18 Emc Corporation Remotely mirrored data storage system with a count indicative of data consistency
US5901327A (en) * 1996-05-28 1999-05-04 Emc Corporation Bundling of write data from channel commands in a command chain for transmission over a data link between data storage systems for remote data mirroring
US6330640B1 (en) 1999-12-22 2001-12-11 Seagate Technology Llc Buffer management system for managing the transfer of data into and out of a buffer in a disc drive
CN1293739C (zh) * 2002-06-15 2007-01-03 华为技术有限公司 高速数据链路控制协议发送处理模块及其数据处理方法
CN100401731C (zh) * 2002-06-15 2008-07-09 华为技术有限公司 高速数据链路控制协议接收处理模块及其数据处理方法
CN101702326B (zh) * 2009-10-30 2012-08-29 曙光信息产业(北京)有限公司 内存控制器

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4868734A (en) * 1984-04-30 1989-09-19 Unisys Corp. Variable rate improvement of disc cache subsystem
US4780808A (en) * 1981-11-27 1988-10-25 Storage Technology Corporation Control of cache buffer for memory subsystem
US4636946A (en) * 1982-02-24 1987-01-13 International Business Machines Corporation Method and apparatus for grouping asynchronous recording operations
US4571674A (en) * 1982-09-27 1986-02-18 International Business Machines Corporation Peripheral storage system having multiple data transfer rates
US4779189A (en) * 1985-06-28 1988-10-18 International Business Machines Corporation Peripheral subsystem initialization method and apparatus
WO1989007296A1 (en) * 1988-01-27 1989-08-10 Storage Technology Corporation An early start mode method and apparatus

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100371918C (zh) * 2005-03-07 2008-02-27 华为技术有限公司 一种直接存储器访问控制器及利用其实现数据传送的方法
CN116089130A (zh) * 2023-04-06 2023-05-09 西安热工研究院有限公司 一种数据管道的存储结构、工作方法、设备及储存介质
CN116107843A (zh) * 2023-04-06 2023-05-12 阿里云计算有限公司 确定操作系统性能的方法、任务调度方法、设备
CN116107843B (zh) * 2023-04-06 2023-09-26 阿里云计算有限公司 确定操作系统性能的方法、任务调度方法、设备

Also Published As

Publication number Publication date
EP0473314A2 (en) 1992-03-04
JPH0748195B2 (ja) 1995-05-24
TW208104B (zh) 1993-06-21
CA2046720C (en) 1995-10-24
JPH04243458A (ja) 1992-08-31
DE69123014D1 (de) 1996-12-12
KR950004215B1 (ko) 1995-04-27
EP0473314B1 (en) 1996-11-06
CN1022724C (zh) 1993-11-10
US5155814A (en) 1992-10-13
EP0473314A3 (en) 1994-10-05
CA2046720A1 (en) 1992-03-01

Similar Documents

Publication Publication Date Title
CN1022724C (zh) 非同步通道/直接存取存储器设备通信系统
US5155835A (en) Multilevel, hierarchical, dynamically mapped data storage subsystem
US5210866A (en) Incremental disk backup system for a dynamically mapped data storage subsystem
US7051155B2 (en) Method and system for striping data to accommodate integrity metadata
US5404361A (en) Method and apparatus for ensuring data integrity in a dynamically mapped data storage subsystem
US5394532A (en) Disk drive array memory system having instant format capability
CA1197021A (en) Roll mode for cached data storage
US5408644A (en) Method and apparatus for improving the performance of partial stripe operations in a disk array subsystem
US8281067B2 (en) Disk array controller with reconfigurable data path
US5072378A (en) Direct access storage device with independently stored parity
KR970003316B1 (ko) 디스크 모방 시스템(disk emulation system)
EP0538288B1 (en) Deleted data file space release system for a dynamically mapped virtual data storage subsystem
US6484234B1 (en) Method and apparatus for efficiently destaging data from a cache to two or more non-contiguous storage locations
US4811280A (en) Dual mode disk controller
US4601012A (en) Zone partitioning in volume recovery system
GB2024470A (en) Arrangement for detecting faulty sectors and for allocating replacement sectors in a disc memory
JPS5823377A (ja) デ−タ記憶システム
GB2271462A (en) Disk array recording system
US4419725A (en) Cache/disk subsystem with tagalong copy
US5862363A (en) Method of controlling a disk device by disk control unit
US5860088A (en) Method for extraction of a variable length record from fixed length sectors on a disk drive
US5446872A (en) Method for error recovery in a non-synchronous control unit
US7114014B2 (en) Method and system for data movement in data storage systems employing parcel-based data mapping
US5155811A (en) Read/write head buffer
US5446853A (en) System for buffering track image at each read/write head in a disk drive unit having multiple read/write heads

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C15 Extension of patent right duration from 15 to 20 years for appl. with date before 31.12.1992 and still valid on 11.12.2001 (patent law change 1993)
OR01 Other related matters
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 19931110

Termination date: 20090929