CN1598755A - 磁盘驱动器组子系统及用于其中的外部模拟控制器 - Google Patents

磁盘驱动器组子系统及用于其中的外部模拟控制器 Download PDF

Info

Publication number
CN1598755A
CN1598755A CNA2004100621465A CN200410062146A CN1598755A CN 1598755 A CN1598755 A CN 1598755A CN A2004100621465 A CNA2004100621465 A CN A2004100621465A CN 200410062146 A CN200410062146 A CN 200410062146A CN 1598755 A CN1598755 A CN 1598755A
Authority
CN
China
Prior art keywords
disk drive
drive group
physical storage
input
analog
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
CNA2004100621465A
Other languages
English (en)
Other versions
CN1320437C (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.)
INFORTREND Inc
Original Assignee
INFORTREND Inc
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 INFORTREND Inc filed Critical INFORTREND Inc
Publication of CN1598755A publication Critical patent/CN1598755A/zh
Application granted granted Critical
Publication of CN1320437C publication Critical patent/CN1320437C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • 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/0658Controller construction arrangements
    • 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/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Abstract

本发明系有关于一种磁盘驱动器组子系统,以提供主机储存空间。磁盘驱动器组子系统包括至少一个外部磁盘驱动器组模拟控制器,系连接至主机,用以模拟输入输出操作以响应输入输出请求;以及一组包括至少一个物理存储装置的物理存储装置组,系连接至外部磁盘驱动器组模拟控制器,用以通过外部磁盘驱动器组模拟控制器来提供储存空间至主机。外部磁盘驱动器组模拟控制器定义至少一个逻辑介质单元,该逻辑介质单元包含有至少一个物理存储装置的区段,且通过点对点序列信号连结来与物理存储装置通联。例如:点对点序列信号连结可以为序列先进技术附加(ATA)输入输出装置连结。

Description

磁盘驱动器组子系统及用于其中的外部模拟控制器
技术领域
本发明是关于一种磁盘驱动器组子系统(Just A Bunch Of Disks,JBOD),尤指一种具有复数物理存储装置的磁盘驱动器组子系统,并能通过模拟控制器来提供主机储存空间。
背景技术
所谓储存虚拟化(Storage Virtualization,SV)系一种将实体储存空间虚拟化的技术,其系将物理存储装置(PSDs)的不同区段结合成可供一主机系统存取使用的逻辑储存体(Logical Storage Entity),在此称为逻辑介质单元(Logical Media Units,LMU)。在一个LMU中,个别的储存部分(例如:储存区块)系藉由逻辑储存地址而被唯一寻址。一个常见的LMU的例子为:硬盘实体储存的呈现系经由主机输入输出装置连结(Host IO-DeviceInterconnect)至主机。于本例子中,尽管在物理层,硬盘被分为磁柱、磁头以及扇区,其呈现于主机者系为储存区块的连续组,且每一储存区块系被单一逻辑区块地址寻址。
外部(External)(有时称为独立式(Stand-Alone))储存虚拟化控制器(Storage Virtualization Controller,SVC)系为一种经由输入输出接口连接至主机系统的储存虚拟化控制器,且其可支持连接至位于主机系统外部的装置。一般而言,外部储存虚拟化控制器通常系独立于主机进行运作。本发明的磁盘驱动器组(JBOD)模拟控制器系为外部储存虚拟化控制器的其中一种例子。
传统的磁盘驱动器组(Just A Bunch Of Drive,JBOD)子系统包含有平行小型计算机标准接口(Small Computer Standard Interface,SCSI)物理存储装置(Physical Storage Devices,PSDs)或光纤信道仲裁回路(FibreFC-AL)物理存储装置,系因上述接口架构的本质允许多个装置连接于一个单一连结(Single Interconnect)上的缘故。此内部连结仅做为连接磁盘驱动器组子系统与主机的连结缆线(Cable)的延伸。
请参阅图1及图2,图1显示习知包含有平行SCSI物理存储装置的磁盘驱动器组子系统14的功能方块图;图2显示习知包含有FC-AL物理存储装置的磁盘驱动器组子系统14的功能方块图。于图1中,计算机系统10系包含具有多个平行SCSI物理存储装置16的磁盘驱动器组子系统14,以提供主机储存空间。该等物理存储装置16(及为此磁盘驱动器组子系统14)通过平行SCSI连结连接至主机12。请注意在这种配置中,主机12系被配置用来依据平行SCSI接口标准的规范发送输入输出(IO)请求,且主机12因而能存取磁盘驱动器组子系统14中的物理存储装置16。
相类似地,于图2中,计算机系统20系包含有一具有多个光纤FC-AL物理存储装置26的磁盘驱动器组子系统24,以提供主机22储存空间。该等物理存储装置26(因而,该磁盘驱动器组子系统24)系通过一对光纤FC-AL连结(FibreFC-AL Interconnects)冗余地连接至主机22。请注意在这种配置中,主机22系被配置用来依据光纤FC-AL接口标准的规范来发送输入输出请求,且主机22因而能存取此磁盘驱动器组子系统24中的物理存储装置26。此外,在这种配置中,此等通过一对光纤连结的冗余连接的物理存储装置26系帮助改善物理存储装置26的可存取性。亦即,此对光纤连结中之一若损坏的情形下(例如缆线故障或接口电路故障所引起),则另一光纤连结仍可以提供所需的连接(Connection)。
对于图1及图2中的磁盘驱动器组子系统14,24而言,因为由主机12,22到该等物理存储装置的连接系使用不需任何额外转换电路的多装置输入输出装置连结(Multiple Device IO Device Interconnects),即其支持多个物理存储装置通过单一连结连接至主机的装置输入输出连结(Device IOInterconnects)。然而,SCSI或光纤物理存储装置(特别是硬盘),其与较低等级的物理存储装置相比却是比较昂贵的,此处较低等级的物理存储装置系指不具有允许多个装置被连接于单一连结的输入输出装置连结的物理存储装置,例如:先进技术附加(Advanced Technology Attachment,ATA)物理存储装置。所以,习知磁盘驱动器组子系统14、24的总成本系相当高昂。
发明内容
因此本发明的主要目的,系在于提供一种可以包含相对低成本的点对点序列信号物理存储装置的磁盘驱动器组子系统,其中相当低成本点对点序列信号物理存储装置例如为序列ATA物理存储装置,以解决习知的问题。
本发明磁盘驱动器组模拟储存虚拟化子系统(JBOD Emulation SVSubsystem)系为用来模拟传统实体磁盘驱动器组子系统的特定工作之一般储存虚拟化子系统的一种应用。在传统磁盘驱动器组子系统中,在子系统保持于在线(On Line)时,将故障的物理存储装置移除并插入新的物理存储装置以取代它们的能力系为基本的特征。而在本发明磁盘驱动器组模拟储存虚拟化子系统中,系转化为可动态地使逻辑介质单元(Logical Media Units,LMUs)下线(Off Line)以及使其它的LMUs上线的能力。因此,本发明磁盘驱动器组模拟储存虚拟化子系统的一个基本上有区别的特征为:当系统保持在在线时,具有让逻辑介质单元连同其关联的物理存储装置(PSD)下线的能力,例如当关联的物理存储装置由磁盘驱动器组子系统被移除时,以及,扫描并使被动态地带上线的物理存储装置所构成的逻辑介质单元上线的能力,例如当关联的物理存储装置被插入磁盘驱动器组时。一个典型磁盘驱动器组模拟储存虚拟化子系统系仅仅以一对一方式将单一物理存储装置映像至单一逻辑介质单元。
依据本发明所主张,一种用以提供主机储存空间的磁盘驱动器组子系统系被公开。此磁盘驱动器组子系统包括外部磁盘驱动器组模拟控制器,系连接至主机,用以模拟输入输出操作以响应主机发送的输入输出请求;以及复数物理存储装置,系连接至外部磁盘驱动器组模拟控制器,始能通过外部磁盘驱动器组模拟控制器提供储存空间给主机。
一种用以模拟输入输出操作以响应主机发送的输入输出请求的外部磁盘驱动器组模拟控制器亦在此被揭露。此磁盘驱动器组模拟控制器包括:至少一个主机端输入输出装置连结控制器,系连接至主机;中央处理电路,系连接至主机端输入输出装置连结控制器,用以执行输入输出操作以响应主机的输入输出请求;以及至少一个装置端输入输出装置连结控制器,系连接至中央处理电路,用以和复数物理存储装置执行点对点序列信号传输。在一个实施例中,装置端点对点序列信号输入输出装置连结系为序列ATA输入输出装置连结。在另一实施例中,装置端点对点序列信号输入输出装置连结系为SAS输入输出装置连结。
本发明磁盘驱动器组子系统的一个优点系使用相当低成本点对点序列信号物理存储装置,诸如序列ATA硬盘(HDDs),以在执行一个传统磁盘驱动器组子系统的机能时,提供主机储存空间,此传统磁盘驱动器组子系统系例如:包含平行SCSI PSDs或光纤PSDs的磁盘驱动器组子系统。
在阅读过以下各种图示中所阐述的较佳实施例的详细说明后,对于那些熟悉该项技艺者将毫无疑问地对本发明所主张的目的能够清楚了解。
附图说明
图1是习知包含有平行小型计算机标准接口的物理存储装置的磁盘驱动器组子系统的功能方块图。
图2是习知包含有光纤信道仲裁回路(FC-AL)的物理存储装置的磁盘驱动器组子系统的功能方块图。
图3是本发明包含磁盘驱动器组子系统的计算机系统的功能方块图。
图4是本发明于图3中的外部磁盘驱动器组模拟控制器的功能方块图。
图5是本发明于图4中的中央处理电路的功能方块图。
图6是本发明于图5中的中央处理单元芯片组/奇偶引擎的功能方块图。
图7是本发明于图4中的装置端输入输出装置连结控制器的功能方块图。
图8是本发明于图7中的外设组件连结扩充(PCI-X)至序列先进技术附加(SATA)控制器的功能方块图。
图9是本发明于图8中的序列先进技术附加端口的功能方块图。
图10介绍符合序列先进技术附加协议的传输结构。
图11介绍符合序列先进技术附加协议的第一框架信息结构(FIS)数据结构。
图12介绍符合序列先进技术附加协议的第二框架信息结构数据结构。
图13是监控物理存储装置的插入及将逻辑介质单元引导上线的自动化程序的流程图。
图14是监控物理存储装置的移除及使逻辑介质单元下线的自动化流程序的流程图。
图15是检测器的电路图,以专用来监控物理存储装置的插入与移除。
图16是使用一对配置成冗余的本发明外部磁盘驱动器组模拟控制器的实施例的功能方块图。
图17是本发明于图16中的开关电路的功能方块图。
图18是使用一对配置成冗余的本发明外部磁盘驱动器组模拟控制器另一实施例的功能方块图。
【图号说明】
计算机系统                  10,20,30      主机                      12,22,32
磁盘驱动器组子系统          14,24,34      平行小型计算机标准接口    16
                                            物理存储装置
光纤信道仲裁回路物理存储    26              周边组件连结扩充至序列    310
装置                                        先进技术附加控制器
外设组件连结扩充接口        312             解碼/多任务仲裁器         314
配置电路                    316             总线接口                  318
物理存储装置                36              序列先进技术附加输入输    37
                                            出装置连结
