Crc错误警示同步

文档序号:135324 发布日期:2021-10-22 浏览:26次 >En<

阅读说明:本技术 Crc错误警示同步 (CRC error alert synchronization ) 是由 T·K·马伊 V·J·万卡雅拉 于 2021-03-24 设计创作,主要内容包括:本公开涉及CRC错误警示同步。一种存储器装置包含循环冗余检查CRC电路,所述CRC电路经配置以指示在从主机装置到所述存储器装置的数据发射中是否已检测到错误。所述CRC电路包含同步计数器,所述同步计数器经配置以使计数与系统时钟同步且发射所述计数。所述CRC电路还包含脉冲宽度控制电路,所述脉冲宽度控制电路经配置以从所述同步计数器接收所述经同步计数且至少部分地基于所述经同步计数产生脉冲宽度控制。此外,所述CRC电路包含同步电路,所述同步电路经配置以接收所述脉冲宽度控制且至少部分地基于所述脉冲宽度控制产生错误警示信号。(The disclosure relates to CRC error alert synchronization. A memory device includes a cyclic redundancy check, CRC, circuit configured to indicate whether an error has been detected in a data transmission from a host device to the memory device. The CRC circuit includes a synchronous counter configured to synchronize a count with a system clock and transmit the count. The CRC circuit also includes a pulse width control circuit configured to receive the synchronized count from the synchronization counter and generate a pulse width control based at least in part on the synchronized count. Further, the CRC circuit includes a synchronization circuit configured to receive the pulse width control and generate an error alert signal based at least in part on the pulse width control.)

CRC错误警示同步

技术领域

本公开的实施例大体上涉及半导体装置的领域。更具体地,本公开的实施例涉及存储器装置中的循环冗余检查(CRC)警示的同步。

背景技术

存储器装置可使用写入命令将数据写入到存储器装置。通常,循环冗余校验(CRC)是动态随机存取存储器(DRAM)存储器装置中的特征。CRC是用以检测原始数据的意外改变的错误检测码。换句话说,CRC可能够检测在发射期间将在写入命令中写入的数据的改变。当写入数据与由主机装置/控制器提供的校验和位之间存在失配时,错误(即,CRC错误)已发生。响应于CRC错误,存储器装置可将警示信号驱动到由用于存储器装置的规范界定的时钟循环数的值(例如,“0”)。举例来说,时钟循环数可在双数据速率类型5(DDR5)动态随机存取存储器(DRAM)装置上的12-20个时钟循环和双数据速率类型4(DDR4)DRAM装置上的6-10个时钟循环之间。此外,警示信号保持到所述值的最大持续时间可用以在许多背靠背CRC错误的情况下防止保持太久。因此,存储器装置可针对CRC错误的一些发生跳过驱动警示。然而,存储器装置和主机装置应当协调/预测在第一CRC错误之后存储器装置何时将跳过或驱动警示。当未正确地协调或预测被跳过/驱动的警示时,设计验证自动化过程可能降级,验证时间增加,和/或可能抑制主机装置与存储器装置之间的一般协调。

本公开的实施例可针对于上文所阐述的一或多个问题。

发明内容

在一个方面中,本公开涉及一种存储器装置,其包括:循环冗余检查(CRC)电路,其经配置以指示在从主机装置到所述存储器装置的数据发射中是否已检测到错误,其中所述CRC电路包括:同步计数器,其经配置以使计数与系统时钟同步且发射所述计数;脉冲宽度控制电路,其经配置以从所述同步计数器接收所述经同步计数且至少部分地基于所述经同步计数产生脉冲宽度控制;以及同步电路,其经配置以接收所述脉冲宽度控制且至少部分地基于所述脉冲宽度控制产生错误警示信号。

在另一方面中,本公开涉及一种循环冗余检查(CRC)电路,其包括:CRC检测电路,其经配置以产生CRC错误信号以指示在从主机装置到存储器装置的数据发射中是否已检测到错误,其中所述CRC电路包括:同步计数器,其经配置以使所述CRC错误信号的脉冲与系统时钟同步,基于CRC错误信号的所述脉冲和所述系统时钟产生本地时钟,且发射所述本地时钟的计数器的位;脉冲宽度控制电路,其经配置以从所述同步计数器接收所述位和本地时钟,且至少部分地基于所述位和所述本地时钟产生脉冲宽度控制;以及同步电路,其经配置以接收所述脉冲宽度控制且至少部分地基于所述脉冲宽度控制产生错误警示信号。

