CN1076843C - 多功能光盘阵列及用其实现数据并行写入/读出的方法 - Google Patents

多功能光盘阵列及用其实现数据并行写入/读出的方法 Download PDF

Info

Publication number
CN1076843C
CN1076843C CN97112470A CN97112470A CN1076843C CN 1076843 C CN1076843 C CN 1076843C CN 97112470 A CN97112470 A CN 97112470A CN 97112470 A CN97112470 A CN 97112470A CN 1076843 C CN1076843 C CN 1076843C
Authority
CN
China
Prior art keywords
data
optical disk
block
drive
driver
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.)
Expired - Fee Related
Application number
CN97112470A
Other languages
English (en)
Other versions
CN1172322A (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN97112470A priority Critical patent/CN1076843C/zh
Publication of CN1172322A publication Critical patent/CN1172322A/zh
Application granted granted Critical
Publication of CN1076843C publication Critical patent/CN1076843C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明属光存储技术领域中的系统集成技术领域。本发明由通过数据线相连的控制单元和驱动器阵列两部分组成。控制单元包括:依次相连的输入/输出数据的驱动器设备接口;数据分块与合并,冗余数据生成单元;数据分布控制单元;数据传输控制单元。驱动器阵列由多个多种光盘盘片的光盘驱动器组成。本发明在不改变光盘驱动器内部技术参数,通过外部的控制和连接方式,将多个光盘驱动器组成并行结构,达到提高数据存储容量,数据可靠性,数据传输速率和寻址效率的目的。

Description

多功能光盘阵列及用其实现数据并行写入/读出的方法
本发明属光存储技术领域中的系统集成技术领域,涉及一种多功能光盘阵列及用其实现数据并行写入/读出的方法。
信息技术的发展使信息的数量急剧增加,在数据备份、数据检索和传播等领域,由于数据量大大膨胀,即使采用现有光盘记录技术容量仍显不足。而且光盘驱动器绝大多数都是一个光学头,读写速度无法摆脱光盘的主轴转速和光学头的惯量,以及激光器的输出功率等不利因素的制约,使光盘驱动器数据传输速率受到限制。另外,在军事、银行数据业务等领域,目前单一光盘驱动器的数据可靠性已不能满足要求,需要进一步提高。所以,光存储技术的发展方向包括提高光存储容量,提高光盘驱动器的数据传输速率,缩短光学头的寻址时间等几个方面。从驱动器内部解决上述技术问题存在相当的困难,同时CD光盘塔系统是将多个CD光盘驱动器通过数据总线简单的串联在一起。其每一个驱动器的数据和操作是独立的,也就是说每个驱动器都是单独使用,不能发挥多个驱动器组成的并行结构的优势。
本发明的目的在于克服已有技术的不足,在不改变光盘驱动器内部技术参数,通过外部的控制和连接方式,将多个光盘驱动器组成并行结构,达到提高数据存储容量,数据可靠性,数据传输速率和寻址效率的目的。
本发明提出一种多功能光盘阵列,其特征在于由通过数据线相连的控制单元和驱动器阵列两部分组成,所说控制单元包括:依次相连的输入/输出数据的驱动器设备接口;数据分块与合并,冗余数据生成单元;数据分布控制单元;数据传输控制单元。所说的驱动器阵列由多个可读写,可擦写和CD类型的多种光盘盘片的光盘驱动器组成,所说的数据总线并行地与所说的每个光盘驱动器相连。
采用上述的多功能光盘阵列实现数据并行写入/读出的方法,其特征在于写入数据包括以下步骤:
(1)外部数据通过设备驱动接口进入;
(2)将进入的数据按一定的数据长度分解成数据块;
(3)分块后的数据按位进行异或操作产生冗余数据;
(4)按照宏块数据分配方案计算出每个数据块在相应驱动器盘片上的物理位置;
(5)采用分布式数据传输方式将每个数据块通过数据总线并行地通过每个光盘驱动器的接口进入驱动器内部缓存器;
(6)将缓存器中的数据写入到驱动器中的光盘盘片上。
数据读出的过程为上述数据写入过程的逆过程。
读出数据包括以下步骤:
(1)光盘中数据经过数据总线,输入到数据传输控制单元;
(2)数据传输控制单元将驱动器上分块的数据采用分布式数据传输的方法同时快速读出;
(3)数据分布单元根据分块数据的物理地址和驱动器地址偏移对从盘片上读出的分块数据进行计算,得到最初的数据分块和冗余数据;
(4)通过数据分块和冗余数据生成单元将该分块数据和冗余数据恢复成为连续数据;
(5)连续数据经过驱动设备接口读出到系统。
本发明内容进一步详细说明如下:
光盘阵列外部的数据通过控制单元中的设备驱动接口进入光盘阵列控制单元。在控制单元中,数据首先进入数据分块和冗余数据生成单元,如图2所示。
在光盘阵列控制单元中的数据分块和冗余数据生成单元中,连续的数据首先按一定的数据块长度分解。每一个数据分块的长度是光盘物理扇区长度的整数倍。这样操作称为数据分块。如果多功能光盘阵列中驱动器的数目为M+1,那么分块后的数据按每M个一组按位进行异或操作,由此产生第M+1个数据块,即M个数据块的冗余校验数据。这样产生的每M+1个分块将进入光盘阵列控制单元中的数据分布控制单元。
在光盘阵列控制单元中的数据分布控制单元中,每M+1个数据块将按照宏块数据分配方案计算出每个数据块在相应驱动器盘片上的物理位置。宏块数据方案的目的在于改变不同的M+1个数据块集合之间的距离分布,缩小其最大值和平均值,由此缩短驱动器光学头的寻址距离,提高光盘阵列的寻址效率。
宏块数据方案与普通的数据分布(普通数据分布下,每M+1个数据块在相应盘片上的物理位置相同,而且数据的物理位置按存放的先后次序进行)相比,每个数据块在光盘上的物理位置要向后循环移动一段距离,即偏移。偏移的距离与数据块存放的驱动器在阵列中的位置有关,为此先确定驱动器的标号。然后根据标号计算每个数据块的偏移距离。每个数据块在盘片上的最终位置就是以普通数据分布下的位置为原物理位置加上相应的偏移。这样,计算出传输物理位置的数据块将进入数据传输控制单元,如图3中所示。
数据传输控制单元控制分块后的数据向各个光盘驱动器的传输过程。多功能光盘阵列采用了一种称为分布式数据传输的方法提高数据传输率,其具体操作如图4所示。图4中多个光盘驱动器利用数据接口通过数据总线与数据控制单元相连接。光盘驱动器内部包含数据接口,内部缓存和光盘盘片三个主要部分。数据传输过程在传输控制单元的操作下分为两个子过程。一是分块数据从数据传输控制单元通过数据总线,由驱动器接口进入驱动器内部缓存。另一个是驱动器内部缓存中的数据记录到驱动器中的光盘盘片上。由于两个子过程可以在时间上并行操作,所以整个系统的数据传输率大大提高。
由于系统中含有利用奇偶校验码构成的冗余数据,而且某个驱动器或盘片发生故障时,可以被数据传输控制单元检测到,所以系统在一个盘片或驱动器发生故障时可以通过冗余数据计算,恢复出发生故障设备中的原有数据,保证阵列系统在一个驱动器发生故障时,仍可以正常工作,因而数据可靠性大大提高。
以上的描述基于数据向光盘阵列的写入过程,数据读出过程则是写入过程的逆过程。
本发明的特点及效果如下:
(a)系统采用多功能光盘驱动器组成,可以使用多种不同类型的光盘盘片。
(b)数据存储采用数据分块机制。
(c)利用外部据总线连接成阵列驱动器结构,使光盘阵列数据容量提高为单一驱动器M+1倍。(M+1为光盘阵列中光盘驱动器的数目)
(d)产生并利用冗余数据,使光盘阵列系统数据平均不丢失时间即数据可靠性)比单一光盘驱动器提高两个数量级以上。
(e)采用分布式数据传输,将数据传输率最大可提高为单一驱动器M+1倍。(M+1为光盘阵列中光盘驱动器的数目)
(f)采用宏块数据分布,数据间的最大距离可以缩短一半,提高了阵列驱动器整体寻址速率。
附图简要说明:
图1为本发明总体结构示意图。
图2为本发明控制单元中的数据分块与合并,冗余数据生成编程框图。
图3为本发明控制单元中的数据分布控制编程框图。
图4为本发明控制单元中的数据传输控制框图。
图5为本发明实施例总体结构示意图。
图6为本发明实施例设备驱动程序框图。
图7为本实施例在写操作中断子程序中各项操作流程框图。
本发明设计的一种多功能光盘阵列实施例为OAH-M7型多功能光盘阵列,如图5~7所示,结合附图分别详细说明如下:
OAH-M7型多功能光盘阵列由外置式光盘阵列和控制单元两部分组成,如图5所示,对应图1中驱动器阵列和控制单元两部分,两部分之间用SCSI电缆连接。
在外置式光盘阵列中使用5个日本松下公司的PD型多功能光盘驱动器,该驱动器可以使用CD-ROM格式和可擦写格式两种盘片。驱动器接口采用SCSI,内部数据缓存长度为512KB。每张光盘的容量为650MByte,因此光盘阵列的总容量为2.55Mbyte。
控制单元通过SCSI接口卡加上辅助的设备驱动程序构成。也就是控制单元中的驱动设备接口;数据分块合并,冗余数据产生;数据分布控制都通过软件实现。数据的传输控制则通过标准SCSI接口卡(如ADAPTEC公司的AHA-1542)和标准SCSI设备命令完成。设备驱动程序接收主机操作系统传递来的数据,利用主机内存作为缓冲区,对数据进行分块,然后生成冗余数据,并对每个数据分块计算出相应的盘片物理地址。驱动程序将相关信息按照SCSI的标准控制方式传递给SCSI接口卡,接口卡将据此将分块数据传输到光盘驱动器的数据缓存中,并通知光盘驱动器在将内部缓存中的数据记录到光盘盘片上时不使用SCSI数据总线,以便此时SCSI接口卡可以利用SCSI总线向其它光盘驱动器传输数据。SCSI接口卡和光盘驱动器之间的信息传递按照光盘驱动器所能接受的SCSI命令集合和SCSI规范进行。
设备驱动程序的设计也可根据主机操作系统的种类,依照相应的规范进行。如主机操作系统为DOS时,设备驱动程序如图6所示。DOS操作系统内核通过一个存放系统所有驱动程序地址的地址表确定光盘阵列设备驱动程序在内存中的位置,然后将要对光盘阵列进行数据操作的信息传递给光盘阵列驱动程序中的驱动程序申请表(request header)。驱动程序申请表将确定这些信息的具体含义,并将信息传递给相应的中断子程序。在中断子程序中将完成数据分块合并,冗余数据产生;每个数据分块相应的盘片物理地址的计算;相关信息向SCSI接口卡的传递;以及通过SCSI接口卡对各个驱动器状态的检查,和发现故障时的数据恢复工作。图7表示在写操作中断子程序中以上各项操作过程。
图7中,每项操作实现的程序代码都模块化,在各个中断子程序中都可调用。其中数据分块模块完成对数据的分块操作;冗余数据生成模块完成对每M个分块数据进行对位异或逻辑运算以产生相应的奇偶校验码(光盘阵列中驱动器的数目为M+I),即冗余数据。地址计算模块将根据宏块数据方案计算出每一分块数据的相应盘片物理地址,并将这些信息通过SCSI信息传输模块传递给SCSI接口卡,以完成以后的操作。
OAH-M7型多功能光盘阵列通过测试和技术鉴定使光盘阵列的系统有效容量提高为单一驱动器的4倍(光盘阵列中有5个光盘驱动器,其中一个用于存放冗余数据);数据传输率提高为单一驱动器的2~4倍(实际系统中还有许多影响数据传输率的因素,因此不能达到理论最大值);系统的平均无故障时间延长为单一驱动器的100倍;宏块数据方案使数据间的最大距离缩短为原先的一半。

