首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

用于支持纠错码的装置及其测试方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:三星电子株式会社

摘要:公开一种用于支持纠错码的装置及其测试方法。一种根据本发明构思的示例实施例的用于支持用于存储器测试的测试模式的装置可包括:存储器,被配置为接收并存储写入数据,并且从存储的写入数据输出读取数据;纠错码ECC引擎,被配置为通过对输入数据进行编码来生成写入数据,并且当N是正整数时,通过校正包括在接收数据中的N位或更少位的错误位来生成输出数据;错误插入电路,被配置为在正常模式下将读取数据作为接收数据提供给ECC引擎,并且在测试模式下将通过使读取数据的小于N位的至少一个位反相而获得的数据作为接收数据提供给ECC引擎。

主权项:1.一种用于支持用于存储器测试的测试模式的装置,所述装置包括:存储器,被配置为:接收并存储写入数据,并且从存储的写入数据输出读取数据;纠错码ECC引擎,在正常模式和测试模式下,被配置为:通过对输入数据进行编码来生成写入数据以将写入数据输出到存储器,并且通过校正包括在接收数据中的N位或更少位的错误来生成输出数据,其中,N是正整数;错误插入电路,被配置为:在正常模式下将从存储器提供的读取数据作为接收数据提供给ECC引擎,并且在测试模式下将通过使从存储器提供的读取数据的小于N位的至少一个位反相而获得的数据作为接收数据提供给ECC引擎。

