CN102347081B - 用于ddr控制器中dqs延迟的相位校准方法及装置 - Google Patents
用于ddr控制器中dqs延迟的相位校准方法及装置 Download PDFInfo
- Publication number
- CN102347081B CN102347081B CN 201010245341 CN201010245341A CN102347081B CN 102347081 B CN102347081 B CN 102347081B CN 201010245341 CN201010245341 CN 201010245341 CN 201010245341 A CN201010245341 A CN 201010245341A CN 102347081 B CN102347081 B CN 102347081B
- Authority
- CN
- China
- Prior art keywords
- dqs
- signal
- data
- delay
- delay parameter
- 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
Links
Images
Abstract
本发明公开了一种用于DDR控制器的DQS延迟相位校准方法及装置,包括:依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样;将采样获取的数据DQ按字节与预设自检数据进行比较,并经过延迟两拍后获取最小边界延迟参数与最大边界延迟参数;将该最大边界延迟参数与最小边界延迟参数的平均值赋予DQS选择信号;依据该DQS选择信号输出时钟延迟DQS信号,得到处于有效数据窗中央的DQS信号。本发明采用延迟参数判定单元和延迟参数输出电路中的硬件逻辑实现对DQS延迟相位校准,利用延迟参数判定单元通过数据筛选的方法将延迟后的DQS精确的落在有效数据窗中央,从而增强了数据采样的稳定性、精确性和抗干扰性。
Description
技术领域
本发明涉及通信技术领域,更具体的说是涉及一种应用于DDR控制器中的DQS延迟的相位校准方法及装置。
背景技术
随着便携式设备和移动终端产品的快速发展,以前应用于PC机(PersonalComputer,个人计算机)上的各种各样的应用也被应用于手持终端上,并且这样的应用越来越多、越来越复杂,而应用的复杂化,必然要求应用于手持终端上的基带处理器和应用处理器的存储器访问带宽足够大,这样便可以使DDR(Double Data Rate,双倍速率同步动态随机存储器)控制器越来越多的应用,使用到手持终端的基带芯片、应用处理器芯片或SOC芯片上。
DQS(Bidirectional data strobe,双向数据滤波信号)相位延迟技术是DDR上的一个重要技术点。在读取DDR数据的周期中,DDR处输出的DQ与DQS信号是边沿对齐的,为了使用DQS作为选通信号来获取DQ信号,对接口送来的DQS要相对于DQ信号作1/4SDCLK周期(时钟周期)的延迟,以确保DQS处于有效数据窗的中央,保证数据读取的稳定、精确。
现有技术中,DDR控制器大多采用数字DLL(Delay Locked Loop,延时锁定回路或数据锁相环)的方式实现DQS延迟,以确保DQS能够稳定的延迟1/4SDCLK周期。而数字DLL一般由延迟输出电路和延迟参数判定电路两部分组成,其中延迟参数判定电路根据DQS和延迟输出电路的工作时钟的相位关系,检测出实现1/4SDCLK周期延迟输出电路应该配置的延迟参数,而延迟输出电路则加载延迟参数判定电路输出的延迟参数,然后依据配置的延迟参数对DQS进行延迟,从而确保输出的新DQS_Dly信号比DQS信号稳定延迟了1/4SDCLK周期,以保证DDR控制器侧的DQS能够稳定的采样DDR数据,即实现DDR数据稳定、精确的读取。
但是,在现有技术中,常规的相位判决电路大多采用相位检测的方法实现相位校准,附图1为现有技术的基本原理框图。这种方法至少存在以下缺点:相位检测器101固定延迟1/4SDCLK周期,忽略了因为PCB布局布线原因,以及MEMORY(存储)芯片时序飘逸原因,造成的DQ有效数据采样窗的位置不一定落在DQS的1/4SDCLK周期延迟处。
另外,当相位差超出软件预先设定的范围后,硬件会自动更新相位差,但由于相位检测器101的工作时钟是接口时钟SDCLK,使得相位检测器101输出结果的精度依赖于SDCLK的频率。通常,当接口时钟SDCLK的频率大于100MHz时,依据相位检测器101的输出结果延迟后的DQS可以达到比较精确的1/4相位延迟,但当接口时钟SDCLK的频率低于100MHz后,依据相位检测器101的输出结果延迟后的DQS一般处于1/4SDCLK周期延迟的左边,并且接口时钟SDCLK的频率越低,DQS的1/4周期延迟的误差也越大。
因此,采用现有技术中的DDL延迟技术,针对软硬件结合的相位检测技术,容易使DQS的相位延迟不稳定、以及产生较大的误差,影响DDR数据的读取,使其不够稳定和精确。
发明内容
有鉴于此,本发明提供了一种应用于DDR控制器中DQS延迟的相位校准方法与装置,以实现提高DQS的相位延迟的稳定性和精确度,从而保证稳定、精确的读取DDR数据。
为实现上述目的,本发明提供如下技术方案:
一种用于双倍速率同步动态随机存储器DDR控制器中双向数据滤波信号DQS延迟的相位校准方法,包括:
依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样;
将采样获取的所述数据DQ按字节与预设自检数据进行比较,并经过延迟两拍后获取最小边界延迟参数与最大边界延迟参数;
将所述最大边界延迟参数与最小边界延迟参数的平均值赋予DQS选择信号DQS_SEL;
依据所述DQS_SEL信号输出时钟延迟DQS信号,得到处于有效数据窗中央的DQS信号。
优选的,所述将采样获取的所述数据DQ按字节与预设自检数据进行比较之后,还包括:获取依据最小边界延迟参数延迟DQS的DQS_Before信号,以及获取依据最大边界延迟参数延迟DQS的DQS_Last信号;
及在输出时钟延迟DQS信号之后,还包括:
依据所述DQS_Before信号和DQS_Last信号对DQ数据进行采样;
当所述DQS_Before信号采样得到的数据与所述时钟延迟DQS信号采样得到的数据不一致时,使两者的比较信号Before_UP信号输出高电平;
当所述DQS_Last信号采样得到的数据与所述时钟延迟DQS信号采样得到的数据不一致时,使两者的比较信号Last_Down信号输出高电平;
利用所述Before_UP和Last_Down信号进行逻辑或操作,当逻辑或操作的结果为1时,使所述DQS_SEL信号的更新指示信号update信号输出高电平;
依据所述update信号,生成新的最小边界延迟参数与最大边界延迟参数,并返回执行将所述最大边界延迟参数与最小边界延迟参数的平均值赋予DQS_SEL信号这一步骤。
优选的,包括:当所述DQS_Before信号采样得到的数据与所述时钟延迟DQS信号采样得到的数据一致时,使所述Before_UP信号输出低电平;
当所述DQS_Last信号采样得到的数据与所述时钟延迟DQS信号采样得到的数据一致时,使所述Last_Down信号输出低电平;
利用所述Before_UP和Last_Down信号进行逻辑或操作,当逻辑或操作的结果为0时,使所述update信号输出低电平;
依据所述update信号,停止进行所述DQS_SEL信号的更新。
优选的,所述预设自检数据具体为:0X5A5A和0XA5A5。
一种用于DDR控制器中DQS延迟的相位校准装置,包括:
延迟参数判定单元,用于依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样,将采样获取的所述数据DQ按字节与预设自检数据进行比较,得到最小边界延迟参数与最大边界延迟参数,并将所述最大边界延迟参数与最小边界延迟参数的平均值赋予DQS选择信号DQS_SEL;
延迟输出控制电路,用于依据所述DQS_SEL信号,输出时钟延迟DQS信号,获取处于有效数据窗中央的DQS信号。
优选的,所述延迟参数判定单元中包括:
初始延迟判定电路,用于依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样,将采样获取的所述数据DQ按字节与预设自检数据进行比较;
延迟参数输出电路,用于利用所述初始延迟判定电路中的所述比较结果,获取最大边界延迟参数与最小边界延迟参数,并将所述最大边界延迟参数与最小边界延迟参数的平均值赋予所述DQS_SEL信号,传输给所述延迟输出控制电路。
优选的,所述延迟参数判定单元中还包括:
延迟跟踪电路,用于对所述最小边界延迟参数、所述最大边界延迟参数和DQS_SEL信号进行更新。
优选的,所述延迟参数判定单元中用于比较的所述预设自检数据具体为:0X5A5A和0XA5A5。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种用于DDR控制器中DQS延迟的相位校准方法与装置,本发明采用延迟参数判定单元和延迟参数输出电路中的硬件逻辑实现对DQS延迟的相位进行校准,主要利用延迟参数判定单元通过数据筛选的方法将延迟后的DQS精确的落在有效数据窗中央,从而增强了数据采样的稳定性和抗干扰性。
此外,由于本发明没有利用接口时钟,而是采用对数据DQ进行采样,并针对采样数据进行比较,在DQS延迟的相位进行校准的过程中与接口时钟无关,所以,即便是在慢时钟条件下仍然能够保证较高的延迟精度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为现有技术的基本原理框图;
图2为本发明实现DQS延迟的相位校准的基本原理框图;
图3为本发明公开的实施例一中实现DQS延迟的相位校准的方法流程图;
图4为本发明公开的DQS初始相位延迟判定时序图;
图5为本发明公开的实施例二中实现DQS延迟的相位校准的方法流程图;
图6为本发明公开的DQS相位延迟跟踪过程时序图;
图7为本发明公开的DQS延迟的相位校准装置框图;
图8为本发明公开的延迟参数判定单元框图。
具体实施方式
为了引用和清楚起见,下文中使用的技术名词的说明、简写或缩写总结如下:
DDR:Double Data Rate,双倍速率同步动态随机存储器;
DQS:Bidirectional data strobe,双向数据滤波信号;
DLY_Before:为最小边界延迟参数;
DLY_Last:为最大边界延迟参数;
DQS_DLY:为时钟延迟DQS信号;
DQS_SEL:为DQS选择信号;
MEMORY芯片:记忆存储芯片;
在文中符号“>>”表示向右移一位。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种用于DDR控制器中DQS延迟的相位校准方法和装置,请参阅附图2,为本发明实现DQS延迟的相位校准的基本原理框图。首先,在DDR控制器(图中未示出)初始化完成后,自动启动相位校准初始化,并通过在相位校准初始化过程中写入和读出自检数据序列的方法,延迟参数判定单元201利用DQS经过不同级延迟后的触发信号对DDR的DQ数据进行采样,将采样后的结果直接与初始化过程中写入的自检数据序列进行比较,在判断读出数据正确的条件下,将延迟级数最小边界延迟级参数赋值给DLY_Before,而将延迟级数最大边界延迟级参数赋值给DLY_Last,同时取DLY_Last和DLY_Before的平均值赋予DQS_SEL,从而控制选择器202输出最适合DQ数据读采样的DQS_DLY信号。
此外,在电压、温度变化的同时,DDR读数据的实际有效数据窗会有一定变化,此时DDR控制器自动进入跟踪模式,在读数据期间,当经过延迟后的DQS信号采样的DQ数据出错,或者经过DLY_Last延迟后的DQS信号采样的DQ数据出错,则DDR控制器中的电路自动更新DLY_Before和DLY_Last这两个延迟参数,以及DQS_SEL信号,直到这两种延迟所对应的DQS信号能够正确采样DQ数据,即在稳定、精确的完成DQS的相位延迟的基础上,完成对DDR数据的不受干扰的、稳定和精确的读取。
请参阅附图3,为本发明实施例一的一种用于DDR控制器中DQS相位校准方法流程图,具体步骤如下所示:
步骤S301,DDR控制器对DDR芯片开始进行初始化,写入自检数据。
在步骤S301中,DDR控制器发出对DDR芯片的初始化请求后,DDR控制器自动在DDR芯片的地址0和1中写入数据0X5A5A和0XA5A5,作为自检数据。0X5A5A和0XA5A5是常规MEMORY测试数据,为应用于本发明的方法中的较优的测试数据,但是本发明并不仅限于此。
步骤S302,DDR控制器中的延迟参数判定单元自动启动,进入初始化判定模式,读取DDR数据DQ和DDR芯片地址1中的自检数据,依据不同的DQS_DLYx信号对所述数据DQ进行采样。
在执行完步骤301对DDR芯片地址0和1的写入之后,在步骤S302中,延迟参数判断单元自动启动,并进入初始化判定模式,在此模式下通过不同的DQS_DLYx信号对读取到的DDR数据DQ进行采样。所谓不同的DQS_DLYx是指DQS信号经过不同级延迟后的触发信号,并依据该触发信号对DDR数据DQ进行采样。
步骤S303,将采样得到的所述数据DQ按字节与步骤S302中的自检数据依次进行比较,并生成DQS的两个边界初始相位延迟参数DLY_Before_Init和DLY_Last_Init,其中DLY_Before_Init为最小边界初始相位延迟参数,DLY_Last_Init为最大边界初始相位延迟参数。
步骤S304,判断步骤S303依次进行的比较是否完成,如果是,则转而执行步骤S305;如果否,则返回执行步骤S303。
步骤S305,将生成的DLY_Before_Init和DLY_Last_Init参数经过延迟两拍后,得到DLY_Before和DLY_Last边界延迟参数。
步骤S306,利用获取的DLY_Before和DLY_Last边界延迟参数进行相加计算,并将DLY_Before和DLY_Last之和向右移一位,即取DLY_Before和DLY_Last这两个参数的平均值赋予DQS_SEL。
步骤S307,依据步骤S306生成的DQS_SEL输出数据DQ读采样的时钟延迟DQS_DLY,使DQS相位延迟后处于有效数据窗的中央,确保DDR数据的读取稳定和精确。
需要说明的是在步骤S303、步骤S305和步骤S306中,有关依据数据DQ与自检数据的比较结果生成DQS的边界初始相位延迟参数DLY_Before_Init和DLY_Last_Init的过程,以下举例详细说明。
根据DDR规范,由于每8bit数据线都具有一个单独的DQS信号,所以对于16位DDR控制器来说,对于上述的DQS相位延迟电路相应的应该有独立的两套电路。这里为了使本领域的技术人员能够更清楚的了解上述过程,只考虑低字节数据DQ[7:0]及其DQS0之间的相位延迟判定过程。
请参阅附图4,为本发明DQS初始相位延迟判定时序图。考虑板卡走线延迟差及MEMORY芯片输出延迟差的原因,例如在开始时,到达DDR控制器一侧的DQ有效数据窗的前边沿与DQS前边沿之间的延迟为1.2ns,在DQ有效数据窗的后边沿处与DQS后边沿之间的延迟为0.8ns。
因为在DQS判定单元中设定的每级延迟为0.1ns,从而在DDR控制器初始化完成后,依据DQS信号经过不同级延迟后的触发信号对读取的DDR数据DQ采样,在执行步骤S303时,例如发现当延迟级数小于12,或者延迟级数大于30时,数据DQ不等于写入DDR芯片地址1中的部分自检数据0XA5,即通过上述处理得出DQS的边界初始相位延迟参数DLY_Before_Init=12,DLY_Last_Init=30。
需要说明的是,由于一直处于初始化判定模式中,Update一直为0(Update为DQS_SEL是否需要更新的指示信号,当Update为低电平0时,则DQS_SEL不需要更新;当Update为高电平1时,则DQS_SEL需要更新)。因此在执行步骤S305中,对DLY_Before_Init和DLY_Last_Init参数所进行的处理为:将DLY_Before_Init和DLY_Last_Init参数进行一级锁存后,再通过加法器和右移逻辑,延迟两拍后生成边界延迟参数DLY_Before和DLY_Last,此时DLY_Before为12,DLY_Last为30,将(DLY_Las+DLY_Before)>>1(取30和12的平均值)的结果赋值给DQS_SEL,然后执行步骤S306,依据该DQS_SEL输出数据DQ读采样的时钟延迟DQS_DLY。如图4中所示,DQS_DLY即为DQS延迟2.1ns后的时序波形。
从图4中可以看出,延迟后的DQS边沿基本处于DQ数据有效窗的中央,而现有技术的方法因为是固定1/4周期延迟,因此其延迟结果最终相对DQS延迟1.9ns,对于类似此例中DQS有效数据窗两边不对称的情况,无法保证延迟后的DQS处于有效数据窗的中央。采用本发明中的常规MEMORY测试数据0XA5A5和0x5A5A的强自相关性和弱互相关性,在初始化时依靠读取自检序列检测出两个边界延迟参数,进而推算出DQS有效数据窗中央对应的延迟参数,从而确保了不受干扰的读取DDR数据,保证其稳定性和精确性。
在本发明的另一个优选实施例中,上述实施例的步骤S303中还包括:同时依据DLY_Before_Init和DLY_Last_Init延迟DQS,获取DQS_Before和DQS_Last信号。此外,请参阅附图5所示,在步骤S307之后,还可以包括以下步骤:
步骤S308,延迟参数判定单元进入自适应跟踪模式,依据DQS_Before信号和DQS_Last信号对DQ数据进行采样。
步骤S309,判断DQS_Before信号采样得到的数据是否与DQS_DLY采样到的数据一致,如果否,则使两者的比较信号Before_UP信号输出高电平;如果是,则使该Before_UP信号输出低电平;同时,判断DQS_Last信号采样得到的数据是否与DQS_DLY采样到的数据一致,如果否,则使两者的比较信号Last_Down信号输出高电平;如果是,则使该Last_Down信号输出低电平。
步骤S310,将步骤S309获得的Before_UP和Last_Down信号进行逻辑或操作,并判断是否进行更新,当逻辑或操作的结果为1时,使update信号输出高电平,转而执行步骤S311;当逻辑或操作的结果为0时,使update信号输出低电平,停止更新工作,返回执行步骤S303。
步骤S311,更新边界延迟参数DLY_Before和DLY_Last,获取新的边界延迟参数DLY_Before和DLY_Last,并返回执行步骤S306。
在步骤S308至步骤S311中,如果update信号为低电平即为无效,则延迟参数判定单元中的延迟输出电路将不进行更新工作以节省功耗;如果update信号为高电平时,则延迟输出电路将根据Before_UP和Last_Down信号对DLY_Before参数和DLY_Last参数进行更新。如果Last_Down信号为高电平即有效,则DLY_Last=DLY_Last-1;如果Before_UP信号为高电平即有效,则DLY_Before=DLY_Before+1,这两个参数的更新将在一拍内完成,在执行步骤S311之后,返回执行步骤S306,在两个时钟周期后输出DQS_SEL给延迟电路;从而使延迟输出控制电路的选择器输出最适合数据DQ读采样的时钟延迟DQS信号,即DQS_DLY信号。从而完成了对有效数据窗边沿的自适应跟踪,使DQS_DLY信号的边沿一直处于有效数据窗的中央,从而确保了读取DDR数据的稳定和精确性。
在本发明这一优选的实施例二中,步骤S308至步骤S311中的具体执行过程,下面举例进行说明。
在外界环境参数(电压、温度等参数)没有发生变化的正常情况下,执行步骤S308使延迟参数判定单元进入自适应跟踪模式,依据步骤305中生成的DQS_Before和DQS_Last信号同时对DQ数据进行采样。在执行步骤S309时,由于外界环境参数(电压、温度等参数)没有发生变化的正常情况下,DQS_Before和DQS_Last信号对DQ数据的采样与DQS_DLY采样得到的数据是一致的,此时,使Before_UP和Last_Down信号输出低电平,然后再执行步骤S310,将Before_UP和Last_Down信号进行逻辑或操作,得到的结果为0。致使update输出低电平,此时,不进行任何更新的工作以节省功耗。
而当外界环境参数(电压、温度等参数)发生变化之后,DQS_Before或DQS_Last信号会有所变化。如附图6所示,数据DQ有效数据窗的前边沿和后边沿距离DQS两个边沿之间的延迟变为了1.2ns和0.9ns,即后边沿发生前移,致使数据DQ的有效数据窗变窄。
此时,由于延迟参数判定单元工作在自适应跟踪模式下,当出现此种延迟飘逸后,因为DQS延迟30级后采样到的数据与DQS_DLY信号采样到的数据不一致,在执行步骤S309时,Before_UP会输出低电平,而Last_Down信号会输出高电平,然后再执行步骤S310,将Before_UP和Last_Down信号进行逻辑或操作,结果为1,则Update信号会输出高电平。
在Update信号输出为高电平时,转而执行步骤S311进行边界延迟参数DLY_Before和DLY_Last信号的更新,此时更新后的DLY_Last为29,DLY_Before为12。返回执行步骤S306,依据更新后DLY_Before和DLY_Last信号进行计算,获得(DLY_Last+DLY_Before)>>1(取29和12的平均值)的结果,并将该结果赋予DLY_SEL,然后执行步骤S307,依据更新后的DQS_SEL输出数据DQ读采样的时钟延迟DQS_DLY。此时,如图6所示,DQS_DLY将变为DQS延迟2.1ns后的时序波形,从而完成了对有效数据窗边沿的自适应跟踪,使DQS_DLY信号的边沿一直处于有效数据窗的中央,从而确保了读取DDR数据的稳定和精确性。
此外在更新之后,DQS延迟DLY_Last即29级后采样的数据与DQS_DLY信号采样到的数据一致,即Last_Down信号和Update信号自动清零,致使DLY_SEL停止进行再次更新以节省功耗。
通过上述本发明实施例方法的描述,所属领域的技术人员可以清楚地了解到,本发明的方法可以依托于通用的硬件完成,因此,在上述公开的方法的基础上,本发明还提供了一种应用于DDR控制器中DQS延迟的相位校准装置,请参阅附图7,主要包括:初始化单元701,延迟参数判定单元702和延迟输出控制电路703。
初始化单元701,用于对DDR控制器进行初始化,并在DDR芯片的地址0和1中写入预设自检数据。
延迟参数判定单元702,用于依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样,将采样获取的所述数据DQ按字节与初始化单元701中预设自检数据进行比较,得到DLY_Before与DLY_Last,并将所述DLY_Last与DLY_Before参数的平均值赋予DQS_SEL信号。
延迟输出控制电路703,接收延迟参数判定单元702输出的所述DQS_SEL信号,依据所述DQS_SEL,输出DQS_DLY信号,即获取处于有效数据窗中央的DQS信号。
初始化单元701在对DDR控制器进行初始化的时候,在DDR芯片的地址0和1中写入数据0X5A5A和0XA5A5,作为自检数据。其中,0X5A5A和0XA5A5是常规MEMORY测试数据,本发明只采用硬件MEMORY芯片的常规测试数据,依据0X5A5A和0XA5A5的强自相关性和弱互相关,在延迟参数判定单元702中推算出有效数据窗中央对应的DQS延迟参数的DQS_SEL信号,并在延迟输出控制电路703中,依据该DQS_SEL信号输出最佳的用于采样数据DQ的读数据DQSx_DLY。使DQS相位延迟后处于有效数据窗的中央,确保DDR数据的读取不受干扰,以保证DDR数据读取的稳定性和精确性。
请参阅附图8,需要说明的是,在上述本发明公开的装置中,延迟参数判定单元702中主要包括:初始延迟判定电路7021,延迟参数输出电路7022和延迟跟踪电路7023,此外,在图8中还标示出了比较器7024,延迟更新控制逻辑7025,延迟更新逻辑7026和延迟排序逻辑7027。
初始延迟判定电路7021,用于依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样,将采样获取的所述数据DQ按字节与预设自检数据进行比较。
延迟参数输出电路7022,利用所述初始延迟判定电路7021中的所述比较结果,获取DLY_Before与DLY_Last参数,并将所述DLY_Before与DLY_Last参数的平均值赋予DQS_SEL信号,并将该DQS_SEL信号传输给所述延迟输出控制电路703。
延迟跟踪电路7023,用于对所述DLY_Before参数、所述DLY_Last参数和所述DQS_SEL信号进行更新。
在初始延迟判定电路7021中,依据DQS信号经过不同级延迟后的触发信号对数据DQ采样,将采样获取的数据DQ与DDR芯片地址中写入的自检数据0XA5A5进行比较,在数据DQ不等于写入DDR芯片地址1中的部分自检数据0XA5时,将延迟的数据赋予DLY_Before_Init和DLY_Last_Init。将比较获取的结果DLY_Before_Init和DLY_Last_Init传输给延迟参数输出电路7022。
延迟参数输出电路7022对DLY_Before_Init和DLY_Last_Init参数进行一级锁存后,再通过加法器和右移逻辑,延迟两拍后生成DLY_Before和DLY_Last边界延迟参数。同时依据DLY_Before_Init和DLY_Last_Init延迟DQS,获取DQS_Before和DQS_Last信号,并将其传输给延迟跟踪电路7023。
在延迟跟踪电路7023中,判断DQS_Before信号采样得到的数据是否与DQS_DLY采样到的数据一致,如果否,则使Before_UP信号输出高电平;如果是,则使Before_UP信号输出低电平;同时,判断DQS_Last信号采样得到的数据是否与DQS_DLY采样到的数据一致,如果否,则使Last_Down信号输出高电平1;如果是,则使Last_Down信号输出低电平0。然后,再依据判断获取的结果将Before_UP和Last_Down信号进行逻辑或操作,如果Before_UP和Last_Down信号中的任意一个信号输出高电平1,则使update信号输出高电平1,并开始更新DLY_Before参数、DLY_Last参数和DQS_SEL信号,并将更新后的DQS_SEL信号传输给延迟输出控制电路703,使其根据更新后的DQS_SEL信号输出DQS_DLY信号,以获取处于有效数据窗中央的DQS信号,使得DDR数据的读取更加的稳定和精确,并且不受任何干扰。
此外,图8中标示出了位于不同电路中的比较器7024,延迟更新控制逻辑7025,延迟更新逻辑7026和延迟排序逻辑7027,用于辅助实现初始延迟判定电路7021,延迟参数输出电路7022和延迟跟踪电路7023的功能。
综上所述:
通过本发明所公开的方法与装置,采用延迟参数判定单元和延迟参数输出电路中的硬件逻辑实现对DQS延迟的相位进行校准,避免了因为实际板卡走线和器件参数的影响,1/4周期延迟位置并不一定是有效数据窗的中央。其中,主要利用延迟参数判定单元通过数据筛选的方法将延迟后的DQS精确的落在有效数据窗中央,从而增强了数据采样的稳定性和抗干扰性。
此外,由于本发明没有利用接口时钟,而是采用对数据DQ进行采样,并针对采样数据进行比较,在DQS延迟的相位进行校准的过程中与接口时钟无关,所以,即便是在慢时钟条件下仍然能够保证较高的延迟精度。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种用于双倍速率同步动态随机存储器DDR控制器中双向数据滤波信号DQS延迟的相位校准方法,其特征在于,包括:
依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样;
将采样获取的所述数据DQ按字节与预设自检数据进行比较,并经过延迟两拍后获取最小边界延迟参数与最大边界延迟参数;
将所述最大边界延迟参数与最小边界延迟参数的平均值赋予DQS选择信号DQS_SEL;
依据所述DQS_SEL信号输出时钟延迟DQS信号,得到处于有效数据窗中央的DQS信号。
2.根据权利要求1所述的方法,其特征在于,所述将采样获取的所述数据DQ按字节与预设自检数据进行比较之后,还包括:获取依据最小边界延迟参数延迟DQS的DQS_Before信号,以及获取依据最大边界延迟参数延迟DQS的DQS_Last信号;
及在输出时钟延迟DQS信号之后,还包括:
依据所述DQS_Before信号和DQS_Last信号对DQ数据进行采样;
当所述DQS_Before信号采样得到的数据与所述时钟延迟DQS信号采样得到的数据不一致时,使两者的比较信号Before_UP信号输出高电平;
当所述DQS_Last信号采样得到的数据与所述时钟延迟DQS信号采样得到的数据不一致时,使两者的比较信号Last_Down信号输出高电平;
利用所述Before_UP和Last_Down信号进行逻辑或操作,当逻辑或操作的结果为1时,使所述DQS_SEL信号的更新指示信号update信号输出高电平;
依据所述update信号,生成新的最小边界延迟参数与最大边界延迟参数,并返回执行将所述最大边界延迟参数与最小边界延迟参数的平均值赋予DQS_SEL信号这一步骤。
3.根据权利要求2所述的方法,其特征在于,包括:
当所述DQS_Before信号采样得到的数据与所述时钟延迟DQS信号采样得到的数据一致时,使所述Before_UP信号输出低电平;
当所述DQS_Last信号采样得到的数据与所述时钟延迟DQS信号采样得到的数据一致时,使所述Last_Down信号输出低电平;
利用所述Before_UP和Last_Down信号进行逻辑或操作,当逻辑或操作的结果为0时,使所述update信号输出低电平;
依据所述update信号,停止进行所述DQS_SEL信号的更新。
4.根据权利要求1所述的方法,其特征在于,所述预设自检数据具体为:0X5A5A和0XA5A5。
5.一种用于DDR控制器中DQS延迟的相位校准装置,其特征在于,包括:
延迟参数判定单元,用于依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样,将采样获取的所述数据DQ按字节与预设自检数据进行比较,得到最小边界延迟参数与最大边界延迟参数,并将所述最大边界延迟参数与最小边界延迟参数的平均值赋予DQS选择信号DQS_SEL;
延迟输出控制电路,用于依据所述DQS_SEL信号,输出时钟延迟DQS信号,获取处于有效数据窗中央的DQS信号。
6.根据权利要求5所述的装置,其特征在于,所述延迟参数判定单元中包括:
初始延迟判定电路,用于依据DQS信号不同级延迟后的触发信号对DDR数据DQ进行采样,将采样获取的所述数据DQ按字节与预设自检数据进行比较;
延迟参数输出电路,用于利用所述初始延迟判定电路中的所述比较结果,获取最大边界延迟参数与最小边界延迟参数,并将所述最大边界延迟参数与最小边界延迟参数的平均值赋予所述DQS_SEL信号,传输给所述延迟输出控制电路。
7.根据权利要求6所述的装置,其特征在于,所述延迟参数判定单元中还包括:
延迟跟踪电路,用于对所述最小边界延迟参数、所述最大边界延迟参数和DQS_SEL信号进行更新。
8.根据权利要求5所述的装置,其特征在于,所述延迟参数判定单元中用于比较的所述预设自检数据具体为:0X5A5A和0XA5A5。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010245341 CN102347081B (zh) | 2010-07-30 | 2010-07-30 | 用于ddr控制器中dqs延迟的相位校准方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010245341 CN102347081B (zh) | 2010-07-30 | 2010-07-30 | 用于ddr控制器中dqs延迟的相位校准方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102347081A CN102347081A (zh) | 2012-02-08 |
CN102347081B true CN102347081B (zh) | 2013-11-06 |
Family
ID=45545671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010245341 Active CN102347081B (zh) | 2010-07-30 | 2010-07-30 | 用于ddr控制器中dqs延迟的相位校准方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102347081B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103226969B (zh) * | 2013-01-11 | 2015-08-05 | 昆山慧凝微电子有限公司 | Ddr2读写操作数字延迟链工艺-温度-电压控制器电路 |
CN104111902B (zh) * | 2013-04-19 | 2017-12-19 | 联芯科技有限公司 | 基于双倍速率同步动态随机存储器接口的通信系统及方法 |
CN104298627B (zh) * | 2013-07-16 | 2017-08-04 | 晨星半导体股份有限公司 | 存储器信号的动态相位追踪方法及其相关控制电路 |
US20150033062A1 (en) | 2013-07-26 | 2015-01-29 | Mediatek Inc. | Apparatus and method for controlling controllable clock source to generate clock signal with frequency transition |
CN104424984B (zh) * | 2013-08-20 | 2017-05-24 | 瑞昱半导体股份有限公司 | 存储器控制电路与控制存储器模块的数据读取程序的方法 |
CN107393578B (zh) * | 2016-05-16 | 2020-07-28 | 中国长城科技集团股份有限公司 | 一种内存训练的方法和装置 |
CN106527977B (zh) * | 2016-10-17 | 2020-01-21 | 锐捷网络股份有限公司 | 一种配置参数的方法及存储设备 |
CN106875966B (zh) * | 2017-01-09 | 2020-02-07 | 上海兆芯集成电路有限公司 | 数据选通信号处理系统以及处理方法 |
CN108922570B (zh) * | 2018-07-13 | 2020-11-13 | 豪威科技(上海)有限公司 | 读dqs信号的相位偏移检测方法、训练方法、电路及系统 |
CN109144818B (zh) * | 2018-08-09 | 2022-04-01 | 晶晨半导体(深圳)有限公司 | 获取数据总线接口稳定性余量的方法及系统 |
CN109213707B (zh) * | 2018-08-09 | 2022-07-05 | 晶晨半导体(深圳)有限公司 | 获取数据接口采样位置的方法、系统、设备及介质 |
CN110109509B (zh) * | 2019-03-27 | 2021-03-02 | 北京比特大陆科技有限公司 | 延迟校正方法、电路、装置、设备及计算机可读存储介质 |
CN110007713B (zh) * | 2019-04-16 | 2020-07-31 | 中国人民解放军国防科技大学 | 跨时钟域信号动态调整检查参数的时序检查方法及系统 |
CN111009271B (zh) * | 2019-11-18 | 2020-09-29 | 广东高云半导体科技股份有限公司 | 基于fpga的psram存储器初始化方法、装置、设备及介质 |
CN111128269B (zh) * | 2019-11-21 | 2023-05-23 | 深圳市国微电子有限公司 | 一种ddr比特延迟对齐方法、装置及存储介质 |
CN110928736B (zh) * | 2019-12-06 | 2022-07-12 | 迈普通信技术股份有限公司 | 内存参数调试方法及装置 |
CN111338426B (zh) * | 2020-02-18 | 2021-06-25 | 芯创智(北京)微电子有限公司 | 一种基于ddr读数据的分数时钟周期同步系统及方法 |
CN112687321B (zh) * | 2020-12-30 | 2023-04-07 | 西安紫光国芯半导体有限公司 | 校准方法、装置及对应的延迟电路 |
CN115862698B (zh) * | 2022-12-29 | 2023-10-10 | 中茵微电子(南京)有限公司 | 训练触发方法、onfi phy、芯片和电子设备 |
CN116665731B (zh) * | 2023-08-02 | 2023-10-03 | 成都智多晶科技有限公司 | 一种ddr存储器采样校准方法及ddr存储器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002324398A (ja) * | 2001-04-25 | 2002-11-08 | Mitsubishi Electric Corp | 半導体記憶装置、メモリシステムおよびメモリモジュール |
CN101106374A (zh) * | 2006-03-09 | 2008-01-16 | 尔必达存储器股份有限公司 | Dll电路和具有该电路的半导体设备 |
CN101364425A (zh) * | 2007-08-08 | 2009-02-11 | 联发科技股份有限公司 | 存储器控制方法及其电路 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5160856B2 (ja) * | 2007-10-24 | 2013-03-13 | ルネサスエレクトロニクス株式会社 | Ddrメモリコントローラ及び半導体装置 |
-
2010
- 2010-07-30 CN CN 201010245341 patent/CN102347081B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002324398A (ja) * | 2001-04-25 | 2002-11-08 | Mitsubishi Electric Corp | 半導体記憶装置、メモリシステムおよびメモリモジュール |
CN101106374A (zh) * | 2006-03-09 | 2008-01-16 | 尔必达存储器股份有限公司 | Dll电路和具有该电路的半导体设备 |
CN101364425A (zh) * | 2007-08-08 | 2009-02-11 | 联发科技股份有限公司 | 存储器控制方法及其电路 |
Also Published As
Publication number | Publication date |
---|---|
CN102347081A (zh) | 2012-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102347081B (zh) | 用于ddr控制器中dqs延迟的相位校准方法及装置 | |
US20120284576A1 (en) | Hardware stimulus engine for memory receive and transmit signals | |
US9715907B1 (en) | Optimal data eye for improved Vref margin | |
US6456544B1 (en) | Selective forwarding of a strobe based on a predetermined delay following a memory read command | |
US20050116751A1 (en) | Method and apparatus for improving stability and lock time for synchronous circuits | |
KR20110100467A (ko) | 메모리 장치를 구비하는 시스템의 데이터 트레이닝 최적화 방법 | |
US8856579B2 (en) | Memory interface having extended strobe burst for read timing calibration | |
US9672882B1 (en) | Conditional reference voltage calibration of a memory system in data transmisson | |
EP0855653B1 (en) | Memory controller with a programmable strobe delay | |
US20230289308A1 (en) | Nand switch | |
US9990973B1 (en) | Systems and methods using neighboring sample points in memory subsystem calibration | |
US9666264B1 (en) | Apparatus and method for memory calibration averaging | |
CN108009372B (zh) | 一种ddr内存虚拟写电平校准响应的方法 | |
US20080034266A1 (en) | Tester For Testing Semiconductor Device | |
CN112559267A (zh) | 集成电路间总线i2c从机以及i2c控制器测试方法 | |
US9928890B2 (en) | System and method for calibrating memory using credit-based segmentation control | |
CN106708167A (zh) | 一种调整时钟的方法及控制器 | |
CN112639696A (zh) | 手写板、手写板装置及书写控制方法 | |
US9640244B1 (en) | Pre-calibration for multiple performance states | |
US20140085236A1 (en) | Information Processing Method And Electronic Apparatus | |
US20200265881A1 (en) | Memory Calibration with End Point Replay | |
KR100903385B1 (ko) | 고속으로 데이터 송신할 수 있는 반도체 메모리 장치 | |
CN102254569B (zh) | 四倍数据速率qdr控制器及其实现方法 | |
JP2011253501A (ja) | 半導体装置 | |
US8635487B2 (en) | Memory interface having extended strobe burst for write timing calibration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20120208 Assignee: Shanghai Li Ke Semiconductor Technology Co., Ltd. Assignor: Leadcore Technology Co., Ltd. Contract record no.: 2018990000159 Denomination of invention: Method for calibrating phase of DQS (bidirectional data strobe) delay for DDR (double data rate) controller and apparatus thereof Granted publication date: 20131106 License type: Common License Record date: 20180615 |