CN104704477B - 针对外部存储器调谐序列的最佳使用的算法 - Google Patents

针对外部存储器调谐序列的最佳使用的算法 Download PDF

Info

Publication number
CN104704477B
CN104704477B CN201380051770.2A CN201380051770A CN104704477B CN 104704477 B CN104704477 B CN 104704477B CN 201380051770 A CN201380051770 A CN 201380051770A CN 104704477 B CN104704477 B CN 104704477B
Authority
CN
China
Prior art keywords
storage card
tune
sent
host equipment
tune command
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
CN201380051770.2A
Other languages
English (en)
Other versions
CN104704477A (zh
Inventor
N·斯特劳斯
R·A·马诺尔
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN104704477A publication Critical patent/CN104704477A/zh
Application granted granted Critical
Publication of CN104704477B publication Critical patent/CN104704477B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • 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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System (AREA)
  • Circuits Of Receivers In General (AREA)

Abstract

提供了用于最佳地调谐主机设备中的存储卡的方法、装置和计算机程序产品。所述装置确定与所述存储卡相关联的至少一个调谐参数,发起关于存储卡的读取操作,以及基于所述至少一个调谐参数来向存储卡发送调谐命令。所述至少一个调谐参数包括存储卡的温度、自从上一个调谐序列被执行之后所经过的时间、从存储卡发送到主机设备的数据块的数量、和/或存储卡与主机设备之间的事项的数量。所述装置还从存储卡读取数据,检测与所读取的数据相关联的循环冗余校验(CRC)错误,以及在检测到CRC错误时向存储卡发送调谐命令。

Description

针对外部存储器调谐序列的最佳使用的算法
相关申请的交叉引用
本申请要求享有于2012年10月5日递交的、名称为“ALGORITHM FOR OPTIMALUSAGE OF SD CARD TUNING SEQUENCE USING CMD19TUNING COMMAND”的美国临时申请序列No.61/710,639的优先权,以引用方式将该申请明确地全部并入本文。
技术领域
概括地说,本公开内容涉及通信系统,具体地说,本公开内容涉及使用CMD19调谐命令以最佳地使用存储卡调谐序列。
背景技术
安全数字(SD)是被开发用于便携式设备的一种类型的非易失性(例如,闪速)存储卡格式,所述便携式设备如:蜂窝电话、智能电话、膝上型电脑、个人数字助理(PDA)、全球定位系统(GPS)设备、多媒体设备、视频设备、数字音频播放器(例如,MP3播放器)、照相机、游戏控制台、平板电脑、或任意其它类似的功能设备。例如,数码相机可以使用SD存储卡来存储和检索照片。便携式设备(还称为主机)向SD存储卡中写入数据并且从SD存储卡中读取数据,其中用于读取的动力来自于主机,而非来自于SD存储卡。
对于本领域的技术人员来说,通过将常规和传统方法的系统与在本公开内容的其余部分中参照附图所阐述的本发明的一些方面相比较,常规和传统方法的局限性和缺点将变得明显。
发明内容
在公开内容的一方面,提供了用于最佳地调谐主机设备中的存储卡的方法、计算机程序产品和装置。所述装置确定与所述存储卡相关联的至少一个调谐参数、发起对存储卡的读取操作、以及基于所述至少一个调谐参数来向存储卡发送调谐命令。所述至少一个调谐参数包括:存储卡的温度、自从上一个调谐序列被执行之后所经过的时间、从存储卡发送到主机设备的数据块的数量、和/或存储卡和主机设备之间的事项的数量。所述装置还可以从存储卡读取数据、检测与所读取的数据相关联的循环冗余校验(CRC)错误、以及在检测到CRC错误时向存储卡发送调谐命令。
附图说明
图1是示出了连接到主机设备的电子存储介质的示图。
图2是用于最佳地调谐主机设备中的存储卡的方法的流程图。
图3是示出了示例性装置中的不同模块/单元/组件之间的数据流的概念性数据流图。
图4是示出了针对采用处理系统的装置的硬件实现的例子的示图。
具体实施方式
在下面结合附图给出的详细描述旨在作为各种配置的说明,并不旨在表示可以实践本文所描述概念的唯一配置。出于提供对各种概念的全面理解的目的,详细描述包括具体细节。然而,对于本领域的技术人员显而易见的是,没有这些具体细节也可以实践这些概念。在一些情况下,以框图的形式示出了公知的结构和组件以避免对这些概念造成模糊。
现在参照各种装置和方法给出存储系统(例如,安全数字(SD)或嵌入式多媒体卡(eMMC)系统)的一些方面。这些装置和方法将在下面的详细描述中进行说明,并在附图中由各个框、模块、组件、电路、步骤、过程、算法等(统称为“元素”)来示出。可以使用电子硬件、计算机软件或它们的任意组合来实现这些元素。至于这些元素是实现为硬件还是软件,取决于特定的应用和对整个系统所施加的设计约束。
举例说明,元素或者元素的任何部分或者元素的任意组合可以利用包括一个或多个处理器的“处理系统”来实现。处理器的示例包括被配置为执行贯穿本公开内容所描述的各种功能的微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、状态机、门控逻辑、分立硬件电路以及其它适当的硬件。处理系统中的一个或多个处理器可以执行软件。无论是被称为软件、固件、中间件、微代码、硬件描述语言或其它名称,软件应该被广义地解释为意指指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用、软件应用、软件包、例程、子例程、对象、可执行文件、执行线程、过程、函数等。
因此,在一个或多个示例性实施例中,可以在硬件、软件、固件或者它们的任意组合中来实现所描述的功能。如果在软件中实现,则所述功能可以存储在非临时性计算机可读介质上或者编码为非临时性计算机可读介质上的一个或多个指令或代码。计算机可读介质包括计算机存储介质。存储介质可以是可以由计算机存取的任何可用介质。通过举例而非限制性的方式,这种计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁存储设备、或者可以用来以指令或数据结构的形式携带或存储期望的程序代码并可以被计算机存取的任意其它介质。如本文中所使用的,磁盘和光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能盘(DVD)以及软盘,其中磁盘通常磁性地复制数据,而光盘则用激光来光学地复制数据。上述各项的组合也应该包括在计算机可读介质的范围之内。
图1是示出了通过连接115被连接到主机设备(例如,移动电话、平板电脑或其它电子设备)110的电子存储介质/存储卡(例如,安全数字(SD)存储卡或嵌入式多媒体卡(eMMC))120的示图100。在一方面,当存储卡120被连接到(例如,被插入)主机设备110时,主机设备110需要确定存储卡120的理想采样点,以最佳地执行与所述卡相关联的各种操作。主机设备110可以通过执行调谐序列来确定理想的采样点,其中,主机设备110向存储卡120发送调谐命令,而存储卡120反过来向主机设备110发送调谐模式。基于所述调谐模式,主机设备110可以确定理想的采样点。
根据一个方法,主机设备110只有在初始的卡检测时才可以执行调谐序列。根据另一个方法,支持自动调谐命令,其中,主机设备110的主机控制器开关每次向存储卡120请求数据时,存储卡120向主机设备110发送调谐序列。然而,发起针对每个接收事项的调谐序列的估计开销严重影响了功率、等待时间等,在常规操作中却并没有增加太多价值。
随着更快速的存储卡总线接口的进步和采用,当前最大的时钟可以被设置为208MHz或以上。因此,由于特定的卡延迟特性、热变化和影响采样点的其它因素,主机设备110的主机控制器可能被要求调整数据读取采样点。因为存储卡120没有它自己的时钟,并且数据是基于输入时钟被发送回主机设备110的,所以往返延迟应当被计入主机采样机制中。
存储卡规范(例如SD规范)定义了用于查找当前最佳采样点的程序。然而,所述规范没有阐述该程序何时应当由于热变化、耗损均衡、块计数等而重复。可以针对每一个读取事项来执行调谐,但是对功率、等待时间和性能的负面影响是明显的。当前调谐序列可以占用150msec,但是不包括任意主机处理时间,所述任意主机处理时间可以进一步扩展所述序列。因此,本公开内容旨在利用主机设备110可用的额外数据,以在执行调谐操作时最佳地使用用于调整主机采样时钟的调谐命令(例如,CMD19调谐命令)。
在一方面,本公开内容提高了存储卡的操作性能,所述存储卡支持超高速I(UHS-I)和/或超高速II(UHS-II)速率等级和用于调整主机采样时钟的CMD19调谐命令。提供了用于以最佳的方式使用CMD19调谐命令以维持正确的延迟线相位以及将所需要的调谐序列的数量最小化的算法。这保留了功率、改善了用户体验并且提高了主机设备的性能。
提供了一种自适应算法,该算法将使用一个或多个参数来判断是否有必要执行调谐序列。所述算法将评估标准,诸如:1)卡温度;2)自上一个调谐序列之后所经过的时间;3)从卡中读取的块的数量;4)循环冗余校验(CRC)错误发生;以及5)预定窗口上的事项数量。还可以评估其它各种标准。使用所述标准,主机设备110可以判断是否应当发起新的调谐序列。
就算法可以包括在决策标准中的参数而言,所述算法是自适应的。此外,可以在正常的操作期间执行所述算法。另外,所述算法通过执行调谐序列以及通告主机设备110的主机控制器开关,可以纠正CRC错误。
图2是用于最佳地调谐主机设备中的存储卡的方法的流程图200。例如,所述存储卡可以是SD卡或eMMC。所述方法可以由主机设备来执行。在步骤202,主机设备通电(即,激活)以变得可操作。在步骤204,主机设备将插入到(被连接到)主机设备中的存储卡初始化。
在步骤206,主机设备判断存储卡是否支持特定的速率等级,例如UHS-I和/或UHS-II。当主机设备确定存储卡不支持UHS-I和/或UHS-II时,主机设备继续步骤232,并且执行有关存储卡的传统模式操作。传统模式操作可以由低时钟频率来表征,并且可以不涉及调谐序列。
在步骤208,当主机设备确定存储卡支持UHS-I和/或UHS-II时,主机设备向存储卡发出(发送)调谐命令。调谐命令可以是CMD19调谐命令。存储卡反过来可以向主机设备发送调谐模式。在步骤210,基于调谐模式,主机设备可以选择用于执行与存储卡相关联的各种操作的最佳延迟线相位。
在步骤212,主机设备可以确定和记录与存储卡相关联的一个或多个调谐参数。所述调谐参数可以包括存储卡的温度、自从上一个调谐序列被执行之后所经过的时间、从存储卡发送到主机设备的数据块的数量、和/或存储卡和主机设备之间的事项的数量。
在步骤214,主机设备发起关于存储卡的读取/写入操作。所述读取/写入操作可以在从主机设备的主机控制器接收到请求时被发起。此后,主机设备可以基于一个或多个调谐参数来向存储卡发送调谐命令。
例如,在步骤216,主机设备判断存储卡的温度变化是否大于预定的门限。如果大于预定的门限,则在步骤228,主机设备向存储卡发送调谐命令。
在另一个例子中,在步骤218,主机设备判断自从上一个调谐序列被执行之后所经过的时间是否大于最大时间。如果大于最大时间,则在步骤228,主机设备向存储卡发送调谐命令。
在另一个例子中,在步骤220,主机设备判断从存储卡发送到主机设备的数据块的数量是否大于最大块计数。如果大于最大块计数,则在步骤228,主机设备向存储卡发送调谐命令。
在另一个例子中,在步骤222,主机设备判断预定窗口上存储卡和主机设备之间的事项的数量是否大于预定的门限。如果大于预定的门限,则在步骤228,主机设备向存储卡发送调谐命令。
在步骤224,如果步骤216、218、220和/或222处有关调谐参数的判断都不具有积极的结果,则主机设备可以从存储卡中读取数据。在步骤226,主机设备可以判断是否检测到与所读取的数据相关联的循环冗余校验(CRC)错误。如果检测到CRC错误,则在步骤228,主机设备向存储卡发送调谐命令。在步骤230,如果没有检测到CRC错误,则主机设备可以将所读取的数据存储到存储器中。
如上所述,调谐命令可以是CMD19调谐命令。在主机设备在步骤228向存储卡发送CMD19调谐命令之后,存储卡可以向主机设备返回调谐模式。基于所述调谐模式,主机设备可以确定所述存储卡的理想采样点(步骤210),其中,理想采样点允许主机设备最佳地执行与存储卡相关联的各种操作。
图3是示出了示例性装置302中的不同模块/单元/组件之间的数据流的概念数据流图300。所述装置可以是主机设备。所述装置包括接收模块304、卡初始化模块306、调谐模块308、参数处理模块310、读取/写入模块312、存储器314和发送模块316。
当装置302通电(即,激活)以变得可操作时,卡初始化模块306对插入到(连接到)装置302中的存储卡350进行初始化。例如,存储卡350可以是SD卡或eMMC。卡初始化模块306可以判断所述存储卡350是否支持特定的速率等级,例如UHS-I和/或UHS-II。当卡初始化模块306确定存储卡350不支持UHS-I和/或UHS-II时,卡初始化模块306可以指导装置302执行与存储卡350相关的传统模式操作。传统模式操作可以由低时钟频率来表征,并且可以不涉及调谐序列。
当卡初始化模块306确定存储卡350支持UHS-I和/或UHS-II时,调谐模块308向存储卡350发出(发送)调谐命令(经由发送模块316)。调谐命令可以是CMD19调谐命令。调谐模块308反过来可以从存储卡350接收调谐模式(经由接收模块304)。基于调谐模式,调谐模块308可以选择用于执行与存储卡350相关联的各种操作的最佳延迟线相位。
参数处理模块310可以确定和记录与存储卡350相关联的一个或多个调谐参数。调谐参数可以包括存储卡350的温度、自从上一个调谐序列被执行之后所经过的时间、从存储卡350发送到装置302的数据块的数量、和/或存储卡350和装置302之间的事项的数量。
读取/写入模块312可以发起关于存储卡350的读取/写入操作。在从装置302的主机控制器接收到请求时,可以发起读取/写入操作。此后,调谐模块308可以基于一个或多个调谐参数来确定向存储卡350发送调谐命令。
例如,调谐模块308可以判断存储卡350的温度变化是否大于预定的门限。如果大于预定的门限,则调谐模块308向存储卡350发送调谐命令。
在另一个例子中,调谐模块308可以判断自从上一个调谐序列被执行之后所经过的时间是否大于最大时间。如果大于最大时间,则调谐模块308向存储卡350发送调谐命令。
在另一个例子中,调谐模块308可以判断从存储卡350发送到装置302的数据块的数量是否大于最大块计数。如果大于最大块计数,则调谐模块308向存储卡350发送调谐命令。
在另一个例子中,主机设备可以判断预定窗口上存储卡350和装置302之间的事项的数量是否大于预定的门限。如果大于预定的门限,则调谐模块308向存储卡350发送调谐命令。
如果有关调谐参数的判断都没有被肯定地确定,则读取/写入模块312可以从存储卡350读取数据。读取/写入模块312可以判断是否检测到与所读取的数据相关联的循环冗余校验(CRC)错误。如果读取/写入模块312检测到CRC错误,则调谐模块308向存储卡350发送调谐命令。如果读取/写入模块312没有检测到CRC错误,则读取/写入模块312可以将所读取的数据存储到存储器314中。
如上所述,调谐命令可以是CMD19调谐命令。在调谐模块308向存储卡350发送CMD19调谐命令之后,存储卡350可以向装置302返回调谐模式。基于所述调谐模式,调谐模块308可以确定所述存储卡350的理想采样点,其中,所述理想采样点允许装置302最佳地执行与存储卡350相关联的各种操作。
所述装置可以包括执行图2的前述流程图中的算法的每一步的额外的模块。因此,图2的前述流程图中的每一步都可以由模块执行,并且所述装置可以包括那些模块中的一个或多个。所述模块可以是专门配置来实现所述的过程/算法的一个或多个硬件组件,所述一个或多个硬件组件由被配置为执行所述的过程/算法的处理器实现,所述过程或算法被存储在计算机可读介质中,用于由处理器或其中的一些组合来实现。
图4是示出了针对使用处理系统414的装置302’的硬件实现方式的例子的示图400。处理系统414可以利用总线架构来实现,所述总线架构通常由总线424表示。总线424可以包括任意数量的互连总线和桥,这取决于处理系统414的具体应用和整体设计约束。总线424将包括一个或多个处理器和/或硬件模块的各种电路链接在一起,所述各种电路由处理器404、模块304、306、308、310、312、314、316和计算机可读介质406表示。总线424还可以将各种其它电路链接在一起,诸如定时源、外围设备、电压调节器和功率管理电路,其为本领域所公知,因此将不再做进一步的描述。
处理系统414包括耦合到计算机可读介质406的处理器404。处理器404负责一般处理,包括存储在计算机可读介质406上的软件的执行。所述软件在被处理器404执行时,使得处理系统414执行以上针对任意特定装置所描述的各种功能。计算机可读介质406还被用于存储数据,所述数据在处理器执行软件时被处理器404所操控。处理系统还包括模块304、306、308、310、312、314和316中的至少一个。所述模块可以是运行在处理器404中、驻留/存储在计算机可读介质406中的软件模块,耦合到处理器404的一个或多个硬件模块,或其中的一些组合。
在一种配置中,用于最佳地调谐主机设备中的存储卡的装置302/302’包括:用于确定与存储卡相关联的至少一个调谐参数的单元;用于发起关于存储卡的读取操作的单元;用于基于所述至少一个调谐参数向存储卡发送调谐命令的单元;用于从存储卡中读取数据的单元;用于检测与所读取的数据相关联的循环冗余校验(CRC)错误的单元;用于在检测到CRC错误时向存储卡发送调谐命令的单元;用于判断存储卡是否支持超高速(UHS)的单元;用于向存储卡发送调谐命令的单元;以及用于选择最佳延迟线相位的单元。前述单元可以是被配置为执行由前述单元所记载的功能的装置302的前述模块中的一个或多个和/或装置302’的处理系统414。
应当理解的是,所公开的过程中的步骤的特定次序或层次是示例性方法的说明。应当理解的是,基于设计偏好,可以重新排列这些过程中的步骤的特定次序或层次。此外,可以将一些步骤组合或者将其省略。所附的方法权利要求以示例性次序呈现了各个步骤的元素,而并不意味着受限于所呈现的特定次序或层次。
提供了前述说明以使本领域的任何技术人员都能够实践本文所描述的各种方面。对这些方面的各种修改对于本领域技术人员来说将是显而易见的,并且本文定义的一般原则可应用于其它方面。因此,权利要求书不旨在被限定于本文所示出的方面,而是应该符合与权利要求书的表达内容一致的全部范围,其中,除非明确地声明,否则以单数形式提及的元素不旨在意指“一个且仅一个”,而是意指“一个或多个”。除非特别说明,否则术语“一些”指代一个或多个。对本领域普通技术人员来说已知或者将要获知的、与贯穿本公开内容所描述的各种方面的元素等效的所有结构和功能在此都通过引用的方式明确并入本文,并且旨在被权利要求书所涵盖。此外,无论该公开内容是否在权利要求中被明确地记载,本文所公开的内容都不旨在奉献给公众。除非使用短语“用于……的单元”来明确地记载该元素,否则不得将该元素解释为功能单元。

