CN116259347B - 基于spi协议的嵌入式闪存的编程装置 - Google Patents

基于spi协议的嵌入式闪存的编程装置 Download PDF

Info

Publication number
CN116259347B
CN116259347B CN202310545813.8A CN202310545813A CN116259347B CN 116259347 B CN116259347 B CN 116259347B CN 202310545813 A CN202310545813 A CN 202310545813A CN 116259347 B CN116259347 B CN 116259347B
Authority
CN
China
Prior art keywords
flash memory
data
peripheral interface
serial peripheral
state machine
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
Application number
CN202310545813.8A
Other languages
English (en)
Other versions
CN116259347A (zh
Inventor
请求不公布姓名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Mindmotion Microelectronics Co ltd
Original Assignee
Shanghai Mindmotion Microelectronics Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Mindmotion Microelectronics Co ltd filed Critical Shanghai Mindmotion Microelectronics Co ltd
Priority to CN202310545813.8A priority Critical patent/CN116259347B/zh
Publication of CN116259347A publication Critical patent/CN116259347A/zh
Application granted granted Critical
Publication of CN116259347B publication Critical patent/CN116259347B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0002Serial port, e.g. RS232C
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)

Abstract

本申请提供了基于SPI协议的嵌入式闪存的编程装置,该装置包括:串行外设接口和闪存控制器,串行外设接口用于实现数据转换并与闪存控制器连接,闪存控制器包括解码器和第一状态机并通过第一状态机与嵌入式闪存连接。外部烧写器提供时钟信号到串行外设接口和闪存控制器,并提供数据信号到串行外设接口,在外部烧写器与串行外设接口之间传输数据过程中时钟信号翻转。串行外设接口以固定的预定位数发送数据到闪存控制器,最高位的数据包定义数据指令集,解码器对数据指令集进行解码并根据解码结果通过第一状态机实现闪存控制器和嵌入式闪存之间的数据传输。

Description

