一种数据检测方法及数据检测装置与流程

文档序号:16628082发布日期:2019-01-16 06:18阅读:144来源:国知局
一种数据检测方法及数据检测装置与流程

本申请涉及计算机领域,尤其涉及一种数据检测方法及数据检测装置。



背景技术:

在现有的芯片架构中,具有安全数字(securitydigtal,sd)卡和内置存储卡(embeddedmultimediacard,emmc)等,sd卡和emmc是属于芯片的外部设备和存储接口,可用做于芯片系统的启动和存储。

在芯片读取sd卡或者emmc等外部设备的数据时,为了保证读取的数据的正确性,在读数据方向需要做读数据的调整。因此,在芯片每次的读数据过程中都需要进行数据检测,一种数据检测方法为:芯片读取外部设备的数据时,通过采用多个不同相位的时钟采样芯片外设接口的数据,得到多个采样数据,将多个采样数据与芯片得到的读取数据进行对比,判断哪些采样数据是错误的,从而确定最佳的采样相位窗口。

以上现有的数据检测方法中,最佳的采样相位窗口的确定依赖于采样时钟相位的精度,在数据窗口很大的时候,即使无限去增加采样时钟相位的精度,也存在无法找到正确和错误的交界的数据位置的情况,导致存在无法检测到读取数据错误的情况。



技术实现要素:

本申请提供了一种数据检测方法及数据检测装置,使用至少两组具有相位差的采样时钟对输入数据进行采样,确保一定能检测到输入数据的数据边沿,从而确定最佳的采样相位窗口。

本申请的第一方面提供一种数据检测方法,应用于芯片的外围接口系统,所述芯片的外围接口系统包括接口控制器及外部设备,所述数据检测方法包括:

当所述芯片读取所述外部设备的数据时,使用至少两组采样时钟对所述接口控制器的输入数据进行采样,得到采样数据集,所述至少两组采样时钟中任意两组采样时钟之间具有相位差;

根据所述采样数据集确定所述输入数据的数据边沿;

根据所述数据边沿确定目标采样相位窗口。

芯片的外围接口系统中包括接口控制器及外部设备,外部设备包括sd卡、emmc及sdio卡等等,接口控制器用于控制芯片结构中的多个外设接口,外设接口包括sdio接口和emmc接口等,芯片与外部设备之间的数据和指令交互都需要通过接口控制器来实现,在芯片读取外部设备的数据时,为了保证读取的数据的正确性,需要在接口控制器的输入端的数据进行采样判断,而最佳的采样相位窗口的确定就需要通过数据检测装置来实现,数据检测装置使用至少两组采样时钟对接口控制器的输入数据进行采样,得到采样数据集,由于至少两组采样时钟中任意两组采样时钟之间是具有相位差的,那么必然能够采样到输入数据的数据跳变点,对采样数据集进行数据分析后,就能确定输入数据的数据边沿,在已知数据边沿的情况下,根据数据边沿就能确定目标采样相位窗口,目标采样相位窗口就是最佳的采样相位窗口。与现有的数据检测方法相比,使用至少两组具有相位差的采样时钟对输入数据进行采样,确保一定能检测到输入数据的数据边沿,从而可以确定最佳的采样相位窗口。

结合本申请第一方面,本申请第一方面第一实施方式中,采样时钟为n组,n为大于1的整数,每一组采样时钟的采样点数量为m个,m为大于0的整数,

所述使用至少两组采样时钟对所述接口控制器的输入数据进行采样,得到采样数据集,包括:

使用n组采样时钟的每一组采样时钟分别对所述接口控制器的输入数据进行采样,得到n组采样数据,每一组采样数据具有m个采样值;

根据所述n组采样时钟中任意两组采样时钟之间的相位差,对所述n组采样数据的n*m个采样值进行相位前后排序,得到采样数据集。

假设采样时钟为n组,n为大于1的整数,每一组采样时钟的采样点数量为m个,m为大于0的整数,采样点即是预置相位的一个时钟,分别采用n组采样时钟的每一组采样时钟对接口控制器的输入数据进行采样,一组采样时钟采样后得到的是m个采样值,n组采样时钟得到的n*m个采样值,而且由于任意两组采样时钟之间都具有相位差,那么这n*m个采样值对应的采样点的相位都不同,根据n组采样时钟中任意两组采样时钟之间的相位差,对n组采样数据的n*m个采样值进行相位前后排序,得到采样数据集。