在又一方面中,本公开涉及一种方法,其包括:使用CRC检测电路,检测从主机装置接收的数据中的CRC错误;基于所述CRC错误的所述检测产生CRC错误信号;使用同步计数器来使所述CRC错误信号的脉冲与系统时钟同步以基于CRC错误信号的所述脉冲和所述系统时钟产生本地时钟;使用脉冲宽度控制电路来接收所述本地时钟的计数器的位且从所述同步计数器接收所述本地时钟;使用所述脉冲宽度控制电路,至少部分地基于所述位和所述本地时钟产生脉冲宽度控制;以及使用同步电路来接收所述脉冲宽度控制且至少部分地基于所述脉冲宽度控制产生错误警示信号。

附图说明

图1是根据本公开的实施例的说明具有循环冗余检查(CRC)电路的存储器装置的某些特征的简化框图;

图2是根据本公开的实施例的具有CRC检测电路和CRC警示电路的图1的存储器装置的CRC电路的框图;

图3是根据本公开的实施例的示出使用图2的CRC电路的CRC错误检测信号和CRC警示信号的图表;

图4是根据本公开的实施例的示出使用图2的CRC电路的CRC错误检测信号和CRC警示信号的图表;

图5是根据本公开的实施例的示出使用图2的CRC电路的CRC错误检测信号和CRC警示信号的图表;

图6是根据本公开的实施例的图1的CRC电路的框图,所述CRC电路具有同步计数器、脉冲宽度(pw)控制电路,以及经配置以使CRC警示同步于存储器装置的主时钟的同步电路;

图7是根据本公开的实施例的图6的同步计数器的电路图;

图8是根据本公开的实施例的图6的脉冲宽度控制电路的电路图;

图9是根据本公开的实施例的图6的同步电路的电路图;

图10是根据本公开的实施例的示出使用图6的CRC电路的CRC错误检测信号和CRC警示信号的图表;以及

图11是根据本公开的实施例的示出使用图6的CRC电路的CRC错误检测信号和CRC警示信号的图表。

具体实施方式

下文将描述一或多个具体实施例。在努力提供这些实施例的简明描述的过程中,并非实际实施方案的所有特征都在说明书中进行描述。应了解,在任何此类实际实施方案的发展中,如同在任何工程或设计项目中,必须制定众多的实施方案特定决策以实现研发者的特定目标,例如与系统相关和企业相关约束的一致性,这可能从一个实施方案到另一实施方案有所变化。此外,应了解这种发展努力可能是复杂且耗时的,然而可以是从本公开中获益的一般技术者从事的设计、构造和制造的例程。

在一些实施例中,CRC电路可用以执行系统级奇偶校验错误检测和/或CRC检测以确定何时由于当时钟合并和/或时钟域交叉时发生的不明确性而导致错误存在。CRC警示电路可用以当错误发生时从存储器装置发送警示到主机装置。在一些实施例中,CRC警示电路可使用异步纹波计数器。举例来说,在较慢的时钟速度规范(例如,DDR4)中,异步纹波计数器可为足够的。当存储器装置不使CRC错误与存储器装置的内部时钟同步时情况尤其如此。CRC错误和内部时钟缺乏同步可能妨碍一致的预测,特别是对于不同的过程、电压和温度(PVT)值。因此,如下文所论述,CRC警示电路可包含高时钟频率同步计数器。举例来说,4位同步计数器可用以满足驱动CRC警示信号的n个时钟循环(例如,其中n在用于DDR5的12-20个时钟循环之间)时序。此外,CRC电路可利用相对快速的晶体管逻辑门来实施高速计数器。此外,CRC电路可使CRC错误与存储器装置的内部时钟同步以产生用于跳过CRC警示的可预测且一致的块间隔。通过准确且一致地预测DRAM装置何时将驱动或跳过警示,设计验证自动化过程得到增强且验证时间减少。

现在转而参考各图,图1是示出存储器装置10的某些特征的简化框图。具体来说,图1的框图是说明存储器装置10的某些功能性的功能框图。根据一个实施例,存储器装置10可以是双数据速率类型5(DDR5)同步动态随机存取存储器(SDRAM)装置。DDR5SDRAM的各种特征允许与先前各代双数据速率(DDR)SDRAM相比减少的功率消耗、更多的带宽以及更多的存储容量。然而,本文的一些CRC警示讨论可适用于其它存储器装置,例如DDR类型4(DDR4)SDRAM装置。

存储器装置10可包含若干个存储器排组12。举例来说,存储器排组12可以是DDR5SDRAM存储器排组。存储器排组12可提供于布置在双列直插式存储器模块(DIMMS)上的一或多个芯片(例如,SDRAM芯片)上。每一DIMM可包含若干SDRAM存储器芯片(例如,x8或x16存储器芯片),如将了解。每一SDRAM存储器芯片可包含一或多个存储器排组12。存储器装置10表示具有若干个存储器排组12的单个存储器芯片(例如,SDRAM芯片)的一部分。对于DDR5,存储器排组12可进一步布置成形成排组群。举例来说,对于8千兆字节(Gb)DDR5SDRAM,存储器芯片可包含16个存储器排组12,其布置成8个排组群,每一排组群包含2个存储器排组。对于16Gb DDR5 SDRAM,存储器芯片可例如包含32个存储器排组12,布置成8个排组群,每一排组群包含4个存储器排组。取决于总体系统的应用和设计,可以利用存储器装置10上的存储器排组12的各种其它配置、组织和大小。

