半导体存储装置的制作方法

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

发明内容
但是,例如存在向半导体存储装置输入的数据在传输过程中发生数据 变化的情况,在这种情况下,即便在半导体存储装置中正常地进行了数据 的改写,在半导体存储装置中也将存储错误的数据。g卩,例如在数据具有 增大的特性的情况下,有可能对半导体存储装置写入了其值比现有数据小 的数据。这里,在为了制止或防止利用耗材的装置受损或出故障而使用与 耗材的余量或消耗量有关的数据的情况下,当与耗材的余量或消耗量有关 的数据向原来的增减特性相反的方向发生变化时,利用耗材的装置有时就 会发生故障。
本发明就是为了解决上述问题而作出的,其目的在于,在半导体存储 装置中限制与写入数据所具有的增减特性相反的值的数据的写入。本发明 的目的还在于,在半导体存储装置中禁止不满足规定的数据条件的输入数 据的写入。
为了解决上述问题,本发明的第一方面提供一种半导体存储装置。本 发明第一方面涉及的半导体存储装置包括顺序存取的非易失性的存储阵 列,具有规定的地址单位的写入限制保存地址,该写入限制保存地址保存 具有值增大的特性的数据;写入数据保持模块,以规定的地址单位保持应 写入所述写入限制保存地址中的写入数据;数据写入模块,以所述规定的
地址单位向所述写入限制保存地址写入所述保持的写入数据;读出模块, 读出保存于所述存储阵列的所述写入限制保存地址中的现有数据;判定模 块,判定所述保持的写入数据的值是否为比所述读出的现有数据的值小的 值;以及控制部,当所述写入数据的值小于所述现有数据的值时,不执行 由所述写入模块对所述存储阵列的所述写入限制保存地址进行的所述写入 数据的写入。
在本发明第一方面涉及的半导体存储装置中,所述控制部也可以在所
述写入数据的值为所述现有数据的值以上时,执行对所述写入限制保存地 址的所述写入数据的写入。
根据本发明第一方面涉及的半导体存储装置,判定模块判断所保持的 写入数据的值是否为比读出的现有数据的值小的值,当写入数据的值为现 有数据的值以上时,控制部通过写入模块来执行对存储阵列的写入限制保 存地址的写入数据的写入。此外,当写入数据的值小于现有数据的值时, 控制部不执行对写入限制保存地址的写入数据的写入。从而,能够限制与 值增大的写入数据的特性相反的值的数据的写入。
在本发明第一方面涉及的半导体存储装置中,也可以如下当所述写 入限制保存地址数为所述规定的地址单位的n倍(n为自然数)时,所述 判定模块按每个所述规定的地址单位,判定所述写入数据的值是否小于所 述现有数据的值,当在所述写入限制保存地址的任一地址中所述写入数据 的值小于所述现有数据的值时,所述控制部不对所述存储阵列的所有的所 述写入限制保存地址执行通过所述写入模块的所述写入数据的写入。
在本发明第一方面涉及的半导体存储装置中,所述控制部也可以在所 有的所述写入限制保存地址中所述写入数据的值为所述现有数据的值以上 时,对所述所有的所述写入限制保存地址执行所述写入数据的写入。
在以上的情况下,当在半导体存储装置中具备多个写入限制保存地址 时,能够在所有的限制保存地址中限制与值增大的写入数据的特性相反的 值的数据的写入。
在本发明第一方面涉及的半导体存储装置中,也可以如下每当由所 述读出模块每次1个地址地读出所述现有数据时,所述判定模块从所述写 入数据保持模块每次1个地址地读出所述写入数据,并判定所述写入数据 的值是否为比所述读出的现有数据的值小的值。在此情况下,不需要用于 保存读出的现有数据的结构,就能够判定写入数据的值是否为比读出的现 有数据的值小的值。
在本发明第一方面涉及的半导体存储装置中,所述判定模块也可以利 用由所述读出模块每次1个地址地读出的所述规定地址单位的现有数据、 和保持于所述写入数据保持模块中的所述规定地址单位的写入数据,来判定所述写入数据的值是否为比所述读出的现有数据的值小的值。在此情况 下,能够以规定的地址单位集中判定写入数据的值是否为比读出的现有数 据的值小的值。
在本发明第一方面涉及的半导体存储装置中,也可以在所述存储阵列 的写入限制保存地址中从最高的位依次保存数据,并且所述数据写入模块 从最高的位依次执行对所述存储阵列的数据写入。在此情况下,能够更迅 速地执行写入数据的值是否为比读出的现有数据的值小的值的判定。
当被写入的数据的特性具有值减少的特性时,本发明第一方面涉及的 半导体存储装置也可以包括顺序存取的非易失性的存储阵列,具有规定 的地址单位的写入限制保存地址,该写入限制保存地址保存具有值减少的 特性的数据;写入数据保持模块,以规定的地址单位保持应写入所述写入 限制保存地址中的写入数据;数据写入模块,以所述规定的地址单位向所
述写入限制保存地址写入所述保持的写入数据;读出模块,读出保存于所 述存储阵列的所述写入限制保存地址中的现有数据;判定模块,判定所述 保持的写入数据的值是否为比所述读出的现有数据的值大的值;以及控制 部,当所述写入数据的值为比所述现有数据的值大的值时,不执行由所述 写入模块对所述存储阵列的所述写入限制保存地址进行的所述写入数据的 写入。
此外,所述控制部也可以在所述写入数据的值为所述现有数据的值以 下时,执行对所述写入限制保存地址的所述写入数据的写入。
当被写入的数据的特性具有值减少的特性时,本发明第一方面涉及的 半导体存储装置通过判定模块来判定保持的写入数据的值是否为比读出的 现有数据的值大的值,当写入数据的值为现有数据的值以下时,控制部通 过写入模块来执行对存储阵列的写入限制保存地址的写入数据的写入。此 外,当写入数据的值大于现有数据的值时,不执行对写入限制保存地址的 写入数据的写入,因此能够限制与值减少的写入数据的特性相反的值的数 据的写入。
本发明第二方面提供一种将具有值增大的特性的数据存储为可改写的 数据的半导体存储装置。本发明第二方面涉及的半导体存储装置包括顺
序存取非易失性的存储阵列,该存储阵列具有保存所述可改写的数据的写 入限制行,该写入限制行在1行中具有8个保存1位数据的数据单元;数 据接收模块,接收应写入所述存储阵列的所述写入限制行中的成倍于8位 的写入数据;写入数据保持模块,保持所述接收的写入数据中的8位的写
入数据;数据写入模块,以8位单位向所述写入限制行写入所述保持的8 位的写入数据;读出模块,读出保存于所述存储阵列的所述写入限制行的 数据单元中的现有数据;判定模块,按每8位单位的写入数据,判定所述 写入数据的值是否为所述读出的现有数据的值以上的值;以及控制部,当 在8位单位的写入数据的任一个中所述写入数据的值小于现有数据的值 时,不执行由所述写入模块对所述写入限制行的所有的对象数据单元进行 的所述写入数据的写入。
在本发明第二方面涉及的半导体存储装置中,所述控制部也可以在所 有所述8位单位的写入数据中所述写入数据的值为所述现有数据的值以上 时,对所述写入限制行的所有的对象数据单元执行所述写入数据的写入。
根据本发明第二方面涉及的半导体存储装置,判定模块按每8位单位 的写入数据判定写入数据的值是否为比读出的现有数据的值小的值,当在 所有8位单位的写入数据中写入数据的值为读出的现有数据的值以上时, 通过写入数据模块对写入限制行的所有的对象数据单元进行写入数据的写 入。此外,当在8位单位的写入数据的任一个中写入数据的值小于现有数 据的值时,控制部不执行对写入限制行的所有的对象数据单元的写入数据 的写入。从而,能够限制与值增大的写入数据的特性相反的值的数据的写 入。
在本发明第二方面涉及的半导体存储装置中,也可以如下每当由所 述读出模块每次1位地读出所述现有数据时,所述判定模块从所述写入数 据保持模块每次1位地读出所述写入数据,并判定所述写入数据的值是否 为比所述读出的现有数据的值小的值。在此情况下,不需要用于保存读出 的现有数据的结构,就能够判定写入数据的值是否为比读出的现有数据的 值小的值。
在本发明第二方面涉及的半导体存储装置中,也可以如下所述判定 模块利用由所述读出模块每次1位地读出的所述成倍于8位的现有数据、 和保持于所述写入数据保持模块中的所述8位的写入数据,来判定所述写 入数据的值是否为比所述读出的现有数据的值小的值。在此情况下,能够 以8位单位集中判定写入数据的值是否为比读出的现有数据的值小的值。
在本发明第二方面涉及的半导体存储装置中,也可以在所述写入限制 行的数据单元中,从最高的位依次保存数据,并且所述数据写入模块从最 高的位依次执行对所述存储阵列的数据写入。在此情况下,能够更迅速地 执行写入数据的值是否为比读出的现有数据的值小的值的判定。
当被写入的数据的特性具有值减少的特性时,本发明第二方面涉及的 半导体存储装置也可以包括顺序存取的非易失性的存储阵列,该存储阵 列具有保存所述可改写的数据的写入限制行,该写入限制行在1行中具有 8个保存1位数据的数据单元;数据接收模块,接收应写入所述存储阵列 的所述写入限制行中的成倍于8位的写入数据;写入数据保持模块,保持 所述接收的写入数据中的8位的写入数据;数据写入模块,以8位单位向 所述写入限制行写入所述保持的8位的写入数据;读出模块,以l位单位 读出保存于所述存储阵列的所述写入限制行的数据单元中的现有数据;判
定模块,按每8位单位的写入数据,判定所述写入数据的值是否为所述读 出的现有数据的值以上的值;以及控制部,当在8位单位的写入数据的任 一个中所述写入数据的值大于现有数据的值时,不执行由所述写入模块对 所述写入限制行的所有的对象数据单元进行的所述写入数据的写入。
此外,所述控制部也可以在所有所述8位单位的写入数据中所述写入 数据的值为所述现有数据的值以下时,对所述写入限制行的所有的对象数 据单元执行所述写入数据的写入。
当被写入的数据的特性具有值减少的特性时,本发明第二方面涉及的 半导体存储装置通过判定模块按每8位单位的写入数据判定写入数据的值 是否为比读出的现有数据的值大的值,当在所有的8位单位的写入数据中 写入数据的值为现有数据的值以下时,写入模块对写入限制行的所有的对 象数据单元执行写入数据的写入。此外,当在8位单位的写入数据的任一 个中写入数据的值为比现有数据的值大的值时,控制部不执行对写入限制
行的所有的对象数据单元的写入数据的写入。从而,能够限制与值减少的 写入数据的特性相反的值的数据的写入。
本发明第三方面提供一种半导体存储装置的数据的写入控制方法,所 述半导体存储装置包括具有规定的地址单位的写入限制保存地址的非易失 性存储阵列,并对存储阵列以规定的地址单位写入数据,该写入限制保存 地址保存具有值增大的特性的数据。本发明第三方面涉及的方法读出保存 于所述存储阵列的所述写入限制保存地址中的现有数据,判定写入所述写 入限制保存地址的写入数据的值是否为比所述读出的现有数据的值小的 值,并且,当所述写入数据的值小于所述现有数据的值时,不对所述写入 限制保存地址以所述规定的地址单位写入所述写入数据。
当被写入的数据的特性具有值减少的特性时,本发明第三方面涉及的 方法也可以读出保存于所述存储阵列的所述写入限制保存地址中的现有数 据,判定写入所述写入限制保存地址的写入数据的值是否为比所述读出的 现有数据的值大的值,并且,当所述写入数据的值为比所述现有数据的值 大的值时,不对所述写入限制保存地址以所述规定的地址单位写入所述写 入数据。
根据本发明第三方面涉及的数据的写入控制方法,能够获得与本发明 第一方面涉及的半导体存储装置相同的作用效果,并且本发明第三方面涉 及的数据的写入控制方法还能够与本发明第一方面涉及的半导体存储装置 同样地以各种方式实现。
本发明第四方面提供一种半导体存储装置中的数据的写入控制方法, 所述半导体存储装置具有被顺序存取的非易失性的存储阵列,该存储阵列 具有保存具有值增大的特性的可改写的数据的写入限制行,该写入限制行 在1行中具有8个保存1位数据的数据单元所述半导体存储装置以8位单 位对存储阵列写入数据。本发明第四方面涉及的方法是接收应写入所述存 储阵列中的成倍于8位的写入数据,保持所述接收的写入数据中的8位的 写入数据,读出保存于所述存储阵列的所述写入限制行的数据单元中的现
有数据,按每8位单位的写入数据来判定所述写入数据的值是否为比所述 读出的现有数据的值小的值,并且,当在8位单位的写入数据的任一个中
所述写入数据的值小于所述现有数据的值时,不对所述写入限制行的所有 的数据单元写入所述写入数据。
当被写入的数据的特性具有值减少的特性时,本发明第四方面涉及的 方法也可以接收应写入所述存储阵列中的成倍于8位的写入数据,保持所 述接收的写入数据中的8位的写入数据,读出保存于所述存储阵列的所述 写入限制行的数据单元中的现有数据,按每8位单位的写入数据来判定所
述写入数据的值是否为比所述读出的现有数据的值大的值,并且,当在8
位单位的写入数据的任一个中所述写入数据的值大于所述现有数据的值 时,不对所述写入限制行的所有的数据单元写入所述写入数据。
根据本发明第四方面涉及的数据的写入控制方法,能够获得与本发明 第二方面涉及的半导体存储装置相同的作用效果,并且本发明第四方面涉 及的数据的写入控制方法还能够与本发明第二方面涉及的半导体存储装置 同样地以各种方式实现。
除此之外,本发明第三以及第四方面涉及的方法还能够以程序以及记 录了程序的计算机可读记录介质的形式实现。
本发明第五方面提供一种半导体存储装置。本发明第五方面涉及的半
导体存储装置包括非易失性的存储阵列;以及读写控制器,控制向所述存 储阵列的数据的写入以及从所述存储阵列的数据的读出;所述读写控制器 在被请求对所述存储阵列进行数据的写入时,对输入的多位写入数据的 值、和存储于应写入所述多位写入数据的多位存储区域中的多位存储数据 的值进行比较,对于满足规定的大小关系的所述多位写入数据,执行向所 述多位存储区域的写入,对于不满足所述大小关系的所述多位写入数据, 禁止向所述多位存储区域的写入。
根据本发明第五方面涉及的半导体存储装置,可禁止相对于存储数据 不满足规定的大小关系的写入数据的写入。
本发明第五方面涉及的半导体存储装置也可以如下构成,即包括非
易失性的存储阵列;以及读写控制器,控制向所述存储阵列的数据的写入 以及从所述存储阵列的数据的读出;所述读写控制器在被请求对所述存储 阵列进行数据的写入时,对输入的多位写入数据的值、和存储于应写入所 述多位写入数据的多位存储区域中的多位存储数据的值从所述多位写入数 据中的最高的位幵始以1位单位依次进行比较,并且,当具有判定为相对 于所述存储数据的各个位的值满足规定的大小关系的位时,对于该位以后 的位的写入数据,执行写入,当具有不满足所述规定的大小关系的位时, 对于该位以后的位的写入数据,禁止写入。
根据具有上述结构的本发明第五方面涉及的半导体存储装置,可在以 1位单位进行数据的存取的半导体存储装置中,容易地禁止相对于存储数 据不满足规定的大小关系的写入数据的写入。
本发明第五方面涉及的半导体存储装置还能够以对于半导体存储装置 的写入控制方法、程序、以及记录了程序的计算机可读记录介质的形式实 现。
本发明第六方面提供一种半导体存储装置。本发明第六方面涉及的半 导体存储装置包括非易失性存储阵列,保存作为与耗材的量相关的数据 的具有值增大的特性的耗材量数据;数据写入模块,写入应保存到所述存 储阵列中的新耗材量数据;读出模块,从所述存储阵列读出已保存的现有 耗材量数据;以及控制部,当所述新耗材量数据的值小于所述现有耗材量
数据的值时,不执行由所述数据写入模块进行的所述新耗材量数据的写 入,当所述新耗材量数据的值为所述现有耗材量数据的值以上时,执行由 所述数据写入模块进行的所述新耗材量数据的写入。根据本发明第六方面 涉及的半导体存储装置,能够获得与本发明第一及第二方面涉及的半导体 存储装置相同的作用效果。
本发明第一、二、五以及六方面涉及的半导体存储装置也可以为了保 存与所述印刷记录材料的量相关的信息而可装卸地安装在印刷装置上并容 纳印刷记录材料的印刷记录材料容器、即容纳所述印刷记录材料的容纳部 来使用。此时,能够提高与印刷记录材料的量相关的信息的可靠性。
本发明第七方面提供一种印刷系统,其包括印刷装置以及可装卸地安 装在印刷装置上的印刷记录材料容器,该印刷记录材料容器具有本发明第 一、二、五、以及六方面涉及的半导体存储装置。在本发明第七方面涉及 的印刷系统中,所述印制装置具有主机,该主机与安装在所述印刷记录材
料容器上的半导体存储装置经由数据信号线、时钟信号线、复位信号线、 正极电源线、以及负极电源线而总线连接,并向所述半导体存储装置发送 与在印刷装置中消耗的印刷记录材料相关的量的信息,安装在所述印刷记 录材料容器上的半导体存储装置将接收的与印刷记录材料相关的量的信息 保存到所述存储阵列中。根据本发明第六方面,每当保存与随着印刷而消 耗的印刷记录材料的量相关的信息时,在半导体存储装置中,能够限制与 写入数据所具有的增减特性相反的值的数据的写入。