Claims (2)

1.一种多功能光盘阵列,其特征在于由通过数据线相连的控制单元和驱动器阵列两部分组成,所说控制单元包括:依次相连的输入/输出数据的驱动器设备接口;数据分块与合并,冗余数据生成单元;数据分布控制单元;数据传输控制单元;所说的驱动器阵列由多个可读写,可擦写和CD类型的多种光盘盘片的光盘驱动器组成;所说的数据总线并行地与所说的每个光盘驱动器相连。
2.采用如权利要求1所述的多功能光盘阵列实现数据并行写入/读出的方法,其特征在于写入数据包括以下步骤:
(1)外部数据通过设备驱动接口进入;
(2)将进入的数据按一定的数据长度分解成数据块;
(3)分块后的数据按位进行异或操作产生冗余数据;
(4)按照宏块数据分配方案计算出每个数据块在相应驱动器盘片上的物理位置;
(5)采用分布式数据传输方式将每个数据块通过数据总线并行地通过每个光盘驱动器的接口进入驱动器内部缓存器;
(6)将缓存器中的数据写入到驱动器中的光盘盘片上。
读出数据包括以下步骤:
(1)光盘中数据经过数据总线,输入到数据传输控制单元;
(2)数据传输控制单元将驱动器上分块的数据采用分布式数据传输的方法同时快速读出;
(3)数据分布单元根据分块数据的物理地址和驱动器地址偏移对从盘片上读出的分块数据进行计算,得到最初的数据分块和冗余数据;
(4)通过数据分块和冗余数据生成单元将该分块数据和冗余数据恢复成为连续数据;
(5)连续数据经过驱动设备接口读出到系统。
CN97112470A 1997-06-13 1997-06-13 多功能光盘阵列及用其实现数据并行写入/读出的方法 Expired - Fee Related CN1076843C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN97112470A CN1076843C (zh) 1997-06-13 1997-06-13 多功能光盘阵列及用其实现数据并行写入/读出的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN97112470A CN1076843C (zh) 1997-06-13 1997-06-13 多功能光盘阵列及用其实现数据并行写入/读出的方法