存储器装置10可包含命令接口14和输入/输出(I/O)接口16。命令接口14经配置以从例如处理器或控制器等外部装置(未图示)提供若干信号(例如,信号15)。处理器或控制器可以将各种信号15提供到存储器装置10以促进待写入到存储器装置10或从其读取的数据的发射和接收。

如将了解,命令接口14可包含若干电路,例如时钟输入电路18和命令地址输入电路20,以确保对来自主机装置21的信号15的恰当处置。主机装置21可包含用以将数据写入到存储器装置10和/或从其接收数据的处理器和/或其它装置。举例来说,主机装置21可驱动存储器装置10的至少一些操作。命令接口14可从外部装置接收一或多个时钟信号。一般来说,双数据速率(DDR)存储器利用差分对的系统时钟信号,在本文中被称作真时钟信号(Clk_t)和反转(bar)时钟信号(Clk_b)。DDR的正时钟边沿指代上升真时钟信号Clk_t与下降反转时钟信号Clk_b交叉的点,而负时钟边沿指示下降真时钟信号Clk_t的转变和反转时钟信号Clk_b的上升。命令(例如读取命令、写入命令等)通常在时钟信号的正边沿上输入,且数据是在正和负时钟边沿两者上发射或接收。

时钟输入电路18接收真时钟信号(Clk_t)和反转时钟信号(Clk_b)且产生内部时钟信号CLK。内部时钟信号CLK供应到内部时钟产生器,例如延迟锁定环路(DLL)电路30。DLL电路30基于所接收内部时钟信号CLK产生相控内部时钟信号LCLK。相控内部时钟信号LCLK供应到例如I/O接口16,且用作用于确定读取数据的输出时序的时序信号。

内部时钟信号/相位CLK也可提供给存储器装置10内的各种其它组件,且可用于产生各种额外内部时钟信号。举例来说,内部时钟信号CLK可提供到命令解码器32。命令解码器32可从命令总线34接收命令信号且可对命令信号进行解码以提供各种内部命令。举例来说,命令解码器32可通过总线36向DLL电路30提供命令信号,以协调相控内部时钟信号LCLK的产生。相控内部时钟信号LCLK可用以例如通过IO接口16对数据进行计时。

此外,命令解码器32可以对例如读取命令、写入命令、模式寄存器集命令、激活命令等命令进行解码,并且经由总线路径40提供对与所述命令相对应的特定存储器排组12的存取。如将了解,存储器装置10可包含各种其它解码器,例如,行解码器和列解码器,以促进对存储器排组12的存取。在一个实施例中,每一存储器排组12包含排组控制块22,其提供必要的解码(例如,行解码器和列解码器)以及例如时序控制和数据控制等其它特征,以促进去往和来自存储器排组12的命令的执行。

存储器装置10基于从例如处理器等外部装置接收的命令/地址信号而执行例如读取命令和写入命令等操作。在一个实施例中,命令/地址总线可以是用以容纳命令/地址信号的14位总线(CA<13:0>)。使用时钟信号(Clk_t和Clk_b)将命令/地址信号计时到命令接口14。所述命令接口可包含命令地址输入电路20,其经配置以通过例如命令解码器32而接收和发射命令以提供对存储器排组12的存取。另外,命令接口14可以接收芯片选择信号(CS_n)。CS_n信号使存储器装置10能够处理传入CA<13:0>总线上的命令。对存储器装置10内的特定存储器排组12的存取通过命令编码于CA<13:0>总线上。

另外,命令接口14可经配置以接收若干其它命令信号。举例来说,可以提供裸片终端上的命令/地址(CA_ODT)信号以促进存储器装置10内的恰当阻抗匹配。举例来说,在加电期间可使用重置命令(RESET_n)复位命令接口14、状态寄存器、状态机等等。命令接口14也可接收命令/地址反相(CAI)信号,可提供所述命令/地址反相信号以例如取决于特定存储器装置10的命令/地址路由,而使命令/地址总线上的命令/地址信号CA<13:0>的状态反相。还可提供镜像(MIR)信号以促进镜像功能。基于特定应用中的多个存储器装置的配置,MIR信号可用以多路复用信号以使得它们可交换以用于实现信号到存储器装置10的特定路由。还可提供用以促进存储器装置10的测试的各种信号,例如测试启用(TEN)信号。举例来说,TEN信号可用以使存储器装置10进入测试模式以用于连接性测试。