磁盘驱动器组模拟控制器      38              中央处理电路              380
主机端输入输出装置连结控    382             装置端输入输出装置连结    384
制器                                        控制器
存储器                      386             控制器间通讯信道控制器    388
箱体管理服务电路            390             中央处理单元              392
只读存储器                  394             非易失性随机存取存储器    396
液晶显示模块                398             开关电路                  40
中央处理单元芯片组/奇偶     400             奇偶引擎                  410
引擎
异或引擎                    412             异或先进先出缓冲器        414
信号检测电路                42              序列先进技术附加端口      600
直接存储器存取寄存器        620             超集寄存器                630
指令区块寄存器              640             控制区块寄存器            650
双端口先进先出缓冲器        660             直接存储器存取控制器      670
程序化输入输出              680             传输层                    690
链路层                      700             物理层                    710
中央处理单元接口            910             存储器接口                920
中央处理单元至存储器先进    922             纠错码产生电路            924
先出缓冲器
纠错码修正电路              926          外设组件连结接口     930,932
主存储器先进先出缓冲器      934,936     X总线接口            940
主存储器总线                950          锁相回路             980
计时控制器                  982          内部寄存器           984
通用异步接收及传送器机能    986
方块
具体实施方式
请参阅图3,图3显示包含有本发明的磁盘驱动器组子系统的计算机系统30的功能方块图。此计算机系统30包括主机32,且磁盘驱动器组子系统系提供储存空间至该主机32;磁盘驱动器组模拟控制器(JBOD emulationController)38,系连接至主机32,用以模拟输入输出操作(IO Operation)以响应主机32所发送的输入输出请求;以及多个物理存储装置(PSDs)36,连接至磁盘驱动器组模拟控制器38,用以作为提供主机32储存数据的储存介质。物理存储装置36系藉由序列ATA输入输出装置连结(Serial ATA IODevice Interconnects)37连接至磁盘驱动器组模拟控制器38。上述的主机32可为主机计算机,如服务器系统(Server System)、工作站(Workstation)、个人计算机系统(PC System)或其它等效装置。或者,主机32也可为储存虚拟化系统。
在图3中,磁盘驱动器组模拟控制器38与多个物理存储装置36一起被称作磁盘驱动器组子系统34,系因磁盘驱动器组模拟控制器38与物理存储装置36被设计用来模拟传统磁盘驱动器组中关于主机32的机能。请注意,在本发明的设定中,主机32系可以被配置为依照在主机32与磁盘驱动器组子系统34之间的连结所伴随着的主机连结协议标准(Host InterconnectProtocol Standard)来发送输入输出请求,其中主机连结协议标准可诸如平行SCSI或光纤等。磁盘驱动器组模拟控制器38具有执行模拟普通的磁盘驱动器组子系统的机能的操作能力,使得主机32认为其系正与普通的磁盘驱动器组子系统通联。此磁盘驱动器组模拟控制器38系实施及/或模拟一组主机发送的指令与主机端操作,这些指令与操作系允许磁盘驱动器组模拟控制器38被视为如同上述所言,并且如同此磁盘驱动器组模拟控制器38被设计去模拟的类型的一组实际的物理存储装置一样被主机操控着。
依据本发明的目的,该等物理存储装置36藉由使用相当低成本点对点序列信号物理存储装置来实施。因此,每一物理存储装置36系通过点对点序列信号连结连接至磁盘驱动器组模拟控制器38。于本较佳实施例中,该点对点序列信号连结系为序列ATA输入输出装置连结以及物理存储装置36系为序列ATA硬盘(HDD)。在其它实施例中,物理存储装置36亦可为平行ATA硬盘,其系通过配备有具有转换平行ATA信号与序列ATA信号能力的协议转换器的序列ATA桥接器而连接至序列ATA输入输出装置连结。
现在请继续参阅图4,图4显示如图3所示的本发明的一个实施例中的磁盘驱动器组模拟控制器38的功能方块图。其中,用以模拟输入输出操作以响应主机32所发送的输入输出请求的磁盘驱动器组模拟控制器38系被显示。该磁盘驱动器组模拟控制器38包含至少一个主机端输入输出装置连结控制器382,连接至主机32;中央处理电路380,连接至主机端输入输出装置连结控制器382,用以执行输入输出操作以响应主机32的输入输出请求;以及至少一个装置端输入输出装置连结控制器384(于图4中,系为序列ATA输入输出装置连结控制器),连接至中央处理电路380,以与多个物理存储装置执行点对点序列信号传输。
于图4中,本发明较佳实施例的磁盘驱动器组模拟控制器38亦包含连接至中央处理电路380的存储器386,用以缓冲中央处理电路380。在一个冗余的实施例中,此磁盘驱动器组模拟控制器38还包含连接至中央处理电路380的控制器间通讯信道(Inter-Controller Communication Channel,ICC)控制器388,以连接中央处理电路380至一第二磁盘驱动器组模拟控制器(图未示)。在这个配置中,由主机32而来的控制/数据信息可以从中央处理电路380经由控制器间通讯信道(ICC)控制器388被转换至第二磁盘驱动器组模拟控制器。该等冗余磁盘驱动器组模拟控制器系提供更强健的物理存储装置存取能力(Accessibility)。在一个一对冗余控制器的机能没有被进行的实施例中,ICC控制器388可以被省略。此外,在其它可选择的实施例中,该磁盘驱动器组模拟控制器亦包含箱体管理服务(Enclosure ManagementService,EMS)电路390连接至中央处理电路380,用以执行箱体管理服务的功能。
于图4中,主机端输入输出装置连结控制器382系连接至主机32与中央处理电路380,用来作为磁盘驱动器组模拟控制器38与主机32之间的接口及缓冲,其接收由主机32传来的输入输出请求及相关数据,并且将这些请求或资料映像及/或传送至中央处理电路380。主机端输入输出装置连结控制器382可包含有一个或多个用来连接于主机32的主机端端口。此处所提及的端口的类型可以为:光纤信道支持Fabric连结(Fibre Channel SupportingFabric)、点对点连结、公用回路连结及/或专用回路连结于目标模式,操作于目标模式的平行SCSI,支持因特网SCSI(Internet SCSI;iSCSI)协议且操作于目标模式的以太网络,操作于目标模式的序列附加(Serial-Attached)SCSI(SAS),以及操作于目标模式的序列ATA。
当中央处理电路380接收到来自主机端输入输出装置连结控制器382的主机输入输出请求时,中央处理电路380会将此输入输出请求解析,并且执行一些操作以响应此输入输出请求,以及将所请求的数据及/或报告及/或信息,由磁盘驱动器组模拟控制器38经由主机端输入输出装置连结控制器382传送至主机32。
将主机32传入的输入输出请求解析之后,若所收到的为读取请求且一或多个操作被执行以为响应时,中央处理电路380会由内部或由存储器386中或藉由此二种方式取得所请求的数据,并将这些数据传送至主机32。若所请求的数据无法于内部取得或并不存在于存储器386,则输入输出请求将会经由SATA输入输出装置连结控制器384发送至物理存储装置36,然后这些所请求的数据将由物理存储装置36传送至存储器386,之后再经由主机端输入输出装置连结控制器382传送到主机32。
当由主机32传入的写入请求(Write Request)传达至中央处理电路380时,于写入请求被解析并执行一或多个操作后,中央处理电路380通过主机端输入输出装置连结控制器382接收从主机32传入的数据,将其储存在存储器386中,继而资料皆经由中央处理电路380传送至物理存储装置36。当该写入请求为回写请求(Write Back Request),输入输出做完报告(IO CompleteReport)会先被传送至主机32,而后中央处理电路380才会执行实际的写入操作;而当该写入请求为完全写入请求(Write Through Request),则输入输出做完报告会在数据已实际写入物理存储装置36后才被传送至主机32。
存储器280连接至中央处理电路380,其作为缓冲器,用来缓冲传送于主机32及物理存储装置36之间通过中央处理电路380的数据。实际应用时,存储器386可以是动态随机存取存储器(Dynamic Random Access Memory,DRAM),更特别地,该DRAM亦可为同步动态随机存取存储器(SynchronousDynamic Random Access Memory,SDRAM)。
装置端输入输出装置连结控制器384系为连接至中央处理电路380与物理存储装置36的序列ATA输入输出装置连结控制器。此装置端输入输出装置连结控制器384系为在磁盘驱动器组模拟控制器38及物理存储装置36之间的接口及缓冲,其并接收由中央处理电路240发送的输入输出请求及相关数据,并将其映像及/或传送至物理存储装置36。为了符合序列ATA协议的规范,装置端输入输出装置连结控制器384会将经由中央处理电路240所接收的数据及控制信号再格式化,并且将这些数据及信号传送至物理存储装置36。
关于另一实施例,装置端输入输出装置连结控制器384可经由设置于背板(图未示)上的开关电路(Switching Circuit)连接至物理存储装置36,以促进磁盘驱动器组模拟控制器38及/或该等物理存储装置36的连接(Attachment)及移除。
当其中一个物理存储装置36从中央处理电路380经由装置端输入输出装置连结控制器384而接收到输入输出请求时,该物理存储装置36系执行一些操作以响应该输入输出请求,且传送所请求数据及/或报告及/或信息至中央处理电路380,及/或从中央处理电路380接收所请求数据及/或报告及/或信息。
请继续参阅图5,图5系显示图4中关于本发明实施例的中央处理电路380,及此中央处理电路与磁盘驱动器组模拟控制器38中其它功能方块的连接的功能方块图。于图5中,中央处理电路380系包含中央处理单元(CPU)芯片组/奇偶(Parity)引擎400、中央处理单元392、只读存储器(Read Only Memory,ROM)394、非易失性随机存取存储器(Non-Volatile RAM,NVRAM)396以及液晶显示模块(LCD Module)398。此中央处理单元392为,例如,Power PC中央处理单元。只读存储器394可以为闪存(Flash Memory),用来储存基本输入输出系统(BIOS)及/或其它程序。非易失性随机存取存储器(NVRAM)396系被设置来储存配置及操作状态信息。液晶显示模块398则是用来显示磁盘驱动器组子系统34的操作状态。非易失性随机存取存储器396及液晶显示模块398系可选择项目,在本发明的另一种配置中可以省略不设。只读存储器394、非易失性随机存取存储器396、液晶显示模块398及箱体管理服务电路390皆经由X总线(X-Bus)连接至中央处理单元芯片组/奇偶引擎400。
请注意在本发明的其它实施例中,中央处理单元芯片组/奇偶引擎400的奇偶功能亦可被实施于另一分开的芯片,即中央处理单元芯片组芯片与奇偶引擎芯片,或藉由中央处理单元392所伴随的奇偶功能程序代码而不是专用硬件而来实施。又,本发明中央处理电路380亦可包含(Incorporate)提供数据保护功能的数据保护引擎以取代奇偶引擎,此所提供的数据保护功能可诸如纠错码(Error Correcting Code,ECC)功能。此外,当奇偶功能不被需要,则奇偶引擎/奇偶功能则可以被省略。其它熟悉本技艺者可容易完成的变化及/或修改,应视为本发明的一部分。
图6为有关本发明图5中的中央处理单元芯片组/奇偶引擎400的功能方块图。在本实施例中,中央处理单元芯片组/奇偶引擎400包含奇偶引擎410、中央处理单元接口910、存储器接口920、外设组件连结(Peripheral ComponentInterconnect,PCI)接口930,932、X总线(X-Bus)接口940以及主存储器(Primary Memory,PM)总线950。其中主存储器总线950,举例而言,为64位,133兆赫兹(Mhz)总线,并与奇偶引擎410、中央处理单元接口910、存储器接口920、外设组件连结接口930,932及X总线接口940相连接,用以于其间通联数据信号及控制信号。
由主机端输入输出装置连结控制器382所发出的数据及控制信号经由外设组件连结接口930及缓冲于主存储器先进先出缓冲器934(PM FIFO)中,而进入CPU芯片组/奇偶引擎400。其中连结至主机端输入输出装置连结控制器382的外设组件连结接口930可为,举例而言,64-bit,66Mhz的频宽。于外设组件连结从属周期(PCI slave cycle)中,外设组件连结接口930拥有主存储器总线950,使主存储器先进先出缓冲器934中的数据及控制信号被传送至存储器接口920或是中央处理单元接口910。
由主存储器总线950传至中央处理单元接口910的数据及控制信号,而后会传送至中央处理单元392进行进一步的处理,而中央处理单元接口910及中央处理单元392间的沟通管道举例而言,可为64-bit数据传输线及32-bit地址线来进行。此数据及控制信号会经由频宽为64-bit,133Mhz之中央处理单元至存储器先进先出缓冲器922(CPU to Memroy FIFO,CM FIFO),传送至存储器接口920。
在中央处理单元至存储器先进先出缓冲器922及存储器接口920之间,有一纠错码产生电路924(Error Correction Code Circuit,ECC circuit),用以产生一纠错码,而其产生的方式可为,举例而言,将8-bit的数据以异或(XOR)运算后,产生单一位的纠错码。接下来,存储器接口920将数据及纠错码储存在存储器386中。该存储器386可为,举例而言,SDRAM。而存储器386中的数据经过纠错码修正电路(ECC Correction Circuit)926,与纠错码产生电路924中的纠错码作比较,最后再被传送到主存储器总线950,其中纠错码修正电路926具有单一位自动修正(1-bit auto-correction)及多位检错(multi-bit error detecting)的功能。
奇偶引擎410会响应于CPU 392的指示,来执行奇偶功能。如图6所示的实施例中,奇偶引擎410包含有异或引擎412经由异或先进先出缓冲器(XORFIFO)414而连接至主存储器总线950。此异或引擎412,举例而言,可对给定的地址及长度的存储器位置来执行异或运算。当然,在一些特定的条件下,奇偶引擎410可以关掉而不执行奇偶功能。此外,当该奇偶功能不被需要时,奇偶引擎410可以被省略。
锁相回路980(PLL,phase locked loop)是用于在相关信号间维持适当的相移(phase shift)。而计时控制器982(timer controller)是用来提供各种不同时脉与信号的时间基准。内部寄存器984(internal register)是用来暂存中央处理单元芯片组/奇偶引擎400的状态,及控制主存储器总线950上的数据流动,此外,设置一对通用异步收发器(Universal Asynchronous Receiverand Transmitter,UART)功能方块986(UART functionality block),以使中央处理单元芯片组/奇偶引擎400可经由RS232接口而与外部装置通联。
于实际应用时,PCI接口930,932可代换为外设组件连结扩充(PeripheralComponent Interconnect eXtended;PCI-X)接口,或者是以外设组件连结快捷(PCI Express)接口取代PCI接口930、932。
图7为图4中装置端输入输出装置连结控制器384的功能方块图。关于本实施例,装置端输入输出装置连结控制器384包含有两个PCI-X至序列ATA控制器(PCI-X To SATA Controllers)310。经由PCI-X至序列ATA控制器310的一个序列ATA端口,数据及控制信号可以被传输至物理存储装置36其中之一。
图8为图7中PCI-X至SATA控制器310的功能方块图。如图8所示,每个PCI-X至SATA控制器310包含有连接至中央处理电路380的PCI-X接口312、连接至PCI-X接口312的译码/多任务仲裁器(Dex/Mux Arbiter)314、以及八个连接至Dec/Mux仲裁器314的SATA端口600。PCI-X接口312包含有连接至Dec/Mux仲裁器314的总线接口318,以及用来储存PCI-X至SATA控制器310的配置的配置电路(Configuration Circuitry)316。Dec/Mux仲裁器314在PCI-X接口312与复数SATA端口600间执行仲裁,且执行自PCI-X接口312至SATA端口600的交易(Transaction)的地址译码。于实际应用中,PCI-X至SATA控制器310可由PCI至SATA控制器取代,而在PCI至SATA控制器中,PCI-X接口312系由PCI接口取代。同样地,在其它的实施例中,PCI-X至SATA控制器310可由PCI Express至SATA控制器取代,而在PCI Express至SATA控制器中,PCI-X接口312系由一PCI Express接口取代。
图9系为图8中的SATA端口600的功能方块图。如图9所示,每一SATA端口600包含有超集寄存器(Superset Register)630、指令区块寄存器(CommandBlock Register)640、控制区块寄存器(Control Block Register)650以及直接存储器存取寄存器(DMA Register)620,其中该等寄存器系与总线接口相连接。经由填值于上述的寄存器中,数据得以通过由直接存储器存取控制器670所控制的双端口先进先出缓冲器660,而在Dec/Mux仲裁器314与传输层690(Transport Layer)间传输。被传输层690接收的信息将会被重新格式化成一个框架信息结构(Frame Information Structure,FIS),并传送到链路层(Link Layer)700。
链路层700稍后将框架信息结构在格式化成为框架(frame),系以加入框架起始信息(Start Of Frame,SOF)、循环冗余校验码(Cyclic-RedundancyCheck Code,CRC)、框架结束信息(End Of Frame,EOF)等,并将其以8b/10b编码方式转译成8b/10b编码的字符而达成,并将其传送到物理层710(PHYlayer)。
物理层710系经由一对差分信号线(Differential Signal Lines)—传输线LTX+及LTX-—来传输信号至物理存储装置36的物理存储装置控制器,并经由另一对差分信号线—接收线LRX+及LRX-—接收来自物理存储装置36的物理存储装置控制器的信号。每一对信号线的两条信号线,例如LTX+/LTX-,系同时个别传送以参考电压Vref为准的正负电压的信号TX+/TX-,例如+V/-V或-V/+V的电压信号,使得它们的电压差为+2V或-2V,如此一来便可加强信号的品质。在LRX+及LRX-接收在线也可以使用相同的方法接收信号RX+/RX-。
当框架由物理层710传送至链路层700,链路层700将此用8b/10b编码的字符进行译码,并且除去SOF、CRC、EOF的部分,其中经由框架信息结构(FIS)计算得出的CRC将会被拿来与所接收到CRC作比较,用来确定所接收的信息的正确性。
当传输层690接收到来自链路层700的FIS信号,传输层690将会判定FIS的型式,并依照FIS的型式将FIS的内容传送到所指定的区域。
图10为符合序列ATA协议的传输结构,其中于序列线中通联的信号为连串使用8b/10b编码的字符,其最小单位为双字组(double-word,32位)。每一个双字组的内容将被组合以提供低阶的控制信息,或是用以传送主机与相连接的装置间的信息,而在信号在线传送的两种数据结构为原语(primitive)以及框架。
原语系由单一的双字组所组成,其系为主机与装置间通联信息中的最简单单位。当原语中的字节被编码,其所产生的型态(Pattern)不容易被误解为其它型式的原语或其它任意的型态。原语系主要地被用来传送实时(Real-Time)状态信息,以控制信息的传送及协调主机与装置间的通讯。原语的第一字节系为特别的字符。
框架系由多个双字组所组成,并起始于SOF(Start of Frame)原语,且终止于EOF(End of Frame)原语。在SOF原语之后为使用者有效负载,称之为框架信息结构(FIS,Frame Information Structure)。CRC为紧接在EOF原语之前的最后非原语双字组,且CRC为依据FIS的内容运算而来。另外,介于SOF与EOF间可以有流程控制原语(维持句柄(HOLD)或是维持控制确认码(HOLDA))系用来调整数据流,并能达到速率匹配(Speed Matching)的目的。
传输层690系用来建构FIS以用于传送,以及是于自链路层700接收到FIS时将其分解。且该传输层690并不维护ATA指令或是先前的FIS内容的前后关系(context)。当收到请求时,传输层690会收集FIS内容,并依照正确的顺序建构FIS。FIS的型态有很多种,图11及图12分别为其中之一。
如图11所示,直接存储器存取设定的FIS(DMA Setup FIS)在字段0处包含有标头(HEADER),而其第一字节(字节0)定义了该FIS的型态(41h),此FIS的型态定义了此FIS其余字段以及定义它的全部长度为7个双字组。在字节1中的位D标示了该后续数据传送的方向,D为1表示传送端至接收端,D为0则表示接收端至传送端。在字节1中的位I为一中断位(Interrupt Bit),在字节1中的位R为保留位,且设为0。直接存储器存取缓冲器识别码低/高字段(DMA Buffer Identifier Low/High Field)(字段1和字段2)分别标示在主机存储器中的直接存储器存取缓冲区域。直接存储器存取缓冲器偏移栏(DMA Buffer Offset Field)(字段4)为进入缓冲器内的字节偏移。直接存储器存取传送计数栏(DMA Transfer Count Field)(字段5)为将会被此装置读取或写入的字节数量。
如图12所示,在字段0中,数据型FIS(DATA FIS)包含有标头,在其中的第一字节(字节0)定义该数据型FIS的型态(46h),且数据型FIS的型态定义了其余字段以及它的全长为n+1双字组。在字节1中的多个R位为保留位且设定为0。字段1至n为双字组数据,其系包含有要传送的数据。一个单一数据型FIS的内的资料系有上限。
定义输入输出操作的参数(例如:目的介质区段基准地址(DestinationMedia Section Base Address)及介质区段长度(Media Section Length)等)的装置端输入输出请求信息系依据序列ATA协议被封包(Packaged)成一封包格式,诸如框架。因为一个框架包括FIS以及由FIS内容所计算的CRC,所以全部经由该PCI-X至SATA控制器310而在中央处理电路380及物理存储装置36之间通联的输入输出请求信息将会进行CRC检查。因此,于从磁盘驱动器组模拟控制器38至物理存储装置36的传送期间的不慎数据毁损(InadvertentData Corruption)(例如:受到噪声的影响)可以被检测出来且恢复,以防止可能造成灾难性的数据破坏情况,因为如果原来的输入输出请求数据中的目的介质区段基准地址以及/或是介质区段长度若因为毁损而有误的话,将导致数据可能写入到错误的介质区段。
经由图3至图12中所介绍的配置,本发明的磁盘驱动器组模拟控制器38连同物理存储装置36系具有提供主机32储存空间的能力,以及执行磁盘驱动器组子系统机能的能力,有关其说明,稍后详述。另外,虽然在前述的实施例中,该装置端输入输出装置连结系SATA连结,但在另一种实施态样中,该装置端输入输出装置连结亦可为序列附加小型计算机标准接口(Serial-Attached Small Computer Standard Interface,Serial-AttachedSCSI,SAS)输入输出装置连结。
本发明磁盘驱动器组模拟控制器38能解析其所接收的由主机32发出的输入输出请求,且能执行相关的输入输出操作,以存取一或多个逻辑介质单元,其系藉由在点对点序列信号传输中经由至少一个个装置端输入输出装置连结而存取至少一个物理存储装置36。
通过主机端输入输出装置连结所接收的输入输出请求,抑或是直接被磁盘驱动器组模拟控制器38处理,而如同产生内部模拟操作的输入输出请求一般;抑或是间接地产生存取至所寻址的物理存储装置36,而如同产生异步装置操作的输入输出请求一般;或者是直接地产生存取至所寻址的物理存储装置36,而如同产生同步装置操作的输入输出请求一般。
产生内部模拟操作的输入输出请求的例子可以为请求配置信息的指令,诸如逻辑介质单元(LMU)识别码或全体容量。典型地可能产生异步装置操作的输入输出请求系为被请求数据现存在于快取中(例如:存储器386)的快取读取指令,以及支持与从事回写(Write-Back)机能的写入指令。典型地可能产生同步装置操作的输入输出请求系为被请求数据目前并不存在于快取中的快取读取指令、当不从事回写(Write-Back)机能时的写入指令、或强迫介质存取的读取/写入指令。
在系统保持在在线时,本发明磁盘驱动器组模拟控制器38系具有使逻辑介质单元与其关联的物理存储装置36一起下线(Off-Line)的能力,使得这些物理存储装置36可以由磁盘驱动器组子系统34中实际上被移除,以及,磁盘驱动器组模拟控制器38具有扫描及使逻辑介质单元上线的能力,当其组件物理存储装置36已经实际上被插设于磁盘驱动器组子系统34时。在每一个逻辑介质单元包含有单一物理存储装置36的最简单例子中,系能经由用以决定物理存储装置是否存在及/或被连接在子系统上的电路以及/或装置端输入输出装置连结协议设备的协助来轻易地自动完成。
上述的本发明磁盘驱动器组模拟控制器38的即装即用(Plug-And-Play)特征系有助于最小化或排除上述当插设组件物理存储装置36而使逻辑介质单元上线以及当物理存储装置36被移除而令逻辑介质单元下线时所需的手动介入(Manual Intervention)。请参阅图13及图14,图13系为一自动化流程的范例流程,以监控正被插设的物理存储装置36,并于一旦必要最低数量的成员磁盘驱动器皆呈现时,将逻辑介质单元引导上线。图14系为自动化流程的范例流程,以监控物理存储装置36的移除,并于一旦成员磁盘驱动器的最低数量(quorum)不再存在时,使一逻辑介质单元下线。在此所谓的”最低数量”系为数据可被磁盘驱动器组子系统34正确地存取的逻辑介质单元中一群包括一或多个的成员磁盘驱动器,例如:在磁盘阵列0(RAID 0)中,”最低数量”系包含有一逻辑介质单元(LUM)的所有成员磁盘驱动器;在磁盘阵列1(RAID1)中,”最低数量”系包含有一个逻辑介质单元的每一对镜射磁盘驱动器中的至少一个镜射磁盘驱动器对;以及在磁盘阵列3至磁盘阵列5(RAID 3-RAID5)中,”最低数量”系包含逻辑介质单元中除了成员磁盘驱动器外的至少所有成员磁盘驱动器。
响应物理存储装置的插设及移除的逻辑介质单元的自动上线/下线的一个重要致能要件,系为用来检测是否物理存储装置被插入磁盘驱动器组箱体或由磁盘驱动器组箱体被移除的能力。图15显示这样的一个检测设备的例子。该磁盘驱动器组模拟控制器38监控这个检测设备的状态以判定一个物理存储装置36何时被移除或插入。在每一个逻辑介质单元由单一物理存储装置所组成的最简单例子中,物理存储装置的移除将会触发启动使相关逻辑介质单元下线的程序,在物理存储装置插入时触发扫描纳入并使相关的逻辑介质单元上线的程序。
为了支持本发明磁盘驱动器组子系统34的上述动作特征,磁盘驱动器组子系统34可以还包含有自动上线(Auto-On-Line)机构,用以当一旦物理存储装置36的必要最低数量变成上线时,将自动地把先前下线(Off-Line)的逻辑介质单元带上线;自动下线(Auto-On-Line)机构,用以一旦物理存储装置36其中的必要最低数量变成下线,将自动地把先前上线的逻辑介质单元带下线;判断机构,用以自动判断物理存储装置36何时已经被移除或何时已经被插设;以及扫描纳入机构(Scanning-In Mechanism),用以在检测到物理存储装置的插入时,自动地扫描纳入该等物理存储装置。
用来最小化手动介入所设计的机能典型地包含允许主机自动发觉新的逻辑介质单元已经在主机端输入输出装置连结上可存取的机构,所以它能够自动地扫描纳入该等逻辑介质单元。一些多装置输入输出装置连结协议定义有一些程序,藉这些程序,当一个新的装置连接上该连结或由该连结被移除时,其它装置可以被警告(Alerted)。光纤仲裁回路(FC-AL)就是此种连结的一个例子,其中系藉由新近增加的装置产生一回路初始型态的回路初始化原语(Loop Initialization Primitive,LIP)-无效的AL-PA LIP(F7,F7),来对在回路中的其它装置告知一新装置已连接上且他们应该重新扫描总线。当一磁盘驱动器组模拟储存虚拟化子系统包含这种类型的输入输出装置连结作为一些或全部的主机端连结,这也是重要的:当它连接于此连结上时,依照那些相同的程序去警告在连结上的其它装置。在这个光纤信道仲裁回路(FC-AL)的案例中,若该装置正被加入当作映像至先前没有呈现于回路上的识别码(ID)的逻辑单元号码,一个回路初始化原语(LIP)(F7,F7)将会被发送于该回路上。对实施SCSI作为主要指令协议的所有主机端输入输出装置连结而言,其中该主要指令协议可包括光纤信道仲裁回路(FC-AL)、平行SCSI、因特网SCSI(internet SCSI,iSCSI)以及序列SCSI,在此磁盘驱动器组模拟储存虚拟化子系统中加入(插入)装置时,此子系统系会自动地映像此加入的装置至一个逻辑单元号码或一个已存在的识别码,一个感知钥匙(sense key)『单元注意』(UNIT ATTENTION)将会典型地将和感知码『报告逻辑单元号码数据已改变』(REPORTED LUNS DATA HAS CHANGED)一起被发送出来。
一般而言,当逻辑介质单元至主机端输入输出装置连结的逻辑单元号码的映像已改变时,无论其是一个新引入光纤回路上的逻辑介质单元或是一个从光纤回路被移除的既存逻辑介质单元,主机将会被告知这些改变。一个此种磁盘驱动器组模拟控制器的例子系为,当主机端输入输出装置连结为操作于仲裁回路模式的光纤,于一个新的目标识别码被导入于该光纤回路或由该光纤回路被移除的同时外部磁盘驱动器组模拟控制器会发送一个LIP,以对回路上的其它装置告知回路装置映像(Loop Device Map)已改变。另一个例子系为,当磁盘驱动器组模拟控制器支持标准SCSI指令集作为一经由主机端输入输出装置连结至主机端的主要指令接口时,在逻辑介质单元至主机端输入输出装置连结逻辑单元号码的映像已改变时,该磁盘驱动器组模拟控制器会发送一带有感知钥匙『单元注意』与感知码『报告逻辑单元号码数据已改变』之一状态『检查状况』(CHECK CONDITION)至主机。
另一个磁盘驱动器组子系统的重要特征为不论物理存储装置是存放在磁盘驱动器组子系统中的什么位置,其皆以相同的方式呈现自己。在这种方式中,使用者不必追踪该等物理存储装置的原始位置,且使用者能够四处自由移动该等物理存储装置,无需担忧主机会因写入错误的物理存储装置而可能识别错物理存储装置或不慎毁损在物理存储装置上的数据。为了模拟这个特征,本发明磁盘驱动器组模拟控制器38具有不论储存装置可能存于磁盘驱动器组子系统34中何处都能正确辩别物理存储装置36的能力,以使物理存储装置能以其原始自我呈现至主机32。这一般被称为储存装置漫游(roaming)。
储存装置漫游的特征典型地系藉由储存识别与配置信息于物理存储装置它自己为此目的特别保留的一个空间中而被达成,除此之外,此保留空间并不被包括于形成逻辑介质单元的任何物理存储装置的组合中,因此,此空间对主机32是不可存取的。在系统初始化期间,磁盘驱动器组模拟控制器38读取这个信息并维持它在手边以促进模拟。若磁盘驱动器组模拟控制器38检测到,无论是因自动或藉由使用者命令,一个新物理存储装置36已经被安装(可能为对一个故障物理存储装置36的置换),其将会从此在在线的新物理存储装置36中读取此信息。
在初始化期间中储存这信息至物理存储装置与由物理存储装置读取此信息的一个缺点是从等待物理存储装置到它们自己完全进入一介质可读取的状态所造成的延迟(Latency)。假如该等物理存储装置36为了减小当多个物理存储装置同时进行电源启动时可能引发的电涌(surge)而以交错的形式进行电源启动时,则这个延迟时间可能会特别长。若主机预期在电源启动后一个小于此延迟的期间内能取得物理存储装置识别信息,例如全球广域名称(World-Wide-Name),则此延迟将会引发与主机兼容性的问题。而利用在具有一低电源启动延迟的非易失性存储器(例如:电池备援SRAM或闪存)中储存此讯息将能排除此延迟连同这些兼容性的问题。
当磁盘驱动器组模拟储存虚拟化子系统系处于一个电源关闭状态时,假设一个物理存储装置的识别信息已经如前所述地储存于非易失性存储器中,且此物理存储装置发生故障或自子系统中移除,,接下来此子系统随后开启电源时,则于电源启动初始化处理期间,以及在能决定此物理存储装置不存在以及/或者其识别信息不能被存取之前,此磁盘驱动器组模拟控制器系呈现原先的物理存储装置的识别信息至主机。且只有在磁盘驱动器组模拟控制器最后决定此物理存储装置不存在或不再为可存取的之后,磁盘驱动器组模拟控制器会察觉已呈现错误信息至主机。在此时,该磁盘驱动器组模拟储存虚拟化子系统典型地会模拟一物理存储装置移除操作,以尝试去警告主机其应该重新扫描该物理存储装置。
若一新的物理存储装置被插设进入一电源关闭的储存虚拟化子系统且此子系统随后开启电源,此新的物理存储装置识别信息将仍然维持为无法取得的状态,直到此储存虚拟化控制器能成功地从此物理存储装置的保留空间中读取此信息,这将会招致一相当长的延迟。若此物理存储装置之前从未被设定配置过且因而没有任何识别或配置信息储存于此物理存储装置中,而此子系统若要求每一个可用的物理存储装置必须被预先配置(pre-configured)(如:出厂配置(factory configured)),则磁盘驱动器组模拟储存虚拟化子系统可选择忽略它;或者,磁盘驱动器组模拟储存虚拟化子系统可对此物理存储装置产生一组识别与配置信息,并将其储存于此物理存储装置的保留空间中,同时复制到非易失性存储器。若此新插设的物理存储装置具有已经写入于其中的识别与配置信息,则适当的信息将被复制到非挥发存储器中。若此新物理存储装置的信息并不是先前与某特定主机端连结识别码/逻辑单元号码关联的识别信息,则此磁盘驱动器组模拟储存虚拟化子系统仅会警告主机去为新的物理存储装置而重新扫描此连结。反过来说,若此与新物理存储装置关联的主机端连结识别码/逻辑单元号码系与已被移除或因其它缘故而不再为作动状态中的(active)物理存储装置关联的识别码/逻辑单元号码完全相同,此磁盘驱动器组模拟控制器可能于非易失性存储器中已有原先的物理存储装置的记录以及相关的识别信息。则于电源启动初始化期间,在能成功读出此新的物理存储装置识别信息之前,此磁盘驱动器组模拟控制器到最后可以呈现此原先物理存储装置的识别码信息至主机。只有在磁盘驱动器组模拟控制器最后读出此新物理存储装置的信息之后,磁盘驱动器组模拟控制器才会察觉到其已呈现错误信息。在此时,该磁盘驱动器组模拟储存虚拟化子系统典型地会模拟一个物理存储装置移除并接着插入的操作,以尝试去警告主机其应该重新扫描该物理存储装置。
由前述可知,本发明的磁盘驱动器组子系统,系可包括识别码产生机构,而于必要时用以自动地产生逻辑介质单元识别信息呈现于该主机。
在本发明的其它实施例中,该外部磁盘驱动器组模拟控制器可还包含有通知机构(Informing Mechanism),当该逻辑介质单元至主机端连结逻辑单元号码的映像有改变时,用以通知主机。此外部磁盘驱动器组模拟控制器亦可包含公告机构(Notifying Mechanism),当由于储存于磁盘驱动器组模拟控制器中的信息与实际自物理存储装置读出的识别信息两者间的不一致而导致呈现至主机的逻辑介质单元识别信息有所改变时,此公告机构用以使主机能适时地被告知在逻辑介质单元映像上的改变。
在本发明的其它实施例中,磁盘驱动器组子系统亦可以包含有一唯一的识别码(Unique ID)判断机构,系可不受物理存储装置安装于磁盘驱动器组子系统中的位置的影响,去唯一地识别物理存储装置,其中用来唯一地识别每一个物理存储装置的信息可以储存于物理存储装置,逻辑介质单元识别及配置信息则可以储存于组成此逻辑介质单元的该等成员物理存储装置上。
物理存储装置常被实施的另一个特征为双端口特性(Dual-Portedness),其中物理存储装置系以相同的形式通过两个分开的输入输出装置连结呈现它自己至主机。这个特征系被设计来允许,即使其中一条主机端连结断掉、阻断或故障了,主机能继续对此物理存储装置进行存取,在此称这个特征为”冗余连结”(Redundant Interconnect)。为了达成此特征,本发明磁盘驱动器组模拟控制器38以相同的形式通过两个或更多个分开的主机端输入输出装置连结呈现每一个逻辑介质单元至主机32。亦即,被呈现至主机的逻辑介质单元可以被冗余地呈现在一个以上的主机端输入输出装置连结端口。
请再参阅图16,图16显示使用被冗余配置之一对本发明磁盘驱动器组模拟控制器38的实施例的功能方块图,使得在磁盘驱动器组子系统35任何一处的单一控制器板的故障,尤其是单一磁盘驱动器组模拟控制器38的故障,将不会导致存取多个物理存储装置36丧失存取能力。在这个配置中,每一个磁盘驱动器组模拟控制器38系配备有一对主机端口,每一主机端口具有一个与其所连结的在另一个磁盘驱动器组模拟控制器上的互补端口。
在正常操作下,主机经由被指定的磁盘驱动器组模拟控制器38存取逻辑介质单元。若一个磁盘驱动器组模拟控制器38故障,原本被指定至现在故障中的磁盘驱动器组模拟控制器38的逻辑介质单元立即被重新指定至正常工作的控制器38,此正常工作的储存虚拟化控制器能单单藉由在每一连结上呈现它自己以及连同所有被重新指定的逻辑介质单元而透明地接替主机输入输出请求的处理,其系以相同于此故障中的储存虚拟化控制器在其故障之前所做的方式进行。藉此种「透明接管」(transparent takeover)的特征,主机32不需特殊的机能去查觉此磁盘驱动器组模拟控制器38故障以及由主机自己对输入输出请求复位路径以为响应。
两组互补端口依顺序形成冗余端口互补(Redundant Port Complement)。主机32具有两个独立端口,此两个独立端口系使用两个个别的输入输出连结与这两个互补冗余端口组连接,则会有两个独立路径至每一个逻辑介质单元,且可经由此等路径发出输入输出请求。若其中一个在主机32上或在磁盘驱动器组模拟控制器38上的端口故障,或者若输入输出装置连结它自己断掉或变成阻断,则主机32可以经由其它冗余路径将输入输出请求复位路径发送。另一种情况是,当两条路径皆正常地运作,主机会在此两路径上选择发送输入输出请求的路径以求尽力平衡此两路径间的负载,此技术称作「负载平衡」。
为了实现上述透明接替的机能,在每一磁盘驱动器模拟控制器38上所形成的互补端口对中的每一端口对系是实体上地相互连结。于本实施例中,开关电路40被插设以完成此所需要的实质连结。图17显示开关电路40的例子,其中此开关电路系能用来在光纤连结上实现此种连结,其中的硬件信号检测电路(Signal Detection Circuits,SDC)42系用来启动此开关状态的变更。
一个要求较少连结的另一主机端连结配置系排除开关电路的需求即可达成类似的冗余特性,系显示于图18中。需注意的是,其中一磁盘驱动器组模拟控制器38连接主机32的主机端连结并未连结至另一个磁盘驱动器组模拟控制器38。在这个配置中,连结冗余系藉由让每一逻辑介质单元,若可经由一个磁盘驱动器组模拟控制器38上的主机端连结而可被主机32存取,则亦通过在另一个磁盘驱动器组模拟控制器38上的另一个主机端连结而可被主机存取的方式来实现。若其中一个连结断掉,阻断或其它原因故障,主机32仍能由另一个磁盘驱动器组模拟控制器38经由另一个连结存取此逻辑储存单元。同样地,若磁盘驱动器组模拟控制器38中之一故障,则另一磁盘驱动器组模拟控制器38可以接替该故障的磁盘驱动器组模拟控制器38并且,再一次地,主机32仍能由正常操作的磁盘驱动器组模拟控制器38经由另一个连结存取每一个逻辑介质单元。
磁盘驱动器组子系统的又一个特征系为箱体管理服务(EnclosureManagement Services,EMS)。这是一种智能型电路,其系监控各种箱体装置的状态,诸如电源供应器、风扇、温度等,且对于该等状态系可以被主机询问。在一个实际的磁盘驱动器组子系统中,典型地用来询问由箱体管理服务模块所管理与监控的装置的协议系被定义在标准SCSI指令协议中,因此,其可经由任何支持SCSI指令协议的传输的输入输出装置而被传送,此SCSI指令协议例如为平行SCSI、光纤、SAS、iSCSI等协定。
为了加强与设计和传统磁盘驱动器组子系统接合的主机的兼容性,本发明中配备有箱体管理服务电路390的磁盘驱动器组子系统34系能支持一个或多个标准SCSI EMS管理协议以及直接连接(Direct-Connect)与装置代传(Device-Forwarded)二连接配置中之一者或两者。
于直接连接模拟中,磁盘驱动器组模拟控制器38在一主机端输入输出装置连结上以一或多个识别码(ID)/逻辑单元号码的身分呈现箱体管理服务,此等箱体管理服务可以具有指定给它的专用连结识别码,或是它可以仅有被指定在识别码上的逻辑单元号码且这识别码已经呈现有其它逻辑单元号码。
而于SCSI存取容错箱体(SCSI Access Fault Tolerant Enclosures,SAF-TE)模拟中,磁盘驱动器组模拟控制器38必须呈现箱体管理服务SAF-TE装置于专用识别码上。且在直接连接(Direct-Connect)SCSI箱体服务(SCSI EnclosureService,SES)中,箱体管理服务SES装置可以被呈现于专用的识别码上或是在已呈现有其它逻辑单元号码的识别码上呈现。而装置代传模拟中,磁盘驱动器组模拟控制器38仅会在负责代传箱体管理服务管理请求的虚拟物理存储装置的询问字符串(INQUIRY string)中包含一些信息,其中箱体管理服务管理请求会告诉主机32该物理存储装置的功能之一是代传这样的请求至箱体管理服务。通常,多个或是全部呈现于连结上的虚拟物理存储装置将会成为箱体管理服务请求的代传者,因此一或多个虚拟物理存储装置的不在或失效,不会造成无法存取箱体管理服务。
在一个可供选择的实施例中,磁盘驱动器组模拟控制器亦可以被配置来支持SES箱体管理服务协议或SAF-TE箱体管理服务协议。
与习知相比较而言,本发明磁盘驱动器组子系统利用相当低成本点对点序列信号物理存储装置(例如:序列ATA硬盘),而执行传统磁盘驱动器组子系统的机能提供主机储存空间,此传统磁盘驱动器组子系统,例如,包含有平行SCSI物理存储装置或光纤物理存储装置。
上述实施例仅是为了方便说明而举例而已,本发明所主张的权利要求自应以权利要求所述为准,而非仅限于上述实施例。

