CN111400209A - 用来进行配置管理的方法以及数据存储装置及其控制器 - Google Patents
用来进行配置管理的方法以及数据存储装置及其控制器 Download PDFInfo
- Publication number
- CN111400209A CN111400209A CN201910503432.7A CN201910503432A CN111400209A CN 111400209 A CN111400209 A CN 111400209A CN 201910503432 A CN201910503432 A CN 201910503432A CN 111400209 A CN111400209 A CN 111400209A
- Authority
- CN
- China
- Prior art keywords
- code
- data storage
- storage device
- program code
- rom
- 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
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 67
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000007726 management method Methods 0.000 title claims abstract description 12
- 230000015654 memory Effects 0.000 claims abstract description 130
- 238000012545 processing Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 8
- 230000002093 peripheral effect Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 102100027730 Endogenous retrovirus group K member 19 Rec protein Human genes 0.000 description 2
- 101001064123 Homo sapiens Endogenous retrovirus group K member 19 Env polyprotein Proteins 0.000 description 2
- 101000893974 Homo sapiens Endogenous retrovirus group K member 19 Gag polyprotein Proteins 0.000 description 2
- 101000956190 Homo sapiens Endogenous retrovirus group K member 19 Pro protein Proteins 0.000 description 2
- 101000580915 Homo sapiens Endogenous retrovirus group K member 19 Rec protein Proteins 0.000 description 2
- 101001066689 Homo sapiens Integrase Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 231100000957 no side effect Toxicity 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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)
- Human Computer Interaction (AREA)
- Read Only Memory (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种用来进行配置管理的方法以及数据存储装置及其控制器。所述方法可包括:从一只读存储器读取一只读存储器码,以执行所述只读存储器码;于执行所述只读存储器码的期间,侦测一通用输入输出电路的一第一组状态,以依据所述第一组状态来进行所述只读存储器码的一第一部分系统配置的设定;于执行所述只读存储器码的期间,侦测一电子保险丝电路的一第二组状态,以依据所述第二组状态来进行所述只读存储器码的一第二部分系统配置的设定;以及执行至少一程序代码,以使所述数据存储装置备妥以供一主机存取。本发明通过基于电子保险丝电路的系统配置的设定,能针对控制器的运作进行妥善的控制,以因应各种要求来控制系统配置的设定。
Description
技术领域
本发明关于闪存(Flash memory)的存取(access),尤指一种用来进行配置(configuration)管理的方法以及相关的数据存储装置及其控制器。
背景技术
闪存可广泛地应用于各种可携式或非可携式数据存储装置(例如:符合SD/MMC、CF、MS、XD或UFS标准的记忆卡;又例如:固态硬盘;又例如:符合UFS或EMMC规格的嵌入式(embedded)存储装置)中。以常用的NAND型闪存而言,最初有单阶细胞(single levelcell,SLC)、多阶细胞(multiple level cell,MLC)等类型的闪存。由于存储器的技术不断地发展,较新的数据存储装置产品可采用三阶细胞(triple level cell,TLC)闪存,甚至四阶细胞(quadruple level cell,QLC)闪存。为了确保数据存储装置对闪存的存取控制能符合相关规范,闪存的控制器通常备有某些管理机制以妥善地管理其内部运作。
依据现有技术,有了这些管理机制的数据存储装置还是有不足的处。举例来说,当闪存的类型或型号随着某些要求(诸如新客户的要求、新产品的要求)而变更时,系统配置(System Configuration)设定值可能需要对应地修改,这可能导致只读存储器码(ROMCode)的设计变更。此领域惯用的传统架构通过GPIO来进行系统配置的设定,例如,拉高(Pull high)或拉低(Pulllow)GPIO接脚的电压准位,通过设定不同的电压准位以进行系统配置的设定。
然而,一来GPIO的接脚有数量上的限制,这导致传统架构只能提供有限数量的系统配置设定值,无法满足实际的需求,这意味着这个问题并未真的被解决。再者,依据传统架构来实施数据存储装置会带来额外的问题诸如某些副作用。例如:由于需要设置额外的电阻器以拉高或拉低GPIO接脚的电压准位,故会增加数据存储装置的制造成本。为了放置电阻器,增加印刷电路板的面积并且增加布局(layout)的复杂度。因此,需要一种新颖的方法及相关架构,以在没有副作用或较不可能带来副作用的状况下实现具有配置更新弹性的数据存储装置。
发明内容
本发明的一目的在于公开一种用来进行配置管理的方法以及相关的数据存储装置及其控制器,以解决上述问题。
本发明的另一目的在于公开一种用来进行配置管理的方法以及相关的数据存储装置及其控制器,以在没有副作用或较不可能带来副作用的状况下将配置更新弹性赋予数据存储装置。
本发明的至少一实施例公开一种用来进行配置管理的方法,其中所述方法是应用于一数据存储装置,所述数据存储装置包括一非挥发性存储器(non-volatile memory,NVmemory),且所述非挥发性存储器包括至少一非挥发性存储器组件(NV memory element)。所述方法可包括:从一只读存储器(Read Only Memory,ROM)读取一只读存储器码(ROMCode,简称“ROM码”),以执行所述ROM码;于执行所述ROM码的期间,侦测一通用输入输出(General-Purpose Input/Output,简称GPIO)电路的一第一组状态,以依据所述第一组状态来进行所述ROM码的一第一部分系统配置的设定;于执行所述ROM码的期间,侦测一电子保险丝(electronic fuse,简称eFuse)电路的一第二组状态,以依据所述第二组状态来进行所述ROM码的一第二部分系统配置的设定;以及执行至少一程序代码,以使所述数据存储装置备妥(ready)以供一主机(host device)存取。
本发明的至少一实施例公开一种数据存储装置,其可包括:一非挥发性存储器,用来存储信息,其中所述非挥发性存储器包括至少一非挥发性存储器组件;以及一控制器,耦接至所述非挥发性存储器,用来控制所述数据存储装置的运作。所述控制器可包括一只读存储器、一eFuse电路与一处理电路,其中所述只读存储器可用来存储一ROM码,所述eFuse电路可用来存储设定信息,而所述处理电路可依据来自一主机的多个主机指令(hostcommand)控制所述控制器,以容许所述主机通过所述控制器存取所述非挥发性存储器。例如:所述处理电路从所述只读存储器读取所述ROM码,以执行所述ROM码;于执行所述ROM码的期间,所述处理电路侦测所述数据存储装置中的一GPIO电路的一第一组状态,以依据所述第一组状态来进行所述ROM码的一第一部分系统配置的设定;于执行所述ROM码的期间,所述处理电路侦测所述eFuse电路的一第二组状态,以依据所述第二组状态来进行所述ROM码的一第二部分系统配置的设定;以及所述处理电路执行至少一程序代码,以使所述数据存储装置备妥以供所述主机存取。
本发明的至少一实施例公开一种数据存储装置的控制器,其中所述数据存储装置包括所述控制器与一非挥发性存储器,且所述非挥发性存储器包括至少一非挥发性存储器组件。所述控制器可包括一只读存储器、一eFuse电路与一处理电路,其中所述只读存储器可用来存储一ROM码,所述eFuse电路可用来存储设定信息,而所述处理电路可依据来自一主机的多个主机指令控制所述控制器,以容许所述主机通过所述控制器存取所述非挥发性存储器。例如:所述处理电路从所述只读存储器读取所述ROM码,以执行所述ROM码;于执行所述ROM码的期间,所述处理电路侦测所述数据存储装置中的一GPIO电路的一第一组状态,以依据所述第一组状态来进行所述ROM码的一第一部分系统配置的设定;于执行所述ROM码的期间,所述处理电路侦测所述eFuse电路的一第二组状态,以依据所述第二组状态来进行所述ROM码的一第二部分系统配置的设定;以及所述处理电路执行至少一程序代码,以使所述数据存储装置备妥以供所述主机存取。
本发明的好处的一是,通过基于eFuse电路的系统配置的设定,本发明能针对所述控制器的运作进行妥善的控制,尤其能在使用相同的硬件架构的状况下因应各种要求(诸如新客户的要求、新产品的要求)来控制系统配置的设定。另外,依据本发明的实施例来实施并不会增加许多额外的成本。因此,现有技术的问题可被解决,且整体成本不会增加太多。相较于此领域惯用的传统架构,本发明能在没有副作用或较不可能带来副作用的状况下达到数据存储装置的优化效能。
附图说明
图1为依据本发明一实施例的一种数据存储装置与一主机的示意图。
图2绘示可用来实施图1所示存储器控制器的芯片的例子。
图3为依据本发明一实施例的一种用来进行配置管理(诸如系统配置设定)的方法的工作流程。
其中,附图标记说明如下:
50 主机
100 数据存储装置
110 存储器控制器
112 微处理器
112C 程序代码
112M 只读存储器
113 eFuse电路
114 控制逻辑电路
116 缓冲存储器
118 传输接口电路
120 非挥发性存储器
122,122-1,122-2,…,122-N 非挥发性存储器组件
130 GPIO电路
200 芯片
P0,P1,P2,…,
P0.1,P0.2,P0.3,P0.4,
P0.5,P0.6,P0.7,P0.8,
P1.1,P1.2,P1.3,P1.4,
P1.5,P1.6,P1.7,P1.8,
P2.1,P2.2,P2.3,P2.4,
P2.5,P2.6,P2.7,P2.8,… 接脚
300 工作流程
S11,S12,S13,S14,S15,S16 步骤
具体实施方式
请参考图1,图1为依据本发明一第一实施例的一种数据存储装置100与主机50的示意图。例如:数据存储装置100可为固态硬盘(Solid State Drive,SSD)。另外,主机50的例子可包括(但不限于):多功能移动电话(Multifunctional Mobile Phone)、平板计算机(Tablet)、以及个人计算机(Personal Computer)诸如桌面计算机与膝上型计算机。依据本实施例,数据存储装置100可包括一控制器诸如存储器控制器110以及非挥发性存储器120。数据存储装置100可更包括动态随机存取存储器(Dynamic Random Access Memory,简称DRAM)。其中,存储器控制器110是用来存取(Access)非挥发性存储器120,非挥发性存储器120是用来存储信息,例如:系统内编程码(In-System Programming Code,简称“ISP码”)、用户数据、逻辑-物理映像表(L2P Table)等等。如果数据存储装置100包括DRAM,则存储器控制器110可将上述信息暂存在DRAM中以加速数据的存取速度。存储器控制器110的GPIO电路130可控制GPIO接脚的运作。GPIO接脚经过适当的设定可提供次要系统配置的设定值。非挥发性存储器120可包括多个非挥发性存储器组件122-1、122-2、…与122-N,其中符号“N”可代表大于一的正整数。例如:非挥发性存储器120可为闪存(Flash memory),而非挥发性存储器组件122-1、122-2、…与122-N可分别为多个闪存芯片(Flash memory chip;也可称为快闪芯片)或多个闪存裸晶(Flash memory die;也可称为快闪裸晶)或逻辑单元编号(Logical Unit Number,LUN),但本发明并不限于此。
如图1所示,存储器控制器110可包括处理电路诸如微处理器112、存储器诸如只读存储器(ROM)112M、eFuse电路113、控制逻辑电路114、缓冲存储器116、与传输接口电路118,其中这些组件可通过共同总线彼此耦接并相互沟通。缓冲存储器116是以随机存取存储器(Random Access Memory,RAM)来实施,较佳是静态随机存取存储器(Static RAM,SRAM)。
本实施例的只读存储器112M是用来存储一程序代码112C,其可作为所述ROM码的例子,而微处理器112则用来执行程序代码112C以进入ROM码模式,完成微处理器112中各组件的初始化并控制非挥发性存储器120的运作。请注意,程序代码112C也可存储在缓冲存储器116或任何形式的存储器内。另外,eFuse电路113可用来存储保密信息,例如,存储ROM码执行时所需的主要或全部系统配置设定值、密钥、制造商标识符(Identification,ID)等。
控制逻辑电路114可包括错误更正码电路(未显示),以保护数据、及/或进行错误更正,而传输接口电路118可符合一特定通信标准,诸如串行高级技术附件(SerialAdvanced Technology Attachment,SATA)标准、快捷外设互联(Peripheral ComponentInterconnect Express,PCIE)标准、进阶主机控制器接口(Advanced Host ControllerInterface,AHCI)或非挥发性存储器快捷(Non-Volatile Memory Express,NVME)标准,且可依据所述特定通信标准与主机50进行通信。
于本实施例中,主机50可通过传送多个主机指令(Host Command)与对应的逻辑地址给存储器控制器110来间接地存取数据存储装置100中的非挥发性存储器120。存储器控制器110接收所述多个主机指令与逻辑地址,并将所述多个主机指令分别转译成存储器操作指令(简称操作指令),并依据逻辑-物理映像表判断逻辑地址所对应的物理地址,最后,以操作指令控制非挥发性存储器120的特定物理地址进行读取、写入(Write)/编程(Program),其中,物理地址较佳由逻辑单元编号、区块(Block)编号、平面(Plane)编号、页面(Page)编号或区段(Sector)编号所表示。
图2绘示可用来实施图1所示存储器控制器110的芯片200的例子,但本发明不限于此。芯片200的GPIO接脚可包括多组接脚(pin)诸如三组接脚,其中第一组接脚P0可包括接脚P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7与P0.8,第二组接脚P1可包括接脚P1.1、P1.2、P1.3、P1.4、P1.5、P1.6、P1.7与P1.8,且第三组接脚P2可包括接脚P2.1、P2.2、P2.3、P2.4、P2.5、P2.6、P2.7与P2.8}。用户可以通过拉高或拉低此三组接脚的电压准位,以设定次要系统配置设定值。在本发明中,主要系统配置设定值改由eFuse电路113所存储/提供,GPIO接脚仅提供少量的次要系统配置设定值,例如,仅第一组接脚P0提供次要系统配置设定值,第二以及第三组接脚可作为其他用途,例如,控制LED或蜂鸣器的运作,或是作为序列周边接口总线(Serial Peripheral Interface Bus,SPI),如此一来,GPIO接脚的使用方式可更具弹性。
图3为依据本发明一实施例的一种开机过程时进行配置管理(诸如系统配置设定)的方法的工作流程300。例如:在所述处理电路诸如微处理器112的控制下,所述控制器诸如存储器控制器110可进行工作流程300的运作。
于步骤S11中,上电(Power-on)。依据本实施例,数据存储装置100可从主机50取得电源,且存储器控制器110自动地开始运作。例如:数据存储装置100已被安装于主机50且耦接至主机50。当主机50开机时,主机50供电至数据存储装置100。又例如:于主机50开机之后,用户将数据存储装置100耦接至主机50。于是,主机50供电至数据存储装置100。
于步骤S12中,存储器控制器110(例如:所述处理电路诸如微处理器112)执行ROM码,例如,可从只读存储器112M读取所述ROM码,以执行所述ROM码。ROM码可包括多个基本控制指令,例如,控制GPIO电路130或eFuse电路113的基本操作所需的基本控制指令。
于步骤S13中,存储器控制器110自GPIO电路130取得次要系统配置设定值。于执行ROM码的期间,处理电路诸如微处理器112可控制GPIO电路130的运作并侦测GPIO接脚的状态,诸如第一组接脚P0的第一组状态130S,以依据第一组状态130S来提供ROM码运行所需的次要系统配置设定值。例如,第一组状态130S的值可由8个位所表示,例如“00000001”,或由1个位所表示,例如”1”,此时第一组状态130S表示主要系统配置设定值乃由eFuse电路113所提供。
于步骤S14中,存储器控制器110自eFuse电路113取得主要系统配置设定值。于执行ROM码的期间,存储器控制器110的微处理器112读取eFuse电路113所存储的主要系统配置设定值,每一设定值可表示设定的结果,例如:第一设定值表示系统内编程码的扫描偏移(Offset)值,第二设定值表示非挥发性存储器120的随机产生器(Randomizer)是否关闭,第三设定值表示非挥发性存储器120的忙碌/待命(Busy/Ready)状态是否忽略,等等。其中,每一设定值的长度可以不相同,例如,第一设定值由1个字节所表示,第二以及第三设定值分别由1个位所表示。
于步骤S15中,存储器控制器110提供主要系统配置设定值至ROM码。于执行ROM码的期间,微处理器112依据ROM码以及主要系统配置设定值而开启或去能特定功能,例如:不关闭(或致能)随机产生器。之后,ROM码执行完毕或执行至默认阶段,则数据存储装置100或存储器控制器110进入ROM模式。
于步骤S16中,存储器控制器110找寻并执行系统内编程码。进入ROM模式后,存储器控制器110(例如:所述处理电路诸如微处理器112)可依据默认或主要系统配置设定值(例如:系统内编程码的扫描偏移值)而在非挥发性存储器120找寻并执行系统内编程码。在成功地找寻并执行系统内编程码后,数据存储装置100或存储器控制器110进入正常模式。
在正常模式下,数据存储装置100可以接收并执行来自主机50的主机指令。如果未收到在正常模式下来自主机50的主机指令,则数据存储装置100可进入待命(Standby)或节电(Power Saving)模式。在正常模式,存储器控制器110能以更有效率地方式控制非挥发性存储器120的运作,例如,命令非挥发性存储器120自低速的单数据率(Single Data Rate,简称SDR)模式切换至高速的双数据率(Double Data Rate,简称DDR)模式,并以DDR模式控制非挥发性存储器120的运作。此外,存储器控制器110也可将逻辑-物理映像表自非挥发性存储器120载入至缓冲存储器116或DRAM,以加速取得逻辑地址所对应的物理地址。
另外,系统内编程码可包括一组额外控制指令,以控制存储器控制器110的各种功能,使数据存储装置100具备这些功能,例如,以密钥对来自主机50的用户数据进行加/解密,其中这些功能可包括对应于某一数据存储装置产品(其具有某一产品型号)的多个预定功能,诸如某些客制化功能,但本发明不限于此。另外,密钥也可为公钥-私钥组中的私钥(Private Key),用以对公钥加密后的用户数据进行解密。
在另一实施例中,系统内编程码可区分成核心程序代码以及多个辅助程序代码,存储器控制器110成功地找寻并执行核心程序代码后,存储器控制器110即可进入正常模式。之后,存储器控制器110可依据不同的触发条件而执行不同的辅助程序代码。例如,垃圾收集触发条件满足时,存储器控制器110找寻并执行垃圾收集程序相关的辅助程序代码。
在另一实施例中,全部系统配置设定值皆由eFuse电路113所存储/提供,GPIO接脚不再提供任何系统配置设定值。在此设定下,开机过程时进行配置管理(诸如系统配置设定)的方法的工作流程300中,步骤S13可予以略过,并在步骤S14中自eFuse电路113取得所有系统配置设定值,于步骤S15中,提供所有系统配置设定值至ROM码。
依据本实施例,eFuse电路113可包括多个eFuse单元诸如一次性可程序化eFuse单元,以供存储或记录多个位的设定信息。尤其,所述多个eFuse单元中的任何一个eFuse单元可默认具有一第一逻辑状态以代表一第一预定位,而上述任何一个eFuse单元只能被程序化一次以使其具有一第二逻辑状态以代表一第二预定位。例如:所述第一预定位与所述第二预定位可分别为位0与1。又例如:所述第一预定位与所述第二预定位可分别为位1与0。由于本实施例的eFuse电路113可记录多个字节(byte)的设定信息,故eFuse电路113足以提供ROM码所需的主要系统配置设定值。相较于此领域惯用的上述传统架构,本发明能将基于GPIO电路130的次要系统配置的总位数大幅地减少(例如从数十位减少到很少的位,诸如一位或两位),这带来诸多好处。
在另一实施例中,于步骤S16,存储器控制器110可先输出读取制造商标识符指令(Read ID Command)至非挥发性存储器120以取得非挥发性存储器120所存储的制造商标识符。存储器控制器110依据制造商标识符以及eFuse电路113所记录的主要系统配置设定值(例如:系统内编程码的扫描偏移)而取得制造商标识符所对应的程序代码及指令。之后,存储器控制器110执行制造商标识符所对应的程序代码及指令在非挥发性存储器120找寻系统内编程码,在成功找寻系统内编程码后,执行系统内编程码以进入正常模式。
在另一实施例中,可将特定制造商的指令集编程至eFuse电路113,例如:制造商#0的页面读取指令为00h,制造商#1的页面读取指令为10h。在步骤S16中,存储器控制器110输出读取制造商标识符指令(Read ID Command)至非挥发性存储器120以取得非挥发性存储器120所存储的制造商标识符,例如:制造商#1,则存储器控制器110判断非挥发性存储器120的制造商是制造商#1,之后,存储器控制器110将10h作为非挥发性存储器120的页面读取指令,找寻或读取系统内编程码。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种用来进行配置管理的方法,所述方法应用于一数据存储装置,所述数据存储装置包括一非挥发性存储器,所述非挥发性存储器包括至少一非挥发性存储器组件,所述方法的特征在于,包括有:
从一只读存储器读取一只读存储器码,以执行所述只读存储器码;
于执行所述只读存储器码的期间,侦测一通用输入输出电路的一第一组状态,以依据所述第一组状态来进行所述只读存储器码的一第一部分系统配置的设定;
于执行所述只读存储器码的期间,侦测一电子保险丝电路的一第二组状态,以依据所述第二组状态来进行所述只读存储器码的一第二部分系统配置的设定;以及
执行至少一程序代码,以使所述数据存储装置备妥以供一主机存取。
2.如权利要求1所述的方法,其特征在于,所述至少一程序代码包括一第一程序代码与一第二程序代码;以及执行所述至少一程序代码以使所述数据存储装置备妥以供所述主机存取包括:
执行所述第一程序代码,然后执行所述第二程序代码,以使所述数据存储装置备妥以供所述主机存取。
3.如权利要求2所述的方法,其特征在于,所述第一程序代码是一开机系统内编程码。
4.如权利要求3所述的方法,其特征在于,从所述只读存储器读取所述只读存储器码以执行所述只读存储器码的操作属于一初始化程序,而执行所述第一程序代码的操作属于一开机程序。
5.如权利要求2所述的方法,其特征在于,所述第一程序代码包括一组开机控制指令,以控制所述数据存储装置的开机。
6.如权利要求5所述的方法,其特征在于,所述第一程序代码被预先存储于所述非挥发性存储器中,且从所述非挥发性存储器被读出,以供控制所述数据存储装置的开机。
7.如权利要求5所述的方法,其特征在于,所述第二程序代码包括一组额外控制指令,使所述数据存储装置具备多个功能。
8.如权利要求7所述的方法,其特征在于,所述第二程序代码被预先存储于所述非挥发性存储器中,且从所述非挥发性存储器被读出,以供控制所述多个功能。
9.如权利要求2所述的方法,其特征在于,所述第二程序代码是一系统内编程码。
10.如权利要求1所述的方法,其特征在于,其还包括:
依据基于所述电子保险丝电路的至少一系统配置的设定,从多个预定参数选出一部分预定参数,以决定所述至少一程序代码中的一第一程序代码的一搜寻范围,以于所述搜寻范围中搜寻所述第一程序代码。
11.一种数据存储装置,其特征在于,包括有:
一非挥发性存储器,用来存储信息,其中所述非挥发性存储器包括至少一非挥发性存储器组件;以及
一控制器,耦接至所述非挥发性存储器,用来控制所述数据存储装置的运作,其中所述控制器包括:
一只读存储器,用来存储一只读存储器码;
一电子保险丝电路,用来存储设定信息;以及
一处理电路,用来依据来自一主机的多个主机指令控制所述控制器,以容许所述主机通过所述控制器存取所述非挥发性存储器,其中:
所述处理电路从所述只读存储器读取所述只读存储器码,
以执行所述只读存储器码;
于执行所述只读存储器码的期间,所述处理电路侦测所述数据存储装置中的一通用输入输出电路的一第一组状态,以依据所述第一组状态来进行所述只读存储器码的一第一部分系统配置的设定;
于执行所述只读存储器码的期间,所述处理电路侦测所述电子保险丝电路的一第二组状态,以依据所述第二组状态来进行所述只读存储器码的一第二部分系统配置的设定;以及
所述处理电路执行至少一程序代码,以使所述数据存储装置备妥以供所述主机存取。
12.如权利要求11所述的数据存储装置,其特征在于,所述至少一程序代码包括一第一程序代码与一第二程序代码;以及所述处理电路执行所述第一程序代码,然后执行所述第二程序代码,以使所述数据存储装置备妥以供所述主机存取。
13.如权利要求12所述的数据存储装置,其特征在于,所述第一程序代码是一开机系统内编程码。
14.如权利要求13所述的数据存储装置,其特征在于,从所述只读存储器读取所述只读存储器码以执行所述只读存储器码的操作属于一初始化程序,而执行所述第一程序代码的操作属于一开机程序。
15.如权利要求12所述的数据存储装置,其特征在于,所述第一程序代码包括一组开机控制指令,以控制所述数据存储装置的开机。
16.一种数据存储装置的控制器,所述数据存储装置包括所述控制器与一非挥发性存储器,所述非挥发性存储器包括至少一非挥发性存储器组件,所述控制器的特征在于,包括有:
一只读存储器,用来存储一只读存储器码;
一电子保险丝电路,用来存储设定信息;以及
一处理电路,用来依据来自一主机的多个主机指令控制所述控制器,以容许所述主机通过所述控制器存取所述非挥发性存储器,其中:
所述处理电路从所述只读存储器读取所述只读存储器码,以执行所述只读存储器码;
于执行所述只读存储器码的期间,所述处理电路侦测所述数据存储装置中的一通用输入输出电路的一第一组状态,以依据所述第一组状态来进行所述只读存储器码的一第一部分系统配置的设定;
于执行所述只读存储器码的期间,所述处理电路侦测所述电子保险丝电路的一第二组状态,以依据所述第二组状态来进行所述只读存储器码的一第二部分系统配置的设定;以及
所述处理电路执行至少一程序代码,以使所述数据存储装置备妥以供所述主机存取。
17.如权利要求16所述的控制器,其特征在于,所述至少一程序代码包括一第一程序代码与一第二程序代码;以及所述处理电路执行所述第一程序代码,然后执行所述第二程序代码,以使所述数据存储装置备妥以供所述主机存取。
18.如权利要求17所述的控制器,其特征在于,所述第一程序代码是一开机系统内编程码。
19.如权利要求18所述的控制器,其特征在于,从所述只读存储器读取所述只读存储器码以执行所述只读存储器码的操作属于一初始化程序,而执行所述第一程序代码的操作属于一开机程序。
20.如权利要求17所述的控制器,其特征在于,所述第一程序代码包括一组开机控制指令,以控制所述数据存储装置的开机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111214494.XA CN114003523B (zh) | 2019-01-02 | 2019-06-11 | 用来进行配置管理的方法以及数据存储装置及其控制器 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108100003A TWI696113B (zh) | 2019-01-02 | 2019-01-02 | 用來進行組態管理之方法以及資料儲存裝置及其控制器 |
TW108100003 | 2019-01-02 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111214494.XA Division CN114003523B (zh) | 2019-01-02 | 2019-06-11 | 用来进行配置管理的方法以及数据存储装置及其控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111400209A true CN111400209A (zh) | 2020-07-10 |
CN111400209B CN111400209B (zh) | 2021-11-09 |
Family
ID=71122916
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111214494.XA Active CN114003523B (zh) | 2019-01-02 | 2019-06-11 | 用来进行配置管理的方法以及数据存储装置及其控制器 |
CN201910503432.7A Active CN111400209B (zh) | 2019-01-02 | 2019-06-11 | 用来进行配置管理的方法以及数据存储装置及其控制器 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111214494.XA Active CN114003523B (zh) | 2019-01-02 | 2019-06-11 | 用来进行配置管理的方法以及数据存储装置及其控制器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10976944B2 (zh) |
CN (2) | CN114003523B (zh) |
TW (1) | TWI696113B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7586795B2 (en) * | 2006-03-20 | 2009-09-08 | Cypress Semiconductor Corporation | Variable reference voltage circuit for non-volatile memory |
CN101916089A (zh) * | 2010-07-12 | 2010-12-15 | 金龙联合汽车工业(苏州)有限公司 | 可配置客车车身控制系统及其参数配置方法 |
CN102681868A (zh) * | 2011-01-25 | 2012-09-19 | 三星电子株式会社 | 引导信息处理系统的方法和执行该方法的信息处理系统 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8239673B2 (en) * | 2004-04-08 | 2012-08-07 | Texas Instruments Incorporated | Methods, apparatus and systems with loadable kernel architecture for processors |
US8112618B2 (en) * | 2004-04-08 | 2012-02-07 | Texas Instruments Incorporated | Less-secure processors, integrated circuits, wireless communications apparatus, methods and processes of making |
US20060136858A1 (en) * | 2004-12-17 | 2006-06-22 | International Business Machines Corporation | Utilizing fuses to store control parameters for external system components |
US20070081396A1 (en) * | 2005-10-06 | 2007-04-12 | Gordon Tarl S | System and method for multi-use eFuse macro |
KR101441280B1 (ko) * | 2006-12-06 | 2014-09-17 | 컨버전트 인텔렉츄얼 프로퍼티 매니지먼트 인코포레이티드 | 혼합된 유형의 메모리 장치를 동작시키는 시스템 및 방법 |
US20090094702A1 (en) * | 2007-10-04 | 2009-04-09 | Mediatek Inc. | Secure apparatus, integrated circuit, and method thereof |
US8873320B2 (en) * | 2011-08-17 | 2014-10-28 | Taiwan Semiconductor Manufacturing Co., Ltd. | DRAM repair architecture for wide I/O DRAM based 2.5D/3D system chips |
KR101962786B1 (ko) * | 2012-03-23 | 2019-03-27 | 삼성전자주식회사 | 불휘발성 메모리 장치, 메모리 시스템 및 그것의 프로그램 방법 |
US9230112B1 (en) * | 2013-02-23 | 2016-01-05 | Xilinx, Inc. | Secured booting of a field programmable system-on-chip including authentication of a first stage boot loader to mitigate against differential power analysis |
US9165143B1 (en) * | 2013-03-15 | 2015-10-20 | Xilinx, Inc. | Image file generation and loading |
TWI571797B (zh) * | 2013-08-21 | 2017-02-21 | 上海兆芯集成電路有限公司 | 組態資料的處理裝置及方法 |
US9547489B2 (en) * | 2014-03-31 | 2017-01-17 | Qualcomm Incorporated | System and method for modifying a sequence of instructions in a read-only memory of a computing device |
TWI566253B (zh) * | 2015-09-02 | 2017-01-11 | 慧榮科技股份有限公司 | 用來管理一記憶裝置之方法以及記憶裝置與控制器 |
US10184983B2 (en) * | 2017-06-02 | 2019-01-22 | Intel IP Corporation | Interface independent test boot method and apparatus using automatic test equipment |
TWI647610B (zh) * | 2017-11-14 | 2019-01-11 | 慧榮科技股份有限公司 | 認證韌體資料之資料儲存裝置與資料儲存方法 |
-
2019
- 2019-01-02 TW TW108100003A patent/TWI696113B/zh active
- 2019-06-11 CN CN202111214494.XA patent/CN114003523B/zh active Active
- 2019-06-11 CN CN201910503432.7A patent/CN111400209B/zh active Active
- 2019-11-20 US US16/690,057 patent/US10976944B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7586795B2 (en) * | 2006-03-20 | 2009-09-08 | Cypress Semiconductor Corporation | Variable reference voltage circuit for non-volatile memory |
CN101916089A (zh) * | 2010-07-12 | 2010-12-15 | 金龙联合汽车工业(苏州)有限公司 | 可配置客车车身控制系统及其参数配置方法 |
CN102681868A (zh) * | 2011-01-25 | 2012-09-19 | 三星电子株式会社 | 引导信息处理系统的方法和执行该方法的信息处理系统 |
Also Published As
Publication number | Publication date |
---|---|
US20200210085A1 (en) | 2020-07-02 |
TWI696113B (zh) | 2020-06-11 |
US10976944B2 (en) | 2021-04-13 |
CN114003523A (zh) | 2022-02-01 |
CN111400209B (zh) | 2021-11-09 |
TW202026865A (zh) | 2020-07-16 |
CN114003523B (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4129381B2 (ja) | 不揮発性半導体記憶装置 | |
JP4761959B2 (ja) | 半導体集積回路装置 | |
US8954705B2 (en) | Memory space management method and memory controller and memory storage device and memory storage using the same | |
US9280460B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
US9519436B1 (en) | Memory erasing method, memory controller, and memory storage apparatus | |
US9176865B2 (en) | Data writing method, memory controller, and memory storage device | |
CN107590080B (zh) | 映射表更新方法、存储器控制电路单元及存储器存储装置 | |
CN111399752B (zh) | 不同类型存储单元的控制装置及方法 | |
TWI486765B (zh) | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
US10191533B2 (en) | Method of enabling sleep mode, memory control circuit unit and storage apparatus | |
CN109273033B (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
US11347433B2 (en) | Method for performing sudden power off recovery management, associated memory device and controller thereof, and associated electronic device | |
EP3783490A1 (en) | Operating method of memory controller and storage device | |
JP2008251154A (ja) | 不揮発性半導体記憶装置 | |
TWI550625B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
US9710374B2 (en) | Data writing method, memory controller and memory storage device | |
CN111400209B (zh) | 用来进行配置管理的方法以及数据存储装置及其控制器 | |
TWI747270B (zh) | 用來進行組態管理之方法以及資料儲存裝置及其控制器 | |
CN111949321A (zh) | 固件码执行方法、存储器存储装置及存储器控制电路单元 | |
CN107229413B (zh) | 存储器管理方法、存储器控制电路单元与存储器储存装置 | |
US9268554B2 (en) | Controlling method, memory controller, and data transmission system | |
US12026403B1 (en) | Method and apparatus for performing configuration management of memory device in predetermined communications architecture with aid of electronic fuse data preparation, and associated computer-readable medium | |
CN113590150A (zh) | 存储体控制方法、程序升级方法及设备 | |
CN116225993A (zh) | 存储器操作管控方法、存储装置及存储器控制电路单元 | |
CN113448488A (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 |