命令接口14也可用以针对可以检测的某些错误将警示信号(ALERT_n)提供到系统处理器或控制器。举例来说,警示信号(ALERT_n)可在检测到循环冗余检查(CRC)错误的情况下从存储器装置10发射。也可以产生其它警示信号。此外,用于从存储器装置10发射警示信号(ALERT_n)的总线和引脚可以在某些操作期间用作输入引脚,所述操作例如如上文所描述的使用TEN信号执行的连接性测试模式。

如图1中所图示,I/O接口16、命令解码器32和/或数据路径46可包含CRC电路48,所述CRC电路可用以评估接收的数据以确定是否检测到发射错误作为CRC错误。CRC电路48还可用以驱动警示信号。举例来说,CRC电路48可用以即使在不同的过程、电压和温度(PVT)值下也一致地预测CRC脉冲驱动和跳过。

利用上文所论述的命令和计时信号,数据可以发送到存储器装置10并且从存储器装置10发送数据,方法是通过IO接口16发射和接收数据信号44。更确切地说,数据可通过包含多个双向数据总线的数据路径46发送到存储器排组12或从其检索数据。一般称为DQ信号的数据IO信号一般在一或多个双向数据总线中发射和接收。对于例如DDR5 SDRAM存储器装置等某些存储器装置,IO信号可划分成上部和下部字节。举例来说,对于x16存储器装置,IO信号可划分成对应于例如数据信号的上部和下部字节的上部和下部IO信号(例如,DQ<15:8>和DQ<7:0>)。

为了允许存储器装置10内的较高数据速率,例如DDR存储器装置等某些存储器装置可以利用数据选通信号,一般称为DQS信号。DQS信号由发送数据的外部处理器或控制器(例如,用于写入命令)或由存储器装置10(例如,用于读取命令)驱动。对于读取命令,DQS信号有效地是具有预定模式的额外数据输出(DQ)信号。对于写入命令,DQS信号用作时钟信号以捕获对应输入数据。如同时钟信号(Clk_t和Clk_b),可提供DQS信号作为数据选通信号的差分对(DQS_t和DQS_b),以在读取和写入期间提供差分对信令。对于例如DDR5 SDRAM存储器装置等某些存储器装置,差分对的DQS信号可划分成对应于例如发送到存储器装置10及从所述存储器装置发送的数据的上部和下部字节的上部和下部数据选通信号(例如,UDQS_t和UDQS_b;LDQS_t和LDQS_b)。

阻抗(ZQ)校准信号还可通过IO接口16提供到存储器装置10。ZQ校准信号可提供到参考引脚且用于通过在PVT值的改变中调整存储器装置10的上拉和下拉电阻器来调谐输出驱动器和ODT值。因为PVT特性可能影响ZQ电阻器值,所以ZQ校准信号可提供到ZQ参考引脚以用于调整电阻而将输入阻抗校准到已知的值。如将了解,精密电阻器通常耦合在存储器装置10上的ZQ引脚与存储器装置10外部的GND/VSS之间。此电阻器充当用于调节内部ODT和IO引脚的驱动强度的参考。

另外,环回信号(LOOPBACK)可通过IO接口16提供到存储器装置10。环回信号可在测试或调试阶段期间用于将存储器装置10设置在其中信号通过同一引脚环回通过存储器装置10的模式中。举例来说,环回信号可用于设置存储器装置10以测试存储器装置10的数据输出(DQ)。环回可包含数据引脚和选通两者或可能仅包含数据引脚。这一般既定用以监视在IO接口16处由存储器装置10捕获的数据。

如将了解,例如电力供应电路(用于接收外部VDD和VSS信号)、模式寄存器(用以限定可编程操作和配置的各种模式)、读取/写入放大器(用以在读取/写入操作期间放大信号)、温度传感器(用于感测存储器装置10的温度)等各种其它组件也可并入到存储器装置10中。因此,应理解,仅提供图1的框图以突出存储器装置10的某些功能特征以有助于后续详细描述。

图2是图1的CRC电路48的简化框图。如所说明,CRC电路48在CRC检测电路54处从主机装置接收数据信号50(例如,DQ信号)和一或多个CRC位52。CRC检测电路54还可接收一或多个额外信号,例如CRC启用模式寄存器值、CRC设定及类似物。CRC检测电路54使用数据信号50和CRC位52以检测是否已发生CRC错误。因此,CRC检测电路54输出指示CRC检测电路54是否已检测到CRC错误的CRC错误(CRCerr)信号56。

