读取存储设备存储器的系统、方法和装置与流程
- 国知局
- 2024-07-31 20:09:08
本发明总体上涉及存储设备,特别是涉及用于读取存储设备的存储器的系统、方法和装置。
背景技术:
1、有许多类型的动态随机存取存储器(dram)。其中一种被称为双倍数据速率dram(ddr dram),通过对电子数据和时钟信号的时序进行更严格的控制,使得更高的传输速率成为可能。ddr dram符合联合电子器件工程委员会(jedec)制定的行业标准电气和协议标准。根据jedec规范,ddr dram接口利用真实数据选通信号(dqs_t)和互补数据选通信号(dqs_c)来对数据(dq)进行采样。该对信号也被称为差分信号对。具体而言,在对ddr dram进行读取操作期间,dqs_t和dqs_c的差分信号被用于从ddr dram对dq进行采样。差分信号对被提供给控制器的差分接收器。当dqs_t和dqs_c处于不同电平时,已知的差分信号从差分接收器输出。当dq被传输时,dqs_t和dqs_c差分切换。然而,当接口空闲时,dqs_t和dqs_c可能保持在相同的电平,这使得它们不是差分的。此时,差分接收器可能具有未知的输出,这可能会扰乱其下游数字逻辑。因此,当dqs_t和dqs_c处于相同电平时,关断差分接收器的输出(这意味着将差分接收器的输出设置为固定值)是有用的,而当dqs_t和dqs_c差分切换时,允许差分接收器的输出表示dq。
2、数据选通信号通常包括可编程的前导码部分、数据读取期和后导码部分。可编程前导码部分可以为接收设备提供可编程的定时窗口,以在信号上存在已知/有效电平时启用数据捕获电路,从而避免数据捕获电路的错误触发。在可编程前导码部分之后和数据读取期期间,数据选通信号在高低电平转换之间切换,同时伴随时钟信号以传输数据。数据读取期的最后一次转换之后的时间称为后导码部分。因此,在对ddr dram进行读取操作期间,dqs_t和dqs_c在前导码部分和后导码部分中的切换不用于对dq进行采样。也就是说,并非每次dqs_t或dqs_c的切换都用于对dq进行采样。此外,不同的dram协议具有不同的前导码和后导码模式,因此设计能够支持所有模式的控制器是具有挑战性的。为了简化下游数字逻辑,丢弃未用于对dq进行采样的切换是有用的。
3、此外,ddr dram在读取操作期间通常可在突发读取模式下工作。在突发读取模式下,地址可以在ddr dram内按顺序生成,以响应由控制器提供给ddr dram的读取命令,并且在接收到读取命令和寻址初始地址之后,数据将被连续读出,以响应在内部按顺序生成的地址,而无需主机提供所有读出数据的地址。在接收到读取命令后将触发读取突发。即,在读取延迟(指从提供读取命令到读出数据的第一位可以使用之间的延迟)之后,将开始以突发长度(指在控制器向ddr dram提供读取命令后从ddr dram连续读出的数据量)从ddrdram读取数据的过程,以响应读取命令。在两个连续的读取突发之间可能存在间隙,间隙的存在可能导致某些前导码部分被截断或某些后导码部分被合并。因此,如何在读取突发之间存在间隙的情况下关断差分接收器的不需要的输出变得更加困难。
技术实现思路
1、本发明提供了用于读取存储设备的存储器的系统、方法和装置,其可以支持具有不同前导码和后导码模式的不同协议。
2、本文公开了一种方法,包括:测量来自存储设备的存储器的第一读取突发和第二读取突发之间的时间间隔的长度,其中第一读取突发和第二读取突发是连续的,第一读取突发响应于存储器接收到的第一读取命令,第二读取突发响应于存储器接收到的第二读取命令;根据长度生成状态码,其中当长度为零时,状态码具有第一值,当长度等于或小于阈值时间长度但非零时,状态码具有第二值,并且当长度大于阈值时间长度时,状态码具有第三值;以及根据状态码控制存储设备的输出。
3、在一个方面中,控制输出包括将输出设置为固定值。
4、在一个方面中,输出来自存储设备中的差分接收器。
5、在一个方面中,长度基于第一读取命令和第二读取命令之间的时间间隔来测量。
6、在一个方面中,该方法还包括将状态码入队到队列中。
7、在一个方面中,该方法还包括在根据状态码控制存储设备的输出之后,将状态码从队列中出队。
8、在一个方面中,存储器是闪存或动态随机存取存储器(dram)。
9、在一个方面中,该方法还包括根据状态码确定时间段,并在时间段内将输出设置为固定值;其中时间段在第一读取突发和第二读取突发之间。
10、在一个方面中,输出来自存储设备中的差分接收器,并且该方法还包括:在差分接收器的输入的每次切换时,基于状态码和计数器的当前计数值将计数器设置为下一个计数值,其中(a)当当前计数值为第一预定义数且状态码具有第一值时,下一个计数值为第二读取突发的长度;(b)当当前计数值为第一预定义数且状态码具有第二值时,下一个计数值为第二读取突发的长度加上固定阈值时间长度;(c)当当前计数值为第一预定义数且状态码具有第三值时,下一个计数值为第二预定义数;(d)当当前计数值为第二预定义数时,下一个计数值为第二读取突发的长度;以及(e)当当前计数值既不是第一预定义数也不是第二预定义数时,下一个计数值为当前计数值减去一个步长。时间段从第一读取突发的结束开始,并在下一个计数值不大于第二读取突发的长度且不等于第二预定义数时结束。
11、在一个方面中,第二读取突发的长度为4个时钟周期或8个时钟周期。
12、在一个方面中,固定阈值时间长度为1个时钟周期。
13、在一个方面中,第一预定义数为1,第二预定义数为0。
14、本文公开了一种控制器,其被配置为:测量来自存储设备的存储器的第一读取突发和第二读取突发之间的时间间隔的长度,其中第一读取突发和第二读取突发是连续的,第一读取突发响应于存储器接收到的第一读取命令,第二读取突发响应于存储器接收到的第二读取命令;根据长度生成状态码,其中当长度为零时,状态码具有第一值,当长度等于或小于阈值时间长度但非零时,状态码具有第二值,并且当长度大于阈值时间长度时,状态码具有第三值;以及根据状态码控制存储设备的输出。
15、在一个方面中,控制器还被配置为将输出设置为固定值。
16、在一个方面中,输出来自存储设备中的差分接收器。
17、在一个方面中,控制器还被配置为根据状态码确定时间段,并在时间段内将输出设置为固定值;其中时间段在第一读取突发和第二读取突发之间。
18、在一个方面中,控制器包括被配置为对时间段进行计数的计数器,输出来自存储设备中的差分接收器,并且控制器还被配置为:在差分接收器的输入的每次切换时,基于状态码和计数器的当前计数值将计数器设置为下一个计数值;其中(a)当当前计数值为第一预定义数且状态码具有第一值时,下一个计数值为第二读取突发的长度;(b)当当前计数值为第一预定义数且状态码具有第二值时,下一个计数值为第二读取突发的长度加上固定阈值时间长度;(c)当当前计数值为第一预定义数且状态码具有第三值时,下一个计数值为第二预定义数;(d)当当前计数值为第二预定义数时,下一个计数值为第二读取突发的长度;以及(e)当当前计数值既不是第一预定义数也不是第二预定义数时,下一个计数值为当前计数值减去一个步长。时间段从第一读取突发的结束开始,并在下一个计数值不大于第二读取突发的长度且不等于第二预定义数时结束。
19、本文公开了一种系统,其包括上述的任何一个控制器,其中该系统是固态驱动器(ssd)、闪存驱动器、主板、处理器、计算机、服务器、游戏设备或移动设备。
20、本文公开了一种非瞬时性机器可读介质,其上记录有信息,其中该信息在被硬件处理器系统读取时,使得硬件处理器系统执行上述的任何一种方法。
本文地址:https://www.jishuxx.com/zhuanli/20240731/185326.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。