一般的具有储存设备的数字家电产品(如DVD录像机、卡啦OK等等)系 利用
硬盘以进行影像资料的储存。这些硬盘放置在数字家电产品的内部,其 储存容量在出厂时即已经固定,不易扩充。而各厂产品所使用的嵌入式操作 系统又各不相同,致使
操作系统及储存装置需经
修改,才能适用。同时,一 旦其储存装置有损坏,也必须送回原厂更换。
针对上述问题,公知技术是使用一SCSI
接口的磁盘阵列,以解决储存容 量不易扩充的问题。此虽可扩充储存容量,然而却需增加一片SCSI接口的控 制卡。此会增加许多成本。在美国第USP6,772,108号
专利公告中,将一具有仿 真ATA端口的磁盘阵列
控制器50耦合至PCI
系统总线12,图1是其的系统方
块 图,其主要将磁盘阵列控制器仿真成ATA端口,磁盘阵列控制器可以增加IDE 磁盘驱动器的数目,以解决储存容量不易扩充的问题。此虽无需增加一片SCSI 接口的控制卡,但是ATA埠无法支持
热插拔,当使用者扩充储存容量时,需 将系统关机,才能新增一IDE磁盘驱动器。所以公知数字家电产品的储存系统 仍有诸多缺点而有予以改进的必要。
本发明的目的是在提供一种
储存装置的控制系统,以避免公知技术储存 容量无法扩充的问题,并达到支持热插拔功能,以增加使用的便利性。
依据本发明的特色,提出一种储存装置的控制系统,其耦合至一具有标 准磁盘驱动器驱动程序的主机,该控制系统包含第一总线、主机界面控制器、 储存装置、控制装置及若干个装置界面控制器。该第一总线用以收送资料; 该主机界面控制器电气连接至该主机,以接收该主机所传送的命令及资料, 或传送资料至该主机,并连接至该第一总线;该储存装置连接至该主机界面 控制器,用以暂存资料,并且连接至该第一总线;该控制装置连接至该储存 装置,以存取该储存装置中储存的主机传送的命令,并且连接至该第一总线; 该每一个装置界面控制器的一端连接至该第一总线,以将资料传送至该储存 装置,或由该储存装置接收资料,每一个装置界面控制器的另一端连接至一 磁盘驱动器,将该若干个磁盘驱动器形成一磁盘阵列;其中,该控制装置经 由该第一总线控制该主机界面控制器及该若干个装置界面控制器,将该主机 所传送的资料依据磁盘阵列型式分别写至该若干个磁盘驱动器,或依据磁盘 阵列型式分别读取该若干个磁盘驱动器上资料,并传送至该主机,俾将磁盘 阵列仿真为一个磁盘驱动器。
附图说明
图1是是公知具有仿真ATA端口的磁盘阵列控制器的系统方块图。
图2是本发明的一种储存装置的控制系统的方块图。
图3是本发明的两台磁盘驱动器设成跨碟储存组态时资料写入示意图。
图4是本发明的两台磁盘驱动器设成磁盘镜射组态时数据写入示意图。
图5是本发明的两台磁盘驱动器设成磁盘镜射组态时资料读出示意图。
图6是本发明的三台磁盘驱动器设成RAID5组态时资料写入示意图。
图7A、7B及7C是本发明进行热插拔的示意图。
图号说明
12
PCI总线 50 磁盘阵列控制器
100 主机 110 SATA端口
200 控制系统 205 第一总线
210 主机界面控制器 215 储存装置
220 控制装置 225 若干个装置界面控制器
230直接内存存取引擎 235 第二总线
240周边控制装置 245 通用输入输出装置
250I2C主/仆装置 255 异步式串行接口装置
310、320、330、320’ SATA磁盘驱动器
图2是本发明的一种储存装置的控制系统200的方块图,其耦合至一具有 标准IDE驱动程序的主机100,以解决公知技术储存容量无法扩充的问题,并 达到支持热插拔功能,以增加使用的便利性。该控制系统包含:第一总线205、 主机界面控制器210、储存装置215、控制装置220、若干个装置界面控制器225、 直接内存存取引擎230、第二总线240、周边控制装置235、通用输入输出(GPIO) 装置245、I2C主/仆装置250及一异步式串行接口(UART)装置255。
该第一总线205用以收送资料。该主机界面控制器210是一SATA(serial ATA)埠控制器,以经由一SATA缆线连接至该主机100的一SATA端口110。其 用以接收该主机100所传送的命令及资料,或传送资料至该主机100,并连接 至该第一总线205。
该储存装置215连接至该主机界面控制器210,用以暂存资料,并且连接 至该第一总线205。该直接内存存取引擎230耦合至该储存装置215,以控制该 储存装置215的存取。该控制装置220连接至该储存装置215,以存取该储存装 置215中储存的主机100传送的命令,并且连接至该第一总线205。该控制装置 220可经由该第一总线205控制该直接内存存取引擎230。
该若干个装置界面控制器225中的每一个装置界面控制器均为SATA埠 控制器,其一端连接至该第一总线205,以将资料传送至该储存装置215,或 由该储存装置215接收资料,每一个装置界面控制器的另一端连接至一SATA 磁盘驱动器(310、320、...),将该若干个SATA磁盘驱动器(310、320、...)形 成一磁盘阵列。
该控制装置220经由该第一总线205控制该主机界面控制器210、该直接 内存存取引擎230及该若干个装置界面控制器225,将该主机100所传送的资料 依据磁盘阵列型式分别写至该若干个磁盘驱动器(310、320、...),或依据磁盘 阵列型式分别读取该若干个磁盘驱动器(310、320、...)上资料,并传送至该主 机100,俾将磁盘阵列仿真为一个磁盘驱动器。
图3是两台SATA磁盘驱动器(310、320)被设成跨碟储存(disk striping)组 态时资料写入示意图。当该控制装置220接收到由主机100送出的写入命令, 该控制装置220依据命令中的线性区块地址(linear block address、LBA),传送 命令至适当的磁盘驱动器,并控制该直接内存存取引擎230依序在主机100与 磁盘驱动器(310、320)间传递资料区块。主机所见的仿真磁盘的容量为此两台 磁盘驱动器(310、320)容量的总和。
图4是两台SATA磁盘驱动器(310、320)设成磁盘镜射(mirroring,RAID 1) 组态时资料写入示意图。当该控制装置220接收到由主机100送出的写入命令, 该控制装置220传送相同命令至此两台磁盘驱动器(310、320),并控制该直接 内存存取引擎230接收由主机100送出的资料区块,并同时传送相同资料区块 至此两台磁盘驱动器(310、320)。
图5是两台SATA磁盘驱动器(310、320)设成磁盘镜射(mirroring,RAID1) 组态时资料读出示意图。当该控制装置220接收到由主机送出的读取命令,该 控制装置220将依效率的考量,更改命令以分别由两台磁盘驱动器(310、320) 读出资料区块,并控制该直接内存存取引擎230依序接收由磁盘驱动器(310、 320)送出的资料区块,并传送至主机100。
图6是三台磁盘驱动器(310、320、330)设成RAID5组态时资料写入示意 图。当该控制装置220接收到由主机送出的命令,该控制装置220将更改命令 中的线性区块地址(LBA)及区块数目(block count),再分别送出不同命令至磁 盘驱动器(310、320、330),并控制该直接内存存取引擎230依序在主机与其中 两台磁盘驱动器间传递资料区块,并将资料区块暂存于该储存装置215中,在 执行XOR运算后,传送至第三台磁盘驱动器。
图7A、7B及7C是本发明进行热插拔的示意图。当该控制装置220查觉有 磁盘驱动器320损坏时,将损坏磁盘驱动器320删除,若此磁盘阵列设为容错 模式(RAID1或RAID5),主机100将可继续存取资料而不受影响。当磁盘阵列 的容量已扩大,则本发明的储存装置控制系统200将产生一停下同步
信号 (off-line)及一重新要求
同步信号(on-line)的动作,促使主机100重新检视磁盘驱 动器。置换新磁盘驱动器后,主机100仍可正常运作。
该第二总线240用以收送资料,其主要为连接周边装置。该周边控制装 置235的一端耦合至该第一总线205,另一端耦合至该第二总线240。该通用输 入输出装置245耦合至该第二总线240,该控制装置220可经由该周边控制装置 235存取该通用输入输出装置245。
该I2C主/仆装置250耦合至该第二总线240,该控制装置220可经由该I2C 主/仆装置250存取一I2C总线。该异步式串行接口装置255耦合至该第二总线 240,该控制装置220可经由该异步式串行接口装置255存取一异步式串行接口 总线。
该控制装置220可经由该通用输入输出装置245、I2C主/仆装置及异步式 串行接口装置255而与其它周边装置沟通。例如,可连接一具有I2C界面的温 度感测装置至该I2C主/仆装置250。当该控制装置220接收由主机100送出的特 定命令,由该I2C主/仆装置250将目前
温度读回,并传回主机100。
由上述说明可知,本发明的储存装置控制系统200将一磁盘阵列仿真成 单一磁盘。而该磁盘阵列的组态可以是一般常见的RAID组态,或是其它特定 的组态。因为对主机1 00而言是单一磁盘驱动器,不需因操作系统不同而提供 不同的驱动程序。同时,因SATA标准支持热插拔及外接,利用此一特性,本 发明的储存装置控制系统200可随时回报目前磁盘阵列的组态,在主机100持 续工作下更换损坏的磁盘驱动器,都不会造成主机100或本发明的储存装置控 制系统200其它部分的
硬件上的毁损。
上述较佳具体
实施例仅是为了方便说明而举例而已,本发明所主张的保 护范围自应以
权利要求中所述为准,而非仅限于上述实施例。