CRC警示电路58接收CRCerr信号56且将警示(ErrAlert)信号60(例如,ALERT_n)输出到主机装置以指示CRC错误的检测。CRC警示电路58可包含用于预测和/或控制ErrAlert信号60的发射的计数器62。计数器62可与存储器装置10的主时钟(Clk_t)经同步或可基于延迟且与主时钟非同步。然而,由于在规范(例如,DDR4或DDR5)中指定的CRCerr信号56的指定脉冲宽度以及缺乏CRC警示与存储器装置10的主时钟的同步,后续CRC错误可能不能够在CRC警示电路58中一致地发送和/或捕获。

举例来说,图3说明使用得到一致结果的非同步计数器62的曲线图68,其中每隔一个错误被跳过。曲线图68包含表示存储器装置10的主时钟的线70。曲线图68还包含对应于CRCerr信号56的线72,指示在CRC检测电路54中何时已检测到CRC错误。曲线图68还包含对应于ErrAlert信号60的线74,其经配置以向主机装置指示已检测到CRC错误。使用非同步计数器62,CRCerr信号56和ErrAlert信号60可为基于延迟的。

在执行以产生曲线图68的模拟中,CRCerr信号56在线70的每n(例如,6)个循环发生。在一些规范(例如,DDR4规范)中存储器装置10可将脉冲宽度76设定为线70的若干(例如,6-10)个循环。在曲线图68中,CRCerr信号56的每隔一个脉冲用以在ErrAlert信号60上发射脉冲,同时跳过其它脉冲。举例来说,CRCerr信号56的脉冲78用以发射具有脉冲宽度76的ErrAlert信号60的脉冲80。由于当接收到CRCerr信号56的脉冲82时ErrAlert信号60仍经断言,因此跳过脉冲82。类似地,CRCerr信号56的脉冲82用以发射ErrAlert信号60的脉冲84,同时跳过CRCerr信号56的脉冲86,且CRCerr信号56的脉冲88用以发射ErrAlert信号60的脉冲90。因此,ErrAlert信号60的输出关于哪些错误被跳过且哪些被记录是一致且可预测的。

图4说明使用得到不一致结果的非同步计数器62的曲线图100。曲线图100包含线70。另外,曲线图100包含对应于CRCerr信号56的线102,指示在CRC检测电路54中何时已检测到CRC错误。曲线图100还包含对应于ErrAlert信号60的线103,其经配置以向主机装置指示已检测到CRC错误。

在执行以产生曲线图100的模拟中,CRCerr信号56在线70的每m(例如,7)个循环发生。在一些规范(例如,DDR4规范)中存储器装置10可将脉冲宽度104设定为线70的若干(例如,6-10)个循环。在曲线图100中,CRCerr信号56的脉冲106用以发射具有脉冲宽度104的ErrAlert信号60的脉冲108。CRCerr信号56的下一脉冲110用以发射ErrAlert信号60的脉冲112。由于当接收到CRCerr信号56的脉冲114时ErrAlert信号60仍经断言,因此跳过脉冲114。然而,CRCerr信号56的脉冲116用以发射ErrAlert信号60的脉冲118。因此,ErrAlert信号60的输出关于哪些错误被跳过和哪些被记录是不一致且不可预测的,其中脉冲106、110和116被记录而脉冲114被跳过。

图5说明使用得到不一致结果的非同步计数器62的曲线图120。曲线图120包含线70。另外,曲线图120包含对应于CRCerr信号56的线121,指示在CRC检测电路54中何时已检测到CRC错误。曲线图120还包含对应于ErrAlert信号60的线122,其经配置以向主机装置指示已检测到CRC错误。

在执行以产生曲线图120的模拟中,CRCerr信号56在线70的每m(例如,8)个循环发生。在一些规范(例如,DDR4规范)中存储器装置10可将脉冲宽度123设定为线70的若干(例如,6-10)个循环。在曲线图120中,CRCerr信号56的脉冲124用以发射具有脉冲宽度123的ErrAlert信号60的脉冲126。CRCerr信号56的下一脉冲128用以发射ErrAlert信号60的脉冲130,且CRCerr信号56的脉冲132用以发射ErrAlert信号60的脉冲134。由于当接收到CRCerr信号56的脉冲136时ErrAlert信号60仍经断言,因此跳过脉冲136。然而,CRCerr信号56的脉冲138用以发射ErrAlert信号60的脉冲140。因此,ErrAlert信号60的输出关于哪些错误被跳过和哪些被记录是不一致且不可预测的,其中脉冲124、128、132和138被记录而脉冲136被跳过。

在CRC电路48的操作中增加一致性的一个方法包含使用使计数与控制ErrAlert信号60的脉冲宽度的主时钟同步的同步计数器。举例来说,图6说明使用主时钟(CLK)150(例如,在图1中的clk_t)的CRC警示电路58的框图,所述CRC警示电路具有产生与CLK 150同步的计数154的同步计数器152。PW控制电路156用以设定用于ErrAlert信号60的脉冲宽度控制158。同步电路160使CRCerr信号56与CLK 150同步且使用脉冲宽度控制158输出ErrAlert信号60。