基于SPI协议的嵌入式闪存的编程装置
技术领域
本申请涉及一种集成电路领域,更涉及一种基于SPI协议的嵌入式闪存的编程装置。
背景技术
嵌入式闪存(embedded Flash)作为一种内嵌于芯片内部的非易失性存储器,以低成本、高安全性在SoC领域应用广泛,常作为系统程序的存储器。随着工艺节点的降低,传统的闪存编程技术无法实现最佳的PPA(Power-Perform-Area),如何用最小的面积,最低的功耗,最短的时间完成闪存编程成为首要目标。
传统的闪存编程是通过swd接口完成闪存的芯片擦除、扇区擦除、编程等操作,利用芯片内部振荡器HSI完成计数,内部振荡器HSI必须一直开启,产生满足闪存擦除、编程的时序。这种方式必须借助于JLINK,ULINK,ST-LINK等仿真器完成闪存编程。
传统方案中,内部振荡器HSI必须一直开启,借助CPU Core的DAP子模块完成swd协议到ahb-lite3协议的转换,通过ahb-lite3总线接口配置寄存器,利用HSI时钟计数,产生满足闪存编程、擦除操作的时序,从而实现了对闪存的擦除、编程操作。现有的方案中,主要有以下几个缺点:
1.内部振荡器HSI必须一直开启,无法作时钟门控电路(clock gate),动态功耗大。
2.利用HSI计数来产生满足闪存操作的时序,费面积。
3. 只能实现闪存的单次编程,无法实现闪存的连续编程,编程效率低。
发明内容
本申请的目的在于提供一种基于SPI协议的嵌入式闪存的编程装置,无需内部振荡器,节省芯片功耗和面积。
本申请的一个实施例中提供一种基于SPI协议的嵌入式闪存的编程装置,包括:串行外设接口和闪存控制器,所述串行外设接口用于实现数据转换并与所述闪存控制器连接,所述闪存控制器包括解码器和第一状态机并通过所述第一状态机与嵌入式闪存连接;其中:
外部烧写器提供时钟信号到所述串行外设接口和所述闪存控制器,并提供数据信号到所述串行外设接口,其中,在所述外部烧写器与所述串行外设接口之间传输数据过程中所述时钟信号翻转;
所述串行外设接口以固定的预定位数发送数据到所述闪存控制器,并且,最高位的数据包定义数据指令集,所述解码器对所述数据指令集进行解码并根据解码结果通过所述第一状态机实现所述闪存控制器和所述嵌入式闪存之间的数据传输;所述数据指令集定义数据的操作类型和存储位置。
在一个优选例中,所述串行外设接口包括数据接收缓冲器、数据发射缓冲器和第二状态机,所述第二状态机耦合到所述解码器,所述数据接收缓冲器用于接收所述外部烧写器发送的数据并转换为预定位数的数据包,并且,通过所述第二状态机发送到所述解码器,所述数据发射缓冲器通过所述第二状态机接收所述闪存控制器发送的预定位数的数据包并转换为串行数据发射到所述外部烧写器。
在一个优选例中,对所述嵌入式闪存的行编程过程中,所述第一状态机耦合到所述嵌入式闪存的第一编程信号和片选信号均被设置为有效后,经过第一预定时间所述第一状态机耦合到所述嵌入式闪存的写使能信号被设置为有效,在所述第一预定时间过程中所述外部烧写器发送预定位数的数据包到到所述串行外设接口,并且,经过第二预定时间所述第一状态机耦合到所述嵌入式闪存的第二编程信号被设置为有效,在所述第二预定时间过程中所述外部烧写器发送预定位数的数据包到到所述串行外设接口;对所述嵌入式闪存的行编程完成后,所述写使能信号被设置为无效后,经过第三预定时间所述第一编程信号和片选信号被设置为无效,并且,再经过第四预定时间所述片选信号被设置为有效。
在一个优选例中,所述预定位数为8比特。
在一个优选例中,在所述外部烧写器与所述串行外设接口之间不传输数据过程中所述时钟信号保持高电平或低电平。
在一个优选例中,对所述嵌入式闪存擦除过程中,所述第一状态机耦合到所述嵌入式闪存的擦除信号和片选信号均被设置为有效后,经过第一预定时间擦除信号被设置为有效。
在一个优选例中,对所述嵌入式闪存读取过程中,所述第一状态机耦合到所述嵌入式闪存的读取信号被设置为有效后,经过第一预定时间所述第一状态机耦合到所述嵌入式闪存的片选信号和输出使能信号均被设置为有效。
相对于现有技术,本申请至少具有以下有益效果:
1. 串行外设接口的时钟信号只有在需要发送数据的时候才有,其他时候是关掉,类似作了时钟门控电路,可以显著节省芯片动态功耗。
2. 闪存操作时序由外围的烧写器控制,不需要内部振荡器HSI进行时钟计数,减少芯片面积。
3. 烧写器控制对闪存操作时序的同时又把下一个待编程的数据准备好,可以实现连续编程功能,缩短编程时间。
4. 不需要JLINK,ULINK,ST-LINK等仿真器,利用SPI协议即可实现在线,实现离线闪存编程。
本说明书中记载了大量的技术特征,分布在各个技术方案中,如果要罗列出本申请所有可能的技术特征的组合(即技术方案)的话,会使得说明书过于冗长。为了避免这个问题,本说明书上述发明内容中公开的各个技术特征、在下文各个实施方式和例子中公开的各技术特征、以及附图中公开的各个技术特征,都可以自由地互相组合,从而构成各种新的技术方案(这些技术方案均应该视为在本说明书中已经记载),除非这种技术特征的组合在技术上是不可行的。例如,在一个例子中公开了特征A+B+C,在另一个例子中公开了特征A+B+D+E,而特征C和D是起到相同作用的等同技术手段,技术上只要择一使用即可,不可能同时采用,特征E技术上可以与特征C相组合,则,A+B+C+D的方案因技术不可行而应当不被视为已经记载,而A+B+C+E的方案应当视为已经被记载。
附图说明
图1为本申请一实施例中基于SPI协议的嵌入式闪存的编程装置的示意图。
图2为本申请一实施例中SPI协议上数据格式的示意图。
图3为本申请一实施例中嵌入式闪存编程过程的时序示意图。
图4为本申请一实施例中嵌入式闪存擦除过程的时序示意图。
图5为本申请一实施例中嵌入式闪存读取过程的时序示意图。
具体实施方式
在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方式作进一步地详细描述。
图1示出了本申请的一个实施例中的基于SPI协议的嵌入式闪存的编程装置100,编程装置100包括串行外设接口((Serial Peripheral Interface,SPI)101和闪存控制器102,所述串行外设接口101用于实现数据转换并与所述闪存控制器102连接,所述闪存控制器102包括解码器106和第一状态机(FSM)107并通过所述第一状态机107与嵌入式闪存(Flash)200连接。
串行外设接口101用于芯片内部的从机(slave),只需要两个管脚,例如,SCLK、SDIO。SCLK用作时钟线,SDIO用作双向数据线。
外部烧写器(图中未示出)通过时钟线SCLK提供时钟信号CLK到所述串行外设接口101和所述闪存控制器102,并提供数据信号到所述串行外设接口101。在所述外部烧写器与所述串行外设接口101之间传输数据过程中所述时钟线SCLK上的时钟信号翻转。时钟信号CLK和数据信号Data的格式如图2所示。
所述串行外设接口101以固定的预定位数发送数据到所述闪存控制器102,并且,最高位的数据包定义数据指令集,所述解码器106对所述数据指令集进行解码并根据解码结果通过所述第一状态机107实现所述闪存控制器102和所述嵌入式闪存200之间的数据传输。在一个实施例中,所述数据指令集定义数据的操作类型和存储位置。所述预定位数为8比特。
继续参考图1所示,所述串行外设接口101包括数据接收缓冲器(RxBuffer)104、数据发射缓冲器(TxBuffer)103和第二状态机105,所述第二状态机105耦合到所述解码器106,所述数据接收缓冲器104用于接收所述外部烧写器发送的数据并转换为预定位数的数据包,并且,通过所述第二状态机105发送到所述解码器106,所述数据发射缓冲器103通过所述第二状态机105接收所述闪存控制器200发送的预定位数的数据包并转换为串行数据发射到所述外部烧写器。
所述嵌入式闪存200的行编程过程的时序参考图3所示,所述第一状态机107耦合到所述嵌入式闪存200的第一编程信号(PROG)和片选信号(CEb)均被设置为有效后,例如PROG被设置为高,片选被设置为低,经过第一预定时间TNVS所述第一状态机107耦合到所述嵌入式闪存200的写使能信号WEb被设置为有效,在所述第一预定时间TNVS过程中所述外部烧写器发送预定位数的数据包到到所述串行外设接口101,并且,经过第二预定时间TPGS所述第一状态机107耦合到所述嵌入式闪存200的第二编程信号PROG2被设置为有效,在所述第二预定时间TPGS过程中所述外部烧写器发送预定位数的数据包到到所述串行外设接口101。对所述嵌入式闪存200的行编程完成后,所述写使能信号WEb被设置为无效后,经过第三预定时间TNCV所述第一编程信号PROG和片选信号被设置为无效,并且,再经过第四预定时间TRW所述片选信号被设置为有效。
所述嵌入式闪存200的擦除的时序参考图4所示,所述第一状态机耦合到所述嵌入式闪存200的擦除信号(ERASE)和片选信号均被设置为有效后,经过第一预定时间TNVS擦除信号ERASE被设置为有效。
所述嵌入式闪存200的读取的时序参考图5所示,所述第一状态机耦合到所述嵌入式闪存200的读取信号(READM0/ READM1)被设置为有效后,经过第一预定时间TNVS所述第一状态机107耦合到所述嵌入式闪存200的片选信号和输出使能信号(Oeb)均被设置为有效。
本实施例中,在所述外部烧写器与所述串行外设接口101之间不传输数据过程中所述时钟信号CLK保持高电平或低电平,即关闭时钟信号。
本申请利用SPI协议只需两个管脚,重用芯片内部从机的SPI模块完成8位数据的收发,闪存的操作时序由外围的烧写器控制,取代了内部振荡器HSI时钟计数,从而可以节省面积。在烧写器发送8位数据控制闪存时序的同时准备好下一个编程数据,可以实现闪存连续编程,缩短编程时间。整个编程过程只有一个工作时钟,且只有在需要发送数据的时候才开启,其他时间可以停掉,可以节省功耗。
为了能够更好地理解本申请的技术方案,下面以一个具体的例子来进行说明,该例子中罗列的细节主要是为了便于理解,不作为对本申请保护范围的限制。
外部烧写器以SCLK的时钟信号作为工作时钟,烧写器在SCLK时钟信号的下降沿准备好数据,串行外设接口(SPI)在SCLK时钟信号的上升沿采样数据,采样得到的数据保存在数据接收缓冲器中。烧写器先发送高位数据,再发低位,当接收缓冲器计数到8位时,将接收好的8位数据传送给闪存控制器的解码器。然后闪存控制器的解码器解码接收的8位数据,从而知道外部烧写器的意图,完成对闪存(Flash)的擦除、编程、读操作。
对于SPI接收到的8位数据,本申请可以自定义一个简单的指令集,解码器根据定义的指令集确定外部烧写器需要对闪存进行擦除、编程或读操作。在一个实施例中,定义的指令集如下表一所示。
表一 指令集
其中,SKEY指令后面跟了8个操作数(例如,地址),用于解锁。SSTAR指令后面跟了2个操作数,先发16位地址中的低8位,再发高8位。SSTCMD指令后面跟了1个操作数,操作数不同,代表对Flash进行不同操作,操作数与操作的对应关系如下:
8’h10:chip_erase //芯片擦除
8’h12:main_sector_erase //主扇区擦除
8’h14:nvr_sector_erase //NVR扇区擦除
SST_MAIN、SST_NVR 指令后面跟了4个操作数,先后次序data[7:0] ->data[15:8]->data[23:16] ->data[31:24]对应的操作码。SLD_MAIN、SLD_NVR指令后面跟了4个操作数,先后次序data[7:0]->data[15:8] ->data[23:16] ->data[31:24]对应的操作码。
Flash编程、擦除操作都有时序要求。以编程为例,Flash编程的时序通过外围的烧写器控制,取代了内部HSI计数。参考图3所示,当Tnvs时间满足时,烧写器发送8位数据,硬件逻辑(例如,FSM)会将Web信号拉低,同时将数据锁存,作为下一个编程地址的32位写数据的低8位「7:0」。当Tpgs时间满足时,硬件逻辑会将PROG2信号拉高,同时数据锁存,作为下一个编程地址的32位写数据的中间8位「15:8],以此类推,这样当一个物理地址编程结束时,下一个32位待编程数据已经准备好,可以实现同一行的连续编程,缩短编程时间。
参考图5所示,当外部烧写器要读Flash数据时,它会先发送一条读Flash指令,闪存控制器接收到该指令后,通过闪存控制器的FSM产生满足读Flash的接口时序,将Flash里面的数据读出来,放置在SPI模块里面的发射缓冲器中。接着在外部烧写器的SCLK时钟信号工作时钟下,SPI将发射缓冲器中的数据按先发高位,再发低位,通过SDIO接口传输给外部烧写器,外部烧写器同样经过串并转变,成功接收8位数据。
需要说明的是,在本专利的申请文件中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本专利的申请文件中,如果提到根据某要素执行某行为,则是指至少根据该要素执行该行为的意思,其中包括了两种情况:仅根据该要素执行该行为、和根据该要素和其它要素执行该行为。多个、多次、多种等表达包括2个、2次、2种以及2个以上、2次以上、2种以上。
在本说明书提及的所有文献都被认为是整体性地包括在本说明书的公开内容中,以便在必要时可以作为修改的依据。此外应理解,以上所述仅为本说明书的较佳实施例而已,并非用于限定本说明书的保护范围。凡在本说明书一个或多个实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例的保护范围之内。

