CN112673364A - 数据传输方法、数据传输装置、电子设备和存储介质 - Google Patents

数据传输方法、数据传输装置、电子设备和存储介质 Download PDF

Info

Publication number
CN112673364A
CN112673364A CN202080004981.0A CN202080004981A CN112673364A CN 112673364 A CN112673364 A CN 112673364A CN 202080004981 A CN202080004981 A CN 202080004981A CN 112673364 A CN112673364 A CN 112673364A
Authority
CN
China
Prior art keywords
points
test
emmc
sampling
determining
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.)
Pending
Application number
CN202080004981.0A
Other languages
English (en)
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.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI Technology 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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of CN112673364A publication Critical patent/CN112673364A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • 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/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation

Landscapes

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

Abstract

本申请实施例提供一种数据传输方法、数据传输装置、电子设备和存储介质,其中方法包括:从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;根据所述采样点,从所述eMMC获取数据。本申请实施例提供的数据传输方法、数据传输装置、电子设备和存储介质,能够有效减少确定采样点所花费的时间,提高数据传输的整体效率,提升设备的处理速度。

Description

数据传输方法、数据传输装置、电子设备和存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据传输方法、数据传输装置、电子设备和存储介质。
背景技术
目前,很多电子设备使用嵌入式多媒体卡(Embedded Multi Media Card,eMMC)作为存储介质来存储相应的软件程序,在电子设备启动时,可以从eMMC中读取预先存入的软件程序,从而根据读取到的软件程序进行工作。
在一些技术中,如果需要以较高的速率从eMMC读取软件程序,需要先通过测试流程选取一个合适的采样点。例如,通常可以将一个时钟周期分为256个测试点,对于每一个测试点,通过一套流程测试其是否适于作为采样点,并根据各个测试点的测试结果来确定最终选择的采样点。
上述技术的不足之处在于,确定采样点的流程冗长,时间消耗较多,导致设备处理速度较慢。
发明内容
本申请实施例提供了一种数据传输方法、数据传输装置、电子设备和存储介质,用以解决确定采样点花费的时间较久的技术问题。
第一方面,本申请实施例提供一种数据传输方法,包括:
从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;
根据所述采样点,从所述eMMC获取数据。
第二方面,本申请实施例提供一种数据传输装置,包括:
存储器,用于存储指令;
处理器,用于运行所述存储器中存储的指令以实现:
从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;
根据所述采样点,从所述eMMC获取数据。
第三方面,本申请实施例提供一种数据传输装置,包括:
处理电路,用于从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;
接收电路,用于根据所述采样点,从所述eMMC获取数据。
第四方面,本申请实施例提供一种电子设备,包括第二方面所述的数据传输装置以及eMMC。
第五方面,本申请实施例提供一种电子设备,包括第三方面所述的数据传输装置以及eMMC。
第六方面,本申请实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的数据传输方法。
第七方面,本申请实施例提供一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的数据传输方法。
本申请实施例提供的数据传输方法、数据传输装置、电子设备和存储介质,可以从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间,在确定采样点后,可以根据所述采样点,从所述eMMC获取数据,能够有效减少确定采样点所花费的时间,提高数据传输的整体效率,提升设备的处理速度。
附图说明
图1为本申请实施例提供的数据处理方法的一种应用场景示意图;
图2为本申请实施例提供的一种数据传输方法的流程示意图;
图3为本申请实施例提供的另一种数据传输方法的流程示意图;
图4为本申请实施例提供的又一种数据传输方法的流程示意图;
图5为本申请实施例提供的一种数据处理方法中采样点的位置示意图;
图6为本申请实施例提供的一种数据传输装置的结构示意图;
图7为本申请实施例提供的另一种数据传输装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
图1为本申请实施例提供的数据处理方法的一种应用场景示意图。如图1所示,主控制器(host controller)与eMMC连接,用于与eMMC进行数据传输。
所述主控制器可以是任意具有数据处理功能的芯片,例如高级精简指令集处理器(Advanced RISC Machines,ARM)、数字信号处理器(Digital Signal Processor,DSP)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)等。
所述eMMC与所述主控制器之间可以通过总线实现连接,所述eMMC中可以存储有数据如软件程序等,所述主控制器可以从所述eMMC获取所述软件程序并运行。
下面结合附图,对本申请的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
图2为本申请实施例提供的一种数据传输方法的流程示意图。如图2所示,所述数据传输方法,可以包括:
201、从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间。
可选的,本实施例中数据传输方法的执行主体可以为图1中的主控制器。本实施例中,所述eMMC可以为任意具有数据存储功能的存储器。通常的eMMC有多种速度模式,例如常规的eMMC可以包括legacy、HS SDR、HS DDR、HS200、HS400几种不同的速度模式,在启动时通常使用的是低速模式如HS SDR等模式,低速模式下不需要确定采样点,在时钟周期的任意时刻采样都可以获取到准确的数据,但是HS SDR模式的总线时钟(clock)最高仅有52Mhz,传输速率也只能到52MB/s,在如今软件程序不断发展,数据量越来越大的情况下,通过HSSDR模式实现启动的速度也就变得越来越慢。
一种可选的提高启动速度的方式是,在上电后即迅速提高到高速模式如HS200或者HS400模式,传输速率可以达到200MB/s或者400MB/s,但HS200或者HS400模式都需要先确定一个合适的采样点,才能准确地从eMMC获取数据。
具体地,可以在一个时钟周期内设置多个测试点,采样点可以从时钟周期内的多个测试点中选取。一般情况下,时钟周期内的各个测试点之间的间隔可以相等。若一个时钟周期的时长为T,所述时钟周期包括N个测试点,则任意相邻两测试点之间的时间间隔可以为T/N。
一个时钟周期通常可以包括256个或者更多的测试点,以256个为例,假设时钟周期为5ns,则相邻两个测试点之间间隔5/256ns,其中任意一个测试点都有可能作为数据传输过程中的采样点。
在201中,可以从时钟周期的256个测试点中选择一个作为采样点,确定采样点所用的时间小于遍历所述时钟周期的所有测试点确定采样点所需的时间。
其中,遍历所述时钟周期的所有测试点确定采样点,是指对所述时钟周期的全部测试点进行测试以确定采样点。
假设对一个测试点进行测试需要花费的时间为t,那么遍历256个测试点,需要256t的时间才能选择出采样点,而本实施例中,可以用小于256t的时间确定采样点。
在201中,确定所述采样点可以有多种实现方式,只要满足所用的时间小于遍历所述时钟周期的测试点所需的时间即可。
可选的,可以通过仅对部分测试点进行测试来确定采样点,或者,可以跳过测试流程,在不对测试点进行测试的情况下用其它方法确定采样点。
202、根据所述采样点,从所述eMMC获取数据。
在从多个测试点中确定采样点后,可以根据所述采样点实现数据的传输。例如,在时钟周期的256个点中,确定第30个点为采样点,那么,在数据传输过程中,在每个时钟周期,都对第30个点进行采样,从而准确地获取传输的数据。
本实施例中的方法可以应用于主控制器的启动过程。具体地,所获取的数据可以包括软件程序,在根据所述采样点,从所述eMMC获取软件程序之后,可以运行所述软件程序,从而实现设备的正常工作。
可选的,在上电(power on)后,主控制器与eMMC之间可以通过低速模式进行通信,主控制器向eMMC发送CMD指令,唤醒所述eMMC,然后,主控制器可以确定采样点,并根据所述采样点,切换到高速模式,通过高速模式与eMMC进行通信,从eMMC获取软件程序,并运行所述软件程序,因此,存储在eMMC中的软件程序可以被更快地读取到主控制器中,从而可以大大提高启动速度,减少整个设备的启动时间。
除了启动过程以外,本申请各实施例中的方法也可以应用于工作过程中的任意其它时刻。例如,在启动过程中,可以通过低速模式从eMMC获取软件程序,在软件程序传输完毕并运行后,可以在以后的任意时刻,按照本申请各实施例提供的方法确定采样点,然后切换高速模式与eMMC进行数据传输。
在一个可选的实施方式中,所述主控制器可以根据采样点直接从eMMC获取数据。在其他可选的实施方式中,所述主控制器和所述eMMC均可以与内存连接,所述主控制器可以控制所述eMMC将数据传输至所述内存,所述主控制器可以从所述内存中读取所述数据。在确定采样点后,主控制器、eMMC和内存之间进行通信的具体实现原理属于现有技术,此处不再赘述。
本实施例提供的数据传输方法,可以从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间,在确定采样点后,可以根据所述采样点,从所述eMMC获取数据,能够有效减少确定采样点所花费的时间,提高数据传输的整体效率,提升设备的处理速度。
本申请各实施例中,将通过对测试点进行测试的方法确定采样点的流程记为tuning(测试)流程。在一些技术中,tuning流程需要遍历时钟周期的各个测试点才能确定采样点。本申请实施例中,可以通过避开tuning流程来提高确定采样点的效率,或者,可以通过减少tuning流程的时间来提高确定采样点的效率。下面分别通过以下实施例进行说明。
图3为本申请实施例提供的另一种数据传输方法的流程示意图。图3所示方案是在图2所示方案的基础上,将前一次的tuning结果存储下来,使用已存储的采样点(use savedtuning point)来确定本次上电后的采样点。
如图3所示,所述数据传输方法可以包括:
301、获取预先存储的采样点信息。
302、根据所述预先存储的采样点信息,确定所述用于从eMMC获取数据的采样点。
本实施例中,通过301至302来确定采样点。
其中,所述预先存储的采样点信息,可以是之前通过tuning流程确定的采样点信息,例如可以是上一次tuning流程确定的采样点信息,也可以是之前任意一次tuning流程确定的采样点信息。
虽然eMMC的采样点选取和eMMC器件本身、主控制器、电路板设计、温度等条件都有关系,但是可以预计的是在短时间、环境变化不大、产品定型(eMMC器件确定、主控制器确定以及电路板设计确定)的情况下,采样点基本不会发生太大变化。因此,可以使用之前通过tuning流程确定的采样点作为本次传输数据时的采样点。
可选的,所述预先存储的采样点信息可以包括上一次下电前通过对所述时钟周期的至少部分测试点进行测试得到的采样点的信息。例如,可以对时钟周期的全部测试点进行测试,确定采样点,也可以仅对部分测试点进行测试,确定采样点。
在每次通过tuning流程确定采样点后,可以存储采样点的信息,供下一次直接使用,例如在下一次启动时读取上一次的采样点信息,从而直接切换到高速模式,减少读取软件程序的时间,提高启动速度。
所述采样点信息可以为用于表示采样点在时钟周期中的位置的信息,例如,所述采样点信息可以用于表示采样点是时钟周期的第几个测试点,或者,采样点与时钟周期上升沿之间的时间间隔等。
可以将采样点信息存储到任意非易失性(掉电不丢)的存储器中。可选的,可以将所述采样点信息存储到所述eMMC中,即,获取预先存储的旧的采样点信息,可以包括:获取所述eMMC中存储的采样点信息,通过eMMC存储采样点信息,无需增加新的硬件设备,有效节约成本和设备尺寸。
在一个可选的实施方式中,所述采样点信息可以存储在eMMC的分区中,从所述eMMC的分区中可以获取所存储的采样点信息。
所述分区可以为eMMC中的任意分区,例如可以为eMMC中boot分区、RPMB(ReplayProtected Memory Block)分区、User Data分区、或者单独划分出的逻辑分区例如GPP(General Purpose Partitions)分区等。从上述任一分区中,选择一个不会被使用的、空闲的块(block)来存储采样点信息。
在另一个可选的实施方式中,所述采样点信息可以存储在eMMC的非易失性的寄存器中,从所述eMMC的非易失性的寄存器中可以获取存储的采样点信息。
可选的,所述非易失性的存储器可以为eMMC中的EXT_CSD寄存器,在该寄存器中选取可读写的、掉电不丢失的、没有它用的寄存器bit(位)或者Byte(字节),来存储采样点信息,因为该寄存器可以直接通过CMD指令读取,而且访问速度比读分区要快,因此可以有效提高的启动速度。
在读取到预先存储的采样点信息后,可以直接以预先存储的采样点作为本次数据传输的采样点。或者,也可以对所述预先存储的采样点进行修正,例如,随着使用次数的增加,最佳采样点的位置也会逐渐漂移,那么可以在每次获取到预先存储的采样点信息后,将采样点+1作为本次采样点使用。
通过301至302,可以从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,由于读取采样点信息所需的时间要远小于遍历时钟周期的所有测试点确定采样点所需的时间,因此本实施例提供的方法可以有效提高确定采样点的效率。
303、根据所述采样点,从所述eMMC获取数据。
本实施例中303的具体实现原理和过程可以参见前述实施例,此处不再赘述。
可选的,在上电后,可以以第一传输速率从所述eMMC获取所述预先存储的采样点信息。在获取到采样点后,可以以第二传输速率从所述eMMC获取数据,其中,所述第二传输速率大于所述第一传输速率。所述第一传输速率和所述第二传输速率可以分别对应于eMMC的低速模式和高速模式,从而有效实现低速模式和高速模式的切换,保证正常顺利工作。
可选的,在根据本实施例提供的方法确定采样点并从eMMC获取软件程序以实现启动流程后,还可以在后续工作过程中进行一次tuning流程,因为随着时间变化,最合适的采样点的位置也可能会发生变化,因此需要不断地更新存储的采样点信息。
可选的,在通过读取预先存储的采样点信息确定本次的采样点后,还可以在eMMC空闲期间,通过对时钟周期的至少部分测试点进行测试,确定本次上电后的采样点,并存储所确定的采样点信息。
在一可选的实施方式中,存储所确定的采样点信息,可以包括:存储所述所确定的采样点并删除原来存储的采样点;或者,将所述所确定的采样点信息覆盖原来的采样点信息。所述所确定的采样点信息可以供下一次使用,保证采样点信息被实时更新,提高数据传输的准确性。
在另一可选的实施方式中,在存储所确定的采样点信息后,可以保留原来存储的采样点信息。在下一次上电后,可以从预先存储的多个采样点信息中选择其中一个使用,例如可以选择最新存储的采样点信息使用。
在存储所确定的采样点信息时,可以通过校验算法计算所述采样点信息对应的校验值,存储所述采样点信息及对应的校验值。其中,所述校验算法可以包括循环冗余校验(Cyclic Redundancy Check,CRC)算法或安全散列算法(Secure Hash Algorithm,SHA)等。通过校验手段可以保证存储的采样点信息的准确性。
本实施例提供的数据传输方法,通过获取预先存储的采样点信息,并根据所述预先存储的采样点信息,确定所述用于从eMMC获取数据的采样点,无需对时钟周期的所有测试点进行测试即可确定采样点,有效提高了数据传输的整体效率。
除了图3所示实施例提供的方案以外,还可以通过其他方法避开tuning流程确定采样点。可选的,可以获取eMMC硬件信息、主控硬件信息、环境信息,根据所述eMMC硬件信息、主控硬件信息、环境信息,从时钟周期内的多个测试点中确定采样点。
由于eMMC的采样点选取和eMMC器件本身、主控制器、环境等条件有关系,因此,每次上电后对应的最合适的采样点可能并不相同,根据获取eMMC硬件信息、主控硬件信息、环境信息,可以计算对应的采样点。
其中,所述eMMC硬件信息可以包括eMMC已经使用的时间和/或已经使用的次数等,所述主控硬件信息可以包括主控制器已经使用的时间和/或已经使用的次数等,所述环境信息可以包括温度信息和/或湿度信息等。可选的,所述eMMC和主控制器的已经使用的时间或次数可以具体是指出厂后已经使用的时间或次数。
具体地,可以预先对eMMC和主控制器进行测试,建立eMMC硬件信息、主控硬件信息、环境信息等数据与采样点之间的对应关系,并保存所述对应关系。进一步地,在实际工作过程中还可以不断地根据实际工作状态更新所述对应关系。在需要时,可以通过所述对应关系确定采样点,使得采样点的选择满足当前的eMMC硬件状态、主控硬件状态以及环境状态的需求,有效提高选择采样点的速度。
图4为本申请实施例提供的又一种数据传输方法的流程示意图。图4所示方案是在图2所示方案的基础上,对所述时钟周期的部分区间的测试点进行测试,确定采样点。
如图4所示,所述数据传输方法可以包括:
401、对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间,其中,所述可用区间为所述时钟周期中可用的测试点所在的区间。
在一个时钟周期中的全部测试点中,可能会有多个可用的测试点,其中可用表示以该测试点作为采样点时可以准确地从eMMC获取数据。
402、根据所述可用区间,确定采样点。
本实施例中,可以通过401和402来确定采样点。本实施例中在确定采样点时依然需要用到tuning流程,但是,不是遍历全部的测试点,而是仅对其中部分测试点进行测试。具体地,可以采用二分法(dichotomous division tuning)的方式来减少tuning流程的时间。
图5为本申请实施例提供的一种数据处理方法中采样点的位置示意图。tuning流程是从一个时钟周期中选取一个合适的测试点作为采样点,因此,可以将一个时钟周期看做一个圆环,通常可用的测试点与不可用的测试点的分布是成段的,可用的测试点会集中在一起,不可用的测试点也会集中在一起。图5所示的圆环表示一个时钟周期,其中阴影部分表示不可用的测试点所在的范围即不可用区间,白色部分表示可用的测试点所在的范围即可用区间。通常最适合采样的测试点也是可用区间的中间的那个测试点,即图5中的白色部分的中点。
可选的,401中的对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间,可以包括:依次对时钟周期的测试点进行测试,直至确定所述时钟周期中测试点从可用变为不可用的分界线以及从不可用变为可用的分界线;根据所述从可用变为不可用的分界线以及所述从不可用变为可用的分界线,确定所述时钟周期的可用区间。
如图5所示,测试点从可用变为不可用的分界线以及从不可用变为可用的分界线,可以为图5中阴影部分与白色部分的两个分界线,通过找到可用和不可用的分界线,能够快速、准确地确定可用区间。
可以从时钟周期的第一个测试点开始,依次对各个测试点进行测试。在对所述时钟周期的任一测试点进行测试时,可以根据该测试点从所述eMMC中获取测试数据包,将获取到的测试数据包与本地存储(即主控制器中存储的)的测试数据包进行对比,若一致,则确定所述测试点为可用的测试点,若不一致,则确定所述测试点为不可用的测试点。
假设所述时钟周期中第1个点至第i-1个点是不可用的,第i个点至第j个点是可用的,第j+1个点至第256个点又是不可用的,那么测试到第j+1个点就可以停止了,因为确定了可用区间为第i个点至第j个点所在的区间。这样,只需要测试j+1次,就可以确定可用区间。
在确定可用区间后,可以从可用区间中选择一个测试点作为采样点。虽然可能存在多个可用的测试点,但是由于温漂等原因,在工作过程中,可用测试点可能会不断发生漂移,原本可用的测试点,在一段时间后会变为不可用的测试点,但是这种漂移一般不会太严重。
可选的,402中的根据所述可用区间,确定采样点,可以包括:选择位于所述可用区间中心位置的测试点作为所述采样点。例如,图3中圆环白色部分中间位置的黑点可以作为采样点,能够最大限度地避免工作过程中的环境变化导致采样点不可用,提高数据传输的稳定性。
例如,按照前文的假设,可以选择第(i+j)/2个点作为采样点,若(i+j)/2非整数,则可以选择其整数部分对应的测试点作为采样点。
在其他可选的实现方式中,也可以选择可用区间中除中心位置以外的测试点作为采样点,例如,可以选择中心位置周围预设范围内的测试点作为采样点。
通过401至402,可以从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,由于仅仅对部分测试点进行了测试,因此,本实施例中确定采样点所用的时间小于遍历所述时钟周期的所有测试点确定采样点所需的时间。
403、根据所述采样点,从所述eMMC获取数据。
本实施例中403的具体实现原理和过程可以参见前述实施例,此处不再赘述。
本实施例提供的数据传输方法,可以通过对所述时钟周期的部分区间的测试点进行测试,确定采样点,相比对遍历时钟周期的测试点确定采样点的方法,能够有效减少tuning流程的时间,相比于直接读取上一次存储的采样点信息来确定采样点的方法,根据tuning流程确定的采样点更加符合本次上电后的需求,提高了选择采样点的准确性。
除了图4所示实施例提供的方案以外,还可以通过其他方法来减少tuning流程的时间。可选的,可以对所述时钟周期内的部分测试点进行测试,确定采样点,其中,所述部分测试点中任意两测试点均不相邻。也就是说,从时钟周期的全部采样点中选择互不相邻的若干采样点进行测试。
一种可选的实施方式是,在所述时钟周期的全部采样点中,每隔n个点,挑选出一个测试点,对挑选出的测试点进行测试,确定其是否可用。例如,可以仅对单数的测试点进行测试,或者,每隔5个测试点测试一次。
在对若干个测试点进行测试后,可以找到至少一个可用的测试点,然后,从所述至少一个可用的测试点中确定采样点。例如,可以在所述至少一个可用的测试点中,选择最中间的测试点作为采样点,从而实现不需遍历所有的测试点也可以确定采样点。
另一种可选的实施方式是,可以将整个时钟周期划分多个区间,并从每个区间中选择一个测试点进行测试,确定该测试点是不是可用的,最后,根据各个区间的测试结果,选择一个区间作为最适合采样的区间,并从所述最适合采样的区间中选择一个测试点作为采样点。
其中,所述最适合采样的区间可以为经测试可用的测试点所在的区间中,位于中心位置的区间。
例如,将整个时钟周期分为10个区间,每个区间挑选出一个测试点,分别记为第1至第10个测试点,假设经过测试,第1、2、3个测试点是不可用的,第4至第10个测试点是可用的,那么可以确定第4至第10个区间中,位于中间位置的区间,即第7个区间是最适合采样的区间,从中选择一个测试点作为采样点。
通过在时钟周期的全部采样点中选择互不相邻的若干采样点进行测试,无需遍历全部的采样点,可以在兼顾准确性的基础上,提升采样点选取的效率。
图6为本申请实施例提供的一种数据传输装置的结构示意图。所述数据传输装置可以为任意能够实现数据传输功能的装置,例如图1中的主控制器。所述数据传输装置可以执行上述图2所对应的数据传输方法,参考附图6所示,所述数据传输装置可以包括:
存储器11,用于存储指令;
处理器12,用于运行所述存储器中存储的指令以实现:
从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;
根据所述采样点,从所述eMMC获取数据。
可选的,该数据传输装置的结构中还可以包括通信接口13,用于与其他设备或通信网络通信。
在一个可实施的方式中,所述数据包括软件程序,所述装置处理器12还用于:
在根据所述采样点,从所述eMMC获取软件程序之后,运行所述软件程序。
在一个可实施的方式中,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理器12具体用于:
获取预先存储的采样点信息;
根据所述预先存储的采样点信息,确定所述用于从eMMC获取数据的采样点。
在一个可实施的方式中,所述预先存储的采样点信息包括上一次下电前通过对所述时钟周期的至少部分测试点进行测试得到的采样点的信息。
在一个可实施的方式中,在获取预先存储的旧的采样点信息时,所述处理器12具体用于:
获取所述eMMC中存储的采样点信息。
在一个可实施的方式中,在获取所述eMMC中存储的采样点信息时,所述处理器12具体用于:
获取所述eMMC的分区中存储的采样点信息。
在一个可实施的方式中,在获取所述eMMC中存储的采样点信息时,所述处理器12具体用于:
获取所述eMMC的非易失性的寄存器中存储的采样点信息。
在一个可实施的方式中,在获取所述eMMC中存储的采样点信息时,所述处理器12具体用于:
在上电后,以第一传输速率从所述eMMC获取采样点信息。
在一个可实施的方式中,在根据所述采样点,从所述eMMC获取数据时,包括:
根据所述采样点,以第二传输速率从所述eMMC获取数据;
其中,所述第二传输速率大于所述第一传输速率。
在一个可实施的方式中,在获取所述eMMC中存储的采样点信息之后,所述处理器12还用于:
在eMMC空闲期间,通过对所述时钟周期的至少部分测试点进行测试,确定本次上电后的采样点;
存储所确定的采样点信息。
在一个可实施的方式中,在存储所确定的采样点信息时,所述处理器12具体用于:
通过校验算法计算所述采样点信息对应的校验值;
存储所述采样点信息及对应的校验值。
在一个可实施的方式中,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理器12具体用于:
对所述时钟周期的部分区间的测试点进行测试,确定采样点。
在一个可实施的方式中,在对所述时钟周期的部分区间的测试点进行测试,确定采样点时,所述处理器12具体用于:
对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间,其中,所述可用区间为所述时钟周期中可用的测试点所在的区间;
根据所述可用区间,确定采样点。
在一个可实施的方式中,在对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间时,所述处理器12具体用于:
依次对时钟周期的测试点进行测试,直至确定所述时钟周期中测试点从可用变为不可用的分界线以及从不可用变为可用的分界线;
根据所述从可用变为不可用的分界线以及所述从不可用变为可用的分界线,确定所述时钟周期的可用区间。
在一个可实施的方式中,在对所述时钟周期的任一测试点进行测试时,所述处理器12具体用于:
根据该测试点从所述eMMC中获取测试数据包;
将获取到的测试数据包与本地存储的测试数据包进行对比,若一致,则确定所述测试点为可用的测试点,若不一致,则确定所述测试点为不可用的测试点。
在一个可实施的方式中,在根据所述可用区间,确定采样点时,所述处理器12具体用于:
选择位于所述可用区间中心位置的测试点作为所述采样点。
在一个可实施的方式中,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理器12具体用于:
获取eMMC硬件信息、主控硬件信息、环境信息中的至少一项,根据所获取的至少一项信息,从时钟周期内的多个测试点中确定采样点。
在一个可实施的方式中,所述eMMC硬件信息包括eMMC已经使用的时间和/或已经使用的次数;所述主控硬件信息包括用于控制所述eMMC的主控制器已经使用的时间和/或已经使用的次数;所述环境信息包括温度信息和/或湿度信息。
在一个可实施的方式中,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理器12具体用于:
从所述时钟周期的全部采样点中选择互不相邻的若干测试点进行测试,确定采样点。
在一个可实施的方式中,在从所述时钟周期的全部采样点中选择互不相邻的若干测试点进行测试,确定采样点时,所述处理器12具体用于:
将所述时钟周期划分为多个区间,每个区间选择一个测试点进行测试;
根据测试的结果,选择最适合采样的区间;
从所述最适合采样的区间中选择一个测试点作为采样点。
图6所示数据传输装置可以执行图1-图5所示实施例的方法,本实施例未详细描述的部分,可参考对图1-图5所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1-图5所示实施例中的描述,在此不再赘述。
图7为本申请实施例提供的另一种数据传输装置的结构示意图。所述数据传输装置可以执行上述图2所对应的数据传输方法,参考附图7所示,所述数据传输装置可以包括:
处理电路701,用于从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;
接收电路702,用于根据所述采样点,从所述eMMC获取数据。
在一个可实施的方式中,所述数据包括软件程序,所述处理电路702还用于:
在根据所述采样点,从所述eMMC获取软件程序之后,运行所述软件程序。
在一个可实施的方式中,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理电路702具体用于:
获取预先存储的采样点信息;
根据所述预先存储采样点信息,确定所述用于从eMMC获取数据的采样点。
在一个可实施的方式中,所述预先存储的采样点信息包括上一次下电前通过对所述时钟周期的至少部分测试点进行测试得到的采样点的信息。
在一个可实施的方式中,在获取预先存储的旧的采样点信息时,所述处理电路702具体用于:
获取所述eMMC中存储的采样点信息。
在一个可实施的方式中,在获取所述eMMC中存储的采样点信息时,所述处理电路702具体用于:
获取所述eMMC的分区中存储的采样点信息。
在一个可实施的方式中,在获取所述eMMC中存储的采样点信息时,所述处理电路702具体用于:
获取所述eMMC的非易失性的寄存器中存储的采样点信息。
在一个可实施的方式中,在获取所述eMMC中存储的采样点信息时,所述处理电路702具体用于:
在上电后,以第一传输速率从所述eMMC获取采样点信息。
在一个可实施的方式中,在根据所述采样点,从所述eMMC获取数据时,包括:
根据所述采样点,以第二传输速率从所述eMMC获取数据;
其中,所述第二传输速率大于所述第一传输速率。
在一个可实施的方式中,在获取所述eMMC中存储的采样点信息之后,所述处理电路702还用于:
在eMMC空闲期间,通过对所述时钟周期的至少部分测试点进行测试,确定本次上电后的采样点;
存储所确定的采样点信息。
在一个可实施的方式中,在存储所确定的采样点信息时,所述处理电路702具体用于:
通过校验算法计算所述采样点信息对应的校验值;
存储所述采样点信息及对应的校验值。
在一个可实施的方式中,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理电路702具体用于:
对所述时钟周期的部分区间的测试点进行测试,确定采样点。
在一个可实施的方式中,在对所述时钟周期的部分区间的测试点进行测试,确定采样点时,所述处理电路702具体用于:
对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间,其中,所述可用区间为所述时钟周期中可用的测试点所在的区间;
根据所述可用区间,确定采样点。
在一个可实施的方式中,在对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间时,所述处理电路702具体用于:
依次对时钟周期的测试点进行测试,直至确定所述时钟周期中测试点从可用变为不可用的分界线以及从不可用变为可用的分界线;
根据所述从可用变为不可用的分界线以及所述从不可用变为可用的分界线,确定所述时钟周期的可用区间。
在一个可实施的方式中,在对所述时钟周期的任一测试点进行测试时,所述处理电路702具体用于:
根据该测试点从所述eMMC中获取测试数据包;
将获取到的测试数据包与本地存储的测试数据包进行对比,若一致,则确定所述测试点为可用的测试点,若不一致,则确定所述测试点为不可用的测试点。
在一个可实施的方式中,在根据所述可用区间,确定采样点时,所述处理电路702具体用于:
选择位于所述可用区间中心位置的测试点作为所述采样点。
在一个可实施的方式中,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理电路702具体用于:
获取eMMC硬件信息、主控硬件信息、环境信息中的至少一项,根据所获取的至少一项信息,从时钟周期内的多个测试点中确定采样点。
在一个可实施的方式中,所述eMMC硬件信息包括eMMC已经使用的时间和/或已经使用的次数;所述主控硬件信息包括用于控制所述eMMC的主控制器已经使用的时间和/或已经使用的次数;所述环境信息包括温度信息和/或湿度信息。
在一个可实施的方式中,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理电路702具体用于:
从所述时钟周期的全部采样点中选择互不相邻的若干测试点进行测试,确定采样点。
在一个可实施的方式中,在从所述时钟周期的全部采样点中选择互不相邻的若干测试点进行测试,确定采样点时,所述处理电路702具体用于:
将所述时钟周期划分为多个区间,每个区间选择一个测试点进行测试;
根据测试的结果,选择最适合采样的区间;
从所述最适合采样的区间中选择一个测试点作为采样点。
本实施例中的处理电路701、接收电路702,可以通过硬件电路来实现。例如,对数据进行比对,可以通过比较器实现;确定区间的中间位置,可以通过加法电路和除法电路来实现。
图7所示数据传输装置可以执行图1-图5所示实施例的方法,本实施例未详细描述的部分,可参考对图1-图5所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1-图5所示实施例中的描述,在此不再赘述。
本申请实施例还提供一种电子设备,包括图6所示实施例提供的数据传输装置以及eMMC。
本申请实施例还提供一种电子设备,包括图7所示实施例提供的数据传输装置以及eMMC。
本申请实施例提供的电子设备中各部件的结构、功能均可以参见前述实施例,此处不再赘述。
另外,本申请实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上述图1-图5所示实施例中的数据传输方法。
另外,本申请实施例提供了一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行图1-图5所示实施例中的数据传输方法。
以上各个实施例中的技术方案、技术特征在与本相冲突的情况下均可以单独,或者进行组合,只要未超出本领域技术人员的认知范围,均属于本申请保护范围内的等同实施例。
在本申请所提供的几个实施例中,应该理解到,所揭露的相关遥控装置和方法,可以通过其它的方式实现。例如,以上所描述的遥控装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,遥控装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得计算机处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read_Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、磁盘或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (49)

