CN117251322A - 一种用于定位数据眼图的训练装置及方法 - Google Patents
一种用于定位数据眼图的训练装置及方法 Download PDFInfo
- Publication number
- CN117251322A CN117251322A CN202311168165.5A CN202311168165A CN117251322A CN 117251322 A CN117251322 A CN 117251322A CN 202311168165 A CN202311168165 A CN 202311168165A CN 117251322 A CN117251322 A CN 117251322A
- Authority
- CN
- China
- Prior art keywords
- data
- training
- read
- write
- delay
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000010586 diagram Methods 0.000 title claims abstract description 44
- 238000005070 sampling Methods 0.000 claims abstract description 66
- 239000002245 particle Substances 0.000 claims abstract description 14
- 230000003111 delayed effect Effects 0.000 claims description 28
- 239000008187 granular material Substances 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 description 13
- 238000004590 computer program Methods 0.000 description 6
- 238000007796 conventional method Methods 0.000 description 4
- 230000001934 delay Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004886 process control Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本申请提供一种用于定位数据眼图的训练装置及方法,所述装置包括:内存控制器、物理层侧的第一训练电路和内存颗粒侧的第二训练电路;内存控制器用于控制第一训练电路和第二训练电路配合进行读训练和写训练操作,并基于训练结果生成数据眼图;在单次读训练中,第一训练电路用于向内存颗粒发送读命令,第二训练电路用于基于读命令向物理层发送目标读数据及对应的读数据选通信号;第一训练电路还用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,基于各采样值序列确定读训练结果,N为大于1的正整数,能提高训练效率,缩短训练时间。
Description
技术领域
本申请涉及存储器训练技术领域,尤其涉及一种用于定位数据眼图的训练装置及方法。
背景技术
目前存在的大部分并口技术的数据传输速率已超过3Gbps,比如LPDDR4最高数据传输速率为3200Mbps,ONFI5.1的最高数据传输速率为3600Mbps,LPDDR5X的数据传输速率甚至已达到8533Mbps。面对如此高频的数据传输速率,针对数据总线的训练过程显得尤为重要。通过改变数据IO口的延时值(即delay),并通过发送和接收数据的方式来检测数据传输的最佳眼图位置,以用于弥补PHY(Physical,物理层)和内存颗粒间物理连线的偏移(即skew)等问题,保证数据的准确传输。
数据总线的训练过程包括读训练和写训练。对于读训练目前业界最普遍的做法如下:
在做读训练时,首先固定数据IO的一个delay值并通过命令总线发送读命令直接从颗粒端回收预设的读训练数据,然后利用收到的数据和PHY内部计算出的golden数据进行比较,如果正确则认为当前delay下对应的数据IO传输正确可靠,在扫描完数据IO的所有delay值之后,即可得到对应数据接口的眼图,再通过添加扫描参考电压(Vref),即可得到数据的二维眼图。
对于写训练目前业界最普遍的做法如下:
读训练完成之后即可进行写训练,在做写训练时,首先固定数据IO的一个delay值并通过命令总线发送写命令,同时发送一连串的随机种子的PRBS(Pseudo Random BinarySequence,伪随机二进制序列)数据,之后发送读命令,利用回收的数据和PHY内部PRBS产生的数据源码进行比较,如果正确则认为当前delay下对应的发送数据IO传输正确可靠,当扫完数据IO的所有delay值之后,即可得到对应数据接口的眼图,再通过添加扫描参考电压,即可得到数据的二维眼图。
在实际应用过程中,数据总线的训练过程通常需要根据板级物理连线线上skew的大小扫满多个UI才能得到完整的数据眼图,比如假设板级线上skew的大小要求为小于等于1个UI,则训练的过程需要扫满2个UI才能得到完整的数据眼图。假设一个UI对应的delay调节档位数是64挡,2UI扫满需要调节的delay档位数是128挡,即需要重复上述读训练和写训练过程128次才能得到完整的数据眼图。上述数据眼图训练过程的低效导致训练过程的时间过长,进而导致存储器产品的开机时间及从休眠/断电状态转换为正常工作状态所耗费的时间过长,严重影响产品性能和用户体验。
发明内容
本申请提供一种用于定位数据眼图的训练装置及方法,以用于解决现有技术训练过程低效导致的训练过程时间长,影响存储器产品性能和用户体验的问题。
本申请提供一种用于定位数据眼图的训练装置,所述装置包括:
内存控制器、设置于物理层侧的第一训练电路和设置于内存颗粒侧的第二训练电路;
所述内存控制器用于控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图;
在单次读训练过程中,所述第一训练电路用于向内存颗粒发送读命令,所述第二训练电路用于基于所述读命令向物理层发送目标读数据及对应的读数据选通信号;所述第一训练电路还用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,基于各采样值序列确定读训练结果;其中,N为大于1的正整数。
根据本申请提供的一种用于定位数据眼图的训练装置,在单次写训练过程中,所述第一训练电路用于向内存颗粒依次发送写命令、N个延时写数据子序列及对应的写数据选通信号、读命令,所述N个延时写数据子序列是基于不同的延迟档位分别对目标写数据均分得到的N个写数据子序列进行延迟得到的;所述第二训练电路用于基于所述写命令接收并存储各延时写数据子序列,并基于所述读命令向物理层发送目标延时写数据子序列及对应的读数据选通信号;所述第一训练电路还用于基于读训练得到的最佳延时值对目标延时写数据子序列进行延迟并基于对应的读数据选通信号确定目标延时写数据子序列对应的采样值序列,基于各采样值序列确定写训练结果。
根据本申请提供的一种用于定位数据眼图的训练装置,所述第一训练电路包括命令发生器、读数据延迟子电路和数据比较器,所述第二训练电路包括命令解析器、读数据选通信号发生器和数据发送子电路;
在单次读训练过程中,所述命令发生器用于向内存颗粒发送读命令;所述命令解析器用于基于所述读命令控制所述数据发送子电路向物理层发送目标读数据,同时控制所述读数据选通信号发生器向物理层发送所述目标读数据对应的读数据选通信号;所述读数据延迟子电路用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,所述数据比较器用于基于各采样值序列确定读训练结果。
根据本申请提供的一种用于定位数据眼图的训练装置,所述读数据延迟子电路包括读分时数据分解器和N个延迟采样单元,各延迟采样单元均包括对应的延迟子单元和采样子单元;
所述读分时数据分解器用于将接收到的数据均分为N个读数据子序列并分别输入N个延迟采样单元;
对于任一延迟采样单元,延迟子单元用于基于预设的延迟档位指示信息对输入的读数据子序列进行延迟并输入对应的采样子单元;采样子单元用于基于所述目标读数据对应的读数据选通信号确定读数据子序列对应的采样值序列。
根据本申请提供的一种用于定位数据眼图的训练装置,所述将接收到的数据均分为N个读数据子序列,具体包括:
基于接收到的数据对应的时间区段生成N个使能信号,并基于所述N个使能信号将接收到的数据均分为N个读数据子序列;
其中,各使能信号的使能区段长度相同且在时间上连续,N个使能信号的使能区段构成的使能总区段与接收到的数据对应的时间区段相同。
根据本申请提供的一种用于定位数据眼图的训练装置,所述第一训练电路还包括写数据选通信号发生器和写数据延迟子电路,所述第二训练电路还包括数据接收子电路;
在单次写训练过程中,所述命令发生器用于向内存颗粒依次发送写命令和读命令,所述写数据延迟子电路用于基于不同的延迟档位分别对目标写数据均分得到的N个写数据子序列进行延迟得到N个延时写数据子序列,同时所述写数据选通信号发生器用于生成N个延时写数据子序列对应的写数据选通信号;所述命令解析器用于基于所述写命令控制所述数据接收子电路接收并存储各延时写数据子序列,并基于所述读命令控制数据发送子电路向物理层发送目标延时写数据子序列,同时控制所述读数据选通信号发生器向物理层发送所述目标延时写数据子序列对应的读数据选通信号;所述读数据延迟子电路还用于基于读训练得到的最佳延时值对目标延时写数据子序列进行延迟并基于对应的读数据选通信号确定目标延时写数据子序列对应的采样值序列,所述数据比较器用于基于各采样值序列确定写训练结果。
根据本申请提供的一种用于定位数据眼图的训练装置,所述写数据延迟子电路包括写分时数据分解器和N个延迟单元;
所述写分时数据分解器用于将目标写数据均分为N个写数据子序列并分别输入N个延迟单元;
对于任一延迟单元,所述延迟单元用于基于预设的延迟档位指示信息对输入的写数据子序列进行延迟以得到对应的延时写数据子序列。
根据本申请提供的一种用于定位数据眼图的训练装置,所述将目标写数据均分为N个写数据子序列,具体包括:
基于目标写数据对应的时间区段生成N个使能信号,并基于所述N个使能信号将目标写数据均分为N个写数据子序列;
其中,各使能信号的使能区段长度相同且在时间上连续,N个使能信号的使能区段构成的使能总区段与目标写数据对应的时间区段相同。
根据本申请提供的一种用于定位数据眼图的训练装置,所述第一训练电路还包括寄存器阵列,所述寄存器阵列用于配置延迟档位指示信息及存储读训练结果和写训练结果。
本申请还提供一种用于定位数据眼图的训练方法,所述方法应用于前述用于定位数据眼图的训练装置的内存控制器,所述方法包括:
基于预先确定的偏移范围设置读训练和写训练的延迟档位数,并基于读训练和写训练的延迟档位数确定读训练和写训练的次数及每次训练对应的延迟档位组合;
基于读训练和写训练的次数及每次训练对应的延迟档位组合控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图。
本申请提供的用于定位数据眼图的训练装置及方法,所述装置包括:内存控制器、设置于物理层侧的第一训练电路和设置于内存颗粒侧的第二训练电路;所述内存控制器用于控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图;在单次读训练过程中,所述第一训练电路用于向内存颗粒发送读命令,所述第二训练电路用于基于所述读命令向物理层发送目标读数据及对应的读数据选通信号;所述第一训练电路还用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,基于各采样值序列确定读训练结果;其中,N为大于1的正整数,能够在一次读训练过程中实现多个延迟档位的扫描,进而提高训练效率,缩短训练时间,保证存储器产品性能和用户体验。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的用于定位数据眼图的训练装置的结构示意图;
图2是本申请提供的用于定位数据眼图的训练装置的具体部件示意图;
图3是本申请提供的单次读训练过程的信号时序示意图;
图4是本申请提供的单次写训练过程中写操作对应的信号时序示意图;
图5是本申请提供的单次写训练过程中读操作对应的信号时序示意图;
图6是本申请提供的用于定位数据眼图的训练方法的流程示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请提供的用于定位数据眼图的训练装置的结构示意图,如图1所示,所述装置包括:
内存控制器、设置于物理层侧的第一训练电路和设置于内存颗粒侧的第二训练电路;
所述内存控制器用于控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图;
在单次读训练过程中,所述第一训练电路用于向内存颗粒发送读命令,所述第二训练电路用于基于所述读命令向物理层发送目标读数据及对应的读数据选通信号;所述第一训练电路还用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,基于各采样值序列确定读训练结果;其中,N为大于1的正整数。
具体的,所述目标读数据是所述内存颗粒侧的读数据固定序列发生器生成的,内存控制器通过预先配置可以控制固定序列发生器生成任意序列数据作为目标读数据,其具体的配置和序列数据生成方法为本领域的常规手段,本申请实施例在此不作展开。基于前述内容可知,传统方法在做读训练时,首先固定数据IO的一个delay值并通过命令总线发送读命令直接从颗粒端回收预设的读训练数据,然后利用收到的数据和PHY内部计算出的golden数据进行比较,如果正确则认为当前delay下对应的数据IO传输正确可靠,即传统方法单次读训练只能实现一个延迟档位的扫描,导致读训练效率过低。针对该问题,本申请实施例通过第一训练电路将接收到的数据(即内存颗粒返回的读数据)均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,基于各采样值序列确定读训练结果,其中,N为大于1的正整数。基于此,本申请实施例即可在单次读训练中对N个延迟档位进行扫描,进而提升读训练效率。
基于前述内容还可知,传统方法在做写训练时,首先固定数据IO的一个delay值并通过命令总线发送写命令,同时发送一连串的随机种子的PRBS(Pseudo Random BinarySequence,伪随机二进制序列)数据,之后发送读命令,利用回收的数据和PHY内部PRBS产生的数据源码进行比较,如果正确则认为当前delay下对应的发送数据IO传输正确可靠。即传统方法单次写训练也只能实现一个延迟档位的扫描,导致写训练效率也过低。针对该问题,本申请实施例进一步的,在单次写训练过程中,所述第一训练电路用于向内存颗粒依次发送写命令、N个延时写数据子序列及对应的写数据选通信号、读命令,所述N个延时写数据子序列是基于不同的延迟档位分别对目标写数据均分得到的N个写数据子序列进行延迟得到的;所述第二训练电路用于基于所述写命令接收并存储各延时写数据子序列,并基于所述读命令向物理层发送目标延时写数据子序列及对应的读数据选通信号;所述第一训练电路还用于基于读训练得到的最佳延时值对目标延时写数据子序列进行延迟并基于对应的读数据选通信号确定目标延时写数据子序列对应的采样值序列,基于各采样值序列确定写训练结果。基于此,本申请实施例即可在单次写训练中对N个延迟档位进行扫描,进而提升写训练效率。值得注意的是,N的取值可以根据实际需要进行调整,本申请实施例对此不作具体限定。
更具体的,图2是本申请提供的用于定位数据眼图的训练装置的具体部件示意图,如图2所示,所述第一训练电路包括命令发生器、读数据延迟子电路和数据比较器,所述第二训练电路包括命令解析器、读数据选通信号发生器和数据发送子电路;
在单次读训练过程中,所述命令发生器用于向内存颗粒发送读命令;所述命令解析器用于基于所述读命令控制所述数据发送子电路向物理层发送目标读数据,同时控制所述读数据选通信号发生器向物理层发送所述目标读数据对应的读数据选通信号;所述读数据延迟子电路用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,所述数据比较器用于基于各采样值序列确定读训练结果。
所述读数据延迟子电路包括读分时数据分解器和N个延迟采样单元,各延迟采样单元均包括对应的延迟子单元和采样子单元;
所述读分时数据分解器用于将接收到的数据均分为N个读数据子序列并分别输入N个延迟采样单元;
对于任一延迟采样单元,延迟子单元用于基于预设的延迟档位指示信息对输入的读数据子序列进行延迟并输入对应的采样子单元;采样子单元用于基于所述目标读数据对应的读数据选通信号确定读数据子序列对应的采样值序列。
所述将接收到的数据均分为N个读数据子序列,具体包括:
基于接收到的数据对应的时间区段生成N个使能信号,并基于所述N个使能信号将接收到的数据均分为N个读数据子序列;
其中,各使能信号的使能区段长度相同且在时间上连续,N个使能信号的使能区段构成的使能总区段与接收到的数据对应的时间区段相同。
基于此,本申请实施例在进行读训练时,能够将接收到的数据拆分为N个时间等份(对应于N个读数据子序列)。可以理解的是,由于接收到的数据对应的时间区段已知,在N确定的情况下,本申请实施例即可快速准确地生成N个使能信号以将接收到的数据均分为N个读数据子序列。具体的,分时数据分解器可将各使能信号分别与接收到的数据信号相与以在不破坏数据时序关系的前提下将数据拆分为N个读数据子序列。以N=4为例,图3是本申请提供的单次读训练过程的信号时序示意图,如图3所示,CK为时钟信号,CS为片选信号,CMD为命令信号,DQS为数据选通信号(具体为读数据选通信号),DQ_BUS为数据总线上传输的数据信号,DQ_delay为数据信号对应的延时,其中,RXDelay0、RXDelay1、RXDelay2和RXDelay3分别指不同延迟档位对应的延时;TIME_FLAG0、TIME_FLAG1、TIME_FLAG2和TIME_FLAG3分别指不同的使能信号,PASS_FAIL_FLAG0、PASS_FAIL_FLAG1、PASS_FAIL_FLAG2和PASS_FAIL_FLAG3分别指不同采样值序列对应的读训练结果。可以理解的是,所述读训练结果是将采样值序列与对应的标准序列值进行比较得到的,若两者相同则通过(即PASS),若两者不同则不通过(即FAIL),基于该训练结果即可绘制对应的数据眼图,其具体原理为本领域的常规技术,本申请实施例在此不作赘述。结合图3可知,通过本申请实施例的用于定位数据眼图的训练装置,能够在单次读训练中对N个延迟档位进行扫描,进而提升读训练效率。
进一步的,所述第一训练电路还包括写数据选通信号发生器和写数据延迟子电路,所述第二训练电路还包括数据接收子电路;
在单次写训练过程中,所述命令发生器用于向内存颗粒依次发送写命令和读命令,所述写数据延迟子电路用于基于不同的延迟档位分别对目标写数据均分得到的N个写数据子序列进行延迟得到N个延时写数据子序列,同时所述写数据选通信号发生器用于生成N个延时写数据子序列对应的写数据选通信号;所述命令解析器用于基于所述写命令控制所述数据接收子电路接收并存储各延时写数据子序列,并基于所述读命令控制数据发送子电路向物理层发送目标延时写数据子序列,同时控制所述读数据选通信号发生器向物理层发送所述目标延时写数据子序列对应的读数据选通信号;所述读数据延迟子电路还用于基于读训练得到的最佳延时值对目标延时写数据子序列进行延迟并基于对应的读数据选通信号确定目标延时写数据子序列对应的采样值序列,所述数据比较器用于基于各采样值序列确定写训练结果。
所述写数据延迟子电路包括写分时数据分解器和N个延迟单元;
所述写分时数据分解器用于将目标写数据均分为N个写数据子序列并分别输入N个延迟单元;
对于任一延迟单元,所述延迟单元用于基于预设的延迟档位指示信息对输入的写数据子序列进行延迟以得到对应的延时写数据子序列。
所述将目标写数据均分为N个写数据子序列,具体包括:
基于目标写数据对应的时间区段生成N个使能信号,并基于所述N个使能信号将目标写数据均分为N个写数据子序列;
其中,各使能信号的使能区段长度相同且在时间上连续,N个使能信号的使能区段构成的使能总区段与目标写数据对应的时间区段相同。
可以理解的是,与读训练过程类似的,本申请实施例为了进一步提高训练效率,在写训练过程中,本申请实施例同样也对目标写数据进行拆分,进而提高写训练效率。通过写分时数据分解器可将各使能信号分别与目标写数据相与以在不破坏数据时序关系的前提下将数据拆分为N个写数据子序列。值得注意的是,写训练过程是在读训练过程完成后进行的,在进行写数据训练时,读数据延迟子电路对应的延时值为基于读训练得到的最佳延时值(读训练最终得到的眼图中间点的最佳值),基于此,能够确保读方向从内存颗粒收到的数据一定是当时写入的数据,进而确保写训练结果的准确性。同样以N=4为例,图4是本申请提供的单次写训练过程中写操作对应的信号时序示意图,图5是本申请提供的单次写训练过程中读操作对应的信号时序示意图,如图4-5所示,CK为时钟信号,CS为片选信号,CMD为命令信号,DQS为数据选通信号(包括写数据选通信号和读数据选通信号),DQ_BUS为数据总线上传输的数据信号,DQ_delay为数据信号对应的延时,其中,TXDelay0、TXDelay1、TXDelay2和TXDelay3分别指不同延迟档位对应的延时;TIME_FLAG0、TIME_FLAG1、TIME_FLAG2和TIME_FLAG3分别指不同的使能信号,PASS_FAIL_FLAG0、PASS_FAIL_FLAG1、PASS_FAIL_FLAG2和PASS_FAIL_FLAG3分别指不同采样值序列对应的写训练结果。可以理解的是,所述写训练结果是将采样值序列与对应的标准序列值进行比较得到的,若两者相同则通过(即PASS),若两者不同则不通过(即FAIL),基于该训练结果即可绘制对应的数据眼图。结合图4-5可知,通过本申请实施例的用于定位数据眼图的训练装置,能够在单次写训练中对N个延迟档位进行扫描,进而提升写训练效率。
所述第一训练电路还包括寄存器阵列,所述寄存器阵列用于配置延迟档位指示信息及存储读训练结果和写训练结果。基于此,内存控制器即可通过对寄存器阵列的配置实现延迟档位的控制及训练结果的获取。可以理解的是,所述寄存器阵列还可用于配置前述使能信号等训练过程控制信号,进而保证训练过程控制的准确性和效率。
本申请实施例提供的用于定位数据眼图的训练装置,所述装置包括:内存控制器、设置于物理层侧的第一训练电路和设置于内存颗粒侧的第二训练电路;所述内存控制器用于控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图;在单次读训练过程中,所述第一训练电路用于向内存颗粒发送读命令,所述第二训练电路用于基于所述读命令向物理层发送目标读数据及对应的读数据选通信号;所述第一训练电路还用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,基于各采样值序列确定读训练结果;其中,N为大于1的正整数,能够在一次读训练过程中实现多个延迟档位的扫描,进而提高训练效率,缩短训练时间,保证存储器产品性能和用户体验。
图6是本申请提供的用于定位数据眼图的训练方法的流程示意图,所述方法应用于前述用于定位数据眼图的训练装置的内存控制器,如图6所示,所述方法包括:
步骤101,基于预先确定的偏移范围设置读训练和写训练的延迟档位数,并基于读训练和写训练的延迟档位数确定读训练和写训练的次数及每次训练对应的延迟档位组合;
步骤102,基于读训练和写训练的次数及每次训练对应的延迟档位组合控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图。
具体的,基于前述内容可知,数据总线的训练过程通常需要根据板级物理连线线上skew的大小扫满多个UI才能得到完整的数据眼图,而具体的偏移范围是可以预先确定的。基于此,本申请实施例即可基于预先确定的偏移范围设置读训练和写训练的延迟档位数,并基于读训练和写训练的延迟档位数确定读训练和写训练的次数及每次训练对应的延迟档位组合,进而基于读训练和写训练的次数及每次训练对应的延迟档位组合控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图。对于具体训练过程的原理和效果在前述实施例已经进行了详细阐述,在此不再赘述。
值得注意的是,无论是读训练还是写训练过程,对于每次训练对应的延迟档位组合,可以采用多种不同的设置方式,例如按从小到大或从大到小的顺序设置延迟档位:比如第一次训练的延迟档位为0~3,第二次训练的延迟档位档位为4~7,以此类推。或是采用类似二分法的方式设置延迟档位,本申请实施例在此不作穷举。
本申请实施例提供的方法,所述方法包括:基于预先确定的偏移范围设置读训练和写训练的延迟档位数,并基于读训练和写训练的延迟档位数确定读训练和写训练的次数及每次训练对应的延迟档位组合;基于读训练和写训练的次数及每次训练对应的延迟档位组合控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图,能够在一次训练过程中实现多个延迟档位的扫描,进而提高训练效率,缩短训练时间,保证存储器产品性能和用户体验。
另一方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的用于定位数据眼图的训练方法,所述方法包括:基于预先确定的偏移范围设置读训练和写训练的延迟档位数,并基于读训练和写训练的延迟档位数确定读训练和写训练的次数及每次训练对应的延迟档位组合;基于读训练和写训练的次数及每次训练对应的延迟档位组合控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图。
又一方面,本申请还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的用于定位数据眼图的训练方法,所述方法包括:基于预先确定的偏移范围设置读训练和写训练的延迟档位数,并基于读训练和写训练的延迟档位数确定读训练和写训练的次数及每次训练对应的延迟档位组合;基于读训练和写训练的次数及每次训练对应的延迟档位组合控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种用于定位数据眼图的训练装置,其特征在于,所述装置包括:
内存控制器、设置于物理层侧的第一训练电路和设置于内存颗粒侧的第二训练电路;
所述内存控制器用于控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图;
在单次读训练过程中,所述第一训练电路用于向内存颗粒发送读命令,所述第二训练电路用于基于所述读命令向物理层发送目标读数据及对应的读数据选通信号;所述第一训练电路还用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,基于各采样值序列确定读训练结果;其中,N为大于1的正整数。
2.根据权利要求1所述的用于定位数据眼图的训练装置,其特征在于,在单次写训练过程中,所述第一训练电路用于向内存颗粒依次发送写命令、N个延时写数据子序列及对应的写数据选通信号、读命令,所述N个延时写数据子序列是基于不同的延迟档位分别对目标写数据均分得到的N个写数据子序列进行延迟得到的;所述第二训练电路用于基于所述写命令接收并存储各延时写数据子序列,并基于所述读命令向物理层发送目标延时写数据子序列及对应的读数据选通信号;所述第一训练电路还用于基于读训练得到的最佳延时值对目标延时写数据子序列进行延迟并基于对应的读数据选通信号确定目标延时写数据子序列对应的采样值序列,基于各采样值序列确定写训练结果。
3.根据权利要求2所述的用于定位数据眼图的训练装置,其特征在于,所述第一训练电路包括命令发生器、读数据延迟子电路和数据比较器,所述第二训练电路包括命令解析器、读数据选通信号发生器和数据发送子电路;
在单次读训练过程中,所述命令发生器用于向内存颗粒发送读命令;所述命令解析器用于基于所述读命令控制所述数据发送子电路向物理层发送目标读数据,同时控制所述读数据选通信号发生器向物理层发送所述目标读数据对应的读数据选通信号;所述读数据延迟子电路用于将接收到的数据均分为N个读数据子序列,基于不同的延迟档位分别对各读数据子序列进行延迟并基于对应的读数据选通信号确定各读数据子序列对应的采样值序列,所述数据比较器用于基于各采样值序列确定读训练结果。
4.根据权利要求3所述的用于定位数据眼图的训练装置,其特征在于,所述读数据延迟子电路包括读分时数据分解器和N个延迟采样单元,各延迟采样单元均包括对应的延迟子单元和采样子单元;
所述读分时数据分解器用于将接收到的数据均分为N个读数据子序列并分别输入N个延迟采样单元;
对于任一延迟采样单元,延迟子单元用于基于预设的延迟档位指示信息对输入的读数据子序列进行延迟并输入对应的采样子单元;采样子单元用于基于所述目标读数据对应的读数据选通信号确定读数据子序列对应的采样值序列。
5.根据权利要求4所述的用于定位数据眼图的训练装置,其特征在于,所述将接收到的数据均分为N个读数据子序列,具体包括:
基于接收到的数据对应的时间区段生成N个使能信号,并基于所述N个使能信号将接收到的数据均分为N个读数据子序列;
其中,各使能信号的使能区段长度相同且在时间上连续,N个使能信号的使能区段构成的使能总区段与接收到的数据对应的时间区段相同。
6.根据权利要求5所述的用于定位数据眼图的训练装置,其特征在于,所述第一训练电路还包括写数据选通信号发生器和写数据延迟子电路,所述第二训练电路还包括数据接收子电路;
在单次写训练过程中,所述命令发生器用于向内存颗粒依次发送写命令和读命令,所述写数据延迟子电路用于基于不同的延迟档位分别对目标写数据均分得到的N个写数据子序列进行延迟得到N个延时写数据子序列,同时所述写数据选通信号发生器用于生成N个延时写数据子序列对应的写数据选通信号;所述命令解析器用于基于所述写命令控制所述数据接收子电路接收并存储各延时写数据子序列,并基于所述读命令控制数据发送子电路向物理层发送目标延时写数据子序列,同时控制所述读数据选通信号发生器向物理层发送所述目标延时写数据子序列对应的读数据选通信号;所述读数据延迟子电路还用于基于读训练得到的最佳延时值对目标延时写数据子序列进行延迟并基于对应的读数据选通信号确定目标延时写数据子序列对应的采样值序列,所述数据比较器用于基于各采样值序列确定写训练结果。
7.根据权利要求6所述的用于定位数据眼图的训练装置,其特征在于,所述写数据延迟子电路包括写分时数据分解器和N个延迟单元;
所述写分时数据分解器用于将目标写数据均分为N个写数据子序列并分别输入N个延迟单元;
对于任一延迟单元,所述延迟单元用于基于预设的延迟档位指示信息对输入的写数据子序列进行延迟以得到对应的延时写数据子序列。
8.根据权利要求7所述的用于定位数据眼图的训练装置,其特征在于,所述将目标写数据均分为N个写数据子序列,具体包括:
基于目标写数据对应的时间区段生成N个使能信号,并基于所述N个使能信号将目标写数据均分为N个写数据子序列;
其中,各使能信号的使能区段长度相同且在时间上连续,N个使能信号的使能区段构成的使能总区段与目标写数据对应的时间区段相同。
9.根据权利要求8所述的用于定位数据眼图的训练装置,其特征在于,所述第一训练电路还包括寄存器阵列,所述寄存器阵列用于配置延迟档位指示信息及存储读训练结果和写训练结果。
10.一种用于定位数据眼图的训练方法,其特征在于,所述方法应用于权利要求9所述的用于定位数据眼图的训练装置的内存控制器,所述方法包括:
基于预先确定的偏移范围设置读训练和写训练的延迟档位数,并基于读训练和写训练的延迟档位数确定读训练和写训练的次数及每次训练对应的延迟档位组合;
基于读训练和写训练的次数及每次训练对应的延迟档位组合控制所述第一训练电路和所述第二训练电路配合进行读训练和写训练操作,并基于训练结果生成对应的数据眼图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311168165.5A CN117251322A (zh) | 2023-09-11 | 2023-09-11 | 一种用于定位数据眼图的训练装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311168165.5A CN117251322A (zh) | 2023-09-11 | 2023-09-11 | 一种用于定位数据眼图的训练装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117251322A true CN117251322A (zh) | 2023-12-19 |
Family
ID=89127292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311168165.5A Pending CN117251322A (zh) | 2023-09-11 | 2023-09-11 | 一种用于定位数据眼图的训练装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117251322A (zh) |
-
2023
- 2023-09-11 CN CN202311168165.5A patent/CN117251322A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8780655B1 (en) | Method and apparatus for aligning a clock signal and a data strobe signal in a memory system | |
CN101446841B (zh) | 确定存储器控制器时钟校准值的方法及系统 | |
JP5577776B2 (ja) | メモリ制御装置及びマスクタイミング制御方法 | |
CN115547381B (zh) | 数据选通信号的门控信号生成电路及其信号生成方法 | |
CN112328441B (zh) | Ddr调试方法及系统、可读存储介质、电子设备 | |
KR20100003083A (ko) | 데이터 전달 회로 및 그를 포함하는 반도체 메모리 장치 | |
CN113178223A (zh) | 存储器的数据训练方法、计算机装置及计算机可读存储介质 | |
US8754656B2 (en) | High speed test circuit and method | |
JP6387883B2 (ja) | 情報処理装置、情報処理システム、情報処理装置の制御プログラムおよび情報処理装置の制御方法 | |
KR102478044B1 (ko) | 반도체 시스템 | |
US7636828B2 (en) | Method for automatic adjustment of timing of double data rate interface | |
CN106708167A (zh) | 一种调整时钟的方法及控制器 | |
CN116863980B (zh) | 一种门控信号的动态调节电路和方法 | |
KR20180050816A (ko) | 반도체 장치 및 이를 포함하는 시스템 | |
CN112017727B (zh) | 接口测试方法、装置、处理器和电子设备 | |
CN109859788B (zh) | 阻式存储器的误码率测试方法 | |
CN117251322A (zh) | 一种用于定位数据眼图的训练装置及方法 | |
US10635628B2 (en) | Host controller apparatus, host controller device, and method for a host controller for determining information related to a time shift for transmitting instructions on a command and address bus, host controller and computer system | |
CN115412469B (zh) | 容差检测方法、计算机设备及可读存储介质 | |
US10861514B2 (en) | Data transmission and reception system, data transmission and reception device, and method of controlling data transmission and reception system | |
CN118430599B (zh) | 一种基于二分法在lpddr5写训练中的应用方法及系统 | |
CN116564380B (zh) | Dram中门控脉冲信号的校正方法和装置 | |
US20240231416A9 (en) | Memory system, memory access interface device and operation method thereof | |
TW201926353A (zh) | 校正記憶體模組之讀/寫資料的時序的方法及其系統 | |
CN117330942B (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 |