结合本申请第一方面第一实施方式,本申请第一方面第二实施方式中,所述根据所述采样数据集确定所述输入数据的数据边沿,包括:

比较所述采样数据集中任意两个相邻采样值是否相同;

若两个相邻采样值相同,则确定不是所述输入数据的数据边沿;

若两个相邻采样值不相同,则确定是所述输入数据的数据边沿。

对于输入数据的数据边沿的检测是通过判断采样数据集得到的,具体的,比较采样数据集中任意两个相邻采样值,如果采样数据集中包括4个采样值,第1个采样值是1,第2个采样值是1,第3个采样值是1,第4个采样值是0,比较第1个采样值和第2个采样值这两个相邻采样值,由于采样值都是1,那么确定不是输入数据的数据边沿;比较第2个采样值和第3个采样值这两个相邻采样值,由于采样值都是1,确定不是输入数据的数据边沿;比较第3个采样值和第4个采样值这两个相邻采样值,第3个采样值是1,第四个采样值是0,那么确定是输入数据的数据边沿。

结合本申请第一方面第二实施方式,本申请第一方面第三实施方式中,所述根据所述数据边沿确定最佳采样相位窗口,包括:

根据所述数据边沿对应的两个相邻采样值,确定所述两个相邻采样值对应的两个采样点;

根据所述两个采样点的相位值,确定目标采样相位窗口。

在确定了输入数据的数据边沿之后,根据数据边沿对应的两个相邻采样值,由这两个相邻采样值可以确定对应的两个采样点,已知每组采样时钟中所有采样点的相位值的情况下,这两个采样点的相位值也可以知道,已知这两个采样点的相位值,就能确定了目标采样相位窗口,由于该目标采样相位窗口是输入数据的数据边沿,那么目标采样相位窗口即是最佳的采样相位窗口。

结合本申请第一方面、第一方面第一实施方式、第一方面第二实施方式或第一方面第三实施方式,本申请第一方面第四实施方式中,所述使用至少两组采样时钟对所述接口控制器的输入数据进行采样之前,还包括:

生成至少两组采样时钟,任意两组采样时钟之间具有相位差,每组采用时钟的时钟数量相同。

以上用于采样的采样时钟是由数据检测装置生成的,而且生成的采样时钟至少两组,任意两组采样时钟之间具有相位差,而且每组采样时钟的采样点数量是相同的。

结合本申请第一方面第四实施方式,本申请第一方面第五实施方式中,所述任意两组采样时钟之间具有的相位差为固定相位差。

为了避免使用不同组的采样时钟进行采样时的采样点出现重叠的现象,任意两组采样时钟之间的相位差一般设置为固定值,对于确定输入数据的数据边沿有利。

本申请第二方面提供一种数据检测装置,应用于芯片的外围接口系统,所述芯片的外围接口系统包括接口控制器及外部设备,所述数据检测装置包括:

数据采集模块,用于当所述芯片读取所述外部设备的数据时,使用至少两组采样时钟对所述接口控制器的输入数据进行采样,得到采样数据集,所述至少两组采样时钟中任意两组采样时钟之间具有相位差,每一组采样时钟的采样点数量相同;

数据处理模块,用于根据所述采样数据集确定所述输入数据的数据边沿;

所述数据处理模块,还用于根据所述数据边沿确定目标采样相位窗口。

芯片的外围接口系统中包括接口控制器及外部设备,外部设备包括sd卡、emmc及sdio卡等等,接口控制器用于控制芯片结构中的多个外设接口,外设接口包括sdio接口和emmc接口等,芯片与外部设备之间的数据和指令交互都需要通过接口控制器来实现,在芯片读取外部设备的数据时,为了保证读取的数据的正确性,需要在接口控制器的输入端的数据进行采样判断,而最佳的采样相位窗口的确定就需要通过数据检测装置来实现,数据采集模块使用至少两组采样时钟对接口控制器的输入数据进行采样,得到采样数据集,由于至少两组采样时钟中任意两组采样时钟之间是具有相位差的,那么必然能够采样到输入数据的数据跳变点,数据处理模块对采样数据集进行数据分析后,就能确定输入数据的数据边沿,在已知数据边沿的情况下,数据采集模块根据数据边沿就能确定目标采样相位窗口,目标采样相位窗口就是最佳的采样相位窗口。与现有的数据检测方法相比,使用至少两组具有相位差的采样时钟对输入数据进行采样,确保一定能检测到输入数据的数据边沿,从而可以确定最佳的采样相位窗口。

