串行接口存储器中的同时读取与写入存储器操作的制作方法

文档序号:12363598阅读:526来源:国知局
串行接口存储器中的同时读取与写入存储器操作的制作方法与工艺

本申请是分案申请。该分案申请的母案是申请日为2011年11月15日、申请号为201110370055.8、发明名称为“串行接口存储器中的同时读取与写入存储器操作”的发明专利申请案。

技术领域

本文中所揭示的标的物涉及存储器装置的读取及写入过程。



背景技术:

存储器装置用于许多类型的电子装置中,例如计算机、蜂窝电话、PDA、数据记录器及导航装备,此处仅列举几个实例。在此些电子装置当中,可采用各种类型的非易失性存储器装置,例如NAND或NOR快闪存储器、SRAM、DRAM及相变存储器,此处仅列举几个实例。一般来说,可使用写入或编程过程将信息存储于此些存储器装置中,而可使用读取过程来检索所存储的信息。

一些类型的存储器装置包含分割成例如扇区、分区等存储器单元群组的存储器单元阵列。在此些情况下,此种群组内的存储器单元可共享共用电子电路,包括例如读出放大器及行/列解码器。因此,从此种存储器单元群组的读取及向此种存储器单元群组的写入两者均可涉及某一共用电子电路。在此情况下,在此种存储器单元群组的一个部分中发生的未决写入操作可防止读取操作在同一存储器单元群组的另一部分中发生。此限制条件可导致较慢的读取操作及存储器装置的降低的总体性能。



技术实现要素:

附图说明

将参考以下各图描述非限制性及非穷尽性实施例,其中除非另外说明,否则所有各图中相似参考编号指代相似部件。

图1到图2是根据一实施例的存储器的一部分的示意图。

图3到图5是根据一实施例的用以从存储器的分区读取的过程的时序图。

图6是根据一实施例的用以从存储器的分区读取的过程的流程图。

图7是图解说明计算系统的示范性实施例的示意图。

图8是根据一实施例的串行接口存储器的框图。

具体实施方式

此说明书通篇所提及的“一个实施例”或“一实施例”意指结合所述实施例描述的特定特征、结构或特性包括在所请求标的物的至少一个实施例中。因此,在此说明书通篇中的各个地方出现的短语“在一个实施例中”或“一实施例”未必全部指代相同实施例。此外,可将所述特定特征、结构或特性组合在一个或一个以上实施例中。

在一实施例中,举例来说,可包含相变存储器(PCM)装置的存储器装置可包括分割成称为分区的存储器单元群组的存储器阵列。此存储器装置可包含串行接口存储器。串行接口存储器的应用的实例可包括打印机、多媒体卡、DVD播放器、机顶盒、数码相机、硬盘驱动器(HDD)、汽车应用、移动电话,等等。举例来说,此串行接口存储器不能与可包含磁带的一般串行存储器混淆。分区内的存储器单元可共享共用电子电路,包括例如读出放大器及行/列解码器。在一实施方案中,此存储器装置可包括用以在写入操作正在存储器阵列的特定分区中发生的同时执行操作以从同一特定分区读取的微控制器。举例来说,由此微控制器执行的技术可包括串行地接收包括命令代码及地址的读取命令。可以此地址的最高有效位(MSB)开始且以最低有效位(LSB)结束来接收所述地址。取决于特定实施方案,所述地址的数个MSB可包含用以确定哪一分区包括由所述读取命令视为目标的存储器位置的充足信息。因此,在串行地接收所述地址的数个MSB之后,所述微控制器可确定写入操作正在同一特定分区中发生。如果确定写入操作未正在同一分区中发生,那么所述微控制器可立即执行所述读取操作。然而,如果写入操作正在发生,那么所述微控制器可首先在开始所述读取操作之前开始中断所述写入操作。在稍后的时间,所述微控制器可在所述读取操作完成之后重新开始所述写入操作。在一实施方案中,所述微控制器可在继续串行地接收所述读取命令的所述地址的剩余部分(例如,LSB)的同时执行所述写入操作的此中断。因此,可同时执行接收读取命令与中断写入操作,如下文详细地阐释。尽管本文中所描述的实施例将微控制器陈述为执行各种任务或操作,但应理解,所请求标的物不受此微控制器的限制,且其它电路及/或软件可实施此些任务或操作。