Claims (69)

1.一种计算机系统,包括:
主机,系用以发送输入输出请求;
外部磁盘驱动器组模拟控制器,系连接至主机,用以模拟输入输出操作以响应该输入输出请求;以及
包括至少一个物理存储装置的物理存储装置组,其中每一物理存储装置系经由点对点序列信号连结连接至该磁盘驱动器组模拟控制器,用以通过该磁盘驱动器组模拟控制器提供该主机储存空间,
其中该磁盘驱动器组模拟控制器能定义至少一个逻辑介质单元,该逻辑介质单元包含至少一个该等物理存储装置的区段,以及于该磁盘驱动器组模拟控制器处于在线状况时能令该逻辑介质单元之一上线或下线。
2.根据权利要求1所述的计算机系统,其中该点对点序列信号连结系为下列之一者:序列先进技术附加输入输出装置连结,以及序列附加小型计算机标准接口输入输出装置连结。
3.根据权利要求1或2所述的计算机系统,其中该外部磁盘驱动器组模拟控制器包括
中央处理电路,用于执行输入输出操作以响应该主机的该输入输出请求;至少一个输入输出装置连结控制器,系连接至该中央处理电路;
至少一个主机端输入输出装置连结端口,系设置于该至少一个输入输出装置连结控制器之一者中,用来连接至该主机;以及
至少一个装置端输入输出装置连结端口,系设置于该至少一个输入输出装置连结控制器之一者中,用来连接至该至少一个物理存储装置之一者。
4.根据权利要求3所述的计算机系统,其中该逻辑介质单元系在超过一个的主机端输入输出装置连结端口上被冗余地呈现至该主机。
5.根据权利要求1或2所述的计算机系统,还包括一第二外部磁盘驱动器组模拟控制器,系连接至该主机,用以模拟输入输出操作以响应该输入输出请求,其中该磁盘驱动器组模拟控制器与该第二外部磁盘驱动器组模拟控制器系配置为一冗余对,以及该逻辑介质单元系被允许于该第二外部磁盘驱动器组模拟控制器处于在线状况时被带上线或下线。
6.根据权利要求5所述的计算机系统,其中该逻辑介质单元能藉由该二外部磁盘驱动器组模拟控制器冗余地呈现至该主机。
7.一种磁盘驱动器组子系统,用来提供主机储存空间,该磁盘驱动器组子系统包括:
至少一个外部磁盘驱动器组模拟控制器,用来连接至该主机,并供模拟复数输入输出操作以响应由该主机发送的输入输出请求;以及
一组包含至少一个物理存储装置的物理存储装置组,其中每一物理存储装置系通过点对点序列信号连结连接至该磁盘驱动器组模拟控制器,用以通过该磁盘驱动器组模拟控制器提供该主机储存空间,
其中该磁盘驱动器组模拟控制器系能定义至少一个逻辑介质单元,该一逻辑介质单元包含至少一个该等物理存储装置的区段,以及于该磁盘驱动器组模拟控制器处于在线状况时能令该逻辑介质单元之一上线或下线。
8.根据权利要求7所述的磁盘驱动器组子系统,其中该点对点序列信号连结系为下列之一者:序列先进技术附加输入输出装置连结,以及序列附加小型计算机标准接口输入输出装置连结。
9.根据权利要求7或8所述的磁盘驱动器组子系统,该至少一个逻辑介质单元之一系包括多个该物理存储装置的区段。
10.根据权利要求7或8所述的磁盘驱动器组子系统,其中该外部磁盘驱动器组模拟控制器包括:
中央处理电路,用于执行输入输出操作以响应该主机的输入输出请求;
至少一个输入输出装置连结控制器,系连接至该中央处理电路;
至少一个主机端输入输出装置连结端口,系设置于该至少一个输入输出装置连结控制器之一者中,用来连接至该主机;以及至少一个装置端输入输出装置连结端口,系设置于该至少一个输入输出装置连结控制器之一者中,用来连接至该至少一个物理存储装置之一者。
11.根据权利要求7或8所述的磁盘驱动器组子系统,其还包括自动上线机构,用以当一旦该等物理存储装置的必要最低数量变成上线时,将自动地把先前下线的该逻辑介质单元带上线。
12.根据权利要求7或8所述的磁盘驱动器组子系统,其还包括自动下线机构,用以当一旦物理存储装置的必要最低数量变成下线时,将自动地把先前上线的逻辑介质单元带下线。
13.根据权利要求7或8所述的磁盘驱动器组子系统,其还包括判断机构,用以自动地判断物理存储装置何时已被移除或何时已被插入。
14.根据权利要求7或8所述的磁盘驱动器组子系统,其还包括扫描纳入机构,用以于检测到该物理存储装置的插入时,自动地扫描纳入该物理存储装置。
15.根据权利要求7或8所述的磁盘驱动器组子系统,其还包括通知机构,当该逻辑介质单元至主机端连结的逻辑单元号码的映像有改变时,用以通知该主机。
16.根据权利要求7或8所述的磁盘驱动器组子系统,其还包括唯一识别码判断机构,用以唯一地识别该等物理存储装置,而不受该等物理存储装置安装于该磁盘驱动器组子系统中的位置的影响。
17.根据权利要求16所述的磁盘驱动器组子系统,其中被用来唯一地识别每一个该物理存储装置的信息系储存于该物理存储装置本身上。
18.根据权利要求7或8所述的磁盘驱动器组子系统,其中还包括有逻辑介质单元识别及配置信息,其系被储存于组成该逻辑介质单元的该等成员物理存储装置上。
19.根据权利要求18所述的磁盘驱动器组子系统,其中该呈现至该主机的逻辑介质单元识别信息,其系由储存于组成该逻辑介质单元的该等成员物理存储装置上的逻辑介质单元识别信息所产生。
20.根据权利要求7或8所述的磁盘驱动器组子系统,其中还包括有呈现至该主机的逻辑介质单元识别信息,其系由储存于该外部磁盘驱动器组模拟控制器之一非易失性存储器的信息所产生。
21.根据权利要求7或8所述的磁盘驱动器组子系统,其中还包括有呈现至该主机的逻辑介质单元识别信息,其系以下列方式产生:在能获得该等成员物理存储装置的逻辑介质单元识别信息之前,由储存于该外部磁盘驱动器组模拟控制器之一非易失性存储器的信息来产生;在组成该逻辑介质单元的该等成员物理存储装置变成可存取的之后,由储存于该等成员物理存储装置上的逻辑介质单元识别信息来产生。
22.根据权利要求7或8所述的磁盘驱动器组子系统,其中该至少一个磁盘驱动器组模拟控制器中还包含有第一及第二磁盘驱动器组模拟控制器,其系配置为一冗余对,藉此当该第一磁盘驱动器组模拟控制器断线或下线时,该第二磁盘驱动器组模拟控制器将接替该第一磁盘驱动器组模拟控制器的机能。
23.根据权利要求22所述的磁盘驱动器组子系统,其中该第一磁盘驱动器组模拟控制器之一主机端端口与该第二磁盘驱动器组模拟控制器之一主机端端口系配置成一对互补端口。
24.根据权利要求23所述的磁盘驱动器组子系统,其中该互补端口对系连结至相同主机端输入输出装置连结。
25.根据权利要求24所述的磁盘驱动器组子系统,其中该互补端口对系连同一开关电路而相连结。
26.根据权利要求23所述的磁盘驱动器组子系统,其中该互补端口对中每一端口系连结至不同的主机端输入输出装置连结上。
27.根据权利要求22所述的磁盘驱动器组子系统,其中该逻辑介质单元其中之一系通过该第一及该第二磁盘驱动器组模拟控制器两者呈现至主机。
28.根据权利要求7或8所述的磁盘驱动器组子系统,还包括识别码产生机构,并当一需求发生时,该识别码产生机构用以自动地产生呈现于该主机的逻辑介质单元识别信息。
29.根据权利要求7或8所述的磁盘驱动器组子系统,其中该逻辑介质单元系在超过一个的主机端输入输出装置连结端口上被冗余地呈现至该主机。
30.根据权利要求7或8所述的磁盘驱动器组子系统,其还包括箱体管理服务机构。
31.根据权利要求30所述的磁盘驱动器组子系统,其中该箱体管理服务机构系为下列之一配置:直接连接箱体管理服务配置,装置代转箱体管理服务配置,以及同时实行直接连接及装置代转箱体管理服务配置。
32.根据权利要求30所述的磁盘驱动器组子系统,其中该磁盘驱动器组模拟控制器系被配置来支持下列之一协议:小型计算机标准接口箱体服务协议,以及小型计算机标准接口存取容错箱体协议。
33.根据权利要求10所述的磁盘驱动器组子系统,其中至少一个该主机端输入输出装置连结端口系为下列之一者:于目标模式时支持点对点连结的光纤信道,于目标模式时支持公用回路连结的光纤信道,于在目标模式中支持专用回路连结的光纤信道,操作于目标模式的平行小型计算机标准接口,操作于目标模式时支持因特网小型计算机标准接口协议的以太网络,操作于目标模式的序列附加小型计算机标准接口,以及操作于目标模式时的序列先进技术附加。
34.一种外部模拟磁盘驱动器组模拟控制器,系用以模拟输入输出操作以响应由主机而来的输入输出请求,该外部模拟磁盘驱动器组模拟控制器包括:
中央处理电路,用以执行输入输出操作以响应该主机的输入输出请求;
至少一个输入输出装置连结控制器,系连接至该中央处理电路;
至少一个主机端输入输出装置连结端口,系设置于该至少一个输入输出连结控制器之一者中,用来连接至该主机;以及
至少一个装置端输入输出装置连结端口,系设置于该至少一个输入输出连结控制器之一者中,用来连接至一组包含至少一个物理存储装置的物理存储装置组,并能执行点对点序列信号传输于其间,
其中该模拟磁盘驱动器组模拟控制器系被配置来能够定义至少一个逻辑介质单元,该逻辑介质单元包含至少一个该等物理存储装置的区段,以及于该外部磁盘驱动器组模拟控制器处于在线状况时能令该逻辑介质单元上线或下线。
35.根据权利要求34所述的外部模拟磁盘驱动器组模拟控制器,其中该装置端输入输出装置连结端口之一系为下列之一者:序列先进技术附加输入输出装置连结端口,用以经由此序列先进技术接取接口输入输出装置连结与该物理存储装置之一者连接,以及序列附加小型计算机标准接口输入输出装置连结端口,用以经由此序列附加小型计算机标准接口输入输出装置连结与该物理存储装置之一者连接。
36.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其还包括:
外设组件连结或外设组件连结扩充或外设组件连结快捷接口,用以连接至该中央处理电路;以及
译码/多任务仲裁器,系连接至该外设组件连结或外设组件连结扩充或外设组件连结快捷接口与多个该装置端输入输出装置连结端口,用以选择地通联该外设组件连结或外设组件连结扩充或外设组件连结快捷接口与该等装置端输入输出装置连结端口之一者。
37.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中该逻辑介质单元之一系能于该磁盘驱动器组模拟控制器处于在线状况时被带上线。
38.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中该逻辑介质单元之一系能于该磁盘驱动器组模拟控制器处于在线状况时被拿下线。
39.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中至少一个该逻辑介质单元系包括多个该物理存储装置的区段。
40.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其还包括判断机构,用以自动判断物理存储装置何时已被移除或何时已被插入。
41.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其还包括扫描纳入机构,用以于检测到物理存储装置被插入时,自动地扫描纳入该物理存储装置。
42.根据权利要求39所述的外部模拟磁盘驱动器组模拟控制器,其还包一自动上线机构,用以在检测到与该逻辑介质单元关联的该等物理存储装置中之一个先前已下线的物理存储装置被插入时,自动地把该先前已下线的逻辑介质单元带上线。
43.根据权利要求39所述的外部模拟磁盘驱动器组模拟控制器,其还包括自动下线机构,用以在检测到与该逻辑介质单元关联的所有该等物理存储装置都下线时,自动地把该先前已上线的逻辑介质单元带下线。
44.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其还包括通知机构,当该逻辑介质单元至主机端连结的逻辑单元号码的映像有改变时,用以通知该主机。
45.根据权利要求44所述的外部模拟磁盘驱动器组模拟控制器,其中该至少一个主机端输入输出装置连结系为操作于仲裁回路模式的光纤,以及当一新的目标识别码系被导入该光纤回路时,该外部模拟磁盘驱动器组模拟控制器发送回路初始化原语(LIP),使能对该回路上其它装置告知回路装置映像已改变。
46.根据权利要求44所述的外部模拟磁盘驱动器组模拟控制器,其中该至少一个主机端输入输出装置连结系为操作于仲裁回路模式的光纤,以及当新的目标识别码系由该光纤回路被移除时,该外部模拟磁盘驱动器组模拟控制器发送回路初始化原语,始能对该回路上其它装置告知回路装置映像已改变。
47.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中该磁盘驱动器组模拟控制器系支持标准小型计算机接口指令集系作为经由该主机端输入输出装置连结与该主机的主要指令接口。
48.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中该外部模拟磁盘驱动器组模拟控制器系能在逻辑介质单元至主机端连结逻辑单元号码的映像已改变时,发布带有主机的感知数据的检查状况状态以通知该主机。
49.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其还包括唯一识别码判断机构,用来唯一地识别该等物理存储装置。
50.根据权利要求49所述的外部模拟磁盘驱动器组模拟控制器,其中被用来唯一地识别每一个该物理存储装置的信息系储存于该物理存储装置本身上。
51.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中还包括有逻辑介质单元识别及配置信息,其系被储存于组成该逻辑介质单元的该等成员物理存储装置上。
52.根据权利要求51所述的外部模拟磁盘驱动器组模拟控制器,其中呈现至该主机的逻辑介质单元识别信息,其系由储存于组成该逻辑介质单元的该等成员物理存储装置上的逻辑介质单元识别信息所产生。
53.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中还包括有呈现至该主机的逻辑介质单元识别信息,其系由储存于该外部磁盘驱动器组模拟控制器的资非易失性存储器中的信息所产生。
54.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中还包括有呈现至该主机的逻辑介质单元识别信息,其系以下列方式产生:在能获得该等成员物理存储装置的逻辑介质单元识别信息之前,由储存于该外部磁盘驱动器组模拟控制器的非易失性存储器中的信息来产生;以及在组成该逻辑介质单元的该等成员物理存储装置变成可存取的之后,由储存于该等成员物理存储装置上的逻辑介质单元识别信息来产生。
55.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中至少一个该主机端输入输出装置连结端口系为下列之一者:于目标模式时支持点对点连结的光纤信道,于目标模式时支持公用回路连结的光纤信道,在目标模式中支持专用回路连结的光纤信道,操作于目标模式的平行小型计算机标准接口,操作于目标模式时支持网络小型计算机标准接口协议的以太网络,操作于目标模式的序列附加小型计算机标准接口,以及操作于目标模式时的序列先进技术附加。
56.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,还包括识别码产生机构,并当需求发生时,该识别码产生机构用以自动地产生呈现于该主机的逻辑介质单元识别信息。
57.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其还包括箱体管理服务机构。
58.根据权利要求57所述的外部模拟磁盘驱动器组模拟控制器,其中该箱体管理服务机构为下列之一配置:直接连接箱体管理服务配置,装置代转箱体管理服务配置,以及同时实行直接连接及装置代转箱体管理服务配置。
59.根据权利要求57所述的外部模拟磁盘驱动器组模拟控制器,其中该磁盘驱动器组模拟控制器系被配置来支持下列之一协议:小型计算机标准接口箱体服务协议,以及小型计算机标准接口存取容错箱体协议。
60.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其还包括公告机构,而当由于储存在该磁盘驱动器组模拟控制器中的信息与实际自该物理存储装置读出的识别信息两者间的不一致而导致呈现至该主机的逻辑介质单元识别信息有所改变时,该公告机构用以使该主机能适时地被告知在逻辑介质单元映像上的改变。
61.根据权利要求34或35所述的外部模拟磁盘驱动器组模拟控制器,其中该逻辑介质单元系在超过一个以上的该主机端输入输出装置连结端口上被冗余地呈现至该主机。
62.一种执行磁盘驱动器组模拟于计算机系统中的方法,该计算机系统具有至少一个外部磁盘驱动器组模拟控制器与连接至该外部磁盘驱动器组模拟控制器的一组包含至少一个实体储存储存装置的物理存储装置组,该方法包括:
(a)以该磁盘驱动器组模拟控制器定义至少一个逻辑介质单元,该逻辑介质单元包括至少一个该实体储存储存装置的区段;
(b)以该外部磁盘驱动器组模拟控制器接收及解析由主机传来的输入输出请求,藉由通过在点对点序列信号传输上的至少一个装置端输入输出装置连结端口存取该物理存储装置组,以执行存取该逻辑介质单元的输入输出操作;以及
(c)于该磁盘驱动器组模拟控制器处于在线状态时,使未在在线的该逻辑介质单元上线,或使已在在线的该逻辑介质单元下线。
63.根据权利要求62所述的方法,其中于(b)步骤中,其所通过在点对点序列信号传输上的该装置端输入输出装置连结端口系为下列之一者:序列先进技术附加输入输出装置连结端口,以及序列附加小型计算机标准接口输入输出装置连结端口。
64.根据权利要求62或63所述的方法,其还包括在该模拟磁盘驱动器组模拟控制器处于在线状态时,使未在在线的该逻辑介质单元上线。
65.根据权利要求62或63所述的方法,其还包括在该模拟磁盘驱动器组模拟控制器处于在线状态时,使已在在线的该逻辑介质单元下线。
66.根据权利要求62或63所述的方法,其中该至少一个逻辑介质单元包括多个该等物理存储装置的区段。
67.根据权利要求66所述的方法,其还包括在检测到与该逻辑介质单元关联的该物理存储装置其中之一个先前已下线的物理存储装置被插入时,自动地将该先前已下线的逻辑介质单元导入上线。
68.根据权利要求66所述的方法,其还包括在检测到与该逻辑介质单元关联的所有该等物理存储装置都下线时,自动地令该逻辑介质单元下线。
69.根据权利要求62或63所述的方法,于步骤(b)中,该外部磁盘驱动器组模拟控制器系经由至少一个主机端输入输出装置连结端口接收由该主机传来的输入输出请求,且其中该至少一个主机端输入输出装置连结端口系支持下述之一:于目标模式时支持点对点连结的光纤信道;于目标模式时支持公用回路连结的光纤信道;在目标模式中支持专用回路连结的光纤信道;操作于目标模式的平行小型计算机标准接口;操作于目标模式时支持网络小型计算机标准接口协议的以太网络;操作于目标模式的序列附加小型计算机标准接口;以及操作于目标模式时的序列先进技术附加。
CNB2004100621465A 2003-07-02 2004-07-02 磁盘驱动器组子系统及用于其中的外部模拟控制器 Active CN1320437C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US48392603P 2003-07-02 2003-07-02
US60/483,926 2003-07-02