全文数据:用于支持纠错码的装置及其测试方法本申请要求于2017年9月21日提交到韩国知识产权局的第10-2017-0121878号韩国专利申请和于2018年2月20日提交到韩国知识产权局的第10-2018-0020017号韩国专利申请的优先权,所述韩国专利申请的公开通过引用全部包含于此。技术领域本发明构思涉及用于支持纠错码的装置,更具体地讲,涉及用于支持纠错码的装置和或其测试方法。背景技术纠错码ECC系统可用于校正在已经通过噪声通道noisychannel的数据中发生的错误。例如,ECC系统可用于校正在通过通信通道接收的数据中发生的错误,或者可用于校正在从存储器读取的数据中发生的错误。根据ECC系统,可生成冗余被添加到原始数据的码字,并且可通过校正已经通过噪声通道的数据中的错误来恢复原始数据。ECC系统可具有可校正的错误量,并且可校正的错误量越大,用于实现ECC系统的资源越多,添加到ECC的冗余也会增加。因此,在噪声通道中可能发生的错误的量可受限于能够由给定的ECC系统校正的错误量的范围。例如,如果噪声通道是ECC系统中的存储器,则可需要验证可在存储器中发生的错误的量是否在能够通过给定的ECC系统校正的错误量的范围内。发明内容本发明构思提供用于支持纠错码ECC的装置,更具体地讲,提供用于容易地确定噪声通道是否具有可由ECC系统校正的错误量的范围的用于支持ECC的装置和或其测试方法。根据示例实施例,一种用于支持用于存储器测试的测试模式的装置,所述装置可包括:存储器,被配置为接收并存储写入数据,并且从存储的写入数据输出读取数据;纠错码ECC引擎,被配置为通过对输入数据进行编码来生成写入数据,并且当N是正整数时,通过校正包括在接收数据中的N位或更少位的错误位来生成输出数据;错误插入电路,被配置为:在正常模式下将读取数据作为接收数据提供给ECC引擎,并且在测试模式下将通过使读取数据的小于N位的至少一个位反相而获得的数据作为接收数据提供给ECC引擎。根据示例实施例,一种用于支持用于存储器测试的测试模式的装置,所述装置可包括:存储器,被配置为接收并存储写入数据,并且从存储的写入数据输出读取数据;纠错码ECC引擎,被配置为通过对输入数据进行编码来生成编码的数据,并且当N是正整数时,通过校正包括在读取数据中的N位或更少位的错误位来生成输出数据;错误插入电路,被配置为在正常模式下将编码的数据作为写入数据提供给存储器,并且在测试模式下将通过使编码的数据的小于N位的至少一个位反相获得的数据作为写入数据提供给存储器。根据示例实施例,一种测试包括纠错码ECC引擎和存储器的装置的方法,所述装置被配置为当N是正整数时校正N位或更少的错误位,所述方法可包括:由ECC引擎通过对输入数据进行编码来生成写入数据;将写入数据写入存储器中,读取写入数据,并输出读取数据;由ECC引擎通过校正读取数据的错误来生成输出数据,其中,写入写入数据的步骤和输出读取数据的步骤包括:使写入数据和读取数据中的至少一个中的少于N位的至少一个位反相。附图说明通过以下结合附图进行的详细描述,本发明构思的示例实施例将被更清楚地理解,其中:图1是根据本发明构思的示例实施例的用于支持纠错码ECC的装置的框图;图2A和图2B是示出根据本发明构思的示例实施例的图1的装置的示例的框图;图3A和图3B是示出根据本发明构思的示例实施例的图1的错误插入电路的示例的框图;图4是根据本发明构思的示例实施例的在测试模式下的图2A的写入数据的示例的示图;图5是示出根据本发明构思的示例实施例的测试用于支持ECC的装置的方法的流程图;图6A和图6B是示出根据本发明构思的示例实施例的测试用于支持ECC的装置的方法的流程图;图7A至图7C是示出根据本发明构思的示例实施例的位选择电路的示例的框图;图8是示出根据本发明构思的示例实施例的测试用于支持ECC的装置的方法的流程图;图9是示出根据本发明构思的示例实施例的图8的操作S80的示例的流程图;图10是示出根据本发明构思的示例实施例的用于支持ECC的装置的示例的框图;图11是示出根据本发明构思的示例实施例的用于支持ECC的装置的示例的框图。具体实施方式图1是根据本发明构思的示例实施例的用于支持纠错码ECC的装置10的框图。更详细地讲,图1示出包括作为ECC系统中的噪声通道的存储器300的装置10。如图1中所示,装置10可包括ECC引擎100、错误插入电路200和存储器300。装置10可以是包括用于存储输入数据D_IN并使用存储的数据作为输出数据D_OUT的存储器300的任何装置。在一些示例实施例中,装置10可以是,但不限于,片上系统SoC诸如,应用处理器AP。在一些示例实施例中,装置10可以是,但不限于,用于存储输入数据D_IN并根据外部命令输出输出数据D_OUT的半导体存储器装置诸如,动态随机存取存储器DRAM、闪存等。在一些示例实施例中,装置10可以是,但不限于,用于存储输入数据D_IN并响应于主机请求而输出输出数据D_OUT的存储器系统诸如,固态驱动器SSD、存储卡等。ECC引擎100可通过对输入数据D_IN进行编码来生成编码的数据D_ENC,并且可通过对接收数据D_RX进行解码来生成输出数据D_OUT。装置10中的存储器300可以是噪声通道。例如,但不限于,由于在存储器300中存储数据的存储器单元中的缺陷,和或由于设置在存储器300中的写入数据D_WR移动的路径或从存储器300输出的读取数据D_RD移动的路径中的缺陷,可发生噪声。装置10可包括ECC引擎100,ECC引擎100可通过将冗余添加到将被存储在存储器300中的输入数据D_IN来生成编码的数据D_ENC,并且可通过基于从存储器300接收的接收数据D_RX中的冗余校正错误来生成输出数据D_OUT。在一些示例实施例中,编码的数据D_ENC可以以码字为单位提供给存储器300,其中,码字包括输入数据D_IN的一部分或从输入数据D_IN生成的数据和冗余。ECC引擎100可以以各种方式执行编码和解码。例如,ECC引擎100可基于,但不限于,诸如,AN码、BCH码、汉明码、极化码、Turbo码等的ECC来执行编码和解码。在一些示例实施例中,ECC引擎100可包括处理器和用于存储由处理器执行的指令的存储器,或者在一些示例实施例中,ECC引擎100可包括通过逻辑综合logicsynthesis设计的逻辑电路。ECC引擎100可具有可校正的错误量。例如,当根据2位校正ECC系统设计ECC引擎100时,ECC引擎100可检测并校正接收数据D_RX中的小于或等于2位的错误例如,1位错误和2位错误。在一些示例实施例中,ECC引擎100可检测接收数据D_RX中的错误的量超过可由ECC引擎100校正的错误的量,或者可生成指示错误校正是不可能的信号。随着可由ECC引擎100校正的错误量增加,添加到输入数据D_IN以生成编码的数据D_ENC的冗余可增加,并且用于存储输入数据D_IN的存储器300的存储容量可减小。此外,随着可由ECC引擎100校正的错误的量增加,由ECC引擎100所消耗的资源诸如,面积、功率和或时间可增加。因此,ECC引擎100可被设计为具有基于噪声通道确定的可校正的错误量即,在存储器300中发生的位错误率biterrorrate,BER。例如,当存储器300的期望的BER为0.2并且由ECC引擎100处理的数据单元是10位数据单元时,ECC引擎100的可校正错误量可被设计为2位或更多位。当ECC引擎100具有N位可校正错误量N0时,ECC系统可被称为N位校正ECC系统,ECC引擎100可被称为N位校正ECC引擎100。错误插入电路200可根据模式信号C_MODE,在ECC引擎100与存储器300之间,选择性地插入错误。如图1中所示,错误插入电路200可从ECC引擎100接收编码的数据D_ENC,并将写入数据D_WR提供给存储器300。错误插入电路200还可从存储器300接收读取数据D_RD,并将接收数据D_RX提供给ECC引擎100。模式信号C_MODE可指示装置10的模式,装置10可根据模式信号C_MODE在正常模式和测试模式下操作。错误插入电路200可包括处理器和用于存储由处理器执行的指令的存储器,或者在一些示例实施例中,可包括通过逻辑综合设计的逻辑电路。错误插入电路200可包括至少一个位错误电路biterrorcircuitBE。位错误电路BE可接收指示一个位的值的输入信号IN,并可输出指示一个位的值的输出信号OUT。如图1中所示,位错误电路BE可包括反相器INV和开关SW,输出信号OUT可以与输入信号IN相同,或者可以与通过使输入信号IN反相获得的信号相同。在一些示例实施例中,可基于输入到错误插入电路200的模式信号C_MODE来控制位错误电路BE的开关SW。例如,当模式信号C_MODE指示正常模式时,开关SW可被控制使得输出信号OUT与输入信号IN一致。例如,当模式信号C_MODE指示测试模式时,开关SW可被控制使得输出信号OUT与通过使输入信号IN反相获得的信号一致。当与输入信号IN一致的输出信号OUT输出时,位错误电路BE可被表示为被去激活,当通过使输入信号IN反相获得的输出信号OUT输出时,位错误电路BE可被表示为被激活。错误插入电路200可在测试模式下使用位错误电路BE将错误插入到由错误插入电路200接收的数据中。在一些示例实施例中,错误插入电路200可响应于模式信号C_MODE指示测试模式,通过将至少一个位错误插入到由ECC引擎100提供的编码的数据D_ENC中,来生成写入数据D_WR,如下面参照图2A所述。在一些示例实施例中,错误插入电路200还可响应于模式信号C_MODE指示测试模式,通过将至少一个位错误插入到从存储器300提供的读取数据D_RD中,来生成接收数据D_RX,如下面参照图2B所述。此外,在一些示例实施例中,错误插入电路200可响应于模式信号C_MODE指示测试模式,将至少一个位错误分别插入到编码的数据D_ENC和读取数据D_RD中。这样,可在测试模式下通过错误插入电路200插入至少一个位错误,从而可将存储器300验证为可接受的或有缺陷的。导致存储器300中的错误的缺陷不仅可包括在存储器300的制造过程期间发生的初始缺陷,而且还包括在当存储器300或包括存储器300的装置10被出货和或使用时的时间段期间发生的后续缺陷。因此,在存储器300或装置10的制造过程期间,可从可由ECC引擎100校正的错误量验证存储器300是否具有特定的错误容限errormargin。例如,当ECC引擎100对应于3位校正ECC系统时,存储器300可被制造为具有1位错误容限。因此,即使由于存储器300中的缺陷而发生1位错误,存储器300也可正常使用。因此,在存储器300或装置10的制造过程中,存储器300可被测试,以便出货仅具有2位错误或更少位错误的存储器300即,具有1位错误容限的存储器300。也就是说,存储器300或装置10可在制造过程期间被测试,使得即使在装置10被用户使用时发生1位错误,也能够通过用于3位校正的ECC引擎100来校正错误,以在装置10中不引起问题。错误插入电路200可通过插入与存储器300的错误容限对应的错误量来人为地减少可由ECC引擎100校正的ECC系统的错误量。例如,当装置10包括3位校正ECC引擎100并且错误插入电路200插入1位错误时,那么存储器300可始终被认为包含1位错误,因此,装置10可对应于2位ECC系统。此外,如图1中所示,在测试模式下,错误插入电路200可使用简单结构的位错误电路BE在ECC引擎100与存储器300之间插入错误。可根据通过ECC引擎100的错误校正是否成功,来确定存储器300或装置10的接受或故障。例如,当存储器300被制造为具有1位错误容限时,错误插入电路200可在测试模式下插入1位错误,并确定ECC引擎100是否成功校正错误,以测试存储器300或装置10。因此,可在包括存储器300和支持ECC的装置10中容易地验证存储器300,因此,装置10的生产率可被提高。虽然图1示出作为噪声通道的存储器300的示例,但是将理解,根据本发明构思的示例实施例可容易地验证从可通过具有其他噪声的通道例如,通信通道预测的错误量提供额外容限的ECC系统。存储器300可接收并存储写入数据D_WR,并且可从存储的写入数据D_WR输出读取数据D_RD。存储器300可包括用于存储数据的多个存储器单元。在一些示例实施例中,存储器300可包括非易失性存储器例如,电可擦除可编程只读存储器EEPROM、闪存、相变随机存取存储器PRAM、电阻随机存取存储器RRAM、纳米浮动栅存储器NFGM、聚合物随机存取存储器polymerrandomaccessmemory,PoRAM、磁随机存取存储器MRAM或铁电随机存取存储器FRAM。在一些示例实施例中,存储器300可包括易失性存储器例如,DRAM、静态RAM、移动DRAM、双倍数据速率同步DRAMDDRSDRAM、低功率DDRLPDDRSDRAM、图形DDRGDDRSDRAM或rambusDRAMRDRAM。图2A和图2B是示出根据本发明构思的示例实施例的图1的装置10的示例的框图。如上面参考图1所述,图2A的装置10a和图2B的装置10b均可根据从外部提供的模式信号C_MODE支持正常模式和测试模式。在下文中,在图2A和图2B中,与图1中的参考标号相同的参考标号表示相同的元件,因此,在此将不再给出其详细描述。参照图2A,装置10a可包括ECC引擎100a、错误插入电路200a和存储器300a。错误插入电路200a可在正常模式下将从ECC引擎100a提供的编码的数据D_ENC作为写入数据D_WR提供给存储器300a,和或可在测试模式下将通过将至少一个位错误插入到编码的数据D_ENC中而生成的写入数据D_WR提供给存储器300a。ECC引擎100a可接收从存储器300a输出的读取数据D_RD,因此,在测试模式下,图1的读取数据D_RD和接收数据D_RX可彼此一致。在测试模式下,输入数据D_IN可被存储在存储器300a中,然后,可从自存储器300a输出的读取数据D_RD生成输出数据D_OUT。例如,在将相同的输入数据D_IN顺序地存储在整个存储器300a中的操作被执行之后,可从自整个存储器300a顺序地输出的读取数据D_RD生成输出数据D_OUT。在一些示例实施例中,输入数据D_IN可以与由ECC引擎100a生成的输出数据D_OUT进行比较,并且当输入数据D_IN和输出数据D_OUT彼此不一致时,存储器300a可被确定为有缺陷的。在一些示例实施例中,当ECC引擎100a不能校正读取数据D_RD的错误即,读取数据D_RD中的错误超过可由ECC引擎100a校正的错误量时,ECC引擎100a可输出指示其的信号。此外,可根据从ECC引擎100a输出的信号,确定存储器300a是有缺陷的。错误插入电路200a可在测试模式下改变插入的至少一个位错误的位置。例如,错误插入电路200a可将通过将至少一个位错误插入到编码的数据D_ENC中而生成的写入数据D_WR写入到存储器300a的特定区域中,并且可通过读取存储在存储器300a的特定区域中的数据来输出读取数据D_RD。接下来,错误插入电路200a可将包括插入到与之前的相同编码的数据D_ENC中的先前位置不同的位置的至少一个位错误的写入数据D_WR写入在与存储器300a的先前区域相同的区域中,并且可读取存储在与存储器300a的先前区域相同的区域中的数据,从而输出读取数据D_RD。当在由错误插入电路200a插入的位错误的位置中发生实际上由存储器300a引起的实际的位错误时,由错误插入电路200a插入的位错误不能用作存储器300a的错误容限。因此,在改变针对相同的区域和相同的编码的数据D_ENC插入位错误的位置的同时,可重复写入生成的写入数据D_WR并输出读取数据D_RD的操作。稍后下面将参照图3A和图3B以及图4描述通过错误插入电路200b改变位错误的位置的示例。参照图2B,装置10b可包括ECC引擎100b、错误插入电路200b和存储器300b。错误插入电路200b可在正常模式下将从存储器300b提供的读取数据D_RD作为接收数据D_RX提供给ECC引擎100b,和或可在测试模式下将通过将至少一个位错误插入到读取数据D_RD中而生成的接收数据D_RX提供给ECC引擎100b。存储器300b可接收从ECC引擎100b输出的写入数据D_WR。根据图2B的示例,在测试模式下,图1的编码的数据D_ENC和写入数据D_WR可彼此一致。如上面参照图2B所述,错误插入电路200b可在测试模式下改变插入的至少一个位错误的位置。例如,错误插入电路200b可将接收数据D_RX提供给ECC引擎100b,其中,通过将至少一个位错误插入到通过读取写入数据D_WR被写入的区域而输出的读取数据D_RD中来生成该接收数据D_RX。此后,错误插入电路200b可向ECC引擎100b提供包括至少一个位错误的接收数据D_RX,其中,在与先前位置不同的位置将该至少一个位错误插入到通过读取与之前相同的区域而输出的读取数据D_RD中。在图2A的装置10a中,可通过根据位错误的位置将写入数据D_WR多次写入到相同的区域并多次读取写入数据,来多次输出读取数据D_RD。然而,在图2B的装置10b中,可通过将写入数据D_WR一次写入到相同的区域并多次读取写入的数据,来多次输出读取数据D_RD。此外,如稍后下面将参照图6B所述,可在图2B的装置10b中执行一次针对存储器300b的相同的区域的读取操作。在下文中,将主要参照错误插入电路200a在测试模式下将通过将位错误插入到编码的数据D_ENC中而生成的写入数据D_WR存储在存储器300a中的示例,来描述本发明构思的示例实施例,但本发明构思的示例实施例不限于此。本发明构思的示例实施例还可应用于包括图2B的装置10b和图2A的错误插入电路200a和图2B的错误插入电路200b的全部的装置。图3A和图3B是示出根据本发明构思的示例实施例的图1的错误插入电路200的示例的框图。更详细地讲,图3A和图3B示出图2A的错误插入电路200a的示例。如上面参照图2A所述,图3A的错误插入电路200a'和图3B的错误插入电路200a"可在测试模式下将至少一个位错误插入到n位的编码的数据D_ENC即,D_ENC[n:1]中,以生成n位写入数据D_WR即,D_WR[n:1]n0。在下文中,将参照图2A描述图3A和图3B,在此将不再给出图3A和图3B的重复描述。参照图3A,错误插入电路200a'可包括位选择电路210'和m个位错误电路220'nm0。m个位错误电路220'可包括多个位错误电路BE1至BEm。位选择电路210'可接收模式信号C_MODE,并且可将选择信号SEL的多达m位分别提供给m个位错误电路220'。响应于模式信号C_MODE指示正常模式,位选择电路210'可生成选择信号SEL,使得所有m个位错误电路220'被去激活即,编码的数据D_ENC的位信号被直接输出作为写入数据D_WR的位信号。另一方面,响应于模式信号C_MODE指示测试模式,位选择电路210'可生成选择信号SEL,使得m个位错误电路220'中的至少一个被激活即,通过使编码的数据D_ENC的位信号反相获得的位信号被输出作为写入数据D_WR的位信号。如图3A中所示,m个位错误电路220'可布置为与编码的数据D_ENC的n位之中的m位对应。图3A中所示的m个位错误电路220'的布置仅是示例性的,与图3A中所示出的不同,例如,m个位错误电路220'可按从编码的数据D_ENC的最高有效位MSB的连续的m位D_ENC[n:n-m+1]布置,或者可按从编码的数据D_ENC的MSB的连续的m位D_ENC[m:1]布置。位选择电路210'可在测试模式下同时激活m个位错误电路220'之中的与存储器300a的错误容限对应的位数的位错误电路。例如,如果存储器300a所要求的错误容限是一位,则位选择电路210'可激活m个位错误电路220'中的一个位错误电路。此外,位选择电路210'可改变将被激活的位错误电路。例如,位选择电路210'可生成选择信号SEL,使得当将相同的编码的数据D_ENC连续K次写入存储器300a的相同的区域中时,不同的K个位错误电路被激活。如稍后下面参照图4所述,可基于ECC引擎100a的可校正的位的数量和存储器300a的错误容限,来确定从相同的编码的数据D_ENC生成的写入数据D_WR被写入到存储器300a的相同的区域中的次数K。参照图3B,错误插入电路200a"可包括位选择电路210"和n个位错误电路200a"。也就是说,错误插入电路200a"可包括分别与编码的数据D_ENC的n个位对应的n个位错误电路220"。n个位错误电路220"可包括多个位错误电路BE1至BEn。位选择电路210"可接收模式信号C_MODE,并且可将选择信号SEL的n位分别提供给n个位错误电路220"。响应于模式信号C_MODE指示正常模式,位选择电路210"可生成选择信号SEL,使得所有的n个位错误电路220"被去激活。另一方面,响应于模式信号C_MODE指示测试模式,位选择电路210"可生成选择信号SEL,使得n个位错误电路220"中的至少一个被激活。图4是根据本发明构思的示例实施例的在测试模式下的图2A的写入数据D_WR的示例的示图。更详细地讲,图4示出从相同的编码的数据D_ENC生成并连续写入图2A的存储器300a中的写入数据D_WR。在图4的示例中,图2A的ECC引擎100a可对应于2位校正ECC系统,存储器300a中要求的错误容限可以是1位。因此,错误插入电路200a可通过使编码的数据D_ENC中的1位反相,来生成插入1位错误的写入数据D_WR。在图4中,阴影部分表示被错误插入电路200a反相的位。在下文中,将参照图2A描述图4。可基于ECC引擎100a的可校正的位的数量和存储器300a的错误容限,来确定从相同的编码的数据D_ENC生成的写入数据D_WR被写入到存储器300a的相同的区域中的次数K。如图4的示例中所示,当N是2并且存储器300a的错误容限是1位时,输出包括由于存储器300a中的缺陷引起的两个或更多个实际的位错误realbiterror的读取数据D_RD的存储器300a可被确定为有缺陷的。当由于错误插入电路200a引起的位错误被插入到与由于存储器300a中的缺陷引起的实际的位错误相同的位置时,由于实际的位错误通过插入的位错误被校正,或者插入的位错误和实际的位错误作为一个位错误被包括在读取数据D_RD中,因此,插入位错误的影响可由于读取数据D_RD包括比实际的位错误更少的位错误而被消除。因此,在ECC引擎100a处理读取数据D_RD的过程中,读取数据D_RD的错误可被正常地校正,并且将被确定为有缺陷的存储器300a可被确定为可接受。为了防止由错误插入电路200a插入的位错误布置在与实际的位错误相同的位置中,错误插入电路200a可改变插入位错误的位置。在图4的示例中,为了确定输出包括两个实际的位错误的读取数据D_RD的存储器300a是有缺陷的,错误插入电路200a可在三个不同位置顺序地生成包括位错误的写入数据D_WR。参照图4,写入数据D_WR可包括x位数量的数据位D1至Dx和y位数量的奇偶校验位P1至Pyn=x+y,错误插入电路200a可通过使数据位的第一数据位D1反相来插入位错误。通过使来自编码的数据D_ENC的第一数据位D1反相获得的写入数据D_WR可被写入存储器300a中,并且可通过读取存储在写入数据D_WR被写入的存储器300a的区域中的数据,将读取数据D_RD提供给ECC引擎100a。然后,错误插入电路200a可通过使数据位的第三数据位D3反相来插入位错误。通过使来自编码的数据D_ENC的第三数据位D3反相获得的写入数据D_WR可被写入存储器300a中,并且可通过读取存储在写入数据D_WR被写入的存储器300a的区域中的数据,将读取数据D_RD提供给ECC引擎100a。最后,错误插入电路200a可通过使数据位的第五数据位D5反相来插入位错误。通过使来自编码的数据D_ENC的第五数据位D5反相获得的写入数据D_WR可被写入存储器300a中,并且可通过读取存储在写入数据D_WR被写入的存储器300a的区域中的数据,将读取数据D_RD提供给ECC引擎100a。将理解,图4中插入位错误的位置仅是示例,位错误可被插入到任意的三个不同位置中。当N位校正ECC引擎100a被使用,并且存储器300a的错误容限是1位时,作为针对存储器300a的相同的区域的写入和读取操作的重复次数K可以与N+1一致。在一些示例实施例中,如果写入数据或读取数据的位数相对较大即,如果由ECC引擎100a处理的数据的单元的大小相对较大,则插入在不同位置的所有位错误不可能位于与实际的位错误相同的位置。因此,错误插入电路200a可执行少于三次例如,两次写入和读取操作,而不是执行三次写入和读取操作。例如,在图4的示例中,不可能在第一数据位D1和第三数据位D3二者中均存在实际的位错误,从而可通过仅执行两次写入和读取操作来缩短存储器300a或装置10a的测试时间。图5是示出根据本发明构思的示例实施例的测试用于支持ECC的装置的方法的流程图。更详细地讲,图5示出在测试模式下测试图2A的装置10a的方法。在下文中,将参照图2A描述图5。在操作S110中,可执行初始化操作。例如,如图5中所示,变量i可被设置为1,并且变量i可指示被执行以在编码的数据D_ENC中的不同位置插入位错误的操作的次数即,执行后续一系列操作S121至S126的次数。在操作S121中,可执行使编码的数据D_ENC的至少一个位反相的操作。例如,响应于模式信号C_MODE指示测试模式,错误插入电路200a可通过使编码的数据D_ENC的至少一个位反相来生成写入数据D_WR。可在操作S122中执行将写入数据D_WR写入到存储器300a的操作,并且可在操作S123中执行从存储器300a读取写入的数据的操作。可通过读取存储在写入数据D_WR被写入的存储器300a的区域中的数据,来从存储器300a输出读取数据D_RD。在操作S124中,可校正读取数据D_RD的错误。例如,ECC引擎100a可从存储器300a接收读取数据D_RD,并且可校正读取数据D_RD中的错误。然后,在操作S125中,可确定错误校正是否成功。例如,ECC引擎100a可具有可校正位的数量,因此,包含超过可校正位的数量的错误的读取数据D_RD的错误校正可能失败。如果错误校正失败,则可随后执行操作S130,并且可在操作S130中执行确定存储器300a是有缺陷的操作。另一方面,如果错误校正成功,则可随后执行操作S126。在操作S126中,可确定变量i是否等于K。也就是说,可确定写入和读取操作是否已经执行了K次。如上面参考图4所述,可基于ECC引擎100a的可校正错误量和存储器300a的错误容限来确定K。如果变量i等于K,则随后可执行操作S140,并且可在操作S140中执行确定存储器300a是可接受的操作。另一方面,如果变量i不等于K,则在操作S127中,变量i可增加1,然后可随后执行操作S121。在操作S121中,与先前反相的位的位置不同的位置的位可被反相。图6A和6B是示出根据本发明构思的示例实施例的测试用于支持ECC的装置的方法的流程图。更详细地讲,图6A和图6B示出在测试模式下测试图2B的装置10b的方法。在下文中,将参照图2B描述图6A和图6B。此外,与图2B中附图标号相同的附图标号表示相同的元件,因此,在此将不再给出图6A和图6B的重复描述。参照图6A,在操作S210中,可执行初始化操作。例如,如图6A中所示,变量i可被设置为1,变量i可指示被执行以在读取数据D_RD中的不同位置插入位错误的操作的次数即,执行一系列操作S231至S235的次数。在操作S220中,写入数据D_WR可被写入。如图6A中所示,用于验证存储器300b的特定区域的写入数据D_WR可被写入一次,并且如稍后下面所述,可重复通过读取存储的写入数据D_WR来输出读取数据D_RD的操作。这样,与图5的示例相比,可在图6A和图6B的示例中,减少写入操作的次数,因此,测试存储器300b所花费的时间可相对缩短。在操作S231中,可读取存储的写入数据D_WR。可通过读取存储在写入数据D_WR被写入的存储器300b的区域中的数据,来从存储器300b输出读取数据D_RD。在操作S232中,可使读取数据D_RD的至少一个位反相。例如,响应于模式信号C_MODE指示测试模式,错误插入电路200b可通过使读取数据D_RD的至少一个位反相来生成接收数据D_RX。在操作S233中,可校正接收数据D_RX的错误。例如,ECC引擎100b可从错误插入电路200b接收接收数据D_RX,并且可校正接收数据D_RX中的错误。然后,在操作S234中,可确定错误校正是否成功。例如,ECC引擎100b可具有可校正位的数量,因此,包含超过可校正位的数量的错误的接收数据D_RX的错误校正可能失败。如果错误校正失败,则可随后执行操作S240,并且可在操作S240中执行确定存储器300b是有缺陷的操作。另一方面,如果错误校正成功,则可随后执行操作S235。在操作S235中,可确定变量i是否等于K。也就是说,可确定读取操作是否已经执行了K次。如上面参照图4所述,可基于ECC引擎100b的可校正错误量和存储器300b的错误容限来确定K。如果变量i等于K,则可随后执行操作S250,并且可在操作S250中执行确定存储器300b是可接受的操作。另一方面,如果变量i不等于K,则在操作S236中,变量i可增加1,然后可随后执行操作S231。在操作S231中,与先前反相的位的位置不同的位置的位可被反相。参照图6B,与图6A的示例相比,写入数据D_WR的写入操作可执行一次,以验证存储器300b的特定区域,并且存储的写入数据D_WR的读取操作也可执行一次。也就是说,由于通过重复地读取存储的写入数据D_WR而输出的读取数据D_RD是相同的,因此,可重复仅通过错误插入电路200b改变读取数据D_RD中的位错误的位置的操作。如图6B中所示,图6B的操作可以与图6A的相应操作相同或相似。然而,如果在图6B的操作S235'中变量i不等于K,则在操作S236'中变量i可增加1,并且可在操作S236'之后执行操作S232'而不是执行操作S231'。因此,操作S220'中写入写入数据D_WR的操作以及操作S231'中读取写入的数据的操作均可被执行一次,并且可在操作S232'中重复使读取数据D_RD的至少一个位反相的操作。因此,与图6A的示例相比,根据图6B的示例,存储器300b的读取操作的次数可被减少。图7A至7C是示出根据本发明构思的示例实施例的位选择电路的示例的框图。如上面参照图3A和图3B所述,图7A至图7C的位选择电路210a、位选择电路210b和位选择电路210c可接收模式信号C_MODE,并可输出选择信号SEL。在下文中,将参考图1描述图7A至图7C,在此将不再给出图7A至图7C的重复描述。参照图7A,位选择电路210a可包括位模式211。位选择电路210a可响应于模式信号C_MODE指示测试模式而生成选择信号SEL,使得在根据位模式211的位置,插入位错误。例如,如上面参照图4所述,当位错误被插入在三个不同位置中时,位模式211可包括三种不同的模式。参照图7B,位选择电路210b可包括随机数生成器212。响应于模式信号C_MODE指示测试模式,位选择电路210b可生成选择信号SEL,使得在根据由随机数生成器212生成的随机数的位置,插入位错误。在一些示例实施例中,随机数生成器212可以是伪随机数生成器。参照图7C,位选择电路210c还可接收指示测试模式的设置信息的设置信号C_SET。例如,设置信号C_SET可从自图1中的装置10的外部接收的信号来生成,并且可包括位选择电路210c的设置信息。在一些示例实施例中,设置信号C_SET可确定针对存储器300的相同的区域的错误校正操作的次数即,K。例如,如果ECC引擎100的可校正错误量是固定的,则K可根据设置信号C_SET来改变,以调节存储器300的错误容限。此外,如上面参照图4所述,为了缩短测试时间,例如,K可根据设置信号C_SETE来改变,以等于或小于与ECC引擎100的可校正错误量对应的次数。图8是示出根据本发明构思的示例实施例的测试用于支持ECC的装置的方法的流程图。例如,图8的方法可表示在测试模式下测试图1的装置10的方法。在图8中,图1中的编码的数据D_ENC和写入数据D_WR可被统称为写入数据,并且读取数据D_RD和接收数据D_RX可被统称为读取数据。例如,通过将错误插入到图1中的编码的数据D_ENC中来生成写入数据D_WR可被称为将错误插入到写入数据中,通过将错误插入到读取数据D_RD中来生成接收数据D_RX可被称为将错误插入到读取数据中。在下文中,将参照图1来描述图8。在操作S20中,可通过对输入数据进行编码来生成写入数据。例如,图1的ECC引擎100可通过向输入数据D_IN添加冗余来生成写入数据。在操作S40中,可将写入数据写入存储器300中,并且可从存储器300输出读取数据。例如,可将写入数据写入存储器300的特定区域中,并且可通过读取存储在写入数据被写入的区域中的数据来输出读取数据。错误插入电路200可将错误插入到将被写入存储器300中的数据即,写入数据中,或者可将错误插入到从存储器300读取的数据即,读取数据中。此外,在一些示例实施例中,错误插入电路200可将错误插入到写入数据和读取数据两者中。如图8中所示,操作S40可包括操作S42。在操作S42中,写入数据和或读取数据中的至少一个位可被反相。例如,错误插入电路200可包括位错误电路BE,并且可通过激活至少一个位错误电路BE来使写入数据和或读取数据的至少一个位反相。去激活的位错误电路BE可输出输入的位信号。在操作S60中,可通过校正读取数据的错误来生成输出数据D_OUT。例如,图1的ECC引擎100可通过校正读取数据的错误来生成输出数据D_OUT。在操作S80中,可检测存储器300的缺陷。在一些示例实施例中,如上面参照图5等所述,可根据操作S60中错误校正是否成功来检测存储器300中的缺陷。在一些示例实施例中,如稍后下面参照图9所述,可基于在操作S60中生成的输出数据来检测存储器300中的缺陷。图9是示出根据本发明构思的示例实施例的图8的操作S80的示例的流程图。如上面参照图8所述,可检测存储器的缺陷。如图9中所示,操作S80'可包括多个操作S82、S84和S86,并且可参照图1和图8描述图9。在一些示例实施例中,可通过在图1的装置10外部将输入数据D_IN提供给装置10并接收输出数据D_OUT的测试装置来执行操作S80'。测试装置可使用模式信号C_MODE将装置10设置为测试模式。可将输入数据D_IN提供给设置在测试模式下的装置10,并接收与提供的输入数据D_IN对应的输出数据D_OUT。在操作S82中,可确定输入数据D_IN和输出数据D_OUT是否彼此一致。例如,测试装置可确定提供给装置10的输入数据D_IN和对应的输出数据D_OUT是否彼此一致。在通过编码处理将输入数据D_IN存储在存储器300中之后,可从从存储器300读取的数据接收错误校正的输出数据D_OUT,并且测试装置可将输入数据D_IN与输出数据D_OUT进行比较。如上面参照附图所述,错误可被插入到从输入数据D_IN编码的数据中,并且错误可被插入到从存储器300读取的数据中。不管插入的错误,如果输入数据D_IN和输出数据D_OUT彼此一致,则存储器300可被确定为具有足够的错误容限,并且在操作S84中存储器300被确定为可接受的。另一方面,如果输入数据D_IN和输出数据D_OUT彼此不一致,则存储器300可被确定为具有不足的错误容限,并且在操作S86中存储器300可被确定为有缺陷。图10是示出根据本发明构思的示例实施例的用于支持ECC的装置的示例的框图。更详细地讲,图10示出包括作为噪声通道的单元阵列21的存储器装置20。存储器装置20可接收命令CMD和地址ADDR,并且可接收或发送数据DATA。例如,存储器装置20可从存储器控制器接收命令CMD诸如,写入命令、读取命令等以及与命令CMD对应的地址ADDR。此外,存储器装置20可从存储器控制器接收数据DATA即,输入数据或者将数据DATA即,输出数据提供给存储器控制器。虽然图10分别示出命令CMD、地址ADDR和数据DATA,但是在一些示例实施例中,命令CMD、地址ADDR和数据DATA中的至少两个可通过相同的通道发送。如图10中所示,存储器装置20可包括单元阵列21、读写电路22、错误插入电路23、ECC引擎24、行解码器25_1、列解码器25_2、地址寄存器26_1、数据寄存器26_2、控制逻辑27和输入输出电路28。单元阵列21可包括多个存储器单元并且可存储数据。由于包括在单元阵列21中的缺陷,可能发生通过读写电路22从单元阵列21读取的数据与在单元阵列21中写入的数据不同的错误。为了校正错误,ECC引擎24可通过对与写入命令CMD一起接收的数据DATA即,输入数据进行编码来生成数据,并且可响应于读取命令CMD生成通过校正从单元阵列21读取的数据中的错误而生成的数据DATA即,输出数据。错误插入电路23可从输入输出电路28接收模式信号C_MODE,并且可响应于模式信号C_MODE指示测试模式,将错误插入到在读写电路22与ECC引擎24之间传输的数据中。此外,错误插入电路23可改变将被插入的错误的位置。由错误插入电路23插入的错误量可对应于单元阵列21的错误容限。因此,可容易地验证单元阵列21是否具有足够的错误容限,因此,存储器装置20中的缺陷可被容易地检测。行解码器25_1可根据从地址寄存器26_1提供的行地址激活连接到单元阵列21的多条字线中的至少一条字线。列解码器25_2可根据从地址寄存器26_1提供的列地址来选择从连接到激活的字线的存储器单元输出的信号中的一些信号。地址寄存器26_1可从输入输出电路28接收并存储地址ADDR。数据寄存器26_2可存储从输入输出电路28接收的数据,并且可将存储的数据提供给ECC引擎24。此外,数据寄存器26_2可存储从ECC引擎24接收的数据,并且可将存储的数据提供给输入输出电路28。控制逻辑27可根据由输入输出电路28接收的命令CMD来生成用于存储器装置20的操作的控制信号,并且控制信号可被分别提供给包括在存储器装置20中的组件。输入输出电路28可从存储器装置20的外部接收命令CMD、地址ADDR和数据DATA,并输出数据DATA。在一些示例实施例中,输入输出电路28可对命令CMD进行解码,并将解码的结果提供给控制逻辑27。图11是示出根据本发明构思的示例实施例的用于支持ECC的装置的示例的框图。更详细地讲,图11示出包括作为噪声通道的存储器装置32的存储器系统30以及与其通信的主机40。存储器系统30可经由接口50与主机40通信。存储器系统30和主机40彼此通信的接口50可使用电信号和或光信号,并且可通过以下方式实现,但不限于以下方式:串行高级技术附件SATA接口、SATA快速SATAe接口、串行连接小型计算机系统接口SAS、外围组件互连快速PCIe接口、非易失性存储器NVMe接口、高级主机控制器接口AHCI或其组合。在一些示例实施例中,存储器系统30可通过可移除地连接到主机40来与主机40通信。存储器装置32可以是作为电阻存储器的非易失性存储器,存储器系统30可被称为作为储存系统。例如,存储器系统30可通过以下方式实现,但不限于以下方式:固态驱动器或固态硬盘SSD、嵌入式SSDeSSD、多媒体卡MMC、嵌入式多媒体卡eMMC等。如图11中所示,存储器系统30可包括控制器31和至少一个存储器装置32。至少一个存储器装置32可从控制器31接收命令CMD和地址ADDR,并且可接收或发送数据DATA。控制器31可响应于通过接口50从主机40接收的请求来控制至少一个存储器装置32。例如,控制器31可响应于写入请求将与写入请求一起接收的数据写入至少一个存储器装置32中,或者可响应于读取请求将存储在至少一个存储器装置32中的数据提供给主机40。如图11中所示,控制器31可包括错误插入电路31_1和ECC引擎31_2。在一些示例实施例中,错误插入电路31_1可将错误插入到通过ECC引擎31_2在测试模式下对来自主机40的请求写入的数据进行编码而获得的数据中,并且可将错误插入的数据作为写入数据提供给至少一个存储器装置32。在一些示例实施例中,响应于在测试模式下主机40的读取请求,错误插入电路31_1可将错误插入从至少一个存储器装置32读取的数据中,并且可将错误插入的数据提供给ECC引擎31_2。此外,错误插入电路31_1可改变将被插入的错误的位置。由错误插入电路31_1插入的错误量可对应于至少一个存储器装置32的错误容限。因此,可容易地验证至少一个存储器装置32是否具有足够的错误容限。虽然已经参照本发明构思的示例实施例具体示出并描述了本发明构思,但是将理解,在不脱离权利要求的精神和范围的情况下,可在其中进行形式和细节上的各种改变。