Claims (20)

1.一种在主机设备中用于最佳地调谐存储卡的方法,包括:
确定与所述存储卡相关联的至少一个调谐参数,其中,所述至少一个调谐参数包括以下各项中的至少一项:
所述存储卡的温度;
自从上一个调谐序列被执行之后所经过的时间;
从所述存储卡发送到所述主机设备的数据块的数量;或
所述存储卡和所述主机设备之间的事项的数量;
发起关于所述存储卡的读取操作;以及
基于所述至少一个调谐参数,向所述存储卡发送调谐命令。
2.根据权利要求1所述的方法,其中,基于所述至少一个调谐参数向所述存储卡发送所述调谐命令包括:在以下几种情况下,向所述存储卡发送所述调谐命令:
所述存储卡的所述温度的变化大于预定门限;
自从所述上一个调谐序列被执行之后所经过的时间大于最大时间;
从所述存储卡发送到所述主机设备的所述数据块的数量大于最大块计数;或
在预定窗口上的所述存储卡和所述主机设备之间的所述事项的数量大于预定门限。
3.根据权利要求1所述的方法,还包括:
从所述存储卡读取数据;
检测与所读取的数据相关联的循环冗余校验CRC错误;以及
在检测到所述CRC错误时,向所述存储卡发送所述调谐命令。
4.根据权利要求1所述的方法,在确定与所述存储卡相关联的所述至少一个调谐参数之前,所述方法还包括:
确定所述存储卡支持超高速UHS;
向所述存储卡发送所述调谐命令;以及
选择最佳延迟线相位。
5.根据权利要求1所述的方法,其中,所述调谐命令是CMD19调谐命令。
6.一种在主机设备中用于最佳地调谐存储卡的装置,包括:
用于确定与所述存储卡相关联的至少一个调谐参数的单元,其中,所述至少一个调谐参数包括以下各项中的至少一项:
所述存储卡的温度;
自从上一个调谐序列被执行之后所经过的时间;
从所述存储卡发送到所述主机设备的数据块的数量;或
所述存储卡和所述主机设备之间的事项的数量;
用于发起关于所述存储卡的读取操作的单元;以及
用于基于所述至少一个调谐参数,向所述存储卡发送调谐命令的单元。
7.根据权利要求6所述的装置,其中,所述用于基于所述至少一个调谐参数向所述存储卡发送所述调谐命令的单元被配置为在以下情况下向所述存储卡发送所述调谐命令:
所述存储卡的所述温度的变化大于预定门限;
自从所述上一个调谐序列被执行之后所经过的时间大于最大时间;
从所述存储卡发送到所述主机设备的所述数据块的数量大于最大块计数;或
预定窗口上所述存储卡和所述主机设备之间的所述事项的数量大于预定门限。
8.根据权利要求6所述的装置,还包括:
用于从所述存储卡读取数据的单元;
用于检测与所读取的数据相关联的循环冗余校验CRC错误的单元;以及
用于在检测到所述CRC错误时向所述存储卡发送所述调谐命令的单元。
9.根据权利要求6所述的装置,所述装置还包括:
用于确定所述存储卡支持超高速UHS的单元;
用于向所述存储卡发送所述调谐命令的单元;以及
用于选择最佳延迟线相位的单元,
其中,确定所述存储卡支持UHS、向所述存储卡发送所述调谐命令、和选择最佳延迟线相位是在确定与所述存储卡相关联的所述至少一个调谐参数之前执行的。
10.根据权利要求6所述的装置,其中,所述调谐命令是CMD19调谐命令。
11.一种在主机设备中用于最佳地调谐存储卡的装置,包括:
处理系统,其被配置为:
确定与所述存储卡相关联的至少一个调谐参数,其中,所述至少一个调谐参数包括以下各项中的至少一项:
所述存储卡的温度;
自从上一个调谐序列被执行之后所经过的时间;
从所述存储卡发送到所述主机设备的数据块的数量;或
所述存储卡和所述主机设备之间的事项的数量;
发起关于所述存储卡的读取操作;以及
基于所述至少一个调谐参数,向所述存储卡发送调谐命令。
12.根据权利要求11所述的装置,其中,被配置为基于所述至少一个调谐参数向所述存储卡发送所述调谐命令的所述处理系统被配置为在以下几种情况下向所述存储卡发送所述调谐命令:
所述存储卡的所述温度的变化大于预定门限;
自从所述上一个调谐序列被执行之后所经过的时间大于最大时间;
从所述存储卡发送到所述主机设备的所述数据块的数量大于最大块计数;或
在预定窗口上的所述存储卡和所述主机设备之间的所述事项的数量大于预定门限。
13.根据权利要求11所述的装置,所述处理系统还被配置为:
从所述存储卡读取数据;
检测与所读取的数据相关联的循环冗余校验CRC错误;以及
在检测到所述CRC错误时,向所述存储卡发送所述调谐命令。
14.根据权利要求11所述的装置,在所述处理系统确定与所述存储卡相关联的所述至少一个调谐参数之前,所述处理系统还被配置为:
确定所述存储卡支持超高速UHS;
向所述存储卡发送所述调谐命令;以及
选择最佳延迟线相位。
15.根据权利要求11所述的装置,其中,所述调谐命令是CMD19调谐命令。
16.一种在主机设备中用于最佳地调谐存储卡的计算机可读介质,包括用于以下各项的代码:
确定与所述存储卡相关联的至少一个调谐参数,其中,所述至少一个调谐参数包括以下各项中的至少一项:
所述存储卡的温度;
自从上一个调谐序列被执行之后所经过的时间;
从所述存储卡发送到所述主机设备的数据块的数量;或
所述存储卡和所述主机设备之间的事项的数量;
发起关于所述存储卡的读取操作;以及
基于所述至少一个调谐参数,向所述存储卡发送调谐命令。
17.根据权利要求16所述的计算机可读介质,其中,所述用于基于所述至少一个调谐参数向所述存储卡发送所述调谐命令的代码被配置为在以下情况下向所述存储卡发送所述调谐命令:
所述存储卡的所述温度的变化大于预定门限;
自从所述上一个调谐序列被执行之后所经过的时间大于最大时间;
从所述存储卡发送到所述主机设备的所述数据块的数量大于最大块计数;或
预定窗口上所述存储卡和所述主机设备之间的所述事项的数量大于预定阈值。
18.根据权利要求16所述的计算机可读介质,所述计算机可读介质还包括用于以下各项的代码:
从所述存储卡读取数据;
检测与所读取的数据相关联的循环冗余校验CRC错误;以及
在检测到所述CRC错误时,向所述存储卡发送所述调谐命令。
19.根据权利要求16所述的计算机可读介质,所述计算机可读介质还包括用于以下各项的代码:
确定所述存储卡支持超高速UHS;
向所述存储卡发送所述调谐命令;以及
选择最佳延迟线相位,
其中,确定所述存储卡支持UHS、向所述存储卡发送所述调谐命令、和选择最佳延迟线相位是在确定与所述存储卡相关联的所述至少一个调谐参数之前执行的。
20.根据权利要求16所述的计算机可读介质,其中,所述调谐命令是CMD19调谐命令。
CN201380051770.2A 2012-10-05 2013-10-03 针对外部存储器调谐序列的最佳使用的算法 Active CN104704477B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261710639P 2012-10-05 2012-10-05
US61/710,639 2012-10-05
US13/672,693 US8972818B2 (en) 2012-10-05 2012-11-08 Algorithm for optimal usage of external memory tuning sequence
US13/672,693 2012-11-08
PCT/US2013/063319 WO2014055794A1 (en) 2012-10-05 2013-10-03 Algorithm for optimal usage of external memory tuning sequence

