在顺序写入当中进行校验处理的非易失性的存储器的制作方法

文档序号:6776600阅读:202来源:国知局
专利名称:在顺序写入当中进行校验处理的非易失性的存储器的制作方法
技术领域
本发明涉及可改写数据的半导体存储装置、顺序存取的半导体存储装 置以及针对顺序存取的半导体存储装置的数据写入控制方法。
背景技术
EEPROM或闪速ROM等可改写数据的半导体存储装置多被用作各种 电子设备的存储装置。在电子设备中,有时希望以如下方式来使用这种半 导体存储装置,S卩对满足预先确定的数据条件的输入数据的改写不作限 制,但对不满足该数据条件的输入数据的改写进行限制。例如,可考虑设 定"只有在改写数据大于半导体存储装置中存储的数据(称为"被改写数 据")时才执行改写"的条件、或者"只有在改写数据小于半导体存储装 置中存储的数据(称为"被改写数据")时才执行改写"的条件。
然而,以往可改写的半导体存储装置不具有限制数据的改写的系统, 只要满足用于改写数据的规定的顺序就可对存储的数据进行改写,因此, 无法适用于如上所述数据条件下的改写。
作为对存储装置的数据写入进行控制的技术,例如公知的有在存储装 置的外部设置针对存储装置的写入禁止装置。或者,公知的还有如下技 术,即当使用存储装置时,通过在存储装置的位于数据保存区域之后的 地址中写入用于表示不允许对数据保存区域进行写入的信息来禁止对数据 保存区域进行写入。
此外,公知的还有对于存储阵列的数据单元只允许顺序存取的半导体 存储装置、例如EEPROM。这种半导体存储装置因为比较便宜,所以被用 作用于保持与耗材的余量或者消耗量相关的数据的存储装置。在这里,存 储阵列的内部结构一般为x行Xy列格子状,各数据单位保存l位的数据
时,每l行可以保存y位数据。

发明内容
但是,因为一般以行为单位管理对存储阵列的存储,所以对这样的数
据单元写入y位的n倍(n为2以上的整数)数据时,只能把数据分成n 次进行写入。结果与ny位数据一次性写入时相比,因要进行n次写入操 作,没有正常完成写入的可能性提高了。
虽然使用x行Xny列存储阵列可以解决这个问题,但是当y位数据写 入装置和ny位数据写入装置共用具有x行Xny列存储阵列的半导体存储 装置时,不使用x行Xny列存储阵列的一部分列(数据单元)。结果发生 不能有效地灵活利用存储阵列的问题,并因为以顺序存取方式存取目标数 据单元,对不必要的数据单元也要进行存取,所以存在降低存取速度的问 题。
本发明是为了解决上述问题而做出的,其目的在于,提高数据的写入 可靠性,该数据为比半导体存储装置的存储阵列中的1行所能保存的数据 长度还长的数据长度。本发明的目的还在于,在半导体存储装置中禁止写 入不满足规定的数据条件的输入数据。
为了解决上述问题,本发明的第一方面提供一种半导体存储装置。本 发明第一方面涉及的半导体存储装置,其中包括顺序存取的非易失性存 储阵列,具有多个规定的地址单位的数据保存行;写入数据保持模块,以 所述规定的地址单位保持相当于所述规定的地址单位的n倍(n为2以上 的整数)数据容量的写入数据,该数据为应写入所述存储阵列的写入数 据;数据写入模块,以所述规定的地址单位,向所述存储阵列中成为对象 数据保存行写入所述保持的写入数据;数据验证模块,判定写入所述对象 数据保存行的所述规定的地址单位的己写入数据、和所述写入数据保持模 块所保持的所述规定的地址单位的写入数据是否一致;以及控制部,当所 述已写入数据和所述写入数据不一致时,不执行由数据写入模块对所述对 象数据保存行的下一个数据保存行进行的剩余所述写入数据的写入。
根据本发明第一方面涉及的半导体存储装置,当以所述规定的地址单 位向所述存储阵列的数据保存行写入可保存并相当于规定的地址单位n倍
的数据容量的写入数据时,判定写入对象数据保存行的所述规定的地址单 位的已写入数据、和写入数据保持模块所保持的所述规定的地址单位的写 入数据是否一致,当不一致时,不执行由数据写入模块对所述对象数据保 存行的下一个数据保存行进行的剩余所述写入数据的写入。因此能够提高 数据的写入可靠性,该数据为比半导体存储装置的存储阵列中的1行所能 保存数据长度还长的数据长度。
在本发明第一方面涉及的半导体存储装置中,当所述己写入数据和所 述写入数据一致时,所述控制部也可以执行由所述写入模块对所述对象数 据保存行的下一个数据保存行进行的所述写入数据的写入,在这种情况 下,边维持数据的可靠性,边向存储阵列依次写入剩余的写入数据。
在本发明第一方面涉及的半导体存储装置中,所述数据验证模块也可 以在结束了对所述对象数据保存行写入所述写入数据后,以所述地址单位 从所述对象数据保存行读出所述已写入数据,并且,用所述读出的所述规 定的地址单位的所述已写入数据和所述规定的地址单位的写入数据,来判 定所述已写入数据和所述写入数据是否一致。在这种情况下,以所定的地 址单位,能够判定已写入数据和写入数据是否一致。
在本发明第一方面涉及的半导体存储装置中,所述数据验证模块也可 以在结束了对所述对象数据保存行写入所述写入数据后,从所述对象数据 保存行以每1地址读出所述已写入数据,并从所述写入数据保持模块以1 地址单位取得写入数据,并且,用读出的所述规定的l地址单位的所述己 写入数据和所述取得的l地址单位的写入数据,来判定所述已写入数据和 所述写入数据是否一致。在这种情况下,以1地址单位,能够判定已写入 数据和写入数据是否一致。
在本发明第一方面涉及的半导体存储装置中,所述半导体存储装置, 其中也可以包括现有数据保存模块,保存在写入所述写入数据前保存在 所述对象数据保存行中的现有数据;数据写回模块,当所述数据验证模块 判定为所述己写入数据和所述写入数据不一致时,将所述现有数据保存模 块保存的所述现有数据写入所述对象数据保存行中。在这种情况下,能够 将保存在存储阵列的数据,返回为写入写入数据之前的值。
在本发明第一方面涉及的半导体存储装置中,也可以在所述数据保存 行中,从最高的位开始依次保存数据,所述数据写入模块从最高的位开始 依次向所述存储阵列执行数据的写入。在这种情况下,能够更加迅速的执 行写入数据的值和读出的现有数据的值是否一致的判定。
本发明的第二方面提供一种半导体存储装置。本发明第二方面涉及的 半导体存储装置,其中包括顺序存取的非易失性存储阵列,具有多个数 据保存行,该数据保存行具有8个保存1位数据的数据单元;写入数据保
持模块,以8位为单位保持n倍(n为2以上的整数)于8位的写入数 据,该写入数据为应写入所述存储阵列中的写入数据;数据写入模块,以 8位为单位,向所述存储阵列中作为写入对象的对象数据保存行写入所述 保持的写入数据;数据验证模块,判定写入所述对象数据保存行的8位己 写入数据和所述写入数据保持模块所保持的8位写入数据是否一致;以及 控制部,当所述己写入数据和所述写入数据不一致时,不执行由数据写入 模块对所述对象数据保存行的下一个数据保存行进行的剩余所述写入数据 的写入。
根据本发明第一方面涉及的半导体存储装置,当以8位的单位,向所 述存储阵列的数据保存行写入可保存并相当于规定的8位的n倍的数据容 量的写入数据时,判定写入对象数据保存行的8位的单位的已写入数据、 和写入数据保持模块所保持的8位的单位的写入数据是否一致,当不一致 时,不执行由数据写入模块对所述对象数据保存行的下一个数据保存行进
行的剩余所述写入数据的写入。因此能够提高数据的写入可靠性,该数据 为比半导体存储装置的存储阵列中的1行所能保存数据长度还长的数据长
在本发明第二方面涉及的半导体存储装置中,当所述已写入数据和所 述写入数据一致时,所述控制部也可以执行由所述写入模块对所述对象数 据保存行的下一个数据保存行进行的所述写入数据的写入,在这种情况 下,边维持数据的可靠性,边向存储阵列依次写入剩余的写入数据。
本发明第三方面提供一种写入控制方法,用于向半导体存储装置写入 相当于规定的地址单位n倍的数据容量的写入数据,该半导体存储装置具 有被顺序存取的非易失性的存储阵列,该存储阵列具有多个规定的地址单 位的数据保存行。本发明第三方面涉及的写入控制方法,其特征包括接
收相当于所述规定的地址单位n倍(n为2以上的整数)的数据容量的写
入数据,以所述规定的地址单位保持所述接收的写入数据,以所述规定的 地址单位,向所述存储阵列中作为写入对象的对象数据保存行写入所述保 持的写入数据,判定写入所述对象数据保存行的所述规定的地址单位的已 写入数据、和所述保持的所述规定的地址单位的写入数据是否一致,当所 述已写入数据和所述写入数据不一致时,不执行对所述对象数据保存行的 下一个数据保存行进行的剩余所述写入数据的写入。
根据本发明第三方面涉及的写入控制方法,能够得到与本发明第一方 面涉及的半导体存储装置同样的作用效果,并且本发明第三方面涉及的写 入控制方法,能够与本发明第一方面涉及的半导体存储装置同样的在种种 方面可实现。
本发明第三方面涉及的写入控制方法,也可以判定写入所述下一个数 据保存行的所述规定的地址单位的已写入数据、和所述保持的所述规定的 地址单位的写入数据是否一致,当所述己写入数据和所述写入数据不一致 时,不执行对所述下一个数据保存行的下一个数据保存行进行的剩余所述 写入数据的写入。并且,当所述已写入数据和所述写入数据一致时,执行 对所述下一个对象数据保存行的下一个数据保存行进行的所述地址单位的 写入数据的写入。在这种情况下,能够提高对存储阵列的多个数据保存行 写入数据的写入可靠性。
本发明第四方面提供一种写入控制方法,用于向半导体存储装置写入
n倍(n为2以上的整数)于8位的写入数据,所述半导体存储装置具有被 顺序存取的非易失性的存储阵列,该存储阵列具有多个数据保存行,并且 所述数据保存行具有8个保存l位数据的数据单元。本发明第四方面涉及 的写入控制方法特征包括接收所述n倍于8位的数据长度的写入数据, 以8位单位保持所述接收的写入数据,以8位为单位,向所述存储阵列中 作为写入对象的对象数据保存行写入所述保持的写入数据,判定写入所述 对象数据保存行的8位单位的已写入数据和所述保持的8位单位的写入数
据是否一致,当所述已写入数据和所述写入数据不一致时,不执行对所述 对象数据保存行的下一个数据保存行进行的剩余所述写入数据的写入。
根据本发明第四方面涉及的写入控制方法,能够得到与本发明第二方 面涉及的半导体存储装置同样的作用效果,并且本发明第四方面涉及的写 入控制方法,能够与本发明第二方面涉及的半导体存储装置同样的在种种 方面可实现。
本发明第四方面涉及的写入控制方法,也可以判定写入所述下一个数
据保存行的8位单位的已写入数据、和所述保持的8位单位的写入数据是
否一致,当所述已写入数据和所述写入数据不一致时,不执行对所述下一 个数据保存行的下一个数据保存行进行的剩余所述写入数据的写入。并 且,当所述已写入数据和所述写入数据一致时,执行对所述下一个对象数 据保存行的下一个数据保存行进行的所述地址单位的写入数据的写入。在 这种情况下,能够提高对存储阵列的多个数据保存行写入数据的写入可靠 性。
本发明的第五方面提供一种半导体存储装置。本发明第五方面涉及的
半导体存储装置,其中包括非易失性的存储阵列;以及读写控制器,控
制向所述存储阵列的数据写入以及从所述存储阵列的数据读出。所述读写 控制器在被请求对所述存储阵列进行数据的写入时,针对输入的多位写入 数据的值和存储于应写入所述多位写入数据的多位存储区域中的多位存储 数据的值,从所述多位写入数据中的最高的位开始以1位为单位依次进行 比较,当具有被判定为相对于所述存储数据的各位的值满足规定的大小关 系的位时,对于该被判定的位的写入数据执行写入后,检查对存储在执行 写入的存储区域中的存储数据和所述被判定的位的写入数据是否一致,当 一致时,执行所述被判定的位以后的位的写入数据的写入,当不一致时, 禁止所述被判定的位以后的位的写入数据的写入。
根据本发明第五方面涉及的半导体存储装置,能够禁止写入不满足规 定的大小关系的写入数据。并因执行判定为满足规定的大小关系的位的写 入数据的写入后,检查对存储在执行写入的存储区域中的存储数据和其被 判定的位的写入数据是否一致,当不一致时,能够禁止其被判定的位以后
的位的写入数据的写入,所以能够更加准确的禁止不满足规定的大小关系 的写入数据的写入。
本发明第五方面涉及的半导体存储装置,也可以为如下结构。本发明 第五方面涉及的半导体存储装置,其中包括非易失性的存储阵列;以及 读写控制器,控制向所述存储阵列的数据写入以及从所述存储阵列的数据 读出;所述读写控制器在被请求对所述存储阵列进行数据的写入时,针对 输入的多位写入数据的值和存储于应写入所述多位写入数据的多位存储区 域中的多位存储数据的值,从所述多位写入数据中的最高的位开始以1位 为单位依次进行比较,当具有判定为相对于所述存储数据的各个位的值满
足规定的大小关系的位时,将以其被判定的位为开头的n位(n是2m的整 数、m为1以上的整数)的写入数据集中写入后,检查存储在将所述被判 定的位进行了写入的存储区域中的存储数据、和所述被判定的位的写入数 据是否一致,当一致时,以n位为单位执行以所述被判定的位为开头的n 位以后的位的写入数据的写入,当不一致时,禁止以所述被判定的位为开 头的n位以后的位的写入数据的写入。
根据具有所述构成的本发明第五方面的半导体存储装置,能够禁止不 满足规定的大小关系的写入数据的写入。并因执行以被判定为满足规定的 大小关系的位为开头的n位的写入数据集中写入后,检查被判定为满足规 定的大小关系的位的写入数据、和存储在将其写入数据进行了写入的存储 区域中的存储数据是否一致,当不一致时,能够禁止被判定为满足规定的 大小关系的位以后的位的写入数据的写入,所以能够更加准确的禁止不满 足规定的大小关系的写入数据的写入。
本发明第五方面涉及的半导体存储装置,还能够以对于半导体存储装 置的写入控制方法、程序、以及记录了程序的计算机可读记录介质的形式 实现。
本发明第一、二以及五方面涉及的半导体存储装置,也可以为了保存 与所述印刷记录材料的量相关的信息而可装卸地安装在印刷装置上,并为 容纳印刷记录材料的印刷记录材料容器、即容纳所述印刷记录材料的容纳 部来使用。此时,能够提高与印刷记录材料量相关的信息的可靠性。
本发明第六方面提供一种印刷系统,其包括印刷装置以及可装卸地安 装在印刷装置上的印刷记录材料容器,该印刷记录材料容器具有本发明第 一、二以及五方面涉及的半导体存储装置。在本发明第六方面涉及的印刷 系统中,所述印刷装置具有主机,该主机与安装在所述印刷记录材料容器 上的半导体存储装置经由数据信号线、时钟信号线、复位信号线、正极电 源线、以及负极电源线而总线连接,并向所述半导体存储装置发送与在印 刷装置中消耗的印刷记录材料相关的量的信息,安装在所述印刷记录材料 容器上的半导体存储装置将接收的与印刷记录材料相关的量的信息保存到 所述存储阵列中。根据本发明第六方面,每当保存与随着印刷而消耗的印 刷记录材料的量相关的信息时,在半导体存储装置中,能够限制与写入数 据所具有的增减特性相反的值的数据的写入。