在一实施例中,用以执行用以通过中断写入操作来从存储器分区读取的技术的微控制器(如上文所描述)可在内部位于存储器装置内,但所请求标的物不受此限制。举例来说,计算系统可包括用以执行应用程序的处理器、存储器装置及连接于所述处理器与所述存储器装置之间的存储器控制器。举例来说,响应于执行应用程序,此处理器可起始从所述存储器装置中的特定位置读取的读取命令。响应于接收此读取命令,所述存储器控制器可通过产生针对所述存储器装置的读取命令且将所述读取命令串行地提供到所述存储器装置来执行读取操作。在此情况下,所述处理器及/或所述存储器控制器不需要知道正在所述存储器装置中发生的写入操作是否可与读取操作(例如,在所述存储器装置的同一分区内)冲突。而是,所述存储器装置内部的微控制器可执行若干个过程以允许所述读取操作在不与所述写入操作冲突的情况下继续进行。因此,存储器控制器及/或处理器不需要具有监视存储器装置内的写入过程以防止读取-写入冲突的负担。

如上文所提及,处理器可执行一个或一个以上应用程序,从而产生用以从存储器装置读取或向所述存储器装置写入的操作。然而,在一实施例中,某一写入操作可由微控制器在若干个内部存储器过程中的任一者期间起始。举例来说,微控制器可起始存储器阵列的一个或一个以上分区中的写入操作以执行损耗均衡、垃圾收集、坏块管理及/或刷新过程。举例来说,此些过程可包含应用层级处的处理器及/或用户不可见的后台操作。本文中所描述的实施例可允许此些写入操作在不需要存储器控制器及/或处理器暂停此些内部存储器过程的情况下发生。

图1是根据一实施例的存储器的一部分100的示意图。举例来说,此存储器可包含可以存储器单元的数据分区组织的PCM。在以下说明中,可将存储器的此部分描述为包含八个数据分区。仅出于方便以及简化阐释及理解的目的而描述数据分区的此特定数目。然而,应理解,本文中所描述的实施例中所涉及的数据分区的数目不限于任何特定数目,且所请求标的物在此方面不受限制。继续对图1的说明,存储器部分100可包括若干个(例如,八个)数据分区110。在一个实施方案中,举例来说,此些数据分区可包含存储器单元阵列116、行解码器113、列解码器136、程序负载(PL)133(例如,在写入操作期间用以确定待写入的存储器单元)、一个或一个以上读出放大器130及相关联数据分区的读取/写入操作中所涉及的其它电路120。

在一实施方案中,用以从一个数据分区直接读取的读取操作可与用以向不同数据分区写入的写入操作同时发生。在此情况下,无竞争或冲突需要发生,若干个原因当中的一个原因是此些数据分区可包括(例如)其自己的读取电路(例如,读出放大器)以及/或者行及列解码电路,。因此对于一特定实例,用以从数据分区1直接读取的读取操作140可与用以向数据分区6写入的写入操作160同时发生。举例来说,读取操作140可包括经由读出放大器130测量数据分区1中的经读取存储器单元的状态及将表示所述状态的数据写入到输出缓冲器150中的过程145。

图2是根据另一实施例的存储器的部分100的示意图。如上文所提及,用以从一个数据分区直接读取的读取操作可与用以向不同数据分区写入的写入操作同时发生。然而,在被展示为在数据分区170中发生的情况下,冲突可发生。特定来说,用以从数据分区6的一个块直接读取的读取操作240可能不能与用以向数据分区6的另一块写入的写入操作260同时发生。在一个实施方案中,举例来说,在接收到执行读取操作240的命令(例如,从外部处理器或从内部存储器控制器的一部分)后,可即刻暂停写入操作260,直到读取操作240完成。此写入操作暂停可因来自处理器及/或存储器控制器的特定命令而产生。在另一实施方案中,可拒绝及/或延迟执行读取操作240的命令,直到写入操作260完成。在任一实施方案中,举例来说,读取操作240可包括经由读出放大器130测量分区6中的经读取存储器单元的状态及将表示所述状态的数据写入到输出缓冲器250中的过程245。