Publications (2)

Publication Number Publication Date
CN1598755A true CN1598755A (zh) 2005-03-23
CN1320437C CN1320437C (zh) 2007-06-06

Family

ID=34375216

Family Applications (3)

Application Number Title Priority Date Filing Date
CNB2004100618227A Active CN1320436C (zh) 2003-07-02 2004-06-25 储存虚拟化计算机系统及用于其中的外接式控制器
CNB2004100621465A Active CN1320437C (zh) 2003-07-02 2004-07-02 磁盘驱动器组子系统及用于其中的外部模拟控制器
CNB2004100621380A Active CN100334567C (zh) 2003-07-02 2004-07-02 冗余外部储存虚拟化计算机系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CNB2004100618227A Active CN1320436C (zh) 2003-07-02 2004-06-25 储存虚拟化计算机系统及用于其中的外接式控制器

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB2004100621380A Active CN100334567C (zh) 2003-07-02 2004-07-02 冗余外部储存虚拟化计算机系统

Country Status (3)

Country Link
US (5) US8301809B2 (zh)
CN (3) CN1320436C (zh)
TW (3) TWI260500B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100416485C (zh) * 2005-09-23 2008-09-03 普安科技股份有限公司 具有资料路径分支功能的冗余储存虚拟化子系统及方法
CN1991734B (zh) * 2005-10-11 2011-12-07 普安科技股份有限公司 一种数据存储虚拟化子系统及其控制方法