Publications (2)

Publication Number Publication Date
CN104704477A CN104704477A (zh) 2015-06-10
CN104704477B true CN104704477B (zh) 2018-09-14

Family

ID=50433743

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380051770.2A Active CN104704477B (zh) 2012-10-05 2013-10-03 针对外部存储器调谐序列的最佳使用的算法

Country Status (6)

Country Link
US (1) US8972818B2 (zh)
EP (1) EP2904502A1 (zh)
JP (2) JP2015532488A (zh)
KR (1) KR20150067214A (zh)
CN (1) CN104704477B (zh)
WO (1) WO2014055794A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12008266B2 (en) 2010-09-15 2024-06-11 Pure Storage, Inc. Efficient read by reconstruction
US11614893B2 (en) 2010-09-15 2023-03-28 Pure Storage, Inc. Optimizing storage device access based on latency
JP6151976B2 (ja) * 2013-06-10 2017-06-21 キヤノン株式会社 記録再生装置及び制御方法
JP6356970B2 (ja) * 2014-01-17 2018-07-11 キヤノン株式会社 記録装置、及び記録装置の制御方法
JP2015219775A (ja) * 2014-05-19 2015-12-07 キヤノン株式会社 記録装置、撮像装置、記録装置の制御方法、及びプログラム
US10756816B1 (en) 2016-10-04 2020-08-25 Pure Storage, Inc. Optimized fibre channel and non-volatile memory express access
US11947814B2 (en) 2017-06-11 2024-04-02 Pure Storage, Inc. Optimizing resiliency group formation stability
CN107329923B (zh) * 2017-06-26 2020-12-22 南京鼎越信息科技有限公司 一种调整总线时序的方法、存储介质和终端
EP3460666B1 (en) * 2017-09-20 2021-03-10 Shanghai Xiaoyi Technology Co., Ltd. Method, apparatus, and storage medium for optimizing memory card performance
CN107643878B (zh) 2017-09-20 2020-12-15 上海小蚁科技有限公司 Sd卡的性能优化方法及装置、存储介质、终端
US10860475B1 (en) 2017-11-17 2020-12-08 Pure Storage, Inc. Hybrid flash translation layer
US12001688B2 (en) 2019-04-29 2024-06-04 Pure Storage, Inc. Utilizing data views to optimize secure data access in a storage system
US11520514B2 (en) 2018-09-06 2022-12-06 Pure Storage, Inc. Optimized relocation of data based on data characteristics
US11500570B2 (en) 2018-09-06 2022-11-15 Pure Storage, Inc. Efficient relocation of data utilizing different programming modes
CN109766133A (zh) * 2018-12-29 2019-05-17 合肥杰发科技有限公司 一种内置嵌入式单元的系统及其初始化方法
US11714572B2 (en) 2019-06-19 2023-08-01 Pure Storage, Inc. Optimized data resiliency in a modular storage system
US12001684B2 (en) 2019-12-12 2024-06-04 Pure Storage, Inc. Optimizing dynamic power loss protection adjustment in a storage system
US11507297B2 (en) 2020-04-15 2022-11-22 Pure Storage, Inc. Efficient management of optimal read levels for flash storage systems
US11474986B2 (en) 2020-04-24 2022-10-18 Pure Storage, Inc. Utilizing machine learning to streamline telemetry processing of storage media
US11416338B2 (en) 2020-04-24 2022-08-16 Pure Storage, Inc. Resiliency scheme to enhance storage performance
US11768763B2 (en) 2020-07-08 2023-09-26 Pure Storage, Inc. Flash secure erase
US11681448B2 (en) 2020-09-08 2023-06-20 Pure Storage, Inc. Multiple device IDs in a multi-fabric module storage system
US11513974B2 (en) 2020-09-08 2022-11-29 Pure Storage, Inc. Using nonce to control erasure of data blocks of a multi-controller storage system
US11487455B2 (en) 2020-12-17 2022-11-01 Pure Storage, Inc. Dynamic block allocation to optimize storage system performance
US11630593B2 (en) 2021-03-12 2023-04-18 Pure Storage, Inc. Inline flash memory qualification in a storage system
US11832410B2 (en) 2021-09-14 2023-11-28 Pure Storage, Inc. Mechanical energy absorbing bracket apparatus
US11994723B2 (en) 2021-12-30 2024-05-28 Pure Storage, Inc. Ribbon cable alignment apparatus

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1495585A (zh) * 2002-09-20 2004-05-12 ض� 确定cpu使用率的与操作系统无关的方法和系统

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4669040A (en) * 1984-09-19 1987-05-26 Eurotherm Corporation Self-tuning controller
US6643787B1 (en) 1999-10-19 2003-11-04 Rambus Inc. Bus system optimization
JP4451189B2 (ja) * 2004-04-05 2010-04-14 株式会社アドバンテスト 試験装置、位相調整方法、及びメモリコントローラ
JP2006099569A (ja) * 2004-09-30 2006-04-13 Kyocera Mita Corp メモリインタフェース回路及びクロック制御方法
US7650481B2 (en) * 2004-11-24 2010-01-19 Qualcomm Incorporated Dynamic control of memory access speed
CN101416437A (zh) 2006-04-05 2009-04-22 松下电器产业株式会社 可移动存储装置、相位同步方法、相位同步程序、其记录介质及主机终端
JP4823009B2 (ja) 2006-09-29 2011-11-24 株式会社東芝 メモリカード及びホスト機器
US8209504B2 (en) 2007-01-30 2012-06-26 Panasonic Corporation Nonvolatile memory device, nonvolatile memory system, and access device having a variable read and write access rate
JP2009026296A (ja) * 2007-06-21 2009-02-05 Toshiba Corp 電子デバイス、メモリデバイス、ホスト装置
US9003259B2 (en) 2008-11-26 2015-04-07 Red Hat, Inc. Interleaved parallel redundancy check calculation for memory devices
JP5341503B2 (ja) * 2008-12-26 2013-11-13 株式会社東芝 メモリデバイス、ホストデバイスおよびサンプリングクロックの調整方法
CN102124451A (zh) * 2009-05-27 2011-07-13 松下电器产业株式会社 延迟调整装置以及延迟调整方法
JP2011090361A (ja) * 2009-10-20 2011-05-06 Renesas Electronics Corp 位相キャリブレーション回路、メモリカード制御装置、及び位相キャリブレーション方法
JP2011233042A (ja) * 2010-04-28 2011-11-17 Toshiba Corp キャリブレーション処理制御装置及びキャリブレーション処理制御方法
EP3422191B1 (en) * 2010-07-29 2023-05-10 Renesas Electronics Corporation Semiconductor device and data processing system
TWI483117B (zh) 2010-09-29 2015-05-01 Toshiba Kk 用於執行命令之裝置、主機控制器及用於執行命令之系統
US8594584B2 (en) * 2011-05-16 2013-11-26 Blackberry Limited Method and apparatus for tuning a communication device
CN103021470B (zh) * 2011-09-21 2016-08-03 瑞昱半导体股份有限公司 取样相位校正方法和使用此取样相位校正方法的储存系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1495585A (zh) * 2002-09-20 2004-05-12 ض� 确定cpu使用率的与操作系统无关的方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《SD Specifications Part1 Physical Layer Simplified Specification》;sd group;《www.sdcard.org/downloads/pls/simplified_specs/archive/part1_301.pdf》;20100518;4.2.4.5节,4.3.3节 *