图3是根据一实施例用以从存储器的分区读取的过程的时序图。图8是根据一实施例的串行接口存储器800的框图,举例来说,串行接口存储器800可执行用以从存储器的分区读取的此过程。串行接口存储器800可包含用以接收关于数据、命令、地址等的信息的输入端口810。举例来说,串行接口存储器800还可包含用以接收时钟信号的输入端口820及用以传输包括所读取数据的信息的输出端口。类似于包含上文所描述的部分100的存储器,此存储器可包含可以存储器单元的分区组织的PCM。举例来说,行310可包括经由串行接口存储器800的端口810串行地提供到微控制器的信息。此处,“串行”意指此信息可由微控制器一次一个位顺序地接收或传输。在一实施方案中,举例来说,可至少部分地基于经由端口820提供到串行接口存储器800的时钟信号305来顺序地接收此信息。特定来说,可在时钟信号305的上升沿锁存(例如,存储、接收)此信息。行310可包含命令代码部分312、地址部分314、虚部分316及数据输出部分318。如行330中所指示,可以命令代码的MSB开始且以所述命令代码的LSB结束而按顺序次序将命令代码部分312提供到微控制器。类似地,可以地址的MSB开始且以所述地址的LSB结束而按顺序次序将地址部分314提供到所述微控制器。行320描述可由存储器提供的信息,例如存储器分区334、336的内容,等等。当微控制器接收命令代码部分312、地址部分314及虚部分316时,部分332可为未界定的(例如,以高阻抗输出)。在一实施方案中,举例来说,命令代码部分312可包含指示所述命令是否包含读取、写入或擦除命令的一个或一个以上位。地址部分314可包含表示存储器阵列的一个或一个以上位置的多个位。详细来说,地址部分314的MSB可对应于存储器位置的相对粗略描述,而LSB可对应于所述存储器位置的相对精细描述。举例来说,地址部分314的一个或一个以上MSB可描述哪一分区含有所述存储器位置,而地址部分314的LSB可描述到最近存储器块的存储器位置及/或最小可寻址存储器单元群组。因此,地址部分314的此实施方案可提供通过仅接收特定存储器位置的地址的MSB部分来确定哪一分区包括所述特定存储器位置的机会,如下文进一步详细地描述。虚部分316可包含用以提供接收读取地址(例如,地址部分314)与数据输出318(例如,读取所述地址处的存储器单元)之间的时间裕量的时间间隔。当然,读取过程的时序的此些细节仅为实例,且所请求标的物不受此限制。

图4展示根据一实施例图3中所示时序图的地址部分的详细视图的实例。特定来说,展示编号为“0”到“23”的地址的个别位的地址414可包含地址部分314的至少一部分。如所述实例中所指示,地址位“23”可包含128兆字节可寻址存储器的地址414的MSB且地址位“0”可包含地址414的LSB(如在此处的情况下,可使用单个存储器位置来表示存储一个字节的单元的群组)。如上文所描述,地址414可包含以MSB 23开始且以LSB 0结束而串行地提供到所述存储器的微控制器的地址位。可至少部分地基于时钟信号405一次一个位顺序地将此些地址位串行地提供到所述微控制器。特定来说,可在时钟信号的上升沿锁存此信息。如上文所描述,地址414的MSB(例如,位23、22、21,等等)可对应于存储器位置的相对粗略描述,而LSB(例如,位0、1、2、3,等等)可对应于所述存储器位置的相对精细描述。举例来说,位23、22及21可描述含有特定存储器位置的分区,而剩余位20到0可描述到最近存储器单元群组的存储器位置,所述最近存储器单元群组识别一个字节。

图5A及图5B展示根据一实施例图3及图4中所示读取命令的时序图的地址部分的其它详细视图。如上文所描述,可至少部分地基于时钟信号405一次一个地址位地将地址414顺序提供到微控制器。特定来说,可在时钟信号的上升沿锁存此信息。举例来说,在特定实施方案中,时钟信号405的时钟循环可具有约10毫微秒的周期。地址414的MSB(例如,位23、22、21,等等)可对应于存储器位置的相对粗略描述。举例来说,位23、22及21可描述含有所述读取命令的目标存储器位置的分区。在此情况下,所述MSB中的三者可识别八个分区中的一者。在另一实例中,两个MSB可足以识别四个分区中的一者。在又一实例中,四个MSB可足以识别十六个分区中的一者,等等。在部分地由图5A及图5B描述的实施方案中,存储器阵列可包含八个分区,但所请求标的物不受此限制。因此,在接收MSB 23、22、21之后,微控制器可确定写入操作正在与所述读取命令的目标存储器位置的分区相同的分区中发生。如果所述微控制器确定此写入操作正在发生,那么所述微控制器可开始中断所述写入命令的过程。此中断过程可在接收位21之后开始,如时序箭头555所指示。因此,此中断过程可在相对于接收所述存储器地址的剩余位(例如,位20到0)所花费的时间相对早的时间开始。哪一分区包括目标存储器位置及写入过程是否正在同一分区中发生的此早确定可提供益处,包括相对快速的读取时间,如下文更详细地描述。

