能够自测pcie接口的存储系统及测试方法

文档序号:6402485阅读:218来源:国知局
专利名称:能够自测pcie接口的存储系统及测试方法
技术领域
本发明涉及总线测试领域,特别是涉及一种能够自测PCIE接口的存储系统及测试方法。
背景技术
存储系统是计算机中由存放程序和数据的各种存储设备、控制部件及管理信息调度的设备(硬件)和算法(软件)所组成的系统。随着互联网应用的发展,应用对存储系统的性能要求越来越高,其中外部设备互联高速总线接口(PCIE)是存储系统与外部设备进行数据交互的途径,因此PCIE接口与相关硬件的匹配度或各自的性能好坏能够反映存储系统的性能高低,因此,存储系统在设计完成后,通常要进行基于PCIE的测试。目前的测试设备主要包括:数据发生器和测试分析仪,由数据发生器向存储系统的PCIE接口产生大量数据,由测试分析仪来抓取PCIE接口的数据,再对所抓取的数据进行分析,以提供图形并茂的分析结果。上述测试设备的硬件结构复杂、价格昂贵,还需要对存储系统进行开箱测试,这使得测试过程十分复杂。对于低成本的、简化的存储系统来说,使用这类测试设备会增加存储系统的整体成本。因此,需要对现有的存储系统进行改进。

发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种能够自测PCIE接口的存储系统及测试方法,用于解决现有技术中的存储系统的测试过于复杂的问题。为实现上述目的及其他相关目的,本发明提供一种能够自测PCIE接口的存储系统,其至少包括:多个DMA内存单元,用于存储用于测试的数据;与所述DMA内存单元连接的数据处理单元,用于通过PCIE接口使所述存储系统中的存储控制单元与所述DMA内存单元进行至少一次预设数量的数据传输,并且在传输的过程中记录所产生的传输信息,并在传输完成所产生的中断或传输过程中因出现错误所产生的中断期间,将所述传输信息予以输出;测试单元,用于根据所述数据处理单元所输出的传输信息分析所述PCIE接口的至少一种性能。优选地,所述DMA内存单元为入栈循环队列,用于循环存储多个数据。优选地,所述数据处理单元用于在预设的中断产生时,将所记录的传输信息发送至所述测试单元。优选地,所述数据处理单元用于在每次传输完成后所产生的中断或传输过程中每次出现错误时所产生的中断期间,将新记录的传输信息提供给所述测试单元。优选地,所述传输信息包括:包含每个数据的数据量、传输所有数据所消耗的时间、所传输数据的数量的数据信息、和/或所述数据处理单元在传输数据的过程中出现错误的错误信息。优选地,所述数据处理单元包括:多核处理器、DMA控制器、及寄存器,其中,所述寄存器用于存储在传输数据的过程中产生的错误信息。优选地,所述PCIE接口的性能包括:PCIE接口的带宽、延时,稳定性中的至少一种。基于上述目的,本发明还提供一种测试PCIE接口性能的方法,应用于具有PCIE接口的存储系统中,所述存储系统包括=DMA内存单元、PCIE接口、以及与PCIE接口连接的存储控制单元,其至少包括:1)使所述存储控制单元与所述DMA内存单元通过PCIE接口进行至少一次预设数量的数据传输,并且在传输的过程中记录所产生的传输信息;2)在传输完成而产生的中断或传输过程中因出现错误而产生的中断期间,将所述传输信息予以保存;3)根据所保存的传输信息分析所述PCIE接口的至少一种性能。优选地,在传输完成而产生的中断或传输过程中因出现错误而产生的中断期间,将所述传输信息予以保存的步骤还包 括:在预设的中断产生时,将所记录的传输信息发予以保存的步骤。优选地,在传输完成而产生的中断或传输过程中因出现错误而产生的中断期间,将所述传输信息予以保存的步骤还包括:在每次传输完成后所产生的中断或传输过程中每次出现错误时所产生的中断期间,将新记录的传输信息予以保存的步骤。优选地,所述传输信息包括:包含每个数据的数据量、传输所有数据所消耗的时间、所传输数据的数量的数据信息、和/或所述数据处理单元在传输数据的过程中出现错误的错误信息。优选地,所述PCIE接口的性能包括:PCIE接口的带宽、延时,稳定性中的至少一种。如上所述,本发明的能够自测PCIE接口的存储系统及测试方法,具有以下有益效果:通过软件方式在PCIE接口上产生大量测试数据,较现有技术中,减少了用于数据产生的硬件设备,可有效降低测试装置的成本;同时,利用在传输完成或传输出现错误时产生的中断将所记录的传输信息输至测试单元,能够准实时地将所记录的传输信息提供给测试单元,以供测试单元及时得到测试结果;另外,在每次中断产生时发送传输信息能够有效减少如寄存器等硬件的数量,并且由于每次中断时所传输的传输信息的数据量很小,能够减少传送传输信息所消耗的时间对在整个传输过程所消耗的时间的影响,使得测试结果更为准确。


