CN104238957B - 串行外围接口控制器、串行外围接口快闪存储器及其存取方法和存取控制方法 - Google Patents
串行外围接口控制器、串行外围接口快闪存储器及其存取方法和存取控制方法 Download PDFInfo
- Publication number
- CN104238957B CN104238957B CN201310712743.7A CN201310712743A CN104238957B CN 104238957 B CN104238957 B CN 104238957B CN 201310712743 A CN201310712743 A CN 201310712743A CN 104238957 B CN104238957 B CN 104238957B
- Authority
- CN
- China
- Prior art keywords
- data
- stream
- flash memory
- page
- peripheral interface
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
Abstract
本发明提供至少一种串行外围接口控制器、串行外围接口快闪存储器及其存取方法和存取控制方法,其中一种访问方法,用于串行外围接口快闪存储器,其中该串行外围接口快闪存储器包含快闪存储器阵列并支持多个数据流,该访问方法包含:接收流启动指令,用于该多个数据流中的数据流,其中该流启动指令包含该数据流的存取类型及识别码;接收地址信息,其中该地址信息包含该快闪存储器阵列的页面的页面地址及地址指针;以及根据该流启动指令及该页面地址,由该快闪存储器阵列中读取数据至对应于该数据流的流寄存器,或根据该流启动指令,将待写入该快闪存储器阵列的数据储存入对应于该数据流的该流寄存器中。本发明可实现数据流存取的高效操作,并缩短处理时间。
Description
技术领域
本发明是关于一种存储器装置,特别关于一种串行快闪存储器(serial flashmemory)装置。
背景技术
快闪存储器装置通常用于电子应用,如个人计算机、个人数字助理(PersonalDigital Assistants,PDAs)、数字相机及移动电话。通常,快闪存储器装置分为并行快闪存储器(parallel flash memory)装置及串行快闪存储器装置。与并行快闪存储器相比,串行快闪存储器具有更少的传输线(tramsmission lines)和接脚(pin)数目。因此,串行快闪存储器的封装尺寸可相对减小,以及串行快闪存储器可作为便携式电子装置的主导存储器(dominant memory)。
一个传统8接脚(8-pin)串行外围接口(Serial Peripheral Interface,SPI)NAND快闪存储器包含芯片选择接脚CS#、串行时钟接脚SCK、串行数据输入/串行数据输入和输出接脚SI/SO0、串行数据输出/串行数据输入和输出接脚SO/SO1、写入保护/串行数据输入和输出接脚WP#/SO2、保持/串行数据输入和输出接脚HOLD#/SO3、电力供应接脚VCC和接地接脚GND。在该说明书中,简洁起见,串行数据输入/串行数据输入和输出接脚SI/SO0、串行数据输出/串行数据输入和输出接脚SO/SO1、写入保护/串行数据输入和输出接脚WP#/SO2及保持/串行数据输入和输出接脚HOLD#/SO3也可称为串行输入和输出接脚。存储器通过芯片选择接脚CS#接收芯片选择信号。当芯片选择信号变为低电平时,存储器处于有效电力模式(active power mode)下。当芯片选择信号变为高电平时,存储器失能(disabled),以及串行数据输出接脚SO置于高阻抗状态High-z。存储器通过串行时钟接脚SCK接收串行时钟信号,用于为存储器提供串行接口时序。地址信息、指令及数据在串行时钟信号的上升边缘锁存(latch)或取回(retrieve),以及数据的输出在串行时钟信号的下降边缘之后所触发。
图1A、图1B及图1C显示上述传统SPI NAND快闪存储器的页面读取操作的时序图。页面读取操作是执行用以将NAND快闪阵列中的数据传送至高速缓冲存储器(cache)。首先,当芯片选择信号已使能(enabled)后,存储器通过串行数据输入接脚SI接收页面读取指令CMD-PR。然后,存储器接收块/页面地址ADD-P。当块/页面地址ADD-P已注册(registered)后,存储器开始由NAND快闪阵列中传送数据至高速缓冲存储器,且工作(busy)持续时长tCS。此后,发起(issue)获取特征指令CMD-GF以检测操作状态。基于接收到的状态寄存器地址ADD-SR,由状态寄存器(rigister)中读取指示操作状态的状态寄存器数据D-SR,然后通过串行数据输出接脚SO输出。
在成功完成状态后,发起随机数据读取操作以读取高速缓冲存储器中的数据。随机数据读取操作可为单一读取操作(single read operation)、双重读取操作(dual readoperation)或四重读取操作(quad read operation)。在单一读取操作中,串行输入和输出接脚SI/SO0用于输入指令,以及串行输入和输出接脚SO/SO1用于输出读取数据,因而输出数据流的带宽为2比特(bits)。此外,在四重读取操作中,串行输入和输出接脚SI/SO0、SO/SO1、WP#/SO2及HOLD#/SO3全部使用,以输出读取数据,因而输出数据流的带宽为4比特。
图2A和图2B显示上述传统SPI NAND快闪存储器的四重读取操作的时序图。在四重读取操作中,存储器在芯片选择信号已使能后通过串行输入和输出接脚SI/SO0接收四重读取指令CMD-RC。当三个虚拟位DB及计划选择位PS之后,存储器接收列地址(columnaddress)ADD-C。然后,在一虚拟字节DBy后,根据列地址ADD-C,存储器通过串行输入和输出接脚SI/SO0、SO/SO1、WP#/SO2和HOLD#/SO3将高速缓冲存储器中的已读取数据(如图2B中的字节B1、B2、B3及B4)输出。
然而,在具备处理多个数据流能力的电子装置中,当电子装置通过在不同数据流之间进行切换以由SPI NAND快闪存储器中读取数据或向SPI NAND快闪存储器中写入数据时,有可能存在许多等待周期(wait cycles)。例如,当通过第一数据流读取数据时,执行有关第一页面的页面读取操作及随机数据读取操作,以由存储器中读取数据。当切换至通过第二数据流读取数据时,执行有关第二页面的页面读取操作及随机数据读取操作。此后,当切换回通过第一数据流读取数据时,由于高速缓冲存储器当前储存了第二页面的数据,需要再次执行有关第一页面的页面读取操作,以将第一页面的数据读取至高速缓冲存储器,然后执行随机数据读取操作以读取高速缓冲存储器中的数据。换言之,有可能再次发起页面读取指令、块/页面地址、获取特征指令、状态寄存器地址及列地址。因此,由于增加了等待周期以及重复发送一些信息(如地址、指令、先前已读取数据等等)而不加以重复使用,特别是在通过在不同数据流之间频繁切换而执行存取的条件下,有可能浪费许多时间及存取资源。
发明内容
有鉴于此,本发明提供至少一种串行外围接口快闪存储器、串行外围接口控制器及串行外围接口快闪存储器的访问方法和访问控制方法。
本发明提供一种访问方法,用于一串行外围接口快闪存储器,其中该串行外围接口快闪存储器包含一快闪存储器阵列并支持多个数据流,该访问方法包含:接收一流启动(stream initiate)指令,用于该多个数据流中的一数据流,其中该流启动指令包含该数据流的一存取类型及识别码;接收地址信息,其中该地址信息包含该快闪存储器阵列的一页面的页面地址及一地址指针(address pointer);以及根据该流启动指令及该页面地址,由该快闪存储器阵列中读取数据至对应于该数据流的一流寄存器,或根据该流启动指令,将待写入该快闪存储器阵列的数据储存入对应于该数据流的该流寄存器中。
本发明另提供一种访问控制方法,用于一串行外围接口快闪存储器,其中该串行外围接口快闪存储器包含一快闪存储器阵列并支持多个数据流,该访问方法包含:发送一流启动指令至该串行外围接口快闪存储器,其中该流启动指令用于该多个数据流中的一数据流,且该流启动指令包含该数据流的一存取类型及一识别码;发送地址信息至该串行外围接口快闪存储器,其中该地址信息包含该快闪存储器阵列的一页面的一页面地址及一地址指针;以及根据该流启动指令及该页面地址,控制该串行外围接口快闪存储器由该快闪存储器阵列中读取数据至对应于该数据流的一流寄存器,或根据该流启动指令,控制该串行外围接口快闪存储器将待写入该存储器阵列的数据储存入对应于该数据流的该流寄存器。
本发明另提供一种串行外围接口快闪存储器,支持多个数据流,该串行外围接口快闪存储器包含:一快闪存储器阵列;多个流寄存器,每个流寄存器对应于该多个数据流中的一个;以及一控制逻辑,耦接于该快闪存储器阵列及该多个流寄存器,接收用于该多个数据流中的一数据流的一流启动指令及地址信息,其中该流启动指令包含该数据流的一存取类型及一识别码,以及该地址信息包含该快闪存储器阵列的一页面的一页面地址及一地址指针;其中,数据根据该流启动指令及该页面地址由该快闪存储器阵列中读取至对应于该数据流的一流寄存器,或数据根据该流启动指令储存入对应于该数据流的该流寄存器中。
本发明另提供一种串行外围接口控制器,耦接于一串行外围接口快闪存储器,以控制该串行外围接口快闪存储器的存取操作,其中该串行外围接口快闪存储器包含一快闪存储器阵列,并支持多个数据流,该串行外围接口控制器包含:一控制逻辑,发送用于该多个数据流中的一数据流的一流启动指令及地址信息至该串行外围接口快闪存储器,其中该流启动指令包含该数据流的一存取类型及一识别码,以及该地址信息包含该快闪存储器阵列的一页面的一页面地址及一地址指针,以及该控制逻辑根据该流启动指令及该页面地址控制该串行外围接口快闪存储器由该快闪存储器阵列中读取数据至对应于该数据流的一流寄存器,或该控制逻辑根据该流启动指令将待写入该快闪存储器阵列的数据储存入对应于该数据流的该流寄存器。
利用本发明所提供的串行外围接口控制器、串行外围接口快闪存储器及其存取方法和存取控制方法,可实现数据流存取的高效操作,并缩短处理时间。
附图说明
图1A、图1B及图1C显示传统SPI NAND快闪存储器的页面(page)读取操作的时序图。
图2A和图2B显示传统SPI NAND快闪存储器的四重读取操作的时序图。
图3A和图3B显示根据本发明一实施例的SPI NAND快闪存储器的流启动操作的时序图。
图4显示根据本发明一实施例的SPI NAND快闪存储器的连续读取操作的时序图。
图5显示根据本发明一实施例的SPI控制器50的块示意图。
图6显示根据本发明一实施例的SPI存储器60的块示意图。
具体实施方式
在说明书及权利要求当中使用了某些词汇来指称特定的组件。本领域技术人员应可理解,硬件制造商可能会用不同的名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。在通篇说明书及权利要求当中所提及的“包含”及“包括”为一开放式的用语,故应解释成“包含但不限定于”。“大致”是指在可接受的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。此外,“耦接”一词在此包含任何直接及间接的电性连接手段。因此,若文中描述一第一装置耦接于一第二装置,则代表该第一装置可直接电性连接于该第二装置,或通过其它装置或连接手段间接地电性连接至该第二装置。以下所述为实施本发明的较佳方式,目的在于说明本发明的精神而非用以限定本发明的保护范围,本发明的保护范围当视后附的权利要求所界定者为准。
本发明的一实施例提供一种访问方法,用于SPI快闪存储器。SPI快闪存储器包含快闪存储器阵列并支持多个数据流。SPI快闪存储器进一步包含多个流寄存器,每个流寄存器对应于多个数据流中的一个。该访问方法包含流启动操作、页面存取操作及连续存取(continuous access)操作,其中流启动操作用于启动多个数据流中的一个。上述数据流的数目可为4至8。
图3A和图3B显示根据本发明一实施例的SPI NAND快闪存储器的流启动操作的时序图。首先,接收用于多个数据流中的一数据流(如Xth数据流)的流启动指令CMD-SI。流启动指令CMD-SI包含数据流的存取类型及数据流的识别码。存取类型可为读取类型或写入类型,其中读取类型指示数据流的存取操作为读取操作,写入类型指示数据流的存取类型为写入操作,且对于单一数据流而言只有一个存取类型。数据流的存取类型及识别码可根据流启动指令CMD-SI的指令字(command word)来决定。例如,指令字4Xh指示用于Xth数据流并执行读取操作的流启动指令。然后,接收地址信息ADD-I。地址信息ADD-I包含快闪存储器阵列的页面的页面地址及地址指针。存取类型及接收到的地址信息ADD-I可储存于对应于数据流的流寄存器中,以及地址指针用于指向储存于流寄存器中的数据。因此,地址信息ADD-I可为图1A和图1B中的页面地址ADD-P与2A图中的列地址ADD-C的组合。当SPI快闪存储器接收到用于数据流的流启动指令和地址信息,以及存取类型已储存入对应的流寄存器之后,数据流的启动完成,换言之,流启动操作结束。
页面存取操作紧随流启动操作,用于根据流启动指令及页面地址由快闪存储器阵列中读取页面数据至对应于数据流的流寄存器,或根据流启动指令将待写入快闪存储器的数据储存入对应于数据流的流寄存器。用于数据流的页面存取操作在用于数据流的流启动结束之后自发(spontaneously)执行。例如,若第一流启动指令指示用于第一数据流并执行读取操作的流启动操作,则当第一数据流启动之后,根据地址信息中的页面地址由快闪存储器中读取页面数据,并将读取的页面数据储存入对应于第一数据流的SPI快闪存储器的第一流寄存器中。若第二流启动指令指示用于第二数据流的流启动指令并执行写入操作的流启动指令,则当第二数据流启动后,发送待写入快闪存储器阵列的页面数据,并将其储存入对应于第二数据流的SPI快闪存储器的第二流寄存器中。
连续存取操作紧随页面存取操作,用于根据地址指针由流寄存器中输出已读取的页面数据(连续读取操作),或根据地址指针将流寄存器中的页面数据写入快闪存储器阵列(连续写入操作)。在连续存取操作中,首先接收用于数据流的连续存取指令。连续存取指令包含数据流的识别码。在连续读取操作中,根据地址指针,将对应于数据流的流寄存器中的已读取页面数据由SPI快闪存储器中读出,其中流寄存器可根据数据流的识别码来决定,以及地址指针在数据输出后增加。在连续写入操作中,根据页面地址及地址指针,将对应于数据流的流寄存器中的页面数据写入快闪存储器,其中流寄存器可根据数据流的识别码来决定,以及地址指针在数据写入后增加。
图4显示根据本发明一实施例的SPI NAND快闪存储器的连续读取操作的时序图。首先,接收包含数据流的识别码的连续读取指令CMD-ID。例如,指令字5Xh指示用于Xth数据流的连续读取指令。然后,根据储存于Xth流寄存器中的地址指针,将Xth流寄存器中的已读取页面数据(如图4中的输出数据字节B1、B2、B3及B4)由SPI快闪存储器中读出,以及储存于Xth流寄存器中的地址指针在Xth流寄存器中的已读取页面数据输出后增加。例如,在用于Xth数据流的流启动操作中接收到的Xth数据流的最初的地址指针指向Xth流寄存器中的已读取页面数据的第一字节。在由Xth流寄存器中输出第一字节、第二字节、第三字节及第四字节之后,储存于Xth数据流中的地址指针增加至指向Xth流寄存器中已读取页面数据的第五字节。因此,当Xth流寄存器中的已读取页面数据的四个字节已输出后,若SPI快闪存储器由Xth数据流切换至另一数据流,然后再切换回Xth数据流,则Xth流寄存器中的已读取页面数据的第五字节可根据地址指针直接输出,而无需发送行地址。更进一步,当Xth数据流启动后,由于用于Xth数据流的已读取页面数据储存于Xth流寄存器中,因而当切换回Xth数据流时无需再次发起页面地址及页面读取操作。相应地,上述存取操作相比先前技术所耗费的处理时间更少。
另外,在连续存取操作期间,若储存于流寄存器中的地址指针进入储存于流寄存器中的页面的页面边界区域(boundary zone)时,预取(pre-fetch)靠近该页面的另一页面的数据,因而当跨越页面边界时数据可连续存取,而无需在页面边界处等待页面等待周期。页面边界区域可为页面边界前方的N比特。例如,N可为16或32。
在一个实施例中,用于多个数据流的流启动操作可依次(successively)发起。用于该多个数据流的启动的操作顺序及页面存取操作可基于流启动指令的接收顺序来决定。此外,在用于数据流的启动及页面存取操作结束之前,用于数据流的连续存取操作无法执行。另外,若用于数据流的连续存取操作发起时,该数据流的流启动操作及页面存取操作尚未完成,则可由SPI快闪存储器中输出一暂停向量(pending vector),告知SPI控制器及/或主处理器(host processor)操作未完成。如上所述,例如,用于第一数据流的流启动操作、用于第二数据流的流启动操作、用于第三数据流的流启动操作、用于第一数据流的连续存取操作、用于第二数据流的连续存取操作、用于第一数据流的连续存取操作、用于第三数据流的连续存取操作及用于第一数据流的连续存取操作依次发起。因此,与先前技术相比,多个数据流的操作的发起更加高效,且处理时间相对缩短。
图5显示根据本发明一实施例的SPI控制器50的块示意图,其中SPI控制器50执行用于SPI快闪存储器60的访问控制方法。SPI控制器50通过主处理器总线35耦接于主处理器30,SPI控制器50耦接于主存储器40,并通过SPI总线56耦接于SPI快闪存储器60。SPI快闪存储器60包含快闪存储器阵列并支持多个数据流(在本实施例中为8个数据流)。SPI控制器50可集成于主处理器30中,或可集成于耦接于主处理器30的外部SPI接口的一部分。SPI控制器50接收来自主处理器30的存取指令,以控制SPI快闪存储器60的存取操作。SPI控制器50将待写入的数据(如来自主存储器40的写入数据WD)发送至SPI快闪存储器60,或将SPI快闪存储器60中读取的数据发送至主处理器30。
SPI控制器50包含控制逻辑500、流寄存器组510、多路复用器(multiplexers)521、522及523、串行/并行转换器530及输入/输出缓冲器540,其中流寄存器组510包含流寄存器511~518,串行/并行转换器530包含并行至四外围接口(Quad Peripheral Interface,QPI)转换器531及QPI至并行转换器532,输入/输出缓冲器540包含三态缓冲器(tri-statebuffer)541及缓冲器542。流寄存器组510的每个流寄存器储存多个数据流的对应数据流的指令、状态及地址信息。流寄存器组510的每个流寄存器中所储存的指令耦接于多路复用器521,以及储存于流寄存器组510的每个流寄存器中所储存的地址信息耦接于多路复用器522。多路复用器521输出已选择的指令/状态CS至控制逻辑500,以及多路复用器522输出已选择的地址信息ADD至多路复用器523的输入端。多路复用器523的另一输入端接收来自主存储器40的待写入SPI快闪存储器60的写入数据WD。主存储器40可包含用于多个数据流的数据缓冲器,如数据缓冲器410~480。多路复用器523的输出耦接于并行至QPI转换器531,以及并行至QPI转换器531耦接于三态缓冲器541。控制逻辑500耦接于多路复用器521、522及523,以根据来自主处理器30的存取指令选择多个数据流的指令、状态、地址信息及写入数据。控制逻辑500也控制串行/并行转换器530及三态缓冲器541。来自SPI快闪存储器60的已读取数据通过SPI总线56发送至缓冲器542,并于此后发送至QPI至并行转换器532。QPI至并行转换器532输出已读取数据RD,且已读取数据RD通过主处理器总线35发送至主处理器30。
控制逻辑500控制SPI控制器50的组件以控制SPI快闪存储器60的存取操作。控制逻辑500发送用于多个数据流中的一数据流的流启动指令及该数据流的地址信息至SPI快闪存储器60,以控制SPI快闪存储器60根据流启动指令及地址信息执行用于该数据流的流启动操作及页面存取操作。流启动指令包含数据流的存取类型及数据流的识别码。地址信息包含SPI快闪存储器60的快闪存储器阵列的页面的页面地址及地址指针。当数据流的存取类型指示读取操作时,根据流启动指令及页面地址,控制逻辑500控制SPI快闪存储器60由快闪存储器中读取数据至对应于该数据流的SPI快闪存储器60中的流寄存器。可选地,当数据流的存取类型指示写入操作时,根据流启动指令,控制逻辑500控制SPI快闪存储器60将待写入快闪存储器阵列的数据储存入对应于该数据流的SPI快闪存储器60中的流寄存器。流启动操作与页面存取操作的细节已描述如上,简洁起见,此处不再赘述。
控制逻辑500进一步发送用于数据流的连续存取指令至SPI快闪存储器60,以控制SPI快闪存储器60执行用于数据流的连续存取操作。连续存取指令包含数据流的识别码。当数据流的存取类型指示读取操作时,根据对应于该数据流的SPI快闪存储器60中的流寄存器中所储存的地址指针,控制逻辑500控制SPI快闪存储器60由对应于该数据流的SPI快闪存储器60中的流寄存器中输出数据至SPI控制器50,且地址指针在数据输出后增加。可选地,当数据流的存取类型指示写入操作时,根据对应于该数据流的SPI快闪存储器60中的流寄存器中所储存的页面地址及地址指针,控制逻辑500控制SPI快闪存储器60将对应于该数据流的SPI快闪存储器60中的流寄存器中所储存的数据写入快闪存储器阵列,以及地址指针在数据写入后增加。连续存取操作及地址指针的细节已描述如上,简洁起见,此处不再赘述。
当对应于该数据流的SPI快闪存储器60中的流寄存器中所储存的地址指针进入该页面的页面边界区域时,控制逻辑500可进一步控制SPI快闪存储器60预取靠近对应于该数据流的SPI快闪存储器60中的流寄存器中所储存的页面的另一页面的数据。因此,当跨越页面边界时数据可连续存取,无需在页面边界处等待页面等待周期。页面边界区域可为页面边界前方的N比特。例如,N可为16或32。
请注意,图5中的SPI控制器50仅为较佳举例,本发明并不以此为限。例如,SPI控制器50可进一步包含用于产生信号的信号产生单元,如串行时钟信号产生单元。
图6显示根据本发明一实施例的SPI存储器60的块示意图。SPI存储器60支持多个数据流(在本实施例中为8个数据流),并包含控制逻辑600、流寄存器组610、多路复用器620、页面高速缓冲存储器630、输入/输出缓冲器640、指令寄存器650、地址寄存器660、数据寄存器670及存储器核心680,其中流寄存器组610包含流寄存器611~618,输入/输出缓冲器640包含缓冲器641及三态缓冲器642,存储器核心680包含快闪存储器阵列682、行(row)解码器684及列(column)解码器686。控制逻辑600根据接收自SPI控制器50的指令及信息控制SPI快闪存储器60的组件执行存取操作。输入/输出缓冲器640耦接于SPI总线56。指令寄存器650、地址寄存器660及数据寄存器670耦接于缓冲器641。地址寄存器660及数据寄存器670进一步耦接于存储器核心680。接收自SPI控制器50的用于数据流的指令暂时储存于指令寄存器650中,然后再发送并储存至流寄存器组610中的对应流寄存器。接收自SPI控制器50的数据流的地址信息暂时储存于地址寄存器660中,然后再发送并储存至流寄存器组610中的对应流寄存器。当用于数据流的连续存取操作发起时,对应于该数据流的流寄存器中所储存的地址信息发送至地址寄存器660,因而连续存取操作可根据该地址信息执行。接收自SPI控制器50的待写入快闪存储器阵列682的数据暂时储存于数据寄存器670中,然后再发送并储存至流寄存器组610中的对应流寄存器。当用于数据流的连续写入操作发起时,对应于该数据流的流寄存器中所储存的数据发送至数据寄存器670中,以写入快闪存储器阵列682。
控制逻辑60接收来自SPI控制器50的用于多个数据流中的一数据流的流启动指令及用于该数据流的地址信息,并根据该流启动指令及地址信息控制SPI快闪存储器60的组件执行用于该数据流的流启动操作及页面存取操作。流启动指令包含该数据流的存取类型及该数据流的识别码。地址信息包含快闪存储器阵列682的页面的页面地址及地址指针。存取类型及接收到的地址信息储存于对应于该数据流的流寄存器组610中的流寄存器。当存取类型指示读取操作时,根据流启动指令及页面地址,控制逻辑600控制SPI快闪存储器60由快闪存储器阵列682中读取数据至页面高速缓冲存储器630,然后,根据该数据流的识别码,页面高速缓冲存储器630中的页面数据发送并储存至对应于该数据流的流寄存器组610中的流寄存器。可选地,当存取类型指示写入操作时,根据流启动指令,控制逻辑600控制SPI快闪存储器60将待写入快闪存储器阵列682的数据储存入对应于该数据流的流寄存器组610中的流寄存器。流启动操作及页面存取操作的细节已描述如上,简洁起见,此处不再赘述。
控制逻辑600进一步接收来自SPI控制器50的用于数据流的连续存取指令,并控制SPI快闪存储器60执行用于该数据流的连续存取操作。连续存取指令包含数据流的识别码。当数据流的存取类型指示读取操作时,根据对应于该数据流的流寄存器组610中的流寄存器中所储存的地址指针,控制逻辑600控制SPI快闪存储器60由对应于该数据流的流寄存器组610中的流寄存器中输出数据至三态缓冲器642,以及控制逻辑600在数据输出后增加地址指针。可选地,当存取类型指示写入操作时,根据对应于该数据流的流寄存器组610中的流寄存器中所储存的页面地址及地址指针,控制逻辑600控制SPI快闪存储器60将对应于该数据流的流寄存器组610中的流寄存器中所储存的数据写入快闪存储器阵列682。连续存取操作及地址指针已描述如上,简洁起见,此处不再赘述。
当储存于流寄存器中的地址指针进入流寄存器中所储存的页面的页面边界区域时,靠近该页面的另一页面的数据预取入流寄存器。因此,当跨越页面边界时数据可连续存取,而无需在页面边界处等待页面等待周期。页面边界区域可为页面边界前方的N比特。例如,N可谓16或32。
请注意,上述SPI快闪存储器及SPI控制器反向兼容(backward compatible)。例如,在一实施例中,大数据流量(data traffic)的存取操作,如有关启动(booting)的存取操作及有关多个数据块的数据下载或数据复制(copy),可根据上述存取协议来执行,其他小数据流量的存取操作可根据已知存取协议来执行。
如上所述,本发明提供了多数据流串行快闪存储器装置及其多数据流存取协议,以高效发起数据流的操作并缩短处理时间。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的保护范围当视后附的权利要求所界定者为准。
Claims (8)
1.一种访问方法,用于串行外围接口快闪存储器,其中所述串行外围接口快闪存储器包含快闪存储器阵列并支持多个数据流,所述访问方法包含:
接收流启动指令,用于所述多个数据流中的数据流,其中所述流启动指令包含所述数据流的存取类型及识别码;
接收地址信息,其中所述地址信息包含所述快闪存储器阵列的页面的页面地址及地址指针;以及
根据所述流启动指令及所述页面地址,由所述快闪存储器阵列中读取数据至对应于所述数据流的流寄存器,或根据所述流启动指令,将待写入所述快闪存储器阵列的数据储存入对应于所述数据流的所述流寄存器中,
在完成所述读取或所述储存操作后,接收连续存取指令,用于所述数据流,其中所述连续存取指令包含所述数据流的所述识别码;以及
根据所述存取类型及所述地址指针,将所述数据由对应于所述数据流的所述流寄存器中输出,或将所述数据写入所述快闪存储器阵列;
其中所述地址指针在所述数据输出或写入后增加,并且下次接着存取所述数据流时,在无需再次接收所述地址信息情况下,根据增加后的所述地址指针将所述数据由对应于所述数据流的所述流寄存器中直接输出,或将所述数据写入所述快闪存储器阵列。
2.根据权利要求1所述之访问方法,其特征在于进一步包含:
当所述地址指针进入所述页面的页面边界区域时,预取靠近所述页面的另一页面的数据。
3.一种访问控制方法,用于串行外围接口快闪存储器,其中所述串行外围接口快闪存储器包含快闪存储器阵列并支持多个数据流,所述访问方法包含:
发送流启动指令至所述串行外围接口快闪存储器,其中所述流启动指令用于所述多个数据流中的数据流,且所述流启动指令包含所述数据流的存取类型及识别码;
发送地址信息至所述串行外围接口快闪存储器,其中所述地址信息包含所述快闪存储器阵列的页面的页面地址及地址指针;根据所述流启动指令及所述页面地址,控制所述串行外围接口快闪存储器由所述快闪存储器阵列中读取数据至对应于所述数据流的流寄存器,或根据所述流启动指令,控制所述串行外围接口快闪存储器将待写入所述存储器阵列的数据储存入对应于所述数据流的所述流寄存器,
在完成所述读取或所述储存操作后,发送连续存取指令至所述串行外围接口快闪存储器,其中所述连续存取指令用于所述数据流,且所述连续存取指令包含所述数据流的所述识别码;以及
根据所述存取类型及所述地址指针,控制所述串行外围接口快闪存储器由对应于所述数据流的所述流寄存器中输出所述数据,或将所述数据写入所述快闪存储器阵列;
其中,所述地址指针在所述数据输出或写入后增加,并且下次接着存取所述数据流时,在无需再次发送所述地址信息情况下,根据增加后的所述地址指针将所述数据由对应于所述数据流的所述流寄存器中直接输出,或将所述数据写入所述快闪存储器阵列。
4.根据权利要求3所述之访问控制方法,其特征在于进一步包含:
当所述地址指针进入所述页面的页面边界区域时,控制所述串行外围接口快闪存储器预取靠近所述页面的另一页面的数据。
5.一种串行外围接口快闪存储器,支持多个数据流,所述串行外围接口快闪存储器包含:
快闪存储器阵列;
多个流寄存器,每个流寄存器对应于所述多个数据流中的一个;以及
控制逻辑,耦接于所述快闪存储器阵列及所述多个流寄存器,接收用于所述多个数据流中的数据流的流启动指令及地址信息,其中所述流启动指令包含所述数据流的存取类型及识别码,以及所述地址信息包含所述快闪存储器阵列的页面的页面地址及地址指针;
其中,数据根据所述流启动指令及所述页面地址由所述快闪存储器阵列中读取至对应于所述数据流的流寄存器,或所述数据根据所述流启动指令储存入对应于所述数据流的所述流寄存器中,在完成所述读取或所述储存操作后,所述控制逻辑进一步接收用于所述数据流的连续存取指令,所述连续存取指令包含所述数据流的所述识别码,其中,所述数据根据所述存取类型及所述地址指针由对应于所述数据流的所述流寄存器中输出或写入所述快闪存储器阵列,以及所述控制逻辑在所述数据输出或写入后增加所述地址指针,并且下次接着存取所述数据流时,在无需再次接收所述地址信息情况下,根据增加后的所述地址指针将所述数据由对应于所述数据流的所述流寄存器中直接输出,或将所述数据写入所述快闪存储器阵列。
6.根据权利要求5所述之串行外围接口快闪存储器,特征在于,靠近所述页面的另一页面的数据是当所述地址指针进入所述页面的页面边界区域时预取。
7.一种串行外围接口控制器,耦接于串行外围接口快闪存储器,以控制所述串行外围接口快闪存储器的存取操作,其中所述串行外围接口快闪存储器包含快闪存储器阵列,并支持多个数据流,所述串行外围接口控制器包含:
控制逻辑,发送用于所述多个数据流中的数据流的流启动指令及地址信息至所述串行外围接口快闪存储器,其中所述流启动指令包含所述数据流的存取类型及识别码,以及所述地址信息包含所述快闪存储器阵列的页面的页面地址及地址指针,以及所述控制逻辑根据所述流启动指令及所述页面地址控制所述串行外围接口快闪存储器由所述快闪存储器阵列中读取数据至对应于所述数据流的流寄存器,或所述控制逻辑根据所述流启动指令将待写入所述快闪存储器阵列的数据储存入对应于所述数据流的所述流寄存器,在完成所述读取或所述储存操作后,所述控制逻辑进一步发送用于所述数据流的连续存取指令至所述串行外围接口快闪存储器,其中所述连续存取指令包含所述数据流的所述识别码,以及所述控制逻辑根据所述存取类型及所述地址指针控制所述串行外围接口快闪存储器由对应于所述数据流的所述流寄存器中输出所述数据至所述串行外围接口控制器或将所述数据写入所述快闪存储器阵列,其中所述地址指针在所述数据输出或写入后增加,并且下次接着存取所述数据流时,在无需再次发送所述地址信息情况下,根据增加后的所述地址指针将所述数据由对应于所述数据流的所述流寄存器中直接输出,或将所述数据写入所述快闪存储器阵列。
8.根据权利要求7所述之串行外围接口控制器,特征在于,当所述地址指针进入所述页面的页面边界区域时,所述控制逻辑控制所述串行外围接口快闪存储器预取靠近所述页面的另一页面的数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN2016MU2013 IN2013MU02016A (zh) | 2013-06-13 | 2013-06-13 | |
IN2016/MUM/2013 | 2013-06-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104238957A CN104238957A (zh) | 2014-12-24 |
CN104238957B true CN104238957B (zh) | 2018-03-09 |
Family
ID=52227126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310712743.7A Active CN104238957B (zh) | 2013-06-13 | 2013-12-23 | 串行外围接口控制器、串行外围接口快闪存储器及其存取方法和存取控制方法 |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN104238957B (zh) |
BR (1) | BR102013022935A2 (zh) |
IN (1) | IN2013MU02016A (zh) |
TW (1) | TWI534615B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105804734B (zh) * | 2016-04-12 | 2018-10-16 | 中国石油天然气集团公司 | 一种利用核磁共振测井识别稠油储层的方法 |
TWI608356B (zh) * | 2016-07-20 | 2017-12-11 | 聯陽半導體股份有限公司 | 週邊介面晶片及其資料傳送方法 |
CN108197502A (zh) * | 2018-01-11 | 2018-06-22 | 苏州国芯科技有限公司 | 一种spi传输方法、装置、控制器、加密芯片及通信设备 |
TWI727449B (zh) * | 2018-10-17 | 2021-05-11 | 旺宏電子股份有限公司 | 非循序頁面連續讀取 |
TWI688955B (zh) * | 2019-03-20 | 2020-03-21 | 點序科技股份有限公司 | 記憶體裝置以及記憶體的存取方法 |
US10891184B2 (en) * | 2019-05-22 | 2021-01-12 | Macronix International Co., Ltd. | Configurable data integrity mode, and memory device including same |
CN111816627B (zh) * | 2020-09-09 | 2020-12-08 | 武汉新芯集成电路制造有限公司 | 一种存储封装芯片及其引脚复用方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101740102B (zh) * | 2008-11-11 | 2014-03-26 | 西安奇维测控科技有限公司 | 一种多通道闪存芯片阵列结构及其写入和读出方法 |
CN101819560B (zh) * | 2009-02-27 | 2012-05-30 | 杭州晟元芯片技术有限公司 | 一种spi接口存储器执行程序方法和装置 |
CN102193888B (zh) * | 2010-03-12 | 2013-06-05 | 新唐科技股份有限公司 | 数据传输系统与可编程串行外围设备接口控制器 |
US8135881B1 (en) * | 2010-09-27 | 2012-03-13 | Skyworks Solutions, Inc. | Dynamically configurable serial data communication interface |
CN202003346U (zh) * | 2010-12-22 | 2011-10-05 | 上海宇芯科技有限公司 | 一种多通道的nand flash控制器 |
CN102945213B (zh) * | 2012-09-24 | 2016-08-10 | 无锡众志和达数据计算股份有限公司 | 一种基于fpga的乱序内存控制器及其实现方法 |
-
2013
- 2013-06-13 IN IN2016MU2013 patent/IN2013MU02016A/en unknown
- 2013-09-06 BR BRBR102013022935-0A patent/BR102013022935A2/pt not_active Application Discontinuation
- 2013-12-11 TW TW102145500A patent/TWI534615B/zh not_active IP Right Cessation
- 2013-12-23 CN CN201310712743.7A patent/CN104238957B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
TWI534615B (zh) | 2016-05-21 |
IN2013MU02016A (zh) | 2015-06-05 |
TW201447573A (zh) | 2014-12-16 |
CN104238957A (zh) | 2014-12-24 |
BR102013022935A2 (pt) | 2015-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104238957B (zh) | 串行外围接口控制器、串行外围接口快闪存储器及其存取方法和存取控制方法 | |
US10613763B2 (en) | Memory device having multiple read buffers for read latency reduction | |
CN103677665B (zh) | 嵌入式多媒体卡、控制其的主机及操作其系统的方法 | |
KR101105489B1 (ko) | Nand 플래시 메모리의 커맨드 기반 제어 | |
CN106716383B (zh) | 存储器装置和控制存储器装置的方法、存储器系统 | |
US10545888B2 (en) | Data inversion circuit | |
CN104981873A (zh) | 在发送写入数据到存储器的同时从存储器读取数据的系统和方法 | |
KR20070049676A (ko) | 버스를 통해 메모리 프리-페치 명령들을 전송하기 위한방법 및 장치 | |
CN107480081A (zh) | 具有可中断指令序列的存储器及其操作方法 | |
GB2500082A (en) | Delaying the transmission of data from a memory device until the output buffer of the memory device contains the data for the transfer | |
CN110851073B (zh) | 储存装置及巨集指令的执行方法 | |
CN104064213A (zh) | 存储器存取方法、存储器存取控制方法及存储器控制器 | |
KR102384962B1 (ko) | 반도체 메모리 장치 | |
CN104077080B (zh) | 存储器存取方法、存储器存取控制方法、spi闪存装置及其控制器 | |
CN106919343A (zh) | 周边接口电路与周边存储器系统 | |
CN114253464B (zh) | 控制读取请求的方法和具有主机装置的存储器控制器 | |
CN102568574A (zh) | 非易失性存储器件 | |
CN112052189A (zh) | 存储器装置、电子装置以及与其相关的读取方法 | |
TWI829103B (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 | |
US11704258B2 (en) | Latency reduction in SPI flash memory devices | |
CN109935252A (zh) | 存储器装置及其操作方法 | |
TWI740092B (zh) | 儲存裝置及巨集指令的執行方法 | |
CN112309445B (zh) | 存储器接口电路、存储器存储装置及信号产生方法 | |
TWI701553B (zh) | 反及閘快閃記憶體的讀取方法 | |
CN114610236A (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 |
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 |