Claims (9)

1.一种基于SPI协议的嵌入式闪存的编程装置,其特征在于,包括:串行外设接口和闪存控制器,所述串行外设接口用于实现数据转换并与所述闪存控制器连接,所述闪存控制器包括解码器和第一状态机并通过所述第一状态机与嵌入式闪存连接;其中:
外部烧写器提供时钟信号到所述串行外设接口和所述闪存控制器,并提供数据信号到所述串行外设接口,其中,在所述外部烧写器与所述串行外设接口之间传输数据过程中所述时钟信号翻转;
所述串行外设接口以固定的预定位数发送数据到所述闪存控制器,并且,最高位的数据包定义数据指令集,所述解码器对所述数据指令集进行解码并根据解码结果通过所述第一状态机实现所述闪存控制器和所述嵌入式闪存之间的数据传输;所述数据指令集定义数据的操作类型和存储位置;
所述串行外设接口包括数据接收缓冲器、数据发射缓冲器和第二状态机,所述第二状态机耦合到所述解码器,所述数据接收缓冲器用于接收所述外部烧写器发送的数据并转换为预定位数的数据包,并且,通过所述第二状态机发送到所述解码器,所述数据发射缓冲器通过所述第二状态机接收所述闪存控制器发送的预定位数的数据包并转换为串行数据发射到所述外部烧写器;
对所述嵌入式闪存的行编程过程中,所述第一状态机耦合到所述嵌入式闪存的第一编程信号和片选信号均被设置为有效后,经过第一预定时间所述第一状态机耦合到所述嵌入式闪存的写使能信号被设置为有效,在所述第一预定时间过程中所述外部烧写器发送预定位数的数据包到到所述串行外设接口,并且,经过第二预定时间所述第一状态机耦合到所述嵌入式闪存的第二编程信号被设置为有效,在所述第二预定时间过程中所述外部烧写器发送预定位数的数据包到到所述串行外设接口;对所述嵌入式闪存的行编程完成后,所述写使能信号被设置为无效后,经过第三预定时间所述第一编程信号和片选信号被设置为无效,并且,再经过第四预定时间所述片选信号被设置为有效。
2.根据权利要求1所述的基于SPI协议的嵌入式闪存的编程装置,其特征在于,所述预定位数为8比特。
3.根据权利要求1所述的基于SPI协议的嵌入式闪存的编程装置,其特征在于,在所述外部烧写器与所述串行外设接口之间不传输数据过程中所述时钟信号保持高电平或低电平。
4.一种基于SPI协议的嵌入式闪存的编程装置,其特征在于,包括:串行外设接口和闪存控制器,所述串行外设接口用于实现数据转换并与所述闪存控制器连接,所述闪存控制器包括解码器和第一状态机并通过所述第一状态机与嵌入式闪存连接;其中:
外部烧写器提供时钟信号到所述串行外设接口和所述闪存控制器,并提供数据信号到所述串行外设接口,其中,在所述外部烧写器与所述串行外设接口之间传输数据过程中所述时钟信号翻转;
所述串行外设接口以固定的预定位数发送数据到所述闪存控制器,并且,最高位的数据包定义数据指令集,所述解码器对所述数据指令集进行解码并根据解码结果通过所述第一状态机实现所述闪存控制器和所述嵌入式闪存之间的数据传输;所述数据指令集定义数据的操作类型和存储位置;对所述嵌入式闪存擦除过程中,所述第一状态机耦合到所述嵌入式闪存的擦除信号和片选信号均被设置为有效后,经过第一预定时间擦除信号被设置为有效。
5.根据权利要求4所述的基于SPI协议的嵌入式闪存的编程装置,其特征在于,所述预定位数为8比特。
6.根据权利要求4所述的基于SPI协议的嵌入式闪存的编程装置,其特征在于,在所述外部烧写器与所述串行外设接口之间不传输数据过程中所述时钟信号保持高电平或低电平。
7.一种基于SPI协议的嵌入式闪存的编程装置,其特征在于,包括:串行外设接口和闪存控制器,所述串行外设接口用于实现数据转换并与所述闪存控制器连接,所述闪存控制器包括解码器和第一状态机并通过所述第一状态机与嵌入式闪存连接;其中:
外部烧写器提供时钟信号到所述串行外设接口和所述闪存控制器,并提供数据信号到所述串行外设接口,其中,在所述外部烧写器与所述串行外设接口之间传输数据过程中所述时钟信号翻转;
所述串行外设接口以固定的预定位数发送数据到所述闪存控制器,并且,最高位的数据包定义数据指令集,所述解码器对所述数据指令集进行解码并根据解码结果通过所述第一状态机实现所述闪存控制器和所述嵌入式闪存之间的数据传输;所述数据指令集定义数据的操作类型和存储位置;对所述嵌入式闪存读取过程中,所述第一状态机耦合到所述嵌入式闪存的读取信号被设置为有效后,经过第一预定时间所述第一状态机耦合到所述嵌入式闪存的片选信号和输出使能信号均被设置为有效。
8.根据权利要求7所述的基于SPI协议的嵌入式闪存的编程装置,其特征在于,所述预定位数为8比特。
9.根据权利要求7所述的基于SPI协议的嵌入式闪存的编程装置,其特征在于,在所述外部烧写器与所述串行外设接口之间不传输数据过程中所述时钟信号保持高电平或低电平。
CN202310545813.8A 2023-05-16 2023-05-16 基于spi协议的嵌入式闪存的编程装置 Active CN116259347B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310545813.8A CN116259347B (zh) 2023-05-16 2023-05-16 基于spi协议的嵌入式闪存的编程装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310545813.8A CN116259347B (zh) 2023-05-16 2023-05-16 基于spi协议的嵌入式闪存的编程装置