图1是示出第一实施例涉及的半导体存储装置的功能性内部结构的框
图2是示意性地示出第一实施例涉及的半导体存储装置所具有的存储
阵列的内部结构映射(map)的说明图3是示出进行第一实施例涉及的半导体存储装置的读出动作时的复 位信号RST、外部时钟信号SCK、数据信号SDA、地址计数器值的时间 关系的时序图4是示出进行第一实施例涉及的半导体存储装置的写入动作时的复 位信号RST、外部时钟信号SCK、数据信号SDA、地址计数器值的时间 关系的时序图5是示出由第一实施例涉及的半导体存储装置执行写入处理中的增 量(increment)确认处理的处理过程的流程图6是示出由第一实施例涉及的半导体存储装置执行写入处理中的增 量确认处理的处理过程的流程图7是示出由第一实施例涉及的半导体存储装置10执行写入处理中 的数据校验处理的处理过程的流程图8是示出第一实施例中的增量确认处理的结果的一个例子的说明
图9是示出第一实施例涉及的半导体存储装置的应用例的说明图10是示出第二实施例涉及的半导体存储装置的内部电路结构的框
图11是示出第二实施例中的数据写入动作的步骤的流程图12是示出第三实施例涉及的半导体存储装置的内部电路结构的框
图13是示出第三实施例中的数据写入动作的步骤的流程图14是示出作为第三实施例的变形例的数据写入动作的步骤的流程
图15是示出作为第三实施例的变形例的数据写入动作的步骤的流程图。
具体实施例方式
下面,参考附图并基于实施例,说明本发明涉及的半导体存储装置以 及对半导体存储装置进行的数据的写入控制方法。
第一实施例 (半导体存储装置的结构)
参考图1和图2,对第一实施例的半导体存储装置的结构进行说明。 图1是示出第一实施例涉及的半导体存储装置的功能性内部结构的框图。 图2是示意性地示出第一实施例涉及的半导体存储装置所具有的存储阵列 的内部结构映射的说明图。
第一实施例涉及的半导体存储装置10是没有必要从外部输入用于指 定存取目的地址的地址数据的顺序存取方式的存储装置。半导体存储装置 IO包括存储阵列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在1行中作为规定的地址单位 而具有8个地址(与数据的8位的量相当的地址),例如在EEPROM 阵列101的一行中配置了 8个数据单元(8位),在一列中配置了 16个数 据单元(16字),从而能够保存16字X8位(128位)的数据。在掩模型 ROM阵列102的一行中配置了 8个数据单元(8位),在一列中配置了 8 个数据单元(8字),从而能够保存8字X8位(64位)的数据。
参考图2对存储阵列100的地址映射进行说明。本实施例中的存储阵 列100如上所述包括EEPROM阵列101和掩模型ROM阵列102。在 EEPROM阵列101的开头3个地址(第一行的A0 A2列、3位)中保存 了用于识别各个半导体存储装置的识别信息(ID信息)。对于包括开头3 个地址的第一行的写入是被禁止的,例如在出厂后不能进行改写。
在图2的例子中,在EEPROM阵列101的第9地址(08H) 第16 地址(0FH)以及第17地址(10H) 第24地址(07H)中保存了可以一 定条件下进行改写的16位的信息。在本实施例中,有时将由这些第9地 址 第16地址以及第17地址 第24地址构成的行称为写入限制行、或者 将第9地址 第16地址以及第17地址 第24地址的每8地址称为规定地 址单位的写入限制保存地址。此外, 一定条件是例如在所保存的信息为与 墨水消耗量相关的信息的情况下,指写入的数据值大于现有数据的值的情 况,或者,在所保存的信息为与墨水余量相关的信息的情况下,指写入的 数据值小于现有数据的值的情况。
EEPROM阵列101的第25地址及其以后是被禁止写入的读出专用区 域,例如在出厂后不能进行改写。
掩模型ROM阵列102在制造存储阵列时就被写入了信息(数据),
在制造存储阵列之后,即便在出厂前也不能进行写入。
本实施例中的存储阵列100如上所述包括以8位为单位的多个行,但 各行不是独立的数据单元列,例如通过将一条数据单元列以8位为单位进
行折叠而实现。即,为了方便不过是将包含第9位的行称为第2字节,将
包含第17位的行称为第3字节而已。其结果是,为了对存储阵列100中的
期望的地址进行存取,需要从开头依次进行存取、也就是需要以顺序存取 方式进行存取,不能对在随机存取方式的情况下可存取的期望的地址直接 进行存取。
存储阵列100中的各个数据单元与字线和位(数据)线相连,通过选
择对应的字线(行)(施加选择电压)并向对应的位线施加写入电压来向 数据单元写入数据。此外,通过选择对应的字线(行),将对应的位线连
接到IN/OUT控制器120上,并根据有无检测到电流来读出数据单元的数 据(1或0)。本实施例中的规定地址单位可称为是通过向一条字线施加 写入电压而可写入的地址数(数据单元数)。
列选择电路103根据由地址计数器110计数的外部时钟脉冲数,依次 将列(位线)连接到IN/OUT控制器120上。行选择电路104根据由地址 计数器110计数的外部时钟脉冲数,依次向行(字线)施加选择电压。 即,在本实施例涉及的半导体存储装置10中,不对使用地址数据的存储 阵列100进行存取,而是根据由专用地址计数器110计数的时钟脉冲数, 对期望的地址进行存取。
地址计数器110与复位信号端子RSTT、时钟信号端子SCKT、列选 择电路103、行选择电路104相连。地址计数器110通过将经由复位信号 端子RSTT而输入的复位信号设为0 (或者,低)来设置为初始值,在复 位信号被设为l后,与经由外部时钟信号端子SCKT而输入的时钟脉冲的 下降沿同步地对时钟脉冲数进行计数(增加计数器值)。用于本实施例的 地址计数器110是保存与存储阵列100的一行的数据单元数(位数)对应 的8个时钟脉冲数的8位的地址计数器。初始值只要与存储阵列100的开 头位置相关联,可以是任意的值,通常将0用作初始值。
IN/OUT控制器120是用于向存储阵列100传送输入到数据信号端子 SDAT上的写入数据,或者接收从存储阵列100读出的数据并将其输出给 数据信号端子SDAT的电路。IN/OUT控制器120与数据信号端子 SDAT、复位信号端子RSTT、存储阵列100、读/写控制器140相连,并根据来自读/写控制器140的请求,对向存储阵列100的数据传送方向以及向
数据信号端子SDAT (与数据信号端子SDAT连接的信号线)的数据传送 方向进行切换控制。在从数据信号端子SDAT向IN/OUT控制器120的输 入信号线上连接了将从数据信号端子SDAT输入的写入数据临时存储的8 位锁存寄存器170。在8位锁存寄存器170中保持从数据信号端子SDAT 经由信号线而输入的数据列(MSB)直至达到8位为止,并在收集到8位 时,向EEPROM阵列101写入所保持的8位的数据。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。 ID比较器130 —旦被输入复位信号RST (RST二0或低),就清除寄存器的值。
读/写控制器140与IN/OUT控制器120、 ID比较器130、增量控制器150、电荷泵电路160、时钟信号端子SCKT、数据信号端子SDAT、复位 信号端子RSTT相连。读/写控制器140是与输入复位信号RST之后的第4 个时钟信号同步确认经由数据信号端子SDAT而输入的读/写控制信号(接 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得到的电压进 行升压来生成必要的写入电压。 (读出处理)
参考图3对第一实施例涉及的半导体存储装置10中的读出动作进行 说明。图3是示出进行第一实施例涉及的半导体存储装置的读出动作时的 复位信号RST、外部时钟信号SCK、数据信号SDA、地址计数器值的时 间关系的时序图。
在读出动作之前,先对基于操作码进行的识别信息的确认、读/写命令 的确认处理进行说明。当复位状态(RST = 0或低)被解除(RST = 1或 高)时,从图中没有示出的主机与外部时钟信号同步地向数据信号端子 SDAT输入包含4位的操作码的数据信号SDA。如图3所示,在操作码的 开头3位中包含识别信息IDO、 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的计数器值增加到与规定的地址对应的计数 器值。其结果是,从由依次增加的地址计数器110的计数器值指定的地址 与时钟信号SCK同步地顺序读出现有数据DE。
本实施例涉及的半导体存储装置10的存储阵列100只有00H BFH
的地址,但地址计数器110却向上计数到地址FFH。地址C0H FFH是虚 拟区域,在存储阵列100中并不存在所对应的地址,并且在对所述虚拟区 域进行存取的期间,向数据信号端子SDAT输出"0"值。当由地址计数 器110向上计数到地址FFH时,地址返回到地址OOH处。在读出动作结 束后,从主机输入0或LOW (低)的复位信号RST,半导体存储装置10 处于操作码的接收等待状态。
当复位信号RST (:0或LOW)时,地址计数器110、 IN/OUT控制器 120、 ID比较器130、读/写控制器140及增量控制器150被初始化。 (写入处理)
参考图4对第一实施例涉及的半导体存储装置10中的写入动作进行 说明。图4是示出进行第一实施例涉及的半导体存储装置的写入动作时的 复位信号RST、外部时钟信号SCK、数据信号SDA、地址计数器值的时 间关系的时序图。在本实施例涉及的半导体存储装置10中,以行单位(8 位单位)、即以规定地址单位(8地址单位)进行读写。
在通过上述的ID比较器130确认识别信息一致之后,读/写控制器 140在所取得的命令位为写入命令且从增量控制器150接收了写入允许信 号WEN1的情况下,向IN/OUT控制器120输出写入允许信号WEN2。
如图4所示,在输入操作码之后,向时钟信号端子SCKT输入4个时 钟信号,作为伪写时钟,并进入写入备用状态。地址计数器110与时钟信 号SCK的下降沿同步地向上计数,因此写入备用状态之后的地址计数器 110的计数器值为08,从而从存储阵列100的地址08H开始写入数据。
在本实施例中,向1行8位的存储阵列100中写入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上升之后(=1或高)进行。
接收了写入允许信号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地址)中的写入数据DI (第2字节的 数据)的取得。此外,在第8周期的时钟信号SCK下降后的时钟为低的期 间,进行刚写入的现有数据DE与用于写入的写入数据DI是否一致的验证 处理。g卩,在时钟为低的期间,由增加控制器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是否一致。
在本实施例中,写入数据DI是16位长的数据,写入限制行为2行 (8地址X2),因此,当执行两次上述处理之后,写入数据DI就完成了 写入。在完成写入数据DI的写入后,从主机向复位信号端子RSTT输入 复位信号RST (二0或LOW),从而变为操作码的接收等待状态,结束写 入处理。
从主机送出的写入数据除了与期望改写的地址对应的数据之外,其余 的具有与存储阵列100中当前保存的数据相同的值(0或1) 。 §卩,存储 阵列100中的不被改写的地址的数据被相同的值覆盖。
当复位信号RST (-O或LOW)时,地址计数器IIO、 IN/OUT控制器 120、 ID比较器130、读/写控制器140及增量控制器150被初始化。
增量确认处理
参考图5 图8,对由第一实施例涉及的半导体存储装置IO执行的写 入处理中的增量确认处理、数据校验处理进行说明。图5和图6是示出由 第一实施例涉及的半导体存储装置10执行的写入处理中的增量 (increment)确认处理的处理过程的流程图。图7是示出由第一实施例涉 及的半导体存储装置10执行的写入处理中的数据校验处理的处理过程的 流程图。图8是示出第一实施例中的增量确认处理的结果的一个例子的说 明图。
在写入处理开始后,在16位(2字节)长的写入数据DI中的第1字 节的写入数据DI1被锁存到8位锁存寄存器170中的定时,增量控制器 150以1位单位读出保存在存储阵列100的第一写入限制行中的对应的现 有数据DE1 (步骤SIOO)。以后,将保存在第一写入限制行中的构成8位 的现有数据DE1的每一个1位的现有数据DE1设为现有数据DEln (n= 1 8)。此外,将构成8位的写入数据DI1的每一个1位的写入数据DI1 设为写入数据DIln (n=l 8)。
艮口,增量控制器150与向8位锁存寄存器170锁存第2字节的每个写 入数据D12n时使用的时钟信号SCK的下降沿同步,以1位单位读出从 IN/OUT控制器120输出并保存在存储阵列100的第一写入限制行中的对 应的现有数据DE1。应写入第1字节的写入数据的存储阵列100的地址是 与第一写入限制行对应的8个地址,8个地址既是规定单位的地址。
增量控制器150在这次的定时读出锁存于8位锁存寄存器170中的1 位的写入数据DI1 (步骤S102)。在本实施例中,写入数据DI从最高的 位(MSB)依次被输入到半导体存储装置10中,写入数据DIln以MSB 依次被锁存到8位锁存寄存器170中。
增量控制器150判断从8位锁存寄存器170读出的写入数据DIln的值 是否大于等于从存储阵列100的第一写入限制行读出的现有数据DEln的
值,即DIln^DEln (步骤S104)。增量控制器150在判断出DIln<DEln 时(步骤S104:"否"),结束本处理过程。g卩,不执行写入数据DI1的 写入。在图5中,记载了写入数据DIln的值是否大于等于现有数据DEln 的值、即DIln^DEln的判断,但也可以将该判断置换为是否为 DIln<DEln、即写入数据DIln的值是否小于现有数据DEln的值的判断。 当置换为DIltKDEln的判断时,只是交换"是"、"否"的判断而已。
当判断出DIln^DEln时(步骤S106:"是"),增量控制器150将 从第一写入限制行中读出的现有数据DEIln保存到内部所具有的8位内部 寄存器152中(步骤S106)。
增量控制器150判定是否完成了保存于第一写入限制行中的8位的现 有数据DEln和保存于8位锁存寄存器170中的8位的写入数据DIln之间 的对比(步骤S108),当判定为尚未完成时(步骤S108:"否"),重 复执行步骤S100 S106。
当判定出保存于第一写入限制行中的8位的现有数据DEln和保存于 8位锁存寄存器170中的8位的写入数据DIln之间的对比完成时(歩骤 S108:"是"),增量控制器150将保存于8位锁存寄存器170中的写入 数据DI1写入存储阵列100的第一限制行中(步骤S112)。即,DE1 — DIl,写入数据DI1成为新的现有数据DE1。更详细地说,如上所述,增 加控制器150不直接向存储阵列IOO进行写入数据DI1的写入,而是向读/ 写控制器140输出允许将保存于8位锁存寄存器170中的写入数据DI1写 入存储阵列100的第一写入限制行中的写入允许信号WEN1,并通过接收 了写入允许信号WEN1的读/写控制器140来进行写入。
增加控制器150进行数据校验处理(步骤S112),当正常完成了写入 时(步骤S114:"是"),执行图6的A以后的步骤。另一方面,增加 控制器150进行数据校验处理(步骤S112),当没有正常完成写入时(步 骤S114:"否"),结束写入处理。
参考图7对数据校验处理进行说明。增量控制器150从存储阵列100 的第一写入限制行中读出刚写入的现有数据DE1 (步骤S200),并与保存 于8位锁存寄存器170中的写入数据DI1进行比较(步骤S210)。具体来
说,增量控制器150在第1字节的写入结束后的时钟为低的期间,使用由
电荷泵电路160的内部振荡器162生成的内部时钟信号,使4位计数器 151向上计数。增量控制器150将4位计数器151的计数器值输入到列选 择电路103以及行选择电路104中,从存储阵列100的第一写入限制行经 由IN/OUT控制器120按地址的顺序读出刚写入的8位的现有数据DE1, 并将其锁存到8位内部寄存器153中。g卩,从写入备用状态以8位(8个 时钟)的延迟输出内部时钟信号。
增量控制器150判定锁存在8位内部寄存器153中的现有数据DE1与 锁存在8位锁存寄存器170中并被用于写入第一写入限制行中的写入数据 DI1是否一致(步骤S204)。当从第一写入限制行中读出的保存在8位内 部寄存器153中的现有数据DE1与保存在8位锁存寄存器170中的写入数 据DI1—致时(步骤S204:"是"),增量控制器150判断为写入正常完 成,并结束本处理过程。
当从第一写入限制行中读出的锁存在8位内部寄存器153中的现有数 据DE1与保存在8位锁存寄存器170中的写入数据DI1不一致时(步骤 S204:"否"),增量控制器150判断为写入没有正常完成,即写入异常 (步骤S208)。增量控制器150判定从第一写入限制行中读出并锁存在8 位内部寄存器153中的现有数据DE1与保存在8位内部寄存器152中的写 入前的现有数据DEl。w是否一致(步骤S210),当判定为DEl二DEl。w时 (步骤S210:"是"),结束本处理过程。另一方面,当判定为DE1# DEl。,d时(步骤S210:"否"),增量控制器150将保存在8位内部寄存 器152中的写入前的现有数据DEl。w写回存储阵列100的第一限制行中 (步骤S212),并结束本处理过程。当判定出写入异常时,不向第二写入 限制行进行剩余的写入数据DI2的写入处理。
写回处理在对第二写入限制行的写入处理周期进行。即,在第2字节 的写入数据DI2的写入周期,将保存在8位寄存器中的现有数据DEl。w输 入IN/OUT控制器120中,并与经由数据信号端子SDAT输入的数据同样 地进行向存储阵列100的第一写入限制行的写入处理。其结果是,存储阵 列100的第一及第二写入限制行中的数据恢复为进行写入处理前的值。 返回图6,对增量确认处理进行说明。当16位长的写入数据DI中的 第1字节的写入数据DI1的写入正常完成时,在剩余的第2字节的写入数
据DI2被锁存到8位锁存寄存器170的定时,增量控制器150以1位单位 读出保存在存储阵列100的第二写入限制行中的对应的现有数据DE2 (步 骤S116)。以后,将保存在第二写入限制行中的构成8位的现有数据DE2 的每一个l位的现有数据DE2设为现有数据DE2n (n二l 8)。此外,将 构成8位的写入数据DI2的每一个1位的写入数据DI2设为写入数据D12n (n=l 8)。
艮口,增量控制器150与向8位锁存寄存器170锁存第2字节的每个写 入数据DI2时使用的时钟信号SCK的下降沿同步,读出从IN/OUT控制器 120输出并保存在存储阵列100的第二写入限制行中的对应的现有数据 DE2。应写入第1字节的写入数据的存储阵列100的地址是与第二写入限 制行对应的8个地址,8个地址既是规定单位的地址。
增量控制器150在这次的定时读出锁存于8位锁存寄存器170中的写 入数据D12n (步骤S118)。在本实施例中,写入数据DI从最高的位 (MSB)依次被输入半导体存储装置10中,写入数据D12n以MSB依次 被锁存到8位锁存寄存器170中。
增量控制器150判断从8位锁存寄存器170读出的写入数据D12n的值 是否为比从存储阵列100的第一写入限制行读出的现有数据DE2n的值大 的值,艮卩D12n > DE2n (步骤S120)。增量控制器150在判断出Dlln^ DEln时(步骤S120:"否"),结束本过程。即,不执行写入数据DI2 的写入。
当判断出DI2n〉DE2n时(步骤S120:"是"),增量控制器150判 定是否完成了保存于第二写入限制行中的8位的现有数据DE2n和保存于 8位锁存寄存器170中的8位的写入数据D12n之间的对比(步骤 S122),当判定为尚未完成时(步骤S122:"否"),重复执行步骤 S116 S120。
当判定出保存于第二写入限制行中的8位的现有数据DE2n和保存于 8位锁存寄存器170中的8位的写入数据D12n之间的对比完成时(步骤
S122:"是"),增量控制器150将保存于8位锁存寄存器170中的写入
数据DI2写入存储阵列100的第二限制行中(步骤S124),并结束本处理 过程。g卩,DE2—DI2,写入数据DI2成为新的现有数据DE2。更详细地 说,如上所述,增量控制器150不直接向存储阵列IOO进行写入数据DII 的写入,而是向读/写控制器140输出允许将保存于8位锁存寄存器170中 的写入数据DI2写入存储阵列100的第二写入限制行中的写入允许信号 WEN1,并通过接收了写入允许信号WEN1的读/写控制器140来进行写 入。
参考图8,举例说明对存储阵列100允许写入的情况和不允许写入的 情况。在图8中,存储阵列100的地址被表示在横轴上,左端为最高的位 (MSB),右端为最低的位(LMSB)。地址08 0F相当于第一写入限制 行,地址10 17相当于第二写入限制行。
*在第一例中,与第一写入限制行对应的写入数据DI1与现有数据 DE1—致,与第二写入限制行对应的写入数据DI2大于现有数据DE2,因 此允许写入。
*在第二例中,与第一写入限制行对应的写入数据DI1与现有数据 DE1 —致,与第二写入限制行对应的写入数据DI2小于现有数据DE2,因 此不允许写入。
*在第三例中,与第一写入限制行对应的写入数据DI1大于现有数 据DE1,但与第二写入限制行对应的写入数据DI2小于现有数据DE2,因 此不允许写入。
*在第四例中,与第一写入限制行对应的写入数据DI1小于现有数 据DE1 ,因此不管与第二写入限制行对应的写入数据DI2和现有数据DE2 的大小关系如何均不允许写入。
参考图9,对第一实施例涉及的半导体存储装置10的应用例进行说 明。图9是示出第一实施例涉及的半导体存储装置的应用例的说明图。第 一实施例涉及的半导体存储装置10被装备在容纳耗材的容器上,例如容 纳作为印刷记录材料的墨水的墨水容纳体310、 311、 312上。当将各个墨 水容纳体310、 311、 312安装到印制装置上时,半导体存储装置10与印
刷装置所具有的主机300总线连接。即,来自主机300的数据信号线
SDA、时钟信号线SCk、复位信号线RST、正极电源线VDD、以及负极 电源线VSS均与各个墨水容纳体310、 311、 312所具有的半导体存储装置 10相连。在该应用例中,在半导体存储装置10中保存墨水余量或墨水消 耗量等与墨水量相关的信息。
如上所述,根据第一实施例涉及的半导体存储装置10,在半导体存储 装置10中,只写入值比现有数据DE大的写入数据DI。从而,能够提高 具有值增加的特性的数据的更新精度。即,当从主机发送来的写入数据DI 因噪音而变为比先前的值小的值时,或者当从主机错误地发送了比先前的 值小的值时,不向半导体存储装置10进行写入。从而,当通过耗材的消 耗量来进行装置的控制时,例如当通过墨水消耗量来监视并防止喷墨式打 印机中的墨水头的空打时,能够以更高的精度制止或防止由于空打而给墨 水头带来的损伤。
第一实施例的变形例
(1) 在上述第一实施例中,当写入数据DI2具有比现有数据DE2大 的值时,允许了对第二写入限制行的写入,但也可以在写入数据DI2与现 有数据DE2相等时允许写入。在此情况下,至少保存在存储阵列IOO中的 与耗材的消耗量相关的数据不降低,能够降低或防止随着数据的降低而引 起的问题。此时,现有数据DE2被相同值的写入数据DI2重写。
(2) 在上述第一实施例中,说明了在半导体存储装置10中保存具有 值增加的特性的数据的情况,即记录耗材的消耗量的情况,但在保存具有 值减少的特性的数据的情况,即记录耗材的余量的情况下,也能够获得同 样的利益。此时,代替增量控制器150,装备用于判定写入数据DI是否为 比现有数据DE小的值的数据的减量控制器即可。
(3) 在上述第一实施例中,作为应用例,使用了墨盒,但除此之 外,调色剂盒也能够获得同样的效果。此外,当应用于预付卡等保存货币 等价信息的介质中时也能够获得同样的效果。
(4) 在上述第一实施例中,在校验处理中使用了 4位计数器以及内 部振荡器162,但也可以不使用这些电路来进行校验处理。即,在上述实施例中,使用锁存于8位内部寄存器153中的现有数据DE1和锁存于8位 锁存寄存器170中的写入数据DI以8位单位进行了校验处理,但也可以 以1位单位进行。在此情况下,增加控制器150无需具有4位计数器151 以及8位内部寄存器153。
具体来说,增量控制器150在第2字节的写入数据DI2的每个位被锁 存到8位锁存寄存器170中的定时,从存储阵列100的第一写入限制行中 从MSB以1位单位读出刚写入的现有数据DE1。该现有数据DEI的读出 例如在进行校验处理时(锁存第2字节的写入数据DI2时)可以如下进 行,即由列选择电路103以及行选择电路104从地址计数器110输入的 计数器值中减去8个计数器值,并使用减去后的计数器值来选择存储阵列 100的读出数据即可。或者,也可以由列选择电路103以及行选择电路 104事先存储一个周期前的读出地址,然后基于从地址计数器110输入的 计数器值来依次选择所存储的地址。
另一方面,8位锁存寄存器170由于是FIFO型的寄存器,因此,每 当以1位单位锁存第2字节的写入数据DI2时,就会以1位单位释放己锁 存的写入数据DIl。增量控制器150通过对从8位锁存寄存器170自MSB 以1位单位释放的第1字节的写入数据DIl、和从存储阵列100的第一写 入限制行中自MSB以1位单位读出的现有数据DEI进行比较,能够判定 应写入的写入数据DI1是否被正确地写入存储阵列100的第一写入限制行 中,即各个位的值是否一致。通过将该位单位的比较处理重复进行8次, 能够判定是否正确地写入了第1字节的写入数据DIl。当写入第一写入限 制行中的8位的现有数据DEI全部都被正确地写入时,执行第2字节的写 入数据DI2的增量确认处理,然后向存储阵列100的第二写入限制行进行 写入数据DI2的写入。
(5)在上述第一实施例中,进行校验处理的结果,当第1字节的写 入数据DI1没有被正确地写入第一写入限制行中时,将锁存于8位内部寄 存器152中的写入前的现有数据DEl。w写回第一写入限制行中,但也可以 不进行写回。在此情况下,也不对第二写入限制中进行第2字节的写入数 据DI2的写入,可保证后8位的值为正常写入的值。另一方面,就前8位
的值来说,由于其是短期内变化不是很大的值,因而,在主机一侧,可通 过与上次值的确定性来避免问题。
(6)在上述第一实施例中,将16位长的写入数据为例进行了说明,
但除此之外,也同样能够适用于24位长、32位长等、具有成倍于存储阵 列100的1行的位长的数据长的数据,并且能够获得同样的效果。 第二实施例
半导体存储装置的结构
第二实施例涉及的半导体存储装置是非易失性地保持存储数据并以1
位单位从开头地址顺次存取的eeprom。
图10是示出第二实施例涉及的半导体存储装置的内部电路结构的框 图。该半导体存储装置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的开头位置相关 联,可以是任意的值,通常将0用作初始值。当启动装置时,或者开始或 结束存取(数据的读出或写入)时,由读写控制器1120输出计数器复位 信号crst。因此,地址计数器1130可通过从初始值依次向上计数的计数器值来 依次指定存储阵列1140的写入位置或读出位置。
存取控制器1110与芯片选择端子CST、时钟信号端子CKT、数据信 号端子IO相连,经由芯片选择端子CST输入芯片选择信号CS井,经由时 钟信号端子CKT输入时钟信号CLK,经由数据信号端子IO输入或输出数 据信号DA。输入的时钟信号CLK作为内部时钟信号而送给读写控制器 1120。当数据信号DA为输入数据信号时,作为输入数据信号IDA而送给 读写控制器1120,作为写入数据信号WDA而送给存储阵列1140。当数据 信号DA为输出数据信号时,从存储阵列1140中送出的读出数据信号 RDA作为数据信号DA而被输出。
此外,存取控制器1110根据芯片选择信号CS#、以及与时钟信号 CLK同歩输入的数据信号DA,控制存取的开始及结束。具体来说,存取 控制器1110当输入了芯片选择信号CS#,并且在预定的定时作为数据信 号DA而输入了指示数据的读出或写入的命令数据时,向读写控制器1120 和地址计数器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 的存储区域位置也从与最高的位相关联的地址依次被存取。
图11是示出第二实施例中的数据写入动作的步骤的流程图。如上所 述,当从存取控制器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)来结束该写入动作。存取动作的结束可根据是否 输入了芯片选择信号ftCS或存取允许信号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)。
例如,当输入数据[lOlOb]从左端的最高的位依次输入时,依次与存 储数据[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。
图12是示出第三实施例涉及的半导体存储装置的内部电路结构的框 图。该半导体存储装置20A除存取控制器1210、读写控制器1220、地址 计数器1230以及存储阵列1240之外,还包括数据缓冲器1228和减法器 1232。
存取控制器1210、地址计数器1230以及存储阵列1240与第二实施例 的半导体存储装置(参见图10)的存取控制器1110、地址计数器1130以 及存储阵列1140相同。
数据缓冲器1228根据从读写控制器1220输入的锁存信号DLT,锁存 来自存取控制器1210的输入数据信号IDA,并将锁存数据作为写入数据 信号WDA送给存储阵列1140。
减法器1232根据来自读写控制器1220的减法信号DEC,将用地址计 数器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的存储区域位置也从与最 高的位相关联的地址依次被存取。
图13是示出第三实施例中的数据写入动作的步骤的流程图。与第二 实施例的情况相同,当从存取控制器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以上的整数)的数据集中 起来一次写入。
图14和图15是示出作为第三实施例的变形例的数据写入动作的步骤 的流程图。在该动作中,将图13中的步骤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的计数器值 向上计数l (步骤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.一种半导体存储装置,包括顺序存取的非易失性的存储阵列,具有规定的地址单位的写入限制保存地址,该写入限制保存地址保存具有值增大的特性的数据;写入数据保持模块,以规定的地址单位保持应写入所述写入限制保存地址中的写入数据;数据写入模块,以所述规定的地址单位向所述写入限制保存地址写入所述保持的写入数据;读出模块,读出保存于所述存储阵列的所述写入限制保存地址中的现有数据;判定模块,判定所述保持的写入数据的值是否为所述读出的现有数据的值以上的值;以及控制部,当所述写入数据的值小于所述现有数据的值时,不执行由所述写入模块对所述存储阵列的所述写入限制保存地址进行的所述写入数据的写入。
2. 如权利要求1所述的半导体存储装置,其中,当所述写入数据的值为所述现有数据的值以上时,所述控制部执行对 所述写入限制保存地址的所述写入数据的写入。
3. 如权利要求1所述的半导体存储装置,其中,当所述写入限制保存地址数为所述规定的地址单位的n倍(n为自然 数)时,所述判定模块按每个所述规定的地址单位,判定所述写入数据的值是 否小于所述现有数据的值,当在所述写入限制保存地址的任一地址中所述写入数据的值小于所述 现有数据的值时,所述控制部不执行对所述所有的写入限制保存地址的所 述写入数据的写入。
4. 如权利要求3所述的半导体存储装置,其中,当在所有的所述写入限制保存地址中所述现有数据的值为所述写入数 据的值以上时,所述控制部通过所述写入模块对所述存储阵列的所有的所 述写入限制保存地址执行所述写入数据的写入。
5. 如权利要求1至4中任一项所述的半导体存储装置,其中, 每当由所述读出模块每次1个地址地读出所述现有数据时,所述判定模块从所述写入数据保持模块每次1个地址地读出所述写入数据,并判定 所述写入数据的值是否为比所述读出的现有数据的值小的值。
6. 如权利要求1至4中任一项所述的半导体存储装置,其中,所述判定模块利用由所述读出模块每次1个地址地读出的所述规定地 址单位的现有数据、和保持于所述写入数据保持模块中的所述规定地址单 位的写入数据,来判定所述写入数据的值是否为比所述读出的现有数据的 值小的值。
7. 如权利要求1至6中任一项所述的半导体存储装置,其中, 在所述存储阵列的写入限制保持地址中,从最高的位依次保存数据, 所述数据写入模块从最高的位依次执行对所述存储阵列的数据写入。
8. —种半导体存储装置,包括顺序存取的非易失性的存储阵列,具有规定的地址单位的写入限制保存地址,该写入限制保存地址保存具有值减少的特性的数据;写入数据保持模块,以规定的地址单位保持应写入所述写入限制保存地址中的写入数据;数据写入模块,以所述规定的地址单位向所述写入限制保存地址写入所述保持的写入数据;读出模块,读出保存于所述存储阵列的所述写入限制保存地址中的现有数据;判定模块,判定所述保持的写入数据的值是否为所述读出的现有数据 的值以下的值;以及控制部,当所述写入数据的值大于所述现有数据的值时,不执行由所 述写入模块对所述存储阵列的所述写入限制保存地址进行的所述写入数据 的写入。
9. 如权利要求8所述的半导体存储装置,其中, 当所述写入数据的值为所述现有数据的值以下时,所述控制部执行对 所述写入限制保存地址的所述写入数据的写入。
10. —种半导体存储装置,将具有值增大的特性的数据作为可改写的 数据而存储,包括顺序存取的非易失性的存储阵列,该存储阵列具有保存所述可改写的 数据的写入限制行,该写入限制行在1行中具有8个保存1位数据的数据 单元;数据接收模块,接收应写入所述存储阵列的所述写入限制行中的成倍于8位的写入数据;写入数据保持模块,保持所述接收的写入数据中的8位的写入数据; 数据写入模块,以8位单位向所述写入限制行写入所述保持的8位的写入数据;读出模块,读出保存于所述存储阵列的所述写入限制行的数据单元中的现有数据;判定模块,按每8位单位的写入数据,判定所述写入数据的值是否为 所述读出的现有数据的值以上的值;以及控制部,当在8位单位的写入数据的任一个中所述写入数据的值小于 现有数据的值时,不执行由所述写入模块对所述写入限制行的所有的对象 数据单元进行的所述写入数据的写入。
11. 如权利要求10所述的半导体存储装置,其中,当在所有所述8位单位的写入数据中所述写入数据的值为所述现有数 据的值以上时,所述控制部对所述写入限制行的所有的对象数据单元执行 所述写入数据的写入。
12. 如权利要求10或ll所述的半导体存储装置,其中, 每当由所述读出模块每次1位地读出所述现有数据时,所述判定模块从所述写入数据保持模块每次1位地读出所述写入数据,并判定所述写入 数据的值是否为比所述读出的现有数据的值小的值。
13. 如权利要求10或11所述的半导体存储装置,其中, 所述判定模块利用由所述读出模块每次1位地读出的所述成倍于8位 的现有数据、和保持于所述写入数据保持模块中的所述8位的写入数据, 来判定所述写入数据的值是否为比所述读出的现有数据的值小的值。
14. 如权利要求10至13中任一项所述的半导体存储装置,其中,在所述写入限制行的数据单元中,从最高的位依次保存数据, 所述数据写入模块从最高的位依次执行对所述存储阵列的数据写入。
15. —种半导体存储装置,将具有值减少的特性的数据作为可改写的数据而存储,包括顺序存取的非易失性的存储阵列,该存储阵列具有保存所述可改写的数据的写入限制行,该写入限制行在1行中具有8个保存1位数据的数据 单元;数据接收模块,接收应写入所述存储阵列的所述写入限制行中的成倍 于8位的写入数据;写入数据保持模块,保持所述接收的写入数据中的8位的写入数据;数据写入模块,以8位单位向所述写入限制行写入所述保持的8位的 写入数据;读出模块,读出保存于所述存储阵列的所述写入限制行的数据单元中 的现有数据;判定模块,按每8位单位的写入数据,判定所述写入数据的值是否为 所述读出的现有数据的值以下的值;以及控制部,当在8位单位的写入数据的任一个中所述写入数据的值大于 所述现有数据的值时,不执行由所述写入模块对所述写入限制行的所有的 对象数据单元进行的所述写入数据的写入。
16. 如权利要求15所述的半导体存储装置,其中,当在所有所述8位单位的写入数据中所述写入数据的值为所述现有数 据的值以下时,所述控制部对所述写入限制行的所有的对象数据单元执行 所述写入数据的写入。
17. —种半导体存储装置中的数据的写入控制方法,所述半导体存储 装置包括具有规定的地址单位的写入限制保存地址的非易失性存储阵列, 并以规定的地址单位对存储阵列写入数据,该写入限制保存地址保存具有 值增大的特性的数据,所述方法执行如下步骤读出保存于所述存储阵列的所述写入限制保存地址中的现有数据, 判定写入所述写入限制保存地址的写入数据的值是否为比所述读出的现有数据的值小的值,当所述写入数据的值小于所述现有数据的值时,不对所述写入限制保存地址以所述规定的地址单位写入所述写入数据。
18. —种半导体存储装置中的数据的写入控制方法,所述半导体存储 装置包括具有规定的地址单位的写入限制保存地址的非易失性存储阵列, 并以规定的地址单位对存储阵列写入数据,该写入限制保存地址保存具有 值减少的特性的数据,所述方法执行如下步骤读出保存于所述存储阵列的所述写入限制保存地址中的现有数据, 判定写入所述写入限制保存地址的写入数据的值是否为比所述读出的现有数据的值大的值,当所述写入数据的值为比所述现有数据的值大的值时,不对所述写入限制保存地址以所述规定的地址单位写入所述写入数据。
19. 一种半导体存储装置中的数据的写入控制方法,所述半,体存储 装置具有被顺序存取的非易失性的存储阵列,该存储阵列具有保存具有值 增大的特性的可改写的数据的写入限制行,该写入限制行在1行中具有8 个保存1位数据的数据单元,所述半导体存储装置以8位单位对存储阵列 写入数据,所述方法执行如下步骤接收应写入所述存储阵列中的成倍于8位的写入数据, 保持所述接收的写入数据中的8位的写入数据,读出保存于所述存储阵列的所述写入限制行的数据单元中的现有数据,按每8位单位的写入数据,判定所述写入数据的值是否为比所述读出 的现有数据的值小的值,当在8位单位的写入数据的任一个中所述写入数据的值小于所述现有数据的值时,不对所述写入限制行的所有的数据单元写入所述写入数据。
20. —种半导体存储装置中的数据的写入控制方法,所述半导体存储装置具有被顺序存取的非易失性的存储阵列,该存储阵列具有保存具有值 减少的特性的可改写的数据的写入限制行,该写入限制行在1行中具有8个保存l位数据的数据单元,所述半导体存储装置以8位单位对存储阵列写入数据,所述方法执行如下步骤接收应写入所述存储阵列中的成倍于8位的写入数据, 保持所述接收的写入数据中的8位的写入数据,读出保存于所述存储阵列的所述写入限制行的数据单元中的现有数据,按每8位单位的写入数据,判定所述写入数据的值是否为比所述读出的现有数据的值大的值,当在8位单位的写入数据的任一个中所述写入数据的值为比所述现有 数据的值大的值时,不对所述写入限制行的所有的数据单元写入所述写入 数据。
21.—种半导体存储装置,包括非易失性的存储阵列;以及读写控制器,控制向所述存储阵列的数据的写入以及从所述存储阵列 的数据的读出;所述读写控制器在被请求对所述存储阵列进行数据的写入时,对输入 的多位写入数据的值、和存储于应写入所述多位写入数据的多位存储区域 中的多位存储数据的值进行比较,对于相对于所述存储数据的值满足规定 的大小关系的所述多位写入数据,执行向所述多位存储区域的写入,对于 不满足所述大小关系的所述多位写入数据,禁止向所述多位存储区域的写 入。
22.—种半导体存储装置,包括 非易失性的存储阵列;以及读写控制器,控制向所述存储阵列的数据的写入以及从所述存储阵列 的数据的读出;所述读写控制器在被请求对所述存储阵列进行数据的写入时,对输入 的多位写入数据的值、和存储于应写入所述多位写入数据的多位存储区域 中的多位存储数据的值从所述多位写入数据中的最高的位开始以1位为单 位依次进行比较,并且当具有判定为相对于所述存储数据的各个位的值满 足规定的大小关系的位时,对于该位以后的位的写入数据,执行写入,当 具有不满足所述规定的大小关系的位时,对于该位以后的位的写入数据, 禁止写入。
23. —种半导体存储装置的写入控制方法,所述半导体存储装置具有 非易失性的存储阵列,所述写入控制方法执行如下步骤接收对所述存储阵列的数据写入请求,对输入的多位写入数据的值、和存储于应写入所述多位写入数据的多 位存储区域中的多位存储数据的值进行比较,对于相对于所述存储数据的值满足规定的大小关系的所述多位写入数 据,执行向所述多位存储区域的写入,对于不满足所述大小关系的所述多 位写入数据,禁止向所述多位存储区域的写入。
24. —种半导体存储装置的写入控制方法,所述半导体存储装置具有 非易失性的存储阵列,所述写入控制方法执行如下歩骤接收对所述存储阵列的数据写入请求,对输入的多位写入数据的值、和存储于应写入所述多位写入数据的多 位存储区域中的多位存储数据的值从所述多位写入数据中的最高的位开始 以l位为单位依次进行比较,当具有判定为相对于所述存储数据的各个位的值满足规定的大小关系 的位时,对于该位以后的位的写入数据,执行写入,当具有不满足所述规 定的大小关系的位时,对于该位以后的位的写入数据,禁止写入。
25. —种计算机可读介质,保存用于对具有非易失性存储阵列的半导 体存储装置的写入进行控制的计算机程序,所述计算机程序使计算机执行 下述的功能接收对所述存储阵列的数据写入请求;对输入的多位写入数据的值、和存储于应写入所述多位写入数据的多位存储区域中的多位存储数据的值进行比较;对于相对于所述存储数据的值满足规定的大小关系的所述多位写入数 据,执行向所述多位存储区域的写入,对于不满足所述大小关系的所述多 位写入数据,禁止向所述多位存储区域的写入。
26. —种计算机可读介质,保存用于对具有非易失性存储阵列的半导 体存储装置的写入进行控制的计算机程序,所述计算机程序使计算机执行 下述的功能接收对所述存储阵列的数据写入请求;对输入的多位写入数据的值、和存储于应写入所述多位写入数据的多 位存储区域中的多位存储数据的值从所述多位写入数据中的最高的位开始 以l位为单位依次进行比较;当具有判定为相对于所述存储数据的各个位的值满足规定的大小关系 的位时,对于该位以后的位的写入数据,执行写入,当具有不满足所述规 定的大小关系的位时,对于该位以后的位的写入数据,禁止写入。
27. —种印刷记录材料容器,可装卸地安装在印刷装置上,并容纳印刷记录材料,其包括容纳所述印刷记录材料的容纳部;以及保存与所述印刷记录材料的量相关的信息的、权利要求1至16、 21 以及22中任一项所述的半导体存储装置。
28. —种半导体存储装置,包括非易失性的存储阵列,保存作为与耗材的量相关的数据的具有值增大的特性的耗材量数据;数据写入模块,写入应保存到所述存储阵列中的新耗材量数据; 读出模块,从所述存储阵列读出已保存的现有耗材量数据;以及 控制部,当所述新耗材量数据的值小于所述现有耗材量数据的值时,不执行由所述数据写入模块进行的所述新耗材量数据的写入,当所述新耗材量数据的值为所述现有耗材量数据的值以上时,执行由所述数据写入模块进行的所述新耗材量数据的写入。
29. —种印刷记录材料容器,可装卸地安装在印刷装置上,并容纳印 刷记录材料,其包括容纳所述印刷记录材料的容纳部;以及保存与所述印刷记录材料的量相关的信息的、权利要求28所述的半 导体存储装置。
30. —种印刷系统,包括印刷装置以及可装卸地安装在印刷装置上的权利要求27或29所述的印刷记录材料容器,所述印刷装置具有主机,该主机与安装在所述印刷记录材料容器上的 半导体存储装置经由数据信号线、时钟信号线、复位信号线、正极电源 线、以及负极电源线而总线连接,并向所述半导体存储装置发送与在印刷 装置中消耗的印刷记录材料相关的量的信息,安装在所述印刷记录材料容器上的半导体存储装置将接收的与印刷记 录材料相关的量的信息保存到所述存储阵列中。
全文摘要
当输入的写入数据为存储阵列(100)的现有数据的值以上的值时,半导体存储装置(10)允许对存储阵列(100)写入所输入的写入数据。具体来说,增量控制器(150)从存储阵列(100)中读出现有数据,并与锁存于8位锁存寄存器(170)中的写入数据进行比较。当写入数据的值为现有数据的值以上时,增量控制器(150)向读/写控制器(140)输出写入允许信号(WEN1),对存储阵列(100)执行锁存于8位锁存寄存器(170)中的写入数据的写入。
文档编号G11C16/02GK101189682SQ200680019325
公开日2008年5月28日 申请日期2006年5月26日 优先权日2005年5月30日
发明者大塚荣太郎, 朝内升 申请人:精工爱普生株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1