结合本申请第二方面,本申请第二方面第一实施方式中,采样时钟为n组,n为大于1的整数,每一组采样时钟的采样点数量为m个,m为大于0的整数,

所述数据采集模块,还用于使用n组采样时钟的每一组采样时钟分别对所述接口控制器的输入数据进行采样,得到n组采样数据,每一组采样数据具有m个采样值;

所述数据采集模块,还用于根据所述n组采样时钟中任意两组采样时钟之间的相位差,对所述n组采样数据的n*m个采样值进行相位前后排序,得到采样数据集。

假设采样时钟为n组,n为大于1的整数,每一组采样时钟的采样点数量为m个,m为大于0的整数,采样点即是预置相位的一个时钟,数据采集模块分别采用n组采样时钟的每一组采样时钟对接口控制器的输入数据进行采样,一组采样时钟采样后得到的是m个采样值,n组采样时钟得到的n*m个采样值,而且由于任意两组采样时钟之间都具有相位差,那么这n*m个采样值对应的采样点的相位都不同,根据n组采样时钟中任意两组采样时钟之间的相位差,对n组采样数据的n*m个采样值进行相位前后排序,得到采样数据集。

结合本申请第二方面第一实施方式,本申请第二方面第二实施方式中,

所述数据处理模块,还用于比较所述采样数据集中任意两个相邻采样值是否相同;

所述数据处理模块,还用于若两个相邻采样值相同,则确定不是所述输入数据的数据边沿;

所述数据处理模块,还用于若两个相邻采样值不相同,则确定是所述输入数据的数据边沿。

对于输入数据的数据边沿的检测是通过判断采样数据集得到的,具体的,数据处理模块比较采样数据集中任意两个相邻采样值,如果采样数据集中包括4个采样值,第1个采样值是1,第2个采样值是1,第3个采样值是1,第4个采样值是0,比较第1个采样值和第2个采样值这两个相邻采样值,由于采样值都是1,那么确定不是输入数据的数据边沿;比较第2个采样值和第3个采样值这两个相邻采样值,由于采样值都是1,确定不是输入数据的数据边沿;比较第3个采样值和第4个采样值这两个相邻采样值,第3个采样值是1,第四个采样值是0,那么确定是输入数据的数据边沿。

结合本申请第二方面第二实施方式,本申请第二方面第三实施方式中,

所述数据处理模块,还用于根据所述数据边沿对应的两个相邻采样值,确定所述两个相邻采样值对应的两个采样点;

所述数据处理模块,还用于根据所述两个采样点的相位值,确定目标采样相位窗口。

在数据处理模块确定了输入数据的数据边沿之后,数据处理模块根据数据边沿对应的两个相邻采样值,由这两个相邻采样值可以确定对应的两个采样点,已知每组采样时钟中所有采样点的相位值的情况下,这两个采样点的相位值也可以知道,已知这两个采样点的相位值,就能确定了目标采样相位窗口,由于该目标采样相位窗口是输入数据的数据边沿,那么目标采样相位窗口即是最佳的采样相位窗口。

结合本申请第二方面、第二方面第一实施方式、第二方面第二实施方式或第二方面第三实施方式,本申请第二方面第四实施方式中,所述数据检测装置还包括:

时钟生成模块,用于生成至少两组采样时钟,任意两组采样时钟之间具有相位差,每组采用时钟的采样点数量相同。

以上用于采样的采样时钟是由时钟生成模块生成的,而且生成的采样时钟至少两组,任意两组采样时钟之间具有相位差,而且每组采样时钟的采样点数量是相同的。

结合本申请第二方面第四实施方式,本申请第二方面第五实施方式中,所述任意两组采样时钟之间具有的相位差为固定相位差。