在接收位21后即刻开始的中断过程可花费一些时间来完成。在一实施方案中,供用于完成中断过程的时间跨度可对应于接收存储器地址414的额外位所花费的时间,如时序箭头545所指示。因此,微控制器可执行接收存储器地址414的所述额外位与完成写入中断的同时过程。举例来说,此同时过程可提供改善读取速度的益处。在完成中断过程后,从存储器装置读取中所涉及的一个或一个以上过程可即刻开始。特定来说,读取过程可包括用以检测一个或一个以上存储器单元的状态或逻辑电平的内部感测操作。在图5A中所示的一个实施方案中,可针对存储器的页执行此些内部感测操作。在特定实例中,页可包含八个存储器字节。因此,可在已识别由所述微控制器接收的四个LSB中的第一者(即位3)之后开始特定页的读取操作。在图5A中所示的情况下,所述微控制器一可识别包括所述读取命令的目标存储器位置的页内部感测操作便可开始,如箭头535所指示。作为另一特定实例(图5B中所示),对于四个字节的页大小,可在已识别由所述微控制器接收的三个LSB中的第一者(即位2)之后开始特定页的读取操作。在图5B中所示的情况下,所述微控制器一可识别包括所述读取命令的所述目标存储器位置的页内部感测操作便可开始,如箭头536所指示。在此实例中,与先前实例相比,可存在供用于中断写入操作的一个更多时钟循环。因此,微控制器可执行接收所述存储器地址的剩余位与开始读取操作的内部感测操作的同时过程。举例来说,此同时过程可提供改善读取速度的益处。

图6是根据一实施例的用以从存储器阵列的数据分区读取的过程600的流程图。举例来说,可使用图3到图5中所示的时序图来执行此过程,但所请求标的物不受此限制。在框620处,举例来说,微控制器可接收读取命令,所述读取命令可由存储器控制器及/或处理器提供,如上文所描述。在一个实施方案中,此微控制器可嵌入于包含所述存储器阵列的存储器装置内。所述微控制器可串行地接收所述读取命令的地址部分,以存储器地址的MSB开始且继续接收所述存储器地址的剩余位直到接收LSB。此地址部分可指定所述存储器阵列的远离待从其读取数据的位置的目标位置。在框630处,所述微控制器可在接收所述存储器地址的一个或一个以上MSB之后哪一分区包括所述目标位置。举例来说,如上文所描述,所述微控制器可在接收所述存储器地址的三个MSB之后确定哪一分区包括所述目标位置。在知道哪一分区包括所述目标位置的情况下,所述微控制器可确定写入操作是否正在同一分区中发生,如在菱形640处。如果此写入操作未正在发生,那么过程600可继续进行到框643,在框643处,所述微控制器可完成接收所述存储器地址的剩余位。在框648处,所述微控制器可开始用以从所述目标存储器位置读取的过程。举例来说,此些过程可包括内部感测操作,所述微控制器一可识别包括所述读取命令的目标存储器位置的页所述内部感测操作便可开始,如上文所描述。另一方面,如果此写入操作正在与所述目标位置的分区相同的分区中发生,那么过程600可继续进行到框650,在框650处,所述微控制器可开始用以中断所述写入操作的过程。举例来说,中断分区的写入操作的此过程可包含存储地址、将内部电压恢复到读取条件及将对所述分区的控制释放到读取电路。所述微控制器可执行接收所述存储器地址的额外位与完成写入中断的同时过程。在框660处,所述微控制器可开始用以从所述目标存储器位置读取的过程。举例来说,此些过程可包括内部感测操作,所述微控制器一可识别包括所述读取命令的所述目标存储器位置的页所述内部感测操作便可开始,如上文所描述。在菱形670处,可做出关于所述读取操作是否完成的确定。如果否,那么过程600可等待此读取操作完成。如果所述读取操作完成,那么过程600可继续进行到框680,在框680处,所述微控制器可重新开始较早被中断的写入操作。举例来说,重新开始分区的写入操作的此过程可包含检索所述写入操作的所存储地址、将内部电压恢复到写入条件及将对所述分区的控制释放到写入电路。当然,过程600的此些细节仅为实例,且所请求标的物不受此限制。

图7是图解说明包括存储器装置710的计算系统700的示范性实施例的示意图。此计算装置可包含(举例来说)用以执行应用程序及/或其它代码的一个或一个以上处理器。举例来说,存储器装置710可包含如图2中所示的若干个数据分区。计算装置704可表示可为可配置以管理存储器装置710的任何装置、器具或机器。存储器装置710可包括存储器控制器712及存储器722。通过举例而非限制的方式,计算装置704可包括:一个或一个以上计算装置及/或平台,例如(举例来说)桌上型计算机、膝上型计算机、工作站、服务器装置等;一个或一个以上个人计算或通信装置或器具,例如(举例来说)个人数字助理、移动通信装置等;一计算系统及/或相关联服务提供商能力,例如(举例来说)数据库或数据存储服务提供商/系统;及/或其任一组合。