Families Citing this family (127)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5941972A (en) 1997-12-31 1999-08-24 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
USRE42761E1 (en) 1997-12-31 2011-09-27 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
US8813137B2 (en) * 1998-05-08 2014-08-19 Qualcomm Incorporated Apparatus and method for decoding digital image and audio signals
US8301809B2 (en) * 2003-07-02 2012-10-30 Infortrend Technology, Inc. Storage virtualization computer system and external controller thereof
JP4383132B2 (ja) * 2003-09-02 2009-12-16 株式会社日立製作所 仮想化制御装置及び計算機システム
US7308530B1 (en) * 2003-10-02 2007-12-11 Marvell International Ltd. Architecture for a data storage device
US20050114464A1 (en) * 2003-10-27 2005-05-26 Shai Amir Virtualization switch and method for performing virtualization in the data-path
US20050102468A1 (en) * 2003-11-06 2005-05-12 Delaney William P. Methods and systems for coupling multiple initiators to SATA storage devices
US7676603B2 (en) * 2004-04-20 2010-03-09 Intel Corporation Write combining protocol between processors and chipsets
US7124143B2 (en) 2004-05-10 2006-10-17 Hitachi, Ltd. Data migration in storage system
US7502954B1 (en) * 2004-05-26 2009-03-10 Emc Corporation High availability data storage system
US7958292B2 (en) * 2004-06-23 2011-06-07 Marvell World Trade Ltd. Disk drive system on chip with integrated buffer memory and support for host memory access
JP4438582B2 (ja) * 2004-09-22 2010-03-24 株式会社日立製作所 データ移行方法
KR100640588B1 (ko) * 2004-09-24 2006-11-01 삼성전자주식회사 Sata 인터페이스와 ata 인터페이스를 선택적으로사용하는 비휘발성 메모리 저장 장치
KR100594305B1 (ko) * 2004-12-17 2006-06-30 삼성전자주식회사 시리얼 ata 인터페이스를 이용하여 광학 디스크드라이버의 프로그램 코드를 업데이트하는 장치 및 그 방법
US9495263B2 (en) * 2004-12-21 2016-11-15 Infortrend Technology, Inc. Redundant SAS storage virtualization subsystem and system using the same, and method therefor
US8301810B2 (en) * 2004-12-21 2012-10-30 Infortrend Technology, Inc. SAS storage virtualization controller, subsystem and system using the same, and method therefor
CN101470587B (zh) * 2004-12-21 2011-08-17 普安科技股份有限公司 冗余储存虚拟化子系统
US20060143506A1 (en) * 2004-12-29 2006-06-29 Lsi Logic Corporation RAID storage controller assist circuit, systems and methods
CN100447731C (zh) * 2005-01-13 2008-12-31 普安科技股份有限公司 冗余存储虚拟化计算机系统
TWI344602B (en) * 2005-01-13 2011-07-01 Infortrend Technology Inc Redundant storage virtualization computer system
TW200627170A (en) * 2005-01-25 2006-08-01 Sunplus Technology Co Ltd Control system for storage device
US8019842B1 (en) * 2005-01-27 2011-09-13 Netapp, Inc. System and method for distributing enclosure services data to coordinate shared storage
CN100359454C (zh) * 2005-01-27 2008-01-02 凌阳科技股份有限公司 储存装置的控制系统
US8180855B2 (en) * 2005-01-27 2012-05-15 Netapp, Inc. Coordinated shared storage architecture
US20060194386A1 (en) * 2005-02-25 2006-08-31 Dell Products L.P. Method and apparatus for supporting port aggregation of serial attached SCSI wide ports via virtual ports
US7689744B1 (en) * 2005-03-17 2010-03-30 Lsi Corporation Methods and structure for a SAS/SATA converter
US7774514B2 (en) * 2005-05-16 2010-08-10 Infortrend Technology, Inc. Method of transmitting data between storage virtualization controllers and storage virtualization controller designed to implement the method
US7984258B2 (en) * 2005-06-03 2011-07-19 Seagate Technology Llc Distributed storage system with global sparing
US8352649B2 (en) * 2005-06-09 2013-01-08 Infortrend Technology, Inc. Storage virtualization subsystem architecture
DE102005028478A1 (de) * 2005-06-20 2006-12-28 Giga-Byte Technology Co., Ltd., Hsin-Tien Datenübertragungsvorrichtung und ein Verfahren zum Verwenden derselben
GB2427486B (en) * 2005-06-23 2010-09-29 Giga Byte Tech Co Ltd Interface system for SATA having fast data access function and method thereof
TWI277874B (en) * 2005-06-24 2007-04-01 Via Tech Inc Method for access non-standard register in serial advanced technology attachment (SATA) device
US7627005B2 (en) * 2005-09-29 2009-12-01 Emc Corporation Multiplexing system
DE102005031617A1 (de) * 2005-07-06 2007-01-25 Giga-Byte Technology Co., Ltd. System und Verfahren zur Steuerung einer Sata-Schnittstelle
US7493430B2 (en) * 2005-07-14 2009-02-17 Quantum Corporation Data flow control and bridging architecture enhancing performance of removable data storage systems
US7363457B1 (en) 2005-07-21 2008-04-22 Sun Microsystems, Inc. Method and system for providing virtualization data services for legacy storage devices
US7571269B2 (en) * 2005-08-25 2009-08-04 Silicon Image, Inc. Covert channel for conveying supplemental messages in a protocol-defined link for a system of storage devices
KR101340176B1 (ko) * 2005-08-25 2013-12-10 실리콘 이미지, 인크. 스마트 스케일러블 스토리지 스위치 아키텍처
CN100414489C (zh) * 2005-09-02 2008-08-27 普安科技股份有限公司 存储虚拟化控制器的同位引擎及同位引擎产生数据的方法
TWI307034B (en) * 2005-11-23 2009-03-01 Infortrend Technology Inc Storage virtualization subsystem and system with host-side redundancy via sas connectivity
US20070124521A1 (en) * 2005-11-30 2007-05-31 International Business Machines Corporation System and method of substituting redundant same address devices on a multi-mastered IIC bus
EP1816563B1 (en) * 2006-01-26 2016-04-27 Infortrend Technology, Inc. Method of managing data snapshot images in a storage system
US7516352B2 (en) * 2006-03-21 2009-04-07 International Business Machines Corporation Isolating a drive from disk array for diagnostic operations
US9342413B2 (en) * 2006-04-27 2016-05-17 Infortrend Technology, Inc. SAS RAID head
US7536584B2 (en) * 2006-06-08 2009-05-19 Dot Hill Systems Corporation Fault-isolating SAS expander
WO2007146515A2 (en) * 2006-06-08 2007-12-21 Dot Hill Systems Corporation Fault-isolating sas expander
US7673185B2 (en) * 2006-06-08 2010-03-02 Dot Hill Systems Corporation Adaptive SAS PHY configuration
US8285893B2 (en) * 2006-10-13 2012-10-09 Dell Products L.P. System and method for adaptively setting connections to input/output hubs within an information handling system
US7496694B2 (en) * 2006-11-21 2009-02-24 Lsi Logic Corporation Circuit, systems and methods for monitoring storage controller status
US8307128B2 (en) * 2006-12-08 2012-11-06 International Business Machines Corporation System and method to improve sequential serial attached small computer system interface storage device performance
US8607070B2 (en) * 2006-12-20 2013-12-10 Kingston Technology Corporation Secure storage system and method of use
US20080168226A1 (en) * 2007-01-05 2008-07-10 Accusys. Inc. Correction method for reading data of disk array system
US20080168224A1 (en) * 2007-01-09 2008-07-10 Ibm Corporation Data protection via software configuration of multiple disk drives
US20080244620A1 (en) * 2007-03-27 2008-10-02 Brian James Cagno Dynamic Communication Fabric Zoning
US8499168B2 (en) * 2007-05-09 2013-07-30 Kingston Technology Corporation Secure and scalable solid state disk system
US8527781B2 (en) * 2007-05-09 2013-09-03 Kingston Technology Corporation Secure and scalable solid state disk system
US8010768B2 (en) * 2007-05-09 2011-08-30 Kingston Technology Corporation Secure and scalable solid state disk system
ITTO20070387A1 (it) * 2007-06-04 2008-12-05 Reven Ge S R L Sistema di elaboratori comprendente almeno due elaboratori e relativo metodo per il funzionamento continuo di detto sistema
US8099532B2 (en) * 2007-06-14 2012-01-17 International Business Machines Corporation Intelligent dynamic multi-zone single expander connecting dual ported drives
JP4945363B2 (ja) * 2007-07-30 2012-06-06 株式会社日立製作所 バックエンドで接続されるストレージシステム
US8141092B2 (en) 2007-11-15 2012-03-20 International Business Machines Corporation Management of an IOV adapter through a virtual intermediary in a hypervisor with functional management in an IOV management partition
US8141093B2 (en) * 2007-11-15 2012-03-20 International Business Machines Corporation Management of an IOV adapter through a virtual intermediary in an IOV management partition
US8141094B2 (en) * 2007-12-03 2012-03-20 International Business Machines Corporation Distribution of resources for I/O virtualized (IOV) adapters and management of the adapters through an IOV management partition via user selection of compatible virtual functions
TWI357562B (en) * 2007-12-20 2012-02-01 Infortrend Technology Inc Io processor
US7966288B2 (en) * 2008-01-02 2011-06-21 Sandisk Il Ltd. Device and method for integrating file systems
US8307129B2 (en) * 2008-01-14 2012-11-06 International Business Machines Corporation Methods and computer program products for swapping synchronous replication secondaries from a subchannel set other than zero to subchannel set zero using dynamic I/O
US7930165B2 (en) * 2008-02-07 2011-04-19 Accemic Gmbh & Co. Kg Procedure and device for emulating a programmable unit providing system integrity control
US8359415B2 (en) * 2008-05-05 2013-01-22 International Business Machines Corporation Multi-root I/O virtualization using separate management facilities of multiple logical partitions
JP2010033125A (ja) * 2008-07-25 2010-02-12 Hitachi Ltd ストレージ装置及びデータ転送方法
US8516173B2 (en) * 2008-07-28 2013-08-20 International Business Machines Corporation Swapping PPRC secondaries from a subchannel set other than zero to subchannel set zero using control block field manipulation
JP2010049640A (ja) * 2008-08-25 2010-03-04 Seiko Epson Corp 情報処理装置及びその制御方法
US9384160B2 (en) * 2008-09-04 2016-07-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Methods and controllers for affiliation managment
WO2010030731A1 (en) * 2008-09-12 2010-03-18 Assa Abloy Ab Use of a secure element for writing to and reading from machine readable credentials
US8225019B2 (en) * 2008-09-22 2012-07-17 Micron Technology, Inc. SATA mass storage device emulation on a PCIe interface
US20100115140A1 (en) * 2008-10-30 2010-05-06 Micron Technology, Inc. Encoded addressing within control code for bus communication
CN101763221B (zh) * 2008-12-24 2013-01-30 成都市华为赛门铁克科技有限公司 一种存储方法、存储系统及控制器
US8943409B2 (en) * 2008-12-26 2015-01-27 Sandisk Il Ltd. Storage device managing playable content
US8239395B2 (en) * 2008-12-26 2012-08-07 Sandisk Il Ltd. Storage device presenting to hosts only files compatible with a defined host capability
US8166067B2 (en) * 2008-12-26 2012-04-24 Sandisk Il Ltd. Method and apparatus for providing access to files based on user identity
US20100169395A1 (en) * 2008-12-26 2010-07-01 Sandisk Il Ltd. Device and method for filtering a file system
US8144582B2 (en) * 2008-12-30 2012-03-27 International Business Machines Corporation Differentiating blade destination and traffic types in a multi-root PCIe environment
EP2406749B1 (en) * 2009-03-13 2018-06-13 Assa Abloy Ab Transfer device for sensitive material such as a cryptographic key
US9032058B2 (en) * 2009-03-13 2015-05-12 Assa Abloy Ab Use of SNMP for management of small footprint devices
EP2228746A1 (en) * 2009-03-13 2010-09-15 Assa Abloy Ab Realization of access control conditions as boolean expressions in credential authentications
US20100235900A1 (en) * 2009-03-13 2010-09-16 Assa Abloy Ab Efficient two-factor authentication
US8521987B2 (en) * 2009-03-18 2013-08-27 Hitachi, Ltd. Allocation and release of storage areas to virtual volumes
US8125472B2 (en) * 2009-06-09 2012-02-28 Global Oled Technology Llc Display device with parallel data distribution
US8510592B1 (en) * 2009-09-15 2013-08-13 Netapp, Inc. PCI error resilience
US8261269B2 (en) * 2009-09-21 2012-09-04 Oracle International Corporation System and method for synchronizing transient resource usage between virtual machines in a hypervisor environment
US8201020B2 (en) * 2009-11-12 2012-06-12 International Business Machines Corporation Method apparatus and system for a redundant and fault tolerant solid state disk
US9256521B1 (en) * 2010-11-03 2016-02-09 Pmc-Sierra Us, Inc. Methods and apparatus for SAS controllers with link list based target queues
US8521931B2 (en) * 2010-12-30 2013-08-27 Lsi Corporation Serial input output (SIO) port expansion apparatus and method
US20120317335A1 (en) * 2011-06-08 2012-12-13 Byungcheol Cho Raid controller with programmable interface for a semiconductor storage device
US9329939B2 (en) * 2011-06-08 2016-05-03 Taejin Info Tech Co., Ltd Two-way raid controller for a semiconductor storage device
TWI473005B (zh) * 2011-06-09 2015-02-11 Taejin Infotech Co Ltd 基於開關的混合存儲系統及其提供方法
US8819316B2 (en) * 2011-06-21 2014-08-26 Taejin Info Tech Co., Ltd. Two-way raid controller with programmable host interface for a semiconductor storage device
CN102255958B (zh) * 2011-06-27 2014-11-26 北京星网锐捷网络技术有限公司 数据同步方法及系统
CN102801768A (zh) * 2012-01-20 2012-11-28 华为技术有限公司 数据处理方法及系统、网络设备
JP6040612B2 (ja) * 2012-07-24 2016-12-07 富士通株式会社 ストレージ装置、情報処理装置、情報処理システム、アクセス制御方法、およびアクセス制御プログラム
US8773817B2 (en) * 2012-07-24 2014-07-08 Lsi Corporation Storage device having degauss circuitry with ramp generator for use in generating chirped degauss signal
JP5951025B2 (ja) * 2012-09-05 2016-07-13 三菱電機株式会社 入出力応答制御設定装置
CN103793179A (zh) * 2012-10-30 2014-05-14 英业达科技有限公司 机柜伺服系统及逻辑磁盘系统的管理方法
CN103294630B (zh) * 2013-05-07 2015-11-04 福建鑫诺通讯技术有限公司 一种嵌入式linux系统中实现串口多路复用的方法
US9372774B2 (en) * 2013-05-22 2016-06-21 GM Global Technology Operations LLC Redundant computing architecture
CN103440177A (zh) * 2013-08-23 2013-12-11 浪潮电子信息产业股份有限公司 一种基于numa多物理层分区的存储控制冗余方法
US10691838B2 (en) * 2014-06-20 2020-06-23 Cypress Semiconductor Corporation Encryption for XIP and MMIO external memories
TWI501075B (zh) * 2014-08-06 2015-09-21 Inventec Corp 伺服器
KR102320407B1 (ko) * 2015-06-05 2021-11-03 삼성전자주식회사 I2c 통신 모듈을 포함하는 컴퓨팅 장치 및 그것의 통신 에러 복구 방법
US9921754B2 (en) * 2015-07-28 2018-03-20 Futurewei Technologies, Inc. Dynamic coding algorithm for intelligent coded memory system
US10372185B2 (en) 2015-07-28 2019-08-06 Western Digital Technologies, Inc. Enhanced power control of data storage arrays
US10261690B1 (en) 2016-05-03 2019-04-16 Pure Storage, Inc. Systems and methods for operating a storage system
US10445018B2 (en) 2016-09-09 2019-10-15 Toshiba Memory Corporation Switch and memory device
US10866912B2 (en) 2017-03-10 2020-12-15 Toshiba Memory Corporation Integrated heterogeneous solid state storage drive
US10509415B2 (en) * 2017-07-27 2019-12-17 Aurora Flight Sciences Corporation Aircrew automation system and method with integrated imaging and force sensing modalities
US10956245B1 (en) * 2017-07-28 2021-03-23 EMC IP Holding Company LLC Storage system with host-directed error scanning of solid-state storage devices
TWI656442B (zh) 2017-11-30 2019-04-11 慧榮科技股份有限公司 用來於一記憶裝置中進行存取控制之方法以及記憶裝置及其控制器
CN108280041B (zh) * 2017-12-29 2020-03-10 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 一种内部集成电路主机的通信方法和装置
CN108459971A (zh) * 2018-03-19 2018-08-28 国云科技股份有限公司 一种基于桌面云共享设备的云盘性能加速方法
CN109213446B (zh) * 2018-08-23 2022-03-22 郑州云海信息技术有限公司 写缓存模式的切换方法、装置、设备及可读存储介质
CN109271108B (zh) * 2018-09-03 2021-11-30 青岛镕铭半导体有限公司 一种存储器控制装置及数据存储设备
US11868309B2 (en) 2018-09-06 2024-01-09 Pure Storage, Inc. Queue management for data relocation
CN111324296B (zh) 2018-12-16 2022-08-09 华为技术有限公司 一种数据处理的方法、控制器、存储设备及存储系统
US11500727B2 (en) 2020-05-27 2022-11-15 Western Digital Technologies, Inc. ZNS parity swapping to DRAM
US11138066B1 (en) * 2020-05-27 2021-10-05 Western Digital Technologies, Inc. Parity swapping to DRAM
US11645012B1 (en) * 2022-01-18 2023-05-09 Dell Products, L.P. Method and apparatus for distributing read operations between emulations in a storage engine
US20240028202A1 (en) * 2022-07-20 2024-01-25 Dell Products, L.P. Optimizing Backend Workload Processing in a Storage System

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0721162A2 (en) * 1995-01-06 1996-07-10 Hewlett-Packard Company Mirrored memory dual controller disk storage system
US6532547B1 (en) * 1995-06-16 2003-03-11 Emc Corporation Redundant peripheral device subsystem
US5819310A (en) * 1996-05-24 1998-10-06 Emc Corporation Method and apparatus for reading data from mirrored logical volumes on physical disk drives
US5986880A (en) * 1997-06-16 1999-11-16 Compaq Computer Corporation Electronic apparatus having I/O board with cable-free redundant adapter cards thereon
US6178520B1 (en) * 1997-07-31 2001-01-23 Lsi Logic Corporation Software recognition of drive removal or insertion in a storage system
JPH1153235A (ja) * 1997-08-08 1999-02-26 Toshiba Corp ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム
US6725331B1 (en) * 1998-01-07 2004-04-20 Emc Corporation Method and apparatus for managing the dynamic assignment resources in a data storage system
US6247077B1 (en) * 1998-02-06 2001-06-12 Ncr Corporation Highly-scalable parallel processing computer system architecture
US6148349A (en) * 1998-02-06 2000-11-14 Ncr Corporation Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification
US6061750A (en) * 1998-02-20 2000-05-09 International Business Machines Corporation Failover system for a DASD storage controller reconfiguring a first processor, a bridge, a second host adaptor, and a second device adaptor upon a second processor failure
US6230240B1 (en) * 1998-06-23 2001-05-08 Hewlett-Packard Company Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface
US6711632B1 (en) * 1998-08-11 2004-03-23 Ncr Corporation Method and apparatus for write-back caching with minimal interrupts
US6314460B1 (en) * 1998-10-30 2001-11-06 International Business Machines Corporation Method and apparatus for analyzing a storage network based on incomplete information from multiple respective controllers
US6799283B1 (en) * 1998-12-04 2004-09-28 Matsushita Electric Industrial Co., Ltd. Disk array device
JP2000276304A (ja) * 1999-03-26 2000-10-06 Nec Corp データ移行方法と情報処理システム
US6483107B1 (en) * 1999-05-11 2002-11-19 Josef Rabinovitz Canister having a combined guide rail and light pipe system for use in a computer peripheral enclosure
US6631442B1 (en) * 1999-06-29 2003-10-07 Emc Corp Methods and apparatus for interfacing to a data storage system
US7068661B1 (en) * 1999-07-13 2006-06-27 Alcatel Canada Inc. Method and apparatus for providing control information in a system using distributed communication routing
US6397292B1 (en) 1999-08-19 2002-05-28 Emc Corporation Asymmetrical striping of mirrored storage device arrays and concurrent access to even tracks in the first array and odd tracks in the second array to improve data access performance
US6493772B1 (en) * 1999-08-23 2002-12-10 International Business Machines Corporation System and method with guaranteed maximum command response time
EP1236106A4 (en) * 1999-09-22 2002-10-30 Netcell Corp RAID CONTROL SYSTEM AND METHOD WITH HOST ATA EMULATION INTERFACE
US6574709B1 (en) * 1999-09-30 2003-06-03 International Business Machine Corporation System, apparatus, and method providing cache data mirroring to a data storage system
US6553387B1 (en) * 1999-11-29 2003-04-22 Microsoft Corporation Logical volume configuration data management determines whether to expose the logical volume on-line, off-line request based on comparison of volume epoch numbers on each extents of the volume identifiers
US6516370B1 (en) * 1999-12-29 2003-02-04 Emc Corporation Data storage system
US6681339B2 (en) * 2001-01-16 2004-01-20 International Business Machines Corporation System and method for efficient failover/failback techniques for fault-tolerant data storage system
US7155569B2 (en) * 2001-02-28 2006-12-26 Lsi Logic Corporation Method for raid striped I/O request generation using a shared scatter gather list
US6957291B2 (en) * 2001-03-29 2005-10-18 Quantum Corporation Removable disk storage array emulating tape library having backup and archive capability
US6792505B2 (en) * 2001-04-16 2004-09-14 International Business Machines Corporation System apparatus and method for storage device controller-based message passing having effective data channel bandwidth and controller cache memory increase
US6978345B2 (en) * 2001-05-15 2005-12-20 Hewlett-Packard Development Company, L.P. Self-mirroring high performance disk drive
US7065661B2 (en) * 2002-12-16 2006-06-20 Emc Corporation Using request and grant signals to read revision information from an adapter board that interfaces a disk drive
US7107343B2 (en) * 2001-07-12 2006-09-12 Adaptec, Inc. Method and apparatus for improved RAID 1 write performance in low cost systems
US7171434B2 (en) * 2001-09-07 2007-01-30 Network Appliance, Inc. Detecting unavailability of primary central processing element, each backup central processing element associated with a group of virtual logic units and quiescing I/O operations of the primary central processing element in a storage virtualization system
US7178147B2 (en) * 2001-09-21 2007-02-13 International Business Machines Corporation Method, system, and program for allocating processor resources to a first and second types of tasks
US7028213B2 (en) * 2001-09-28 2006-04-11 Hewlett-Packard Development Company, L.P. Error indication in a raid memory system
US7107320B2 (en) * 2001-11-02 2006-09-12 Dot Hill Systems Corp. Data mirroring between controllers in an active-active controller pair
US7055056B2 (en) * 2001-11-21 2006-05-30 Hewlett-Packard Development Company, L.P. System and method for ensuring the availability of a storage system
US7552289B2 (en) * 2002-01-18 2009-06-23 Rasilient, Inc. Method and apparatus for arbitrating access of a serial ATA storage device by multiple hosts with separate host adapters
JP2005516735A (ja) * 2002-02-15 2005-06-09 コロプラスト アクティーゼルスカブ 創傷治療具
KR100463841B1 (ko) * 2002-02-25 2004-12-29 한국전자통신연구원 레이드 서브 시스템과 이를 이용한 디스크 에러 모드에서데이터 입출력 및 복구 방법
US7032131B2 (en) * 2002-03-26 2006-04-18 Hewlett-Packard Development Company, L.P. System and method for ensuring merge completion in a storage area network
US6831831B2 (en) * 2002-04-11 2004-12-14 Bruce A Bicknell Disc storage subsystem having improved reliability
US7073022B2 (en) * 2002-05-23 2006-07-04 International Business Machines Corporation Serial interface for a data storage array
US20050089027A1 (en) * 2002-06-18 2005-04-28 Colton John R. Intelligent optical data switching system
US6961813B2 (en) * 2002-06-21 2005-11-01 Hewlett-Packard Development Company, L.P. System and method for providing multi-initiator capability to an ATA drive
US6925531B2 (en) * 2002-07-11 2005-08-02 Storage Technology Corporation Multi-element storage array
US7146521B1 (en) * 2002-08-21 2006-12-05 3Pardata, Inc. Preventing damage of storage devices and data loss in a data storage system
US7210005B2 (en) * 2002-09-03 2007-04-24 Copan Systems, Inc. Method and apparatus for power-efficient high-capacity scalable storage system
US20040123027A1 (en) * 2002-10-03 2004-06-24 Workman Michael Lee Systems and methods of multiple access paths to single ported storage devices
JP4230189B2 (ja) * 2002-10-03 2009-02-25 株式会社日立製作所 ディスクアレイ装置、及びその電源供給方法
US8214531B2 (en) * 2002-10-24 2012-07-03 Emulex Design & Manufacturing Corporation Network configuration synchronization for hardware accelerated network protocol
US6886059B2 (en) * 2002-10-31 2005-04-26 Lsi Logic Corporation Methods and structure for SCSI/IDE translation for non-SCSI enclosures in a storage subsystem
US20040088482A1 (en) * 2002-11-04 2004-05-06 Tanzer Herbert J. Systems for storing data
US20040177218A1 (en) * 2002-11-06 2004-09-09 Meehan Thomas F. Multiple level raid architecture
US7246192B1 (en) * 2003-01-10 2007-07-17 Marvell International Ltd. Serial/parallel ATA controller and converter
US8095704B2 (en) * 2003-01-13 2012-01-10 Sierra Logic Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays
US7051134B2 (en) * 2003-01-21 2006-05-23 Ali Corporation Daisy chained ATA host controllers in a single PCI device
JP3974538B2 (ja) * 2003-02-20 2007-09-12 株式会社日立製作所 情報処理システム
WO2004077211A2 (en) * 2003-02-28 2004-09-10 Tilmon Systems Ltd. Method and apparatus for increasing file server performance by offloading data path processing
US7111194B1 (en) * 2003-03-21 2006-09-19 Network Appliance, Inc. Mirror split brain avoidance
US7516272B2 (en) * 2003-03-28 2009-04-07 Emc Corporation Midplane-independent implementations of data storage system enclosures
US7302536B2 (en) * 2003-06-17 2007-11-27 Hitachi, Ltd. Method and apparatus for managing replication volumes
JP4266725B2 (ja) * 2003-06-27 2009-05-20 株式会社日立製作所 記憶システム
US8301809B2 (en) * 2003-07-02 2012-10-30 Infortrend Technology, Inc. Storage virtualization computer system and external controller thereof
US7249205B2 (en) * 2003-11-20 2007-07-24 International Business Machines Corporation Apparatus and method to provide information from a first information storage and retrieval system to a second information storage and retrieval system
US7734868B2 (en) * 2003-12-02 2010-06-08 Nvidia Corporation Universal RAID class driver
US20050160319A1 (en) * 2004-01-14 2005-07-21 Marcak Scott B. System and method for detecting and reporting resource conflicts
US7313643B2 (en) * 2004-02-17 2007-12-25 Nec Electronics America, Inc. PCI-express to PCI/PCI X translator
US7913148B2 (en) * 2004-03-12 2011-03-22 Nvidia Corporation Disk controller methods and apparatus with improved striping, redundancy operations and interfaces
US7370188B2 (en) * 2004-05-17 2008-05-06 Intel Corporation Input/output scanning

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100416485C (zh) * 2005-09-23 2008-09-03 普安科技股份有限公司 具有资料路径分支功能的冗余储存虚拟化子系统及方法
CN1991734B (zh) * 2005-10-11 2011-12-07 普安科技股份有限公司 一种数据存储虚拟化子系统及其控制方法
US8281090B2 (en) 2005-10-11 2012-10-02 Infortrend Technology, Inc. Pool spares for data storage virtualization subsystem
US8825974B2 (en) 2005-10-11 2014-09-02 Infortrend Technology, Inc. Pool spares for data storage virtualization subsystem
US9110607B2 (en) 2005-10-11 2015-08-18 Infortrend Technology, Inc. Pool spares for data storage virtualization subsystem