为了避免使用不同组的采样时钟进行采样时的采样点出现重叠的现象,任意两组采样时钟之间的相位差一般设置为固定值,对于确定输入数据的数据边沿有利。

本申请的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

本申请的第四方面提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

附图说明

为了更清楚地说明本申请实施例技术方案,下面将对实施例和现有技术描述中所需要使用的附图作简单地介绍。

图1为本申请提供的芯片结构示意图;

图2为本申请提供的芯片的外围接口系统的结构示意图;

图3为本申请提供的现有的数据检测方法的采样数据示意图;

图4为本申请提供的数据检测方法的一个实施例流程示意图;

图5为本申请提供的采用2组采样时钟进行输入数据采样的示意图;

图6为本申请提供的数据检测装置的一个实施例结构示意图;

图7为本申请提供的数据检测装置的另一个实施例结构示意图。

具体实施方式

本申请提供了一种数据检测方法及数据检测装置,使用至少两组具有相位差的采样时钟对输入数据进行采样,确保一定能检测到输入数据的数据边沿,从而确定最佳的采样相位窗口。

下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述。

首先简单介绍本申请应用的系统构架或场景。

图1所示为芯片结构图,包括如下器件:中央处理器(centralprocessingunit,cpu)、图形处理器(gpu,graphicsprocessingunit)、视频显示处理器(videoanddisplayprocessor)、视频解码器(videodecoder)、hevc(highefficiencyvideocoding)标准的视频压缩解码器(hevcencoder)、基于jpeg/png图形格式的图像解码器(jpeg/pngdecoder)、指令寄存器(instructionregister,ir)、通用异步收发传输器(universalasynchronousreceiver/transmitter,uart)等。

为了实现芯片与外部设备的数据和指令交互,芯片结构还需要包括如下的接口:安全数字输入输出卡(securedigitalinputandoutputcard,sdio)接口、联合测试工作组(jointtestactiongroup,jtag)接口、双倍数据速率(doubledatarate,ddr)接口、nand/emmc/spi接口、高清晰度多媒体接口(highdefinitionmultimediainterface,hdmi)、usb2.0接口及usb3.0和pcie2.0和sata3.0接口等。

芯片的外部设备通过以上的接口接入到芯片结构中,例如,sd卡与sdio接口连接,双倍速率同步动态随机存储器(ddrsdram)与ddr接口连接,nandflash卡、emmc、spiflash卡及norflash卡与nand/emmc/spi接口连接,usb2.0设备与usb2.0接口连接,usb3.0和pcie和sata设备与usb3.0和pcie2.0和sata3.0接口连接,从而能够实现芯片与sd卡、ddrsdram、emmc、nandflash卡及usb设备等外部设备的数据和指令交互。其中,sd卡等作为芯片的外部设备,emmc虽然属于外部设备,但是实际上是作为芯片的存储接口。

芯片的外围接口系统主要包括接口控制器和外部设备,如图2所示,cpu通过总线与接口控制器连接,接口控制器包括cpu接口、控制通道、数据通道和分频与时钟控制功能模块,外部设备与cpu的数据和指令交互需要通过接口控制器来实现。在芯片读取sd卡或者emmc等外部设备的数据时,为了保证读取的数据的正确性,在读数据方向需要做读数据的调整。因此,在芯片读数据过程中都需要进行数据检测,一种现有的数据检测方法为:芯片读取外部设备的数据时,通过采用多个不同相位的时钟采用接口控制器输入端的输入数据,得到多个采样数据,如图3所示,采用一个时钟周期内8个相位的时钟,分别对输入数据进行采样,如果要实现数据检测,就非常依赖于时钟采样到数据跳变(从高电平(1)跳变为低电平(0)或从0跳变为1),例如,图3中第4个时钟和第5个时钟之间的相位窗口就是最佳的采样相位窗口。但是,这种方法对时钟的精度要求非常高,假设数据窗口很大时,图3中的8个时钟的采样点将会都处于输入数据的1或者0之中,那么就无法检测到数据跳变,如果要提高检测的准确度,就必须要提高时钟的调相精度,增加了芯片成本,而且即使调相精度提高了,依然会存在无法得到最佳的采用相位窗口的概率。

为了解决以上所描述的问题,本申请提供了利用多组采样时钟来获取最佳的采样相位窗口的数据检测方法,下面通过流程实施例对数据检测方法进行说明。