图7是同步计数器152的实施例的示意图。如所说明,同步计数器152包含在触发器174的时钟引脚处接收CLK 150的时钟电路170。触发器174还接收启用或停用CRC功能性的CRC启用信号(CRCErrD)178。触发器174还使用通电(PwrUp)信号176以在存储器装置10的电力循环之后复位触发器174。基于CRCErrD 178和CLK 150,触发器174使用一或多个反相器/放大器183输出本地时钟真(CKT)180和/或本地时钟互补(CKC)182。通过使用触发器174,仅当CRC被启用时输出CKT 180和CKC 182,从而减少当对存储器装置10未启用CRC时CRC电路148的功率消耗。

同步计数器152使用CKT 180和CKC 182以控制触发器186、188、190和192的锁存,其用以将同步计数器152实施为经由CKT 180和CKC 182与CLK 150同步的四位计数器。然而,在一些实施例中,同步计数器152可包含任何合适数目个位和对应触发器。触发器186、188、190和192还可使用复位信号(ResetF信号)184以复位计数。在一些实施例中,ResetF信号184可产生于PW控制电路156中。

在同步计数器152中,使用反相器196使触发器186的输出(Count<0>)194反相,以产生反馈进入触发器186的CountF<0>198以在下一时钟循环使Count<0>194反相。Count<0>194和CountF<0>198发射到多路复用器200,所述多路复用器选择性地将Count<0>194或CountF<0>198作为输入传递到触发器188。输出Count<1>202用于产生使用反相器205反相的CountF<1>204。使用Count<1>202和/或CountF<1>204控制多路复用器200。

同步计数器152还将Count<0>194和Count<1>202发射到“与非”门207以产生Count0and1F信号206。Count0and1F信号206发射到反相器208以产生Count0and1信号210。

多路复用器211接收Count0and1F信号206和Count0and1信号210且将输出发射到触发器190。输出Count<2>212是基于来自多路复用器211的输出而从触发器190输出。Count<2>212用以使用反相器216产生CountF<2>214。使用Count<2>212和/或CountF<2>214控制多路复用器211的输出。

CountF<2>214还发射到“或非”门218,所述“或非”门还接收电压(VSS)220(例如,0V)。“或非”门218的输出连同Count0and1信号210一起发射到“与非”门222以产生Count012F信号224。Count012F信号224和电压220还发射到用以产生对触发器192的输入的多路复用器226。输出Count<3>228和互补CountF<3>230用以控制多路复用器226的输出。反相器232可用以从Count<3>228产生CountF<3>230。Count<3>228、Count<2>212、CountF<2>214、Count<1>202、CountF<1>204、Count<0>194和CountF<0>198可为从同步计数器152传递到PW控制电路156的计数154的组成部分。

如先前论述,PW控制电路156使用计数154来设定ErrAlert信号60的脉冲宽度控制158。图8是PW控制电路156的实施例的示意图。PW控制电路156包含经配置以产生Q0_block信号235的块电路233,且包含经配置以产生Q0_pw信号236的脉冲宽度电路234。

块电路233接收Count<3>228、Count<2>212、Count<1>202、CountF<1>204、Count<0>194和CountF<0>198。开关238用以在将Count<3>228和电压(VPERI)239(例如,逻辑高)连同Count<2>212一起发射到“与非”门240之间进行选择。类似地,开关242用以在发射Count<1>202和CountF<1>204之间进行选择,且开关244用以在发射Count<0>194和CountF<0>198之间进行选择。开关242和244经配置以控制哪些输入发射到“与非”门246。“与非”门240和246的输出使用“或非”门248进行组合。“或非”门248的输出发射到触发器250,所述触发器使用CKT 180和CKC 182来选通“或非”门248的输出的锁存,同时使用ResetF信号184控制触发器250的复位。触发器250输出Q0_block信号235。

脉冲宽度电路234接收Count<3>228、Count<2>212、CountF<2>214、Count<1>202、CountF<1>204、Count<0>194和CountF<0>198。开关252经配置以在电压239与Count<3>228之间进行选择,且开关254经配置以在Count<2>212与CountF<2>214之间进行选择。开关252和开关254的输出发射到“与非”门256。类似地,开关258用以在发射Count<1>202与CountF<1>204之间进行选择,且开关260用以在发射Count<0>194与CountF<0>198之间进行选择。开关258和260经配置以控制哪些输入发射到“与非”门262。“与非”门256和262的输出使用“或非”门264进行组合。“或非”门264的输出发射到触发器266,所述触发器使用CKT 180和CKC182来选通“或非”门264的输出的锁存,同时使用ResetF信号184控制触发器266的复位。触发器266输出Q0_pw信号236。Q0_block信号235计数比Q0_pw信号236更多的时钟循环。此额外计数确保使用Q0_block信号235阻挡新CRC错误的持续时间长于使用Q0_pw信号235设定的脉冲宽度以确保无干扰的操作。因此,当CRC错误警示脉冲处于进展时将阻挡任何新CRC错误,这在准确地预测何时将要辨识下一CRC错误方面是关键的。