Also Published As

Publication number Publication date
US20050005063A1 (en) 2005-01-06
TW200502757A (en) 2005-01-16
CN100334567C (zh) 2007-08-29
US8301809B2 (en) 2012-10-30
CN1558321A (zh) 2004-12-29
TWI260500B (en) 2006-08-21
TWI253569B (en) 2006-04-21
US20050015545A1 (en) 2005-01-20
US7281072B2 (en) 2007-10-09
US20050005062A1 (en) 2005-01-06
US9594510B2 (en) 2017-03-14
US10452270B2 (en) 2019-10-22
US20130013827A1 (en) 2013-01-10
TW200502788A (en) 2005-01-16
CN1553346A (zh) 2004-12-08
CN1320436C (zh) 2007-06-06
US20050005044A1 (en) 2005-01-06
TW200502765A (en) 2005-01-16
TWI262390B (en) 2006-09-21
CN1320437C (zh) 2007-06-06

Similar Documents

Publication Publication Date Title
CN1598755A (zh) 磁盘驱动器组子系统及用于其中的外部模拟控制器
US10191669B2 (en) Redundant SAS storage virtualization subsystem and system using the same and method therefor
US8301810B2 (en) SAS storage virtualization controller, subsystem and system using the same, and method therefor
US8412869B2 (en) Redundant storage virtualization computer system
US7607035B2 (en) Disk array apparatus and method for controlling the same
CN101452373B (zh) 输入输出处理器
JPH06119724A (ja) アレイ型記録装置
WO2007005553A1 (en) Serial ata port addressing
US20070186141A1 (en) Method and information apparatus for improving data reliability
JP2007122476A (ja) データストレージシステム、データストレージ制御装置及びそのディスクのライト抜け診断方法
WO2014094250A1 (zh) 数据处理方法和设备
CN102843284B (zh) iSCSI存储节点、架构以及读取、写入方法
WO2018059495A1 (zh) 一种固态硬盘ssd、存储装置及数据存储方法
US20080222500A1 (en) Data relay apparatus, data relay method and data relay integrated circuit
US20110154165A1 (en) Storage apparatus and data transfer method
CN1543135A (zh) San系统中基于负载自适应的异步远程镜像方法
KR101824671B1 (ko) 비휘발성 메모리 기반 저장 디바이스에서 정보를 라우팅하는 장치 및 방법
US8427941B2 (en) Redundant storage virtualization subsystem having data path branching functionality
JP2006040011A (ja) ディスクアレイシステム

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