1.一种数据传输方法,其特征在于,包括:
从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;
根据所述采样点,从所述eMMC获取数据。
2.根据权利要求1所述的方法,其特征在于,所述数据包括软件程序,所述方法还包括:
在根据所述采样点,从所述eMMC获取软件程序之后,运行所述软件程序。
3.根据权利要求1所述的方法,其特征在于,从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,包括:
获取预先存储的采样点信息;
根据所述预先存储的采样点信息,确定所述用于从eMMC获取数据的采样点。
4.根据权利要求3所述的方法,其特征在于,所述预先存储的采样点信息包括上一次下电前通过对所述时钟周期的至少部分测试点进行测试得到的采样点的信息。
5.根据权利要求3所述的方法,其特征在于,获取预先存储的采样点信息,包括:
获取所述eMMC中存储的采样点信息。
6.根据权利要求5所述的方法,其特征在于,获取所述eMMC中存储的采样点信息,包括:
获取所述eMMC的分区中存储的采样点信息。
7.根据权利要求5所述的方法,其特征在于,获取所述eMMC中存储的采样点信息,包括:
获取所述eMMC的非易失性的寄存器中存储的采样点信息。
8.根据权利要求5所述的方法,其特征在于,获取所述eMMC中存储的采样点信息,包括:
在上电后,以第一传输速率从所述eMMC获取采样点信息。
9.根据权利要求8所述的方法,其特征在于,根据所述采样点,从所述eMMC获取数据,包括:
根据所述采样点,以第二传输速率从所述eMMC获取数据;
其中,所述第二传输速率大于所述第一传输速率。
10.根据权利要求5所述的方法,其特征在于,在获取所述eMMC中存储的采样点信息之后,还包括:
在eMMC空闲期间,通过对所述时钟周期的至少部分测试点进行测试,确定本次上电后的采样点;
存储所确定的采样点信息。
11.根据权利要求10所述的方法,其特征在于,存储所确定的采样点信息,包括:
通过校验算法计算所述采样点信息对应的校验值;
存储所述采样点信息及对应的校验值。
12.根据权利要求1所述的方法,其特征在于,从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,包括:
对所述时钟周期的部分区间的测试点进行测试,确定采样点。
13.根据权利要求12所述的方法,其特征在于,对所述时钟周期的部分区间的测试点进行测试,确定采样点,包括:
对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间,其中,所述可用区间为所述时钟周期中可用的测试点所在的区间;
根据所述可用区间,确定采样点。
14.根据权利要求13所述的方法,其特征在于,对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间,包括:
依次对时钟周期的测试点进行测试,直至确定所述时钟周期中测试点从可用变为不可用的分界线以及从不可用变为可用的分界线;
根据所述从可用变为不可用的分界线以及所述从不可用变为可用的分界线,确定所述时钟周期的可用区间。
15.根据权利要求14所述的方法,其特征在于,对所述时钟周期的任一测试点进行测试,包括:
根据该测试点从所述eMMC中获取测试数据包;
将获取到的测试数据包与本地存储的测试数据包进行对比,若一致,则确定所述测试点为可用的测试点,若不一致,则确定所述测试点为不可用的测试点。
16.根据权利要求13所述的方法,其特征在于,根据所述可用区间,确定采样点,包括:
选择位于所述可用区间中心位置的测试点作为所述采样点。
17.根据权利要求1所述的方法,其特征在于,从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,包括:
获取eMMC硬件信息、主控硬件信息、环境信息中的至少一项,根据所获取的至少一项信息,从时钟周期内的多个测试点中确定采样点。
18.根据权利要求17所述的方法,其特征在于,所述eMMC硬件信息包括eMMC已经使用的时间和/或已经使用的次数;所述主控硬件信息包括用于控制所述eMMC的主控制器已经使用的时间和/或已经使用的次数;所述环境信息包括温度信息和/或湿度信息。
19.根据权利要求1所述的方法,其特征在于,从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,包括:
从所述时钟周期的全部采样点中选择互不相邻的若干测试点进行测试,确定采样点。
20.根据权利要求19所述的方法,其特征在于,从所述时钟周期的全部采样点中选择互不相邻的若干测试点进行测试,确定采样点,包括:
将所述时钟周期划分为多个区间,每个区间选择一个测试点进行测试;
根据测试的结果,选择最适合采样的区间;
从所述最适合采样的区间中选择一个测试点作为采样点。
21.一种数据传输装置,其特征在于,包括:
存储器,用于存储指令;
处理器,用于运行所述存储器中存储的指令以实现:
从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;
根据所述采样点,从所述eMMC获取数据。
22.根据权利要求21所述的装置,其特征在于,所述数据包括软件程序,所述处理器还用于:
在根据所述采样点,从所述eMMC获取软件程序之后,运行所述软件程序。
23.根据权利要求21所述的装置,其特征在于,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理器具体用于:
获取预先存储的采样点信息;
根据所述预先存储采样点信息,确定所述用于从eMMC获取数据的采样点。
24.根据权利要求23所述的装置,其特征在于,所述预先存储的采样点信息包括上一次下电前通过对所述时钟周期的至少部分测试点进行测试得到的采样点的信息。
25.根据权利要求23所述的装置,其特征在于,在获取预先存储的采样点信息时,所述处理器具体用于:
获取所述eMMC中存储的采样点信息。
26.根据权利要求25所述的装置,其特征在于,在获取所述eMMC中存储的采样点信息时,所述处理器具体用于:
获取所述eMMC的分区中存储的采样点信息。
27.根据权利要求25所述的装置,其特征在于,在获取所述eMMC中存储的采样点信息时,所述处理器具体用于:
获取所述eMMC的非易失性的寄存器中存储的采样点信息。
28.根据权利要求25所述的装置,其特征在于,在获取所述eMMC中存储的采样点信息时,所述处理器具体用于:
在上电后,以第一传输速率从所述eMMC获取采样点信息。
29.根据权利要求28所述的装置,其特征在于,在根据所述采样点,从所述eMMC获取数据时,包括:
根据所述采样点,以第二传输速率从所述eMMC获取数据;
其中,所述第二传输速率大于所述第一传输速率。
30.根据权利要求25所述的装置,其特征在于,在获取所述eMMC中存储的采样点信息之后,所述处理器还用于:
在eMMC空闲期间,通过对所述时钟周期的至少部分测试点进行测试,确定本次上电后的采样点;
存储所确定的采样点信息。
31.根据权利要求30所述的装置,其特征在于,在存储所确定的采样点信息时,所述处理器具体用于:
通过校验算法计算所述采样点信息对应的校验值;
存储所述采样点信息及对应的校验值。
32.根据权利要求21所述的装置,其特征在于,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理器具体用于:
对所述时钟周期的部分区间的测试点进行测试,确定采样点。
33.根据权利要求32所述的装置,其特征在于,在对所述时钟周期的部分区间的测试点进行测试,确定采样点时,所述处理器具体用于:
对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间,其中,所述可用区间为所述时钟周期中可用的测试点所在的区间;
根据所述可用区间,确定采样点。
34.根据权利要求33所述的装置,其特征在于,在对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间时,所述处理器具体用于:
依次对时钟周期的测试点进行测试,直至确定所述时钟周期中测试点从可用变为不可用的分界线以及从不可用变为可用的分界线;
根据所述从可用变为不可用的分界线以及所述从不可用变为可用的分界线,确定所述时钟周期的可用区间。
35.根据权利要求34所述的装置,其特征在于,在对所述时钟周期的任一测试点进行测试时,所述处理器具体用于:
根据该测试点从所述eMMC中获取测试数据包;
将获取到的测试数据包与本地存储的测试数据包进行对比,若一致,则确定所述测试点为可用的测试点,若不一致,则确定所述测试点为不可用的测试点。
36.根据权利要求33所述的装置,其特征在于,在根据所述可用区间,确定采样点时,所述处理器具体用于:
选择位于所述可用区间中心位置的测试点作为所述采样点。
37.根据权利要求21所述的装置,其特征在于,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理器具体用于:
获取eMMC硬件信息、主控硬件信息、环境信息中的至少一项,根据所获取的至少一项信息,从时钟周期内的多个测试点中确定采样点。
38.根据权利要求37所述的装置,其特征在于,所述eMMC硬件信息包括eMMC已经使用的时间和/或已经使用的次数;所述主控硬件信息包括用于控制所述eMMC的主控制器已经使用的时间和/或已经使用的次数;所述环境信息包括温度信息和/或湿度信息。
39.根据权利要求21所述的装置,其特征在于,在从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点时,所述处理器具体用于:
从所述时钟周期的全部采样点中选择互不相邻的若干测试点进行测试,确定采样点。
40.根据权利要求39所述的装置,其特征在于,在从所述时钟周期的全部采样点中选择互不相邻的若干测试点进行测试,确定采样点时,所述处理器具体用于:
将所述时钟周期划分为多个区间,每个区间选择一个测试点进行测试;
根据测试的结果,选择最适合采样的区间;
从所述最适合采样的区间中选择一个测试点作为采样点。
41.一种数据传输装置,其特征在于,包括:
处理电路,用于从时钟周期的多个测试点中确定用于从eMMC获取数据的采样点,其中,确定所述采样点所用的时间小于预设时间,所述预设时间为遍历所述时钟周期的所有测试点确定采样点所需的时间;
接收电路,用于根据所述采样点,从所述eMMC获取数据。
42.根据权利要求41所述的装置,其特征在于,所述处理电路具体用于:
获取预先存储的采样点信息;
根据所述预先存储的采样点信息,确定所述用于从eMMC获取数据的采样点。
43.根据权利要求42所述的装置,其特征在于,所述预先存储的采样点信息包括上一次下电前通过对所述时钟周期的至少部分测试点进行测试得到的采样点的信息。
44.根据权利要求41所述的装置,其特征在于,所述处理电路具体用于:
对所述时钟周期的部分区间的测试点进行测试,确定采样点。
45.根据权利要求41所述的装置,其特征在于,所述处理电路具体用于:
对所述时钟周期的部分区间的测试点进行测试,确定所述时钟周期的可用区间,其中,所述可用区间为所述时钟周期中可用的测试点所在的区间;
根据所述可用区间,确定采样点。
46.一种电子设备,其特征在于,包括:权利要求21-40任一项所述的数据传输装置以及eMMC。
47.一种电子设备,其特征在于,包括:权利要求41-45任一项所述的数据传输装置以及eMMC。
48.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-20中任意一项所述的数据传输方法。
49.一种计算机程序产品,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-20中任一项所述的数据传输方法。
CN202080004981.0A 2020-04-15 2020-04-15 数据传输方法、数据传输装置、电子设备和存储介质 Pending CN112673364A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/084907 WO2021207972A1 (zh) 2020-04-15 2020-04-15 数据传输方法、数据传输装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN112673364A true CN112673364A (zh) 2021-04-16

