CN1391672A - Raid controller system and method with ATA emulation host interface - Google Patents
Raid controller system and method with ATA emulation host interface Download PDFInfo
- Publication number
- CN1391672A CN1391672A CN00815961A CN00815961A CN1391672A CN 1391672 A CN1391672 A CN 1391672A CN 00815961 A CN00815961 A CN 00815961A CN 00815961 A CN00815961 A CN 00815961A CN 1391672 A CN1391672 A CN 1391672A
- Authority
- CN
- China
- Prior art keywords
- controller
- storage device
- ide
- ata
- channel
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0664—Virtualisation aspects at device level, e.g. emulation of a storage device or system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Bus Control (AREA)
Abstract
RAID存储设备控制器(70)提供主机接口(56),用于将控制器与主机系统总线连接。主机接口与所连接的例如IDE盘驱动器的存储设备隔离,使实际连接的驱动器不受数量或接口协议的限制。可以实现各种设备端口,并且可以使用各种RAID策略,例如RAID3和RAID5。在各种情况下,主机接口向主机提供标准统一的接口,即ATA接口(82、84及86),并且最好是双信道ATA接口。主机接口模拟ATA单信道接口或双信道接口,并模拟每信道一或两个所连接的IDE设备,而不管物理上与该控制器连接的设备的实际数量。例如,这样就可以在RAID5协议中配置五或七个IDE设备,而不用改变PCI主机中的标准BIOS。这样,RAID控制器对于标准双信道ATA控制器板是透明的。
The RAID storage device controller (70) provides a host interface (56) for connecting the controller to the host system bus. The host interface is isolated from the connected storage devices, such as IDE disk drives, so that the number of drives actually connected is not limited by the interface protocol. Various device ports can be implemented, and various RAID strategies, such as RAID3 and RAID5, can be used. In various cases, the host interface provides a standard, uniform interface to the host, namely the ATA interface (82, 84, and 86), and preferably a dual-channel ATA interface. The host interface emulates a single-channel or dual-channel ATA interface and emulates one or two connected IDE devices per channel, regardless of the actual number of devices physically connected to the controller. For example, this allows configuring five or seven IDE devices in a RAID5 protocol without changing the standard BIOS in the PCI host. Thus, the RAID controller is transparent to standard dual-channel ATA controller boards.
Description
相关申请related application
本申请是1999年9月22日提出的美国临时申请No.60/156001的继续并要求其权益。This application is a continuation of and claims the benefit of US Provisional Application No. 60/156001, filed September 22, 1999.
技术领域technical field
本发明涉及计算机数据存储设备控制器,具体地说,涉及一种RAID控制器,具有模拟ATA标准控制器及所连接的IDE设备的主机接口。The invention relates to a computer data storage device controller, in particular to a RAID controller with a host interface simulating an ATA standard controller and connected IDE devices.
发明背景Background of the invention
第一台IBM PC机以及兼容机只有软盘驱动器用于大容量存储。随后的XT和AT型号包含用于连接大容量数据存储的5.25英寸固定盘(非拆卸的)的适配器。这些最初的适配器提供了用于驱动器的大部分低级控制信号,其中包括用于读信号和预补偿写信号的数据分离电路。在适配器中包含了这些功能避免了复制一对驱动器,其中一次只存取一个驱动器。不幸的是,适配器中5MB的读/写信道不允许随着技术的改进而连接速度更快的驱动器。The first IBM PCs and compatibles had only floppy disk drives for mass storage. Subsequent XT and AT models included adapters for attaching 5.25-inch fixed (non-removable) drives for mass data storage. These initial adapters provided most of the low-level control signals for the drive, including data separation circuitry for read signals and precompensated write signals. Including these functions in the adapter avoids duplicating a pair of drives where only one drive is accessed at a time. Unfortunately, the 5MB read/write channel in the adapter doesn't allow faster drives to be connected as technology improves.
通过将控制器的“实时”方式引入驱动器,解决了这个问题。集成驱动电路,即IDE驱动器,结合了读或写驱动器所需的全部控制及数据信道,在本地缓冲器和媒体之间传输数据。制造商可以选择数据速率。对于数据存储设备与主机系统的连接,定义了一种新的接口,即ATA(具有分组接口扩展的AT嵌入式接口(ATA/ATAP14))(IBM AT嵌入式接口)。第一个IDE接口只不过包含了ISA总线和ATA电缆连接器之间的地址解码及缓冲。接口协议采用了程控输入和输出指令来存取IDE设备的寄存器。数据传输采用了主处理器的输入串及输出串指令,调节所连接的驱动器的传输速率。在较近版本的规范中,这些传输速率达到16MBPS。这是存储设备的缓冲器和ISA总线的存储器之间的传输速率。媒体和缓冲器之间的传输速率则要低得多。This problem was solved by bringing the "real-time" approach of the controller to the drive. The integrated drive circuit, or IDE drive, combines all the control and data channels required to read or write the drive, transferring data between the local buffer and the media. Manufacturers can choose the data rate. For the connection of data storage devices to host systems, a new interface is defined, ATA (AT Embedded Interface with Packet Interface Extension (ATA/ATAP14)) (IBM AT Embedded Interface). The first IDE interface simply included address decoding and buffering between the ISA bus and the ATA cable connector. The interface protocol uses program-controlled input and output commands to access the registers of the IDE device. Data transmission uses the input string and output string commands of the main processor to adjust the transmission rate of the connected drive. In more recent versions of the specification, these transfer rates reach 16MBPS. This is the transfer rate between the buffer of the storage device and the memory of the ISA bus. The transfer rate between the media and the buffer is much lower.
随着PCI总线的出现,Intel公司发布了PCI IDE文献(PCI IDE控制器技术规范,修订版1.0,3/4/94),它提供了以前基于ISA总线的主机接口到PCI总线的映射。该标准描述了一种双IDE信道控制器。一对设备,即主设备和从设备,可以连接到每个信道。对于数据传输,还可以将该设备作为PCI总线目标来进行存取。With the emergence of the PCI bus, Intel Corporation released the PCI IDE document (PCI IDE controller technical specification, revision 1.0, 3/4/94), which provides a mapping from the previous host interface based on the ISA bus to the PCI bus. This standard describes a dual IDE channel controller. A pair of devices, a master and a slave, can be connected to each channel. For data transfers, the device can also be accessed as a PCI bus target.
Intel公司还发布了总线主控器IDE文献(总线主控器IDE控制器的编程接口,修订版1.0,5/16/94)。该文献定义了在IDE信道中结合DMA设备的标准。总线主控接口允许IDE信道通过PCI总线向系统存储器或从系统存储器传输数据,作为总线主控器(PCI总线启动器)。传输到32位/33MHz PCI总线的最大传输速率是133MBPS。Intel Corporation has also released the Bus Master IDE Documentation (Programming Interface for Bus Master IDE Controllers, Revision 1.0, 5/16/94). This document defines a standard for incorporating DMA devices in IDE channels. The bus master interface allows the IDE channel to transfer data to or from the system memory through the PCI bus, acting as a bus master (PCI bus initiator). The maximum transfer rate to a 32-bit/33MHz PCI bus is 133MBPS.
ATA规范的修订版定义了一种新的传输模式,即Ultra DMA。通过紧缩电缆中数据传输的设置及保持时间要求,改进了以前的传输速率。在16MBPS时,由发送读选通脉冲、存取数据以及回送该数据的往返行程极大限制了读取传输速率。Ultra DMA协议最初保持了所有信号和电缆的电气特性,只是重新定义了其中三种信号的功能以提供新的协议。在这个协议中,从同一端把提供数据定时的选通脉冲信号作为数据进行传送,即:对于写入,由控制器进行,而对于读取,则由设备进行。在这种配置中,传输速率只是受到电缆单转移(single transition)的电缆歪斜失真的限制。第一UDMA设备使程控IO传输速率倍增到33MBPS。随后的修订版使最初的UDMA传输速率倍增到66MBPS,但要求使用具有交替信号和接地连接件的80带状电缆。目前的版本支持100MBPS的传输速率。目前有一种趋势,就是用高速串行链路来取代ATA并行接口,但可能首先会发布更多增加并行速度的并行接口。A revision of the ATA specification defines a new transfer mode, Ultra DMA. Improves on previous transfer rates by tightening setup and hold time requirements for data transfers in cables. At 16MBPS, the read transfer rate is greatly limited by the round trip of sending the read strobe, accessing the data, and sending that data back. The Ultra DMA protocol originally maintained the electrical characteristics of all signals and cables, but redefined the functions of three of the signals to provide a new protocol. In this protocol, the strobe signal that provides the timing of the data is transmitted as data from the same end, that is, by the controller for writes and by the device for reads. In this configuration, the transfer rate is limited only by the cable skew of the cable's single transition. The first UDMA device doubles the programmable IO transfer rate to 33MBPS. Subsequent revisions doubled the original UDMA transfer rate to 66MBPS, but required the use of 80 ribbon cables with alternating signal and ground connections. The current version supports a transfer rate of 100MBPS. There is a trend to replace the ATA parallel interface with a high-speed serial link, but more parallel interfaces that increase parallel speed may be released first.
问题question
常见的个人计算机包括以芯片组为中心而设计的主板,包括处理器、DRAM接口、各种输入/输出适配器及BIOS ROM。IO适配器通常包括IDE接口。当前版本的IDE控制器的特色在于有一对IDE端口,每个端口均能够与一对IDE存储设备连接。这些设备通常包括一个或多个IDE硬盘和CD ROM、DVD ROM或CD WORM驱动器。基本输入输出系统,即BIOS,是一种程序,用来引导PC并为主板上的适配器提供低级IO例程。所有这些PC基本上都可以使用主板BIOS从IDE硬盘进行引导及运行。A common personal computer includes a motherboard designed around a chipset, including a processor, DRAM interface, various input/output adapters, and BIOS ROM. IO adapters usually include IDE interfaces. The current version of the IDE controller features a pair of IDE ports, each capable of connecting to a pair of IDE storage devices. These devices usually include one or more IDE hard disks and CD ROM, DVD ROM or CD WORM drives. The Basic Input Output System, or BIOS, is a program that boots a PC and provides low-level IO routines for adapters on the motherboard. Basically all of these PCs can use the motherboard BIOS to boot and run from an IDE hard drive.
在小办公室/家庭办公室(SOHO)市场的服务器或工作站应用中配置了越来越多的个人计算机。历史上,具有小型计算机系统接口(SCSI)的硬盘为更加要求严格的应用提供了一些性能增益。但是在今天,随着85%以上的驱动器做成IDE驱动器,SCSI驱动器也趋向于采用同样的媒体和读/写头来建造,具有极少或没有性能增益并极大地增加了成本。另一种流行的选择方案是,采用廉价磁盘冗余阵列(RAID),它最初是由Patterson建议(D.Patterson等人的“廉价磁盘冗余阵列(RAID)的情况”一文(Univ.Cal.Report No.UCB/CSD87/391,Dec.1987)。RAID系统致力于可靠性和性能这两个方面。首先,通过两个或多个驱动器以冗余方式储存数据,以便在单个驱动器故障时不会丢失数据,从而实现可靠性。其次,相对于单个驱动器,由于该阵列的集合性能,实现了性能增加。以冗余方式储存的数据的不同部分可以同时从两个驱动器中进行读取。另外,数据能以数据条的形式写入,其中,数据条贯穿于所有可用的驱动器,在读回数据时,可以实现集合传输速率。在本发明的美国专利No.6018778中对RAID阵列控制器进行了进一步说明。An increasing number of personal computers are deployed in server or workstation applications in the small office/home office (SOHO) market. Historically, hard drives with Small Computer System Interface (SCSI) provided some performance gains for more demanding applications. But today, with more than 85% of drives made as IDE drives, SCSI drives also tend to be built with the same media and read/write heads, with little or no performance gain and a huge increase in cost. Another popular option is to use Redundant Arrays of Inexpensive Disks (RAID), which was originally suggested by Patterson (D. Patterson et al. "The Case for Redundant Arrays of Inexpensive Disks (RAID)" (Univ. Cal. Report No.UCB/CSD87/391, Dec.1987). RAID systems are committed to these two aspects of reliability and performance. First, data is stored in a redundant manner through two or more drives so that no single drive fails Data is lost, thereby achieving reliability. Second, relative to a single drive, due to the collective performance of the array, performance increases are achieved. Different parts of data stored in a redundant manner can be read from two drives at the same time. In addition , data can be written in the form of data strips, wherein, data strips run through all available drives, and when data is read back, an aggregate transfer rate can be achieved. In US Patent No.6018778 of the present invention, the RAID array controller has been implemented Further explanation.
不幸的是,现有的几种RAID解决方案存在一些缺陷。SCSI盘驱动器的局部智能和及使用代表一类RAID解决方案的特征。这类解决方案展示了高性能,虽然驱动器和控制器的成本极高。另一类流行的RAID解决方案的特征在于使用IDE驱动器但缺乏局部智能或缓冲。这主要是软件解决方案。控制多个驱动器以便保持冗余或者使数据成条所需的软件均必须在主机系统中运行,极大地增加了磁盘驱动器在处理器及系统总线中开销。这样,RAID效益是以由于所述增加的系统开销而引起系统性能下降的代价来实现的。这两种解决方案都有一个附加的问题。这些RAID控制器没有直接被主板的BIOS所支持。要求额外的软件驱动程序。这些驱动程序可能随操作系统的功能而有所变化,所述操作系统例如有Windows、WindowsNT、UNIX、LINUX等,从而给控制器生产商、OEM、市场小组以及系统集成商带来额外的负担。Unfortunately, several existing RAID solutions have some drawbacks. The local intelligence and use of SCSI disk drives characterizes a class of RAID solutions. Such solutions exhibit high performance despite the high cost of drivers and controllers. Another popular class of RAID solutions is characterized by the use of IDE drives but lacks local intelligence or buffering. This is mostly a software solution. All the software required to control multiple drives for redundancy or to stripe data must run on the host system, greatly increasing disk drive overhead on the processor and system bus. Thus, RAID benefits are realized at the expense of system performance degradation due to the increased system overhead. Both solutions have an additional problem. These RAID controllers are not directly supported by the motherboard's BIOS. Additional software drivers are required. These drivers may vary with the functions of the operating system, such as Windows, Windows NT, UNIX, LINUX, etc., thereby bringing additional burdens to controller manufacturers, OEMs, marketing groups, and system integrators.
因此,仍然需要一种RAID存储设备控制器,它不需要专门的软件在主处理器中执行,并且不需要额外的软件驱动程序或对BIOS进行改变。不需要对BIOS进行改变的RAID控制器通常具有以下优点:与实际上所有实现ATA顺应接口的标准的现成计算机具有“即插即用”的兼容性。RAID控制器对主机是透明的,且能以设备接口的任意组合来配置多个存储设备(不限于四个),并能够实现RAID镜像、成条等,而不给主机增加开销。这种RAID控制器以低成本和极为简易的安装来把RAID功能带给所有PC用户。Therefore, there remains a need for a RAID storage device controller that does not require specialized software to execute in the host processor, and that does not require additional software drivers or changes to the BIOS. RAID controllers that do not require changes to the BIOS generally have the advantage of "plug and play" compatibility with virtually all off-the-shelf computers that implement the ATA-compliant interface standard. The RAID controller is transparent to the host, and can configure multiple storage devices (not limited to four) with any combination of device interfaces, and can implement RAID mirroring, stripes, etc., without adding overhead to the host. This RAID controller brings RAID functionality to all PC users with low cost and extremely easy installation.
发明概述Summary of the invention
本发明实现一种RAID控制器,它与所有操作系统兼容,所述操作系统可以使用标准IDE控制器和IDE驱动器在给定的PC主板上进行引导和运行。通过模拟标准控制器和所连接的驱动器来实现所述兼容性。例如,对于可靠性,给定系统可在RAID1或“镜像”配置中要求一对驱动器。在连接到本发明所述的控制器时,BIOS将看到单个极为可靠的驱动器。该系统还可要求三个驱动器的阵列,配置为RAID3或RAID5配置。这将提供两倍于三个驱动器的其中任何一个的传输速率,同时具有高可靠性。同样地,在本发明中,对于BIOS,这种三个驱动器的阵列看起来似乎为单个驱动器,告知有两倍于这三个驱动器的其中任何一个的容量,并展示有两倍的传输速率,具有高可靠性。在任何情况下,RAID对于BIOS中现有的驱动程序是透明的。The present invention implements a RAID controller that is compatible with all operating systems that can be booted and run on a given PC motherboard using standard IDE controllers and IDE drivers. This compatibility is achieved by simulating standard controllers and connected drives. For example, for reliability, a given system may require a pair of drives in a RAID1 or "mirrored" configuration. When connected to the controller of the present invention, the BIOS will see a single, extremely reliable drive. The system can also require an array of three drives, configured in a RAID3 or RAID5 configuration. This will provide twice the transfer rate of any of the three drives with high reliability. Likewise, in the present invention, to the BIOS, this three-drive array appears to be a single drive, advertises twice the capacity of any of the three drives, and exhibits twice the transfer rate, With high reliability. In any case, RAID is transparent to the existing drivers in the BIOS.
本发明的控制器模拟标准两信道IDE控制器。象标准控制器一样,它在逻辑上被连接到PCI总线。它在物理上可以存在于主板上,可能集成在主板芯片组中,或者存在于PCI槽的插入式卡中。它可以模拟可连接到标准控制器的所有四个设备。这些逻辑设备的每一个均提供对连接到所述控制器的物理设备的阵列的可能接口。虽然本实施例提供ATA端口用于物理驱动器的连接,但其它类型的接口或接口组合均可被使用。The controller of the present invention emulates a standard two-channel IDE controller. Like a standard controller, it is logically connected to the PCI bus. It can physically exist on the motherboard, possibly integrated in the motherboard chipset, or in a plug-in card in a PCI slot. It can emulate all four devices that can be connected to a standard controller. Each of these logical devices provides a possible interface to the array of physical devices connected to the controller. Although this embodiment provides an ATA port for the connection of a physical drive, other types or combinations of interfaces may be used.
通过以下结合附图对最佳实施例的详细说明,本发明的其它目的和优点将会明显。Other objects and advantages of the present invention will become apparent through the following detailed description of the preferred embodiment with reference to the accompanying drawings.
附图概述Figure overview
图1是现有技术ATA双信道控制器应用的简化方框图,说明物理及软件/寄存器视图。Figure 1 is a simplified block diagram of a prior art ATA dual channel controller application illustrating the physical and software/register views.
图2是一种根据本发明的具有ATA端口仿真的RAID控制器的简化方框图。Figure 2 is a simplified block diagram of a RAID controller with ATA port emulation in accordance with the present invention.
图3是一种具有ATA端口仿真的RAID控制器的目前最佳商业实施例的高层简化方框图。Figure 3 is a high level simplified block diagram of a currently preferred commercial embodiment of a RAID controller with ATA port emulation.
图4更为详细地说明图3的控制器的ATA寄存器文件的一种实现。FIG. 4 illustrates an implementation of the ATA register file of the controller of FIG. 3 in more detail.
最佳实施例详细说明DETAILED DESCRIPTION OF THE BEST EMBODIMENTS
图1的上半部分说明了个人计算机中ATA控制器10的典型现有技术应用,它提供系统总线12和存储设备14之间的接口。系统总线12是PCI总线。在逻辑上连接到PCI总线时,ATA控制器通常集成在主板芯片组中。对于给定的应用,其它或附加的控制器可以插入到主板上PCI总线插槽(未示出)的其中之一。PCI总线提供配置机制,通过这种机制,可以将唯一地址指定给各控制器。典型的控制器10提供两个信道,它们端接于一对分别标识为基本、次要IDE连接器的连接器16和18。每个次要信道将支持一对共享连接器和电缆的存储设备。例如,在图1中,次要信道电缆19连接到主控存储设备20以及从存储设备22。另一对驱动器同样地连接到基本信道电缆24。这样,这两个信道控制器10支持总共四个设备,如图1所示。The upper part of FIG. 1 illustrates a typical prior art application of an
图1的下半部分说明从PCI总线的角度看到的IDE控制器的编程接口及驱动器。每个块的物理地址通过控制器的PCI总线配置空间来指配,正如业内所知的那样,以及在前面引用的Intel PCI IDE控制器规范文献中被描述。前面引述的另一个Intel文献“总线主IE控制器的编程接口”说明了总线主IDE控制器的编程接口。在这个机制标准化之前,存储设备数据通常是通过程控I/O进行传输的,其中,数据传输所需的载入和储存均由系统处理器来执行。虽然仍然支持程控I/O机制,然而总线主接口允许ATA控制器通过直接存取系统存储器,即通过DMA,来传输数据。总线主IDE控制器文献定义了寄存器的十六字节块,它支持一对总线主控制器,一个用于基本ATA信道,一个则用于次要ATA信道。该寄存器块在物理上是控制器的组成部分。如图所示,它分割为两个部分30和32,一个部分与每个信道关联。The lower part of Fig. 1 illustrates the programming interface and driver of the IDE controller seen from the perspective of the PCI bus. The physical address of each block is assigned through the controller's PCI bus configuration space, as is known in the art and described in the previously referenced Intel PCI IDE Controller Specification document. Another Intel document cited earlier, "Programming Interface for Bus-Master IE Controllers," describes the programming interface for bus-master IDE controllers. Before this mechanism was standardized, storage device data was typically transferred via programmed I/O, where the loads and stores required for data transfers were performed by the system processor. Although the programmable I/O mechanism is still supported, the bus master interface allows the ATA controller to transfer data through direct access to system memory, ie through DMA. The bus master IDE controller documentation defines a sixteen-byte block of registers that supports a pair of bus masters, one for the primary ATA channel and one for the secondary ATA channel. This register block is physically an integral part of the controller. As shown, it is split into two
ATA规范定义了储存储设备的编程接口。该接口包括两个寄存器块:命令块和控制块。命令块是字节宽度寄存器的八字节块。控制块是字节宽度寄存器的四字节块。这些寄存器的所有实现细节均公布在ATA规范中。The ATA specification defines the programming interface for storage devices. The interface consists of two register blocks: a command block and a control block. A command block is an eight-byte block of byte-wide registers. A control block is a four-byte block of byte-wide registers. All implementation details of these registers are published in the ATA specification.
图1的右侧示出四组命令和控制寄存器块,一个组对应于四个所连接的存储设备的其中一个。例如,一组寄存器块36包括命令块38和相应控制块40。这些寄存器在物理上是图1上半部分所示的相应存储设备的组成部分。这样,寄存器组36(基本信道)便位于主存储设备25中。如果没有连接一个给定的存储设备,则其命令和控制寄存器块将不会出现在编程接口中。The right side of Figure 1 shows four sets of command and control register blocks, one set corresponding to one of the four attached memory devices. For example, a set of register blocks 36 includes a command block 38 and a
ATA规范还定义了存储设备所支持的协议。一般来说,存取命令及所有相关参数被装入命令块的寄存器中。存储设备将执行该命令。对于设备写入,它将首先请求写入数据。对于程控I/O操作,主处理器将从系统存储器中读取数据,并使用一部分命令块作为十六比特窗口,将所述数据写入该设备中的缓冲器(未示出)。对于总线主DMA操作,ATA控制器将根据信道的总线主控制器寄存器块的配置,直接从系统存储器中存取数据。存储设备则存取存储媒体,在媒体及其本地缓冲器之间传输数据。对于媒体读取,利用上述程控I/O或总线主DMA,把本地缓冲器中的数据传输给系统存储器。最后,存储设备将通过ATA控制器、或通过状态寄存器轮询、或采用中断,向主机系统指示操作完成。The ATA specification also defines the protocols supported by storage devices. In general, access commands and all associated parameters are loaded into registers of the command block. The storage device will execute the command. For device writes, it will first request data to be written. For programmed I/O operations, the host processor will read data from system memory and write the data to a buffer (not shown) in the device using a portion of the command block as a sixteen bit window. For bus master DMA operations, the ATA controller will directly access data from system memory according to the configuration of the channel's bus master controller register block. Storage devices access storage media and transfer data between the media and its local buffers. For media reads, the data in the local buffer is transferred to system memory using the above-mentioned programmed I/O or bus master DMA. Finally, the storage device will indicate to the host system that the operation is complete through the ATA controller, either by polling the status register, or using an interrupt.
上电时,个人计算机执行物理上储存于主板上非易失性存储器中的代码。基本输入输出系统,即BIOS代码,从连接到ATA控制器的ATA存储设备中装载个人计算机操作系统,并为这样的存储设备提供低级I/O系统驱动程序。When powered on, a PC executes code that is physically stored in non-volatile memory on the motherboard. The Basic Input Output System, or BIOS code, loads the PC operating system from ATA storage devices connected to the ATA controller and provides low-level I/O system drivers for such storage devices.
本发明模拟图1所示及如上所述的ATA控制器,并且与其在编程层完全兼容。下面参照图2,图2的上半部分是根据本发明的控制器的方框图,它可以配置为例如RAID控制器。控制器块50的左侧代替标准双信道ATA控制器而连接到PCI总线,并模拟一至四个所连接的ATA存储设备。下面将要详细说明的ATA存储设备的仿真,将控制器的主机接口同物理设备接口分离,在要提供的设备接口类型和接口数方面允许相当大的自由度。例如,本发明的应用可以实现X个SCSI端口和/或Y个ATA端口,其中,X和Y绝不限于主机系统中出现的四个逻辑驱动器。图2是实现编号为0至N-1的N+1个ATA端口的示例。The present invention emulates the ATA controller shown in Figure 1 and described above, and is fully compatible with it at the programming level. Referring now to FIG. 2, the upper part of FIG. 2 is a block diagram of a controller according to the present invention, which can be configured as a RAID controller, for example. The left side of the
图2的下半部分说明本发明的编程接口。主机接口56实现从标准ATA控制器的PCI总线的角度可见的所有寄存器块:双信道总线主控制器块58、60以及四组编号分别为62、64、66和68的命令和控制寄存器块。主机接口块56模拟ATA控制器和ATA存储设备的寄存器,模拟至支持ATA规范协议所需的层。The lower part of Figure 2 illustrates the programming interface of the present invention. The host interface 56 implements all the register blocks seen from the point of view of the standard ATA controller's PCI bus: the dual channel bus master controller blocks 58, 60 and four sets of command and control register blocks numbered 62, 64, 66 and 68 respectively. The host interface block 56 emulates the registers of the ATA controller and ATA storage device, down to the layers required to support the ATA specification protocol.
图2下部分的块70说明控制器块50的主要组件。除了主机接口块56之外,控制器70还包括RAM缓冲高速缓冲存储器72、DMA信道74及处理器80,下面将进一步说明。控制器块70还包括多个ATA端口接口,例如接口82、84以及86。每个ATA端口接口都提供标准接口连接给诸如盘驱动器的IDE类型存储设备。如前面所述,每个存储设备在主板上包括命令和控制寄存器块。例如,将它们作为命令寄存器块90和控制器块92来进行说明,这两者均与单个设备关联,即与主驱动器关联,它们与ATA端口接口82、标准连接器电缆96相连接。控制器块70可以被配置为包括任何所需数量的ATA端口,同时仍然提供标准双信道控制器接口56给主机PCI总线12。Block 70 in the lower portion of FIG. 2 illustrates the main components of
图3示出本发明目前最佳实施例的详细方框图。该系统是作为专用集成电路(ASIC)以0.18微米的CMOS工艺来实现的。所述设备在逻辑上划分为四个模块,每个模块具有到设备外部的有关端口。Figure 3 shows a detailed block diagram of the presently preferred embodiment of the invention. The system is implemented as an Application Specific Integrated Circuit (ASIC) in a 0.18 micron CMOS process. The device is logically divided into four modules, each module having an associated port to the outside of the device.
主机接口100是以PCI核心104为基础用铟硅制造的。CS6464AF是软核心(为特定应用合成的Verilog源),它支持32位和64位两种PCI总线,PCI总线时钟速率为33MHZ或66MHZ。该核心支持主操作和目标操作。目标特征(target feature)106提供对前面所述的ATA兼容寄存器文件的存取。主能力(master capability)108用来模拟ATA控制器的总线主DMA特征。PCI核心包括模拟双端口ATA控制器的配置空间110的配置空间。The
DRAM接口块120支持外部连接的SDRAM 122。64位宽、100MHZ单一数据速率端口124支持800MBPS的最大传输速率。在本地,通过经主机接口100向或从PCI总线进行传输,通过经驱动器接口130向或从盘驱动器进行传输,可以共享DRAM接口,并由处理器块150中的本地处理器进行存取。The
驱动器接口块130提供五个ATA端口,例如134,每个端口均能够支持主和从驱动器。每个端口支持达到16MBPS传输速率的程控输入输出(PIO)以及达到100MBPS传输速率的Ultra DMA。
处理器块是围绕EZ4102 TinyRISC核心160由LSI逻辑电路制造的。该处理器是MIPS处理器的变体。上电时,处理器从通过扩展总线端口166进行存取的外部快速存储器162中装载代码。该代码被传输给处理器块中的SRAM块170。处理器160配置其它每个模块,并且通过这些模块,它可以存取PCI总线、SDRAM或ATA驱动器。一般来说,通过不要求处理器来处理数据,系统传输速率得到增强。处理器通过配置这些块中的DMA引擎136、146来装载或者卸载其间的FIFO 148,来协调驱动器和DSRAM之间的数据传送。同样地,它通过配置DRAM接口和主机接口中的DMA引擎172、102来装载或卸载这些块之间的FIFO 174,来协调SDRAM和PCI总线目标之间的传输。The processor block is built around the
图4说明ATA寄存器文件实现细节。寄存器全部为双端口,并可以由主机系统或由本地处理器160从PCI总线进行存取。从PCI总线的角度看,每个ATA信道具有与其相关的两寄存器块。命令块208是字节宽寄存器的八字节范围。控制块210是四字节范围,其中仅使用单个存储单元。如前所述,单个ATA端口可以用来存取一对连接到公共电缆的驱动器。每个设备均具有其自己的命令和控制寄存器块。设备在物理上配置了跳线,以便将其中一个指定为主,而将另一个指定为从。通过将一个字节数据以地址偏移量六写入命令块的设备标题寄存器中,来选择一个特定的设备用于存取。如果申明为位四,则对于随后的操作,选择从设备而取消选择主设备。如果对同一个寄存器进行写入,其中位四被清除,则选择主设备,而取消选择从设备。为了在本发明中模拟这种行为,实现主和从寄存器组。此外,提供单比特从寄存器230,它记录最近写入设备标题寄存器的位四。从寄存器控制从PCI总线的读复用及写地址解码,从而将根据最近的设备选择来存取适当的寄存器块对。Figure 4 illustrates the ATA register file implementation details. The registers are all dual ported and can be accessed by the host system or by the
上电时或复位后,ATA设备最初为忙。通过读取命令块中地址偏移七的状态寄存器,或读取控制块中的备用状态寄存器块,可以检测到忙状态。在设备忙时,没有其它的寄存器可以被存取。为了在本发明中模拟这种行为,提供了单个比特忙寄存器232。通过从PCI总线进行复位,通过对控制块的设备控制寄存器中的软复位比特的写入,或者在命令寄存器块的地址偏移七写入命令寄存器时,来设置该寄存器。本地处理器可对忙寄存器进行清除。On power-up or after reset, the ATA device is initially busy. The busy condition can be detected by reading the status register at address offset seven in the command block, or by reading the alternate status register block in the control block. While the device is busy, no other registers can be accessed. To simulate this behavior in the present invention, a single bit busy register 232 is provided. This register is set by a reset from the PCI bus, by a write to the soft reset bit in the device control register of the control block, or when the address offset seven of the command register block is written to the command register. The local processor can clear the busy register.
如果在设备中已允许中断,则每个ATA设备能够向主机系统申明中断请求。为了模拟这种行为,为主和从设备提供单个比特中断请求234和中断允许236寄存器。通过各设备的设备控制寄存器来控制中断允许。每个设备可以向主机系统申明中断请求,以便传输数据或返回完成状态。在本发明中,中断请求可以由本地处理器进行设置或清除。通过读取设备的状态寄存器(但不是备用状态寄存器),也对中断请求进行清除,如ATA规范的协议所述。主和从设备的中断请求和中断允许状态可以独立地保持,从而在主机改变设备选择时可以获得适当的行为。Each ATA device is capable of asserting an interrupt request to the host system if interrupts have been enabled in the device. To emulate this behavior, single bit interrupt request 234 and interrupt enable 236 registers are provided for master and slave devices. Interrupt enable is controlled by the device control register of each device. Each device can assert an interrupt request to the host system in order to transfer data or return a completion status. In the present invention, the interrupt request can be set or cleared by the local processor. Interrupt requests are also cleared by reading the device's status register (but not the alternate status register), as described in the protocol of the ATA specification. The interrupt request and interrupt enable states of master and slave devices can be maintained independently, allowing proper behavior when the master changes device selection.
对于次要信道,主和从设备的命令和控制寄存器文件以及从、忙、中断“边缘效应”均被复制。所有四个设备的命令及控制寄存器文件块全部线性地被映射到本地处理器的地址空间中。For secondary channels, the command and control register files of the master and slave devices and the slave, busy, interrupt "edge effects" are duplicated. The command and control register file blocks for all four devices are all linearly mapped into the address space of the local processor.
共享的双信道总线主控制器块250可以从PCI总线或由本地处理器来进行存取。The shared dual channel bus master controller block 250 can be accessed from the PCI bus or by a local processor.
根据ATA协议,选择设备,给定命令所需的所有参数均被装载到命令寄存器文件,随后该命令本身也以偏移量七载入所述寄存器。如上所述,这将设置信道为忙。忙的上升边引起到本地处理器的中断,本地处理器将通过解释该命令及其参数来进行响应。大多数命令将被重新映射为所连物理设备阵列的存取。这些存取可以用来实现任何公共RAID协议,包括但不限制于RAID0、1、3和5。本地处理器具有读取多于所请求的数据的选项。附加数据预先储存在SDRAM中以备随后的读取。本地处理器可以按命令要求使用程控IO或DMA来安排在SDRAM和主机系统之间的数据传输。According to the ATA protocol, selecting the device, all parameters required for a given command are loaded into the command register file, and then the command itself is also loaded into said registers at offset seven. As above, this will set the channel to busy. A busy rising edge causes an interrupt to the local processor, which will respond by interpreting the command and its parameters. Most commands will be remapped as accesses to arrays of attached physical devices. These accesses can be used to implement any common RAID protocol, including but not limited to RAID0, 1, 3 and 5. The local handler has the option to read more data than requested. Additional data is pre-stored in SDRAM for subsequent reading. The local processor can use program-controlled IO or DMA to arrange data transfer between SDRAM and host system as required by the command.
总之,本发明包括RAID存储设备控制器,提供主机接口,用于将控制器与主机系统总线连接。主机接口与例如如IDE盘驱动器的所连存储设备隔离,使实际连接的驱动器不受数量或接口协议的限制。可以实现各种设备端口,并且可以使用各种RAID策略,例如RAID3和RAID5。在各种情况下,主机接口提供对主机的标准统一接口,即ATA接口,最好是双信道ATA接口。主机接口模拟ATA单信道接口或双信道接口,并模拟每个信道所连的一或两个IDE设备,而不管物理上与该控制器连接设备的实际数量。例如,这样就可以在RAID5中部署五或七个IDE驱动器,而不用改变PCI主机中的标准BIOS。这样,RAID控制器对于标准的双信道ATA控制器板是透明的。In summary, the present invention includes a RAID storage device controller that provides a host interface for connecting the controller to a host system bus. The host interface is isolated from attached storage devices such as IDE disk drives, so that the number of drives actually connected is not limited by the interface protocol. Various device ports can be implemented, and various RAID strategies can be used, such as RAID3 and RAID5. In each case, the host interface provides a standard unified interface to the host, namely an ATA interface, preferably a dual-channel ATA interface. The host interface emulates an ATA single or dual channel interface and emulates one or two IDE devices per channel, regardless of the actual number of devices physically connected to the controller. This makes it possible, for example, to deploy five or seven IDE drives in RAID5 without changing the standard BIOS in the PCI host. This way, the RAID controller is transparent to standard dual-channel ATA controller boards.
本领域的技术人员将清楚,在不脱离本发明的基本原则的情况下,可以对本发明的上述实施例细节进行许多改变。因此,本发明的范围应当由后附权利要求来定义。It will be apparent to those skilled in the art that many changes may be made to the details of the above-described embodiments of the invention without departing from the basic principles of the invention. Accordingly, the scope of the invention should be defined by the appended claims.
Claims (20)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US15600199P | 1999-09-22 | 1999-09-22 | |
| US60/156,001 | 1999-09-22 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN1391672A true CN1391672A (en) | 2003-01-15 |
| CN1222876C CN1222876C (en) | 2005-10-12 |
Family
ID=22557665
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CNB008159610A Expired - Lifetime CN1222876C (en) | 1999-09-22 | 2000-09-21 | Raid controller system and method with ATA emulation host interface |
Country Status (9)
| Country | Link |
|---|---|
| EP (1) | EP1236106A4 (en) |
| JP (1) | JP2003510683A (en) |
| KR (1) | KR100441189B1 (en) |
| CN (1) | CN1222876C (en) |
| AU (1) | AU7714700A (en) |
| CA (1) | CA2385492C (en) |
| HK (1) | HK1050935A1 (en) |
| TW (1) | TW476030B (en) |
| WO (1) | WO2001022221A1 (en) |
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1296845C (en) * | 2003-01-24 | 2007-01-24 | 华为技术有限公司 | Magnetic disk storage system |
| CN1328664C (en) * | 2004-07-12 | 2007-07-25 | 普安科技股份有限公司 | Self-monitoring controller, redundant storage system including the controller and monitoring method |
| CN100334567C (en) * | 2003-07-02 | 2007-08-29 | 普安科技股份有限公司 | Redundant external storage virtualization computer system |
| CN100412779C (en) * | 2004-11-17 | 2008-08-20 | 国际商业机器公司 | Method and system for providing a host accessing a device through a storage controller port |
| CN100447731C (en) * | 2005-01-13 | 2008-12-31 | 普安科技股份有限公司 | Redundant Storage Virtualization Computer System |
| US7676614B2 (en) | 2005-01-13 | 2010-03-09 | Infortrend Technology, Inc. | Redundant storage virtualization computer system |
| 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 |
| CN101676857B (en) * | 2005-09-22 | 2013-04-24 | 株式会社日立制作所 | Storage system |
| CN103136153A (en) * | 2011-11-21 | 2013-06-05 | 宏碁股份有限公司 | Interface device, serial connection system and serial connection method thereof |
| CN103838687A (en) * | 2012-11-26 | 2014-06-04 | 三星电子株式会社 | Storage device, computing system including same and data transferring method thereof |
| US9117037B2 (en) | 2011-11-21 | 2015-08-25 | Acer Incorporated | Interface apparatus, cascading system thereof and cascading method thereof |
| CN107239366A (en) * | 2016-03-28 | 2017-10-10 | 爱思开海力士有限公司 | The power-fail interrupt of non-volatile dual-in-line memories system |
Families Citing this family (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3812928B2 (en) * | 1999-07-14 | 2006-08-23 | 株式会社日立製作所 | External storage device and information processing system |
| JP4742443B2 (en) * | 2001-04-25 | 2011-08-10 | ソニー株式会社 | Recording / reproducing apparatus, recording / reproducing control method, and recording / reproducing control apparatus |
| US6763398B2 (en) | 2001-08-29 | 2004-07-13 | International Business Machines Corporation | Modular RAID controller |
| US6904498B2 (en) | 2002-10-08 | 2005-06-07 | Netcell Corp. | Raid controller disk write mask |
| DE60309706T2 (en) * | 2003-09-19 | 2007-03-29 | Harman Becker Automotive Systems Gmbh | Data transmission interface |
| CN100383757C (en) * | 2003-09-23 | 2008-04-23 | 华为技术有限公司 | Disk data backup system and method thereof |
| JP4578794B2 (en) * | 2003-09-30 | 2010-11-10 | ソニー株式会社 | MULTISYSTEM, DATA STORAGE ACCESS DEVICE, AND DATA STORAGE ACCESS METHOD |
| DE10351019A1 (en) * | 2003-10-31 | 2005-06-30 | P21 - Power For The 21St Century Gmbh | Method for controlling and / or regulating at least one unit in a technical system and technical system |
| US7603514B2 (en) * | 2005-03-31 | 2009-10-13 | Intel Corporation | Method and apparatus for concurrent and independent data transfer on host controllers |
| JP2007087053A (en) * | 2005-09-21 | 2007-04-05 | Oki Electric Ind Co Ltd | Disk array control device and control method |
| KR100736928B1 (en) * | 2005-12-05 | 2007-07-10 | 삼성전자주식회사 | Data communication method between multi-device and host device capable of data communication between host devices |
| KR100843199B1 (en) | 2006-08-10 | 2008-07-02 | 삼성전자주식회사 | High speed I.D. Interface device and its method |
| JP2008276691A (en) * | 2007-05-07 | 2008-11-13 | Kwok-Yan Leung | Interface card emulating hard disk interface |
| KR20100069067A (en) * | 2008-12-16 | 2010-06-24 | (주)인디링스 | Redundant array of independent/inexpensive disks controller of independently managing file system |
| JP5360883B2 (en) * | 2009-02-20 | 2013-12-04 | エヌイーシーコンピュータテクノ株式会社 | Disk device mounting method, method, and disk device mounting adapter |
| US8504767B2 (en) * | 2010-04-20 | 2013-08-06 | Taejin Info Tech Co., Ltd. | Raid controlled semiconductor storage device |
| KR101209914B1 (en) * | 2011-06-08 | 2012-12-11 | 주식회사 태진인포텍 | Semiconductor storage device memory disk unit with programmable host interface |
| KR101212809B1 (en) * | 2011-06-08 | 2012-12-18 | 주식회사 태진인포텍 | Semiconductor storage device memory disk unit with multiple host interfaces and driving method |
| TW201634190A (en) | 2015-03-18 | 2016-10-01 | Hong Ann Tool Ind Co Ltd | Wrench having drawing apparatus |
| DE102015115950A1 (en) | 2015-09-22 | 2017-03-23 | Powagrip Industrial Co., Ltd. | Fastener for a wrench |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5483641A (en) * | 1991-12-17 | 1996-01-09 | Dell Usa, L.P. | System for scheduling readahead operations if new request is within a proximity of N last read requests wherein N is dependent on independent activities |
| EP0582370B1 (en) * | 1992-06-05 | 1998-10-07 | Compaq Computer Corporation | Disk drive controller with a posted write cache memory |
| US5794063A (en) * | 1996-01-26 | 1998-08-11 | Advanced Micro Devices, Inc. | Instruction decoder including emulation using indirect specifiers |
| US6018778A (en) * | 1996-05-03 | 2000-01-25 | Netcell Corporation | Disk array controller for reading/writing striped data using a single address counter for synchronously transferring data between data ports and buffer memory |
| US5890014A (en) * | 1996-08-05 | 1999-03-30 | Micronet Technology, Inc. | System for transparently identifying and matching an input/output profile to optimal input/output device parameters |
-
2000
- 2000-09-21 JP JP2001525522A patent/JP2003510683A/en active Pending
- 2000-09-21 AU AU77147/00A patent/AU7714700A/en not_active Abandoned
- 2000-09-21 HK HK03101123.5A patent/HK1050935A1/en unknown
- 2000-09-21 WO PCT/US2000/026343 patent/WO2001022221A1/en not_active Ceased
- 2000-09-21 CN CNB008159610A patent/CN1222876C/en not_active Expired - Lifetime
- 2000-09-21 KR KR10-2002-7003752A patent/KR100441189B1/en not_active Expired - Lifetime
- 2000-09-21 CA CA002385492A patent/CA2385492C/en not_active Expired - Fee Related
- 2000-09-21 EP EP20000966864 patent/EP1236106A4/en not_active Ceased
- 2000-09-22 TW TW089119646A patent/TW476030B/en not_active IP Right Cessation
Cited By (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1296845C (en) * | 2003-01-24 | 2007-01-24 | 华为技术有限公司 | Magnetic disk storage system |
| CN100334567C (en) * | 2003-07-02 | 2007-08-29 | 普安科技股份有限公司 | Redundant external storage virtualization computer system |
| CN1328664C (en) * | 2004-07-12 | 2007-07-25 | 普安科技股份有限公司 | Self-monitoring controller, redundant storage system including the controller and monitoring method |
| CN100412779C (en) * | 2004-11-17 | 2008-08-20 | 国际商业机器公司 | Method and system for providing a host accessing a device through a storage controller port |
| US8412869B2 (en) | 2005-01-13 | 2013-04-02 | Infortrend Technology, Inc. | Redundant storage virtualization computer system |
| CN100447731C (en) * | 2005-01-13 | 2008-12-31 | 普安科技股份有限公司 | Redundant Storage Virtualization Computer System |
| US7676614B2 (en) | 2005-01-13 | 2010-03-09 | Infortrend Technology, Inc. | Redundant storage virtualization computer system |
| 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 |
| CN101676857B (en) * | 2005-09-22 | 2013-04-24 | 株式会社日立制作所 | Storage system |
| CN103136153A (en) * | 2011-11-21 | 2013-06-05 | 宏碁股份有限公司 | Interface device, serial connection system and serial connection method thereof |
| US9117037B2 (en) | 2011-11-21 | 2015-08-25 | Acer Incorporated | Interface apparatus, cascading system thereof and cascading method thereof |
| CN103838687A (en) * | 2012-11-26 | 2014-06-04 | 三星电子株式会社 | Storage device, computing system including same and data transferring method thereof |
| CN103838687B (en) * | 2012-11-26 | 2018-10-19 | 三星电子株式会社 | Bunkerage including its computing system and its data transferring method |
| CN107239366A (en) * | 2016-03-28 | 2017-10-10 | 爱思开海力士有限公司 | The power-fail interrupt of non-volatile dual-in-line memories system |
| CN107239366B (en) * | 2016-03-28 | 2020-09-08 | 爱思开海力士有限公司 | Power Loss Interrupt for Non-Volatile Dual In-Line Memory Systems |
Also Published As
| Publication number | Publication date |
|---|---|
| HK1050935A1 (en) | 2003-07-11 |
| TW476030B (en) | 2002-02-11 |
| CA2385492A1 (en) | 2001-03-29 |
| AU7714700A (en) | 2001-04-24 |
| KR20020048414A (en) | 2002-06-22 |
| WO2001022221A1 (en) | 2001-03-29 |
| KR100441189B1 (en) | 2004-07-21 |
| EP1236106A1 (en) | 2002-09-04 |
| CA2385492C (en) | 2005-08-16 |
| EP1236106A4 (en) | 2002-10-30 |
| CN1222876C (en) | 2005-10-12 |
| JP2003510683A (en) | 2003-03-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1222876C (en) | Raid controller system and method with ATA emulation host interface | |
| US8073675B2 (en) | ATA emulation host interface in a RAID controller | |
| US5875349A (en) | Method and arrangement for allowing a computer to communicate with a data storage device | |
| US6813688B2 (en) | System and method for efficient data mirroring in a pair of storage devices | |
| US7103684B2 (en) | Single-chip USB controller reading power-on boot code from integrated flash memory for user storage | |
| US5694581A (en) | Concurrent disk array management system implemented with CPU executable extension | |
| US9201778B2 (en) | Smart scalable storage switch architecture | |
| US5987627A (en) | Methods and apparatus for high-speed mass storage access in a computer system | |
| JP5128079B2 (en) | Universal storage bus adapter | |
| US5909592A (en) | Method in a basic input-output system (BIOS) of detecting and configuring integrated device electronics (IDE) devices | |
| US20090049222A1 (en) | PCI Express-Compatible Controller And Interface For Flash Memory | |
| WO2004081738A2 (en) | Method and system for embedded disk controllers | |
| WO1996018141A1 (en) | Computer system | |
| US5996045A (en) | IDE disk drive arrangement that combines the capacity of a master drive and slave drive while hiding the presence of slave drive to a host computer | |
| US5887157A (en) | Local bus interface | |
| CN1685329A (en) | Method, system and program for controlling multiple input/output devices | |
| US7475279B2 (en) | Data storage system, data storage control device, and write error diagnosis method for disks thereof | |
| CN1685318A (en) | Method, system, and program for memory based data transfer | |
| US7143234B2 (en) | Bios storage array | |
| CN100356310C (en) | Storage virtualization controller, subsystem, system and method | |
| US20050198425A1 (en) | Combined optical storage and flash card reader using single ide or sata port and method thereof | |
| CN113190084B (en) | Method and device for connecting hard disk backboard supporting multiple-bit-width hard disks | |
| Peterson | Designing A VME-To-SCSI Adapter |
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 | ||
| CX01 | Expiry of patent term | ||
| CX01 | Expiry of patent term |
Granted publication date: 20051012 |