Publications (2)

Publication Number Publication Date
CN116259347A CN116259347A (zh) 2023-06-13
CN116259347B true CN116259347B (zh) 2023-07-21

Family

ID=86684743

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310545813.8A Active CN116259347B (zh) 2023-05-16 2023-05-16 基于spi协议的嵌入式闪存的编程装置

Country Status (1)

Country Link
CN (1) CN116259347B (zh)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0922393A (ja) * 1995-07-06 1997-01-21 Mitsubishi Electric Corp 通信機能を有するワンチップフラッシュメモリ装置
US7103684B2 (en) * 2003-12-02 2006-09-05 Super Talent Electronics, Inc. Single-chip USB controller reading power-on boot code from integrated flash memory for user storage
EP1435624B1 (en) * 2002-12-30 2006-09-20 STMicroelectronics S.r.l. Fast page programming architecture and method in a non-volatile memory device with an SPI interface
WO2007095579A2 (en) * 2006-02-14 2007-08-23 Atmel Corporation Writing to and configuring flash memory
US8135881B1 (en) * 2010-09-27 2012-03-13 Skyworks Solutions, Inc. Dynamically configurable serial data communication interface
CN102541788A (zh) * 2010-12-27 2012-07-04 北京国睿中数科技股份有限公司 Apb桥以及利用apb桥执行读取或写入的方法
CN202189558U (zh) * 2011-08-24 2012-04-11 四川和芯微电子股份有限公司 基于spi接口的数据存储装置
CN202956753U (zh) * 2012-11-05 2013-05-29 汕尾芯灵电子科技有限公司 一种嵌入式系统中闪存芯片的编程装置及系统
US9245590B2 (en) * 2014-02-28 2016-01-26 Winbond Electronics Corporation Stacked die flash memory device with serial peripheral interface
CN107102868B (zh) * 2016-02-23 2020-07-31 北京兆易创新科技股份有限公司 嵌入式系统及其快速启动方法和装置
CN112199317B (zh) * 2020-10-27 2022-10-18 南京大学 一种RISCV处理器访问Flash存储器的桥接系统及其桥接方法