图9是同步电路160的示意图。同步电路160接收用以在CRC检测和警示处理结束时停用同步计数器152的CRCErrEndF 267。“与非”门268接收CRCErrEndF 267和PwrUp信号176。“与非”门268的输出发射到反相器255,随后发射到触发器269、270和271的相应一组引脚。触发器269接收CRCErrDF 272。CRCErrDF 272是与CKT 180和CKC 182同步的时序信号。使用CKT 180和CKC 182将CRCErrDF 272锁存到触发器269中。当锁存时,CRCErrDF 272在循环延迟之后作为CRCErrD1F输出到触发器270。类似地,CRCErrD1F锁存到触发器270中且在另一循环延迟之后作为CRCErrD2F输出到触发器271。类似地,CRCErrD2F锁存到触发器271中且在另一循环延迟之后作为CRCErrD3F输出到开关273。CRCErrD1F、CRCErrD2F和CRCErrD3F发射到用以在CRCErrD1F、CRCErrD2F和CRCErrD3F之间进行选择的开关273。具有适当延迟量的选定的时序信号用作ResetF信号184以复位/启用/停用同步计数器152,如上相对于图7所述。在一些实施例中,ResetF信号184经放大和/或使用反相器274反相。

同步电路160还在“与非”门276处接收Q0_block信号234和CRCErrSet 275。CRCErrSet 275用以当ErrAlert信号60处于作用中时忽略任何新CRC错误。CRCErrSet275可由Q0_pw信号236复位。“与非”门276中的Q0_block信号234和CRCErrSet 275的“与非”运算产生在“与非”门268中使用的CRCErrEndF 267。CRCErrEndF 267和PwrUp信号176连同CRCErrI 278一起发射到多路复用器277。CRCErrI 278用以通过启用同步计数器152和对用于ErrAlert信号60的时钟循环进行计数而开始同步计数器152和CRC警示过程。多路复用器277的输出传递到SR触发器279的设定引脚。SR触发器279的复位引脚连接到CRCErrI 278。SR触发器279的输出是作为CRC错误停用信号的CRCErrD 280。CRCErrD 280发射到反相器282以产生CRCErrDF 272。CRCErrDF272发射到反相器284以产生CRCErrSet 275。CRCErrSet275用以当ErrAlert信号60处于进展中时忽略任何新CRC错误。使用上述电路,CRCErrSet275由CRCErrI 278设定且由Q0_block 235复位。

同步电路160还包含接收Q0_pw信号236和CRCErrSet 275的“与非”门286。CRCErrSet 275和PwrUP信号176连同CRCErrI 278一起发射到多路复用器288。多路复用器288的输出传递到SR触发器290的设定引脚。SR触发器290的复位引脚连接到CRCErrI 278。SR触发器290的输出发射到经配置以输出CRCErrF_PW 294的反相器292。CRCErrF_PW 294确定ErrAlert信号60的脉冲宽度。CRCErrF_PW 294由CRCErrI 278设定且由Q0_pw信号236复位。

CRCErr1clk 296发射到触发器298。如下方所提到,CRCErr1clk 296是从CRCerr信号56产生且具有至少1个时钟循环宽的脉冲,使得CRCErr1clk 296可经锁存且同步到CKT180。使用CLK 150(例如,存储器装置10的主时钟)锁存触发器298。CLK 150也可在反相器300中反相以产生CLKf 302,CLKf用作差分时钟以辅助触发器298中的CRCErr1clk 296的锁存。触发器298输出CRCErr_1clkd 304,其为CRCErr_1clk 296以CLK 150的时钟循环延迟的延迟版本。CRCErr_1clkd 304发射到触发器306,所述触发器还使用CLK 150和CLKf 302进行锁存。当存储器装置10上电时可使用PwrUp信号176来复位触发器298和306。触发器306的输出发射到脉冲产生器308。举例来说,脉冲产生器308可以是单元型脉冲产生器。脉冲产生器308输出CRCErrPulseF 310,其为经同步于CLK 150的错误信号。CRCErrPulseF 310发射到“或非”门312以产生CRCErrI278。“或非”门312还接收CRCErrSetDly 314,其为CRCErrSet275经由延迟316的延迟版本。在一些实施例中,CRCErrSet 275可经由一或多个反相器318进行反相以产生CRCErrSetDly 314。