图1显示为本发明的能够自测PCIE接口的存储系统的结构示意图。图2显示为本发明的测试PCIE接口的方法的流程图。元件标号说明I存储系统11DMA内存单元12数据处理单元13测试单元14PCIE 接口15存储控制单元
S1-S3 步骤
具体实施例方式以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式
加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。请参阅图1。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。本发明提供一种能够自测PCIE接口的存储系统。所述存储系统为用于数据备份或容灾的专用信息系统,可利用高速网络进行大数据量存储信息的设备。如图1所示。所述存储系统I包括:PCIE接口 14、与所述PCIE接口连接的存储控制单元15。其中,所述存储控制单元15通常指存储控制芯片(SAS控制芯片)等,在存储系统中处于核心地位。所述存储系统I还包括:DMA内存单元11、数据处理单元12、测试单元13。所述DMA内存单元11为多个,用于存储测试数据。具体地,所述DMA内存单元11以队列或堆栈等形式存放一个或多个数据,每个数据的数据量可以相同也可以不同。优选地,所述DMA内存单元11为入栈循环队列,用于循环存储多个数据,例如,所述入栈循环队列的内存为2MB,每个数据的数据量最大限于27字节,则所述入栈循环队列能够以214为一个循环来存储所述数据。所述DMA内存单元11的数量可根据PCIE接口 14的位宽和测试的次数进行选择,例如,待测试的PCIE接口 14位宽为X8,为了满足多次传输的测试要求,所述DMA内存单元11的数量可选择64个,且每个DMA内存单元11可提供2MB内存。所述数据处理单元12与所述DMA内存单元11连接,用于通过PCIE接口 14使所述存储系统I中的存储控制单元15与所述DMA内存单元11之间进行至少一次预设数量的数据传输,并且在传输的过程中记录所产生的传输信息,并在传输完成所产生的中断或传输过程中因出现错误所产生的中断期间,将所述传输信息予以输出。其中,所述传输信息包括任何通过PCIE接口 14进行数据传输时产生的信息,其包括但不限于:包含每个数据的数据量、传输所有数据所消耗的时间、所传输数据的数量的数据信息、和/或所述数据处理单元12在传输数据的过程中出现错误的错误信息。所述数据处理单元12的硬件优选包含多核处理器、DMA控制器的电路板或芯片,所述数据处理单元12还包括寄存器。其中,所述寄存器位于所述存储控制单元15 —侧,用于存储在传输数据的过程中产生的错误信息,所述寄存器的数量可以是一个也可以是多个。具体地,所述数据处理单元12根据预设的传输次数将所述存储控制单元15通过所述PCIE接口 14传来的预设数量的数据写入至少一个所述DMA内存单元11,并记录每一次传输过程中所产生的传输信息,在一次传输完成或传输出现错误时产生中断,则所述数据处理单元12在预设的中断产生时将所记录的传输信息提供给所述测试单元13,再继续新一次传输或继续未完成的传输。其中,所述数据处理单元12与所述DMA内存单元11采用DMA方式进行读/写操作。优选地,由于读取DMA内存单元的速度快于写入DMA内存单元的速度,为了减少DMA内存单元的读写操作对PCIE接口性能测试的干扰,所述数据处理单元12从至少一个所述DMA内存单元11中读取预设数量的数据,并通过PCIE接口 14发送给存储控制单元15,并记录每一次传输过程中所产生的传输信息,以及在预设的中断产生时,将所记录的传输信息发送至所述测试单元13。例如,预设两次读取传输操作,并在第二次传输完成时输出所产生的中断期间输出所记录的传输信息,则所述数据处理单元12第一次读取传输操作为:所述数据处理单元12通过DMA方式从所连接的各DMA内存单元11中读取预设数量的数据,并将所读取的数据通过PCIE接口 14发送至所述存储控制单元15,与此同时,所述数据处理单元12记录每一个数据的数据量,以及本次传输的数据的数量等传输信息,在第一次传输完成时,产生中断,再解除中断进行第二次读取传输操作:所述数据处理单元12继续从所连接的各DMA内存单元11中读取预设数量的数据,并将所读取的数据通过PCIE接口 14发送至所述存储控制单元15,,并继续记录第二次传输过程中传输信息,在第二次传输完成时产生中断期间,将所记录的两次传输 的传输信息予以输出。更为优选地,所述数据处理单元12基于每次中断将新记录的传输信息提供给所述测试单元13。例如,所述数据处理单元12在第一次传输完成时产生第一个中断,则基于所述第一个中断将第一次传输过程中的数据的数量、每个数据的数据量、本次传输完成所花费的时间等传输信息提供给所述测试单元13,接着,所述数据处理单元12开始第二次传输,并因出现错误产生第二个中断,则基于第二个中断将第二次传输成功的数据的数量、传输成功的每个数据的数据量、及错误信息等传输信息提供给所述测试单元13。所述测试单元13用于根据所述数据处理单元12所输出的传输信息,来测试所述PCIE接口 14的至少一种性能。其中,所述PCIE接口 14的性能包括但不限于:PCIE接口的带宽、延时和稳定性等。具体地,所述测试单元13根据所接收到的各数据的数据量、所有数据的数量以及每次传输所消耗的时间来计算单位时间所传输的数据量,由此来测试PCIE接口的带宽 ’另夕卜,所述测试单元13还将所接收到的错误信息的数量与预设的阈值进行比较,当所述错误信息的数量大于阈值,则认定所述PCIE接口的不稳定。例如,所述测试单元13所接收到的传输信息为一次完整传输的记录,则根据所述传输信息进行数据量、消耗时间的计算,以得到PCIE接口 14的流量性能的测试结果。又如,所述数据处理单元12在所有数据传输完成之前的每次中断期间,将所记录的新的传输信息输至所述测试单元13,则待所有数据传输结束后,所述测试单元13根据所接收到多组传输信息中的所有数据的数据量、所有数据的数量以及每次传输所消耗的时间来计算单位时间所传输的数据量,由此来测试PCIE接口的带宽,并将所接收到的多次传输信息中的错误信息的数量与阈值进行比较,当所述错误信息的数量大于阈值,则认定所述PCIE接口的不稳定。所述存储系统I的工作过程举例如下:
所述数据处理单元12利用DMA方式从所连接的每个DMA内存单元11中读取一个数据,并将所读取的数据通过PCIE接口 14发至所述存储控制单元15,以完成一次数据传输,当本次数据传输完成或产生错误信息时,所述数据处理单元12产生中断,并基于所述中断将所记录的传输信息输至测试单元13,再继续启动新一次数据传输或继续该次数据传输,如此重复直至达到预设的传输次数,所述测试单元13在接收到所述数据处理单元12输至的最后一组传输信息后,对所有的传输信息进行分析,若包含错误信息,则根据错误信息的类型和数量,来确定PCIE接口是否稳定,若不包含错误信息,则根据每个数据的数据量、所有数据的数量以及消耗时间等测定所述PCIE接口 14的带宽。如图2所示,本发明还提供一种测试PCIE接口性能的方法。所述测试方法主要由测试系统来执行,所述测试系统为安装在存储系统中的应用。其中,所述存储系统包括:DMA内存单元、PCIE接口、以及与PCIE接口连接的存储控制单元。步骤SI,所述测试系统使所述存储控制单元与所述DMA内存单元通过PCIE接口进行至少一次预设数量的数据传输,并且在传输的过程中记录所产生的传输信息。其中,所述传输信息包括但不限于:包含每个数据的数据量、传输所有数据所消耗的时间、所传输数据的数量的数据信息、和/或所述数据处理单元在传输数据的过程中出现错误的错误信息。具体地,所述测试系统根据预设的传输次数使所述存储控制单元通过所述PCIE接口传来的预设数量的数据写入至少一个所述DMA内存单元中,并记录每一次传输过程中所产生的传输信息。优选地,由于读取DMA内存单元的速度快于写入DMA内存单元的速度,为了减少DMA内存单元的读写操作对PCIE接口性能测试的干扰,所述测试系统从至少一个所述DMA内存单元中读取预设数量的数据,并通过PCIE接口发送给存储控制单元,并记录每一次传输过程中所产生的传输信息。在每一次传输完成或一次传输过程中出现错误时产生中断,所述测试系统在预设的中断期间执行步骤S2。在步骤S2中,所述测试系统在传输完成而产生的中断或传输过程中因出现错误而产生的中断期间,将所述传输信息予以保存。具体地,所述测试系统在每一次传输完成或传保存现错误时都会产生中断,所述测试系统可以在预设的中断产生时将所记录的传输信息予以保存,保存后再继续新一次传输或继续未完成的传输或直接进入步骤S3。例如,预设两次读取传输操作,并在第二次传输完成时输出所产生的中断期间输出所记录的传输信息,则所述测试系统第一次读取传输操作为:通过DMA方式读取各DMA内存单元中所存储的预设数量A的数据,并将所读取的数据通过PCIE接口发送至所述存储控制单元,与此同时,所述测试系统记录每一个数据的数据量,以及本次传输的数据的数量等传输信息,在第一次传输完成时,产生中断,并解除中断进行第二次读取传输操作:所述测试系统继续通过DMA方式读取各DMA内存单元中的预设数量B数据,并将所读取的数据通过PCIE接口发送至所述存储控制单元,并继续记录第二次传输过程中传输信息,在第二次传输完成时产生的中断期间,将所记录的两次传输的传输信息予以保存并进入步骤S3。优选地,所述步骤S2包括:所述测试系统基于每次中断将新记录的传输信息予以保存的步骤。
例如,所述测试系统在第一次传输完成时产生第一个中断,则基于所述第一个中断将第一次传输过程中的数据的数量、每个数据的数据量、本次传输完成所花费的时间等传输信息予以保存,接着,所述测试系统开始第二次传输,并因出现错误产生第二个中断,则基于第二个中断将第二次传输成功的数据的数量、传输成功的每个数据的数据量、及错误信息等传输信息予以保存。在步骤S3中,所述测试系统根据所保存的传输信息测试所述PCIE接口的至少一种性能。其中,所述PCIE接口的性能包括但不限于:PCIE接口的带宽、延时和稳定性等。具体地,所述测试系统根据所接收到的各数据的数据量、所有数据的数量以及每次传输所消耗的时间来计算单位时间所传输的数据量,由此来测试PCIE接口的带宽 ’另外,所述测试系统还将所接收到的错误信息的数量与预设的阈值进行比较,当所述错误信息的数量大于阈 值,则认定所述PCIE接口的不稳定。例如,所述测试系统所接收到的传输信息为一次完整传输的记录,则根据所述传输信息进行数据量、消耗时间的计算,以得到PCIE接口的流量性能的测试结果。又如,所述测试系统在所有数据传输完成之间的每次中断期间保存所记录的传输信息,并待所有数据传输结束后,根据所接收到多组传输信息中的所有数据的数据量、所有数据的数量以及每次传输所消耗的时间来计算单位时间所传输的数据量,由此来测试PCIE接口的带宽,并将所接收到的多姿传输信息中的错误信息的数量与阈值进行比较,当所述错误信息的数量大于阈值,则认定所述PCIE接口的不稳定。综上所述,本发明的能够自测PCIE接口的存储系统及测试方法,通过软件方式在PCIE接口上产生大量测试数据,较现有技术中,减少了用于数据产生的硬件设备,可有效降低测试装置的成本;同时,利用在传输完成或传输出现错误时产生的中断将所记录的传输信息输至测试单元,能够准实时地将所记录的传输信息提供给测试单元,以供测试单元及时得到测试结果;另外,在每次中断产生时发送传输信息能够有效减少如寄存器等硬件的数量,并且由于每次中断时所传输的传输信息的数据量很小,能够减少传送传输信息所消耗的时间对在整个传输过程所消耗的时间的影响,使得测试结果更为准确;另外,从每个DMA内存单元读取一个数据并传输至存储控制单元,能够快速在PCIE总线上产生大量数据;此外,利用DMA读取方式,能够尽可能降低处理器对测试的影响,并以高的读取速度来确保在PCIE接口上同时产生大量的数据;同时,本发明利用存储系统中的部分硬件单元,并未增加过多的硬件成本;此外,利用多核处理器能够在PCIE接口上并发大量的数据,使PCIE总线上有很高的流量,如此能够达到对PCIE接口进行性能测试的目的。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
权利要求
1.一种能够自测PCIE接口的存储系统,其特征在于,至少包括: 多个DMA内存单元,用于存储用于测试的数据; 与所述DMA内存单元连接的数据处理单元,通过PCIE接口,使所述存储系统中的存储控制单元与所述DMA内存单元进行至少一次预设数量的数据传输,并且在传输的过程中记录所产生的传输信息,并在传输完成所产生的中断或传输过程中因出现错误所产生的中断期间,将所述传输信息予以输出; 测试单元,用于依据所述数据处理单元所输出的传输信息分析所述PCIE接口的至少一种性能。
2.根据权利要求1所述的能够自测PCIE接口的存储系统,其特征在于,所述DMA内存单元为入栈循环队列,用于循环存储多个数据。
3.根据权利要求1所述的能够自测PCIE接口的存储系统,其特征在于,所述数据处理单元用于在预设的中断产生时,将所记录的传输信息发送至所述测试单元。
4.根据权利要求1所述的能够自测PCIE接口的存储系统,其特征在于,所述数据处理单元用于在每次传输完成后所产生的中断或传输过程中每次出现错误时所产生的中断期间,将新记录的传输信息提供给所述测试单元。
5.根据权利要求1所述的能够自测PCIE接口的存储系统,其特征在于,所述传输信息包括:包括每个数据的数据量、传输所有数据所消耗的时间和所传输数据的数量的数据信息、和/或所述数据处理单元在传输数据的过程中出现错误的错误信息。
6.根据权利要求5所述的能够自测PCIE接口的存储系统,其特征在于,所述数据处理单元包括:多核处理器、DMA控制器及寄存器,其中,所述寄存器用于存储在传输数据的过程中产生的错误信息。
7.根据权利要求1所述的能够自测PCIE接口的存储系统,其特征在于,所述PCIE接口的性能包括=PCIE接口的带宽、延时、稳定性中的至少一种。
8.—种测试PCIE接口性能的方法,应用于具有PCIE接口的存储系统中,所述存储系统包括:DMA内存单元、PCIE接口、以及与PCIE接口连接的存储控制单元,其特征在于,至少包括: 使所述存储控制单元与所述DMA内存单元通过PCIE接口进行至少一次预设数量的数据传输,并且在传输的过程中记录所产生的传输信息; 在传输完成而产生的中断或传输过程中因出现错误而产生的中断期间,将所述传输信息予以保存; 根据所保存的传输信息测试所述PCIE接口的至少一种性能。
9.根据权利要求8所述的测试PCIE接口性能的方法,其特征在于,在传输完成而产生的中断或传输过程中因出现错误而产生的中断期间,将所述传输信息予以保存的步骤还包括:在预设的中断产生时,将所记录的传输信息发予以保存的步骤。
10.根据权利要求8所述的测试PCIE接口性能的方法,其特征在于,在传输完成而产生的中断或传输过程中因出现错误而产生的中断期间,将所述传输信息予以保存的步骤还包括:在每次传输完成后所产生的中断或传输过程中每次出现错误时所产生的中断期间,将新记录的传输信息予以保存的步骤。
11.根据权利要求8所述的测试PCIE接口性能的方法,其特征在于,所述传输信息包括:包含每个数据的数据量、传输所有数据所消耗的时间、所传输数据的数量的数据信息、和/或所述数据处理单元在传输数据的过程中出现错误的错误信息。
12.根据权利要求8所述的测试PCIE接口性能的方法,其特征在于,所述PCIE接口的性能包括=PCIE接口的带宽、延时、稳定性中的至少一种。
全文摘要
本发明提供一种能够自测PCIE接口的存储系统及测试方法。本发明所述存储系统,包括多个DMA内存单元,用于存储测试数据;与所述DMA内存单元连接的数据处理单元,通过PCIE接口,使所述存储系统中的存储控制单元与所述DMA内存单元进行至少一次预设数量的数据传输,并且在传输的过程中记录所产生的传输信息,并在传输完成所产生的中断或传输过程中因出现错误所产生的中断期间,将所述传输信息予以输出;测试单元,依据所述数据处理单元所输出的传输信息分析所述PCIE接口的至少一种性能。
文档编号G06F11/22GK103198001SQ201310147830
公开日2013年7月10日 申请日期2013年4月25日 优先权日2013年4月25日
发明者何学勤 申请人:加弘科技咨询(上海)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1