Also Published As

Publication number Publication date
CN116259347A (zh) 2023-06-13

Similar Documents

Publication Publication Date Title
US10861509B2 (en) Asynchronous/synchronous interface
KR100466980B1 (ko) 낸드 플래시 메모리 장치
US7397717B2 (en) Serial peripheral interface memory device with an accelerated parallel mode
TW486668B (en) A single-chip data processing apparatus incorporating an electrically rewritable nonvolatile memory and method of operating the same
US6122683A (en) Handshake minimizing serial-to-parallel interface with shift register coupled by parallel bus to address logic and control logic
US8140738B2 (en) Flash memory interface device
US8489843B2 (en) Configurable memory device
EP0361808A2 (en) Modular test structure for single chip digital exchange controller
US7971024B2 (en) Off-chip micro control and interface in a multichip integrated memory system
CN116259347B (zh) 基于spi协议的嵌入式闪存的编程装置
US7685343B2 (en) Data access method for serial bus
US7519751B2 (en) Method of generating an enable signal of a standard memory core and relative memory device
JP2001127827A (ja) データ転送方式
US7457908B2 (en) Integrated memory device with multi-sector selection commands
CN107608927B (zh) 一种支持全功能的lpc总线主机端口的设计方法
US6785174B2 (en) Testing method and device for non-volatile memories having a LPC (low pin count) communication serial interface
US6766408B2 (en) Semiconductor integrated circuit and method for writing into non-volatile memory using a program received by external communication
CN107122323B (zh) 在多模总线的多引脚传输数据的方法及装置
US7376810B2 (en) Integrated device with multiple reading and/or writing commands
US11593284B2 (en) Method for managing an operation for modifying the stored content of a memory device, and corresponding memory device
TW202042055A (zh) 記憶體控制系統及操作記憶體控制系統的方法
US6008677A (en) Voltage recovery circuit and method therefor
KR20040094194A (ko) 다양한 인스트럭션 코드들을 제공하는 아이2씨 통신프로토콜 방법
KR0161483B1 (ko) 메모리를 이용한 마이크로 콘트롤러의 내부 램 데이터 표시장치
CN118035158A (zh) 一种存储设备的使用方法及存储设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder

Address after: Room 301, No. 54, Lane 565, Shengxia Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai, March 2012

Patentee after: SHANGHAI MINDMOTION MICROELECTRONICS CO.,LTD.

Address before: Room 301, building 10, 399 Keyuan Road, Zhangjiang Town, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai, 201203

Patentee before: SHANGHAI MINDMOTION MICROELECTRONICS CO.,LTD.

CP02 Change in the address of a patent holder