使用延迟322进行延迟的CRCErrPulseF 310的延迟版本和PwrUp信号176发射到SR触发器324的设定引脚。SR触发器324的复位引脚接收至少部分地基于CRCErr信号56从脉冲产生器326产生的脉冲。脉冲产生器326可包含单元型脉冲产生器。SR触发器324的输出是CRCErr1clk 296。CRCErr1clk 296连同在反相器327中反相的CRCErrSetDly 314的反转一起发射到“与非”门328。“与非”门328的输出发射到“与非”门330,其连同CRCErrF_PW 294一起进行“与非”运算。“与非”门330的输出发射到开关332以在“与非”门330的输出与电压220之间进行选择。开关332中选择的值发射到反相器334。来自反相器334的反相值发射到开关336,所述开关用以选择在ErrAlertF 338的产生中是否旁路反相器334。ErrAlertF 338可为ErrAlert信号60的反相或非反相版本。

图10是使用图6的基于同步计数器的CRC电路48的CRC检测和警示的曲线图400。曲线图400包含对应于CLK 150的线402。另外,曲线图400包含对应于CRCerr信号56的线404,指示在CRC检测电路54中何时已检测到CRC错误。曲线图400还包含对应于ErrAlert信号60的线406,其经配置以向主机装置指示已检测到CRC错误。

在执行以产生曲线图400的模拟中,CRCerr信号56在线402的每x(例如,9)个循环发生。在一些规范(例如,DDR5规范)中存储器装置10可将脉冲宽度407设定为线402的若干(例如,9-17)个循环。在曲线图400中,CRCerr信号56的脉冲408用以发射具有脉冲宽度407的ErrAlert信号60的脉冲410。

由于当接收到CRCerr信号56的脉冲412时Q0_block信号235仍经断言,因此跳过脉冲412。然而,CRCerr信号56的脉冲414用以发射ErrAlert信号60的脉冲416。类似于脉冲412,跳过脉冲418,而CRCerr信号56的脉冲420用以发射ErrAlert信号60的脉冲422。因此,曲线图400反映了跳过每隔一个CRC错误的一致且可预测的CRC错误警示方案。

图11是使用图6的基于同步计数器的CRC电路48的CRC检测和警示的曲线图430。曲线图400包含对应于CLK 150的线402。另外,曲线图430包含对应于CRCerr信号56的线432,指示在CRC检测电路54中何时已检测到CRC错误。曲线图430还包含对应于ErrAlert信号60的线434,其经配置以向主机装置指示已检测到CRC错误。

在执行以产生曲线图430的模拟中,CRCerr信号56在线402的每y(例如,18)个循环发生。在一些规范(例如,DDR5规范)中存储器装置10可将脉冲宽度435设定为线402的若干个循环。在曲线图430中,CRCerr信号56的脉冲436用以发射具有脉冲宽度435的ErrAlert信号60的脉冲438。

CRCerr信号56的下一脉冲440用以发射ErrAlert信号60的脉冲442;CRCerr信号56的脉冲444用以发射ErrAlert信号60的脉冲446;CRCerr信号56的脉冲448用以发射ErrAlert信号60的脉冲450;以及CRCerr信号56的脉冲452用以发射ErrAlert信号60的脉冲454。因此,曲线图430反映了记录每个CRC错误的一致且可预测的CRC错误警示方案。

虽然前文论述CRC错误检测和警示,但在一些实施例中,前述概念可应用于其它错误检测方案。举例来说,前述讨论可应用于奇偶校验错误检测和警示电路。另外或替代地,在一些实施例中,论述的概念可用于任何验证错误检测和警示方案。

并且,虽然论述的电路包含讨论具有逻辑高或逻辑低值的信号,但一些实施例可包含相反极性。另外,特定电路(例如,NAND)可用等效电路(例如,对“或”门的反相输入)代替以实现相似逻辑结果。

尽管本公开可以易有各种修改以及替代形式,但特定实施例已经在附图中借助于实例示出并且已经在本文中详细描述。然而,应理解,本公开并不希望限于所公开的特定形式。而是,本公开既定涵盖属于由所附权利要求书界定的本公开的精神和范围内的所有修改、等效物和替代方案。

本文呈现且要求的技术经参考且应用于具有实践性质的实质对象和具体实例,所述实质对象和具体实例以可论证方式改进本技术领域且因此不是抽象的、无形的或纯理论的。此外,如果附加到本说明书的末尾的任何权利要求含有表示为“用于[执行][功能]...的装置”或“用于[执行][功能]...的步骤”的一或多个要素,那么希望在35U.S.C.112(f)下解释此类要素。然而,对于含有以任何其它方式指定的要素的任何权利要求,预期将不会在35U.S.C.112(f)下解释此类要素。

25页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:追踪消息的传输方法、电子设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!