请参阅图4,本申请实施例提供一种数据检测方法,应用于芯片的外围接口系统,外围接口系统接口控制器及外部设备,数据检测方法包括:

401、使用至少两组采样时钟对接口控制器的输入数据进行采样,得到采样数据集;

本实施例中,芯片的外围接口系统中包括接口控制器及外部设备,外部设备包括sd卡、emmc及sdio卡等等,接口控制器用于控制芯片结构中的多个外设接口,外设接口包括sdio接口和emmc接口等,芯片与外部设备之间的数据和指令交互都需要通过接口控制器来实现,当芯片读取外部设备的数据时,为了保证读取的数据的正确性,需要在接口控制器的输入端的数据进行采样判断,而最佳的采样相位窗口的确定就需要通过数据检测装置来实现,数据检测装置使用至少两组采样时钟对接口控制器的输入数据进行采样,得到采样数据集,至少两组采样时钟中任意两组采样时钟之间具有相位差。

402、根据采样数据集确定输入数据的数据边沿;

本实施例中,由于至少两组采样时钟中任意两组采样时钟之间是具有相位差的,那么必然能够采样到输入数据的数据跳变点,对采样数据集进行数据分析后,就能确定输入数据的数据边沿。

403、根据数据边沿确定目标采样相位窗口。

本实施例中,在已知数据边沿的情况下,根据数据边沿就能确定目标采样相位窗口,目标采样相位窗口就是最佳的采样相位窗口。

本申请实施例中,使用至少两组具有相位差的采样时钟对输入数据进行采样,确保一定能检测到输入数据的数据边沿,从而确定最佳的采样相位窗口,与现有的数据检测方法相比,使用至少两组具有相位差的采样时钟对输入数据进行采样,确保一定能检测到输入数据的数据边沿,从而可以确定最佳的采样相位窗口。

可选的,本申请的一些实施例中,采样时钟为n组,n为大于1的整数,每一组采样时钟的采样点数量为m个,m为大于0的整数,

使用至少两组采样时钟对接口控制器的输入数据进行采样,得到采样数据集,包括:

使用n组采样时钟的每一组采样时钟分别对接口控制器的输入数据进行采样,得到n组采样数据,每一组采样数据具有m个采样值;

根据n组采样时钟中任意两组采样时钟之间的相位差,对n组采样数据的n*m个采样值进行相位前后排序,得到采样数据集。

本申请实施例中,假设采样时钟为n组,n为大于1的整数,每一组采样时钟的采样点数量为m个,m为大于0的整数,采样点即是预置相位的一个时钟,分别采用n组采样时钟的每一组采样时钟对接口控制器的输入数据进行采样,一组采样时钟采样后得到的是m个采样值,n组采样时钟得到的n*m个采样值,而且由于任意两组采样时钟之间都具有相位差,那么这n*m个采样值对应的采样点的相位都不同,根据n组采样时钟中任意两组采样时钟之间的相位差,对n组采样数据的n*m个采样值进行相位前后排序,得到采样数据集。例如,采样时钟为2组,每组有2个采样点,如图5所示,第1组采样时钟的采样点为a和b,第2组采样时钟的采样点为c和d,第1组采样时钟和第2组采样时钟的相位差为x,a点的采样值为1,b点的采样值为0,c点的采样值为1,d点的采样值为0,根据第1组采样时钟和第2组采样时钟的相位差x,对a、b、c和d这4个采样点的采样值按照相位进行前后排序,得到的采样数据集为(1,1,0,0),对应的采样点顺序是(a,c,b,d)。

需要说明的是,图5所示的为使用2组采样时钟进行采样,在实际应用中,还可以采用两组以上的采样时钟。当输入数据为周期性时,可以将一个周期等分为y个相位,一次同时使用有相位差的y组时钟采样数据,这样就能够一次性的得到所有周期的数据边沿。

可选的,本申请的一些实施例中,根据采样数据集确定输入数据的数据边沿,包括:

比较采样数据集中任意两个相邻采样值是否相同;

若两个相邻采样值相同,则确定不是输入数据的数据边沿;

若两个相邻采样值不相同,则确定是输入数据的数据边沿。

