技术领域
[0001] 本发明涉及内存总线领域,具体涉及一种高速内存总线时序自适应方法。
相关背景技术
[0002] 第五/六代双倍数据率同步动态随机存取存储器(Double Data Rate 5/6 Synchronous Dynamic Random Access Memory,DDR5/6 SDRAM)、第五/六代低功耗双倍数据率同步动态随机存取存储器(Low Power Double Data Rate 5/6 Synchronous Dynamic Random Access Memory,LPDDR5/6 SDRAM)和第五/六代显卡双倍数据率同步动态随机存取存储器(Graphics Double Data Rate 5/6 Synchronous Dynamic Random Access Memory,GDDR5/6 SDRAM)是广泛用于计算机处理器(Central Processing Unit,CPU)、图形处理器、现场可编程门阵列、数字信号处理器、存储处理器喻内存颗粒之间通信的内存总线。
[0003] 寄存器时钟驱动双列直插记忆体模组(Registered Dual Inline Memory Module,RDIMM)涉及命令和地址(Command and Address,CA)信号、控制(ConTRoL,CTRL)信号、时钟(CLocK,CLK)信号、数据(Data,DQ)信号和数据探头(Data Strobe,DQS)信号等。其中,CA信号和CLK信号经寄存器时钟驱动器(Register Clock Driver,RCD)驱动后,再次发送给内存颗粒。DQ信号经过数据缓冲器(Data Buffer,DB)驱动后,发送给内存颗粒。
[0004] CPU和RCD之间、RCD和同步动态随机存取存储器(Synchronous Dynamic Random Access Memory,SDRAM)之间、CPU和DB之间、DB和SDRAM之间会执行CA信号对CLK信号、DQ信号对DQS信号之间的时序训练。时序训练结束后,时序位置不再发生改变。
[0005] 但随着内存总线的速率越来越高,CA信号对CLK信号、DQ对DQS信号的时序余量越来越小,静态时序训练结束后,随着温度、湿度的变化,时序抖动变大,CA信号相对于CLK信号的偏移发生漂移。
[0006] SoC电源上电时,会对CA信号、CLK信号的时序进行训练,但在读写业务运行过程中,外部环境发生变化,但是时序并未实时地训练,以补偿环境变化带来的影响。
[0007] 片上系统(System on Chip,SoC)补偿漂移等因素导致CA信号对CLK信号的时序、DQ信号对DQS信号的时序存在很高的风险。
[0008] 因此,在高速内存发展趋势下,CA信号对CLK信号、DQ信号对DQS信号之间时序自适应,变得越来越重要。
具体实施方式
[0022] 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0023] 为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定。
[0024] 图1是现有技术RDIMM中时序调整示意图。方案针对两种不同的情况。在情况1中,延迟模块1接收CA信号或CTRL信号,延迟模块2接收CLK信号,经过接收采样器的采样以及校验模块的校验后,输出CA信号或CTRL信号。在情况2中,延迟模块1接收DQ信,延迟模块2接收DQS信号,经过接收采样器的采样以及校验模块的校验后,输出DQ信号。
[0025] 图2是本发明RDIMM中时序调整示意图。本发明中,可以针对不同的信号类型,比如情况1时,CA信号或CTRL信号被CLK信号采样;在情况2时,DQ信号被DQS信号采样。
[0026] CA信号或CTRL信号,以及DQ信号是待采样信号。CLK信号和DQS信号为采样时钟信号。
[0027] 本发明包括第一通道和第二通道。第一通道包括第一延迟模块、第二延迟模块、第一接收采样器和第一校验模块。第二通道包括第三延迟模块、第四延迟模块、第二接收采样器和第二校验模块。
[0028] 复用器在通路选择信号配置为不同的值,比如0或1时,选择第一通道的输出信号或第二通道的输出信号为最终输出信号。
[0029] CA信号、CTRL信号或DQ信号,经过第一延迟模块后作为第一接收采样器的输入信号,CLK信号或DQS信号经过第二延迟模块后作为第一接收采样器的输入信号。
[0030] CA信号、CTRL信号或DQ信号,经过第三延迟模块后作为第二接收采样器的输入信号,CLK信号或DQS信号经过第四延迟模块后作为第二接收采样器的输入信号。
[0031] 第一校验模块接收第一接收采样器的输出信号,并作为复用器的输入信号之一。第二校验模块接收第二接收采样器的输出信号,并作为复用器的输入信号之一。
[0032] 具体的采样过程,由第一接收采样器或第二接收采样器执行。第一校验模块和第二校验模块根据采样结果判断是否出错。
[0033] 后文以CA信号和CLK信号为例,本发明的高速内存总线时序自适应方法,包括如下步骤:初始上电时,解复位第一接收采样器和第二接收采样器,切换寄存器设置为0,偏移寄存器设置为0,通道选择寄存器设置为0。
[0034] 本发明中,解复位的含义是将复位信号置为无效状态,解除复位状态。
[0035] 设置包括第一接收采样器在内的第一通道为正常工作模式,并设置包括第二接收采样器在内的第二通道为空闲模式。
[0036] 保持第二通道为空闲模式;针对第一通道执行时序训练,且训练完成时启动计数器。
[0037] 此时,第一通道为数据主通道,起数据传送功能;第二通道解复位,处于空闲模式,这往往只需消耗较低的能量。
[0038] 当计数器到达预设时长,第二通道进入余量测试模式。在余量测试模式中,先逐步左拉偏CLK信号相位,直至观测到第二校验模块在0至某时刻指示错误,测得CA信号左时序最大余量为A0。然后,逐步右拉偏CLK信号相位,直至观测到第二校验模块在0至某时刻指示错误,测得CA信号右时序最大余量为B0。计算A0‑B0,并保存。重复上述步骤,得到A1‑B1结果,其中A1是再次测得的CA信号左时序最大余量,B1是CA信号右时序最大余量。
[0039] 本发明中,左拉偏采样时钟信号(比如CLK信号)相位指的是将采样时钟信号的相位相对于当前提前,右拉偏采样时钟信号(比如CLK信号)相位指的是将采样时钟信号的相位相对于当前滞后。
[0040] 若|A0‑B0|
[0041] 而若|A0‑B0|≥K且|A1‑B1|≥K,则设置偏移寄存器为1,第二通道进入余量调优模式,以调整CA信号的延迟。
[0042] 本发明中,|A0‑B0|或|A1‑B1|,是待采样信号时序最大余量,也是待采样信号左时序最大余量和待采样信号右时序最大余量差值的绝对值。本示例中,待采样信号是CA信号,也可以是CTRL信号或DQ信号。
[0043] 可选地,可以将保存左时序最大余量的A0、A1,以及保存右时序最大余量B0、B1的寄存器归零。
[0044] 在第二通道进入余量调优模式后,以设定步长(比如K/2取整后的结果和‑K/2取整后的结果)调整第三延迟模块的延迟时长,进而调整CA信号的延迟,并测试第二通道的CA信号左时序最大余量和CA信号右时序最大余量,若连续两次出现CA信号时序最大余量
[0045] 示例地,沿用前文中保存左时序最大余量A0、A1的寄存器,以及保存右时序最大余量B0、B1的寄存器,若|A0‑B0|
[0046] 当偏移寄存器为1,且切换寄存器为1,并且总线状态为自刷新状态时,通道选择寄存器设置为1,将第二通道为主为数据主通道,也即正常工作模式,起数据传送功能。
[0047] 示例地,可以通过通路选择信号控制通道选择寄存器为1,实现将第二通道设置为主为数据主通道目的。
[0048] 当第二通道设置为数据主通道,第二接收采样器正常采样,第三延迟模块处于静态,第一通道设置为空闲状态,计数器开始计时。当计数器达到预设时长,第一通道进入余量测试模式,并且|A0‑B0|≥K且|A1‑B1|≥K时,进入余量调优模式。
[0049] 然后,将偏移寄存器设置为0,切换寄存器设置为0。
[0050] 至此,已经成功地实现了将数据主通道从第一通道切换为第二通道的变化。
[0051] 此后,按照前述相同的模式,在时序偏差较大时,同样可以将数据主通道从第二通道切换为第一通道。
[0052] 示例地,第一通道进入空闲模式后,当计时器到达预设时长,第一通道进入余量测试模式。
[0053] 第一通道进入余量测试模式后,若待采样信号时序最大余量不小于K,则第一通道进入余量调优模式。并且,在当偏移寄存器为1,且切换寄存器为1,并且总线状态为自刷新状态时,设置通道选择寄存器为1,将第一通道设置为正常工作模式,将第二通道设置为空闲模式。
[0054] 本发明虽然以上针对CA信号和CLK信号为例,但是对于其它信号组合,也是适用的,比如CTRL信号和CLK信号、DQ信号和DQS信号。
[0055] 本发明中的“0”或“1”指的是任何可以指示逻辑“0”或“1”的信号。
[0056] 为了更好的说明本发明,在上文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。
[0057] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。