CN103019619A - 一种磁盘插拔控制方法及装置 - Google Patents
一种磁盘插拔控制方法及装置 Download PDFInfo
- Publication number
- CN103019619A CN103019619A CN201210500979XA CN201210500979A CN103019619A CN 103019619 A CN103019619 A CN 103019619A CN 201210500979X A CN201210500979X A CN 201210500979XA CN 201210500979 A CN201210500979 A CN 201210500979A CN 103019619 A CN103019619 A CN 103019619A
- Authority
- CN
- China
- Prior art keywords
- disk
- port
- another
- event
- control module
- 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
Landscapes
- Power Sources (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种磁盘插拔控制方法及对应的装置,该方法应用于包括存储系统的电子设备上,其中该存储系统基于SATA端口复用器PM,该方法包括:步骤A、定期检测是否有磁盘从PM的端口插入或者拔出;步骤B、在插拔控制单元检测到磁盘插入事件时,控制PM以允许该磁盘在PM的端口上实现上电,控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问;并在所述预定时间到达后继续处理磁盘的插入事件。本发明通过保持PM Port上已经连接磁盘的正常读写,避免了新磁盘插入所引发的应用中断问题,实现方式简洁,成本较低。
Description
技术领域
本发明涉及数据存储领域,尤其涉及一种一种磁盘插拔控制方法及装置。
背景技术
目前SATA是已经完全取代旧式PATA(Parallel ATA或称IDE)的新型磁盘接口技术。在数据传输方面,SATA的速度比以往更加快捷,并支持热插拔。另一方面,SATA总线使用了嵌入式时钟频率信号,具备了比以往更强的纠错能力,能对传输指令(不仅是数据)进行检查,如果发现错误会自动矫正,提高了数据传输的可靠性。SATA还使用较细的排线,有利机箱内部的空气流通,散热性更好,增加平台稳定性。
SATA连接包括一个驱动器、一个控制器(Host)端口及一条连接两者的SATA线缆。因此在存储阵列中的最大驱动器数量将取决于控制器的端口数。而SATA PM可通过端口复用技术来改变这种点对点的对应关系。SATAPM不仅可实现简单方便、经济高效的存储扩容,还能将多个驱动器的性能加以累积。
SATA PM(端口复用器,Port Multiplexer)是一种可令单个活动主机与多个驱动器连接通信的简单机制,它可通过标准SATA驱动器以内置及外置方式帮助服务器或者存储系统轻松实现经济高效的存储可扩展性,令存储扩容不再需要额外的控制器,并能用更少的电缆来连接更多的驱动器,从而极大地简化机箱内的布线。SATA磁盘作为新型的存储介质,具有高速、海量、价格低廉、使用方便等优点。
基于上述优点,使用SATA控制器加SATA PM的硬件设计广泛应用于各种存储系统中;例如,视频监控存储、中小企业数据存储等。请参考图1所示的基于SATA PM存储系统的后端磁盘扩展连接示意图,通过6个Sil3132 SATA Controller芯片(每个控制芯片有两个SATA Host接口)和12个Sil3723 SATA PM芯片(由1个Host扩展接2个磁盘驱动器)可以扩展连接24个磁盘的存储系统。然而在这样类型的系统中,如果要新插入磁盘,则会中断之前正在读写磁盘的流量,导致性能下降;对监控、视频等存储应用情况,会导致用户的应用中断,体验较差。
发明内容
有鉴于此,本发明提供一种磁盘插拔控制装置,应用于包括存储系统的电子设备上,其中该存储系统基于SATA端口复用器PM,该装置包括插拔检测单元以及PM控制单元,其中:
插拔控制单元,用于定期检测是否有磁盘从PM的端口插入或者拔出;
PM控制单元,用于在插拔控制单元检测到磁盘插入事件时,控制PM以允许该磁盘在PM的端口上实现上电,控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问;并在所述预定时间到达后继续处理磁盘的插入事件。
本发明还提供一种磁盘插拔控制方法,应用于包括存储系统的电子设备上,其中该存储系统基于SATA端口复用器PM,其中,该方法包括以下步骤:
步骤A、定期检测是否有磁盘从PM的端口插入或者拔出;
步骤B、在插拔控制单元检测到磁盘插入事件时,控制PM以允许该磁盘在PM的端口上实现上电,控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问;并在所述预定时间到达后继续处理磁盘的插入事件。
本发明通过保持PM Port上已经连接磁盘的正常读写,避免了新磁盘插入所引发的应用中断问题,实现方式简洁,成本较低。
附图说明
图1是本发明一种典型的基于SATA PM存储系统的示意图。
图2是本发明一种实施方式中磁盘插拔控制装置逻辑结构图。
图3是本发明一种实施方式中磁盘插拔控制方法处理流程图。
具体实施方式
在基于SATA PM的存储系统中,磁盘插入并上电后其正常的处理流程包括以下步骤:
步骤101,进行OOB(Out-of-Band)协商;磁盘和PM之间物理链路协商,确定连接的接口协议和接口速率。
步骤102,磁盘起转;磁盘通常由盘片、马达、磁头等组成,所谓磁盘起转是指磁盘的马达带动盘片高速旋转,产生浮力使磁头飘浮在盘片上方。一般磁盘完全起转需要10到18秒时间。
步骤103,磁盘完全起转后磁盘会主动发送init fis帧给SATA PM;主要表示磁盘已经ready;可以进行数据读写。
PM采用多路复用技术,两个磁盘共用同一个SATA Host端口。当PM中的一个端口Port上接有一块磁盘A且正在读写时,此时如果再插入第二块磁盘B到这个PM芯片的另一个Port上,为了重新建立队列以访问磁盘B,此时PM芯片会等待新插入的磁盘B完全ready后(即前述步骤103中磁盘向PM发送init fis表示磁盘已经完全起转)才能释放相关IO读写资源。如前所述磁盘B从上电到完全ready通常大概需要10秒到18秒左右的时间,因而之前正在读写的磁盘A会暂停IO流量大概10到18秒的时间。
请参考图2,本发明一种实施方式中提供一种磁盘插拔控制装置,该装置应用于基于SATA PM的存储系统中,针对基于SATA PM的存储系统磁盘插拔进行优化。在优选的方式中,该装置可以由存储系统所在设备的CPU执行计算机程序实现,该装置包括插拔检测单元以及PM控制单元,该装置运行在该设备上执行如下处理过程。
步骤201,插拔检测单元定期检测是否有第一磁盘从PM的端口插入或者拔出;
步骤202,在检测到第一磁盘插入事件时,PM控制单元控制PM以允许该第一磁盘在PM的第一端口上实现上电,控制PM使其在预定时间内保持PM的第二端口上所连接的第二磁盘的正常访问;
步骤203,在所述预定时间到达后,PM控制单元继续处理第一磁盘的插入事件。
步骤204,在检测到第一磁盘拔出后,PM控制单元对第一磁盘连接的PM Port做下电处理。
磁盘插入之后,系统可以检测到该插入事件,在本发明中系统通常按照一个相对较短的周期来检测磁盘的插入或者拔出时间,这个周期通常小于1秒,在优选的方式中该周期为0.5秒。在正常情况下,磁盘上电后,从OOB协商到磁盘完全起转需要10~18秒(该参数是磁盘的特性,不同的磁盘起转时间有差异)。通过研究发现,上述10-18秒这一时间长度主要取决于磁盘起转所需要的时间,本发明在此提供新的处理机制来规避这一时间长度可能引发的应用中断问题。步骤202中通过对PM的控制来实现这一目的,本发明提供两种实施方式来实现对PM的控制,以允许PM上正常运行的磁盘的访问不会长时间被中断。
在第一实施方式中,本发明在OOB协商中默认先禁用该磁盘对应的PM芯片的端口。当检测到磁盘插入后,先给磁盘上电保证磁盘先起转,等待20秒(目前绝大多数硬盘的起转时间小于20秒)后再使能该磁盘对应的PM Port。当然随着磁盘技术的演进,这个预定时间则可以相应调整,一般情况下,预定时间取值范围建议在20-25秒之间。
由于SATA接口中磁盘的电源与数据通常是分离的,因此可以先让磁盘连接的PM Port上电以允许其完成起转。等待20秒后,通常新插入的磁盘已经上电并且完全起转。此时再使能磁盘对应的PM Port,使能PM Port后OOB协商就可以继续,OOB协商通常是通过数据通道来完成的,由于OOB协商过程所需时间非常短,因此PM能快速完成磁盘加载的过程,对PM上另一个Port所连接的磁盘的业务访问影响非常小。PM收到磁盘发送的init fis之后就可以进行队列重建,实现两个磁盘的正常访问了。
在第二种实施方式中,检测到第一磁盘插入事件后,先忽略该磁盘插入事件并将PM寄存器中与第二磁盘访问对应的标志位置为可访问,这样就可以保持该PM上第二磁盘的正常读写;然后再启用一个20秒的定时器。等到定时器超时之后,在定时器的处理函数中再进行加盘处理(也就是继续处理磁盘插入时间)。如前所述,由于大部分磁盘的起转时间小于等于18秒,因此等待20秒之后,在继续处理磁盘插入时间可以不必等待磁盘起转过程,此时PM通常已经收到了磁盘发送init fis,此时磁盘已经完全起转,PM重建队列之后即可实现两个磁盘的正常访问了。
在磁盘拔出之后,PM控制单元对磁盘所连接的PM Port做下电处理,这样做可以避免再有磁盘插入事,系统可以使用顺序上电的方式来避免短时间内多个磁盘插入所引发的电流冲击,磁盘顺序上电可以较好地保护电源供电的稳定。
本发明通过保持PM Port上已经连接磁盘的正常读写,避免了新磁盘插入所引发的应用中断问题,实现方式简洁,成本较低,但用户的使用体验可以大大提高,对于视频监控等应用重要场景其技术意义突出。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (8)
1.一种磁盘插拔控制装置,应用于包括存储系统的电子设备上,其中该存储系统基于SATA端口复用器PM,该装置包括插拔检测单元以及PM控制单元,其特征在于:
插拔控制单元,用于定期检测是否有磁盘从PM的端口插入或者拔出;
PM控制单元,用于在插拔控制单元检测到磁盘插入事件时,控制PM以允许该磁盘在PM的端口上实现上电,控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问;并在所述预定时间到达后继续处理磁盘的插入事件。
2.如权利要求1所述的装置,其特征在于,PM控制单元进一步用于在插拔控制单元检测到磁盘拔出事件时,对拔出磁盘原本连接的PM Port做下电处理。
3.如权利要求1所述的装置,其特征在于,所述控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问包括:在预定时间内禁用插入磁盘的端口。
4.如权利要求1所述的装置,其特征在于,所述控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问包括:忽略该磁盘插入事件并将PM寄存器中与第二磁盘访问对应的标志位置为可访问。
5.一种磁盘插拔控制方法,应用于包括存储系统的电子设备上,其中该存储系统基于SATA端口复用器PM,其特征在于,该方法包括以下步骤:
步骤A、定期检测是否有磁盘从PM的端口插入或者拔出;
步骤B、在插拔控制单元检测到磁盘插入事件时,控制PM以允许该磁盘在PM的端口上实现上电,控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问;并在所述预定时间到达后继续处理磁盘的插入事件。
6.如权利要求5所述的方法,其特征在于,所述步骤B进一步包括:
在插拔控制单元检测到磁盘拔出事件时,对拔出磁盘原本连接的PM Port做下电处理。
7.如权利要求5所述的方法,其特征在于,所述控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问包括:在预定时间内禁用插入磁盘的端口。
8.如权利要求5所述的方法,其特征在于,所述控制PM使其在预定时间内保持PM的另一端口上所连接的另一磁盘的正常访问包括:忽略该磁盘插入事件并将PM寄存器中与第二磁盘访问对应的标志位置为可访问。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210500979.XA CN103019619B (zh) | 2012-11-28 | 2012-11-28 | 一种磁盘插拔控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210500979.XA CN103019619B (zh) | 2012-11-28 | 2012-11-28 | 一种磁盘插拔控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103019619A true CN103019619A (zh) | 2013-04-03 |
CN103019619B CN103019619B (zh) | 2016-06-08 |
Family
ID=47968271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210500979.XA Active CN103019619B (zh) | 2012-11-28 | 2012-11-28 | 一种磁盘插拔控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103019619B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104932993A (zh) * | 2014-03-21 | 2015-09-23 | 中兴通讯股份有限公司 | 一种稳定热插拔驱动方法、装置及一种支持热插拔设备 |
CN105373549A (zh) * | 2014-08-25 | 2016-03-02 | 浙江大华技术股份有限公司 | 数据迁移方法、设备及数据节点服务器 |
CN106502958A (zh) * | 2016-10-27 | 2017-03-15 | 柏科数据技术(深圳)股份有限公司 | 一种智能磁盘管理方法及装置 |
CN110308938A (zh) * | 2019-07-01 | 2019-10-08 | 青岛海信传媒网络技术有限公司 | 插拔外设事件的管理方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799715A (zh) * | 2010-03-18 | 2010-08-11 | 中兴通讯股份有限公司 | 一种硬盘接口热插拔电源保护装置及其实现方法 |
CN102339236A (zh) * | 2010-07-21 | 2012-02-01 | 英业达股份有限公司 | 侦测可插拔储存装置的方法及电子装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100458753C (zh) * | 2007-03-01 | 2009-02-04 | 华为技术有限公司 | 多硬盘系统中硬盘热拔插系统及方法 |
CN101281452A (zh) * | 2007-04-05 | 2008-10-08 | 英业达股份有限公司 | 硬盘自动重建方法 |
-
2012
- 2012-11-28 CN CN201210500979.XA patent/CN103019619B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799715A (zh) * | 2010-03-18 | 2010-08-11 | 中兴通讯股份有限公司 | 一种硬盘接口热插拔电源保护装置及其实现方法 |
CN102339236A (zh) * | 2010-07-21 | 2012-02-01 | 英业达股份有限公司 | 侦测可插拔储存装置的方法及电子装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104932993A (zh) * | 2014-03-21 | 2015-09-23 | 中兴通讯股份有限公司 | 一种稳定热插拔驱动方法、装置及一种支持热插拔设备 |
CN105373549A (zh) * | 2014-08-25 | 2016-03-02 | 浙江大华技术股份有限公司 | 数据迁移方法、设备及数据节点服务器 |
CN105373549B (zh) * | 2014-08-25 | 2019-02-12 | 浙江大华技术股份有限公司 | 数据迁移方法、设备及数据节点服务器 |
CN106502958A (zh) * | 2016-10-27 | 2017-03-15 | 柏科数据技术(深圳)股份有限公司 | 一种智能磁盘管理方法及装置 |
CN106502958B (zh) * | 2016-10-27 | 2019-03-26 | 柏科数据技术(深圳)股份有限公司 | 一种智能磁盘管理方法及装置 |
CN110308938A (zh) * | 2019-07-01 | 2019-10-08 | 青岛海信传媒网络技术有限公司 | 插拔外设事件的管理方法和装置 |
CN110308938B (zh) * | 2019-07-01 | 2022-03-22 | 青岛海信传媒网络技术有限公司 | 插拔外设事件的管理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103019619B (zh) | 2016-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101286086B (zh) | 硬盘掉电保护方法、装置以及硬盘和硬盘掉电保护系统 | |
US8166221B2 (en) | Low-power USB superspeed device with 8-bit payload and 9-bit frame NRZI encoding for replacing 8/10-bit encoding | |
US9116694B2 (en) | Efficient low power exit sequence for peripheral devices | |
US20110239009A1 (en) | Storage device | |
KR101134069B1 (ko) | 멀티 레벨 raid 구조를 위한 하이브리드 저장 시스템 | |
CN103034603A (zh) | 多通道闪存卡控制装置及其控制方法 | |
CN101416137A (zh) | 具有不一致帧速的多个usb控制器的功率优化帧同步 | |
US20150109859A1 (en) | Electronic device with solid state drive and associated control method | |
EP1496436B1 (en) | Method and apparatus for autoreset of a usb smart card device in a mute mode | |
CN103019619A (zh) | 一种磁盘插拔控制方法及装置 | |
CN103389948A (zh) | 存储器管理装置和方法以及电子设备 | |
CN104731746A (zh) | 设备控制器装置 | |
KR20100036528A (ko) | 스토리지의 레이드 시스템 | |
CN103513933A (zh) | 有源线缆管理 | |
CN107844165A (zh) | 硬盘热插拔实现装置 | |
CN102646088A (zh) | 外接式桥接系统 | |
CN1890620A (zh) | 具有改进型通讯路径和安全功能的Express Card电源开关装置 | |
CN102385562A (zh) | 计算机和数据交互方法 | |
JP6508912B2 (ja) | ストレージシステム、ストレージ装置、及びストレージシステムの非信号分析方法 | |
KR20120012950A (ko) | 하이브리드 raid 컨트롤러 | |
CN103106160B (zh) | 机载环境sata总线存储控制系统及其控制方法 | |
US20050010831A1 (en) | Method and apparatus of automatic power management control for Serial ATA interface utilizing a combination of IOP control and specialized hardware control | |
CN202720628U (zh) | 一种基于固态硬盘的高速存储系统 | |
CN206331414U (zh) | 一种固态硬盘 | |
KR20130021339A (ko) | 반도체 저장 장치를 위한 네트워크 사용 가능 raid 컨트롤러 |
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 |