CN111722670A - 一种eMMC时序调整方法、系统及eMMC主控芯片 - Google Patents
一种eMMC时序调整方法、系统及eMMC主控芯片 Download PDFInfo
- Publication number
- CN111722670A CN111722670A CN202010580769.0A CN202010580769A CN111722670A CN 111722670 A CN111722670 A CN 111722670A CN 202010580769 A CN202010580769 A CN 202010580769A CN 111722670 A CN111722670 A CN 111722670A
- Authority
- CN
- China
- Prior art keywords
- clock
- emmc
- data
- timing
- standard
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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
本申请公开了一种eMMC时序调整方法、系统及eMMC主控芯片,包括:设置eMMC主控的多个时序方案,每个时序方案包括:数据输出时钟、命令输出时钟、数据输入时钟和命令输入时钟分别与标准时钟相隔的时间间隔的个数;对每个时序方案执行以下操作:按照数据输出时钟和命令输出时钟,由eMMC主控向eMMC设备发送第一数据;按照数据输入时钟和命令输入时钟,通过读取eMMC设备中第一数据得到第二数据;若第一数据和第二数据相同,则确认该时序方案为正确方案;在所有正确方案中确定最佳时序方案。本申请中数据输出时钟、命令输出时钟、数据输入时钟、命令输入时钟均可调节,可应用于各类工作环境中,同时降低了PCB板的布线要求。
Description
技术领域
本发明涉及eMMC领域,特别涉及一种eMMC时序调整方法、系统及eMMC主控芯片。
背景技术
eMMC(Embedded Multi Media Card,嵌入式多媒体控制器)在不同速度模式时,工作的时钟频率不一样,在hs200、hs400两种模式的最高时钟频率高达200MHz。因此eMMC的高速模式hs200和hs400对时序要求非常严格。由于工艺偏差,不同晶圆之间或同一晶圆的不同芯片都存在差异,即使同一颗芯片在不同的工作环境下,如芯片温度升高、芯片工作电压出现微小变化时,eMMC的时序都会不同。由于芯片之间的差异和芯片工作环境的变化,主芯片输出的数据或命令与采样时钟的时序的关系不一定满足要求,在主芯片和eMMC设备之间,PCB(Printed Circuit Board,印制电路板)的布线也会影响eMMC设备接收数据或命令与时钟的相位关系。
因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种灵活调节时序的eMMC时序调整方法、系统及eMMC主控芯片。其具体方案如下:
一种eMMC时序调整方法,包括:
设置eMMC主控的多个时序方案,每个所述时序方案包括:所述eMMC主控中数据输出时钟、命令输出时钟、数据输入时钟和命令输入时钟分别与标准时钟相隔的时间间隔的个数;
对每个所述时序方案执行以下操作:
按照所述数据输出时钟和所述命令输出时钟,由所述eMMC主控向eMMC设备发送第一数据并将所述第一数据写入所述eMMC设备;
按照所述数据输入时钟和所述命令输入时钟,通过读取所述eMMC设备中所述第一数据得到所述eMMC设备向所述eMMC主控反馈的第二数据;
对比所述第一数据和所述第二数据,如果所述第一数据和所述第二数据相同,则确认该时序方案为正确方案;
在所有所述正确方案中确定最佳时序方案。
优选的,所述标准时钟包括第一标准时钟和第二标准时钟,所述设置eMMC主控的多个时序方案的过程,具体包括:
按照遍历循环规则设置多个所述时序方案;
所述遍历循环规则包括:
将整个时钟周期等分为2N个时间间隔,所述数据输出时钟与所述第一标准时钟相隔i个所述时间间隔,所述命令输出时钟与所述第一标准时钟相隔j个所述时间间隔,所述命令输入时钟与所述第一标准时钟相隔k个所述时间间隔,所述数据输入时钟与第二标准时钟相隔m个所述时间间隔,其中0≤i≤N,0≤j≤N,0≤k<2N,0≤m<2N。
优选的,在SDR模式、DDR模式或hs200模式下,所述遍历规则还包括:
所述第二标准时钟与所述第一标准时钟由同一个时钟发生器产生,且m=k。
优选的,在hs400模式下,所述遍历规则还包括:
所述第一标准时钟由所述时钟发生器产生,所述第二标准时钟具体为所述eMMC设备产生的dqs信号,且j=jc,其中jc为所述SDR模式、所述DDR模式或所述hs200模式下所述最佳时序方案中,所述命令输出时钟与所述第一标准时钟之间所述时间间隔的个数。
优选的,所述在所有所述正确方案中确定最佳时序方案的过程,具体包括:
将每个所述时序方案投影到三维空间;
根据所有所述正确方案确定所述三维空间中的最佳方案区域;
将所述最佳方案区域的中心确定为理想时序方案;
将与所述理想时序方案最近的所述时序方案确定为最佳时序方案。
优选的,所述将整个时钟周期等分为2N个时间间隔的过程,具体包括:
将整个时钟周期等分为16个时间间隔。
相应的,本发明还公开了一种eMMC时序调整系统,应用于与eMMC设备连接的eMMC主控,包括:
时延设置模块,用于设置所述eMMC主控的多个时序方案,每个所述时序方案包括:所述eMMC主控中数据输出时钟、命令输出时钟、数据输入时钟和命令输入时钟分别与标准时钟相隔的时间间隔的个数;
数据传输模块,用于对每个所述时序方案执行以下操作:
按照所述数据输出时钟和所述命令输出时钟,由所述eMMC主控向所述eMMC设备发送第一数据并将所述第一数据写入所述eMMC设备;
按照所述数据输入时钟和所述命令输入时钟,通过读取所述eMMC设备中所述第一数据得到所述eMMC设备向所述eMMC主控反馈的第二数据;
处理器模块,用于对比每个所述时序方案对应的所述第一数据和所述第二数据,如果所述第一数据和所述第二数据相同,则确认该时序方案为正确方案;还用于在所有所述正确方案中确定最佳时序方案。
优选的,所述标准时钟包括第一标准时钟和第二标准时钟,所述时延设置模块包括:
时钟发生器,用于产生所述第一标准时钟;
输出调整模块,用于对所述第一标准时钟进行调整,生成与所述第一标准时钟相隔i个时间间隔的数据输出时钟;还用于对所述第一标准时钟进行调整,生成与所述第一标准时钟相隔j个所述时间间隔的命令输出时钟;
输入调整模块,用于对所述第一标准时钟进行调整,生成与所述第一标准时钟相隔k个所述时间间隔的命令输入时钟;还用于对所述第二标准时钟进行调整,生成与所述第二标准时钟相隔m个所述时间间隔的数据输入时钟;
其中,整个时钟周期被等分为2N个所述时间间隔,0≤i≤N,0≤j≤N,0≤k<2N,0≤m<2N。
优选的,在SDR模式、DDR模式或hs200模式下,所述第二标准时钟由所述时钟发生器产生,且m=k;
在hs400模式下,所述第二标准时钟具体为所述所述eMMC设备产生的dqs信号,且j=jc,其中jc为所述SDR模式、所述DDR模式或所述hs200模式下所述最佳时序方案中,所述命令输出时钟与所述第一标准时钟之间所述时间间隔的个数。
相应的,本发明还公开了一种eMMC主控芯片,包括如上文任一项所述eMMC时序调整系统。
本发明公开了一种eMMC时序调整方法,包括:设置eMMC主控的多个时序方案,每个所述时序方案包括:所述eMMC主控中数据输出时钟、命令输出时钟、数据输入时钟和命令输入时钟分别与标准时钟相隔的时间间隔的个数;对每个所述时序方案执行以下操作:按照所述数据输出时钟和所述命令输出时钟,由所述eMMC主控向eMMC设备发送第一数据并将所述第一数据写入所述eMMC设备;按照所述数据输入时钟和所述命令输入时钟,通过读取所述eMMC设备中所述第一数据得到所述eMMC设备向所述eMMC主控反馈的第二数据;对比所述第一数据和所述第二数据,如果所述第一数据和所述第二数据相同,则确认该时序方案为正确方案;在所有所述正确方案中确定最佳时序方案。本申请中数据输出时钟、命令输出时钟、数据输入时钟、命令输入时钟均可调节,以使eMMC主控在最佳时序方案下正确收发数据,本申请可应用于各类工作环境中,时序调节更为灵活,同时降低了PCB板的布线要求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例中一种eMMC时序调整方法的步骤流程图;
图2a为本发明实施例中一种具体的eMMC时序调整方法的步骤流程图;
图2b为本发明实施例中一种具体的eMMC时序调整方法的步骤流程图;
图3为本发明实施例中一种eMMC时序调整系统的局部结构分布图;
图4为本发明实施例中一种多个时钟的时序示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
由于工艺偏差、PCB板布线和工作环境影响,eMMC的主芯片的数据及命令与采样时钟的时序关系不一定满足要求。本申请中数据输出时钟、命令输出时钟、数据输入时钟、命令输入时钟均可调节,以使eMMC主控在最佳时序方案下正确收发数据,本申请可应用于各类工作环境中,时序调节更为灵活,同时降低了PCB板的布线要求。
本发明实施例公开了一种eMMC时序调整方法,参见图1所示,包括:
S1:设置eMMC主控的多个时序方案,每个时序方案包括:eMMC主控中数据输出时钟、命令输出时钟、数据输入时钟和命令输入时钟分别与标准时钟相隔的时间间隔的个数;
具体的,此处多个时序方案通常为以全扫描形式安排的时序方案,相邻的时序方案差别极小,能够全面涵盖各类工作需求,即使工作环境发生极微小的变化,该时序方案中存在有效的最佳时序方案。
通常在设置时序方案时,标准时钟包括第一标准时钟和第二标准时钟,设置eMMC主控的多个时序方案的过程,具体包括:
按照遍历循环规则设置多个时序方案;
遍历循环规则包括:
将整个时钟周期等分为2N个时间间隔,数据输出时钟与第一标准时钟相隔i个时间间隔,命令输出时钟与第一标准时钟相隔j个时间间隔,命令输入时钟与第一标准时钟相隔k个时间间隔,数据输入时钟与第二标准时钟相隔m个时间间隔,其中0≤i≤N,0≤j≤N,0≤k<2N,0≤m<2N。
可以理解的是,这种遍历循环规则中数据输出时钟、命令输出时钟、命令输入时钟均以第一标准时钟为基础,数据输入时钟则以第二标准时钟为基础,因此数据输入时钟的具体时间间隔可以不同于2N,具体多少由具体情况决定。这是由于不同模式下,数据输入时钟的来源不同,在SDR(Single Data Rate,单倍数据速率)模式、DDR(Double Data Rate,双倍数据速率)模式或hs200模式下,数据输入时钟与命令输入时钟完全一致,也即第二标准时钟与第一标准时钟由同一个时钟发生器产生,且m=k;而在hs400模式下,第一标准时钟由时钟发生器产生,第二标准时钟具体为eMMC设备产生的dqs信号。
可以理解的是,由于在SDR模式、DDR模式或hs200模式下,数据输入时钟与命令输入时钟完全一致,因此在SDR模式、DDR模式或hs200模式下的变量只有i、j、k,为了提高hs400模式下的调试效率,可直接采取上一模式下最佳时序方案中命令输出时钟的对应量,也即hs400模式下令j=jc,再对变量i、j、m的数值进行遍历循环,其中jc为SDR模式、DDR模式或hs200模式下最佳时序方案中,命令输出时钟与第一标准时钟之间时间间隔的个数。
可以理解的是,hs400模式下还可以对i、j、m、k这四个变量均进行遍历扫描,但是比某一变量恒定的情况,四个变量的扫描处理量太大,处理效率较低。
S2:对每个时序方案执行以下操作:
按照数据输出时钟和命令输出时钟,由eMMC主控向eMMC设备发送第一数据并将第一数据写入eMMC设备;
按照数据输入时钟和命令输入时钟,通过读取eMMC设备中第一数据得到eMMC设备向eMMC主控反馈的第二数据;
对比第一数据和第二数据,如果第一数据和第二数据相同,则确认该时序方案为正确方案;
可以理解的是,如果第一数据和第二数据不一致,确认该时序方案为错误方案。
可以理解的是,在SDR、DDR、hs200和hs400模式下各时序方案的执行过程中,为使数据翻转率到达最大,第一数据为固定pattern,固定pattern取32’hff00ff00、32’haa55aa55、32’hffffffff和32’h55555555。
S3:在所有正确方案中确定最佳时序方案。
进一步的,在所有正确方案中确定最佳时序方案的过程,具体包括:
将每个时序方案投影到三维空间;
根据所有正确方案确定三维空间中的最佳方案区域;
将最佳方案区域的中心确定为理想时序方案;
将与理想时序方案最近的时序方案确定为最佳时序方案。
可以理解的是,按照上文的方法,在SDR模式、DDR模式或hs200模式下的变量包括i、j、k,hs400模式下的变量包括i、k、m,分别以三个变量建立xyz轴的空间直角坐标系,并在该空间直角坐标系中标出正确方案和错误方案对应的离散点,利用这些离散点构建目标体,使该目标体中尽可能包含更多的正确方案,且不包含错误方案,通常选择该目标体为长方体,该目标提也就是上文中的最佳方案区域;然后获得最佳方案区域的中心,通常选择集合中心,将该中心对应的坐标点作为理想时序方案;但是,由于实际计算过程中,理想时序方案对应的坐标数值不一定为整数,无法应用在本实施例的时序调整中,所以还需要进一步取整,也即选择距离该中心最近的离散点,将该离散点对应的时序方案确定为最佳时序方案。
可以理解的是,最后得到的最佳时延方案将被保存起来,在之后运行SDR模式、DDR模式、hs200模式或hs400模式之前,都会读取相应模式对应的最佳时延方案并配置到相应的寄存器中。
进一步的,本实施例以每周期16个时间间隔为例,对上述方法作进一步说明:
将整个时钟周期等分为16个时间间隔,参见图2a所示,在SDR模式、DDR模式或hs200模式下的数据输出时钟与第一标准时钟相隔i个时间间隔,i的取值从0至8,命令输出时钟与第一标准时钟相隔j个时间间隔,j的取值从0至8,命令输入时钟与第一标准时钟相隔k个时间间隔,k的取值从0至15,数据输入时钟与命令输入时钟保持一致;以数据输出时钟和命令输出时钟确定、命令输入时钟的k值从0至15作为一轮扫描,对每个时序方案执行步骤S2的操作,由于i和j的取值范围内均有9个数值,因此共需要执行9×9次也即81次扫描,以得到该模式下的最佳时序方案对应的i、j、k。
参见图2b所示,数据输出时钟与第一标准时钟相隔i个时间间隔,i的取值从0至8,命令输出时钟与第一标准时钟相隔jc个时间间隔,命令输入时钟与第一标准时钟相隔k个时间间隔,k的取值从0至15,数据输入时钟与第二标准时钟相隔m个时间间隔,由于第二标准时钟为eMMC设备产生的dqs信号,是一个[3:0]的4bit数据,因此m的取值从0至15;以数据输出时钟、数据输入时钟确定、命令输入时钟的k值从0至15作为一轮扫描,对每个时序方案执行步骤S2的操作,由于i的取值范围内有9个数值,m的取值范围内有16个数值,因此共需要执行9×16次也即144次扫描,以得到该模式下的最佳时序方案对应的i、k、m。
可以理解的是,除了2N=16之外,还可以选择其他数值生成时间间隔,但应用方法与本实施例描述类似,不再赘述。
本申请中数据输出时钟、命令输出时钟、数据输入时钟、命令输入时钟均可调节,以使eMMC主控在最佳时序方案下正确收发数据,本申请可应用于各类工作环境中,时序调节更为灵活,同时降低了PCB板的布线要求。
相应的,本发明还公开了一种eMMC时序调整系统,应用于与eMMC设备连接的eMMC主控,包括:
时延设置模块,用于设置eMMC主控的多个时序方案,每个时序方案包括:eMMC主控中数据输出时钟、命令输出时钟、数据输入时钟和命令输入时钟分别与标准时钟相隔的时间间隔的个数;
数据传输模块,用于对每个时序方案执行以下操作:
按照数据输出时钟和命令输出时钟,由eMMC主控向eMMC设备发送第一数据并将第一数据写入eMMC设备;
按照数据输入时钟和命令输入时钟,通过读取eMMC设备中第一数据得到eMMC设备向eMMC主控反馈的第二数据;
处理器模块,用于对比每个时序方案对应的第一数据和第二数据,如果第一数据和第二数据相同,则确认该时序方案为正确方案;还用于在所有正确方案中确定最佳时序方案。
进一步的,标准时钟包括第一标准时钟和第二标准时钟,参见图3所示,时延设置模块包括:
时钟发生器11,用于产生第一标准时钟;
输出调整模块12,用于对第一标准时钟进行调整,生成与第一标准时钟相隔i个时间间隔的数据输出时钟;还用于对第一标准时钟进行调整,生成与第一标准时钟相隔j个时间间隔的命令输出时钟;
输出调整模块13,用于对第一标准时钟进行调整,生成与第一标准时钟相隔k个时间间隔的命令输入时钟;还用于对第二标准时钟进行调整,生成与第二标准时钟相隔m个时间间隔的数据输入时钟;
其中,整个时钟周期被等分为2N个时间间隔,0≤i≤N,0≤j≤N,0≤k<2N,0≤m<2N。
其中,输出调整模块12包括:
第一调整单元skew1,用于生成数据输出时钟;
第二调整单元skew2,用于生成命令输出时钟;
可以理解的是,在SDR模式、DDR模式或hs200模式下,第二标准时钟由时钟发生器产生,且m=k;
在hs400模式下,第二标准时钟具体为eMMC设备产生的dqs信号,且j=jc,其中jc为SDR模式、DDR模式或hs200模式下最佳时序方案中,命令输出时钟与第一标准时钟之间时间间隔的个数。
同时,输入调整模块13还包括第三调整单元skew3,第四调整单元skew4,反相器inv、逻辑门MUX 1和MUX 2,各单元具体用途见下。
本实施例以每周期2N=16个时间间隔为例,参见图4所示,在一个时间周期的前半个周期内包括多个时钟clk0~clk8,从clk0到clk8每个相邻的两个clk之间都有一个时间间隔,通过第三调整单元skew3已经实现了0≤i≤8,0≤j≤8,0≤k≤8的部分,此时再加入反相器inv和逻辑门MUX 1,通过逻辑门MUX 1的使能引脚clk-sel的电平来选择是否接入反相器inv,通过反相器inv完成取值范围在8<k<16的时序方案,节省第三调整电压skew3的处理量。
类似的,为了保证本实施例中eMMC时序调整系统能够兼容不同的命令输入时钟,本实施例中增加了逻辑门MUX 2,其使能引脚sel-speed-mode的电平来选择,如图3中sel-speed-mode为0时数据输入时钟与命令输入时钟一致,应用于SDR模式、DDR模式或hs200模式,sel-speed-mode为0时数据输入时钟由第四调整单元skew4接收dqs信号并对其进行调整后生成。
可以理解的是,本实施例中MUX 1和MUX 2的输入引脚的选择,还可以选择其他方案,并非一定要按照本实施例执行。
其中,本实施例中提到的第一调整单元skew1、第二调整单元skew2、第三调整单元skew3以及第四调整单元skew4,本质是可配置的寄存器,能够对输入其中的原标准时钟进行不同的延时,再输出具有不同时间间隔的数据输出时钟、命令输出时钟、命令输入时钟或数据输入时钟。
本申请中数据输出时钟、命令输出时钟、数据输入时钟、命令输入时钟均可调节,以使eMMC主控在最佳时序方案下正确收发数据,本申请可应用于各类工作环境中,时序调节更为灵活,同时降低了PCB板的布线要求。
相应的,本发明实施例还公开了一种eMMC主控芯片,包括如上文任一项所述eMMC时序调整系统。
其中,具体有关所述eMMC时序调整系统的内容可以参见上文实施例中相关的描述,此处不再赘述。
其中,本实施例具有与上文实施例中所述eMMC时序调整系统相同的有益效果,此处不再赘述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种eMMC时序调整方法、系统及eMMC主控芯片进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种eMMC时序调整方法,其特征在于,包括:
设置eMMC主控的多个时序方案,每个所述时序方案包括:所述eMMC主控中数据输出时钟、命令输出时钟、数据输入时钟和命令输入时钟分别与标准时钟相隔的时间间隔的个数;
对每个所述时序方案执行以下操作:
按照所述数据输出时钟和所述命令输出时钟,由所述eMMC主控向eMMC设备发送第一数据并将所述第一数据写入所述eMMC设备;
按照所述数据输入时钟和所述命令输入时钟,通过读取所述eMMC设备中所述第一数据得到所述eMMC设备向所述eMMC主控反馈的第二数据;
对比所述第一数据和所述第二数据,如果所述第一数据和所述第二数据相同,则确认该时序方案为正确方案;
在所有所述正确方案中确定最佳时序方案。
2.根据权利要求1所述eMMC时序调整方法,其特征在于,所述标准时钟包括第一标准时钟和第二标准时钟,所述设置eMMC主控的多个时序方案的过程,具体包括:
按照遍历循环规则设置多个所述时序方案;
所述遍历循环规则包括:
将整个时钟周期等分为2N个时间间隔,所述数据输出时钟与所述第一标准时钟相隔i个所述时间间隔,所述命令输出时钟与所述第一标准时钟相隔j个所述时间间隔,所述命令输入时钟与所述第一标准时钟相隔k个所述时间间隔,所述数据输入时钟与第二标准时钟相隔m个所述时间间隔,其中0≤i≤N,0≤j≤N,0≤k<2N,0≤m<2N。
3.根据权利要求2所述eMMC时序调整方法,其特征在于,在SDR模式、DDR模式或hs200模式下,所述遍历规则还包括:
所述第二标准时钟与所述第一标准时钟由同一个时钟发生器产生,且m=k。
4.根据权利要求3所述eMMC时序调整方法,其特征在于,在hs400模式下,所述遍历规则还包括:
所述第一标准时钟由所述时钟发生器产生,所述第二标准时钟具体为所述eMMC设备产生的dqs信号,且j=jc,其中jc为所述SDR模式、所述DDR模式或所述hs200模式下所述最佳时序方案中,所述命令输出时钟与所述第一标准时钟之间所述时间间隔的个数。
5.根据权利要求4所述eMMC时序调整方法,其特征在于,所述在所有所述正确方案中确定最佳时序方案的过程,具体包括:
将每个所述时序方案投影到三维空间;
根据所有所述正确方案确定所述三维空间中的最佳方案区域;
将所述最佳方案区域的中心确定为理想时序方案;
将与所述理想时序方案最近的所述时序方案确定为最佳时序方案。
6.根据权利要求2至5任一项所述eMMC时序调整方法,其特征在于,
所述将整个时钟周期等分为2N个时间间隔的过程,具体包括:
将整个时钟周期等分为16个时间间隔。
7.一种eMMC时序调整系统,其特征在于,应用于与eMMC设备连接的eMMC主控,包括:
时延设置模块,用于设置所述eMMC主控的多个时序方案,每个所述时序方案包括:所述eMMC主控中数据输出时钟、命令输出时钟、数据输入时钟和命令输入时钟分别与标准时钟相隔的时间间隔的个数;
数据传输模块,用于对每个所述时序方案执行以下操作:
按照所述数据输出时钟和所述命令输出时钟,由所述eMMC主控向所述eMMC设备发送第一数据并将所述第一数据写入所述eMMC设备;
按照所述数据输入时钟和所述命令输入时钟,通过读取所述eMMC设备中所述第一数据得到所述eMMC设备向所述eMMC主控反馈的第二数据;
处理器模块,用于对比每个所述时序方案对应的所述第一数据和所述第二数据,如果所述第一数据和所述第二数据相同,则确认该时序方案为正确方案;还用于在所有所述正确方案中确定最佳时序方案。
8.根据权利要求7所述eMMC时序调整系统,其特征在于,所述标准时钟包括第一标准时钟和第二标准时钟,所述时延设置模块包括:
时钟发生器,用于产生所述第一标准时钟;
输出调整模块,用于对所述第一标准时钟进行调整,生成与所述第一标准时钟相隔i个时间间隔的数据输出时钟;还用于对所述第一标准时钟进行调整,生成与所述第一标准时钟相隔j个所述时间间隔的命令输出时钟;
输入调整模块,用于对所述第一标准时钟进行调整,生成与所述第一标准时钟相隔k个所述时间间隔的命令输入时钟;还用于对所述第二标准时钟进行调整,生成与所述第二标准时钟相隔m个所述时间间隔的数据输入时钟;
其中,整个时钟周期被等分为2N个所述时间间隔,0≤i≤N,0≤j≤N,0≤k<2N,0≤m<2N。
9.根据权利要求8所述eMMC时序调整系统,其特征在于,
在SDR模式、DDR模式或hs200模式下,所述第二标准时钟由所述时钟发生器产生,且m=k;
在hs400模式下,所述第二标准时钟具体为所述所述eMMC设备产生的dqs信号,且j=jc,其中jc为所述SDR模式、所述DDR模式或所述hs200模式下所述最佳时序方案中,所述命令输出时钟与所述第一标准时钟之间所述时间间隔的个数。
10.一种eMMC主控芯片,其特征在于,包括如权利要求7至9任一项所述eMMC时序调整系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010580769.0A CN111722670B (zh) | 2020-06-23 | 2020-06-23 | 一种eMMC时序调整方法、系统及eMMC主控芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010580769.0A CN111722670B (zh) | 2020-06-23 | 2020-06-23 | 一种eMMC时序调整方法、系统及eMMC主控芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111722670A true CN111722670A (zh) | 2020-09-29 |
CN111722670B CN111722670B (zh) | 2022-06-07 |
Family
ID=72568453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010580769.0A Active CN111722670B (zh) | 2020-06-23 | 2020-06-23 | 一种eMMC时序调整方法、系统及eMMC主控芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111722670B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023000776A1 (zh) * | 2021-07-20 | 2023-01-26 | 荣耀终端有限公司 | 命令的发送方法、存储介质和设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140082250A1 (en) * | 2012-09-14 | 2014-03-20 | Samsung Electronics Co., Ltd. | EMBEDDED MULTIMEDIA CARD (eMMC), HOST FOR CONTROLLING eMMC, AND METHOD OPERATION FOR eMMC SYSTEM |
CN105930241A (zh) * | 2016-05-05 | 2016-09-07 | 福州瑞芯微电子股份有限公司 | Emmc接口和nand接口的相位调整方法及装置 |
CN110495100A (zh) * | 2017-04-14 | 2019-11-22 | 华为技术有限公司 | 存储接口、时序控制方法及存储系统 |
CN110489362A (zh) * | 2019-08-22 | 2019-11-22 | 江苏华存电子科技有限公司 | eMMC校正输出入有效窗口自动调整方法、装置、存储介质 |
CN110660418A (zh) * | 2018-06-28 | 2020-01-07 | 美光科技公司 | 数据选通校准 |
-
2020
- 2020-06-23 CN CN202010580769.0A patent/CN111722670B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140082250A1 (en) * | 2012-09-14 | 2014-03-20 | Samsung Electronics Co., Ltd. | EMBEDDED MULTIMEDIA CARD (eMMC), HOST FOR CONTROLLING eMMC, AND METHOD OPERATION FOR eMMC SYSTEM |
CN105930241A (zh) * | 2016-05-05 | 2016-09-07 | 福州瑞芯微电子股份有限公司 | Emmc接口和nand接口的相位调整方法及装置 |
CN110495100A (zh) * | 2017-04-14 | 2019-11-22 | 华为技术有限公司 | 存储接口、时序控制方法及存储系统 |
CN110660418A (zh) * | 2018-06-28 | 2020-01-07 | 美光科技公司 | 数据选通校准 |
CN110489362A (zh) * | 2019-08-22 | 2019-11-22 | 江苏华存电子科技有限公司 | eMMC校正输出入有效窗口自动调整方法、装置、存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023000776A1 (zh) * | 2021-07-20 | 2023-01-26 | 荣耀终端有限公司 | 命令的发送方法、存储介质和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111722670B (zh) | 2022-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11100976B2 (en) | Memory controller with clock-to-strobe skew compensation | |
US4714924A (en) | Electronic clock tuning system | |
US20020165706A1 (en) | Memory controller emulator | |
US20010009385A1 (en) | Delay device having a delay lock loop and method of calibration thereof | |
US6510473B1 (en) | Apparatus and method for automatically selecting an appropriate signal from a plurality of signals, based on the configuration of a peripheral installed within a computing device | |
US6434706B1 (en) | Clock system for multiple component system including module clocks for safety margin of data transfers among processing modules | |
US7142003B2 (en) | Test apparatus | |
US7605629B2 (en) | Adjusting circuit and method for delay circuit | |
CN111722670B (zh) | 一种eMMC时序调整方法、系统及eMMC主控芯片 | |
EP0273642B1 (en) | Apparatus for reading data from memory | |
US6720811B2 (en) | Semiconductor device with delay correction function | |
US7237159B2 (en) | Test apparatus for testing an electronic device | |
US20150145580A1 (en) | Apparatus for controlling semiconductor chip characteristics | |
US7157916B2 (en) | Test apparatus for testing an electronic device | |
US20040076002A1 (en) | Memory controller | |
US6275068B1 (en) | Programmable clock delay | |
US6061509A (en) | Method and apparatus for signal routing to achieve signal-efficiency | |
JPH10340204A (ja) | エミュレーション用マイクロコンピュータ及びインサーキットエミュレータ | |
JPH08262118A (ja) | 半導体試験装置の波形発生回路 |
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 |