本发明涉及一种数据选通多路复用器。
背景技术:
通常将存储器装置提供为计算机或其它电子装置中的内部半导体集成电路。存在许多不同类型的存储器,包含易失性及非易失性存储器。易失性存储器可需要电力来维持数据且包含随机存取存储器(ram)、动态随机存取存储器(dram)及同步动态随机存取存储器(sdram)以及其它存储器。非易失性存储器可通过在未供电时保持所存储数据而提供永久数据且可包含nand快闪存储器、nor快闪存储器、只读存储器(rom)、电可擦除可编程rom(eeprom)、可擦除可编程rom(eprom)及电阻可变存储器,例如相变随机存取存储器(pcram)、电阻式随机存取存储器(rram)及磁阻式随机存取存储器(mram)、3dxpointtm存储器以及其它存储器。
存储器单元通常布置成矩阵或阵列。多个矩阵或阵列可组合成存储器装置,且多个装置可经组合以形成存储器系统的存储容量,例如固态驱动器(ssd)、通用快闪存储(ufstm)装置、多媒体卡(mmc)固态存储装置、嵌入式mmc装置(emmctm)等。
存储器系统可包含一或多个处理器或者执行逻辑功能以操作存储器装置或与外部系统介接的其它存储器控制器。存储器矩阵或阵列可包含组织成若干个物理页的若干个存储器单元块。所述存储器系统可从主机接收与存储器操作(例如用以在存储器装置与主机之间传送数据(例如,用户数据及相关联完整性数据,例如误差数据及地址数据等)的读取或写入操作、用以从存储器装置擦除数据的擦除操作或执行一或多个其它存储器操作)相关联的命令。
存储器作为易失性及非易失性数据存储区用于宽广范围的电子应用,包含(举例来说)个人计算机、便携式内存条、数字相机、蜂窝电话、便携式音乐播放器(例如mp3播放器)、电影播放器及其它电子装置。存储器单元可布置成若干阵列,其中所述阵列用于存储器装置中。
许多电子装置包含数个主要组件:主机处理器(例如,中央处理单元(cpu)或其它主要处理器);主要存储器(例如,一或多个易失性或非易失性存储器装置,例如动态ram(dram)、移动或低功率双倍数据速率同步dram(ddrsdram)等);及存储装置(例如,非易失性存储器(nvm)装置,例如快闪存储器、只读存储器(rom)、ssd、mmc或其它内存卡结构或组合件,或易失性与非易失性存储器的组合等)。在某些实例中,电子装置可包含用户接口(例如,显示器、触摸屏、键盘、一或多个按钮等)、图形处理单元(gpu)、功率管理电路、基带处理器或者一或多个收发器电路等。
技术实现要素:
在一个方面中,本发明涉及一种系统,所述系统包括:主机装置;及多路复用器电路,其经配置以从嵌入式多媒体卡(emmc)装置接收数据信号及数据选通信号,且将所述数据信号或所述数据选通信号中的一者选择性地提供到所述主机装置的数据引脚;用于在所述主机装置的数据引脚处接收所述多路复用器电路的输出且用于确定在所述数据引脚处从所述多路复用器电路接收的所述数据选通信号与内部时钟信号之间的时序关系的构件。
在另一方面中,本发明涉及一种方法,所述方法包括:在主机装置处在多路复用器电路处从嵌入式多媒体卡(emmc)装置接收数据信号及数据选通信号;使用所述多路复用器电路将所述数据信号或所述数据选通信号中的一者选择性地提供到所述主机装置的数据引脚;在所述主机装置的数据引脚处接收所述多路复用器电路的输出;及使用所述主机装置来确定在所述数据引脚处从所述多路复用器电路接收的所述数据选通信号与内部时钟信号之间的时序关系以控制所述主机装置的延迟电路。
附图说明
在图式(其未必按比例绘制)中,相似编号可在不同视图中描述类似组件。具有不同字母后缀的相似编号可表示类似组件的不同例子。图式一般以实例方式而非限制方式图解说明本文件中所论述的各种实施例。
图1到5图解说明实例性嵌入式多媒体卡(emmctm)系统或emmc系统的若干部分,所述若干部分包含主机装置、emmc装置及通信接口。
图6到8图解说明emmc系统中的信号的实例性时序图。
图9图解说明emmc系统的实例性部分。
图10图解说明实例性机器的框图,可在所述实例性机器上执行本文中所论述的技术(例如,方法论)中的任何一或多者。
具体实施方式
联合电子装置工程委员会(jedec)已颁布了嵌入式多媒体卡(emmctm)装置的众多接口及通信标准,包含jedec标准d84-b51(jesd84-a51),通常称为jedecemmc标准5.1。
除其它事项外,本发明发明人还认识到,主机装置可确定数据选通信号与内部时钟信号之间的时序关系以对准用于取样的读取数据。在其它实例中,数据选通引脚可用于将数据提供到所述主机装置,或多路复用器电路可经配置以在校准模式中将数据选通信号提供到所述主机装置且在数据读取模式中将数据信号提供到所述主机装置。
图1图解说明包含主机105及emmc110的实例性emmc系统100。例如在电子(或主机)装置中,主机105可包含主机处理器、中央处理单元或者一或多个其它处理器或控制器。主机105与emmc110可使用包含一或多个双向命令线及数据线(例如,命令线(cmd)111、数据线(dat[7:0])113等)的通信接口(例如以一或多个jedec标准来定义)进行通信。为使例如经由图1中所图解说明的八个并行数据线113进行的emmc110与主机105之间的数据通信同步,主机105可(举例来说)使用时钟线(clk)112将时钟信号提供到emmc110。在其它实例中,通信接口为一或多个其它线(未展示),例如复位、功率/电压电平(例如,vcc、vss等)等。
主机105及emmc110中的每一者可包含经配置以经由通信接口(例如,命令线、数据线或者一或多个其它线,例如cmd、dat[7:0]、clk等)或者例如数据控制单元、取样电路或其它媒体间电路的接口电路发送或接收信号的若干个接收器或驱动器电路,所述媒体间电路经配置以处理待经由所述通信接口传递的数据或以其它方式处理从所述通信接口接收的数据以供主机105、emmc110或者一或多个其它电路或装置使用。
emmc110可包含存储器阵列(例如,一或多个存储器单元阵列,例如nand快闪存储器阵列或者一或多个其它存储器阵列)及存储器控制器。所述存储器控制器可包含专用集成电路(asic)、现场可编程门阵列(fpga)或者经布置或经编程以管理去往存储器阵列、来自存储器阵列或在存储器阵列内的数据传送或操作的一或多个其它处理电路。
在读取操作中,emmc110可根据时钟线112上的来自主机105的时钟信号(例如,在时钟信号的上升边缘、时钟信号的下降边缘或时钟信号的上升及下降边缘两者处)将数据(例如,读取数据)从存储器阵列提供到数据线113。然而,由于数据线113为具有电阻、电感及电容的不完美导体,因此数据线113上从高到低或从低到高的转变在其出现(数据线的值可针对多个时钟转变保持恒定)时花费时间。此外,当emmc110的工作频率增加时,时钟周期减小(在某些实例中,接近传播延迟),且因此用于对数据线113进行取样的时间周期变得更小。因此,当取样时间减少时,使主机105与emmc110之间的通信同步,以便避免在转变期间进行取样可变得具有挑战性。为改进同步,jedecemmc标准5.0将数据选通信号从emmc110引入到主机105。
在高速模式(例如,在200mhz时钟信号的上升及下降边缘两者处具有双倍数据速率(ddr)数据传送(400mb/s)的hs400等)期间,emmc110可在数据选通线(ds)114上将数据选通信号提供到主机105,所述数据选通信号与数据线113上的数据转变同步,以便辅助取样(例如,用作主机105处的时钟信号等)。然而,此呈现数个问题。举例来说,数据选通信号仅在高速模式(例如,hs400)中提供,且因此对于在主机105处需要取样的所有操作是不存在。一种解决方案为在主机105处使数据选通信号与内部时钟信号多路复用。然而,在某些技术(例如,fpga)中,足够快速地切换多路复用器电路以在取样时不丢失数据或引入误差(例如,丢失取样边缘等)可为具挑战性的。此外,当主机105内的内部数据路径必须继续操作时,数据选通在高速数据读取结束时消失。因此,可能不存在足够数据选通时钟循环来实施内部时钟与数据选通信号的同步。在其它技术(例如,asic)中,使从数据选通到时钟的数据转变同步仍可为问题。此外,使用数据选通作为时钟信号需要大量架构改变,在某些实例中需要大量努力,包含高开发及时间成本。
除其它事项外,本发明发明人还认识到,主机105可(举例来说)使用一或多个延迟电路来确定数据选通信号与内部时钟信号(例如,来自时钟线112的时钟信号)之间的时序关系,以便对准数据线113上用于取样的读取数据。主机105可使用数据选通信号来确定数据线113上的数据的转变时间,且因此确定emmc110与主机105之间的传播延迟。主机105可使用所述转变时间或所述传播延迟来确定取样时间(例如,数据选通转变时间加上延迟,例如时钟周期的一部分等),以便避免在数据选通转变期间且因此在数据线转变期间进行取样。
图2图解说明包含主机205、emmc210及通信接口的emmc系统200的实例性部分,所述通信接口包含时钟线(clk)212、数据线(dat[7:0])213及数据选通线(ds)214。主机205可包含经配置以使用时钟线212将时钟信号提供到emmc210的时钟产生器电路(ckgen)220。所述通信接口可包含一或多个额外线(未展示),例如命令线(cmd)、复位线(reset)等。
emmc210可包含存储器阵列及存储器控制器,且可根据时钟线212上的时钟信号使用数据线213将数据从所述存储器阵列提供到主机205,或从主机205接收待存储于所述存储器阵列上的数据。emmc210可根据数据选通信号对在数据线213上接收的数据进行取样,或根据时钟信号将数据提供到数据线213。尽管主机205提供时钟信号,但主机205与emmc210之间的传播延迟可为未知的,且在某些实例中,可在各种条件(例如,温度改变、供应电压电平等)下、包含在长读取操作内或期间改变。因此,emmc210可提供与数据线213上的数据转变(在适用的情况下)对应的数据选通信号。所述数据选通信号可与来自主机205的时钟信号、主机205与emmc210之间的通信接口的传播延迟及emmc210内(例如,存储器控制器与存储器阵列之间等)的任何处理延迟有关。
主机205可包含经配置以对数据线213上的数据进行取样的第一取样级电路(fss)215。fss电路215可经配置以将延迟施加到数据选通信号,或从第一延迟电路225(例如,可编程、可选择、可调整或者其它模拟或数字延迟电路,例如经配置以提供可配置延迟的fpga延迟组件)接收经延迟数据选通信号。在某些实例中,本文中所提及的延迟电路可为主机205的组件,或在其它实例中,可为与主机205及emmc210分开但在主机205与emmc210之间的外部组件,但受主机205的通用输入/输出(io)控制。
然而,甚至当jedecemmc标准现在针对高速模式提供数据选通信号时,所述数据选通信号在低速模式(例如,hs、hs200(在200mhz下的200mb/s)等)或比高速模式(例如,hs400等)慢的任何通信或数据传送模式中并非需要的。在某些实例中,所述数据选通信号未在低速模式中提供。如果emmc未在高速模式(例如,hs400等)中,那么必须使用时钟信号对数据线进行取样。因此,emmc系统继续支持对数据线进行取样的先前方法。此外,某些供应商、系统(例如,主机、emmc装置等)或者其它硬件或软件保持与数据选通特征不兼容。某些供应商拒绝在主机或emmc装置上添加另一引脚,或在通信接口上添加另一线,或拒绝更新或修改现有特征、硬件或软件来支持所述特征。甚至在支持数据选通特征的系统中,如果仅在高速模式期间使用此特征,那么使用可为间歇的,使得校准仍为问题。
在其它实例中,低速模式及高速模式可以是指不需要数据选通信号或校准的较低速度,及单独地需要数据选通信号或校准以达成有效通信(例如,不具有数据取样误差)的比所述较低速度高的较高速度。在其它实例中,低速模式及高速模式可分别是指sdr取样及ddr取样。
某些emmc系统或组件(例如,主机、emmc装置、存储器控制器、存储器阵列等)能够在高速模式(例如,hs400等)中操作,但不(举例来说)在硬件或软件中支持数据选通特征。除其它事项外,本发明发明人还认识到,不具有数据选通特征(例如,数据选通信号、数据选通线或控制此特征的软件等)的某些emmc系统或组件可经校准以达成高速通信。在其它实例中,数据选通线214(例如,在校准之后)可重新分配为额外数据线(例如,dat[8]等)。
图3图解说明包含主机305、emmc310及通信接口的emmc系统300的实例性部分,所述通信接口包含时钟线(clk)312及数据线(dat[7:0])313。主机305可包含经配置以对数据线313上的数据进行取样的第一取样级电路(fss)315或其它取样电路及经配置以使用时钟线312将时钟信号提供到emmc310的时钟产生器电路(ckgen)320。
在不存在数据选通信号或数据选通线(或在某些实例中,数据选通信号与数据选通线的组合)的情况下,主机305可包含经配置以使来自数据线313的数据延迟的数据延迟电路316或经配置以使来自时钟产生器电路320的时钟信号延迟的时钟延迟电路321中的一者或两者,使得第一取样级电路315经配置以在数据信号的转变周期的范围以外对数据线313进行取样,从而解释主机305与emmc310之间或者主机305或emmc310内的传播或其它延迟。在某些实例中,数据延迟电路316或时钟延迟电路321中的一者或两者可使用(例如,已知样本数据(举例来说,包含在每个时钟循环处的转变)或已知转变样式等的)所检测到的误差率来确定,从而以不同延迟值进行取样以确定转变周期,或以一或多个其它方法进行取样以确定数据线313上的转变。延迟电路(例如,数据延迟电路316或时钟延迟电路321)的延迟可为可配置的,值是通过比较一或多个读取操作的结果来选择的。
然而,鉴于某些数据模式(例如hs200)提供具有已知样式以用于调谐通信变量(例如延迟电路、传播延迟等)的专用数据块,hs400模式不提供此专用数据块。此外,在长读取操作或其它使用条件期间,操作条件可改变(例如,温度、供应电压等),使得有效数据窗的位置可关于主机305的取样时钟而改变。当在使用中时,数据选通信号追踪操作条件的改变。然而,当间歇地使用数据选通信号来校准传播延迟时,可定期检查(例如,以预定间隔、特定时间周期、数目的时钟循环、读取操作等)、响应于所检测到的误差(例如,阈值数目个所检测到的误差、高于阈值的误差率等)或条件改变(例如,温度改变、供应电压改变等)而检查校准。在校准之间,数据选通线(例如图1及2中所图解说明)可用于在emmc310与主机305之间传送数据(例如,响应于读取命令而将数据从emmc310传送到主机305等)。
在其它实例中,主机305、emmc310或通信接口中的一或多者可包含数据选通线、数据选通引脚或数据选通信号。然而,在某些实例中,emmc系统300的一或多个组件可不支持所述数据选通信号。在此些条件中,所述数据选通线可用于将数据从emmc310传送到主机305,同时使用一或多个其它方法(例如以不同延迟值进行取样或比较一或多个读取操作的结果等)校准emmc310与主机305之间的传播延迟且因此校准一或多个延迟电路的延迟。
图4图解说明包含主机405、emmc410及通信接口的emmc系统400的实例性部分,所述通信接口包含时钟线(clk)412、数据线(dat[7:0])413及数据选通线(ds)414。主机405可包含经配置以对数据线413上的数据进行取样的第一取样级电路(fss)415或其它取样电路、经配置以使用时钟线412将时钟信号提供到emmc410的时钟产生器电路(ckgen)420及在硬件、软件或者硬件或软件的组合中实施的测量电路(meas)425。
在实例中,测量电路425可经配置以评估待施加到延迟电路(例如经配置以使数据线414上的数据在到达第一取样级电路415之前延迟的数据延迟电路416)的延迟的值。测量电路425可从时钟产生器电路420接收时钟信号,且从emmc410接收数据选通信号,且可确定主机405处的时钟信号与从emmc410接收的数据选通信号之间的传播延迟。测量电路425可依据时钟信号及数据选通信号上的转变对准来确定延迟,或可经配置以例如使用传播延迟与一或多个预定延迟值之间的最佳拟合分析或最紧密拟合来选择多个预定延迟中的一者。在实例中,可例如由主机处理器或主机405的一或多个其它组件(在软件或硬件中)评估测量电路425的结果。数据延迟电路416可为第一取样级电路415的组件或如图4中所图解说明的单独组件,且可受测量电路425或主机405的一或多个其它组件控制。
在hs400模式中,数据选通信号表示在每一上升及下降时钟边缘处连续地切换(1-0-1-0-…)的双重数据速率(ddr)数据样式,从而表示用以测试主机405的取样能力的关键样式。数据选通信号样式独立于emmc410的经存取块上的数据。在某些实例中,第一取样级电路415可保持不变,且数据延迟电路416可施加到数据线413,但可使用数据选通信号来测量延迟的值。测量电路425可评估数据选通线414上的数据选通信号,使用数据选通信号来确定数据延迟电路416的延迟(例如,数据选通信号与时钟信号的对准等)。接着,在确定延迟之后,数据选通延迟电路426可将延迟施加到数据选通线413(例如,等于数据延迟电路416的延迟)。数据选通线413在不用于主机405与emmc410之间的传播延迟的校准时可用作emmc410与主机405之间的额外数据线(例如,dat8)(例如)以用于读取、写入或者一或多个其它存储器或数据传送操作。当间歇地使用数据选通信号来校准传播延迟时,可定期检查(例如,以预定间隔、特定时间周期、数目的时钟循环、读取操作等)、响应于所检测到的误差(例如,阈值数目个所检测到的误差、高于阈值的误差率等)或条件改变(例如,温度改变、供应电压改变等)而检查校准。在某些实例中,可由硬件、软件或其组合评估、确定或执行延迟电路中的一或多者的延迟。
在其它实例中,在不具有数据选通特征的系统中,数据线413中的一者可将数据选通信号提供到主机405以用于校准目的,举例来说,提供在每一上升及下降时钟边缘处连续地切换(1-0-1-0-…)的数据样式,使得数据线413(例如,dat0、dat7等)中的一者可用于校准主机405的取样能力。在实例中,数据线413可用于校准主机405与emmc410之间的传播延迟。当间歇地使用数据线来校准传播延迟时,可定期检查(例如,以预定间隔、特定时间周期、数目的时钟循环、读取操作等)、响应于所检测到的误差(例如,阈值数目个所检测到的误差、高于阈值的误差率等)或条件改变(例如,温度改变、供应电压改变等)而检查校准。
在实例中,测量电路425可确定时钟信号与数据选通之间的延迟或对准,且将延迟提供到延迟电路或主机405的其它组件,或将延迟或对准信息提供到主机405的一或多个其它组件,例如主机处理器或其它组件。在实例中,在确定延迟的值之后,测量电路425可在每个读取操作时以定期间隔或以一或多个其它触发条件(例如,所检测到的误差、温度、供应电压等)评估数据选通信号的漂移。测量电路425可将漂移信息提供到一或多个其它系统组件,例如主机处理器或其它电路,以评估延迟电路的用于调整的延迟(例如,归因于漂移等)。
图5图解说明包含主机505、emmc510、通信接口(包含数据线(dat[7:0])513及数据选通线(ds)514)及用以对数据选通线514上的数据选通信号进行取样的取样硬件的emmc系统500的实例性部分。图5中所图解说明的一或多个组件可作为先前图中所图解说明的第一取样级的一部分或与所述第一取样级分开而被包含。
在实例中,主机505可(举例来说)使用命令线将开始高速模式(例如,hs400)的命令提供到emmc510。作为响应,emmc510可将数据选通信号提供到数据选通线514。主机505可包含:数据选通输入缓冲器527,其用以接收数据选通线514上的来自emmc510的数据选通信号;及数据选通延迟电路526,其经配置以将可配置延迟或者若干个预定或可选择延迟中的一者提供到数据选通信号。在某些实例中,数据选通延迟电路526(或者一或多个其它延迟电路)可例如在校准之前或者根据先前校准或默认或标称值经配置有初始或试验值。主机505可经配置以更改数据选通延迟电路526的延迟的值,且跨越不同延迟值对数据选通信号的值进行取样以分别优化数据选通延迟电路526的延迟的值且因此优化用于对数据线或者一或多个命令线上的数据或命令信号进行取样的延迟的值。
主机505可包含经配置以接收数据选通信号及时钟信号(clk)的第一输入双倍数据速率电路(iddr)528,且如果数据选通信号为双倍数据速率(ddr)信号,那么在上升及下降时钟循环上对数据选通信号进行取样,且提供时钟信号的上升边缘上的值(qr)及时钟信号的下降边缘上的值(qf)。在其它实例中,替代或除了数据选通信号上的延迟,系统还可包含时钟信号上的延迟。取样寄存器529(例如,串行到并行移位寄存器)可接收来自iddr528的ddr数据及时钟信号(clk),且在若干个时钟循环内例如在上升边缘样本寄存器(res)及下降边缘样本寄存器(fes)中对给定数目个值进行取样。取样寄存器可提供输出,例如n个样本的一或多个并行输出(例如,n小于emmc510的信号数据块中的数据选通循环数目(例如256)等)。在实例中,检查电路533可确定由取样寄存器529取样的样式是否与预期样式一致,且可使用检查电路533的输出来确定数据选通信号与时钟信号之间的传播延迟、对准或漂移。在其它实例中,一或多个其它组件可接收数据选通信号且使用硬件或软件来确定数据选通信号与时钟信号之间的传播延迟、对准或漂移。
控制电路530(例如,控制逻辑)可从外部用户或从一或多个其它主机505或emmc510组件接收输入或进行处理以控制本文中的组件中的一或多者。举例来说,控制电路可控制经配置以启用或控制取样寄存器529的一或多个过程或方面的启用电路531。在实例中,数据选通信号的值为低值(“0”)直到数据传送开始为止。因此,启用电路531可在启用取样寄存器529之前针对高值(“1”)(或若干个高值或切换)监测iddr528的输出。
控制电路530可将经配置以控制数据选通延迟电路526的延迟的信号提供到输入延迟寄存器532。一般来说,可由输入延迟寄存器532(或其它延迟寄存器或延迟电路)配置的步阶数目或步阶值可经配置以覆盖至少一个时钟周期。举例来说,数据选通延迟电路526可配置有若干个可能值(例如,32)且可覆盖整个时钟周期(例如,200mhz(5ns))。在其它实例中,可使用其它值或值数目。表1图解说明用于数据选通延迟电路526或输入延迟寄存器532的实例性延迟抽头。
表1。输入延迟代码
在某些实例中,如下内容可为重要的(例如在fpga技术中):跨越通信接口且在主机505内维持一致延迟,不同通信接口组件的电路路径为类似的,使得通过使信号路由穿过电路路径而添加的总延迟对于数据线513相比于数据选通线514或者一或多个命令线(未展示)中的一或多者上的信息并非基本上不同的。当电路内的每一组件及过程具有相关联延迟时,类似电路路径(在可能的情况下)可为有利的。此外,系统内的类似组件可提供其它益处,例如一致制作过程及(在某些实例中)共享系统资源或者组件或过程复制的其它益处。
因此,主机505可包含数据输入缓冲器517、数据延迟电路516及第二iddr518,类似于经配置以对数据线513上的数据信号(例如,读取数据)进行取样的上文所描述的数据选通线电路路径的组件。此外,主机505可包含经配置以接收第二iddr518的输出而且管理来自数据线的数据且将所述数据从所述数据线提供到主机505的一或多个其它组件的一或多个数据路径电路519。在实例中,为跨越通信接口的一或多个命令线或其它线维持一致延迟,此些电路路径可包含主机505内的类似组件。如果一或多个命令线或其它线未经配置以接收ddr信号,那么iddr电路可包含于数据路径中,但可忽视iddr电路的两个输出中的一者以在主机505内且跨越主机505维持一致延迟。
在其它实例中,主机505内的不同电路路径(例如,数据选通信号路径、数据线信号路径等)可包含具有基本上不同延迟的不同组件,且主机505可经配置以通过将不同延迟值指派给一或多个延迟电路(例如,数据延迟电路516、数据选通延迟电路527、一或多个命令线上的延迟电路等)而解释此些差异。
在某些实例中,主机505可经配置以在从emmc510接收数据的同时优化数据选通信号的延迟而不变更或影响数据线的正常操作,因为数据选通延迟电路526可独立于一或多个其它延迟电路(例如数据延迟电路516等),且相对于一或多个其它延迟电路(例如数据延迟电路516等)独立地受控制。举例来说,如果延迟电路(例如,数据选通延迟电路)跨越时钟信号的周期具有若干个抽头(例如,32),那么与所述若干个延迟抽头一样长或比所述若干个延迟抽头长的任何读取操作(或其它操作)(例如,如果为32个延迟抽头,那么为32个数据块或更多等)可用于在主机505使用先前延迟值接收数据线上的数据的同时在后台重新校准、测量或优化延迟的值。检查电路533或者一或多个其它组件、硬件或软件可在正常数据操作期间确定延迟信号的所要值。在实例中,可比较所确定值与现有值,且取决于差(例如,如果差大于一个全延迟抽头或以其它方式高于阈值量,那么在某些实例中,针对每一延迟电路具有相应阈值)而可将经更新延迟值提供到一或多个延迟电路。在某些实例中,可在数据操作期间在接下来数据操作时更新或以其它定期间隔或经触发间隔更新延迟值。可使用硬件或软件来评估延迟值,且可独立于初始校准或在执行初始校准后即刻启用此后台优化。在其它实例中,可存储所确定值作为用以与后续所确定值进行比较的参考量。
在其它实例中,可在数据故障的上下文中存储且引用所确定值或改变,以便区别数据损坏与定时误差,或用于恢复数据误差。
图6图解说明实例性时序图600,实例性时序图600包含具有周期(p)(例如,5ns)以及上升及下降边缘(如所图解说明)的时钟信号(clk),及不同延迟抽头处的不同数据选通信号(例如,ds0到ds31、来自数据选通延迟电路的输出等)。在此实例中,32个抽头覆盖整个时钟周期。在其它实例中,可使用其它数目个延迟或抽头。
ds0跟在时钟信号后面时钟周期的一部分(例如,时钟周期的1/4、时钟周期的11/4、时钟周期的21/4等)处。ds0跟在时钟信号后面的量可取决于(举例来说)主机及emmc内或主机与emmc之间的传播延迟或者在某些实例中一或多个延迟电路的初始或先前延迟而变化。ds1跟在ds0后面单个抽头(例如,156.25ps)处;ds2跟在ds1后面单个抽头(例如,156.25ps)处;等。
当ds0的转变偏离时钟信号时,使得如果在若干个时钟周期(例如,n)内在时钟信号的上升及下降边缘处对数据选通信号进行取样,那么ds0的取样寄存器(例如,取样寄存器529)的输出在上升边缘样本寄存器(res)处将全部为“0”值且在样本寄存器(fes)的下降边缘处将全部为“1”值。
当使数据选通信号移位例如达额外延迟抽头时,数据选通信号上的转变将变得充分靠近于时钟信号的上升及下降边缘,使得可发生设置及保存时间违反,从而导致经取样数据中的误差。在此实例中,ds1到ds6为有效延迟抽头,其中res及fes的输出在所述若干个时钟周期内分别仍然一致在“0”及“1”处。然而,在ds7到ds9处,数据选通信号的转变充分靠近于时钟信号的上升及下降边缘使得可发生时序违反(例如,违反635),其中使得res及fes中的经取样值可并非全部为相同值(例如,res或fes中的一或多者将在所述若干个时钟周期内单独地保存“0”与“1”的混合等)。因此,在图6中,ds7到ds9为无效延迟抽头。
在此实例中,ds10到ds22为有效延迟抽头,尽管鉴于ds0到ds6中的res及fes的值分别为“0”及“1”,但在ds10到ds22中,res及fes的值已分别改变为“1”及“0”,从而指示数据选通信号与时钟信号之间的相位改变。此外,与ds7到ds9一样,ds23到ds25中的转变充分靠近于时钟信号的上升及下降边缘使得可发生时序违反,且因此为无效延迟抽头。ds26到ds31为有效延迟抽头,其中res及fes值分别一致在“0”及“1”处(与在ds0到ds6中一样)。
在实例中,可在每一读取操作时针对每一延迟抽头检查res及fes值。在某些实例中,例如在长读取操作期间,可在读取操作的中间检查res及fes值。在其它实例中,可以定期间隔(例如,以预定间隔、特定时间周期、数目的时钟循环、读取操作等)检查、响应于所检测到的误差(例如,阈值数目个所检测到的误差、高于阈值的误差等)或条件改变(例如,温度改变、供应电压改变等)而检查res及fes值。此外,关于数据选通信号的res及fes值的结果独立于存储于emmc上的任何数据。如此,在某些实例中,使用数据选通信号,不需要预调节emmc内容来确定延迟的值。一旦已知有效及无效延迟抽头,便可确定数据选通信号与时钟信号之间的时间关系,且可设定(例如,数据选通信号、数据信号、时钟信号等中的一或多者的)延迟的值。
在实例中,延迟的值可在某些实例中在具有所要相位的有效延迟抽头范围的中点处或附近或在多个有效延迟抽头范围的情形中在具有较大数目个连续有效延迟抽头的有效延迟抽头范围的中点处或附近设定为有效延迟抽头中的一者。在图6中,存在两个有效延迟抽头范围,ds26到ds6及ds10到ds22。在实例中,可选择最宽有效延迟抽头范围(例如,具有最大数目个连续有效抽头的有效延迟抽头范围),且可确定最宽有效延迟抽头范围的中点为所要延迟抽头。
在某些实例中,如果多次调整延迟,使得可例如由检查电路或者主机的一或多个其它组件确定漂移的方向,那么可设定延迟的值以在给定漂移方向或先前对准的情况下最小化误差。在其它实例中,可根据一或多个排序或搜寻算法检查res及fes值,以便最少化确定或估计有效及无效延迟抽头所需要的时间或避免检查每一延迟抽头。
尽管本文中关于图5中所图解说明的硬件而描述,但在其它实例中,可使用一或多个其它硬件或软件解决方案来确定在不同延迟处的数据选通信号的值,以便确定数据选通信号与时钟信号之间的时间关系。
图7图解说明实例时序图700,实例时序图700包含具有周期(p)(例如,5ns)以及上升及下降边缘(如所图解说明)的时钟信号(clk),及不同延迟抽头处的不同命令线信号(例如,从命令线延迟电路输出的cmd0到cmd31等)。在此实例中,32个抽头覆盖整个时钟周期。在其它实例中,可使用其它数目个延迟或抽头。
jedecemmc标准提供数据选通信号的任选使用同时在增强数据选通模式中例如在命令线(例如,命令线(cmd)111等)上从emmc接收命令信号。在主机例如使用命令线上的命令信号将命令发送到emmc之后,emmc可在单一数据速率(sdr)模式中提供响应,所述响应为双倍数据速率(ddr)模式中的数据选通信号的两倍长。在实例中,时钟信号的上升边缘可用作作用边缘。在具有经增强数据选通的高速模式中,命令信号的转变可随数据选通信号的上升边缘而出现。此外,可在时钟信号的上升边缘上完成对命令信号进行取样。
在实例中,主机可包含用以对一或多个命令线上的命令信号进行取样(类似于图5中关于对数据线上的数据信号进行取样所图解说明)的电路系统,所述电路系统包含(举例来说)命令输入缓冲器、命令信号延迟电路、iddr及一或多个命令信号路径电路。在其它实例中,一或多个其它组件或硬件或软件可用于确定命令信号的延迟的值。举例来说,当与数据选通信号在ddr模式中相比较命令信号在sdr模式中但两个信号为类似的(其中类似电路路径具有类似内部延迟)时,可使用数据选通信号的延迟的所确定值来选择命令线的延迟的值。
与图6的数据选通信号(例如,ddr信号)时序图600相比较,图7的命令信号(例如,sdr信号)时序图700具有单个有效延迟抽头范围cmd26到cmd22及单个无效延迟抽头范围cmd23到cmd25,其中可发生时序违反(例如,违反735)。由于数据选通信号与命令信号之间的ddr/sdr关系,因此可选择命令线的延迟作为有效延迟抽头范围的中点(例如,cmd8),其为来自图6的数据选通信号时序图600的第一无效范围的中点。因此,命令线的延迟的值可使用数据选通信号的所确定延迟值来选择。
图8图解说明包含时钟信号(clk)、数据选通信号(ds)及命令信号(cmd)(在某些实例中,在已由延迟电路延迟之后的数据选通信号及命令信号)的实例性时序图800。在此实例中,命令信号在数据选通信号的上升边缘处转变。在其它实例中,命令信号可在时钟数据选通信号的下降边缘处转变。数据选通信号与命令信号之间的关系可为已知的或例如使用误差率、上升及下降边缘取样寄存器等来检测的。
如图6及7中所图解说明,数据选通信号时序图600中存在两个无效延迟抽头范围且命令信号时序图700中存在单个无效延迟抽头范围。可使用数据选通信号与命令信号之间的关系且此外使用不同延迟抽头处的数据选通信号的值来选择数据选通信号时序图600中用以设定命令信号的延迟的值的适当无效范围。举例来说,如果sdr命令信号在ddr数据选通信号的上升边缘处转变,且在上升边缘处对命令信号进行取样,那么数据选通信号时序图600中的无效范围将为其中时钟信号的上升边缘的值从全部“1”值转变为全部“0”值或其中时钟信号的下降边缘的值从全部“0”值转变为全部“1”值的范围。数据选通信号时序图600中的其它无效范围对于命令信号时序图700为有效的。
在其它实例中,可使用取样寄存器在时钟信号的上升及下降边缘上对命令信号进行取样以例如使用有效延迟抽头范围的中点来确定所要延迟值或所要延迟抽头。
图9图解说明包含主机905、emmc910及通信接口的emmc系统900的实例性部分,所述通信接口包含命令线(cmd)911、时钟线(clk)912、第一组数据线(dat[6:0])913a、额外数据线(dat[7])913b及数据选通线(ds)914。在实例中,主机905可不具有专用数据选通引脚。除其它事项外,本发明发明人还认识到,可使用emmc910与主机905之间的额外硬件维持此些主机中的数据选通功能性。在实例中,例如在校准模式中,主机上的现有数据引脚中的一者可用作数据选通引脚。在额外硬件(例如多路复用器电路或其它组件)位于emmc910与主机905之间的情况下,数据引脚可用作数据选通引脚以用于例如在校准模式中校准或确定一或多个延迟值,且接着往回切换以例如在数据读取模式中用作数据引脚。主机905可控制校准模式(例如,其中多路复用器电路或其它组件将数据选通信号或与数据选通信号一致的信号(1-0-1-0…)提供到主机905)与数据读取模式(例如,其中多路复用器电路或其它组件将读取数据或数据信号提供到主机905)之间的转变。使用额外硬件组件来实施数据选通特征的有利之处可在于:emmc910的数据选通特征可在不具有专用引脚的情况下连同主机905使用,其中emmc910的数据选通特征几乎不具有改变。
在实例中,emmc系统900可包含经配置以接收额外数据线913b及数据选通线914且将单个输入提供到主机905(其可不包含专用数据选通引脚)的多路复用器电路(mux)945。在实例中,多路复用器电路945可经选择以避免影响系统性能(例如,200mhzddr等)的时序问题,且可为双向的,以便将信息从emmc910传递到主机905或从主机905传递到emmc910。虽然在图9中图解说明为作为dat0到dat6的第一组数据线及作为dat7的额外数据线,但在其它实例中,作为到多路复用器电路945的输入与数据选通线914组合使用的数据线可包含任何现有数据线(例如,dat[0:7]中的任何一或多者)。在实例中,在某些实例中,额外数据线913b的选择可由印刷电路板设计者根据数据路径平衡或者一或多个其它设计考虑来确定。使用多路复用器电路945,emmc系统900可实施本文中所描述的延迟校准程序,包含确定emmc系统900中的一或多个延迟电路(例如数据延迟电路916)中的每一者的最优延迟值。
主机905可包含经配置以对第一组数据线913a上的数据及多路复用器电路945的输出(包含来自额外数据线913b及数据选通线914的数据)进行取样的第一取样级电路(fss)915或其它取样电路。主机905可包含经配置以使用时钟线912将时钟信号提供到emmc910的时钟产生器电路(ckgen)920及经配置以控制一或多个主机过程的主机控制电路(ctrl)940。在实例中,主机控制电路940可例如使用一或多个类属输入/输出(i/o)引脚将命令发送到emmc910或从emmc910接收命令,执行操作或指令,或进行通信或控制emmc系统900的一或多个其它组件(在某些实例中,包含多路复用器电路945)。
从硬件角度来看,仅需要添加多路复用器电路945且将多路复用器电路945连接到主机905(例如,使用通用i/o等)来在不具有专用数据选通引脚的情况下实施具有主机905的emmc系统900中的数据选通特征。主机905及emmc910的硬件可保持不变。在某些实例中,可在emmc系统900的软件中做出实施数据选通特征所需要的额外改变。
当主机905将命令信号提供到emmc910(且从emmc910接收命令信号)时,主机905一般知道何时期望经由通信接口来自emmc910的数据。可与数据传送同步地做出多路复用器电路945的选择,在正常数据选通操作中考虑所述情形,数据选通信号仅在emmc910将数据提供到主机905时有效。因此,主机905与emmc910之间的延迟的测量或者时钟信号对数据、数据选通或命令信号的校准可在各种时间(在某些实例中,与读取或其它操作交替)处提供。在实例中,可在各阶段中实施所述过程。举例来说,可针对每一可能延迟值(例如,32个延迟值或者在时钟信号的周期内的一或多个其它延迟值)设定数据延迟电路916的值。可处理所接收数据以识别数据选通信号。可评估结果,且可确定或选择最优延迟值。接着,可例如使用数据延迟电路916或者一或多个其它延迟电路(例如,包含在通信接口的一或多个其它线上的一或多个其它延迟电路)将所确定或所选择延迟值施加到数据线。
在实例中,控制电路940可控制在数据信号与数据选通信号之间切换的多路复用器电路945。可例如使用此处所描述的电路或方法中的一或多者(举例来说)相对于例如来自时钟产生器电路920的内部主机时钟对数据选通信号进行取样。可改变施加到数据选通信号(例如,使用数据延迟电路916)的延迟,其中取样的结果根据所施加延迟而存储。可评估结果,且可选择最优延迟值(例如,使得延迟抽头的有效范围在取样边缘周围尽可能地宽)且将所述最优延迟值施加到通信接口的一或多个线,所述线包含数据线913a、额外数据线913b、数据选通线914、命令线911等中的一或多者。
在实例中,主机905可响应于在高速模式中来自emmc910的读取命令而使用穿过多路复用器电路945的数据选通信号来确定或校准最优延迟值。在实例中,主机905可向emmc910请求读取命令以确定最优延迟值,且如此,可忽略第一组数据线913a上的经取样数据值。在发送读取命令之后,主机905可等待数据线上的起始位。起始位的不存在可导致读取命令的超时。在实例中,用于辨识起始位的数据线不应用作待与数据选通线多路复用的额外数据线,以便避免起始位的误检测。此外,可能在将数据选通信号路由到多路复用器电路945之前在emmc910中或在emmc910与多路复用器电路945之间反转数据选通信号。一旦确定或校准延迟值,多路复用器电路945便可切换到额外数据线913b,且第一取样级915可读取所请求数据且对所请求数据进行取样。在实例中,第一取样级915可包含例如图5中所图解说明的组件。
图10图解说明实例性机器1000的框图,可在实例性机器1000上执行本文中所论述的技术(例如,方法论)中的任何一或多者,例如使用定时器(使用nvdimm的存储器控制器来实施)来触发存储器装置(例如,nvdimm)中的csave操作。在替代实施例中,机器1000可操作为独立装置或可连接(例如,网络连接)到其它机器。在经网络连接部署中,机器1000可作为在服务器-客户端网络环境中的服务器机器、客户端机器或两者来操作。在实例中,机器1000可用作对等(p2p)(或其它分布式)网络环境中的对等机器。机器1000可为个人计算机(pc)、平板pc、机顶盒(stb)、个人数字助理(pda)、移动式电话、web器具、iot装置、汽车系统或能够执行指定将由所述机器采取的动作的指令(顺序的或其它)的任一机器。此外,虽然图解说明仅单个机器,但还应将术语“机器”视为包含个别地或联合地执行一组(或多组)指令以执行本文中所论述的方法论中的任何一或多者(例如云端计算、软件即服务(saas)、其它计算机群集配置)的任何机器集合。
如本文中所描述的实例可包含以下各项或可通过以下各项进行操作:逻辑、组件、装置、封装或机构。电路系统为在包含硬件(例如,简单电路、门、逻辑等)的有形实体中实施的电路集合(例如,组)。电路系统成员可随着时间推移及基础硬件可变性而为灵活的。电路系统包含可在操作时单独地或组合地执行特定任务的成员。在实例中,电路系统的硬件可不变地经设计以实施特定操作(例如,硬接线)。在实例中,电路系统的硬件可包含以可变方式连接的物理组件(例如,执行单元、晶体管、简单电路等),包含经物理地修改(例如,不变大容量粒子的磁性电可移动放置等)以编码特定操作的指令的计算机可读媒体。在连接物理组件时,使硬件组成的基础电性质(举例来说)从绝缘体改变为导体,或反之亦然。指令使得参与硬件(例如,执行单元或加载机构)能够经由可变连接形成硬件中的电路系统的成员以在处于操作中时实施特定任务的若干部分。因此,计算机可读媒体在装置正在操作时以通信方式耦合到电路系统的其它组件。在实例中,可在不止一个电路系统的不止一个成员中使用物理组件中的任一者。举例来说,在操作下,执行单元可在第一电路系统的第一电路中在一个时间点使用且由所述第一电路系统中的第二电路或由第二电路系统中的第三电路在不同时间重新使用。
机器(例如,计算机系统)1000(例如,主机105、nvdimm110等)可包含硬件处理器1002(例如,中央处理单元(cpu)、图形处理单元(gpu)、硬件处理器核心或其任何组合,例如存储器控制器等)、主要存储器1004及静态存储器1006,其中的一些或全部可经由互连链路(例如,总线)1008彼此通信。机器1000可进一步包含显示器单元1010、字母数字输入装置1012(例如,键盘)及用户接口(ui)导航装置1014(例如,滑鼠)。在实例中,显示器单元1010、输入装置1012及ui导航装置1014可为触控螢幕显示器。机器1000可另外包含信号产生装置1018(例如,扬声器)、网络接口装置1020及一或多个传感器1016,例如全球定位系统(gps)传感器、罗盘、加速度计或其它传感器。机器1000可包含输出控制器1028,例如串行(例如,通用串行总线(usb)、并行或其它有线或无线(例如,红外(ir)、近场通信(nfc)等)连接以进行通信或控制一或多个外围装置(例如,打印机、读卡器等)。
机器1000可包含其上存储有体现本文中所描述的技术或功能中的任何一或多者或者由本文中所描述的技术或功能中的任何一或多者利用的一或多组数据结构或指令1024(例如,软件)的机器可读媒体1022。指令1024还可在其被机器1000执行期间完全地或至少部分地驻存于主要存储器1004内、静态存储器1006内或硬件处理器1002内。在实例中,硬件处理器1002、主要存储器1004、静态存储器1006或大容量存储区1021中的一者或任一组合可构成机器可读媒体1022。
虽然机器可读媒体1022图解说明为单个媒体,但术语“机器可读媒体”可包含经配置以存储一或多个指令1024的单个媒体或多个媒体(例如,集中式或分布式数据库或者相关联高速缓冲存储器及服务器)。
术语“机器可读媒体”可包含能够存储、编码或载运供由机器1000执行且致使机器1000执行本发明的技术中的任何一或多者的指令或者能够存储、编码或载运由此些指令使用或与此些指令相关联的数据结构的任何媒体。非限制性机器可读媒体实例可包含固态存储器以及光学及磁性媒体。在实例中,大容量机器可读媒体包括包含具有不变(例如,静止)质量的多个粒子的机器可读媒体。因此,大容量机器可读媒体并非暂时传播信号。大容量机器可读媒体的特定实例可包含:非易失性存储器,例如半导体存储器装置(例如,电可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom))及快闪存储器装置;磁盘,例如内部硬盘及可移除磁盘;磁光盘;以及cd-rom及dvd-rom磁盘。
指令1024(例如,软件、程序、操作系统(os)等)或其它数据存储于存储装置1021上,可由存储器1004存取以供处理器1002使用。存储器1004(例如,dram)通常为快速的但易失性的,且因此为不同于存储装置1021(例如,ssd)的存储区类型,存储装置1021适合用于长期存储,包含在处于“关断”条件中时。由用户或机器1000使用的指令1024或数据通常加载于存储器1004中以供处理器1002使用。当存储器1004已满时,可分配来自存储装置1021的虚拟空间以补充存储器1004;然而,由于存储装置1021通常比存储器1004慢,且写入速度通常为读取速度的至少两倍,因此使用虚拟存储器可由于存储装置延时而大大降低用户体验(与存储器1004(例如,dram)相比较)。此外,将存储装置1021用于虚拟存储器可大大减小存储装置1021的使用寿命。
与虚拟存储器相比较,虚拟存储器压缩(例如,linuxtm内核特征“zram”)使用存储器的一部分作为经压缩块存储区以避免对存储装置1021的分页。分页发生在经压缩块中直到有必要将此数据写入到存储装置1021为止。虚拟存储器压缩增加存储器1004的可用大小,同时降低存储装置1021上的耗损。
经优化以用于移动电子装置或移动存储区的存储装置传统上包含mmc固态存储装置(例如,微型安全数字(microsdtm)卡等)。mmc装置包含与主机装置的若干个并行接口(例如,8位并行接口),且通常为可从主机装置移除且与主机装置分开的组件。相比之下,emmctm装置附接到电路板且被视为主机装置的组件,其具有比得上基于串行atatm(串行at(先进技术)附件或sata)的ssd装置的读取速度。然而,对移动装置性能的需求继续增加,以便完全启用虚拟或增强现实装置、利用增加网络速度等。响应于此需求,存储装置已从并行通信接口移位到串行通信接口。通用快闪存储(ufs)装置(包含控制器及固件)利用专用读取/写入路径使用低电压差分发信号(lvds)串行接口与主机装置通信,从而使读取/写入速度提高为更大。
可经由网络接口装置1020使用传输媒体来在通信网络1026上进一步传输或接收指令1024,网络接口装置1020利用若干个传送协议(例如,帧中继、因特网协议(ip)、传输控制协议(tcp)、用户数据报协议(udp)、超文本传送协议(http)等)中的任一者。除了别的之外,实例性通信网络还可包含区域网络(lan)、广域网络(wan)、包数据网络(例如,因特网)、移动电话网络(例如,蜂窝式网络)、普通老式电话(pots)网络及无线数据网络(例如,称为
以上详细描述包含对形成所述详细描述的一部分的附图的参考。所述图式以图解说明方式展示其中可实践本发明的具体实施例。这些实施例在本文中还称为“实例”。除了所展示或所描述的那些元件以外,此些实例还可包含若干元件。然而,本发明发明人还预期其中仅提供所展示或所描述的所述元件的实例。此外,本发明发明人还预期使用关于特定实例(或者其一或多个方面)或关于本文中所展示或所描述的其它实例(或者其一或多个方面)所展示或所描述的所述元件的任何组合或排列的实例(或者其一或多个方面)。
在此文件中,如在专利文件中常见,使用术语“一(a或an)”来包含一者或一者以上,此独立于“至少一者”或“一或多者“的任何其它例子或使用。在此文件中,除非另有指示,否则使用术语“或”来指示非排他性或,使得“a或b”包含“a但非b”、“b但非a”及“a及b”。在所附权利要求书中,将术语“包含(including)”及“其中(inwhich)”用作相应术语“包括(comprising)”及“其中(wherein)”的普通英语等效形式。而且,在随附权利要求书中,术语“包含”及“包括”为开放式的。包含除列于权利要求中的此术语后面的那些元件以外的元件的系统、装置、物件或过程仍被视为归属于所述权利要求的范围内。此外,在随附权利要求书中,术语“第一”、“第二”及“第三”等仅用作标记,且并不打算对其对象强加数字要求。
在各种实例中,除其它事项外,本文中所描述的组件、控制器、处理器、单元、引擎或表还可包含物理电路系统或存储于物理装置上的固件。如本文中所使用,“处理器”意指任何类型的计算电路,例如但不限于微处理器、微控制器、图形处理器、数字信号处理器(dsp)或任何其它类型的处理器或处理电路,包含处理器或多核心装置群组。
如本文中所使用,操作存储器单元包含从存储器单元读取、对存储器单元进行写入或擦除存储器单元。将存储器单元放置于既定状态中的操作在本文中称为“编程“,且可包含对存储器单元进行写入或从存储器单元擦除的两个操作(例如,存储器单元可编程到经擦除状态)。
根据本发明的一或多个实施例,位于存储器装置内部或外部的存储器控制器(例如,处理器、控制器、固件等)能够确定(例如,选择、设定、调整、计算、改变、清除、传递、调适、导出、定义、利用、修改、施加等)耗损循环数量或耗损状态(例如,记录耗损循环、在发生存储器装置的操作时对所述操作进行计数、追踪存储器装置的起始操作、评估与耗损状态对应的存储器装置特性等)。
根据本发明的一或多个实施例,存储器存取装置可经配置以关于每个存储器操作将耗损循环信息提供到存储器装置。存储器装置控制电路系统(例如,控制逻辑)可经编程以补偿与耗损循环信息对应的存储器装置性能改变。存储器装置可接收耗损循环信息且响应于耗损循环信息而确定一或多个操作参数(例如,值、特性)。
将理解,当将元件称为“在另一元件上”、“连接到另一元件”或“与另一元件耦合”时,其可直接在另一元件上、与另一元件连接或耦合,或可存在介入元件。相比之下,当将元件称为“直接在另一元件上”、“直接连接到另一元件”或“直接与另一元件耦合”时,不存在介入元件或层。如果两个元件在图式中在线连接其的情况下经展示,那么所述两个元件可耦合或直接耦合,除非另有指示。
本文中所描述的方法实例可为至少部分地机器、装置或计算机实施的。一些实例可包含用指令编码的计算机可读媒体、装置可读媒体或机器可读媒体,所述指令可操作以配置电子装置以执行如在以上实例中所描述的方法。此些方法的实施方案可包含代码,例如微代码、汇编语言代码、较高层级语言代码等等。此代码可包含计算机可读指令以用于执行各种方法。所述代码可形成计算机程序产品的部分。此外,所述代码可例如在执行期间或在其它时间有形地存储于一或多个易失性或非易失性计算机可读媒体上。这些有形计算机可读媒体的实例可包含但不限于硬盘、可移除磁盘、可移除光盘(例如,紧凑光盘及数字视频磁盘)、磁带盒、内存卡或内存条、随机存取存储器(ram)、只读存储器(rom)、固态驱动器(ssd)、通用快闪存储(ufs)装置、嵌入式mmc(emmc)装置及类似者。
标的物(例如,系统)的实例(例如,“实例1”)可包含:主机装置;及多路复用器电路,其经配置以从嵌入式多媒体卡(emmc)装置接收数据信号及数据选通信号,且将所述数据信号或所述数据选通信号中的一者选择性地提供到所述主机装置的数据引脚,其中所述主机装置经配置以在所述主机装置的数据引脚处接收所述多路复用器电路的输出,且确定在所述数据引脚处从所述多路复用器电路接收的所述数据选通信号与内部时钟信号之间的时序关系。
在实例2中,实例1的标的物可任选地经配置使得所述主机装置经配置以控制所述多路复用器电路,所述多路复用器电路经配置以在数据读取模式中在所述输出处提供所述数据信号,且在校准模式中在所述输出处提供所述数据选通信号,且所述主机装置经配置以在所述校准模式中从所述多路复用器电路接收所述数据选通信号,且在所述校准模式中确定在所述数据引脚处从所述多路复用器电路接收的所述数据选通信号与所述内部时钟信号之间的所述时序关系。
在实例3中,实例1到2中的任何一或多者的标的物可任选地经配置使得所述主机装置包含:延迟电路,其经配置以使从所述数据引脚接收的所述多路复用器电路的所述输出延迟可配置延迟值;及取样电路,其经配置以在所述内部时钟信号的转变时对所述多路复用器电路的所述输出进行取样,其中所述主机装置经配置以使用所述所确定时序关系来调整所述延迟电路的所述延迟值以对准所述多路复用器电路的所述输出与所述内部时钟信号以进行取样。
在实例4中,实例1到3中的任何一或多者的标的物可任选地经配置使得所述主机装置包含:延迟电路,其经配置以使从所述数据引脚接收的所述多路复用器电路的所述输出延迟可配置延迟值;及取样电路,其经配置以在所述内部时钟信号的转变时对所述多路复用器电路的所述输出进行取样,其中所述主机装置经配置以调整所述延迟电路的所述延迟值,且以不同延迟值对所述多路复用器电路的所述输出进行取样以确定所述多路复用器电路的所述输出与所述内部时钟信号之间的对准。
在实例5中,实例1到4中的任何一或多者的标的物可任选地经配置使得所述主机装置包含一组数据引脚,其中所述数据引脚为所述组数据引脚中的一者且所述主机装置不包含专用数据选通引脚。
在实例6中,实例1到5中的任何一或多者的标的物可任选地经配置以包含所述emmc装置,所述emmc装置包含与所述主机装置的所述数据引脚对应的数据引脚及经配置以在高速模式中提供所述数据选通信号的专用数据选通引脚,其中所述多路复用器电路包含:第一输入,其耦合到所述emmc装置的数据引脚,经配置以从所述emmc装置接收读取数据;第二输入,其耦合到所述emmc装置的数据选通引脚,经配置以从所述emmc装置接收所述数据选通信号;输出,其耦合到所述主机装置的对应数据引脚;及控制输入,其耦合到所述主机装置的通用输入/输出(gpio)引脚。
在实例7中,实例1到6中的任何一或多者的标的物可任选地经配置使得在校准模式中所述主机装置经配置以:使用所述gpio引脚将控制信号提供到所述多路复用器电路以将所述emmc装置的所述数据选通引脚耦合到所述多路复用器电路的所述输出;将经配置以触发所述emmc装置在所述数据选通引脚上提供所述数据选通信号的读取命令提供到所述emmc装置;在所述主机装置的所述数据引脚处从所述多路复用器电路接收所述数据选通信号;及确定在所述主机装置的所述数据引脚处从所述多路复用器电路接收的所述数据选通信号与所述内部时钟信号之间的所述时序关系。
在实例8中,实例1到7中的任何一或多者的标的物可任选地经配置使得在数据读取模式中所述主机装置经配置以:使用所述gpio引脚将控制信号提供到所述多路复用器电路以将所述emmc装置的所述数据引脚耦合到所述多路复用器电路的所述输出;将读取命令提供到所述emmc装置;及在所述主机装置的所述数据引脚处从所述多路复用器电路接收读取数据。
在实例9中,实例1到8中的任何一或多者的标的物可任选地经配置使得在所述数据读取模式中所述多路复用器电路经配置以从所述emmc装置接收所述数据选通信号,但未经配置以将所述数据选通信号提供到所述主机装置。
在实例10中,实例1到9中的任何一或多者的标的物可任选地经配置使得所述主机装置经配置以间歇地触发所述校准模式以确定所述数据选通信号与所述内部时钟信号之间的所述时序关系,且使用所述所确定时序关系来控制延迟电路的延迟值。
标的物(例如,方法)的实例(例如,“实例11”)可包含:在主机装置处在多路复用器电路处从嵌入式多媒体卡(emmc)装置接收数据信号及数据选通信号;使用所述多路复用器电路将所述数据信号或所述数据选通信号中的一者选择性地提供到所述主机装置的数据引脚;在所述主机装置的数据引脚处接收所述多路复用器电路的输出;及使用所述主机装置来确定在所述数据引脚处从所述多路复用器电路接收的所述数据选通信号与内部时钟信号之间的时序关系以控制所述主机装置的延迟电路。
在实例12中,实例11的标的物可任选地经配置以包含:使用所述主机装置控制所述多路复用器电路以在数据读取模式中在所述输出处提供所述数据信号,且在校准模式中在所述输出处提供所述数据选通信号;在所述校准模式中在所述主机装置处从所述多路复用器电路接收所述数据选通信号;且其中确定在所述数据引脚处从所述多路复用器电路接收的所述数据选通信号与所述内部时钟信号之间的所述时序关系包含在所述校准模式中确定所述时序关系。
在实例13中,实例11到12中的任何一或多者的标的物可任选地经配置以包含:使用所述主机装置中的延迟电路使从所述数据引脚接收的所述多路复用器电路的所述输出延迟可配置延迟值;使用所述主机装置中的取样电路在所述内部时钟信号的转变时对所述多路复用器电路的所述输出进行取样;使用所述主机装置使用所述所确定时序关系来调整所述延迟电路的所述延迟值以对准所述多路复用器电路的所述输出与所述内部时钟信号以进行取样。
在实例14中,实例11到13中的任何一或多者的标的物可任选地经配置以包含:使用所述主机装置中的延迟电路使从所述主机装置的所述数据引脚接收的所述多路复用器电路的所述输出延迟可配置延迟值;使用所述主机装置调整所述延迟电路的所述延迟值;及在所述内部时钟信号的转变时使用所述主机装置中的取样电路以不同延迟值对所述多路复用器电路的所述输出进行取样以确定所述多路复用器电路的所述输出与所述内部时钟信号之间的对准。
在实例15中,实例11到14中的任何一或多者的标的物可任选地经配置使得所述主机装置不包含专用数据选通引脚。
在实例16中,实例11到15中的任何一或多者的标的物可任选地经配置以包含:在所述emmc装置的高速模式中响应于读取请求而在所述emmc装置的所述数据选通引脚处提供所述数据选通信号;在所述多路复用器电路的第一输入处从所述emmc装置接收读取数据;在所述高速模式中在所述多路复用器电路的第二输入处从所述emmc装置接收所述数据选通信号;使用所述主机装置的通用输入/输出(gpio)引脚控制所述多路复用器电路的输出。
在实例17中,实例11到16中的任何一或多者的标的物可任选地经配置以包含在所述主机装置的校准模式中:使用所述gpio引脚将控制信号提供到所述多路复用器电路以将所述emmc装置的所述数据选通引脚耦合到所述多路复用器电路的所述输出;将读取命令提供到所述emmc装置以触发所述emmc装置在所述数据选通引脚上提供所述数据选通信号;在所述主机装置的所述数据引脚处从所述多路复用器电路接收所述数据选通信号;及确定在所述主机装置的所述数据引脚处从所述多路复用器电路接收的所述数据选通信号与所述内部时钟信号之间的所述时序关系。
在实例18中,实例11到17中的任何一或多者的标的物可任选地经配置以包含在所述主机装置的数据读取模式中:使用所述gpio引脚将控制信号提供到所述多路复用器电路以将所述emmc装置的所述数据引脚耦合到所述多路复用器电路的所述输出;将读取命令提供到所述emmc装置以触发所述emmc装置将读取数据提供到所述数据引脚;及在所述主机装置的所述数据引脚处从所述多路复用器电路接收读取数据。
在实例19中,实例11到18中的任何一或多者的标的物可任选地经配置以包含在所述数据读取模式中:在所述多路复用器电路处从所述emmc装置接收所述数据选通信号,但不将所述数据选通信号提供到所述主机装置。
在实例20中,实例11到19中的任何一或多者的标的物可任选地经配置以包含:使用所述主机装置间歇地触发所述校准模式以确定所述数据选通信号与所述内部时钟信号之间的所述时序关系;及使用所述主机装置使用所述所确定时序关系来控制延迟电路的延迟值。
标的物(例如,系统)的实例(例如,“实例21”)可包含:主机装置,其经配置以经由通信接口的数据线从嵌入式多媒体卡(emmc)装置接收读取数据且经由所述通信接口的数据选通线从所述emmc装置接收数据选通信号,其中所述主机装置经配置以确定所述数据选通信号与内部时钟信号之间的时序关系以对准用于取样的所述读取数据。
在实例22中,实例21的标的物可任选地经配置使得所述主机装置经配置以在校准模式中确定所述数据选通信号与所述内部时钟信号之间的所述时序关系以对准用于取样的所述读取数据,且所述主机装置经配置以在与校准模式分开的数据模式中经由所述数据选通线从所述emmc装置接收读取数据。
在实例23中,实例21到22中的任何一或多者的标的物可任选地经配置使得所述主机装置包含:数据引脚,其经配置以经由所述通信接口的所述数据线从所述emmc装置接收读取数据;及数据选通引脚,其经配置以经由所述通信接口的数据选通线从所述emmc装置接收所述数据选通信号,其中所述主机装置经配置以在所述校准模式及所述数据模式两者中在所述数据引脚处从所述emmc装置接收读取数据。
在实例24中,实例21到23中的任何一或多者的标的物可任选地经配置使得所述主机装置经配置以将命令提供到所述emmc装置以在所述数据模式中经由所述通信接口的所述数据选通线提供读取数据。
在实例25中,实例21到24中的任何一或多者的标的物可任选地经配置使得所述数据引脚由一定数目(n)个数据引脚组成,且所述主机经配置以在所述数据模式中使用所述n个数据引脚及所述数据选通引脚(总共为n+1个引脚)从所述emmc装置接收读取数据。
在实例26中,实例1到25中的任何一或多者的标的物可任选地经配置使得:数据延迟电路经配置以使所述主机装置中的所述所接收读取数据延迟可配置延迟值;及取样电路经配置以在所述内部时钟信号的转变时对所述读取数据进行取样,其中所述主机装置经配置以使用所述所确定时序关系来调整所述数据延迟电路的所述延迟值以对准所述读取数据与所述内部时钟信号以进行取样。
在实例27中,实例21到26中的任何一或多者的标的物可任选地经配置使得:数据选通延迟电路经配置以使所述所接收数据选通信号延迟可配置延迟值;及测量电路经配置以确定所述数据选通信号与所述内部时钟信号之间的所述时序关系,其中所述主机装置经配置以使用所述所确定时序关系来调整所述数据选通延迟电路的所述延迟值。
在实例28中,实例21到27中的任何一或多者的标的物可任选地经配置使得数据选通延迟电路经配置以使所述所接收数据选通信号延迟可配置延迟值,其中所述主机装置经配置以调整所述数据选通延迟电路的所述延迟值,且以不同延迟值对所述数据选通信号进行取样以确定所述数据选通信号与所述内部时钟信号之间的所述时序关系。
在实例29中,实例21到28中的任何一或多者的标的物可任选地经配置使得所述主机装置经配置以触发所述时序关系的确定。
标的物(例如,方法)的实例(例如,“实例30”)可包含:在主机装置处经由通信接口的数据线从嵌入式多媒体卡(emmc)装置接收读取数据;在所述主机装置处经由所述通信接口的数据选通线从所述emmc装置接收数据选通信号;及使用所述主机装置确定所述数据选通信号与内部时钟信号之间的时序关系以对准用于取样的所述读取数据。
在实例31中,实例30的标的物可任选地经配置以包含:在校准模式中使用所述主机装置来确定所述数据选通信号与所述内部时钟信号之间的所述时序关系以对准用于取样的所述读取数据;及在与校准模式分开的数据模式中使用所述主机装置经由所述数据选通线从所述emmc装置接收读取数据。
在实例32中,实例30到31中的任何一或多者的标的物可任选地经配置使得在所述主机装置处接收读取数据包含在所述校准模式及所述数据模式两者中在所述主机装置的数据引脚处经由所述通信接口的所述数据线从所述emmc装置接收读取数据,且接收所述数据选通信号包含在数据选通引脚处经由所述通信接口的数据选通线从所述emmc装置接收所述数据选通信号。
在实例33中,实例32中的任何一或多者的标的物可任选地经配置以包含使用所述主机装置将命令提供到所述emmc装置,以在所述数据模式中经由所述通信接口的所述数据选通线提供读取数据。
在实例34中,实例30到33中的任何一或多者的标的物可任选地经配置使得所述数据引脚由一定数目(n)个数据引脚组成,且其中从所述emmc装置接收读取数据包含在所述数据模式中使用所述n个数据引脚及所述数据选通引脚(总共n+1个引脚)。
在实例35中,实例30到34中的任何一或多者的标的物可任选地经配置以包含:使用数据延迟电路使所述主机装置中的所述所接收读取数据延迟可配置延迟值;使用取样电路在所述内部时钟信号的转变时对所述读取数据进行取样;及使用所述主机装置使用所述所确定时序关系来调整所述数据延迟电路的所述延迟值以对准所述读取数据与所述内部时钟信号以进行取样。
在实例36中,实例30到35中的任何一或多者的标的物可任选地经配置以包含:使用数据选通延迟电路使所述所接收数据选通信号延迟可配置延迟值;使用测量电路确定所述数据选通信号与所述内部时钟信号之间的所述时序关系;及使用所述主机装置使用所述所确定时序关系来调整所述数据选通延迟电路的所述延迟值。
在实例37中,实例30到36中的任何一或多者的标的物可任选地经配置以包含:使用数据选通延迟电路使所述所接收数据选通信号延迟可配置延迟值;使用所述主机装置调整所述数据选通延迟电路的所述延迟值;及以不同延迟值对所述数据选通信号进行取样以使用所述主机装置确定所述数据选通信号与所述内部时钟信号之间的所述时序关系。
在实例38中,实例30到37中的任何一或多者的标的物可任选地经配置以包含使用所述主机装置触发所述时序关系的确定。
标的物(例如,装置可读存储媒体)的实例(例如,“实例39”)可提供在由主机装置的控制器执行时致使所述控制器执行包括以下各项的操作的指令:经由通信接口的数据线从嵌入式多媒体卡(emmc)装置接收读取数据;在所述主机装置处经由所述通信接口的数据选通线从所述emmc装置接收数据选通信号;及确定所述数据选通信号与内部时钟信号之间的时序关系以对准用于取样的所述读取数据。
在实例40中,实例39的标的物可任选地经配置使得确定所述时序关系包含:在校准模式中使用所述主机装置来确定所述数据选通信号与所述内部时钟信号之间的所述时序关系以对准用于取样的所述读取数据;及在与校准模式分开的数据模式中使用所述主机装置经由所述数据选通线从所述emmc装置接收读取数据。
实例41是一种包括用于执行实例1到40的方法或技术中的任一者的相应构件的设备。
实例42是一种执行实例1到41中的任一者的操作的系统、设备或装置。
实例43是一种体现指令以执行或实施实例1到42中的任一者的操作的有形机器可读媒体。
实例44是一种执行实例1到43中的任一者的操作的方法。
上文描述打算为说明性而非限制性的。举例来说,上文所描述的实例(或者其一或多个方面)可以彼此组合方式使用。例如,所属领域的技术人员可在审阅以上描述后即刻使用其它实施例。基于以下理解提交摘要:其并非将用于解释或限制权利要求书的范围或含义。此外,在以上具体实施方式中,各种特征可分组在一起以简化本发明。此不应解释为意指未主张的所揭示特征对任一权利要求为必要的。而是,发明性标的物可在于少于特定所揭示实施例的所有特征。因此,所附权利要求书据此并入到实施方式中,其中每一权利要求独立地作为单独实施例,且预期此些实施例可以各种组合或排列形式来彼此组合。本发明的范围应参考随附权利要求书连同授权于此些权利要求的等效物的整个范围一起来确定。