CN104979006B - 一种存储器编程方法和系统 - Google Patents
一种存储器编程方法和系统 Download PDFInfo
- Publication number
- CN104979006B CN104979006B CN201410129771.0A CN201410129771A CN104979006B CN 104979006 B CN104979006 B CN 104979006B CN 201410129771 A CN201410129771 A CN 201410129771A CN 104979006 B CN104979006 B CN 104979006B
- Authority
- CN
- China
- Prior art keywords
- programming
- memory
- data
- storage unit
- external power
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Read Only Memory (AREA)
Abstract
本发明公开了一种存储器编程方法和系统,以解决增加电荷泵中电容和二极管数量,导致占用更大的存储器面积,增加存储器的成本,甚至影响存储器内其他器件使用的问题。其中方法包括:存储器在接收到编程指令后,确定编程指令对应的,需要被执行编程操作的多字节存储单元;存储器向外部电源转接板发送针对编程指令生成的编程使能信号;存储器接收外部电源转接板在接收到编程使能信号之后输出的,与编程使能信号相对应的编程电压;存储器将编程电压施加到多字节存储单元的漏极,对多字节存储单元执行编程操作。本发明不会增加存储器的面积,存储器成本较低,也不会影响存储器内其他器件的使用,并且外部电源转接板的使用更加灵活。
Description
技术领域
本发明涉及存储器技术领域,特别是涉及一种存储器编程方法和一种存储器编程系统。
背景技术
存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据。计算机中的信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。有了存储器,计算机才有记忆功能,才能保证正常工作。
在对存储器进行编程操作时,为满足编程需求通常需要使用较高的编程电压,但是一般存储器的电源电压所提供的电压强度较低,无法满足对存储器的编程需求。因此,通常会在存储器内部设置升压电路以将电源电压提供的电压强度升高至对存储器编程时所需要的电压。目前的升压电路普遍采用电荷泵(charge pump),电荷泵的升压电路中包括多个电容和多个二极管,通过两相时钟信号控制电荷传输到各个电容上,电荷的累积使得电荷泵的输出电压强度升高,升高后的电压即可满足对存储器的编程需求。
随着存储器的发展,对于存储器编程速度的要求也在不断提高,为了提高编程速度,可以采用多字节同时编程的方式,即同时对存储器中的多字节存储单元执行编程操作。但是要实现多字节同时编程,则需要强度(强度指的是提供电流的能力)更高的编程电压。针对上述问题,目前的技术中通常是增大存储器内部电荷泵的能量,提高电荷泵提供电流的能力,例如,增加电荷泵中电容和二极管数量,使得电荷累积更多。
但是,上述方法中增加电荷泵中电容和二极管数量,将会占用更大的存储器面积,从而增加存储器的成本,甚至影响存储器内其他器件的使用。
发明内容
本发明提供了一种存储器编程方法和系统,以解决在对存储器进行多字节同时编程时,增加电荷泵中电容和二极管数量,导致占用更大的存储器面积,增加存储器的成本,甚至影响存储器内其他器件使用的问题。
为了解决上述问题,本发明公开了一种存储器编程方法,其特征在于,所述存储器外接有预先设置的外部电源转接板,所述存储器包括多个存储单元,
所述方法包括:
所述存储器在接收到编程指令后,确定所述编程指令对应的,需要被执行编程操作的多字节存储单元;
所述存储器向所述外部电源转接板发送针对所述编程指令生成的编程使能信号;
所述存储器接收所述外部电源转接板在接收到所述编程使能信号之后输出的,与所述编程使能信号相对应的编程电压;
所述存储器将所述编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作。
优选地,所述编程指令包括编程数据,所述存储器上设有第一接口,所述外部电源转接板上设有第二接口,所述第一接口和所述第二接口相连接,
所述存储器向所述外部电源转接板发送针对所述编程指令生成的编程使能信号的步骤包括:
所述存储器获取所述编程数据的字节数,并根据预先设置的字节数与漏极编程电压强度的映射关系确定与所述字节数对应的漏极编程电压强度,将所述漏极编程电压强度确定为对所述存储器进行编程操作所需的漏极编程电压强度;
所述存储器生成包括所述漏极编程电压强度的编程使能信号,并通过所述第一接口和所述第二接口向所述外部电源转接板发送所述编程使能信号。
优选地,所述外部电源转接板的输出电压包括多个级别强度的编程电压,每个级别强度的编程电压分别具有自身对应的开关,
所述编程电压通过如下方式输出:
所述外部电源转接板确定所述漏极编程电压强度所对应级别强度的编程电压,并开启所述级别强度的编程电压所对应的开关,将所述级别强度的编程电压输出至所述存储器。
优选地,所述编程指令中包括编程起始地址和编程数据,
所述确定所述编程指令对应的,需要被执行编程操作的多字节存储单元的步骤包括:
所述存储器将所述编程起始地址对应的存储单元确定为当前存储单元,将所述编程数据的第一个比特确定为当前比特;
所述存储器将当前存储单元的数据与当前比特的数据进行比对;
如果所述当前存储单元的数据为逻辑1,所述当前比特的数据为逻辑0,则所述存储器确定所述当前存储单元为需要被执行编程操作的存储单元;
将下一个存储单元确定为当前存储单元,将下一个比特确定为当前比特,并返回所述将当前存储单元的数据与当前比特的数据进行比对的步骤,直至所述编程数据的所有比特全部比对完为止。
优选地,所述存储器还包括静态随机存储器SRAM,
在所述确定所述编程指令对应的,需要被执行编程操作的多字节存储单元的步骤之前,还包括:
所述存储器将所述编程数据存储至所述SRAM;
所述当前存储单元的数据为所述存储器从所述当前存储单元读出的数据,所述当前比特的数据为所述存储器从所述SRAM读出的数据。
根据本发明的另一方面,还公开了一种存储器编程系统,其特征在于,所述存储器外接有预先设置的外部电源转接板,所述存储器包括多个存储单元,
所述系统包括:
确定模块,用于在接收到编程指令后,确定所述编程指令对应的,需要被执行编程操作的多字节存储单元;
发送模块,用于向所述外部电源转接板发送针对所述编程指令生成的编程使能信号;
接收模块,用于接收所述外部电源转接板在接收到所述编程使能信号之后输出的,与所述编程使能信号相对应的编程电压;
编程模块,用于将所述编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作。
优选地,所述编程指令包括编程数据,所述存储器上设有第一接口,所述外部电源转接板上设有第二接口,所述第一接口和所述第二接口相连接,
所述发送模块包括:
确定子模块,用于获取所述编程数据的字节数,并根据预先设置的字节数与漏极编程电压强度的映射关系确定与所述字节数对应的漏极编程电压强度,将所述漏极编程电压强度确定为对所述存储器进行编程操作所需的漏极编程电压强度;
发送子模块,用于生成包括所述漏极编程电压强度的编程使能信号,并通过所述第一接口和所述第二接口向所述外部电源转接板发送所述编程使能信号。
优选地,所述外部电源转接板的输出电压包括多个级别强度的编程电压,每个级别强度的编程电压分别具有自身对应的开关,
所述编程电压通过如下方式输出:
所述外部电源转接板确定所述漏极编程电压强度所对应级别强度的编程电压,并开启所述级别强度的编程电压所对应的开关,将所述级别强度的编程电压输出至所述存储器。
优选地,所述编程指令中包括编程起始地址和编程数据,
所述确定模块包括:
第一确定子模块,用于将所述编程起始地址对应的存储单元确定为当前存储单元,将所述编程数据的第一个比特确定为当前比特;
比对子模块,用于将当前存储单元的数据与当前比特的数据进行比对;
第二确定子模块,用于在所述当前存储单元的数据为逻辑1,所述当前比特的数据为逻辑0时,确定所述当前存储单元为需要被执行编程操作的存储单元;
第三确定子模块,用于将下一个存储单元确定为当前存储单元,将下一个比特确定为当前比特,并调用所述比对子模块,直至所述编程数据的所有比特全部比对完为止。
优选地,所述存储器还包括静态随机存储器SRAM,
所述系统还包括:
存储模块,用于在所述确定模块确定所述编程指令对应的,需要被执行编程操作的多字节存储单元之前,将所述编程数据存储至所述SRAM;
所述当前存储单元的数据为所述存储器从所述当前存储单元读出的数据,所述当前比特的数据为所述存储器从所述SRAM读出的数据。
与现有技术相比,本发明包括以下优点:
本发明中可以预先设置一外部电源转接板,然后将该外部电源转接板外接于存储器上,当存储器在接收到编程指令后,可以确定所述编程指令对应的,需要被执行编程操作的多字节存储单元,并向所述外部电源转接板发送针对所述编程指令生成的编程使能信号;外部电源转接板可以输出与所述编程使能信号相对应强度的编程电压至存储器,因此存储器即可将该编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作。本发明中通过外部电源转接板提供存储器所需强度的编程电压,该外部电源转接板可以根据需求提供满足多字节同时编程时所需强度的编程电压,由于外部电源转接板外接于存储器,因此不会增加存储器的面积,存储器成本较低,也不会影响存储器内其他器件的使用,并且所述外部电源转接板的使用更加灵活。
附图说明
图1是本发明实施例一的一种存储器编程方法的流程图;
图2是本发明实施例二的一种存储器编程系统的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
现有技术中,为了实现多字节同时编程,提高编程效率,通常是通过增加电荷泵中电容和二极管数量,以提高电荷泵提供电流的能力,但是,该种方式将会占用更大的存储器面积,从而增加存储器的成本。针对上述问题,本发明提出了一种存储器编程方法和系统,预先设置外部电源转接板,并将该外部电源转接板外接于存储器,通过该外部电源转接板提供编程电压,从而避免了增加存储器面积、提高成本的问题。
下面,通过以下各个实施例分别对本发明的存储器编程方法和系统进行详细介绍。本发明中,所述存储器可以为非易失性存储器,例如可以为EEPROM(ElectricallyErasable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存(FlashMemory)等,当然所述存储器还可以为其他类型的存储器,本发明对此并不加以限制。
实施例一:
参照图1,示出了本发明实施例一的一种存储器编程方法的流程图,该方法具体可以包括以下步骤:
步骤101,所述存储器在接收到编程指令后,确定所述编程指令对应的,需要被执行编程操作的多字节存储单元。
本发明实施例中,所述存储器内部可以包括多个存储单元,对存储器的编程和擦除操作,即是指对所述存储器内部的存储单元进行编程和擦除操作。以非易失性存储器为例,所述非易失性存储器内部包括存储单元阵列,其中一个存储单元通常是一个拥有可存储电荷的浮栅器件,相比一般的MOS管(MOS管是金属(metal)-氧化物(oxid)-半导体(semiconductor)场效应晶体管),它除了拥有一个源极(source),一个漏极(drain),一个栅极(gate)之外,还额外拥有一个可存储电荷的浮动栅极(floating gate)。
对存储器进行擦除操作的目的就是将存储单元由编程(program)状态擦除为擦除(erase)状态,也即将存储单元中的数据由逻辑0擦除到逻辑1,具体是通过在存储单元的栅极和衬底施加擦除电压来实现的。对存储器进行编程操作的目的就是将存储单元由擦除(erase)状态编程为编程(program)状态,将存储单元中的数据由逻辑1编程到逻辑0,具体是通过在存储单元的栅极和漏极施加编程电压来实现的。
所述存储器在接收到编程指令(例如“02H”)后,首先可以确定所述编程指令对应的,需要被执行编程操作的多字节存储单元,即确定针对所述编程指令,需要对存储器内部的哪些存储单元进行编程操作。在本发明的一种优选实施例中,所述存储器内部的一个存储单元可以对应一个比特(bit),因此所述多字节存储单元即为多个存储单元。当然,一个存储单元还可以对应多个比特,本发明实施例对此并不加以限制,在本发明中均以一个存储单元对应一个比特为例进行说明。
在本发明的一种优选实施例中,所述编程指令中可以包括编程起始地址和编程数据,该步骤101可以包括以下子步骤:
子步骤a1,所述存储器将所述编程起始地址对应的存储单元确定为当前存储单元,将所述编程数据的第一个比特确定为当前比特;
子步骤a2,所述存储器将当前存储单元的数据与当前比特的数据进行比对;
子步骤a3,如果所述当前存储单元的数据为逻辑1,所述当前比特的数据为逻辑0,则所述存储器确定所述当前存储单元为需要被执行编程操作的存储单元;
子步骤a4,将下一个存储单元确定为当前存储单元,将下一个比特确定为当前比特,并返回所述子步骤a2,直至所述编程数据的所有比特全部比对完为止。
需要说明的是,本发明实施例中,在对存储器进行编程操作之前,首先要对所述编程指令对应的存储单元进行擦除操作,也即将所述编程指令对应的存储单元的数据均擦除到逻辑1,对于擦除操作的具体过程,本发明实施例在此不再详细论述。因此,在对所述编程指令对应的存储单元进行编程操作之前,这些存储单元的数据均为逻辑1,其中所述编程指令对应的存储单元表示从所述编程起始地址对应的存储单元开始,与所述编程数据的比特数相同个数的存储单元。
对于编程数据中的每一个比特的数据,其可能是逻辑0,也可能是逻辑1,对所述存储器进行编程操作即为将所述编程数据存入所述编程指令对应的存储单元中,即将所述编程数据的每一个比特的数据存储至与该比特对应的存储单元中。而由于在编程操作前这些存储单元中的数据均为逻辑1,因此如果要写入该存储单元的对应比特的数据本身为逻辑1,则此时可以不对该存储单元进行编程操作。
因此,可以通过上述子步骤a1~子步骤a4确定所述编程指令对应的存储单元中,需要被执行编程操作的多字节存储单元(即多个存储单元),在后续的编程过程中,仅对这些存储单元进行编程操作即可。
在本发明的一种优选实施例中,所述存储器内部还可以包括SRAM(StaticRandom-Access Memory,静态随机存储器),因此,所述存储器在接收到编程指令后,执行所述确定所述编程指令对应的,需要被执行编程操作的多字节存储单元的步骤之前,还可以将所述编程数据存储至所述SRAM,因此在上述的描述中所述当前存储单元的数据即为所述存储器从所述当前存储单元读出的数据,所述当前比特的数据为所述存储器从所述SRAM读出的数据。所述SRAM中也可以包括存储单元阵列,因此将所述编程数据存储至所述SRAM,可以为将所述编程数据中的每一个比特的数据按照顺序存储至所述SRAM中的一个存储单元中,因此即可将从该SRAM的存储单元中读出的数据与从存储器对应的存储单元中读出的数据进行比对。
步骤102,所述存储器向所述外部电源转接板发送针对所述编程指令生成的编程使能信号。
本发明实施例中,由于摒弃了现有技术中通过存储器内部的电荷泵提供存储器所需的编程电压,而采用通过外接于所述存储器的外部电源转接板提供给所述存储器所需的编程电压,因此,所述存储器在接收到编程指令之后,还可以向所述外部电源转接板发送针对所述编程指令生成的编程使能信号,以通知所述外部电源转接板需要为所述存储器输出编程电压。
为了实现外部电源转接板与存储器的通信,在本发明的一种优选实施例中,可以预先在存储器上设置第一接口,并在所述外部电源转接板上设置第二接口,并将所述第一接口和所述第二接口相连接,因此,外部电源转接板和存储器即可通过上述第一接口和第二接口进行通信。
因此,本发明实施例中,该步骤102具体可以包括以下子步骤:
子步骤b1,所述存储器获取所述编程数据的字节数,并根据预先设置的字节数与漏极编程电压强度的映射关系确定与所述字节数对应的漏极编程电压强度,将所述漏极编程电压强度确定为对所述存储器进行编程操作所需的漏极编程电压强度;
子步骤b2,所述存储器生成包括所述漏极编程电压强度的编程使能信号,并通过所述第一接口和所述第二接口向所述外部电源转接板发送所述编程使能信号。
由于对所述存储单元进行编程操作是通过在存储单元的栅极和漏极施加编程电压来实现的,而需要同时进行编程的字节数越多,所需要施加在漏极的编程电压的强度也就越大。因此,本发明实施例中,可以预先设置字节数与漏极编程电压强度的映射关系,根据所述映射关系即可获知当前编程数据的字节数所对应的漏极编程电压强度是多少,该漏极编程电压强度即为对所述存储器进行编程操作所需的漏极编程电压强度,也即此时需要所述外部电源转接板输出的编程电压是多少。在确定上述漏极编程电压强度之后,即可生成包括所述漏极编程电压强度的编程使能信号,并通过所述第一接口和所述第二接口向所述外部电源转接板发送所述编程使能信号。
步骤103,所述存储器接收所述外部电源转接板在接收到所述编程使能信号之后输出的,与所述编程使能信号相对应的编程电压。
外部电源转接板在接收到所述编程使能信号之后,即可获知所述存储器当前所需的编程电压强度为所述编程使能信号中所包括的漏极编程电压强度所对应的强度,因此外部电源转接板即可选择输出对应强度的编程电压至存储器。
在本发明的一种优选实施例中,所述外部电源转接板的输出电压可以包括多个级别强度的编程电压,每个级别强度的编程电压分别具有自身对应的开关,通过开关的开启和关闭即可选择对应级别强度的编程电压输出,即如果开启某一级别强度的编程电压对应的开关,则外部电源转接板将输出该级别强度的编程电压,如果关闭某一级别强度的编程电压对应的开关,则外部电源转接板将不能输出该级别强度的编程电压。所述外部电源转接板的组成可以和电荷泵类似,包括多个二极管和多个电容等,可以根据所述存储器中预置的字节数与漏极编程电压强度的映射关系,对所述外部电源转接板的电路进行设置,以确保外部电源转接板可以输出与各个字节对应的漏极编程电压强度对应级别强度的编程电压,例如,可以通过设置电容的容量、二极管的阈值电压等方式设置各个级别所输出的编程电压的强度,对于具体的设置过程,本年领域技术人员根据实际经验进行相关处理即可,本发明实施例在此不再详细论述。
本发明实施例中,外部电源转接板在接收到编程使能信号之后,可以通过如下方式输出对应的编程电压:所述外部电源转接板确定所述漏极编程电压强度所对应级别强度的编程电压,并开启所述级别强度的编程电压所对应的开关,将所述级别强度的编程电压输出至所述存储器。由于可以根据字节数与漏极编程电压的映射关系,设置外部电源转接板中各个级别强度的编程电压,因此可以设置所述外部电源转接板的输出电压分别为与所述漏极编程电压强度相等的各个级别强度的编程电压,则所述外部电源转接板所确定的所述漏极编程电压强度所对应级别强度的编程电压,即为与所述漏极编程电压强度相等级别强度的编程电压。当然,本发明实施例中,如果所述外部电源转接板的输出电压中没有与所述漏极编程电压强度相等级别强度的编程电压,则为了节省资源,也可以选择大于所述漏极编程电压强度、并且与所述漏极编程电压强度最接近的级别强度的编程电压。
由于外部电源转接板要将编程电压输出至存储器,因此,在所述外部电源转接板上还可以设置电压输出接口,对应的在所述存储器上还可以设置电压输入接口,所述外部电源转接板即可通过所述电压输出接口和所述电压输入接口将所述编程电压输出至所述存储器。
步骤104,所述存储器将所述编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作。
对存储单元进行编程操作时,要在存储单元的漏极施加编程电压,本发明实施例中所述外部电源转接板所输出的电压即为要施加到存储单元漏极的编程电压。因此,所述存储器接收到所述外部电源转接板在接收到所述编程使能信号之后输出的,与所述编程使能信号相对应的编程电压之后,还可以将所述编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作。
在本发明的一种优选实施例中,所述存储器内的存储单元的漏极可以均连接到上述存储器中接收所述编程电压的电压输入接口,并且可以设置每个存储单元的漏极都连接一个开关,通过控制所述开关的开启和关闭,可以控制是否在存储单元的漏极施加编程电压,即如果将与某个存储单元的漏极相连接的开关开启,则可以在该存储单元的漏极施加上述外部电源转接板输出的编程电压,反之,不能在该存储单元的漏极施加上述外部电源转接板输出的编程电压。
因此,该步骤104可以通过以下方式实现:将与所述多字节存储单元(即多个存储单元)的漏极相连接的开关开启,将所述编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作。
需要说明的是,在对存储单元进行编程操作时,还要在存储单元的栅极施加编程电压,该编程电压可以通过存储器内部提供,随着具体工艺的不同电压值也不同,对于具体实现方式,本领域技术人员根据实际经验进行相关处理即可,本发明实施例不再详细论述。
对所述多字节存储单元编程完成之后,即可将所述编程数据存入所述存储器中的从所述编程起始地址开始的、与所述编程数据的比特数相同个数的存储单元中。
本发明实施例所述的存储器编程方法中,通过在存储器上外接外部电源转接板,所述外部电源转接板可以根据编程速度的要求(即编程数据的字节数的大小)提供对应强度的编程电压,从而实现多字节同时编程,大大提高编程效率;并且存储器内部无需配置电荷泵,大大节省了存储器的面积。
对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
实施例二:
参照图2,示出了本发明实施例二的一种存储器编程系统的结构框图,该系统具体可以包括以下模块:
确定模块201,用于在接收到编程指令后,确定所述编程指令对应的,需要被执行编程操作的多字节存储单元;
发送模块202,用于向所述外部电源转接板发送针对所述编程指令生成的编程使能信号;
接收模块203,用于接收所述外部电源转接板在接收到所述编程使能信号之后输出的,与所述编程使能信号相对应的编程电压;
编程模块204,用于将所述编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作。
在本发明的一种优选实施例中,所述编程指令可以包括编程起始地址和编程数据,所述存储器上设有第一接口,所述外部电源转接板上设有第二接口,所述第一接口和所述第二接口相连接。
所述发送模块可以包括以下子模块:
确定子模块,用于获取所述编程数据的字节数,并根据预先设置的字节数与漏极编程电压强度的映射关系确定与所述字节数对应的漏极编程电压强度,将所述漏极编程电压强度确定为对所述存储器进行编程操作所需的漏极编程电压强度;
发送子模块,用于生成包括所述漏极编程电压强度的编程使能信号,并通过所述第一接口和所述第二接口向所述外部电源转接板发送所述编程使能信号。
所述确定模块可以包括以下子模块:
第一确定子模块,用于将所述编程起始地址对应的存储单元确定为当前存储单元,将所述编程数据的第一个比特确定为当前比特;
比对子模块,用于将当前存储单元的数据与当前比特的数据进行比对;
第二确定子模块,用于在所述当前存储单元的数据为逻辑1,所述当前比特的数据为逻辑0时,确定所述当前存储单元为需要被执行编程操作的存储单元;
第三确定子模块,用于将下一个存储单元确定为当前存储单元,将下一个比特确定为当前比特,并调用所述比对子模块,直至所述编程数据的所有比特全部比对完为止。
所述外部电源转接板的输出电压可以包括多个级别强度的编程电压,每个级别强度的编程电压分别具有自身对应的开关,所述编程电压可以通过如下方式输出:所述外部电源转接板确定所述漏极编程电压所对应级别强度的编程电压,并开启所述级别强度的编程电压所对应的开关,将所述级别强度的编程电压输出至所述存储器。
在本发明的一种优选实施例中,所述存储器还可以包括SRAM,所述系统还可以包括:存储模块,用于在所述确定模块确定所述编程指令对应的,需要被执行编程操作的多字节存储单元之前,将所述编程数据存储至所述SRAM。因此,所述当前存储单元的数据可以为所述存储器从所述当前存储单元读出的数据,所述当前比特的数据可以为所述存储器从所述SRAM读出的数据。
最后,需要说明的是,上述各个模块均可以为存储器内的模块。
本发明实施例中可以预先设置一外部电源转接板,然后将该外部电源转接板外接于存储器上,当存储器在接收到编程指令后,可以确定所述编程指令对应的,需要被执行编程操作的多字节存储单元,并向所述外部电源转接板发送针对所述编程指令生成的编程使能信号;外部电源转接板可以输出与所述编程使能信号相对应强度的编程电压至存储器,因此存储器即可将该编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作。本发明中通过外部电源转接板提供存储器所需强度的编程电压,该外部电源转接板可以根据需求提供满足多字节同时编程时所需强度的编程电压,由于外部电源转接板外接于存储器,因此不会增加存储器的面积,存储器成本较低,也不会影响存储器内其他器件的使用,并且所述外部电源转接板的使用更加灵活。
对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种存储器编程方法和系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种存储器编程方法,其特征在于,所述存储器外接有预先设置的外部电源转接板,所述存储器包括多个存储单元,
所述方法包括:
所述存储器在接收到编程指令后,确定所述编程指令对应的,需要被执行编程操作的多字节存储单元;
所述存储器向所述外部电源转接板发送针对所述编程指令生成的编程使能信号;
所述存储器接收所述外部电源转接板在接收到所述编程使能信号之后输出的,与所述编程使能信号相对应的编程电压;
所述存储器将所述编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作;
所述编程指令包括编程数据,所述存储器上设有第一接口,所述外部电源转接板上设有第二接口,所述第一接口和所述第二接口相连接,
所述存储器向所述外部电源转接板发送针对所述编程指令生成的编程使能信号的步骤包括:
所述存储器获取所述编程数据的字节数,并根据预先设置的字节数与漏极编程电压强度的映射关系确定与所述字节数对应的漏极编程电压强度,将所述漏极编程电压强度确定为对所述存储器进行编程操作所需的漏极编程电压强度;
所述存储器生成包括所述漏极编程电压强度的编程使能信号,并通过所述第一接口和所述第二接口向所述外部电源转接板发送所述编程使能信号。
2.根据权利要求1所述的方法,其特征在于,所述外部电源转接板的输出电压包括多个级别强度的编程电压,每个级别强度的编程电压分别具有自身对应的开关,
所述编程电压通过如下方式输出:
所述外部电源转接板确定所述漏极编程电压强度所对应级别强度的编程电压,并开启所述级别强度的编程电压所对应的开关,将所述级别强度的编程电压输出至所述存储器。
3.根据权利要求1所述的方法,其特征在于,所述编程指令中包括编程起始地址和编程数据,
所述确定所述编程指令对应的,需要被执行编程操作的多字节存储单元的步骤包括:
所述存储器将所述编程起始地址对应的存储单元确定为当前存储单元,将所述编程数据的第一个比特确定为当前比特;
所述存储器将当前存储单元的数据与当前比特的数据进行比对;
如果所述当前存储单元的数据为逻辑1,所述当前比特的数据为逻辑0,则所述存储器确定所述当前存储单元为需要被执行编程操作的存储单元;
将下一个存储单元确定为当前存储单元,将下一个比特确定为当前比特,并返回所述将当前存储单元的数据与当前比特的数据进行比对的步骤,直至所述编程数据的所有比特全部比对完为止。
4.根据权利要求3所述的方法,其特征在于,所述存储器还包括静态随机存储器SRAM,
在所述确定所述编程指令对应的,需要被执行编程操作的多字节存储单元的步骤之前,还包括:
所述存储器将所述编程数据存储至所述SRAM;
所述当前存储单元的数据为所述存储器从所述当前存储单元读出的数据,所述当前比特的数据为所述存储器从所述SRAM读出的数据。
5.一种存储器编程系统,其特征在于,所述存储器外接有预先设置的外部电源转接板,所述存储器包括多个存储单元,
所述系统包括:
确定模块,用于在接收到编程指令后,确定所述编程指令对应的,需要被执行编程操作的多字节存储单元;
发送模块,用于向所述外部电源转接板发送针对所述编程指令生成的编程使能信号;
接收模块,用于接收所述外部电源转接板在接收到所述编程使能信号之后输出的,与所述编程使能信号相对应的编程电压;
编程模块,用于将所述编程电压施加到所述多字节存储单元的漏极,对所述多字节存储单元执行编程操作;
所述编程指令包括编程数据,所述存储器上设有第一接口,所述外部电源转接板上设有第二接口,所述第一接口和所述第二接口相连接,
所述发送模块包括:
确定子模块,用于获取所述编程数据的字节数,并根据预先设置的字节数与漏极编程电压强度的映射关系确定与所述字节数对应的漏极编程电压强度,将所述漏极编程电压强度确定为对所述存储器进行编程操作所需的漏极编程电压强度;
发送子模块,用于生成包括所述漏极编程电压强度的编程使能信号,并通过所述第一接口和所述第二接口向所述外部电源转接板发送所述编程使能信号。
6.根据权利要求5所述的系统,其特征在于,所述外部电源转接板的输出电压包括多个级别强度的编程电压,每个级别强度的编程电压分别具有自身对应的开关,
所述编程电压通过如下方式输出:
所述外部电源转接板确定所述漏极编程电压强度所对应级别强度的编程电压,并开启所述级别强度的编程电压所对应的开关,将所述级别强度的编程电压输出至所述存储器。
7.根据权利要求5所述的系统,其特征在于,所述编程指令中包括编程起始地址和编程数据,
所述确定模块包括:
第一确定子模块,用于将所述编程起始地址对应的存储单元确定为当前存储单元,将所述编程数据的第一个比特确定为当前比特;
比对子模块,用于将当前存储单元的数据与当前比特的数据进行比对;
第二确定子模块,用于在所述当前存储单元的数据为逻辑1,所述当前比特的数据为逻辑0时,确定所述当前存储单元为需要被执行编程操作的存储单元;
第三确定子模块,用于将下一个存储单元确定为当前存储单元,将下一个比特确定为当前比特,并调用所述比对子模块,直至所述编程数据的所有比特全部比对完为止。
8.根据权利要求7所述的系统,其特征在于,所述存储器还包括静态随机存储器SRAM,
所述系统还包括:
存储模块,用于在所述确定模块确定所述编程指令对应的,需要被执行编程操作的多字节存储单元之前,将所述编程数据存储至所述SRAM;
所述当前存储单元的数据为所述存储器从所述当前存储单元读出的数据,所述当前比特的数据为所述存储器从所述SRAM读出的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410129771.0A CN104979006B (zh) | 2014-04-01 | 2014-04-01 | 一种存储器编程方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410129771.0A CN104979006B (zh) | 2014-04-01 | 2014-04-01 | 一种存储器编程方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104979006A CN104979006A (zh) | 2015-10-14 |
CN104979006B true CN104979006B (zh) | 2019-04-26 |
Family
ID=54275448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410129771.0A Active CN104979006B (zh) | 2014-04-01 | 2014-04-01 | 一种存储器编程方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104979006B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4916334A (en) * | 1987-07-29 | 1990-04-10 | Kabushiki Kaisha Toshiba | High voltage booster circuit for use in EEPROMs |
CN1507631A (zh) * | 2001-03-21 | 2004-06-23 | ����뵼��ɷ�����˾ | 用以在写入存储器阵列时偏压选择和未选择阵列线的方法与装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100628832B1 (ko) * | 2004-11-10 | 2006-09-26 | 삼성전자주식회사 | 불휘발성 반도체 메모리 장치의 펌핑전압 발생회로 |
-
2014
- 2014-04-01 CN CN201410129771.0A patent/CN104979006B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4916334A (en) * | 1987-07-29 | 1990-04-10 | Kabushiki Kaisha Toshiba | High voltage booster circuit for use in EEPROMs |
CN1507631A (zh) * | 2001-03-21 | 2004-06-23 | ����뵼��ɷ�����˾ | 用以在写入存储器阵列时偏压选择和未选择阵列线的方法与装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104979006A (zh) | 2015-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102708926B (zh) | 一种移位寄存器单元、移位寄存器、显示装置和驱动方法 | |
CN101800078B (zh) | 一种非易失存储器的擦除方法及装置 | |
CN102420013B (zh) | 半导体存储器设备 | |
CN109427380A (zh) | 半导体存储器装置及其操作方法 | |
CN101986389B (zh) | 闪存单元、闪存装置及其编程方法 | |
CN102024496B (zh) | 闪存系统及其逻辑状态读取方法和编程方法 | |
CN103811068A (zh) | 非易失存储器的擦除方法及系统 | |
CN106057238B (zh) | 闪存单元的操作方法 | |
CN104979005B (zh) | 一种存储器编程方法和系统 | |
CN106816170B (zh) | 电阻式记忆胞的写入方法及电阻式内存 | |
CN104979006B (zh) | 一种存储器编程方法和系统 | |
CN103680621A (zh) | 具有电荷泵的nvm及其方法 | |
CN103811060A (zh) | Eeprom及其存储阵列 | |
CN103106922A (zh) | 分离栅存储阵列的编程方法 | |
CN103456363A (zh) | 电可擦除可编程只读存储器的控制方法 | |
CN109102834A (zh) | 用于闪存页编程的数据锁存电路、页数据锁存器及方法 | |
CN101375340A (zh) | 写操作期间使用恢复晶体管以防止非选定元件的干扰 | |
CN204516363U (zh) | 一种新型NOR Flash译码电路 | |
CN110910940B (zh) | 存储器的编程方法、装置、存储设备和存储介质 | |
CN102194518B (zh) | 存储器 | |
CN107707115A (zh) | 电压控制电路 | |
CN103839587A (zh) | 电可擦可编程只读存储器以及操作方法 | |
CN105913875B (zh) | 控制电路、存储装置及操作方法 | |
CN103715883B (zh) | 一种电荷泵电路 | |
CN104795105B (zh) | 电荷泵电路及能在读操作时进行放电的eeprom |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094 Patentee after: Zhaoyi Innovation Technology Group Co.,Ltd. Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing Patentee before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc. |