图1是示出第一实施例中的半导体存储装置的功能性内部结构的框
图2是示意性地示出第一实施例中的半导体存储装置所具有的存储阵 列的内部结构映射的说明图3是示意性地示出第一实施例中向半导体存储装置被写入的写入数 据结构的说明图4是示出第一实施例中的半导体存储装置进行读出动作时的复位信 号RST、外部时钟信号SCK、数据信号SDA、地址计数值的时间关系的 时序图5是示出第一实施例中的半导体存储装置进行写入动作时的复位信 号RST、外部时钟信号SCK、数据信号SDA、地址计数值的时间关系的 时序图6是示出由第一实施例中的半导体存储装置执行写入处理中的第一 数据校验处理的处理过程的流程图7是示出由第一实施例中的半导体存储装置执行写入处理中的第二 数据校验处理的处理过程的流程图8是示出第一实施例中的半导体存储装置的应用例的说明图9是示出第二实施例中的半导体存储装置的内部电路结构的框图IO是示出第二实施例中数据写入动作的步骤流程图11是示出第三实施例中的半导体存储装置的内部电路结构的框
图12是示出第三实施例中数据写入动作的歩骤流程图13是示出作为第三实施例的变形例的数据写入动作的步骤流程
图14是示出作为第三实施例的变形例的数据写入动作的歩骤流程图。
具体实施例方式
下面,参考附图并基于实施例,说明本发明中的半导体存储装置以及 针对半导体存储装置的数据写入控制方法。 第一实施例
(半导体存储装置的结构)
参考图1 图3,对第一实施例中的半导体存储装置的结构进行说 明。图1是示出第一实施例中的半导体存储装置的功能性内部结构的框 图。图2是示意性地示出第一实施例中的半导体存储装置所具有的存储阵 列的内部结构映射的说明图。图3是示意性地示出第一实施例中被写入到 半导体存储装置的写入数据结构的说明图。
第一实施例中的半导体存储装置10是不必从外部输入地址数据的顺 序存取方式的存储装置,该地址数据用于指定存取目的地的地址。半导体 存储装置10包括存储阵列100、地址计数器110、 IN/OUT控制器120、 ID比较器130、读/写控制器140、增量控制器150、电荷泵电路160、 8位 锁存寄存器170。这些各电路通过总线式信号线而相连。
存储阵列100包括EEPROM阵列101和掩模型ROM阵列102。 EEPROM阵列101具有可对数据进行电擦除、可写入的EEPROM特性的 存储区域,用于本实施例的EEPROM阵列101,写入数据时可以不删除现
有数据而直接写入数据。掩模型ROM阵列102是具有在制造过程中被写 入数据且不能删除、改写的掩模型ROM特性的存储区域。
在存储阵列100的EEPROM阵列101和掩模型ROM阵列102中具有 多个数据单元(存储单元),该数据单元保存图2中示意性地示出的1位 的信息。在本实施例中,如图2所示,存储阵列100在l行中作为规定的 地址单位配置8个地址(相当于8位的数据量的地址),例如在 EEPROM阵列101的l行中配置了 8个数据单元(8位),在一列中配置 了 16个数据单元(16字),从而能够保存16字X8位(128位)的数 据。在掩模型ROM阵列102的l行中配置了 8个数据单元(8位), 一列 中配置了 8个数据单元(8字),从而能够保存8字X8位(64位)的数 据。
如图3所示,在本实施例中被写入存储阵列100的数据在开头3位里 有识别信息(ID0 ID2),在开头第4位里有写入/读出控制信息,该写入 /读出控制信息是为了指示写入和读出中的任一项。开头第五位及以后的位 里有写入数据,该写入数据是从最高的位(MSB)开始依次排序的16位 (D15 D0)。即,本实施例中的写入数据是存储阵列在1行中所能保存 的位长度,即2倍于8位数据长度的数据。
参照图2说明存储阵列100的地址映射。如上所述,本实施例中存储 阵列100具有EEPROM阵列101和掩模型ROM阵列102。 EEPROM阵列 101的开头3地址(第1行的A0 A2歹U, 3位)里保存着识别信息(ID 信息),用于识别各半导体存储装置。禁止对包括开头3地址第l行的写 入,例如,出厂后不能改写。
图2的例中,EEPROM阵列101的第9地址(08H) 第16地址 (0FH)及第17地址(10H) 第24地址(07H)里保存着在一定条件下 可改写的16位的信息。写入数据(D15 D0)被保存在这些各地址里并如 图3所示与各地址(08H 17H)——对应。S口,第1行(08H 0FH)里 被写入D15 D8的8位数据,第2行(10H 17H)里被写入D7 D0的8 位数据。而且,在本实施例中,可以把由该第9地址(08H) 第16地址 (0FH)及第17地址(10H) 第24地址(17H)组成的行称为写入限制
行,或者,可以把由该第9地址(08H) 第16地址(0FH)及第17地址 (10H) 第24地址(17H)组成的行称为规定地址单位。另外, 一定条 件是指,例如,保存的信息为有关墨水消耗量的信息时,指被写入数据的 值比现有数据的值大的情况,或者,保存的信息为有关墨水剩余量的信息 时,指被写入数据的值比现有数据的值小的情况。
EEPROM阵列101的第25地址及其以后的地址是禁止写入的读出专 用区域,例如出厂后不能进行改写。
掩模型ROM阵列102在制造存储阵列时被写入信息(数据),制造 存储阵列之后,即便在出厂前也不能进行写入。
本实施例中存储阵列100如上述具有以8位为单位的多个行,但各行 不是独立的数据单元列,可以说是通过将1条数据单元列以8位为单位折 弯起来而实现的。即,只不过是为了方便而把包含第9位的行称为第2字 节、把包含第17位的行称为第3字节。其结果,为了对存储阵列100中期 望的地址进行存取,需要从头开始依次存取,不能进行随机存取方式时能 进行的对目标地址直接的存取。
存储阵列100中的各数据单元与字线和位(数据)线相连,通过选择 (施加选择电压)对应的字线(行)并向对应的位线施加写入电压而向数 据单元写入数据。此外,选择对应的字线(行)、将对应的位线与 INZOUT控制器120连接,根据是否査出电流来读出数据单元的数据(l或 0)。本实施例中的规定地址单位可称为是通过向一条字线施加写入电压 而可写入的地址数(数据单元数)
列选择电路103根据由地址计数器110计数的外部时钟脉冲数,依次 将列(位线)与IN/OUT控制器120连接。行选择电路104根据由地址计 数器110计数的外部时钟脉冲数,依次向行(字线)施加选择电压。艮P, 在本实施例中的半导体存储装置10中,不使用地址数据对存储阵列100 进行存取,而是根据由专用地址计数器110计数的时钟脉冲数,对期望的 地址进行存取。
地址计数器110与复位信号端子RSTT、时钟信号端子SCKT、列选 择电路103、行选择电路104相连。地址计数器110是将经由复位信号端
子RSTT而被输入的复位信号设为0 (或者,低)时复位为初始值,在复 位信号被设为l后,与经由外部时钟信号端子SCKT而输入的时钟脉冲的 下降沿同步地对时钟脉冲数进行计数(增加计数值)。用于本实施例的地 址计数器110是保存8个时钟脉冲数的8位的地址计数器,该8个时钟脉 冲数与存储阵列100的1行的数据单元数(位数)相对应。而且,初始值 只要与存储阵列100的开头位置相关联,可以是任意的值,通常将0用作 初始值。
IN/OUT控制器120是用于向存储阵列100传送输入到数据信号端子 SDAT的写入数据,或者接收从存储阵列100读出的数据并将其输出给数 据信号端子SDAT的电路。IN/OUT控制器120与数据信号端子SDAT、 复位信号端子RSTT、存储阵列100、读/写控制器140相连,并根据来自 读/写控制器140的要求,切换控制对存储阵列100的数据传送方向以及对 数据信号端子SDAT (与数据信号端子SDAT连接的信号线)的数据传送 方向。在从数据信号端子SDAT到IN/OUT控制器120的输入信号线上连 接着8位锁存寄存器170,该8位锁存寄存器170临时保存从数据信号端 子SDAT输入的写入数据。
从数据信号端子SDAT经信号线而输入的数据列(MSB)达到8位为 止保持在8位锁存寄存器170中,聚齐8位时,保持的8位的数据被写入 到EEPROM阵列101中。8位锁存寄存器170是所谓的FIFO型移位寄存 器, 一旦新锁存输入数据的第9位,就会释放己锁存的第一位数据。
IN/OUT控制器120在接通电源和进行复位时,将对存储阵列100的 数据传送方向设定为读出方向,并将8位锁存寄存器170和IN/OUT控制 器120之间的输入信号线设为高阻抗,禁止对数据信号端子SDAT的数据 输入。此状态一直维持到读/写控制器140输入写入处理请求为止。从而, 输入复位信号后,经由数据信号端子SDAT输入的数据列的开头4位数据 不被写入存储阵列100中,另一方面,保存在存储阵列100的开头4位 (其中第4位是不关心的)中的数据被发送到ID比较器130。其结果,存 储阵列100的开头4位处于只读状态。
ID比较器130与时钟信号端子SCKT、数据信号端子SDAT、复位信 号端子RSTT相连,判定经由数据信号端子SDAT输入的输入数据列中包 含的识别数据与保存于存储阵列100 (EEPROM阵列101)中的识别数据 是否一致。详细地说,ID比较器100取得输入复位信号RST之后输入的 操作码的开头3位的数据,即识别数据。ID比较器130具有保存输入数据 列中包含的识别数据的3位寄存器(图中没有示出)、和保存经由 IN/OUT控制器120从存储阵列100取得的开头3位的识别数据的3位寄存 器(图中没有示出),通过两个寄存器的值是否一致来判定识别数据是否 一致。当识别数据一致时,ID比较器130向读/写控制器140发出存取允 许信号EN。输入复位信号RST (RST二0或低)ID比较器130就清除寄 存器的值。
读/写控制器140与IN/0UT控制器120、 ID比较器130、增量控制器 150、电荷泵电路160、时钟信号端子SCKT、数据信号端子SDAT、复位 信号端子RSTT相连。读/写控制器140是与输入复位信号RST之后的第4 个时钟信号同步地确认经由数据信号端子SDAT而输入的读Z写控制信息 (接3位ID信息之后的第4位信息)并将半导体存储装置10的内部动作 切换为写入或读出的某一动作的电路。具体地说,读/写控制器140收到 ID比较器130的存取允许信号AEN及增量控制器WEN1的写入允许信号 WEN1就对取得的读/写命令进行分析。如果是写入命令,则读/写控制器 140向IN/OUT控制器120发送将总线信号线的数据传送方向切换为写入 方向并允许写入的写入允许信号WEN2,并且请求电荷泵电路160生成写 入电压。
在本实施例中,当被写入到写入限制行中的写入数据DI为具有值增 大(增加)特性的数据时,判断写入数据DI是否为大于写入限制行中已 保存的现有数据DE的值,当写入数据DI为具有值变小(减少)的特性的 数据时,判断写入数据DI是否为小于写入限制行中已保存的现有数据DE 的值,由此降低或防止写入数据DI的数据变化以及错误数据的输入。该 功能在前者的情况下由增量控制器提供,在后者的情况下由减量控制器提 供。在本实施例中,在下面的说明中以前者为例进行说明。
增量控制器150通过信号线与复位信号端子RSTT、读/写控制器 140、电荷泵电路160相连。增量控制器150内部具有4位计数器151以及 8位内部寄存器152、 153。增量控制器150判断被写入到写入限制行中的 写入数据DI是否为大于写入限制行中已保存的现有数据DE的值,而且对 写入到EEPROM阵列101中的数据是否被正确写入(校验,验证)进行
增量控制器150在将写入数据DI锁存到8位锁存寄存器170中的定时 (timing),从EEPROM阵列101的写入限制行读出现有数据DE,并将 其保存到位于内部的8位内部寄存器152中。增量控制器150以1位为单 位比较读出的现有数据DE和输入8位锁存寄存器170中的写入数据DI, 判定写入数据DI是否为比现有数据DE大的值的数据。为了快速处理,输 入的写入数据最好为MSB。
当写入数据DI是比现有数据DE大的值的数据时,增量控制器150向 读/写控制器140输出写入允许信号WEN1。当写入限制行包括多个行时, 只有在所有写入限制行中写入数据DI为比现有数据DE大的值的数据的情 况下,增量控制器150才输出写入允许信号WEN1。
写入写入数据后,增量控制器150验证是否正确地写入了数据,当写 入数据没有被正确地写入时,将保存在位于内部的8位内部寄存器152中 的现有数据DE写回存储阵列100中。当进行写入数据的验证时,装在增 量控制器150中的4位计数器151从写入备用状态相对于外部时钟信号延 迟8位,从装在电荷泵电路160的内部振荡器162中接收内部时钟信号开 始向上计数。由4位计数器151向上计数的计数值被输入到列选择电路 103、行选择电路104中,并且刚写入的现有数据DE被读出。
电荷泵电路160是如上所述用于根据读写控制器140的要求信号,向 经由列选择电路103选中的位线提供对EEPROM阵列写入数据时所必需 的写入电压的电路。电荷泵电路160具有生成电压升压时所需的动作频率 的内部振荡器162,通过对经由正极电源端子VDDT得到的电压进行升压 来生成必要的写入电压。
参考图4对第一实施例的半导体存储装置10中的读出动作进行说 明。图4是示出第一实施例中的半导体存储装置进行读出动作时的复位信
号RST、外部时钟信号SCK、数据信号SDA、地址计数值的时间关系的 时序图。
在读出动作之前,先对基于操作码进行的识别信息的确认、读/写命令 的确认处理进行说明。当复位状态(RST = 0或低)被解除(RST=1或 高)时,包含4位的操作码的数据信号SDA与外部时钟信号同步地从图 中没有示出的主机被输入到数据信号端子SDAT。如图4所示,操作码的 开头3位中含有识别信息ID0、 ID1、 ID2,开头第4位中含有用于确定写 入或读出的命令位。执行如下识别信息的比较。
ID比较器130与复位信号RST从低切换为高之后的3个时钟信号 SCK的上升沿同歩地取得输入到数据信号端子SDAT上的数据,即取得3 位的识别信息并保存到第一个3位寄存器中。与此同时,ID比较器130从 通过地址计数器IIO的计数值OO、 01、 02指定的存储阵列IOO的地址中取 得数据,即,取得保存于存储阵列100中的识别信息并保存到第二个3位 寄存器中。
ID比较器130判定第一、第二寄存器中保存的识别信息是否一致,当 识别信息不一致时,通过IN/OUT控制器120来保持8位锁存寄存器170 和IN/OUT控制器120之间的输入信号线的高阻抗的状态。另一方面,当 第一、第二寄存器中保存的识别信息一致时,ID比较器130向读/写控制 器140输出存取允许信号AEN。接收了存取允许信号AEN的读/写控制器 140与复位信号RST从低切换为高之后的第4个时钟信号SCK的上升沿同 歩地取得送到总线信号线上的命令位,并判定是否为写入命令。当所取得 的命令位不是写入命令时,读/写控制器140向IN/OUT控制器120输出读 出命令。
接收了读出命令的IN/OUT控制器120将对存储阵列100的数据传送 方向改为读出方向,允许传送数据。由于地址计数器110与时钟信号SCK 的下降沿同步地向上计数,所以输入操作码后的地址计数器110的计数值 为04,从保存于存储阵列100的04H中的现有数据DE开始读出。保存于 存储阵列中的现有数据DE与时钟信号SCK的下降沿同步并经由IN/OUT 控制器120而依次被输出到数据信号端子SDAT,而且被输出的现有数据
在下一个时钟信号SCK的下降沿到来之前的期间内被保持。时钟信号 SCK—旦下降,地址计数器110中的计数值就被增加1,其结果,保存在 存储阵列100的下一个地址(数据单元)中的现有数据DE被输出到数据 信号端子SDAT。与时钟信号SCK同步地重复进行该动作,直到到达目标 地址为止。即,由于本实施例中的半导体存储装置10是顺序存取型的存 储装置,所以,主机必须发出与目标读出或写入的地址对应数量的时钟信 号脉冲,并将地址计数器110的计数值增加到与规定的地址对应的计数 值。其结果是,现有数据DE从由依次增加的地址计数器110的计数值指 定的地址与时钟信号SCK同歩地被顺序读出。
本实施例中的半导体存储装置IO的存储阵列100虽然只有00H BFH 的地址,但地址计数器IIO却向上计数到地址FFH。地址COH FFH是虚 拟区域,在存储阵列100中并不存在所对应的地址,并且在对所述虚拟区 域进行存取的期间,向数据信号端子SDAT输出"0"值。当由地址计数 器110向上计数到地址FFH时,地址返回到地址00H处。在读出动作结 束后,从主机输入0或LOW (低)的复位信号RST,半导体存储装置10
处于操作码的接收待机状态。
当输入复位信号RST (二0或LOW)时,地址计数器110、 IN/OUT控 制器120、 ID比较器130、读/写控制器140及增量控制器150被初始化。 (写入处理)
参考图5对第一实施例中的半导体存储装置10中的写入动作进行说 明。图5是示出第一实施例中的半导体存储装置进行写入动作时的复位信 号RST、外部时钟信号SCK、数据信号SDA、地址计数值的时间关系的 时序图。在本实施例中的半导体存储装置10中,写入是以行单位(8位单 位)、即以规定地址单位(8地址单位)进行写入。
由上述的ID比较器130确认识别信息一致之后,读/写控制器140取 得写入命令的命令位且从增量控制器150接收了写入允许信号WEN1时, 向IN/OUT控制器120输出写入允许信号WEN2。
如图5所示,在输入操作码之后,时钟信号端子SCKT被输入作为伪 写时钟的4个时钟信号进入写入备用状态。地址计数器110与时钟信号
SCK的下降沿同步地向上计数,因此写入备用状态后的地址计数器110的
计数值为08,从存储阵列100的地址08H开始写入数据。
在本实施例中,如上所述,向l行8位的存储阵列IOO写入16位长的 写入数据。当进行写入处理时,首先,从写入数据DI的最高的位 (MSB)开始8位的数据与时钟信号SCK的上升沿同歩地依次被锁存到8 位锁存寄存器170中。此外,在向IN/OUT控制器120输入写入允许信号 WEN2之前,与时钟信号SCK的下降沿同步地依次向数据输出信号线(数 据信号端子SDA)输出存储阵列IOO的第8位以后的现有数据。输出到数 据输出信号线上的现有数据DE被输入到增量控制器150中,并与锁存在 8位锁存寄存器170中的写入数据DI—起如下述用于增量控制器150判定 写入数据DI是否为比现有数据DE大的值。该判断处理在写入备用状态后 的第8周期的时钟信号SCK上升之后(二l或高)进行。
接收了写入允许信号WEN2的IN/OUT控制器120将对于存储阵列 100的数据传送方向改为写入方向,解除8位锁存寄存器170和IN/OUT 控制器120之间的信号线的高阻抗设定,允许传送数据。其结果,向存储 阵列100的各个位线传送写入数据DI的值(0或1)。读/写控制器140在 写入备用状态后的第8周期的时钟信号SCK上升之后,要求电荷泵电路 160生成写入电压,所生成的写入电压被施加到由列选择电路103选中的 位线上,在本实施例中是施加到所有的位线上,其结果,保存于8位锁存 寄存器170中的8位的数据"1"和"0" —次性地被写入到写入限制行 中。
第8周期的时钟信号SCK—旦下降,地址计数器110的计数值就增加 1,从而执行应写入下一地址(8地址)中的写入数据DI2 (第2字节的数 据)的取得。此外,在第8周期的时钟信号SCK下降后的时钟为低的期间 (数据校验一的期间),进行刚写入的现有数据DE与用于写入的写入数 据DI是否一致的校验处理(第一数据校验处理)。目卩,在时钟为低的期 间,由增量控制器150所具有的4位计数器151向列选择电路103以及行 选择电路104输入用于指定刚输入的8位的现有数据DE地址的计数值。 其结果,从IN/OUT控制器120输出刚写入的8位的现有数据DE,该现有
数据DE经由IN/OUT控制器120而被保存到增量控制器150所具有的8 位内部寄存器153中。增量控制器150验证保存于8位内部寄存器153中 的8位的现有数据DE和保存于8位锁存寄存器170中的8位的写入数据 DI是否一致。
或者,刚写入的现有数据DE和被用于写入的写入数据是否一致的验 证处理(第二数据验证处理)可以在如下定时、即第二字节的写入数据 DI2的各位被8位锁存寄存器170锁存的定时里进行(数据验证二的期 间)。具体地说,增量控制器150在第二字节的写入数据DI2的各位被8 位锁存寄存器170锁存的定时里,取得从8位锁存寄存器170即将被放出 之前的、并被用于写入的l位的写入数据DIln,还从存储阵列100的第一 写入限制行以l位为单位从MSB开始读出刚写入的现有数据DEln。增量 控制器150验证取得的写入数据DIln和读出的现有数据DEln是否一致。 通过重复该位单位的比较处理8次(数据验证2的期间),可判定第一字 的写入数据DI1是否正确写入到了第一写入限制行中。
在本实施例中,写入数据DI如图3所示是16位长的数据,写入限制 行为第一写入限制行和第二写入限制行这2行(8地址X2),因此,当执 行两次上述处理之后,写入数据DI就完成写入。在完成写入数据DI的写 入后,从主机向复位信号端子RSTT输入复位信号RST (二0或LOW), 成为操作码的接收待机状态,结束写入处理。
从主机送出的写入数据除与希望改写的地址对应的数据之外,其余的 数据具有与存储阵列100中当前保存的数据相同的值(0或1)。即,存 储阵列100中不能改写的地址的数据被相同的值覆盖。
当输入复位信号RST (4或LOW)时,地址计数器110、 IN/OUT控 制器120、 ID比较器130、读/写控制器140及增量控制器150被初始化。 (第一数据校验处理)
参考图6对第一实施例的半导体存储装置10中执行的第一数据校验 处理进行说明。图6是示出由第一实施例中的半导体存储装置执行写入处 理中的第一数据校验处理的处理过程的流程图。 '
增量控制器150从存储阵列100的第一写入限制行中读出刚写入的现
有数据DEI (步骤S100),与保存在8位锁存寄存器170中的写入数据 DI1进行比较(步骤S102)。具体地说,增量控制器150在结束第1字节 的写入后时钟为低的期间,使用由电荷泵电路160的内部振荡器162生成 的内部时钟信号,使4位计数器151向上计数。增量控制器150将4位计 数器151的计数值输入到列选择电路103以及行选择电路104中,从存储 阵列100的第一写入限制行经由IN/OUT控制器120按地址的顺序读出刚 写入的8位的现有数据DE1,锁存到8位内部寄存器153中。即,从写入 备用状态以8位(8个时钟)的延迟输出内部时钟信号。
增量控制器150判定锁存在8位内部寄存器153中的现有数据DE1与 锁存在8位锁存寄存器170中并被用于写入第一写入限制行中的写入数据 DI1是否一致(步骤S104)。当从第一写入限制行中读出的保存在8位内 部寄存器153中的现有数据DE1与保存在8位锁存寄存器170中的写入数 据DI1—致时(步骤S104:"是"),增量控制器150判断为写入正常完 成(步骤S106),并结束本处理过程。在这种情况下,与对第一写入限制行 的第一字节的写入数据DI1的写入处理同样地执行第二写入限制行的第二 字节的写入数据DI2的写入处理。
当从第一写入限制行中读出并被锁存在8位内部寄存器153中的现有 数据DE1与保存在8位锁存寄存器170中的写入数据DI1不一致时(步骤 S104:"否"),增量控制器150判断为写入没有正常完成,即写入异常 (步骤S108)。增量控制器150判定从第一写入限制行中读出并被锁存在 8位内部寄存器153中的现有数据DE1与保存在8位内部寄存器152中的 写入前的现有数据DEl。w是否一致(歩骤SllO),当判定为DEl=DEl。ld 时(步骤S110:"是"),结束本处理过程。另一方面,当判定为DE1^ DEl。w时(步骤S110:"否"),增量控制器150将保存在8位内部寄存 器152中的写入前的现有数据DE1。M写回存储阵列100的第一限制行中 (步骤S112),结束本处理过程。当判定出写入异常时,不向第二写入限 制行进行剩余的写入数据DI2的写入处理。
在针对第二写入限制行的写入处理周期内执行写回处理。即,在第2 字节的写入数据DI2的写入周期,保存在8位寄存器中的现有数据DEl。ld
被输入到IN/OUT控制器120中,并与经由数据信号端子SDAT被输入的 数据同样地被进行向存储阵列100的第一写入限制行的写入处理。其结 果,因为存储阵列100的第一及第二写入限制行中的数据恢复为进行写入 处理前的值,所以至少可以避免对存储阵列100的错误的数据的写入,可 提高对存储阵列100的数据的写入可靠性。 (第二数据校验处理)
参考图7对第一实施例中的半导体存储装置10中执行的第二数据校 验处理进行说明。图7是示出由第一实施例中的半导体存储装置执行写入 处理中的第二数据校验处理的处理过程的流程图。
也可以取代上述的第一数据校验处理,而通过以下说明的第二数据校 验处理来执行数据校验处理。
增量控制器150从存储阵列100的第一写入限制行以位单位读出刚写 入的现有数据DEln (步骤S200)。具体地说,增量控制器150在第二字 节的写入数据DI2的各位D12n被8位锁存寄存器170锁存的定时里,从 存储阵列100的第一写入限制行读出构成刚写入的现有数据DE1的1位现 有数据DEln。该现有数据DEln的读出例如可如下进行在校验处理时 (锁存第二字节的写入数据时),让列选择电路103以及行选择电路104 将从地址计数器110输入的计数值减去8计数份,并用进行减法运算后的 计数值选择存储阵列100的读出数据。或者,也可以让列选择电路103以 及行选择电路104保存1周期之前的读出地址,根据从地址计数器输入的 计数值依次选择被保存的地址。
增量控制器150取得从8位锁存寄存器170放出的位单位的写入数据 DIln (歩骤S202)。具体地说,因为8位锁存寄存器170是FIFO型的寄 存器,所以每当第二字节的写入数据DI2以1位为单位被锁存时,已被锁 存的写入数据DI1就以1位为单位被放出。增量控制器150依次获取被放 出的1位单位的写入数据DIln。
增量控制器150比较从存储阵列100的第二写入限制行读出的现有数 据DEln和从8位锁存寄存器170取得的写入数据DIln (步骤S204)。当 从存储阵列100的第一写入限制行读出的现有数据DEln和从8位锁存寄
存器170取得的写入数据DIln —致时(步骤S206:是),增量控制器 150判定是否从存储阵列100的第一写入限制行读出8位份的现有数据 DEln, g卩,判定是否n=8 (步骤S208)。当判定为不是n=8时(步骤 208:否),增量控制器150再次执行步骤S200 206。 g卩,在第二数据校 验处理中,每当第二字节的写入数据DI2被8位锁存寄存器170保存时, 以l位为单位进行现有数据DEln和写入数据DIln的比较。从而为了验证 保存在存储阵列100的第一写入限制行中的所有8位的现有数据需要执行 8次比较处理。
当判定为n=8时(步骤208:是),增量控制器150判断为对存储阵 列100的第一写入限制行正常结束了写入(步骤S210),结束本处理过 程。在这种情况下,与对第一写入限制行的第一字节的写入数据DI1的写 入处理同样地,来执行对第二写入限制行的第二字节的写入数据DI2的写 入处理。
当从存储阵列100的第一写入限制行读出的现有数据DEln和从8位 锁存寄存器170取得的写入数据DIln不一致时(歩骤S206:否),增量 控制器150判定为写入没有正常结束,即,判定为写入异常(步骤 S212)。增量控制器150判定从第一写入限制行中读出并锁存在8位内部 寄存器153中的现有数据DE1与保存在8位内部寄存器152中的写入前的 现有数据DEl。w是否一致(步骤S214),当判定为DEl二DEl。w时(歩骤 S214:"是"),结束本处理过程。另一方面,当判定为DEl^DEl。w时 (步骤S214:"否"),增量控制器150将保存在8位内部寄存器152中 的写入前的现有数据DEl。w写回存储阵列100的第一限制行中(歩骤 S214),结束本处理过程。与第一数据校验处理同样当判定出写入异常 时,不向第二写入限制行进行剩余的写入数据DI2的写入处理。
写回处理以与第 一数据校验处理中说明的次序同样的次序执行。 参考图8对第一实施例中的半导体存储装置10的应用例进行说明。 图8是示出第一实施例中的半导体存储装置的应用例的说明图。本实施例 中的半导体存储装置10被装备在容纳耗材的容器上,例如安装在容纳作 为印刷记录材料的墨水的墨水容纳体310、 311、 312上。当将各墨水容纳 体310、 311、 312安装到印刷装置上时,半导体存储装置10与印刷装置 所具有的主机300总线连接。艮卩,来自主机300的数据信号线SDA、时钟 信号线SCK、复位信号线RST、正极电源线VDD、以及负极电源线VSS 均与各个墨水容纳体310、 311、 312所具有的半导体存储装置10相连。 在该应用例中,在半导体存储装置10中保存墨水余量或墨水消耗量等与 墨水量相关的信息。
如以上说明,根据第一实施例中的半导体存储装置10,当写入到半导 体存储装置10的写入数据的长度是半导体存储装置IO所具有的存储阵列 IOO的l行可保存的数据长度(8位)的2倍时,验证是否正确写入了写入 数据DI的高位(开头)的8位(DI1)。即,因为只有在正确写入了写入 数据DI的最前的8位(DI1)时,才执行后(剩余)8位(DI2)的写入, 所以可提高数据长度比存储阵列100的1行中可保存的数据长度长的数据 的写入可靠性。S卩,只要写入数据DI的高位的8位(DI1)没有被正确写 入,就不执行现有数据的覆盖(更新),所以可提高写入数据的写入可靠 性。
特别是在上述实施例中,因为在半导体存储装置10具有的存储阵列 100中从最高的位(MSB)的数据开始被保存在开头侧的地址中,所以不 会错误地写入由高位的8位表示的高位的数位,从而可提高写入数据的写 入可靠性。
还有因为可提高比存储阵列100的1行所能保存的数据长度还长的数 据长度的数据的写入可靠性,所以本实施例中的半导体存储装置10可以 共用于处理写入数据长度整数倍于存储阵列100的1行中可保存的数据长 度的多个装置中。
根据第一校验处理,因为以8位单位执行校验处理,所以可以将校验 处理集中起来执行,和以1位为单位执行校验处理时相比可以縮短校验处 理所需的时间。
再根据第二校验处理,不使用4位计数器以及内部振荡器162等电路 也可以执行校验处理。即,虽然在第一校验处理中以8位为单位执行校验 处理,但在第二校验处理能够以1位为单位执行校验处理。在这种情况
下,增量控制器150不需要具有4位计数器151以及8位内部寄存器 153,从而可以简化电路结构。
第一实施例的变形例
(1) 在上述第一实施例中,校验处理结果,对第一写入限制行第一
字节的写入数据DI1没有被正确写入时,将锁存在8位内部寄存器152中 的写入前的现有数据DE1。uj写回到第一写入限制行,但也可以不执行写 回。在这种情况下,不执行对第二写入限制行第二字节的写入数据DI2的 写入,可以保证低8位的值为正常写入的值。另一方面,对于高8位来 说,由于不是在短时间内大幅变动的值,所以主机中通过验证与上次的值 的确定性,可避免问题。
(2) 在上述第一实施例中,以16位长度的写入数据为例进行了说 明,但除此之外,24位长度、32位长度的具有数倍于存储阵列100的1行 的位长度的数据也同样适用,并可以得到同样的效果。在这种情况下,直 到最后的1位被写入为止,被执行以1位为单位(8位单位)的校验处 理。
(3) 在上述第一实施例中,没有对第2字节的写入数据DI2执行校 验处理,但也可以执行对第2字节的写入数据DI2的校验处理。
(4) 在上述第一实施例中,作为应用例使用了墨盒,但除此之外, 调色剂盒也能够得到同样的效果。此外,当应用于预付卡等保存货币等价 信息的介质中时也能够得到同样的效果。
第二实施例
半导体存储装置的结构
第二实施例中的半导体存储装置是非易失性地保持存储数据并以1位 单位从开头地址顺次存取的EEPROM。
图9是示出第二实施例中的半导体存储装置的内部电路结构的框图。 该半导体存储装置IOA包括存取控制器1110、读写控制器1120、地址计 数器1130以及存储阵列1140。
存储阵列1140具有规定容量、例如256位的存储区域。
地址计数器1130是与输入时钟信号端子CKT中的时钟信号CLK同步
地增加其计数值的电路。更具体来说,地址计数器1130是与从读写控制 器1120输出的向上计数信号CP同步地增加(向上计数)其计数值的电
路。其中,向上计数信号CP是从读写控制器1120输出的时钟信号,相当 于内部时钟信号ICK。此外,内部时钟信号ICK是从控制器1110输出的 时钟信号,相当于时钟信号CLK。因此,向上计数信号CP是相当于时钟 信号CLK的时钟信号,地址计数器1130与时钟信号CLK同步地向上计数 其计数值。
地址计数器1130的计数值作为指示存储阵列1140的256位的存储区 域位置的地址ADD而被输入存储阵列1140中,可通过地址计数器1130 的计数值来指定存储阵列1140中的写入位置或读出位置。
并且,地址计数器1130在输入计数器复位信号CRST时,将计数值 复位为初始值。在这里,初始值只要与存储阵列1140的开头位置相关 联,可以是任意的值,通常将O用作初始值。当启动装置时,或者开始或 结束存取(数据的读出或写入)时,由读写控制器1120输出计数器复位 信号CRST。
因此,地址计数器1130可通过从初始值依次向上计数的计数值来依 次指定存储阵列1140的写入位置或读出位置。
存取控制器1110与芯片选择端子CST、时钟信号端子CKT、数据信 号端子IO相连,经由芯片选择端子CST输入芯片选择信号CS井,经由时 钟信号端子CKT输入时钟信号CLK,经由数据信号端子10输入或输出数 据信号DA。输入的时钟信号CLK作为内部时钟信号而送给读写控制器 1120。当数据信号DA为输入数据信号时,作为输入数据信号IDA而送给 读写控制器1120,作为写入数据信号WDA而送给存储阵列1140。当数据 信号DA为输出数据信号时,从存储阵列1140中送出的读出数据信号 RDA作为数据信号DA而被输出。
此外,存取控制器1110根据芯片选择信号CS#、以及与时钟信号 CLK同步输入的数据信号DA,控制存取的开始及结束。具体来说,存取 控制器1110当输入了芯片选择信号CS#,并且在预定的定时作为数据信 号DA而输入了指示数据的读出或写入的命令数据时,向读写控制器1120200680019324. 3
说明书第25/35页
和地址计数器1130送出存取允许信号AEN,并且在所指示的存取为写入
的情况下,向读写控制器1120送出写入访问开始信号WRS,由此来控制 存取的开始。此外,存取控制器1110在芯片选择信号CS井的输入结束 时,结束存取允许信号AEN的送出,并且在送出写入访问开始信号WRS 的情况下结束该送出,由此来控制存取的结束。
读写控制器1120包括控制数据的读出的读控制部1122、控制数据的 写入的写控制部1124、以及读写执行部1126,该读写执行部1126根据来 自读控制部1122的指示而向存储阵列1140送出读执行信号RD,并根据 来自写控制部1124的指示而向存储阵列1140送出读执行信号RD和写执 行信号WR。读写控制器1120实际控制数据的读出或写入。具体来说,当 从存储控制器1110只输入了存取允许信号AEN和写入开始信号WRS中 的存取允许信号AEN时、读控制部1122和读写执行部1126进行动作, 向存储阵列1140送出与内部时钟信号ICK的下降(上升)同步的读执行 信号RD,从而执行数据的读出处理。此时,包含于来自存储阵列1140的 读出数据信号RDA中的读出数据(简称为"读出数据RDA")被输入存 取控制器1110中,并经由数据信号端子IO被输出为输出数据信号DA。 此外,当从存储控制器1110输入了存取允许信号AEN和写入访问开始信 号WRS时,写控制部1124和读写执行部1126进行动作,向存储阵列 1140送出与内部时钟信号ICK的下降(上升)同歩的读执行信号RD和与 内部时钟信号ICK的上升(下降)同歩的写执行信号WR,从而如下面所 述那样执行数据的读出及写入处理。此时,经由数据信号端子10输入存 取控制器1110中的数据信号DA作为写入数据信号WDA而被送给存储阵 列1110,写入数据信号WDA所表示的数据(简称为"写入数据 WDA")以写入的顺序被写入存储阵列1140中。
本实施例的半导体存储装置的特点在于由写控制部1124控制的数据 的写入动作的部分,而由读控制部1122控制的数据的读出动作的部分由
于与以往的半导体存储装置相同,因此,下面只对数据的写入动作加以说明。
写入动作作为前提,假定作为数据信号DA而经由数据信号端子10依次输入 的多位数据必须从最高的位(MSB)依次以l位单位输入,存储阵列1140 的存储区域位置也从与最高的位相关联的地址依次被存取。
图10是示出第二实施例中的数据写入动作的步骤的流程图。如上所 述,当从存取控制器1110向读写控制器1120输入存取允许信号AEN并 输入写入访问开始信号WRS时,由写控制部1124执行该动作。
当开始了写入动作时,写控制部1124首先使读写执行部1126执行数 据的读出(步骤S1102)。例如,读写执行部1126与内部时钟信号ICK 的下降沿同步地向存储阵列1140送出读执行信号RD。此时,根据读执行 信号RD,从存储阵列1140中的与地址计数器1130送出的地址信号ADD 所表示的地址值对应的存储区域位置读出所存储的数据(存储数据)。在 下面说明的其他的读出处理中,也与内部时钟信号ICK的下降沿同步地进 行读执行信号RD的送出。
然后,写控制部1124对如上述读出并从存储阵列1140送出的读出数 据信号RDA所表示的数据(简称为"读出数据")、和此时经由数据信 号端子IO输入并从存取控制器1110送出的输入数据信号IDA所表示的数 据(简称为"输入数据")进行比较(歩骤S1104),判断读出数据的值 和输入数据的值是否一致(步骤S1106)。
当读出数据的值和输入数据的值一致时(步骤S1106:"是"),写 控制部1124使地址计数器1130的计数值向上计数1 (步骤S1108),并 判断是否结束存取动作(歩骤S1110),当继续进行存取动作时(歩骤 S1110:"否"),再次使读写执行部1126执行数据的读出(步骤 S1102)。例如,读写控制器1120与送出读执行信号RD之后的内部时钟 信号ICK的下一个下降沿同步地向计数器1130送出向上计数信号CP。此 时,根据向上计数信号CP,计数器1130的计数值向上计数1。计数器 1130在与内部时钟信号ICK相当的向上计数信号CP的各个下降沿的定时 (向上计数定时),向上计数每周期计数值。
从而,写控制部1124重复进行数据的读出处理(歩骤S1102)和与输 入数据的比较处理(步骤S1104),直到读出数据和输入数据不一致(步
骤S1106:"否")为止。
当在上述存取动作是否结束的判断(步骤S1110)中判断为结束存取 动作时(步骤S1110:"是"),写控制部1124复位地址计数器1130的
计数值(步骤S1124)来结束该写入动作。存取动作的结束可根据是否输 入了芯片选择信号弁CS或存取允许信号AEN来判断。具体来说,如果作 为判断对象的信号、例如存取允许信号AEN的状态处于非激活状态,则 能够判断为结束存取动作。
另一方面,当在上述读出数据的值与输入数据的值是否一致的判断 (歩骤S1106)中判断为读出数据的值与输入数据的值不一致时(步骤 S1106:"否"),写控制部1124进一步判断输入数据的值是否为[1](步 骤S1112)。
当输入数据的值为[l]时(步骤S1112:"是"),设定写入允许标志 (步骤S1114),使读写执行部1126执行作为写入数据的输入数据的写入 (歩骤S1116)。例如,读写执行部1126与内部时钟信号ICK的上升沿 同步地向存储阵列1140送出写执行信号WR。此时,输入数据(写入数 据)被写入存储阵列1140中与地址计数器1130送出的地址信号ADD所 表示的地址值对应的存储区域位置的存储区域中。
然后,写控制部1124在下一个向上计数定时使地址计数器1130的计 数值向上计数1 (歩骤S1118),进而判断是否结束存取动作(步骤 S1120)。
当继续进行存取动作时(步骤S1120:"否"),再次执行数据的写
入处理(步骤S1116)以及地址的向上计数处理(步骤S1118)。另一方 面,当结束存取动作时(步骤S1120:"是"),解除写入允许标志的设 定(步骤S1122),并复位地址计数器1130的计数值(步骤S1124)来结
束该写入动作。
此外,当在上述输入数据的值是否为[l]的判断(步骤S1110)中判断 为输入数据的值不为[l]时(步骤S1110:"否"),写控制部1124在存 取动作结束之前(步骤S1128:"否"),禁止输入数据的写入(步骤 S1126),使读写执行部1126停止动作。另一方面,当结束存取动作时
(步骤S1128:"是"),复位地址计数器1130的计数值(步骤S1124)
来结束该写入动作。
接着,对上述写入动作的具体例进行说明。为了容易说明,将向4位 的存储区域写入4位的二进制数据的场合作为前提。例如,假定在4位的 各个存储区域中存储有数据[1010b]。括号[]中的[b]表示二进制数据,在4 个[1]或
的值中,左端表示最高的位(MSB),右端表示最低的位 (LSB)。
例如,当输入数据[1010b]从左端的最高的位依次输入时,依次与存 储数据[1010b]所对应的位进行比较。此时,由于输入数据和存储数据的各 个位的值相一致,所以不进行数据的写入。
此外,当输入输入数据[1100b]时,相对于存储数据[1010b],从左第2 位的输入数据的值为[l],这与存储数据的值
不一致,并且由于输入数据 的值为[l],因而输入数据的值大于存储数据的值。其结果是,设定写入允 许标志,并从左顺序写入第2位的[1]、第3位的
以及第4位的
,从而 4位的各个存储区域中存储的数据[1010b]被改写为输入数据[1100b]。
另外,当输入输入数据[1001b]时,相对于存储数据[1010b],从左第3 位的输入数据的值为[O],这与存储数据的值[l]不一致,但由于输入数据的 值为[O],因而输入数据的值小于存储数据的值。其结果是,不设定写入允 许标志,禁止输入数据[1001b]的写入。
如上所述,在第二实施例的写入动作中,能够只有在作为写入数据的 输入数据的值大于存储数据的值时,进行数据的改写,当写入数据小于存 储数据时,能够禁止写入。由此,能够防止预先确定的数据条件下的写入
、在上述第二实施例的写入动作中,说明了当写入数据与存储数据一致 时,不进行输入数据的写入,但也可以在一致时设定写入允许标志来进行 输入数据的写入,并禁止只有在写入数据小于存储数据时进行数据的写 入。
此外,在上述第二实施例的写入动作中,将以1位单位顺序写入数据 的场合作为前提进行了说明,但也可以将.n位单位的数据集中起来一次写入。但是,在此情况下,需要具备数据缓冲器,用于保持各位的输入数
据,直到n位的数据全部输入完。
但是,第二实施例的写入动作只有在满足"写入数据大于存储数据"
的数据条件时,才可进行数据的写入。然而,当为了縮短写执行信号WR 的生成时间而改变作为写执行信号WR的生成标准的时钟信号CLK的定 时来进行写入动作时,可能会写入不满足数据条件的数据。因此,下面加 以说明应对该问题的实施例的半导体存储装置。 第三实施例
半导体存储装置的结构
与第二实施例一样,第三实施例中的半导体存储装置也是非易失性地 保持存储数据并以1位单位从开头地址顺次存取的EEPROM。
图11是示出第三实施例中的半导体存储装置的内部电路结构的框 图。该半导体存储装置20A除存取控制器1210、读写控制器1220、地±止 计数器1230以及存储阵列1240之外,还包括数据缓冲器1228和减法器 1232。
存取控制器1210、地址计数器1230以及存储阵列1240与第二实施例 的半导体存储装置(参见图9)的存取控制器1110、地址计数器1130以 及存储阵列1140相同。
数据缓冲器1228根据从读写控制器1220输入的锁存信号DLT,锁存 来自存取控制器1210的输入数据信号IDA,并将锁存数据作为写入数t居 信号WDA送给存储阵列1140。
减法器1232根据来自读写控制器1220的减法信号DEC,将用地址i十 数器1230的计数值表示的地址("非减算地址")、或者将通过对计类女 值进行减法运算后的值表示的地址("减算地址")作为地址信号ADD 而送给存储阵列1140。
读写控制器1220包括读控制部1222、写控制部1224以及读写执行部 1226,基本与第二实施例的读写控制器1120同样地实际对存取(数据的 读出或者数据的写入)进行控制。读控制部1222以及读写执行部1226与 第二实施例的读控制部1122以及读写执行部1126相同。
写控制部1224通过控制地址计数器1230、读写执行部1226、数据缓 冲器1228以及减法器1232的动作,来控制后述的数据的写入动作。
本实施例的半导体存储装置的特点也在于由写控制器1224控制的数 据的写入动作的部分,而由读控制部1122控制的数据的写入动作的部分 由于与以往的半导体存储装置相同,因此,下面只对由写控制器1224控 制的数据的写入动作加以说明。
写入动作
作为前提,与第二实施例中的写入动作的情况同样地,假定作为数据 信号DA而经由数据信号端子10依次输入的多位数据必须从最高的位 (MSB)依次以1位单位输入,存储阵列1240的存储区域位置也从与最 高的位相关联的地址依次被存取。
图12是示出第三实施例中的数据写入动作的步骤的流程图。与第二 实施例的情况相同,当从存取控制器1210向读写控制器1220输入存取允 许信号AEN并输入写入访问开始信号WRS时,由写控制器1224执行该 动作。
当开始了写入动作时,写控制部1224首先使读写执行部1226执行数 据的读出(步骤S1202)。例如,读写执行部1226与内部时钟信号ICK 的下降沿同步地向存储阵列1240送出读执行信号RD。此时,根据读执行 信号RD,从存储阵列1240中的与地址计数器1230送出的地址信号ADD 所表示的地址值对应的存储区域位置读出所存储的数据(存储数据)。在 下面说明的其他的读出处理中,也与内部时钟信号ICK的下降沿同步地进 行读执行信号RD的送出。
然后,写控制部1224对如上述读出的来自存储阵列1240的读出数据 和输入数据进行比较(步骤S1204),判断读出数据的值和输入数据的值 是否一致(步骤S1206)。
当读出数据的值和输入数据的值一致时(步骤S1206:"是"),写 控制部1224使数据缓冲器1228锁存输入数据(歩骤S1208),然后使地 址计数器1130的计数值向上计数1 (步骤S1210),进而判断是否结束存 取动作(歩骤S1212),当继续进行存取动作时(步骤S1212:
"否"),再次使读写执行部1126执行数据的读出(步骤S1202)。例 如,读写控制器1220与由读写执行部1226送出读执行信号RD之后的内 部时钟信号ICK的下一个下降沿同步地向数据缓冲器1228送出锁存信号 DLT。此时,根据锁存信号DLT,从存取控制器1110送出的输入数据信 号IDA所表示的数据(输入数据)被锁存到数据缓冲器1228中。然后, 读写控制器1220与由读写执行部1226向数据缓冲器1228送出锁存信号之 后的内部时钟信号ICK的下一个下降沿同步地向计数器1230送出向上计 数信号CP。此时,根据向上计数信号CP,计数器1230的计数值向上计 数l。数据缓冲器1228在内部时钟信号ICK的各个上升沿的定时(锁存定 时),锁存每周期输入数据。并且,计数器1230在与内部时钟信号ICK 相当的向上计数信号CP的各个下降沿的定时(向上计数定时),向上计 数每周期计数值。
从而,写控制部1224重复进行数据的读出处理(步骤S1202)和与输 入数据的比较处理(步骤S1204),直到读出数据和输入数据不一致(歩 骤S1206:"否")为止。
当在上述存取动作是否结束的判断(歩骤S1212)中判断为结束存取 动作时(歩骤S1212:"是"),写控制部1224复位地址计数器1230的 计数值(步骤S1250)来结束该写入处理。存取动作的结束可根据是否输 入了芯片选择信号弁CS或存取允许信号AEN来判断。具体来说,如果作 为判断对象的信号、例如存取允许信号AEN的状态处于非激活状态,则 能够判断为结束存取动作。
另一方面,当在上述读出数据的值与输入数据的值是否一致的判断 (歩骤S1206)中判断为读出数据的值与输入数据的值不一致时(歩骤 S1206:"否"),写控制部1224进一步判断输入数据的值是否为[1](步 骤S1214)。
当输入数据的值为[l]时(步骤S1214:"是"),设定写入允许标志 (步骤S1216),在下一个锁存定时,使数据缓冲器1228锁存输入数据 (步骤S1218),并使读写执行部1226执行数据的写入(步骤S1220)。 例如,读写执行部1226与由读写执行部1226送出读执行信号RD之后的
内部时钟信号ICK的下一个上升沿同步地向数据缓冲器1228送出锁存信 号DLT。此时,根据锁存信号DLT,输入数据被锁存到数据缓冲器1228 中。此外,读写执行部在送出读执行信号RD之后的内部时钟信号ICK的 下一个上升沿同步地向存储阵列1240送出写执行信号WR。此时,输入数 据(写入数据)被写入存储阵列1240中与地址计数器1230送出的地址信 号ADD所表示的地址值对应的存储区域位置的存储区域中。
然后,写控制部1224在下一个地址向上计数定时,使地址计数器 1230的计数值向上计数1 (歩骤S1220)。
接着,写控制部1224使减法器1232将从地址计数器1230的计数值 (地址值)减去[l]后的值的地址(减算地址)设定为读出地址(步骤 S1224),并使读写执行部1226执行数据的读出(步骤S1226)。
然后,写控制部1224对读出数据和与写入数据相当的被锁存在数据 缓冲器1228中的数据(锁存数据)进行比较(步骤S1228),判断读出数 据的值与锁存数据的值是否一致(步骤S1230)。
当读出数据的值与锁存数据的值一致时(步骤S1230:"是"),首 先,在下一个锁存定时,使数据缓冲器1228锁存输入数据(步骤 S1232),使减法器1232将地址计数器1230的计数值的地址(非减算地 址)设定为写入地址(步骤S1234),并使读写执行部1126执行作为写入 数据的输入数据的写入(步骤S1236)。
然后,写控制部1224在下一个向上计数定时,使地址计数器1230的 计数值向上计数1 (步骤S1238),进而判断是否结束存取动作(步骤 S1240)。
当继续进行存取动作时(步骤S1240:"否"),再次执行从输入数 据的锁存处理(歩骤S1116)至地址的向上计数处理(步骤S1238)。另 一方面,当结束存取动作时(步骤S1240:"是"),解除写入允许标志 的设定(步骤S1242),并复位地址计数器1230的计数值(步骤S1250) 来结束该写入动作。
此外,当在上述读出数据的值与锁存数据的值是否一致的判断(步骤 S1230)中判断为读出数据的值与锁存数据的值不一致时(歩骤S1230:
"否"),写控制部1224解除写入允许标志的设定(步骤S1244),并在 存取动作结束之前(步骤S1248:"否"),禁止输入数据的写入(歩骤 S1246),使读写执行部1226停止动作。另一方面,当结束存取动作时
(步骤S1248:"是"),复位地址计数器1230的计数值(步骤S1250) 来结束该写入动作。
接着,对上述写入动作的具体例进行说明。为了容易说明,将向4位 的存储区域写入4位的二进制数据的场合作为前提。例如,假定在4位的 各个存储区域中存储有数据[1010b]。括号[]中的[b]表示二进制数据,在4 个[1]或
的值中,左端表示最高的位(MSB),右端表示最低的位
(LSB)。
例如,当输入数据(写入数据)[1100b]从左端的最高的位依次输入 时,依次与存储数据[1010b]所对应的位进行比较。此时,从左第2位的输 入数据的值为[l],这与存储数据的值
不一致,并且由于输入数据的值为 [l],因而输入数据的值大于存储数据的值。其结果是,设定写入允许标 志,并顺序执行从第2位至第4位的各位的输入数据的写入。这里,首 先,写入从左第2位的输入数据,然后读出该写入的数据,当读出数据的 值为
时,由于写入数据的值[l]没有被写入,因而将禁止第3位以及第4 位的写入。
如上所述,在第三实施例的写入动作中,从最高的位一侧依次以位单 位对作为写入数据的输入数据和作为存储数据的存储数据的大小进行比 较,当输入数据更大时,允许写入,并且在写入该位的数据之后,检查该 数据是否被正确地写入。然后,当没有被正确写入时,能够解除写入允许 来禁止以后的写入。由此,相比于第二实施例的情况,能够更加有力地防 止预先确定的数据条件下的写入以外的写入。
写入动作的变形例
上述第三实施例的写入动作将以1位单位顺序执行写入动作的场合作 为前提进行了说明,但也可以将n单位(n为2以上的整数)的数据集中 起来一次写入。
图13和图14是示出作为第三实施例的变形例的数据写入动作的步骤
的流程图。在该动作中,将图12中的步骤S1218至步骤S1244变更为步 骤S1302至步骤S1340,而变更处之外的处理则相同。下面只对变更的处 理进行说明。
当设定了写入允许标志时(步骤S1216),写控制部1224在从地址计 数器1230输出的地址的低位n位(AO、 Al、 ...、 An-l)的每个值均成 为[l]之前(歩骤S1304:"否"),依次将输入的输入数据在各个定时锁 存到数据缓冲器1228中(歩骤S1302),并在各个地址向上计数定时,使 地址计数器1230的计数值依次向上计数(步骤S1306)。此外,当低位n 位的地址的每个值均为[l]时(步骤S1304:"是"),使读写执行部1226 集中执行数据缓冲器1228中锁存的n位锁存数据的写入(步骤S1308), 并在下一个地址向上计数定时,使地址计数器1230的计数值向上计数1 (步骤S1310)。
接着,写控制部1224使减法器1232将从地址计数器1230的计数值 (地址值)减去[n]后的值的减算地址设定为读出地址(歩骤S1312),并 使读写执行部1226执行数据的读出(歩骤S1314)。
然后,写控制部1224对读出数据和与写入数据相当的锁存于数据缓 冲器1228中的数据(锁存数据)进行比较(步骤S1316),判断读出数据 的值与锁存数据的值是否一致(步骤S1318)。
当读出数据的值与锁存数据的值不一致时(步骤S1318:"否"), 解除写入允许标志的设定(步骤S1326),禁止输入数据的写入(步骤 S1246)。另一方面,当读出数据的值与锁存数据的值一致时(步骤 S1318:"是"),在从地址计数器1230输出的低位n位的读出地址的每 个值均成为[l]之前(步骤S1320:"否"),重复进行地址的向上计数处 理(歩骤S1322)、输入数据的锁存处理(步骤S1324)、读出地址的设 定处理(步骤S1312)、数据的读出处理(步骤S1314)、与锁存数据的 比较处理(步骤S1316)以及判断处理(步骤S1318)。另一方面,当低 位n位的读出地址的每个值均成为[l]时(步骤S1320:"是"),使减法 器1232将用地址计数器1230的计数值表示的非减算地址设定为写入地址 (步骤S1328),并使读写执行部1126集中执行数据锁存器1228中锁存
的n位锁存数据的写入(步骤S1330)。
接着,写控制部1224在低位n位的写入地址的每个位值均成为[l]之 前(歩骤S1332:"否"),在各个地址向上计数定时,使地址计数器 1230的计数值向上计数1 (步骤S1334),而且在存取动作没有结束时 (歩骤S1336:"否"),在对应的锁存定时将输入数据锁存到数据锁存 器1228中(歩骤S1338)。当低位n位的写入地址的每个位值均成为[l]时 (歩骤S1332:"是"),使读写执行部1126集中执行数据锁存器1228 中锁存的n位锁存数据的写入(歩骤S1330)。
然后,当结束存取动作时(步骤S1336:"是"),解除写入允许标 志的设定(步骤S1340),禁止输入数据的写入(步骤S1246)。
以上说明的写入动作能够将n位的数据集中写入。
第二以及第三实施例的变形例
(1) 在上述第二及第三实施例中,将存储阵列的容量设为256位来 进行了说明,但不限于此,可根据应保存的数据量进行适当的变更。
(2) 在上述第二及第三实施例中,将在写入数据大于存储数据时允 许写入并在写入数据小于存储数据时禁止写入的场合为例进行了说明,但 也可以在写入数据小于存储数据时允许写入,在写入数据大于存储数据时 禁止写入。
(3) 在上述第二及第三实施例中,作为半导体存储装置使用 EEPROM进行了说明,但只要是可进行改写并能将保存数据非易失性地维 持的存储装置的话,不局限于EEPROM,也可以是以多位单位进行读出或 写入的存储装置。
以上,基于几个实施例对本发明进行了说明,但上述的发明的实施方 式是用于容易理解本发明的,并不用来限定本发明。本发明可在不脱离其 宗旨以及权利要求的范围进行变更和改进,同时不用说本发明中包含了其 等价物。
权利要求
1.一种半导体存储装置,包括顺序存取的非易失性的存储阵列,具有多个规定的地址单位的数据保存行;写入数据保持模块,以所述规定的地址单位保持相当于所述规定的地址单位n倍(n为2以上的整数)的数据容量的写入数据,该写入数据为应写入所述存储阵列中的写入数据;数据写入模块,以所述规定的地址单位,向所述存储阵列中作为写入对象的对象数据保存行写入所述保持的写入数据;数据验证模块,判定写入所述对象数据保存行的所述规定的地址单位的已写入数据、和所述写入数据保持模块所保持的所述规定的地址单位的写入数据是否一致;以及控制部,当所述已写入数据和所述写入数据不一致时,不执行由数据写入模块对所述对象数据保存行的下一个数据保存行进行的剩余所述写入数据的写入。
2. 如权利要求1所述的半导体存储装置,其中,当所述已写入数据和所述写入数据一致时,所述控制部执行由数据写 入模块对所述对象数据保存行的下一个数据保存行进行的所述写入数据的 写入。
3. 如权利要求1或2所述的半导体存储装置,其中,所述数据验证模块在结束了对所述对象数据保存行写入所述写入数据 后,以所述地址单位从所述对象数据保存行读出所述己写入数据,并且,用所述读出的所述规定的地址单位的所述已写入数据和所述规定的地 址单位的写入数据,来判定所述已写入数据和所述写入数据是否一致。
4. 如权利要求1或2所述的半导体存储装置,其中, 所述数据验证模块在结束了对所述对象数据保存行写入所述写入数据后,从所述对象数据保存行以每1地址读出所述已写入数据,并从所述写 入数据保持模块以l地址单位取得写入数据,并且, 用读出的所述规定的1地址单位的所述已写入数据和所述取得的1地 址单位的写入数据,来判定所述已写入数据和所述写入数据是否一致。
5. 如权利要求1至4中任一项所述的半导体存储装置,所述半导体存 储装置还包括现有数据保存模块,保存在写入所述写入数据前保存在所述对象数据 保存行中的现有数据;数据写回模块,当所述数据验证模块判定为所述己写入数据和所述写 入数据不一致时,将所述现有数据保存模块保存的所述现有数据写入所述 对象数据保存行中。
6. 如权利要求1至5中任一项所述的半导体存储装置,其中,在所述数据保存行中,从最高的位开始依次保存数据, 所述数据写入模块从最高的位开始依次向所述存储阵列执行数据的写入。
7. —种半导体存储装置,包括顺序存取的非易失性存储阵列,具有多个数据保存行,该数据保存行 具有8个保存1位数据的数据单元;写入数据保持模块,以8位为单位保持n倍(n为2以上的整数)于8 位的写入数据,该写入数据为应写入所述存储阵列中的写入数据;数据写入模块,以8位为单位,向所述存储阵列中作为写入对象的对 象数据保存行写入所述保持的写入数据;数据验证模块,判定写入所述对象数据保存行的8位已写入数据和所 述写入数据保持模块所保持的8位写入数据是否一致;以及控制部,当所述已写入数据和所述写入数据不一致时,不执行由数据 写入模块对所述对象数据保存行的下一个数据保存行进行的剩余所述写入 数据的写入。
8. 如权利要求7所述的半导体存储装置,其中,当所述已写入数据和所述写入数据一致时,所述控制部执行由数据写 入模块对所述对象数据保存行的下一个数据保存行进行的所述写入数据的 写入。
9. 一种写入控制方法,用于向半导体存储装置写入相当于规定的地址单位n倍的数据容量的写入数据,该半导体存储装置具有被顺序存取的非易失性的存储阵列,该存储阵列具有多个规定的地址单位的数据保存行,所述写入控制方法执行如下歩骤接收相当于所述规定的地址单位n倍(n为2以上的整数)的数据容 量的写入数据,以所述规定的地址单位保持所述接收的写入数据,以所述规定的地址单位,向所述存储阵列中作为写入对象的对象数据 保存行写入所述保持的写入数据,判定写入所述对象数据保存行的所述规定的地址单位的已写入数据、 和所述保持的所述规定的地址单位的写入数据是否一致,当所述已写入数据和所述写入数据不一致时,不执行对所述对象数据 保存行的下一个数据保存行进行的剩余所述写入数据的写入。
10. 如权利要求9所述的写入控制方法,其中,当所述己写入数据和所述写入数据一致时,执行对所述对象数据保存 行的下 一个数据保存行进行的所述地址单位的写入数据的写入。
11. 如权利要求IO所述的写入控制方法,所述方法还执行如下步骤判定写入所述下一个数据保存行的所述规定的地址单位的已写入数 据、和所述保持的所述规定的地址单位的写入数据是否一致,当所述已写入数据和所述写入数据不一致时,不执行对所述下一个数 据保存行的下一个数据保存行进行的剩余所述写入数据的写入。
12. —种写入控制方法,用于向半导体存储装置写入n倍(n为2以上 的整数)于8位的写入数据,所述半导体存储装置具有被顺序存取的非易 失性的存储阵列,该存储阵列具有多个数据保存行,并且所述数据保存行 具有8个保存1位数据的数据单元,所述写入数据控制方法执行如下步骤接收所述n倍于8位的数据长度的写入数据, 以8位单位保持所述接收的写入数据,以8位为单位,向所述存储阵列中作为写入对象的对象数据保存行写入所述保持的写入数据,判定写入所述对象数据保存行的8位单位的已写入数据和所述保持的 8位单位的写入数据是否一致,当所述已写入数据和所述写入数据不一致时,不执行对所述对象数据 保存行的下一个数据保存行进行的剩余所述写入数据的写入。
13. 如权利要求12所述的写入控制方法,其中,当所述已写入数据和所述写入数据一致时,执行对所述对象数据保存行的下一个数据保存行进行的8位单位的写入数据的写入。
14. 如权利要求13所述的写入控制方法,所述方法还执行如下步骤判定写入所述下一个数据保存行的8位单位的已写入数据和所述保持 的8位单位的写入数据是否一致,当所述已写入数据和所述写入数据不一致时,不执行对所述下一个数 据保存行的下一个数据保存行进行的剩余所述写入数据的写入。
15. —种半导体存储装置,其特征在于,包括非易失性的存储阵列;以及读写控制器,控制向所述存储阵列的数据写入以及从所述存储阵列的 数据读出;所述读写控制器在被请求对所述存储阵列进行数据的写入时,针对输 入的多位写入数据的值和存储于应写入所述多位写入数据的多位存储区域 中的多位存储数据的值,从所述多位写入数据中的最高的位开始以1位为 单位依次进行比较,当具有被判定为相对于所述存储数据的各位的值满足 规定的大小关系的位时,对于该被判定的位的写入数据执行写入后,检查 对存储在执行写入的存储区域中的存储数据和所述被判定的位的写入数据 是否一致,当一致时,执行所述被判定的位以后的位的写入数据的写入, 当不一致时,禁止所述被判定的位以后的位的写入数据的写入。
16. —种半导体存储装置,其特征在于,包括 非易失性的存储阵列;以及读写控制器,控制向所述存储阵列的数据写入以及从所述存储阵列的 数据读出; 所述读写控制器在被请求对所述存储阵列进行数据的写入时,针对输 入的多位写入数据的值和存储于应写入所述多位写入数据的多位存储区域 中的多位存储数据的值,从所述多位写入数据中的最高的位开始以1位为 单位依次进行比较,当具有判定为相对于所述存储数据的各个位的值满足规定的大小关系的位时,将以被判定的位为开头的n位(n是2m的整数、 m为1以上的整数)的写入数据集中写入后,检查存储在将被判定的位进 行了写入的存储区域中的存储数据、和所述被判定的位的写入数据是否一 致,当一致时,以n位为单位执行以所述被判定的位为开头的n位以后的 位的写入数据的写入,当不一致时,禁止以所述被判定的位为开头的n位 以后的位的写入数据的写入。
17. 如权利要求15中所述的半导体存储装置,所述半导体存储装置还包括地址计数器,在向所述存储阵列写入所述判定的位的数据后,输出所 增加的计数值;减法器,将所述地址计数器的计数值减去1后的值,设定为相对于所述存储阵列的读出地址;以及数据缓冲器,将所述判定的位的写入数据作为锁存数据锁存;其中,所述读写控制器用在所述减法器中设定的读出地址,读出所述存储阵列中进行了所述写入的存储区域中所存储的存储数据,并与所述锁存数据作比较,由此来检查存储在进行了写入的存储区域中的存储数据和所述锁存数据是否一致。
18. —种半导体存储装置,包括 非易失性的存储阵列;以及读写控制器,控制向所述存储阵列的数据写入以及从所述存储阵列的 数据读出;所述读写控制器在被请求对所述存储阵列进行数据的写入时,将输入 的多位写入数据写入到应写入所输入的多位写入数据的多位存储区域,执行所述写入后,检查存储在进行写入的存储区域中的存储数据和所 述输入的多位写入数据是否一致,当不一致时,禁止写入所述输入的多位 写入数据以后的位。
19. 一种半导体存储装置,包括 非易失性的存储阵列;以及读写控制器,控制向所述存储阵列的数据写入以及从所述存储阵列的 数据读出;所述读写控制器在被请求对所述存储阵列进行数据的写入时,将输入的n位(n是2m的整数、m为1以上的整数)写入数据写入到应写入所输入的n位写入数据的多位存储区域,进行所述写入后,检查存储在进行写入的存储区域中的存储数据和所述n位写入数据是否一致,当不一致时,禁止所述输入的n位以后的位的 写入数据的写入。
20. —种半导体存储装置的写入控制方法,所述半导体存储装置具有非易失性存储阵列,所述写入控制方法执行如下步骤接收对所述存储阵列写入数据的请求,将输入的多位写入数据的值和存储于应写入所述多位写入数据的多位存储区域中的多位存储数据的值从所述多位写入数据中的最高的位开始, 以l位为单位依次进行比较,当具有被判定为相对于所述存储数据的各位的值满足规定的大小关系的位时,对该被判定的位的写入数据执行写入后,检查存储在进行写入的 存储区域中的存储数据和所述被判定的位的写入数据是否一致,当一致时,执行所述被判定的位以后的位的写入数据的写入,当不一致时,禁止 所述被判定的位以后的位的写入数据的写入。
21. —种半导体存储装置的写入控制方法,所述半导体存储装置具有非易失性的存储阵列,所述写入控制方法执行如下步骤接收对所述存储阵列写入数据的请求,将输入的多位写入数据的值和存储于应写入所述多位写入数据的多位存储区域中的多位存储数据的值从所述多位写入数据中的最高的位开始, 以l位为单位依次进行比较,当具有被判定为相对于所述存储数据的各个位的值满足规定的大小关系的位时,将以被判定的位为开头的n位(n是2m的整数、m为1以上的 整数)的写入数据集中写入后,检查将被判定的位的写入数据写入的存储 区域中所存储的存储数据、和所述被判定的位的写入数据是否一致,当一 致时,以n位为单位执行以所述被判定的位为开头的n位以后的位的写入 数据的写入,当不一致时,禁止以所述被判定的位为开头的n位以后的位 的写入数据的写入。
22. —种半导体存储装置的写入控制方法,所述半导体存储装置具有 非易失性的存储阵列,所述写入控制方法执行如下步骤接收对所述存储阵列写入数据的请求,将输入的多位写入数据写入到应写入所输入的多位写入数据的多位存 储区域,执行所述写入后,检查存储在进行写入的存储区域中的存储数据和所 述输入的多位写入数据是否一致,当不一致时,禁止写入所述输入的多位 写入数据以后的位。
23. —种半导体存储装置的写入控制方法,所述半导体存储装置具有 非易失性的存储阵列,所述写入控制方法执行如下步骤接收对所述存储阵列的数据的写入请求,当请求对所述存储阵列进行数据的写入时,将输入的n位(n是2m的 整数、m为1以上的整数)写入数据集中写入到应写入所输入的n位写入 数据的多位存储区域,执行所述写入后,检查存储在进行写入的存储区域中的存储数据和输 入的n位写入数据是否一致,当不一致时,禁止所述输入的n位以后的位的写入数据的写入。
24. —种计算机可读介质,保存用于对具有非易失性存储阵列的半导 体存储装置的写入进行控制的计算机程序,所述计算机程序使计算机执行 下述的功能接收对所述存储阵列写入数据的请求;对输入的多位写入数据的值和存储于应写入所述多位写入数据的多位 存储区域中的多位存储数据的值从所述多位写入数据中的最高的位开始, 以l位为单位依次进行比较;当具有被判定为相对于所述存储数据的各位的值满足规定的大小关系 的位时,在对该被判定的位的写入数据执行写入后,检查对存储在执行写 入的存储区域中的存储数据和所述被判定的位的写入数据是否一致,当一 致时,执行所述被判定的位以后的位的写入数据的写入,当不一致时,禁 止所述被判定的位以后的位的写入数据的写入。
25. —种计算机可读介质,保存用于对具有非易失性存储阵列的半导体存储装置的写入进行控制的计算机程序,所述计算机程序使计算机执行下述的功能接收对所述存储阵列写入数据的请求;对输入的多位写入数据的值和存储于应写入所述多位写入数据的多位 存储区域中的多位存储数据的值从所述多位写入数据中的最高的位开始,以l位为单位依次进行比较;当具有被判定为相对于所述存储数据的各个位的值满足规定的大小关 系的位时,将以被判定的位为开头的n位(n是2m的整数、m为l以上的 整数)的写入数据集中写入后,检查进行被判定的位的写入数据的写入的 存储区域中所存储的存储数据和所述被判定的位的写入数据是否一致,当 一致时,以n位为单位执行以所述被判定的位为开头的n位以后的位的写 入数据的写入,当不一致时,禁止以所述被判定的位为开头的n位以后的 位的写入数据的写入。
26. —种印刷记录材料容器,可装卸地安装在印刷装置上,并容纳印 刷记录材料,其包括容纳所述印刷记录材料的容纳部;以及保存与所述印刷记录材料的量相关的信息的、如权利要求1 8、 15 19中任一项所述的半导体存储装置。
27. —种印刷系统,包括印刷装置以及可装卸地安装在印刷装置上的 权利要求26所述的印刷记录材料容器,所述印刷装置具有主机,该主机与安装在所述印刷记录材料容器上的 半导体存储装置经由数据信号线、时钟信号线、复位信号线、正极电源 线、以及负极电源线而总线连接,并向所述半导体存储装置发送与在印刷 装置中消耗的印刷记录材料相关的量的信息,安装在所述印刷记录材料容器上的半导体存储装置将接收的与印刷记 录材料相关的量的信息保存到所述存储阵列中。
全文摘要
当对1行中可保存8位的数据的存储阵列(100)写入16位的写入数据时,半导体存储装置(10)首先将高的位8位写入存储阵列(100)的第一写入限制行中。增量控制器(150)判定写入存储阵列(100)的现有数据的值和锁存在8位锁存寄存器(170)中并被用于写入的写入数据是否一致。当现有数据与写入数据一致时,增量控制器(150)向读/写控制器(140)发出写入许可信号(WEN1),并且对存储阵列(100)执行低的位8位的写入数据的写入。
文档编号G11C16/02GK101189681SQ20068001932
公开日2008年5月28日 申请日期2006年5月26日 优先权日2005年5月30日
发明者大塚荣太郎, 朝内升 申请人:精工爱普生株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1