应认识到,系统700中所示的各种装置以及如本文中进一步描述的过程及方法的全部或部分可使用硬件、固件、软件或其任一组合来实施或以其它方式包括硬件、固件、软件或其任一组合来实施。因此,通过举例而非限制的方式,计算装置704可包括经由总线740在操作上耦合到存储器720的至少一个处理单元722及一主机或存储器控制器712。处理单元720表示可配置以执行数据计算程序或过程的至少一部分的一个或一个以上电路。通过举例而非限制的方式,处理单元720可包括一个或一个以上处理器、控制器、微处理器、微控制器、专用集成电路、数字信号处理器、可编程逻辑装置、现场可编程门阵列等或其任一组合。处理单元720可包括经配置以与存储器控制器712通信的操作系统。此操作系统可(举例来说)产生待经由总线740发送到存储器控制器712的命令。此些命令可包含读取及/或写入命令。举例来说,存储器装置710可包含微控制器715,微控制器715可执行用以通过中断同一存储器分区中的正在发生的写入过程而执行读取过程的上文所描述过程600。举例来说,微控制器715可嵌入于存储器722中,例如在包括存储器阵列的同一裸片上。

存储器722表示任何数据存储机构。存储器722可包括(举例来说)主要存储器阵列724及/或辅助存储器726。主要存储器阵列724可包括(举例来说)随机存取存储器、只读存储器等。虽然在此实例中图解说明为与处理单元720分离,但应理解,主要存储器阵列724的整体或部分可提供于处理单元720内或以其它方式与处理单元720共同定位/耦合。

辅助存储器726可包括(举例来说)与主要存储器相同或类似类型的存储器及/或一个或一个以上数据存储装置或系统,例如(举例来说)磁盘驱动器、光盘驱动器、磁带驱动器、固态存储器驱动器等。在某些实施方案中,辅助存储器726可以是在操作上可接受的计算机可读媒体728或可以其它方式配置以耦合到计算机可读媒体728。计算机可读媒体728可包括(举例来说)可携载用于系统700中的装置中的一者或一者以上的数据、代码及/或指令及/或使得所述数据、代码及/或指令可存取的任何媒体。计算装置704可包括(举例来说)输入/输出732。

在特定实施例中,计算系统700可包括存储器装置,所述存储器装置包含存储器阵列724及微控制器715。此微控制器可接收包括存储器阵列724的存储器地址的第一部分的读取命令,且可中断正在对应于所述存储器地址的所述第一部分的存储器分区中执行的写入操作。可在接收所述存储器地址的第二部分的同时执行写入操作的此中断。举例来说,计算系统700还可包括用以托管一个或一个以上应用程序且用以起始针对微控制器715的读取命令以提供对存储器阵列724中的存储器单元的存取的处理单元720。

输入/输出732表示可为可配置以接受或以其它方式引入人类及/或机器输入的一个或一个以上装置或特征,及/或可为可配置以递送或以其它方式提供人类及/或机器输出的一个或一个以上装置或特征。通过举例而非限制的方式,输入/输出装置732可包括在操作上配置的显示器、扬声器、键盘、鼠标、轨迹球、触摸屏、数据端口等。

如本文中所使用的术语“及”、“及/或”及“或”可包括将至少部分地取决于其中使用所述术语的上下文的各种含义。通常,如果使用“及/或”以及“或”来使例如A、B或C等所列项相关联,那么其打算意指A、B及C(此处以包括意义使用)以及A、B或C(此处以排除意义使用)。此说明书通篇所提及的“一个实施例”或“一实施例”意指结合所述实施例描述的特定特征、结构或特性包括在所请求标的物的至少一个实施例中。因此,在此说明书通篇中的各个地方出现的短语“在一个实施例中”或“一实施例”未必全部指代相同实施例。此外,可将所述特定特征、结构或特性组合在一个或一个以上实施例中。

尽管已图解说明及描述了目前被视为实例性实施例的实施例,但所属领域的技术人员将理解可在不背离所请求标的物的情况下做出各种其它修改且可替代等效物。另外,可在不背离本文中所描述的中心概念的情况下做出许多修改以使特定情形适应所请求标的物的教示。因此,打算所请求标的物不限于所揭示的特定实施例,而是此所请求标的物还可包括归属于所附权利要求书及其等效物的范围内的所有实施例。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1