Family

ID=75413946

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080004981.0A Pending CN112673364A (zh) 2020-04-15 2020-04-15 数据传输方法、数据传输装置、电子设备和存储介质

Country Status (2)

Country Link
CN (1) CN112673364A (zh)
WO (1) WO2021207972A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116501235B (zh) * 2023-06-29 2024-02-23 珠海妙存科技有限公司 一种采样点的确定方法、系统、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273314A (zh) * 2017-05-24 2017-10-20 深圳市紫光同创电子有限公司 嵌入式多媒体芯片数据读取方法、设备及系统
CN109213703A (zh) * 2017-06-30 2019-01-15 华为技术有限公司 一种数据检测方法及数据检测装置
CN110764440A (zh) * 2019-07-31 2020-02-07 晶晨半导体(上海)股份有限公司 一种存储器的信号采样方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9772651B2 (en) * 2012-09-14 2017-09-26 Samsung Electronics Co., Ltd. Embedded multimedia card (eMMC), host controlling eMMC, and method operating eMMC system including the use of a switch command defining an adjustment delay for a data signal
CN109144938B (zh) * 2018-11-12 2023-11-03 成都傅立叶电子科技有限公司 一种实现eMMC芯片HS400高速接口通信的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273314A (zh) * 2017-05-24 2017-10-20 深圳市紫光同创电子有限公司 嵌入式多媒体芯片数据读取方法、设备及系统
CN109213703A (zh) * 2017-06-30 2019-01-15 华为技术有限公司 一种数据检测方法及数据检测装置
CN110764440A (zh) * 2019-07-31 2020-02-07 晶晨半导体(上海)股份有限公司 一种存储器的信号采样方法