Publications (2)

Publication Number Publication Date
CN1172322A CN1172322A (zh) 1998-02-04
CN1076843C true CN1076843C (zh) 2001-12-26

Family

ID=5172284

Family Applications (1)

Application Number Title Priority Date Filing Date
CN97112470A Expired - Fee Related CN1076843C (zh) 1997-06-13 1997-06-13 多功能光盘阵列及用其实现数据并行写入/读出的方法

Country Status (1)

Country Link
CN (1) CN1076843C (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101317448B (zh) * 2005-11-29 2010-06-16 皇家飞利浦电子股份有限公司 管理分布存储系统的方法
CN102402448A (zh) * 2011-12-27 2012-04-04 大唐微电子技术有限公司 智能卡软件引导系统和方法
CN103514916B (zh) * 2013-09-24 2016-06-01 中经云数据存储科技(北京)有限公司 光盘库、用于光盘库的数据异步并行读写方法及控制装置
CN103514901B (zh) * 2013-09-24 2016-08-17 中经云数据存储科技(北京)有限公司 光盘库、用于该光盘库的数据并行读写方法及控制装置
CN103530068B (zh) * 2013-10-22 2017-02-08 中经云数据存储科技(北京)有限公司 用于光存储阵列网络的数据读写方法及控制装置
CN103617250B (zh) * 2013-11-28 2017-07-18 中经云数据存储科技(北京)有限公司 基于光存储阵列的文件管理方法以及文件格式系统
CN104134447B (zh) * 2014-05-04 2017-01-25 武汉光忆科技有限公司 一种光盘存储系统以及光盘数据读写方法
US9690492B2 (en) * 2015-01-05 2017-06-27 International Business Machines Corporation Random read performance of optical media library
CN110727541A (zh) * 2019-09-02 2020-01-24 广东紫晶信息存储技术股份有限公司 一种光盘分块存储校验方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0336419A2 (en) * 1988-04-07 1989-10-11 Insite Peripherals, Inc. Apparatus and method for optical servo control with media having information storage and servo control regions of different reflectivities
US5469423A (en) * 1992-02-12 1995-11-21 Mitsubishi Kenki Kabushiki Kaisha Laser power control of an optical head with a plurality of beam sources

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0336419A2 (en) * 1988-04-07 1989-10-11 Insite Peripherals, Inc. Apparatus and method for optical servo control with media having information storage and servo control regions of different reflectivities
US5469423A (en) * 1992-02-12 1995-11-21 Mitsubishi Kenki Kabushiki Kaisha Laser power control of an optical head with a plurality of beam sources

Also Published As

Publication number Publication date
CN1172322A (zh) 1998-02-04

Similar Documents

Publication Publication Date Title
CN1296841C (zh) 用于重叠写入的盘驱动器的日志结构文件系统
JP2777301B2 (ja) 記録装置
EP0515499B1 (en) Disk drive memory
AU647931B2 (en) Disk drive memory
US5515500A (en) Recording apparatus and method for an arrayed recording apparatus
AU661680B2 (en) Disk drive array memory system using nonuniform disk drives
US4989206A (en) Disk drive memory
US5140592A (en) Disk array system
US6907504B2 (en) Method and system for upgrading drive firmware in a non-disruptive manner
US5202799A (en) Logical data tracks extending among a plurality of zones of physical tracks of one or more disk devices
US20050138286A1 (en) In-place data transformation for fault-tolerant disk storage systems
CN1076843C (zh) 多功能光盘阵列及用其实现数据并行写入/读出的方法
US6976124B2 (en) Control method of control device conducting data input and output to storage devices, and control device used therefor
US5875460A (en) Disk array subsystem and data generation method therefor
EP0986000B1 (en) Disk array subsystem
US6611897B2 (en) Method and apparatus for implementing redundancy on data stored in a disk array subsystem based on use frequency or importance of the data
JPH07261946A (ja) アレイ型記憶装置
JP3250859B2 (ja) ディスクアレイ装置、コンピュータシステム及びデータ記憶装置
CN101246728B (zh) 光驱及其随机存取控制方法
GB2293912A (en) Disk storage device for disk array
JP2733189B2 (ja) ディスクアレイ装置の入出力制御方法
JPH04264910A (ja) コンピュータ外部記憶装置のデータ更新方法
CN1670682A (zh) 一种数据重组方法
JP2000357060A (ja) ディスクアレイ装置
JPH0816327A (ja) ディスクアレイ装置

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee