CN114625322A - 固件分割管理方法及存储器存储系统 - Google Patents

固件分割管理方法及存储器存储系统 Download PDF

Info

Publication number
CN114625322A
CN114625322A CN202210303175.4A CN202210303175A CN114625322A CN 114625322 A CN114625322 A CN 114625322A CN 202210303175 A CN202210303175 A CN 202210303175A CN 114625322 A CN114625322 A CN 114625322A
Authority
CN
China
Prior art keywords
parameter
memory
sub
firmware
file
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.)
Granted
Application number
CN202210303175.4A
Other languages
English (en)
Other versions
CN114625322B (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.)
Hosin Global Electronics Co Ltd
Original Assignee
Hosin Global Electronics 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 Hosin Global Electronics Co Ltd filed Critical Hosin Global Electronics Co Ltd
Priority to CN202210303175.4A priority Critical patent/CN114625322B/zh
Publication of CN114625322A publication Critical patent/CN114625322A/zh
Application granted granted Critical
Publication of CN114625322B publication Critical patent/CN114625322B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种固件分割管理方法及存储器存储系统。所述方法包括:预先设置多个函数式参数;在呼叫第一函数式参数对应的第一函数式时取得第一函数式参数对应的第一区块参数,并且取得文件记录参数;判断第一区块参数与文件记录参数是否相同;响应于第一区块参数相同于文件记录参数,直接根据本地存储器中存储的第一子固件文件执行第一函数式;以及响应于第一区块参数不同于文件记录参数,载入第一区块参数对应的第二子固件文件至本地存储器,并且根据所载入的第二子固件文件执行第一函数式。

Description

固件分割管理方法及存储器存储系统
技术领域
本发明涉及一种存储器控制技术,尤其涉及一种固件分割管理方法及存储器存储系统。
背景技术
随着半导体芯片工艺制程的进步与更新,存储器存储装置中的主控制器对快闪存储器执行操作和测试流程的程序越来越复杂。此现象使得与操作、测试流程相应的代码同步扩展,导致代码需要占用的存储容量逐渐增加。一般来说,可使用外挂只读存储器(read-only memory,ROM)的方式或将代码存储在主控制器的随机存储器(random-accessmemory,RAM)内执行。然而,扩增只读存储器或随机存储器来存储扩展的代码可能会占用存储器存储装置的空间,而影响存储器存储装置的体积大小。因此,存储器存储装置内设置的存储器与存储空间不可能为了存储代码而无限增大。此外,在未检测快闪存储器之前也不会知道快闪存储器中哪些位置可以存放代码。前述现象将导致代码扩展后存储与使用的瓶颈。
发明内容
本发明是针对一种固件分割管理方法及存储器存储系统,可解决存储空间不足的问题而有效提升存储空间的运用。
本发明的实施例提供一种固件分割管理方法,其特征在于,用于控制存储器存储装置及主机系统。其中所述主机系统包括主机存储器,所述存储器存储装置包括存储器控制器与存储器模块,所述存储器控制器包括本地存储器,所述存储器模块包括多个存储单元。所述固件分割管理方法包括:预先设置多个函数式参数;在呼叫所述多个函数式参数中的第一函数式参数对应的第一函数式时取得所述第一函数式参数对应的第一区块参数,并且取得文件记录参数,其中所述文件记录参数反应所述本地存储器中存储的第一子固件文件;判断所述第一区块参数与所述文件记录参数是否相同;响应于所述第一区块参数相同于所述文件记录参数,直接根据所述本地存储器中存储的所述第一子固件文件执行所述第一函数式;以及响应于所述第一区块参数不同于所述文件记录参数,载入所述第一区块参数对应的第二子固件文件至所述本地存储器,并且根据所载入的所述第二子固件文件执行所述第一函数式。
在本发明的一实施例中,所述第一函数式参数与所述第一函数式参数对应的所述第一区块参数记录在所述主机存储器中。
在本发明的一实施例中,所述方法还包括:在载入所述第一区块参数对应的所述第二子固件文件至所述本地存储器之后,根据所述第一区块参数更新所述文件记录参数,以反应所述本地存储器中存储所述第二子固件文件。
在本发明的一实施例中,所述方法还包括:取得多个函数式中的每一个以及与每个所述函数式对应的区块参数;以及根据所述区块参数将所述多个函数式分段编译转码为多个子固件文件,其中所述多个子固件文件包括所述第一子固件文件以及所述第二子固件文件。
在本发明的一实施例中,根据所述区块参数将所述多个函数式分段编译转码为所述多个子固件文件的步骤包括:在编译时将所述区块参数以及与所述区块参数链接的所述函数式的函数式参数之间的对应关系记录在所述主机存储器中。
本发明的实施例另提供一种存储器存储系统,包括存储器存储装置与主机系统。所述存储器存储装置包括本地存储器。所述主机系统包括处理器及主机存储器,所述主机系统连接所述存储器存储装置。其中所述处理器用以预先设置多个函数式参数。所述处理器用以在呼叫所述多个函数式参数中的第一函数式参数对应的第一函数式时取得所述第一函数式参数对应的第一区块参数,并且取得文件记录参数,其中所述文件记录参数反应所述本地存储器中存储的第一子固件文件。所述处理器用以判断所述第一区块参数与所述文件记录参数是否相同。响应于所述第一区块参数相同于所述文件记录参数,所述处理器用以直接根据所述本地存储器中存储的所述第一子固件文件执行所述第一函数式。并且,响应于所述第一区块参数不同于所述文件记录参数,所述处理器用以载入所述第一区块参数对应的第二子固件文件至所述本地存储器,并且根据所载入的所述第二子固件文件执行所述第一函数式。
在本发明的一实施例中,所述第一函数式参数与所述第一函数式参数对应的所述第一区块参数记录在所述主机存储器中。
在本发明的一实施例中,所述处理器还用以在载入所述第一区块参数对应的所述第二子固件文件至所述本地存储器之后,根据所述第一区块参数更新所述文件记录参数,以反应所述本地存储器中存储所述第二子固件文件。
在本发明的一实施例中,所述处理器还用以取得多个函数式中的每一个以及与每个所述函数式对应的区块参数。并且,所述处理器还用以根据所述区块参数将所述多个函数式分段编译转码为多个子固件文件,其中所述多个子固件文件包括所述第一子固件文件以及所述第二子固件文件。
在本发明的一实施例中,所述处理器在编译时将所述区块参数以及与所述区块参数链接的所述函数式的函数式参数之间的对应关系记录在所述主机存储器中。
基于上述,本发明的实施例提供的固件分割管理方法及存储器存储系统,能够将固件文件以区块分段为多个子固件文件存储在主机系统。并且在程序运行的过程中,从主机系统载入所需的子固件文件至存储器存储装置中运行。在存储器存储装置的本地存储器的存储空间有限的情况下,可更有效运用存储器存储装置的存储空间并可同时解决存储器存储装置存储空间不足的问题。
附图说明
图1是根据本发明的一实施例所示出的存储器存储装置的示意图;
图2是根据本发明的一实施例所示出的存储器控制器的示意图;
图3是根据本发明的一实施例所示出的管理存储器模块的示意图;
图4是根据本发明的一实施例所示出的主机系统与存储器存储装置的概要方块图;
图5是根据本发明的一实施例所示出的固件分割管理方法的流程图。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同组件符号在附图和描述中用来表示相同或相似部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
图1是根据本发明的一实施例所示出的存储器存储装置的示意图。请参照图1,存储器存储系统10包括主机系统11与存储器存储装置12。主机系统11可为任意型态的计算机系统。例如。主机系统11可为笔记本计算机、台式计算机、智能手机、平板计算机、工业计算机等。存储器存储装置12用以存储来自主机系统11的数据。例如,存储器存储装置12可包括固态硬盘、U盘或其他类型的非易失性存储装置。主机系统11可经由串行先进技术总线附属(Serial Advanced Technology Attachment,SATA)接口、外设部件互连快速(PeripheralComponent Interconnect Express,PCI Express)、通用串行总线(Universal SerialBus,USB)或其他类型的连接接口电性连接至存储器存储装置12。因此,主机系统11可将数据存储至存储器存储装置12和/或从存储器存储装置12读取数据。
存储器存储装置12可包括连接接口121、存储器模块122及存储器控制器123。连接接口121用以将存储器存储装置12连接至主机系统11。例如,连接接口121可支持SATA、PCIExpress或USB等连接接口标准。存储器存储装置12可经由连接接口121与主机系统11通信。
存储器模块122用以存储数据。存储器模块122可包括可复写式非易失性存储器模块。存储器模块122包括存储单元阵列。存储器模块122中的存储单元是以电压的形式来存储数据。例如,存储器模块122可包括单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模块、多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块、三阶存储单元(Triple Level Cell,TLC)NAND型快闪存储器模块、四阶存储单元(Quad Level Cell,QLC)NAND型快闪存储器模块、三维NAND型快闪存储器模块(3D NAND flash memorymodule)(可具有多个三阶或四阶存储单元)或其他具有相似特性的存储器模块。存储器模块122中的存储单元是以阵列的方式设置。
存储器控制器123连接至连接接口121与存储器模块122。存储器控制器123可用以控制存储器存储装置12。例如,存储器控制器123可控制连接接口121与存储器模块122以进行数据存取与数据管理。例如,存储器控制器123可包括中央处理单元(CPU)、图形处理单元(GPU),或是其他可编程的一般用途或特殊用途的微处理器、数字信号处理器(DigitalSignal Processor,DSP)、可编程控制器、专用集成电路(Application SpecificIntegrated Circuits,ASIC)、可编程逻辑器件(Programmable Logic Device,PLD)或其他类似装置或这些装置的组合。
在一实施例中,存储器控制器123亦称为快闪存储器控制器。在一实施例中,存储器模块122亦称为快闪存储器模块。存储器模块122可接收来自存储器控制器123的指令序列并根据此指令序列存取存储于存储单元中的数据。
图2是根据本发明的一实施例所示出的存储器控制器的示意图。请参照图1与图2,存储器控制器123包括主机接口21、存储器接口22、存储器控制电路23与本地存储器24。主机接口21用以经由连接接口121连接至主机系统11,以与主机系统11通信。存储器接口22用以连接至存储器模块122,以与存储器模块122通信。
存储器控制电路23连接至主机接口21与存储器接口22。存储器控制电路23可经由主机接口21与主机系统11沟通并经由存储器接口22存取至存储器模块122。存储器控制电路23也可视为存储器控制器123的控制核心,其具有多个控制指令,在存储器存储装置12运作时这些控制指令会被执行以实现数据的写入、读取、抹除等运作。在不同实施例中,存储器控制电路23的控制指令可以是以固件形式、代码形式或硬件形式来实作,本发明不在此限制。在以下实施例中,对于存储器控制电路23的说明等同于对于存储器控制器123的说明。此外,存储器控制电路23还可包括一或多个缓冲存储器,其用以暂存数据。
本地存储器24电性连接至存储器控制电路23,并且经配置以存储用于执行控制存储器存储装置12的操作的各种过程、操作、逻辑流及例程(包括处置存储器存储装置12与主机系统11之间的通信)的指令和其他执行指令时所需的数据。存储器控制电路23可执行本地存储器24中的指令来控制存储器存储装置12的运作。例如,本地存储器24可以包括动态随机存取存储器(Dynamic Random Access Memory,DRAM)或静态随机存取存储器(StaticRandom Access Memory,SRAM)等随机存取存储器(Random Access Memory,RAM),本发明不在此限制。此外,本地存储器24是以芯片组或系统单芯片(System on Chip,SoC)的方式实作在存储器控制器123内,或者是被独立于存储器控制器123之外,本发明不在此限制。
图3是根据本发明的一实施例所示出的管理存储器模块的示意图。
请参照图1与图3,存储器模块122包括多个实体程序化单元,例如图3示出的实体单元301(0)~301(C)。存储器模块122是以实体程序化单元为基础来进行管理,每一个实体程序化单元皆包括多个存储单元且用以非易失性地存储数据。多个实体程序化单元可组成一个实体抹除单元(例如,实体区块)。一个实体抹除单元中的多个实体程序化单元(或存储单元)可被同时抹除。此外,存储器控制电路23可配置多个逻辑单元311(0)~311(D)来映射至少部分的实体程序化单元。例如,一个逻辑单元可由一或多个逻辑地址组成。逻辑单元与实体程序化单元之间的映射关系则可记载于逻辑至实体映射表中。
在一实施例中,存储器模块逻辑地区分为数据区310、闲置区320与系统区330。逻辑上属于数据区310的实体单元301(1)~301(A)存储有来自主机系统11的数据(亦称为使用者数据)。数据区310中的实体程序化单元被抹除后就会被关联至闲置区320。其中,闲置区320中的多个实体程序化单元可组成一个闲置实体抹除单元。
逻辑上属于系统区330的实体单元301(B+1)~301(C)是用以记录系统数据。例如,系统数据包括关于存储器模块的制造商与型号、存储器模块的实体抹除单元数、每一实体抹除单元的实体程序化单元数等。特别是,数据区310、闲置区320与系统区330的实体程序化单元的数量会根据不同的存储器规格而有所不同。
在一个存储单元可以存储多个比特(例如,MLC或TLC NAND型快闪存储器)的实施例中,属于同一条字线(或同一个字线层)的实体程序化单元至少可被分类为下实体程序化单元与上实体程序化单元。例如,在MLC NAND型快闪存储器的实施例中,一存储单元的最低有效位(Least Significant Bit,LSB)是属于下实体程序化单元,并且此存储单元的最高有效位(Most Significant Bit,MSB)是属于上实体程序化单元。下实体程序化单元的可靠度一般会高于上实体程序化单元的可靠度。在一范例实施例中,下实体程序化单元亦称为快页(fast page),而上实体程序化单元亦称为慢页(slow page)。此外,在TLC NAND型快闪存储器的实施例中,一存储单元的最低有效位(Least Significant Bit,LSB)是属于下实体程序化单元,此存储单元的中间有效位(Center Significant Bit,CSB)是属于中实体程序化单元,并且此存储单元的最高有效位(Most Significant Bit,MSB)是属于上实体程序化单元。
图4是根据本发明的一实施例所示出的主机系统与存储器存储装置的概要方块图。
请参照图4,主机系统11包括主机存储器111以及处理器112。主机存储器111例如是任意型式的随机存取存储器、只读存储器(Read-Only Memory,ROM)、快闪存储器(Flashmemory),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器或其他类似装置或这些装置的组合,本发明不在此限制。可选的,主机存储器还可以是至少一个非集成在存储器存储装置10的存储装置。在本实施例中,主机存储器111用以存储测试存储器存储装置10或存储器存储装置10运作时,可用于编程存储器存储装置10的固件文件,例如bin文件。
处理器112例如是中央处理单元(Central Processing Unit,CPU),或是其他可编程的一般用途或特殊用途的微处理器(Microprocessor)、数字信号处理器(DigitalSignal Processor,DSP)、可编程控制器、专用集成电路(Application SpecificIntegrated Circuits,ASIC)、可编程逻辑器件(Programmable Logic Device,PLD)或其他类似装置或这些装置的组合,本发明不在此限制。
图5是根据本发明的一实施例所示出的固件分割管理方法的流程图。请同时参照图4及图5,本实施例的方法适用于上述的主机系统11与存储器存储装置10,以下即搭配主机系统11与存储器存储装置10的各项装置及组件说明本实施例的固件分割管理方法的详细步骤。
在本实施例中,可以是采用函数程序设计(functional programming)建立固件文件。编程人员在编程固件文件时可设计将相同使用特性的函数式(function)归类为同一区块(bank)。举例来说,同样对应至处理写入指令的相关函数式可归类在同一区块,同样对应至处理读取指令的相关函数式可归类在同一区块,同样对应至处理数据转换的相关函数式可归类在同一区块,专门处理协议的函数式可归类在同一区块,各个模块会用到的通用函数式可归类在同一区块,本发明不限于此。函数式可包括函数式参数以及代码区段。编程人员在编程时可在每个函数式的代码区段中注记每个函数式对应的区块参数,此区块参数表示该函数式归类的区块。假设编程人员使用主机系统11进行编程。当主机系统11的处理器112执行编译器(compiler)以对固件文件进行编译时,处理器112会从固件文件中取得每个函数式以及与每个函数式对应的区块参数,并且根据区块参数将多个函数式分段编译转码为多个子固件文件。具体来说,处理器112可根据区块参数将固件文件中属于不同区块的函数式分段编译转码为多个子固件文件。这些子固件文件存储在主机存储器111中。详细来说,处理器112会将固件文件中注记对应至同一区块参数的多个函数式进行链接,并且编译转码至同一个子固件文件,例如bin文件。基此,编译后产生的每一个子固件文件会分别关联至多个特定函数式。
在本实施例中,处理器112还可在编译时记录区块参数以及与区块参数链接的多个函数式的函数式参数之间的对应关系,并将对应关系记录存储在主机存储器111中,本发明不在此限制。举例来说,处理器112可将区块参数以及与区块参数链接的多个函数式的函数式参数之间的对应关系记录在文件查找表中,此文件查找表用于反应函数式参数关联的子固件文件。应注意的是,本发明并不限于文件查找表的记录方式,本领域人员当可经由上述范例实施例的启示,自行设计用以产生可查询的记录。
在一实施例中,文件查找表可包括区块参数以及与区块参数链接的每个函数式的函数式参数。例如,下表1为一实施例中的文件查找表,其记录区块参数以及与区块参数链接的多个函数式的函数式参数。
表1
Figure BDA0003566321480000081
根据表1,函数式参数function a和function b对应至区块参数Bank 0,此表示函数式参数function a和function b所对应的函数式的编译结果存储在同一个子固件文件。函数式参数function c和function d对应至区块参数Bank1,此表示函数式参数functionc和function d所对应的函数式的编译结果存储在同一个子固件文件。然而,表1仅为一个范例,其中具体的记录皆可以依据实务上的需求而调整。
请参照图5,在步骤S502中,处理器112可预先设置多个函数式参数。这些函数式参数用于呼叫函数式。具体来说,编程人员可依据上述函数式参数撰写测试项目的脚本文件。以上述函数式为例,脚本文件中可包含一连串的函数式参数与其他代码片段,用以在存储器存储装置10上实施相应的一连串操作以便对待测项目进行测试。
之后,在步骤S504中,处理器112在呼叫多个函数式参数中的第一函数式参数对应的第一函数式时取得第一函数式参数对应的第一区块参数,并且取得文件记录参数。在本实施例中,处理器112会使用变数(例如,文件记录参数)记录存储器存储装置10的本地存储器24中存储的第一子固件文件所对应的区块参数,所述变数反应本地存储器24中存储的子固件文件(亦称为,第一子固件文件)。例如,处理器112可使用全局(global)变数来存储文件记录参数。
具体来说,处理器112可执行脚本文件并调用脚本文件中函数式参数对应的函数式。在本实施例中,处理器112在呼叫脚本文件中的第一函数式参数对应的第一函数式时会取得此第一函数式参数对应的第一区块参数。例如,处理器112可查询文件查找表以取得第一函数式参数对应的第一区块参数。
接着,在步骤S506中,处理器112会判断第一区块参数与文件记录参数是否相同。若第一区块参数相同于文件记录参数,表示本地存储器24存储有所呼叫的函数式对应的子固件文件。因此在步骤S508中,响应于第一区块参数相同于文件记录参数(例如,步骤S506判断为是),处理器112可直接根据本地存储器24中存储的第一子固件文件执行第一函数式。举例来说,处理器112可直接传送命令至存储器存储装置10,以指示存储器存储装置10基于本地存储器24中存储的第一子固件文件执行第一函数式。
然而,本地存储器24的存储容量有限,本实施例的本地存储器24只存储部分的子固件文件。若第一区块参数不同于文件记录参数,表示本地存储器24没有存储处理器112所呼叫的函数式对应的子固件文件。因此在步骤S510中,响应于第一区块参数不同于文件记录参数(例如,步骤S506判断为否),处理器112可执行切换操作以载入第一区块参数对应的子固件文件(亦称为,第二子固件文件)至本地存储器24,并且根据所载入的第二子固件文件执行第一函数式。
具体来说,处理器112在执行切换操作时,可从主机存储器111读取第一区块参数对应的第二子固件文件。并且,处理器112可通过供应商命令(vendor command)装载第二子固件文件至存储器存储装置10的本地存储器24,再根据所载入的第二子固件文件执行第一函数式。
在本实施例中,处理器112可在将第二子固件文件载入至本地存储器24之后,根据第二子固件文件对应的第一区块参数更新文件记录参数,以记录本地存储器24存储有第二子固件文件。于此,更新后的文件记录参数反应本地存储器24中存储第一子固件文件以及第二子固件文件。
以上表1为例,假设存储器存储装置10的本地存储器24只存储区块参数Bank 1对应的子固件文件,处理器112会利用文件记录参数记录区块参数Bank 1。在本实施例中,当处理器112要呼叫函数式参数function a对应的函数式时,处理器112可查询表1取得函数式参数function a对应至第一区块参数Bank 0。接着,处理器112判断文件记录参数记录的区块参数Bank 1与第一区块参数Bank 0不相同,并将第一区块参数Bank 0对应的子固件文件载入本地存储器24,并根据所载入的子固件文件执行函数式参数function a对应的函数式。此外,处理器112在将第一区块参数Bank 0对应的子固件文件载入本地存储器24之后,利用文件记录参数记录区块参数Bank 0。如此一来,当下一次处理器112要呼叫函数式参数function a对应的函数式时,即可根据文件记录参数判断本地存储器24存储有区块参数Bank 0对应的子固件文件。基此,处理器112可直接根据本地存储器24中存储的区块参数Bank 0对应的子固件文件执行函数式参数function a对应的函数式。
然而,图5中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图5中各步骤可以是作为多个代码或是电路,本发明不加以限制。此外,图5的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,本发明的实施例提供的固件分割管理方法及存储器存储系统,能够将固件文件以区块分段为多个子固件文件存储在主机系统。并且在程序运行的过程中,从主机系统载入所需的子固件文件至存储器存储装置中运行。藉此,可更有效运用存储器存储装置的存储空间并可同时解决存储器存储装置中本地存储器的存储空间不足的问题。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种固件分割管理方法,其特征在于,用于控制存储器存储装置及主机系统,其中所述主机系统包括主机存储器,所述存储器存储装置包括存储器控制器与存储器模块,所述存储器控制器包括本地存储器,所述存储器模块包括多个存储单元,且所述固件分割管理方法包括:
预先设置多个函数式参数;
在呼叫所述多个函数式参数中的第一函数式参数对应的第一函数式时取得所述第一函数式参数对应的第一区块参数,并且取得文件记录参数,其中所述文件记录参数反应所述本地存储器中存储的第一子固件文件;
判断所述第一区块参数与所述文件记录参数是否相同;
响应于所述第一区块参数相同于所述文件记录参数,直接根据所述本地存储器中存储的所述第一子固件文件执行所述第一函数式;以及
响应于所述第一区块参数不同于所述文件记录参数,载入所述第一区块参数对应的第二子固件文件至所述本地存储器,并且根据所载入的所述第二子固件文件执行所述第一函数式。
2.根据权利要求1所述的固件分割管理方法,其特征在于,所述第一函数式参数与所述第一函数式参数对应的所述第一区块参数记录在所述主机存储器中。
3.根据权利要求1所述的固件分割管理方法,其特征在于,所述方法还包括:
在载入所述第一区块参数对应的所述第二子固件文件至所述本地存储器之后,根据所述第一区块参数更新所述文件记录参数,以反应所述本地存储器中存储所述第二子固件文件。
4.根据权利要求1所述的固件分割管理方法,其特征在于,所述方法还包括:
取得多个函数式中的每一个以及与每个所述函数式对应的区块参数;以及
根据所述区块参数将所述多个函数式分段编译转码为多个子固件文件,其中所述多个子固件文件包括所述第一子固件文件以及所述第二子固件文件。
5.根据权利要求4所述的固件分割管理方法,其特征在于,根据所述区块参数将所述多个函数式分段编译转码为所述多个子固件文件的步骤包括:
在编译时将所述区块参数以及与所述区块参数链接的所述函数式的函数式参数之间的对应关系记录在所述主机存储器中。
6.一种存储器存储系统,包括:
存储器存储装置,包括本地存储器;以及
主机系统,包括处理器及主机存储器,所述主机系统连接所述存储器存储装置,
其中所述处理器用以预先设置多个函数式参数,
所述处理器用以在呼叫所述多个函数式参数中的第一函数式参数对应的第一函数式时取得所述第一函数式参数对应的第一区块参数,并且取得文件记录参数,其中所述文件记录参数反应所述本地存储器中存储的第一子固件文件,
所述处理器用以判断所述第一区块参数与所述文件记录参数是否相同,
响应于所述第一区块参数相同于所述文件记录参数,所述处理器用以直接根据所述本地存储器中存储的所述第一子固件文件执行所述第一函数式,并且
响应于所述第一区块参数不同于所述文件记录参数,所述处理器用以载入所述第一区块参数对应的第二子固件文件至所述本地存储器,并且根据所载入的所述第二子固件文件执行所述第一函数式。
7.根据权利要求6所述的存储器存储系统,其特征在于,所述第一函数式参数与所述第一函数式参数对应的所述第一区块参数记录在所述主机存储器中。
8.根据权利要求6所述的存储器存储系统,其特征在于,所述处理器还用以在载入所述第一区块参数对应的所述第二子固件文件至所述本地存储器之后,根据所述第一区块参数更新所述文件记录参数,以反应所述本地存储器中存储所述第二子固件文件。
9.根据权利要求6所述的存储器存储系统,其特征在于,所述处理器还用以取得多个函数式中的每一个以及与每个所述函数式对应的区块参数,并且
所述处理器还用以根据所述区块参数将所述多个函数式分段编译转码为多个子固件文件,其中所述多个子固件文件包括所述第一子固件文件以及所述第二子固件文件。
10.根据权利要求9所述的存储器存储系统,其特征在于,所述处理器在编译时将所述区块参数以及与所述区块参数链接的所述函数式的函数式参数之间的对应关系记录在所述主机存储器中。
CN202210303175.4A 2022-03-25 2022-03-25 固件分割管理方法及存储器存储系统 Active CN114625322B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210303175.4A CN114625322B (zh) 2022-03-25 2022-03-25 固件分割管理方法及存储器存储系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210303175.4A CN114625322B (zh) 2022-03-25 2022-03-25 固件分割管理方法及存储器存储系统

Publications (2)

Publication Number Publication Date
CN114625322A true CN114625322A (zh) 2022-06-14
CN114625322B CN114625322B (zh) 2024-10-15

Family

ID=81903643

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210303175.4A Active CN114625322B (zh) 2022-03-25 2022-03-25 固件分割管理方法及存储器存储系统

Country Status (1)

Country Link
CN (1) CN114625322B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114625322B (zh) * 2022-03-25 2024-10-15 深圳宏芯宇电子股份有限公司 固件分割管理方法及存储器存储系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210240635A1 (en) * 2020-02-04 2021-08-05 Micron Technology, Inc. Memory sub-system management of firmware block record and device block record

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114625322B (zh) * 2022-03-25 2024-10-15 深圳宏芯宇电子股份有限公司 固件分割管理方法及存储器存储系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210240635A1 (en) * 2020-02-04 2021-08-05 Micron Technology, Inc. Memory sub-system management of firmware block record and device block record

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114625322B (zh) * 2022-03-25 2024-10-15 深圳宏芯宇电子股份有限公司 固件分割管理方法及存储器存储系统

Also Published As

Publication number Publication date
CN114625322B (zh) 2024-10-15

Similar Documents

Publication Publication Date Title
US8892814B2 (en) Data storing method, and memory controller and memory storage apparatus using the same
CN110335635B (zh) 用来管理一记忆装置的方法以及记忆装置与控制器
US11288019B2 (en) Memory management method and storage controller
US10884665B2 (en) Data reading method, storage controller and storage device for optimizing read voltages
US20200081655A1 (en) Memory management method and storage controller
CN107665091B (zh) 数据读取方法、数据写入方法及其存储控制器
US20190304546A1 (en) Decoding method and storage controller
US11488671B2 (en) Method, associated memory device and controller thereof for performing programming management
CN112166405A (zh) 在存储器系统中分配可变媒体类型的存储器装置
CN111625197A (zh) 存储器控制方法、存储器存储装置及存储器控制器
CN114625322B (zh) 固件分割管理方法及存储器存储系统
CN110471612B (zh) 存储器管理方法以及存储控制器
US10509583B1 (en) Memory management method and storage controller
CN114416147A (zh) 固件载入方法、存储器及计算机可读存储介质
CN112230849B (zh) 存储器控制方法、存储器存储装置及存储器控制器
CN113138720A (zh) 数据存储方法、存储器控制电路单元以及存储器存储装置
US10203886B2 (en) Data writing method, memory control circuit unit and memory storage apparatus for writing data from buffer memory and moving valid data
CN107103930B (zh) 数据写入方法、存储器控制电路单元与存储器存储装置
US8738847B2 (en) Data writing method, and memory controller and memory storage apparatus using the same
TW202143047A (zh) 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置
CN110442299B (zh) 数据写入方法、存储器控制电路单元以及存储器储存装置
CN110377538B (zh) 存储器管理方法以及存储控制器
US8832358B2 (en) Data writing method, memory controller and memory storage apparatus
CN112988069B (zh) 存储器管理方法、存储器存储装置及存储器控制器
CN111417933A (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