Also Published As

Publication number Publication date
EP2904502A1 (en) 2015-08-12
JP2015532488A (ja) 2015-11-09
US20140101511A1 (en) 2014-04-10
WO2014055794A1 (en) 2014-04-10
CN104704477A (zh) 2015-06-10
JP2018125040A (ja) 2018-08-09
KR20150067214A (ko) 2015-06-17
US8972818B2 (en) 2015-03-03

Similar Documents

Publication Publication Date Title
CN104704477B (zh) 针对外部存储器调谐序列的最佳使用的算法
KR101447142B1 (ko) 메모리에서의 기록 에너지 보존
EP2993579A1 (en) System and method for automatically configuring bios performance profiles
JP4564390B2 (ja) 情報処理装置
US20120221880A1 (en) Memory system and method of controlling same
WO2004023279A2 (en) Method and apparatus for managing power consumption of a disk drive
CN101606135A (zh) 时钟控制装置、时钟控制方法、时钟控制程序及集成电路
US20120271983A1 (en) Computing device and data synchronization method
CN105677593A (zh) 芯片存储器写操作时序路径自适应调节方法及装置
US10571515B2 (en) Frequency guard band validation of processors
KR20120123569A (ko) 멀티미디어 파일 제어 과정에서 빠른 응답을 구현하는 방법 및 재생 장치
US8732387B2 (en) Flash memory apparatus with automatic interface mode switching
US20160335000A1 (en) Managing wait states for memory access
CN108762790B (zh) 无人机电池重启处理方法、装置及存储介质
US9054691B2 (en) Information processing apparatus or information processing method
CN107229858B (zh) 一种支持crc8校验的PECI总线主从机验证系统及验证方法
US10705738B2 (en) Method, apparatus, storage medium, and terminal for optimizing memory card performance
CN110265075B (zh) 一种内存接口的控制方法和系统
CN101004919B (zh) 利用环回测试存储系统电子器件
TWI600006B (zh) 快閃操作的儲存裝置
US20110291705A1 (en) Electronic equipment and power supply control method
CN112306354A (zh) 屏幕显示控制方法、装置、电子设备及可读存储介质
US20100287337A1 (en) Nonvolatile memory device and method of operating the same
CN101256798A (zh) 控制装置、存储装置及存储装置的控制方法
US8078783B2 (en) Information processing apparatus, method for controlling the same, and recording medium including program

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant