硬盘驱动器设计系统及其设计方法

文档序号:6779017阅读:278来源:国知局

专利名称::硬盘驱动器设计系统及其设计方法
技术领域
:本发明涉及硬盘驱动器(HDD),更具体地说,涉及这种HDD使用的装置和方法。
背景技术
:总所周知,多种存储设备(例如磁盘驱动器或者HDD)如磁盘驱动器可直接地或者间接地用于主机设备的数据存储,例如通过网络如存储区域网(SAN)或者网络附加存储提供数据存储。主机设备通常包括独立的计算机系统如桌面型或者膝上型计算机、企业存储设备如伺服器、存储阵列如独立磁盘冗余(RAID)阵列、存储路由设备、存储交换器和存储导向器以及其他消费设备如视频游戏系统和数字视频刻录机。这些设备以成本有效的方式提供高的存储能力。在这种存储设备中的设计中,测试各种组件和/或其中的功能模块是极具挑战和难度的。例如,一些现有的技术包括使用某些类型的任意波形产生器(AWG)来提供一定的信道给HDD中的各种组件和/或功能模块。这种AWG技术的一位领跑者是Tektronix,Tektronix⑧制造了各种用于设计和开发HDD的AWG。但是,这些AWG通常非常昂贵,并且具有本领域技术人员所知晓的一些性能限制(例如,有限的存储量、仅仅聚焦在读通道的功能性等)。本领域一直都需要一种更好的能够更高效、更先进的、更有效的设计存储设备的方法。
发明内容本发明涉及一种装置和操作方法,后文的、具体实施和权利要求将进行进一步的描述。根据本发明的一方面,本发明提供一种硬盘驱动器(HDD)设计系统,所述系统包括虚拟硬盘总成(VirtualHardDiskAssembly,縮写为VHDA),用于模拟硬盘驱动器系统内存储媒介、主轴马达和臂中至少一者的操作;读通道模块,用于模拟所述硬盘驱动器系统内的读通道的操作;控制器模块,用于模拟所述硬盘驱动器系统内的控制器的操作;伺服定位模块,用于模拟所述硬盘驱动器系统内的伺服定位系统的操作;以及用户接口,允许修改所述硬盘驱动器设计系统内的至少一个操作参数。优选地,所述硬盘驱动器设计系统实时地生成伺服定位系统数据。优选地,所述读通道模块和控制器模块的至少一者至少部分地通过集成电路实现在所述硬盘驱动器设计系统中。优选地,所述虚拟硬盘总成、读通道模块、控制器模块和伺服定位模块中的至少一者通过使用现场可编程门阵列(FPGA)在所述硬盘驱动器设计系统中进行模拟。优选地所述读通道模实现为所述硬盘驱动器设计系统中的读通道集成电路;所述伺服定位模块实现为所述硬盘驱动器设计系统中的真实伺服定位系统。优选地所述读通道模块实现为所述硬盘驱动器设计系统中的读通道集成电路;所述控制器模块实现为所述硬盘驱动器设计系统中的控制器集成电路;以及所述伺服定位模块实现为所述硬盘驱动器设计系统中的真实伺服定位模块。优选地,所述硬盘驱动设计系统包括有存储器缓存,所述存储器缓存存储由所述存储媒介、主轴马达和臂中的至少一者产生的仿真数据。优选地之前,下一个显示信息50开始逐渐地淡入,从而以部分重叠的方式执行当前显示信息50的淡出和下一个显示信息51的淡入。虽然笫三显示信息改变方法采用与用于第二显示信息改变方法的那些相同的第一显示消失时间DOT1和第一显示出现时间DIT1,但是第三方法也采用改变编辑功能。由此,在第三方法中的称为信息改变时间DSCT2的在改变请求时间tl和完全实现下一个显示信息的正常显示时的时间U2(t12称为显示出现完成时间)之间的时间间隔比在第一显示信息改变方法中的信息改变时间DSCT1短。根据图10D所示的第四显示信息改变方法,从改变请求时间tl起开始,在比第一显示消失时间DOT1长的预定的第二显示消失时间DOT2内逐渐地淡出当前显示信息50。从完全淡出当前显示信息50的时间t13(U3称为显示消失完成时间)起开始,在第一淡入时间DIT1内逐渐地淡入下一个显示信息51。虽然通过第四显示信息改变方法在比第一显示消失时间DOT1长的第二显示消失时间DOT2内淡出当前显示信息50,但是,称为信息改变时间DSCT3的在改变请求时间tl和完全实现下一个显示信息的正常显示时的时间t14(tl4称为显示出现完成时间)之间的时间间隔等于上述的第一淡出再现时间FOT1,或者示例地比上述的第一淡出再现时间FOTl短。虽然图10E所示的第五显示信息改变方法采用与用于第四显示信息改变方法的那些相同的第二显示消失时间DOT2和第一显示出现时间DIT1,但是,第五方法也采用与用于第三显示信息改变方法的那些相同的改变编辑功能。由此,在第五方法中的称为信息改变时间DSCT4的在改变请求时间tl和完全实现下一个显示信息的正常显示时的时间t15(t15称为显示出现完成时间)之间的时间间隔比在第四显示信息改变方法中的信息改变时间DSCT3短。根据第一显示信息改变方法,如果使用选择屏幕20表示当前再现音乐数据项Dl和下一个音乐数据项Dl二者,则通过下述两种方法中的一种方法用下一个显示信息51替代当前显示信息50:改变整个显示屏幕20;或者,在同一选择屏幕上用下一个显示信息51单独服定位系统。优选地,所述用户接口包括用于控制和监视所述虚拟硬盘总成、所述读通道模块、所述控制模块和所述伺服定位模块中至少一者的操作的计算机。优选地,所述读通道模块、控制器模块和伺服定位模块实现为片载系统(soc)模块。根据本发明的另一方面,本发明提供一种设计硬盘驱动器系统的方法,所述方法包括模拟硬盘驱动器系统内的存储媒介、主轴马达和臂中至少一者的操作;模拟所述硬盘驱动器系统内的读通道的操作;模拟所述硬盘驱动器系统内的控制器的操作;模拟所述硬盘驱动器系统内的伺服定位系统的操作;存储在模拟所述硬盘驱动器系统内的存储媒介、主轴马达和臂中至少一者、所述读通道模块、所述控制器模块时所产生的仿真数据;以及通过用户接口控制所述硬盘驱动器系统内的至少一个操作参数。优选地,所述方法还包括实时地生成伺服定位系统数据。优选地存储在模拟所述硬盘驱动器系统内的存储媒介、主轴马达和臂中至少一者、所述读通道模块、所述控制器模块时所产生的仿真数据通过使用存储器缓存来实现;以及所述存储器缓存存储至少1Gb的仿真数据。优选地使用读通道集成电路来模拟所述读通道的操作;使用控制器集成电路来模拟所述控制器的操作。从以下的描述和附图中,可以得到对本发明的各种优点、各个方面、创新特征、及其实施例细节的更深入的理解。图1是存储盘驱动器单元的一个实施例的示意图2是包括有存储盘控制器的装置的一个实施例的示意图3A是手持音频单元的一个实施例的示意图3B是计算机的一个实施例的示意图3C是无线通信设备的一个实施例的示意图3D是个人数字助理(PDA)的一个实施例的示意图3E是膝上型计算机的一个实施例的示意图4是包括有硬盘驱动器(HDD)的系统的一个实施例的示意图5是HDD设计系统的一个实施例的示意图6是包括有虚拟硬盘驱动器的HDD系统的一个实施例的示意图7是HDD设计系统的另一个实施例的示意图8是读和伺服事件信号的一个实施例的示意图9是分别在磁道模式和寻道模式运行时使用的信号的示意图IO是磁脉冲产生的各种巻积信号的示意图11是基于阶跃响应的架构的示意图12是基于脉冲响应的架构的示意图13是噪音和失真基本型的示意图14是跃迁(transition)媒介噪声的第一模型的示意图15是跃迁媒介噪声的第二模型的示意图16是MRA(抗磁非对称)的一个实施例的示意图;图17是热粗糙(thermalasperity)的一个实施例的示意图;图18是前置放大器失真的一个实施例的示意图19是DAC/FIR(数模转换器/有限脉冲响应滤波器)架构的一个实施例的示意图20是FIR阶跃响应架构的一个实施例的示意图;图21是FIR脉冲响应架构的一个实施例的示意图;图22是电阻器网络架构的一个实施例的示意图23是通过阶跃(跃迁)响应或者脉冲响应对输出进行整形的方法的示意图24是FIR结合DAC的一个实施例的示意图25是适用于使用LMR(纵向磁记录)的HDD系统的基于LUT(查找表)的实现的一个实施例的示意图26、27和28分别是适用于LMR(如图25所示)的LUT内容的示意图29是适用于使用PMR(垂直磁记录)的HDD系统的基于LUT(査找表)的实现的一个实施例的示意图30、31和32分别是适用于PMR(如图29所示)的LUT内容的示意图33是电阻网络方法的一个实施例的示意图34是电阻网络实现的实施例(变形1和变形2)的示意图35是结合现场可编程门阵列(FPGA)的电阻网络的实现的示意图36是使用LMR的HDD系统的模拟巻积的示意图37和图38分别是分解输入流的示意图39是模拟跃迁响应生成器和加法器的一个实施例的示意图40是图39的模拟跃迁响应生成器和加法器的测试结果的示意图41是图39的模拟跃迁响应生成器和加法器的Spice模拟的示意图42是分解后的上升和下降相关性的示意图,该示意图是图41所示的信号跃迁的放大版;图43是图39所示的跃迁响应生成器和加法器的测试结果的另一个实施例的示意图44是设计HDD系统的方法的一个实施例的流程图。具体实施例方式图1示出了存储盘驱动器单元100。具体地,存储盘驱动器单元100包括存储盘102,其可由伺服马达(未示出)以一定的速率如3600RPM(转每分)、4200RPM、4800RPM、5400RPM、7200RPM、10000RPM、15000RPM的速率旋转。但是,根据主机设备的特定应用和具体实现,也可以使用大于或者小于它们的速率。在一个可能的实施例中,存储盘102是磁盘,在一些磁性媒介上以磁场的变化来存储信息。这种媒介可以是刚性的或者非刚性的、可移动的或者不可移动的,由磁性材料组成或者涂覆有磁性材料。存储盘驱动器单元100还包括一个或多个读/写头104,读/写头104连接到臂106,臂106由存储盘102表面上的致动器108移动,包括平移、旋转及其组合。存储盘驱动器单元100还包括有存储盘控制器130,其用于控制驱动器的读写操作,控制伺服马达的速度以及致动器108的操作,以及提供与主机设备的接口。图2是包括有存储盘控制器130的装置200的示意图。具体地,存储盘控制器130包括有读/写通道140,用于通过读/写头104从存储盘102读取数据和向存储盘102写入数据。还包括有磁盘格式器125,其用于控制数据的格式化,以及提供控制从存储盘102读取或者写入到存储盘102的数据流的时钟信号和其他定时信号。伺服格式器120基于从存储盘102读取的伺服控制数据产生时钟信号和其他定时信号。设备控制器105控制驱动器设备109例如致动器108和伺服马达等的操作。主机接口150接收来自主机设备50的读和写指令,并根据主机接口协议传输从存储盘102读取的数据以及其他控制信息。在一个实施例中,主机接口协议包括SCSI、SATA、增强集成设备驱动(EIDE),或者可用于此目的的任何其它的开放或专有的主机接口协议。存储盘控制器130还包括处理模块132和存储模块134。处理模块132可使用一个或多个微处理器、微控制器、数字信号处理器、微计算机、中央处理单元、现场可编程门阵列、可编程逻辑设备、状态机、逻辑电路、模拟电路、数字电路和/或任何基于存储在存储模块134中的操作指令处理信号(模拟的和/或数字的)的器件。使用两个或多个器件实现处理模块132时,每个器件可执行相同的步骤、处理或者功能,以提供容错或冗余。或者,处理模块132执行的功能、步骤和过程可分割到不同的器件来执行,以提供更大的计算速度和/或效率。存储模块134可以是单个存储设备或者多个存储设备。这种存储设备可以是只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、闪存、高速缓存和/或存储数字信息的任何设备。要注意,在处理模块132通过状态机、模拟电路、数字电路和/或逻辑电路实现它的一个或者多个功能时,存储着对应的操作指令的存储器模块134可以嵌入到、或者外接到包含所述状态机、模拟电路、数字电路和/或逻辑电路的电路。还要注意,存储器模块134可以存储与本发明所述的一个或多个步骤、过程、方法和/或功能对应的可操作指令,而处理模块132可以执行这些指令。存储盘控制器130包括多个模块,具体地,包括设备控制器105、处理模块132、存储器模块134、读/写通道140、存储盘格式器125、伺服格式器120和主机接口150,这些部件通过总线136和137互连。这些模块中,每个模块都实现为硬件、固件、软件及其组合。虽然图2所示的特定总线结构具有总线136和137,但是包括单个总线架构或者包括有额外的数据总线以及连接性如各种模块之间的连接的特定总线结构,也有可用于实现本发明的一些实施例的功能和特征。在本发明的一个实施例中,存储盘控制器130的一个或多个模块可实现为片载系统(SoC)集成电路的一部分。在一个实施例中,该SoC集成电路包括数字部分和模拟部分,数字部分可包括有附加的模块如协议转换器、线性分组码编码和解码模块等,模拟部分包括设备控制器105和可选的附加模块,例如电源等。在另一个实施例中,以多个集成电路器件来实现存储盘控制器130的各种功能和特征,这些集成电路器件通信并组合以执行存储盘控制器130的功能。制造驱动器单元100时,存储盘格式器125沿着存储盘102上以等半径分布的对应多个伺服地址标记写入多个伺服楔。定时产生器使用伺服地址标记来触发通过读/写头104访问存储盘102的媒介时所使用的各种事件的"起始时间"。图3A是手持音频单元51的示意图。具体地,存储盘驱动器单元100可应用到手持音频单元51中。在一个可能的实施例中,存储盘驱动器单元IOO包括小外形规格磁硬盘,其存储盘102具有1.8"或者更小的直径,以组合到或者用于手持音频单元41中以存储音频内容如运动图像专家组(MPEG)音频层3(MP3)文件或者视窗媒体架构(WMA)文件,视频内容如用户播放的MPEG4文件和/或以数字格式存储的任何其他类型的信息。图3B是计算机52的实施例。具体地,存储盘驱动单元100可应用到计算机52中。在一个可能的实施例中,存储盘驱动器单元100包括小外形规格磁硬盘,其存储盘102具有1.8"或者更小的、2.5"或者3.5"甚至更大的驱动器以满足应用,如企业存储应用。存储盘驱动器100可结合到或者由计算机52使用,以存储以数字形式的任何类型的信息。计算机52可以是桌上型计算机、企业存储设备例如服务器、附加到存储器阵列如独立磁盘冗余(RAID)阵列的主机、存储路由器、边缘路由器、存储交换器和/存储导向器。图3C是无线通信设备53的实施例。具体地,存储盘驱动器单元100可应用到无线通信设备53中。在一个可能的实施例中,存储盘驱动器单元100包括小外形规格的磁硬盘,其存储盘102具有1.8"或者更小的尺寸,以结合到或者由无线通信设备53使用,以存储音频内容如运动图像专家组(MPEG)音频层3(MP3)文件或者视窗媒体架构(WMA)文件,JPEG(运动图像专家组)文件、位图文件和由集成的相机捕获的其他图片格式以及下载到无线通信设备53的图片文件、email、网页信息和从因特网下载的其他信息、地址簿信息和/或以数字形式存储的任何类型的信息。在一个可能的实施例中,无线通信设备53能够通过无线电话网络例如蜂窝网、个人通信服务(PCS)、通用分组无线业务(GPRS)、全球移动通信系统(GSM)以及集成数字增强网络(iDEN)或者其他的能够发送和接收电话呼叫的无线通信网络进行通信。另外,无线通信设备53能够通过因特网访问email,存储内容、访问网站,提供流音频和/或视频节目。在这方面,无线通信设备53能够进行和接收电话呼叫、文字消息如email、短信服务(SMS)消息、寻呼和其他可包括附件如文档、音频文件、视频文件、图像和其他图形的数据消息。图3D是个人数字助理(PDA)54的一个实施例。具体地,存储盘驱动器单元100包括小外形规格的磁硬盘,其存储盘102具有1.8"或者更小的尺寸,以结合到或者由PDA54使用,以存储音频内容如运动图像专家组(MPEG)音频层3(MP3)文件或者视窗媒体架构(WMA)文件,JPEG(运动图像专家组)文件、位图文件和由集成的相机捕获的其他图片格式以及下载到无线通信设备53的图片文件、email、网页信息和从因特网下载的其他信息、地址簿信息和/或以数字形式存储的任何类型的信息。图3E是膝上型计算机55的实施例。具体地,存储盘驱动器单元100可应用到膝上型计算机55总。在一个实施例中,存储盘驱动器100包括小外形规格的磁硬盘,其存储盘102具有1.8"或者更小的、2.5"的驱动器,以结合到或者由膝上型计算机55使用,以存储以数字形式存储的任何类型的信息。上面描述了HDD的各个实施例以及它们的应用,但是要注意,这些HDD和HDD系统可用到其它的各种实施例中。但是,不管HDD应用到哪个特定实施例,或者如何为特定的应用或系统设计HDD,都需要不断地设计这种HDD。本说明书将描述一种虚拟硬盘驱动器的各个实施例,它能够更快地设计、研发和测试各种HDD系统。在某些实施例中,实际的集成电路或者其他组件可真实地插入到虚拟环境中。使用这种功能,可使用电路板、数字电路如FPGA和其他仿真手段来仿真一些组件(例如,盘头组件),甚至可以通过使用真实的集成电路和/或其他硬件组件在虚拟硬盘驱动器中实现其他的一些组件(例如,读通道)。从这点而言,可以仿真出一个作为真实的/模拟的HDD系统的混合体(也就是说,一些组件是真实的,一些是模拟的)的虚拟硬盘驱动器。被视为测试环境的虚拟硬盘驱动器能够测试在不同时间可用的各个组件。例如,在开发HDD系统时,会使用多个集成电路和/或组件,可在每个集成电路和/或组件可用时对其进行测试。在任何时刻,都可对虚拟硬盘驱动器中的真实物理组件进行测试,而该虚拟硬盘驱动中的其他组件则是仿真的或模拟的。虚拟硬盘驱动器架构可应用到广泛的领域。例如,为监控和测试而分配的存储量可以明显超出了现有测试系统中使用的量。例如,在一些实施例中,1G比特(1GB)缓存可专用于收集特定类型的信息,包括数据信息。另外,虚拟硬盘驱动器中可以使用无限量的伺服信息,因为这些伺服信息都是立即实时产生的。就是说,因为伺服信息是实时产生的,所以无需缓存来处理伺服信息,因而可以使用任何想要的伺服信息量。在一些实施例中,因为在虚拟硬盘驱动器中读取硬盘,所以可以收集与每个扇区对应的信息,以及可以通过使用虚拟硬盘驱动器内的FPGA实时地收集伺服信息。一般而言,HDD包括具有磁性介质(一个或多个盘片)的盘头组件(HAD)、具有进行读写的磁头的臂、前置放大器、驱动臂的马达(也称为音圈马达)、主轴马达(用于旋转媒介)、具有读通道功能模块(或者集成电路)、控制功能模块(或者集成电路)、马达控制功能模块(或者集成电路)的印刷电路板。较新的设备将读通道和控制器合并到单个片载系统(SoC)IC中。为了开发HDD系统,大多数组件需要运行到一定的程度。其中一个关键系统是伺服环控制系统,其保持读/写头与媒介同步,以寻找磁道和沿着磁道读/写磁道。如果这些组件中的任何一个组件没有工作,读/头会碰撞并损坏存储盘。因此,行业内的研发者通常把在先的HDD系统作为新HDD系统的基础,即使如此,在研发过程中新设计的HDD还是经常受到损坏。通常,可使用任意波形生成器(AWG)测试读通道器件,在模拟HAD或者数字HDA中测试一些控制器软件。本发明的虚拟硬盘驱动器提供一种完全虚拟的硬盘驱动器(有时候可称之为"Vdrive",即V驱动器),以对各种组件进行早期的开发,即使在整个系统都没有进行工作的情况下。虚拟硬盘驱动器能够在接收到硅的几个月之前、或者在HAD抵达的几个月之前对HDD系统的研发提供帮助。虚拟硬盘驱动器向媒体虚拟系统提供完整的主机,允许用户接口(例如PC)在HDD接口总线(例如,CE-ATA或者CF+)上与虚拟硬盘驱动器进行会话。这便可以实现主机软件的开发。另外,虚拟硬盘驱动器提供与IC开发环境直接相关的模拟环境。虚拟硬盘驱动器比现有技术中常用的AGW能提供更大量的实时的和非实时的数据。这便能进行要求多个磁道的数据的软件开发。本发明与AGW的不同在于下列各项的"大规模"本发明的虚拟硬盘驱动器提供1、大规模伺服的实现;2、大规模的包括微振动的伺服的实现;3、大规模主轴的实现;4、大规模的具有时钟变化的主轴的实现;5、大规模致动器的实现;6、大规模的具有共振的致动器的实现;7、大规模的具有脉冲波形的模拟输出的实现;8、大规模的具有脉冲波形的模拟输出的实现,其可以是两种不同脉冲的百分比混合;9、大规模的具有符号间干扰(ISI)、噪声和失真的模拟输出的实现;10、大规模的ECC和反向ECC的实现。该虚拟硬盘驱动器也提供独立的控制软件,它能够预加载或者读取信息磁道。一般而言,虚拟硬盘驱动器提供非常紧凑的解决方案,不需要现有技术所要求的任何测试设备。图4示出了包括有硬盘驱动器(HDD)的系统400的实施例。系统400,以及本说明书所述的其他实施例,可看作是描述HDD设计系统中使用的基本组件。HDD内的各种组件包括真实的存储盘(其包括安装在主轴上的多个磁记录层(例如,盘片))。SPM(主轴马达)411由主轴控制马达412引导以旋转盘片。VCM(语音控制马达)413,由伺服定位系统423引导,用于将读/写头定位到媒介的各个位置上。根据臂所在的媒介的真实位置,信息被写入或从媒介中读出,并传送通过读通道块或模块421,由该模块421还引导伺服定位系统423据此移动盘头组件。VHDA(虚拟硬盘驱动器总成)410包括语音控制马达413、主轴马达411、前置放大器414和媒介等。控制器功能模块422连接到读通道功能模块421,读通道功能模块421连接到前置放大器414,控制器功能模块422也连接到接口适配器430。该接口适配器可以是计算机(例如,个人计算机或者其他类型的计算机,用附图标记431表示)的接口适配器,允许设计者在测试过程中控制和引导虚拟硬盘驱动器的各种组件。该接口适配器还可包括有存储器缓存432,用于存储与系统400内的任何组件对应的仿真数据,系统400可看作是HDD设计系统。在一些实施例中,存储器缓存432可以很大,可以大到lG不甚至大于lGb,比任何的现有技术能存储更多的仿真数据。在一些实施例中,读通道功能模块421、控制器功能模块422、伺服定位系统423都结合到单个集成电路中,例如可使用SoC(片载系统)420来实现。本实施例的各个组件中的一个或多个可集成在一起,这不脱离本发明的范围和实质。在本实施例中,VHDA410模拟HDD系统内的存储媒介、主轴马达、臂三者中至少之一的操作。读通道模块421模拟HDD系统内的读通道的操作。控制器模块422模拟HDD系统内的控制器的操作。伺服定位模块423能够模拟HDD系统内的伺服定位系统的操作。用户接口(如接口适配器430)能够允许对HDD设计系统内的至少一个操作参数进行修改。伺服定位模块423能够实时产生伺服定位数据,因而存储器缓存对HDD设计系统内能够使用的伺服定位数据的量没有任何限制。图5是HDD设计系统500的实施例。整个真实的HDD系统可使用HDD设计系统500内的虚拟硬盘驱动器和其他组件来模拟。图5所示的系统500是对前一幅图的系统的模拟,HDD设计系统500内的每个组件都被仿真/模拟在虚拟硬盘驱动器501中。该VHDA(虚拟硬盘总成)可实现为DHDA(数字硬盘总成),如果愿意,其可以包括数字电路,该数字电路包括FPGA或者其他组件。例如,虚拟硬盘总成、读通道模块521、控制器模块522、伺服定位系统523中的任何一者或者多者都可通过一个或多个FPGA来实现。VHDA(HDDA)的两个可能实施例其中之一可被实现(用附图标记510a和510b表示)。如果愿意,读通道功能模块521和伺服定位系统523可包括在VHDA(DHDA)510b中(实施例2),或者位于VHDA(DHDA)510a之外(实施例1)。同样应该注意,虚拟硬盘驱动器能够允许一个或多个芯片(即集成电路)和/或组件通过物理连接的方式插入其中。例如,通道模块521或者控制器模块522两者中的任意一者可全部或部分使用集成电路实现。这允许HDD设计系统500内的一些组件可以是真实的,而其他组件是虚拟的。这允许进行范围广的测试,即,HDD设计系统500中可使用真实组件和虚拟组件的任何组合。这使得本发明是比任何的现有技术更好的测试方法。通过使用虚拟硬盘驱动器501及其各种组件提供仿真/模拟HDD系统内每个组件的能力,开发者和设计者能够得到更准确更完整的分析数据,以用于开发整个HDD系统。图6是HDD系统的一个实施例600,其包括虚拟硬盘驱动器。HDD设计系统600包括用户接口(例如计算机,包括PC(个人计算机)等)、HDC(硬盘控制器)620(如控制器功能模块)和DHDA(数字硬盘总成)630。HDC620可通过硬件加速器621、一个或多个电路板622、一个或多个FPGA623、一个或多个集成电路624和/或一个或多个其他组件来实现。用户接口610允许处理和将各种信号提供给HDD设计系统内的各种组件,以及提供来自各种组件的各种信号,同时监控各种组件的性能。图7是HDD设计系统的另一个实施例700。HDD设计系统700包括虚拟硬盘驱动器701,其包括DHDA710,DHDA710包括读扇区引擎/存储器711和伺服楔引擎712。如上面实施例中所述,虚拟硬盘驱动器701的与伺服有关的信息(例如,仿真数据)是实时产生的,因而能够无限制地使用这种信息。MagIC功能模块(磁性逆通道功能模块)720允许在HDD设计系统中放置真实的集成电路和/或组件。例如,真实的集成电路可应用到MagIC功能模块720中,以实现更完整和更准确的测试和分析。如果需要,可在DHDA710和MaglC功能模块720之间提供控制线719,以实现它们之间的通信和控制。MagIC功能模块720能够通过脉冲产生器721、失真产生器722、噪声产生器723、NRZ(不归零)编码器724、CDR功能模块726以及DAC(数模转换器)725来执行各种功能。读和写操作(分别表示为Rdx/Rdy731和Wdx/Wdy732)在分别由标号730和740表示的Soc/VHDC与MagIC功能模块720之间执行。主机750也与VHDC740通信。主机750可以是接口适配器,其可以是计算机(例如,个人计算机或者其它类型的计算机),允许设计者在HDD设计系统时进行测试时控制和引导虚拟硬盘驱动器的各个组件。主机750也包括有存储器缓存432,用于存储与HDD设计系统700内的任意组件对应的仿真数据。图8是读事件信号和伺服事件信号800的一个实施例。在虚拟硬盘驱动器环境中进行准确的和完整的测试的最重要的元素之一,就是所使用的数字信号。换言之,如果在虚拟硬盘驱动器使用的数字信号是不准确的,那么,建模、仿真、测试等都不会准确。下面提供一些与存储媒介的磁道的格式有关的背景。每个磁道包括扇区,扇区内散布有伺服楔。每个读扇区都具有如图8顶部所示的格式。每个伺服楔包括如图8底部所示的格式,每个伺服楔止于RRO(可重复偏离,repeatablerunout)字段。图9分别是以"在道(on-track)"和"寻道(seek)"模式操作时采用的信号的示意图。当运行在在道模式时,读扇区后跟随着伺服楔,而伺服楔后又跟随着多个读扇区,如此循环。以寻道模式运行时,特别地使用伺服楔来寻找想要的位置。每个伺服楔包括导码、SAM(伺服地址标记)和格雷码(graycode)字段。图IO是磁脉冲产生的各种巻积信号的示意图。如上所述,在HDD系统中准确地产生信号,包括缺陷、失真和噪音,对保证HDD系统的准确仿真极为重要。下面将介绍产生这种用在磁通道的信号的各种方法以及对这些信号所执行的任何巻积。所使用的至少有3个信号,包括洛伦兹(lorentzian)阶跃响应、高斯(Gaussian)阶跃响应和误差函数(阶跃响应)。对于在PMR(垂直磁记录)或者LMR(纵向磁记录)环境内进行正确的仿真,需要合适地生成在这些系统内使用的信号。这三种输入信号均可以直接使用(例如,可在使用LMR的HDD系统中直接使用lorentzian阶跃响应)。但是,通常将这些信号进行合适的巻积之后的组合,能够提供更好的和更准确的信号仿真。例如,LorGaussian阶跃响应是lorentzian阶跃响应和高斯阶跃响应两者都经过某些合适的縮放之后的组合。另外,可获得LorGaussian脉冲响应(双位,Dibit)以提供更准确的HDD系统通道估计。类似地,可在使用LMR的HDD系统中获得Lorentzian脉冲响应(双位)。在使用PMR的HDD系统中,可以使用误差函数脉冲响应(双位)。可在虚拟硬盘驱动器中使用任何的这些响应(双位),以进行比任何的现有技术更加完整地和准确地测试和HDD系统仿真。图11示出了基于阶跃响应的架构的一个实施例1100。图12是基于脉冲响应的架构的一个实施例1200。比较图11和图12可以看到,在虚拟硬盘驱动器中的包含阶跃响应或者脉冲响应的特定实施例中,可以选择6个不同的信号。图13是噪声和失真基本模型的一个实施例1300。产生的编码信号提供给通道模型(h(t)),接着在其中加入各种噪声成分和失真成分。这些噪声和失真成分可对应于读和写操作所产生的噪声和失真,以及仅仅由读操作所产生的噪声和失真。图14所示为跃迁媒介噪声的第一模型1400,图15所示为跃迁媒介噪声的第二模型1500。包含跃迁噪音的信号是这些模型中每个模型的输出。图16所示为MRA(抗磁不对称)的一个实施例1600,图17所示为热粗糙(thermalasperity)的一个实施例1700,图18所示为前置放大器失真1800。以上描述的各个模型均,可用于使用虚拟硬盘驱动器模拟的HDD系统运行过程中的精确仿真和各种组件的模拟,并达到他们的效果。如上所述,使用虚拟硬盘驱动器进行准确的测试的一个关键部分是准确地产生通常在HDD系统中看到的和使用的信号。下面将描述各种巻积架构,包括数字FIR(有限脉冲响应)架构、模拟FIR架构和电阻网络。图19是DAC/FIR(数模转换器/有限脉冲响应滤波器)架构的一个实施例的示意图。输入比特流被提供给多个延迟阶。真实的输入比特流,以及来自级联延迟阶的每个输出,都提供到对应的乘法器中。每个乘法器的值都是可编程的,可使用多个可编程寄存器进行编程。最终的输出是模拟输出信号。图20所示为FIR阶跃响应架构2000。图21所示位FIR脉冲响应架构2100。图20和图21都是图19的实施例的变形。可编程寄存器的值可看作是一个表格,该表格用于产生虚拟硬盘驱动器所用的信号。根据是想要LMR(纵向磁记录)还是PMR(垂直磁记录),可适当地修改可编程寄存器内的值。图22所示为电阻网络架构2200。可使用包含多个延迟支线的模拟延迟线,但是这里使用电阻网络来代替,以产生加和在一起的信号,从而产生该模拟输出信号。图23是通过阶跃(跃迁)响应或者脉冲响应对输出进行整形的方法2300的示意图。两者在需要时都适用于LMR或者PMR。将二进制序列提供给FIR(巻积计算器),以产生与HDD系统的类型(例如,PMR或者LMR)相对应的巻积信号。图24是结合有DAC的FIR实现2400的示意图。其可使用多个多路转换器(MUX),多路转换器的最终输出提供给DAC(数模转换器),从而产生输出模拟信号。关于MagIC功能模块的各种细节,请参考上面的描述,后文也会提到。在一些实施例中,MagIC的性能是提供50Mbps到600Mpbs的频率范围,100mV(毫伏)到IV的动态电压范围,且NRZ信号的输入序列具有12比特的并行符号。PMR或者LMR记录类型都可适用。元件的跃迁时间可以调整(例如,从10毫秒到20毫秒),以控制引入的ISI(符号间干扰)的量。此外,MagIC的性能还可以提供媒介噪声和热粗糙。图25是基于LUT(査找表)的实现2500,其可用在使用LMR(纵向磁记录)的HDD系统中。在此使用具有40支路(tap)(因为采用4x的过采样)的FIR,但是在任何时刻都只有IO个支路是有效的。如果需要,输出只能有4x1024个值。图26、图27以及图28分别示出了用于LMR(如图25所示)的LUT内容2600、2700和2800。图29是基于LUT(查找表)的实现的一个实施例,用于使用PMR(垂直磁记录)的HDD系统。同样,可使用具有40支路(因为4x的过采样)的FIR,但是在这个实施例中,所有的比特都是有效的。如果愿意,输出可以仅仅具有4x2048个值。图30、图31和图32分别是用于LMR(如图29所示)的LUT内容2600、2700和2800。图33是电阻网络方法的一个实施例3300。如图所示,该系统的基本构造模块是具有多个支路、多个加权寄存器和TIA(跨阻放大器)的延迟线,由其来提供输出信号。图34所示为电阻网络3400(变形1和变形2)。与变形1相比,变形2允许重新使用单一的多个加权寄存器。图35是电阻网络实现的一个实施例3500,其结合有现场可编程门阵列(FPGA)。FPGA的输入由多个寄存器提供,每个寄存器提供给级联的多个TIA,最终的输出是来自最后的TIA的输出。图36是用于采用LMR的HDD系统的模拟巻积的实施例3600的示意图。在实施例3600中,数据流中的每个跃迁(用红色表示)都启动独立的具有特定跃迁反应(上升时间或者下降时间)和可变脉冲持续时间的"模拟跃迁响应产生器"。图37和图38所示分别是输入流的分解实施例3700和3800。图39是模拟跃迁响应生成器和加法器的实施例3900的示意图。FPGA(分解器)提供大量的输出信号,每个信号都经过类似地对应的网络,包括二极管网络,FPGA本身具有两个馈送到二极管网络的电流源,二极管网络的输出被修改以调节虚拟硬盘驱动器内的跃迁响应时间。二极管网络的输出提供给第一缓存,该第一缓存位于接地的分路电容器之间(如果愿意,相向连接两个二极管可以连接到高压)。第一缓存的输出提供给非线性组件,该非线性组件的输出经过第二缓存,然后第二缓存的输出经过电阻器连接到TIA。在一些实施例中,TIA可以是THS4304TIA,提供3GHz的操作带宽。这些类似网络都通过电阻器连接到TIA。如图所示,TIA的输出对应于图中上部所示的比特流(表示出每个跃迁)。如果愿意,可将来自FPGA的低速对称输出用作响应产生器。考虑上述的各种实施例和方法之后,可以得到本发明的一些特性。在第一实施例中,具有DAC的数字FIR可提供每秒2.3G样本的数字速度,1.15GHzLPF的模拟速度,总大小主要由采用并行FIR实现的FPGA以及DAC来控制。通过这种方法还能够实现完全可编程性。在第二实施例中,具有DAC的FIRLUT提供2.3GHz/4的比特速率(大约是575Mbps),数字速度是每秒2.3G样本,模拟速度是1.15GHzLPF。总大小主要由FPGA和DAC来控制。另外,还可以使用4X2048X12比特的LUT。本实施例也能提供完全可编程性。在第三实施例中,电阻网络可提供500Mbps/4的比特速度(大约是123Mbps),数字速度是125MHzX4相,模拟速度是2GHz(主要由TIA来控制)。总大小主要由FPGA和4X80的加权电阻器来控制。在第四实施例中,模拟巻积网络提供600Mbps的比特速率,数字速度是400MHz/4(大约是150MHz时钟),模拟速度是600Mbps/11(约等于每线55M跃迁(20纳秒的组件))。总大小主要由FPGA和IIX模拟阶跃函数生成器来控制。图40是图39的模拟跃迁响应产生器和加法器的测试结果的示意图。图40是图39中TIA输出的信号的放大版。图41是图39的模拟跃迁响应产生器和加法器的spice仿真的示意图。仿真的二极管具有5纳秒的恢复时间,真实的二极管具有大约0.1纳秒的恢复时间。在该仿真过程中,使用了理想的运算放大器,真实的运算放大器在-3db的水平(也就是3db的转角频率)具有大约3GHz的带宽。仿真的序列是10100111001011000111111。图42是分解后的上升和下降相关性的示意图,该示意图是图41所示的信号跃迁的放大版。图43是图39的跃迁响应产生器和加法器的测试结果的另一实施例的示意图。图43的下部是图中左上角区域的放大版。依据本发明各个实施例实现的虚拟硬盘驱动器提供完整的设计环境,在该设计环境中可测试HDD系统的任何组件。HDD系统中的所有真实组件都可用于该虚拟硬盘驱动器中,或者该虚拟硬盘驱动器中没有一个真实组件。由于HDD系统中的某些组件是可用的(例如,HDD系统中可用的集成电路和/或其他组件),所以,可在虚拟硬盘驱动器中实现这些集成电路和/或组件,让虚拟硬盘驱动器包括一些真实的集成电路和组件,以及一些仿真的集成电路和/或组件。这种虚拟硬盘驱动器允许在HDD系统的任何的真实硬件组件抵达的前几个月进行研发。在开发HDD系统时,这是特别有利的;这与现有的技术以及现有的HDD系统有很大的区别。在这种环境下,对这种新HDD系统内的各种子系统之间的交互不会有太多的了解,所以,在设计过程中能够提供极大的灵活性的虚拟硬盘驱动器是非常值得期待的。图44是设计HDD系统的方法4400的流程图。如步骤4410所示,方法4400包括模拟HDD系统中的存储媒介、主轴马达、臂中至少一者的操作。接着,如步骤4420所示,模拟HDD系统的读通道的操作。接着,如步骤4430所示,模拟HDD系统内的控制器的操作。此外,如步骤4440所示,该方法4440还模拟HDD系统内的伺服定位系统的运行。步骤4450中,设计HDD系统的方法4400还包括存储在上述的模拟HDD系统中存储媒介、主轴马达、臂、读通道以及控制器模块中至少一者的过程中所产生的仿真数据。如果需要,方法4400还包括实时生成伺服定位系统数据。方法4440还包括通过用户接口控制HDD设计系统中的至少一个操作参数,如步骤4460所示。以上借助于说明指定的功能和关系的方法步骤对本发明进行了描述。为了描述的方便,这些功能组成模块和方法步骤的界限和顺序在此处被专门定义。然而,只要给定的功能和关系能够适当地实现,界限和顺序的变化是允许的。任何上述变化的界限或顺序应被视为在权利要求保护的范围内。以上还借助于说明某些重要功能的功能模块对本发明进行了描述。为了描述的方便,这些功能组成模块的界限在此处被专门定义。当这些重要的功能被适当地实现时,变化其界限是允许的。类似地,流程图模块也在此处被专门定义来说明某些重要的功能,为广泛应用,流程图模块的界限和顺序可以被另外定义,只要仍能实现这些重要功能。上述功能模块、流程图功能模块的界限及顺序的变化仍应被视为在权利要求保护范围内。本领域技术人员也知悉此处所述的功能模块,和其它的说明性模块、模组和组件,可以如示例或由分立元件、特殊功能的集成电路、带有适当软件的处理器及类似的装置组合而成。此外,虽然描述细节的目的是清楚和明白上述实施例,本发明并不限于这些实施例。任何本领域技术人员知悉的、对这些特征和实施例进行各种改变或等效替换而得的技术方案,都属于本发明的保护范围。权利要求1、一种硬盘驱动器设计系统,其特征在于,所述系统包括虚拟硬盘总成,用于模拟硬盘驱动器系统内存储媒介、主轴马达和臂中至少一者的操作;读通道模块,用于模拟所述硬盘驱动器系统内的读通道的操作;控制器模块,用于模拟所述硬盘驱动器系统内的控制器的操作;伺服定位模块,用于模拟所述硬盘驱动器系统内的伺服定位系统的操作;以及用户接口,允许修改所述硬盘驱动器设计系统内的至少一个操作参数。2、根据权利要求1所述的硬盘驱动器设计系统,其特征在于,所述硬盘驱动器设计系统实时地生成伺服定位系统数据。3、根据权利要求l所述的,其特征在于,所述读通道模块和控制器模块的至少一者至少部分地通过集成电路实现在所述硬盘驱动器设计系统中。4、根据权利要求1所述的硬盘驱动器设计系统,其特征在于,所述虚拟硬盘总成、读通道模块、控制器模块和伺服定位模块中的至少一者通过使用现场可编程门阵列(FPGA)在所述硬盘驱动器设计系统中进行模拟。5、根据权利要求1所述的硬盘驱动器设计系统,其特征在于所述读通道模实现为所述硬盘驱动器设计系统中的读通道集成电路;所述伺服定位模块实现为所述硬盘驱动器设计系统中的真实伺服定位系统。6、根据权利要求l所述的,其特征在于所述读通道模块实现为所述硬盘驱动器设计系统中的读通道集成电路;所述控制器模块实现为所述硬盘驱动器设计系统中的控制器集成电路;以及所述伺服定位模块实现为所述硬盘驱动器设计系统中的真实伺服定位模块。7、一种硬盘驱动器设计系统,其特征在于,所述系统包括虚拟硬盘总成,用于模拟硬盘驱动器系统内的存储媒介、主轴马达和臂中至少一者的操作;读通道模块,用于模拟所述硬盘驱动器系统内的读通道的操作;控制器模块,用于模拟所述硬盘驱动器系统内的控制器的操作;伺服定位模块,用于模拟所述硬盘驱动器系统内的伺服定位系统的操作;以及用户接口,允许修改所述硬盘驱动器设计系统内的至少一个模拟的或真实的部件;存储器缓存,用于存储由所述虚拟硬盘总成、读通道模块和控制器模块中至少一者产生的仿真数据;其中所述读通道模块和控制器模块中的至少一者至少部分地通过集成电路实现在所述硬盘驱动器设计系统中;所述存储器缓存存储至少1Gb的仿真数据。8、根据权利要求7所述的硬盘驱动器设计系统,其特征在于,所述硬盘驱动器设计系统实时地生成伺服定位系统数据。9、一种设计硬盘驱动器系统的方法,其特征在于,所述方法包括模拟硬盘驱动器系统内的存储媒介、主轴马达和臂中至少一者的操作;模拟所述硬盘驱动器系统内的读通道的操作;模拟所述硬盘驱动器系统内的控制器的操作;模拟所述硬盘驱动器系统内的伺服定位系统的操作;存储在模拟所述硬盘驱动器系统内的存储媒介、主轴马达和臂中至少一者、所述读通道模块、所述控制器模块时所产生的仿真数据;以及通过用户接口控制所述硬盘驱动器系统内的至少一个操作参数。10、根据权利要求9所述的方法,其特征在于所述方法还包括实时地生成伺服定位系统数据。全文摘要本发明涉及虚拟硬盘驱动器架构。这种虚拟硬盘驱动器提供一种新的用于设计、开发和测试存储设备包括硬盘驱动器(HDD)的方法。虚拟硬盘驱动器架构能够实施或者模拟完整的HDD系统。该架构包括了HDD系统的所有部分(例如,包括读通道和控制器功能),以允许设计者开发和测试该系统的某些部分。在一些实施例中,使用一个或多个现场可编程门阵列(FPGA)来实现所有数字应用中的硬盘控制器。包括电路板和FPGA的各种组合可用于仿真整个HDD系统。在另一些实施例中,包括有一个或多个插槽和合适的接口,以在虚拟硬盘驱动器中测试真实的芯片。文档编号G11B5/00GK101110094SQ20071013918公开日2008年1月23日申请日期2007年7月20日优先权日2006年7月20日发明者克里斯琴·R·威赫,弗雷德里克·内诺·斯塔尔,杰伊·C·普罗诺,赛里拉·佩蒂基安,马克·戈拉尔申请人:美国博通公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1