Also Published As

Publication number Publication date
WO2021207972A1 (zh) 2021-10-21

Similar Documents

Publication Publication Date Title
US8683113B2 (en) Concurrently searching multiple devices of a non-volatile semiconductor memory
US8397017B2 (en) Controller and data storage device
US11960749B2 (en) Data migration method, host, and solid state disk
CN102135927B (zh) 一种基于nand flash的系统引导方法和装置
CN111737173B (zh) I2c总线通信控制方法、装置、系统及可读存储介质
EP2713519A1 (en) Electronic counter in non-volatile limited endurance memory
RU2475818C2 (ru) Способы и системы обмена данными
CN106776104B (zh) 一种Nand Flash控制器和终端以及控制Nand Flash的方法
CN113568848A (zh) 处理器、信号调整方法及计算机系统
CN112673364A (zh) 数据传输方法、数据传输装置、电子设备和存储介质
CN109240943B (zh) 地址映射关系反馈方法、装置、设备及可读存储介质
CN110704236A (zh) 芯片flash数据的在线校验方法及计算机存储介质
EP1540660B1 (en) Method of and apparatus for detecting an error in writing to persistent memory
WO2006019330A1 (en) Techniques to store configuration information in an option read-only memory
CN103902301A (zh) 读取bios的方法、装置以及处理器
US7043597B2 (en) System and method for updating firmware in a non-volatile memory without using a processor
CN113010236B (zh) 一种程序执行方法、装置、设备及存储介质
EP3891594B1 (en) Memory control system with a sequence processing unit
CN112148203B (zh) 存储器管理方法、装置、电子设备及存储介质
CN113835756A (zh) 主机命令解析方法和装置、固态硬盘控制器、固态硬盘
US20110078387A1 (en) Writing to memory using shared address buses
US20200073590A1 (en) Memory management method and storage controller
EP4261687A1 (en) Data check method and related device
CN115291801A (zh) 数据处理方法、装置、存储介质及电子装置
CN112148201A (zh) 数据写入方法、装置及存储介质

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