本申请实施例中,结合图5所示,在得到采样数据集(1,1,0,0)之后,比较采样数据集中任意两个相邻采样值是否相同,例如,第1个采样值和第2个采样值都是1,那么确定不是输入数据的数据边沿;第2个采样值和第3个采样值不同,那么确定时输入数据的数据边沿;第3个采样值和第4个采样值都是0,确定不是输入数据的数据边沿。

可选的,本申请的一些实施例中,根据数据边沿确定最佳采样相位窗口,包括:

根据数据边沿对应的两个相邻采样值,确定两个相邻采样值对应的两个采样点;

根据两个采样点的相位值,确定目标采样相位窗口。

本申请实施例中,根据以上实施例中确定的输入数据的数据边沿,对应的第2个采样值和第3个采样值,可以确定第2个采样值和第3个采样值对应的两个采样点为b和c,由于第1组采样时钟和第2组采样时钟中的采样点的相位值都是确定的,那么采样点b和c的相位值已知,从而可以确定目标采样相位窗口就是采样点b和采样点c之间的相位窗口,由于该目标采样相位窗口是输入数据的数据边沿,那么目标采样相位窗口即是最佳的采样相位窗口。

可选的,本申请的一些实施例中,使用至少两组采样时钟对接口控制器的输入数据进行采样之前,还包括:

生成至少两组采样时钟,任意两组采样时钟之间具有相位差,每组采用时钟的时钟数量相同。

本申请实施例中,以上实施例用于采样的采样时钟是由数据检测装置生成的,而且生成的采样时钟至少两组,任意两组采样时钟之间具有相位差,而且每组采样时钟的采样点数量是相同的。

可选的,本申请的一些实施例中,任意两组采样时钟之间具有的相位差为固定相位差。

本申请实施例中,为了避免使用不同组的采样时钟进行采样时的采样点出现重叠的现象,假设第1组采样时钟和第2组采样时钟之间的相位差为45°,第2组采样时钟和第3组采样时钟之间的相位差为135°,那么第1组采样时钟和第3组采样时钟之间的相位差时180°,这样会造成第1组采样时钟和第3组采样时钟的采样点重合的现象,任意两组采样时钟之间的相位差一般设置为固定值,对于确定输入数据的数据边沿有利。

上述实施例中对数据检测方法进行了说明,下面通过实施例对数据检测装置进行说明。

请参阅图6,本申请实施例提供一种数据检测装置,应用于芯片的外围接口系统,芯片的外围接口系统包括接口控制器及外部设备,数据检测装置包括:

数据采集模块601,用于当芯片读取外部设备的数据时,使用至少两组采样时钟对接口控制器的输入数据进行采样,得到采样数据集,至少两组采样时钟中任意两组采样时钟之间具有相位差,每一组采样时钟的采样点数量相同;

数据处理模块602,用于根据采样数据集确定输入数据的数据边沿;

数据处理模块602,还用于根据数据边沿确定目标采样相位窗口。

本申请实施例中,芯片的外围接口系统中包括接口控制器及外部设备,外部设备包括sd卡、emmc及sdio卡等等,接口控制器用于控制芯片结构中的多个外设接口,外设接口包括sdio接口和emmc接口等,芯片与外部设备之间的数据和指令交互都需要通过接口控制器来实现,在芯片读取外部设备的数据时,为了保证读取的数据的正确性,需要在接口控制器的输入端的数据进行采样判断,而最佳的采样相位窗口的确定就需要通过数据检测装置来实现,数据采集模块601使用至少两组采样时钟对接口控制器的输入数据进行采样,得到采样数据集,由于至少两组采样时钟中任意两组采样时钟之间是具有相位差的,那么必然能够采样到输入数据的数据跳变点,数据处理模块602对采样数据集进行数据分析后,就能确定输入数据的数据边沿,在已知数据边沿的情况下,数据采集模块602根据数据边沿就能确定目标采样相位窗口,目标采样相位窗口就是最佳的采样相位窗口。与现有的数据检测方法相比,使用至少两组具有相位差的采样时钟对输入数据进行采样,确保一定能检测到输入数据的数据边沿,从而可以确定最佳的采样相位窗口。

可选的,本申请的一些实施例中,采样时钟为n组,n为大于1的整数,每一组采样时钟的采样点数量为m个,m为大于0的整数,

数据采集模块602,还用于使用n组采样时钟的每一组采样时钟分别对接口控制器的输入数据进行采样,得到n组采样数据,每一组采样数据具有m个采样值;

数据采集模块602,还用于根据n组采样时钟中任意两组采样时钟之间的相位差,对n组采样数据的n*m个采样值进行相位前后排序,得到采样数据集。

本申请实施例中,假设采样时钟为n组,n为大于1的整数,每一组采样时钟的采样点数量为m个,m为大于0的整数,采样点即是预置相位的一个时钟,数据采集模块602分别采用n组采样时钟的每一组采样时钟对接口控制器的输入数据进行采样,一组采样时钟采样后得到的是m个采样值,n组采样时钟得到的n*m个采样值,而且由于任意两组采样时钟之间都具有相位差,那么这n*m个采样值对应的采样点的相位都不同,根据n组采样时钟中任意两组采样时钟之间的相位差,对n组采样数据的n*m个采样值进行相位前后排序,得到采样数据集。

可选的,本申请的一些实施例中,

数据处理模块602,还用于比较采样数据集中任意两个相邻采样值是否相同;

数据处理模块602,还用于若两个相邻采样值相同,则确定不是输入数据的数据边沿;

数据处理模块602,还用于若两个相邻采样值不相同,则确定是输入数据的数据边沿。

本申请实施例中,对于输入数据的数据边沿的检测是通过判断采样数据集得到的,具体的,数据处理模块602比较采样数据集中任意两个相邻采样值,如果采样数据集中包括4个采样值,第1个采样值是1,第2个采样值是1,第3个采样值是1,第4个采样值是0,比较第1个采样值和第2个采样值这两个相邻采样值,由于采样值都是1,那么确定不是输入数据的数据边沿;比较第2个采样值和第3个采样值这两个相邻采样值,由于采样值都是1,确定不是输入数据的数据边沿;比较第3个采样值和第4个采样值这两个相邻采样值,第3个采样值是1,第四个采样值是0,那么确定是输入数据的数据边沿。

可选的,本申请的一些实施例中,

数据处理模块602,还用于根据数据边沿对应的两个相邻采样值,确定两个相邻采样值对应的两个采样点;

数据处理模块602,还用于根据两个采样点的相位值,计算的到目标采样相位窗口。

本申请实施例中,在数据处理模块602确定了输入数据的数据边沿之后,数据处理模块602根据数据边沿对应的两个相邻采样值,由这两个相邻采样值可以确定对应的两个采样点,已知每组采样时钟中所有采样点的相位值的情况下,这两个采样点的相位值也可以知道,已知这两个采样点的相位值,就能确定了目标采样相位窗口,由于该目标采样相位窗口是输入数据的数据边沿,那么目标采样相位窗口即是最佳的采样相位窗口。

可选的,如图7所示,本申请的一些实施例中,数据检测装置还包括:

时钟生成模块701,用于生成至少两组采样时钟,任意两组采样时钟之间具有相位差,每组采用时钟的时钟数量相同。

本申请实施例中,以上用于采样的采样时钟是有时钟生成模块701生成的,而且生成的采样时钟至少两组,任意两组采样时钟之间具有相位差,而且每组采样时钟的采样点数量是相同的。需要说明的是,时钟生成模块701在具体实施时可以是时钟生成器,或者是可以生产时钟信号的时钟生成电路。

可选的,如图7所示,本申请的一些实施例中,任意两组采样时钟之间具有的相位差为固定相位差。

本申请实施例中,为了避免使用不同组的采样时钟进行采样时的采样点出现重叠的现象,假设第1组采样时钟和第2组采样时钟之间的相位差为45°,第2组采样时钟和第3组采样时钟之间的相位差为135°,那么第1组采样时钟和第3组采样时钟之间的相位差时180°,这样会造成第1组采样时钟和第3组采样时钟的采样点重合的现象,时钟生成模块701生成的至少两组采样时钟中任意两组采样时钟之间的相位差一般设置为固定值,对于确定输入数据的数据边沿有利。

本申请还提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行以上实施例所描述的数据检测方法。

本申请还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行以上实施例所描述的数据检测方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。

所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1