CN109213703B - 一种数据检测方法及数据检测装置 - Google Patents

一种数据检测方法及数据检测装置 Download PDF

Info

Publication number
CN109213703B
CN109213703B CN201710527455.2A CN201710527455A CN109213703B CN 109213703 B CN109213703 B CN 109213703B CN 201710527455 A CN201710527455 A CN 201710527455A CN 109213703 B CN109213703 B CN 109213703B
Authority
CN
China
Prior art keywords
sampling
data
clocks
groups
values
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.)
Active
Application number
CN201710527455.2A
Other languages
English (en)
Other versions
CN109213703A (zh
Inventor
张秀宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haisi Technology Co.,Ltd.
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710527455.2A priority Critical patent/CN109213703B/zh
Publication of CN109213703A publication Critical patent/CN109213703A/zh
Application granted granted Critical
Publication of CN109213703B publication Critical patent/CN109213703B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本申请提供了一种数据检测方法及数据检测装置,使用至少两组具有相位差的采样时钟对输入数据进行采样,确保一定能检测到输入数据的数据边沿,从而确定最佳的采样相位窗口。本申请实施例方法包括:当芯片读取外部设备的数据时,使用至少两组采样时钟对接口控制器的输入数据进行采样,得到采样数据集,至少两组采样时钟中任意两组采样时钟之间具有相位差;根据采样数据集确定输入数据的数据边沿;根据数据边沿确定目标采样相位窗口。

Description

一种数据检测方法及数据检测装置
技术领域
本申请涉及计算机领域,尤其涉及一种数据检测方法及数据检测装置。
背景技术
在现有的芯片架构中,具有安全数字(Security Digtal,SD)卡和内置存储卡(Embedded Multi Media Card,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所示为芯片结构图,包括如下器件:中央处理器(Central Processing Unit,CPU)、图形处理器(GPU,Graphics Processing Unit)、视频显示处理器(Video andDisplay Processor)、视频解码器(Video Decoder)、HEVC(High Efficiency VideoCoding)标准的视频压缩解码器(HEVC Encoder)、基于JPEG/PNG图形格式的图像解码器(JPEG/PNG Decoder)、指令寄存器(Instruction Register,IR)、通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,UART)等。
为了实现芯片与外部设备的数据和指令交互,芯片结构还需要包括如下的接口:安全数字输入输出卡(Secure Digital Input and Output Card,SDIO)接口、联合测试工作组(Joint Test Action Group,JTAG)接口、双倍数据速率(Double Data Rate,DDR)接口、 Nand/eMMC/SPI接口、高清晰度多媒体接口(High Definition MultimediaInterface,HDMI)、 USB2.0接口及USB3.0和PCIE2.0和SATA3.0接口等。
芯片的外部设备通过以上的接口接入到芯片结构中,例如,SD卡与SDIO接口连接,双倍速率同步动态随机存储器(DDR SDRAM)与DDR接口连接,Nand Flash卡、eMMC、 SPIFlash卡及Nor Flash卡与Nand/eMMC/SPI接口连接,USB2.0设备与USB2.0接口连接,USB3.0和PCIE和SATA设备与USB3.0和PCIE2.0和SATA3.0接口连接,从而能够实现芯片与SD卡、DDR SDRAM、eMMC、Nand Flash卡及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的整数,
数据采集模块601 ,还用于使用N组采样时钟的每一组采样时钟分别对接口控制器的输入数据进行采样,得到N组采样数据,每一组采样数据具有M个采样值;
数据采集模块601 ,还用于根据N组采样时钟中任意两组采样时钟之间的相位差,对 N组采样数据的N*M个采样值进行相位前后排序,得到采样数据集。
本申请实施例中,假设采样时钟为N组,N为大于1的整数,每一组采样时钟的采样点数量为M个,M为大于0的整数,采样点即是预置相位的一个时钟,数据采集模块601 分别采用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)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (13)

1.一种数据检测方法,其特征在于,应用于芯片的***接口***,所述芯片的***接口***包括接口控制器及外部设备,所述数据检测方法包括:
当所述芯片读取所述外部设备的数据时,使用至少两组采样时钟对所述接口控制器的输入数据进行采样,得到采样数据集,所述至少两组采样时钟中任意两组采样时钟之间具有相位差,所述采样数据集包括两组采样数据,所述至少两组采样时钟中的每组采样时钟采样所述输入数据得到一组采样数据,每组采样数据包括多个采样点;
根据所述采样数据集中的任意两个相邻采样点的采样值的关系确定所述输入数据的数据边沿;
根据所述数据边沿确定目标采样相位窗口。
2.根据权利要求1所述的方法,其特征在于,采样时钟为N组,N为大于1的整数,每一组采样时钟的采样点数量为M个,M为大于0的整数,
所述使用至少两组采样时钟对所述接口控制器的输入数据进行采样,得到采样数据集,包括:
使用N组采样时钟的每一组采样时钟分别对所述接口控制器的输入数据进行采样,得到N组采样数据,每一组采样数据具有M个采样值;
根据所述N组采样时钟中任意两组采样时钟之间的相位差,对所述N组采样数据的N*M个采样值进行相位前后排序,得到采样数据集。
3.根据权利要求2所述的方法,其特征在于,所述根据所述采样数据集中的任意两个相邻采样点的采样值的关系确定所述输入数据的数据边沿包括:
比较所述采样数据集中任意两个相邻采样值是否相同;
若两个相邻采样值相同,则确定不是所述输入数据的数据边沿;
若两个相邻采样值不相同,则确定是所述输入数据的数据边沿。
4.根据权利要求3所述的方法,其特征在于,所述根据所述数据边沿确定目标采样相位窗口包括:
根据所述数据边沿对应的两个相邻采样值,确定所述两个相邻采样值对应的两个采样点;
根据所述两个采样点的相位值,确定目标采样相位窗口。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述使用至少两组采样时钟对所述接口控制器的输入数据进行采样之前,还包括:
生成至少两组采样时钟,任意两组采样时钟之间具有相位差,每组采样时钟的采样点数量相同。
6.根据权利要求5所述的方法,其特征在于,所述任意两组采样时钟之间具有的相位差为固定相位差。
7.一种数据检测装置,其特征在于,应用于芯片的***接口***,所述芯片的***接口***包括接口控制器及外部设备,所述数据检测装置包括:
数据采集模块,用于当所述芯片读取所述外部设备的数据时,使用至少两组采样时钟对所述接口控制器的输入数据进行采样,得到采样数据集,所述至少两组采样时钟中任意两组采样时钟之间具有相位差,每一组采样时钟的采样点数量相同,所述采样数据集包括两组采样数据,所述至少两组采样时钟中的每组采样时钟采样所述输入数据得到一组采样数据,每组采样数据包括多个采样点;
数据处理模块,用于根据所述采样数据集中的任意两个相邻采样点的采样值的关系确定所述输入数据的数据边沿;
所述数据处理模块,还用于根据所述数据边沿确定目标采样相位窗口。
8.根据权利要求7所述的装置,其特征在于,采样时钟为N组,N为大于1的整数,每一组采样时钟的采样点数量为M个,M为大于0的整数,
所述数据采集模块,还用于使用N组采样时钟的每一组采样时钟分别对所述接口控制器的输入数据进行采样,得到N组采样数据,每一组采样数据具有M个采样值;
所述数据采集模块,还用于根据所述N组采样时钟中任意两组采样时钟之间的相位差,对所述N组采样数据的N*M个采样值进行相位前后排序,得到采样数据集。
9.根据权利要求8所述的装置,其特征在于,
所述数据处理模块,还用于比较所述采样数据集中任意两个相邻采样值是否相同;
所述数据处理模块,还用于若两个相邻采样值相同,则确定不是所述输入数据的数据边沿;
所述数据处理模块,还用于若两个相邻采样值不相同,则确定是所述输入数据的数据边沿。
10.根据权利要求9所述的装置,其特征在于,
所述数据处理模块,还用于根据所述数据边沿对应的两个相邻采样值,确定所述两个相邻采样值对应的两个采样点;
所述数据处理模块,还用于根据所述两个采样点的相位值,确定目标采样相位窗口。
11.根据权利要求7至10中任一项所述的装置,其特征在于,所述数据检测装置还包括:
时钟生成模块,用于生成至少两组采样时钟,任意两组采样时钟之间具有相位差,每组采样时钟的采样点数量相同。
12.根据权利要求11所述的装置,其特征在于,所述任意两组采样时钟之间具有的相位差为固定相位差。
13.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至6任意一项所述的方法。
CN201710527455.2A 2017-06-30 2017-06-30 一种数据检测方法及数据检测装置 Active CN109213703B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710527455.2A CN109213703B (zh) 2017-06-30 2017-06-30 一种数据检测方法及数据检测装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710527455.2A CN109213703B (zh) 2017-06-30 2017-06-30 一种数据检测方法及数据检测装置

Publications (2)

Publication Number Publication Date
CN109213703A CN109213703A (zh) 2019-01-15
CN109213703B true CN109213703B (zh) 2021-12-14

Family

ID=64992104

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710527455.2A Active CN109213703B (zh) 2017-06-30 2017-06-30 一种数据检测方法及数据检测装置

Country Status (1)