权利要求:1.一种用于支持用于存储器测试的测试模式的装置,所述装置包括:存储器,被配置为:接收并存储写入数据,并且从存储的写入数据输出读取数据;纠错码ECC引擎,被配置为:通过对输入数据进行编码来生成写入数据,并且通过校正包括在接收数据中的N位或更少位的错误来生成输出数据,其中,N是正整数;错误插入电路,被配置为:在正常模式下将读取数据作为接收数据提供给ECC引擎,并且在测试模式下将通过使读取数据的小于N位的至少一个位反相而获得的数据作为接收数据提供给ECC引擎。2.根据权利要求1所述的装置,其中,错误插入电路还被配置为:在测试模式下,改变从存储器连续输出K次的读取数据中的所述至少一个位的位置,其中,K是等于或大于2的整数。3.根据权利要求2所述的装置,其中,错误插入电路还被配置为:在测试模式下,改变所述至少一个位的位置使得从存储器连续输出K次的读取数据中反相的位的位置彼此不同。4.根据权利要求2所述的装置,其中,K等于N+1。5.根据权利要求2所述的装置,其中,K等于或小于N,并且K基于由ECC引擎处理的数据的大小来确定。6.根据权利要求2所述的装置,其中,错误插入电路还被配置为:根据从装置的外部接收的设置信号来确定K。7.根据权利要求2所述的装置,其中,错误插入电路还被配置为:根据K个位模式改变所述至少一个位的位置。8.根据权利要求2所述的装置,其中,错误插入电路还被配置为:根据每次读取错误插入电路时生成的随机数来改变所述至少一个位的位置。9.根据权利要求1所述的装置,其中,错误插入电路还被配置为:在测试模式下使读取数据的一个位反相。10.根据权利要求1所述的装置,其中,存储器包括单元阵列,其中,单元阵列包括多个存储器单元,所述装置是被配置为响应于外部地接收的命令和地址来接收输入数据或输出输出数据的存储器装置。11.根据权利要求1所述的装置,其中,存储器是被配置为接收命令和地址的存储器装置,所述装置是被配置为响应于外部地接收的请求来接收输入数据或输出输出数据的存储器系统。12.一种用于支持用于存储器测试的测试模式的装置,所述装置包括:存储器,被配置为:接收并存储写入数据,并且从存储的写入数据输出读取数据;纠错码ECC引擎,被配置为:通过对输入数据进行编码来生成编码的数据,并且通过校正包括在读取数据中的N位或更少位的错误来生成输出数据,其中,N是正整数;错误插入电路,被配置为:在正常模式下将编码的数据作为写入数据提供给存储器,并且在测试模式下将通过使编码的数据的小于N位的至少一个位反相而获得的数据作为写入数据提供给存储器。13.根据权利要求12所述的装置,其中,错误插入电路还被配置为:在测试模式下,改变在存储器中连续写入K次的编码的数据中的所述至少一个位的位置,其中,K是等于或大于2的整数。14.根据权利要求13所述的装置,其中,错误插入电路还被配置为:在测试模式下,改变所述至少一个位的位置使得在存储器中连续写入K次的编码的数据中的反相的位的位置彼此不同。15.一种测试包括纠错码ECC引擎和存储器的装置的方法,所述装置被配置为当N是正整数时校正N位或更少位的错误,所述方法包括:由ECC引擎通过对输入数据进行编码来生成写入数据;将写入数据写入存储器中,读取写入数据,并输出读取数据;由ECC引擎通过校正读取数据的错误来生成输出数据,其中,写入写入数据的步骤和输出读取数据的步骤包括:使写入数据和读取数据中的至少一个中的少于N位的至少一个位反相。16.根据权利要求15所述的方法,其中,使所述至少一个位反相的步骤包括:使读取数据中的小于N位的至少一个位反相;改变从存储器连续输出K次的读取数据中的所述至少一个位的位置,其中,K是等于或大于2的整数。17.根据权利要求15所述的方法,其中,使所述至少一个位反相的步骤包括:使写入数据中的小于N位的至少一个位反相;改变在存储器中连续写入K次的写入数据中的所述至少一个位的位置,其中,K是等于或大于2的整数。18.根据权利要求15所述的方法,还包括:基于输入数据和输出数据检测存储器的缺陷。19.根据权利要求15所述的方法,其中,生成输出数据的步骤包括:由ECC引擎检测读取数据中的错误位的校正是否成功,并且基于校正是否成功来检测存储器的缺陷。20.根据权利要求15所述的方法,还包括:接收指示测试模式的设置信息的设置信号,在测试模式下执行使所述至少一个位反相的操作。

百度查询: 三星电子株式会社 用于支持纠错码的装置及其测试方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。