Country Link
CN (1) CN109213703B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109903803B (zh) * 2019-03-26 2021-04-27 晶晨半导体(上海)股份有限公司 存储模块的测试方法及***
CN112202518B (zh) * 2019-07-08 2023-11-17 中兴通讯股份有限公司 时钟信号的相位检测方法、装置及通信设备
CN111124978B (zh) 2019-10-30 2021-07-06 苏州浪潮智能科技有限公司 一种并行总线相位校正的方法及装置
WO2021207972A1 (zh) * 2020-04-15 2021-10-21 深圳市大疆创新科技有限公司 数据传输方法、数据传输装置、电子设备和存储介质
CN117407346B (zh) * 2023-12-13 2024-04-05 芯能量集成电路(上海)有限公司 一种车规级芯片外部flash的采样点调整***及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1799198A (zh) * 2003-06-04 2006-07-05 皇家飞利浦电子股份有限公司 用于再现信息的比特检测装置和设备
CN101567767A (zh) * 2009-05-19 2009-10-28 华为技术有限公司 一种窗口采样控制方法及装置
CN202406095U (zh) * 2011-12-28 2012-08-29 成都三零嘉微电子有限公司 一种高速并行接口电路
CN106656182A (zh) * 2016-11-24 2017-05-10 深圳市鼎阳科技有限公司 一种数字芯片接收adc输出数据的方法及数字芯片
CN106850179A (zh) * 2016-12-23 2017-06-13 深圳市紫光同创电子有限公司 一种数据窗口查询方法及电路

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3622685B2 (ja) * 2000-10-19 2005-02-23 セイコーエプソン株式会社 サンプリングクロック生成回路、データ転送制御装置及び電子機器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1799198A (zh) * 2003-06-04 2006-07-05 皇家飞利浦电子股份有限公司 用于再现信息的比特检测装置和设备
CN101567767A (zh) * 2009-05-19 2009-10-28 华为技术有限公司 一种窗口采样控制方法及装置
CN202406095U (zh) * 2011-12-28 2012-08-29 成都三零嘉微电子有限公司 一种高速并行接口电路
CN106656182A (zh) * 2016-11-24 2017-05-10 深圳市鼎阳科技有限公司 一种数字芯片接收adc输出数据的方法及数字芯片
CN106850179A (zh) * 2016-12-23 2017-06-13 深圳市紫光同创电子有限公司 一种数据窗口查询方法及电路

Also Published As

Publication number Publication date
CN109213703A (zh) 2019-01-15

Similar Documents

Publication Publication Date Title
CN109213703B (zh) 一种数据检测方法及数据检测装置
KR101729872B1 (ko) 스위즐된 데이터 명령/어드레스 신호들을 맵핑하는 트레이닝
US9805771B2 (en) Determining a state of a cell structure
US10068650B1 (en) Characterizing and operating a non-volatile memory device
JP2014512063A (ja) データセンシングのための方法、装置、およびシステム
CN109493910B (zh) 微控制器及其操作方法以及具有该微控制器的存储***
US20180035108A1 (en) Image sensor with test circuit
US20140244203A1 (en) Testing system and method of inter-integrated circuit bus
CN110989926A (zh) 故障磁盘槽位定位方法、装置及电子设备
US20160328285A1 (en) Error vector readout from a memory device
US9733870B2 (en) Error vector readout from a memory device
US8786710B2 (en) Test system and method for testing motherboard of camera
CN113918233A (zh) 一种ai芯片控制方法、电子设备及ai芯片
CN113946480A (zh) 一种i2c总线的检测装置和方法
CN112133357B (zh) 一种eMMC的测试方法及装置
CN112395144A (zh) 一种测试方法、***、终端设备及可读存储介质
US8803903B2 (en) Color space determination devices and display devices and systems including the same
CN114420190A (zh) Emmc损耗度检测方法、装置、电子设备及存储介质
US9443568B2 (en) Electronic device and data transmission method thereof
US10789116B2 (en) Method for determining location where memory error occurs
CN103576738A (zh) 一种异步信号跨时钟域处理方法及装置
CN112216333A (zh) 芯片测试方法及装置
US20150074465A1 (en) Method and device for efficient trace analysis
CN117079703B (zh) 用于测试芯片内嵌存储器的方法及装置、电子设备
US8656063B1 (en) Method of detecting addressing mode and electronic system thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220713

Address after: Room 101, 318 Shuixiu Road, Jinze town (xicen), Qingpu District, Shanghai, 201799

Patentee after: Shanghai Haisi Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 101, No. 2 Hongqiaogang Road, Qingpu District, Shanghai, 201799

Patentee after: Haisi Technology Co.,Ltd.

Address before: Room 101, 318 Shuixiu Road, Jinze town (xicen), Qingpu District, Shanghai, 201799

Patentee before: Shanghai Haisi Technology Co.,Ltd.