CN113885899B - 一种固态硬盘固件烧录方法、装置、设备和存储介质 - Google Patents
一种固态硬盘固件烧录方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN113885899B CN113885899B CN202111242868.9A CN202111242868A CN113885899B CN 113885899 B CN113885899 B CN 113885899B CN 202111242868 A CN202111242868 A CN 202111242868A CN 113885899 B CN113885899 B CN 113885899B
- Authority
- CN
- China
- Prior art keywords
- firmware
- solid state
- module
- state disk
- burning
- 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
- 239000007787 solid Substances 0.000 title claims abstract description 109
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000004590 computer program Methods 0.000 claims description 9
- 239000003550 marker Substances 0.000 claims description 5
- 238000004519 manufacturing process Methods 0.000 abstract description 17
- 238000012360 testing method Methods 0.000 abstract description 9
- 238000012423 maintenance Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 10
- 239000002699 waste material Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- 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
Abstract
本发明公开一种应用于工厂化流程的固态硬盘固件烧录方法,装置、设备和存储介质,属于硬件设备固件烧录领域。所述固态硬盘烧录方法包括:将BIST固件和用户固件烧录进固态硬盘盘片;判断FLAG1标记点是否置位;若是,则判断FLAG2标记点是否置位;若是,则完成所述固态硬盘的固件烧录,进入正常运行模式。通过本发明公开的方法,能够将原本应在两个阶段烧录的BIST固件和用户固件合并在一个阶段进行烧录,提高生产效率,节约产能,减少生产线上测试、维修人员的工作量。
Description
技术领域
本发明涉及硬件设备固件烧录领域,特别涉及一种固态硬盘固件烧录方法、装置、设备和存储介质。
背景技术
在当前固态硬盘(Solid State Disk或Solid State Drive,简称SSD)的工厂生产流程中,固件烧录的流程主要包括FT1(FactoryTest 1,工厂化流程中的第一阶段测试),BIST(Built-in Self-Test,工厂化流程中的老化测试)和FT2(FactoryTest 2,工厂化流程中的第二阶段测试)三个主要流程:首先,进行FT1流程,包括:烧录或启动BIST固件、烧录盘片的基本信息(如序列号、批次号)等;承接FT1,进行BIST流程中,对盘片进行老化,让盘片进行内部的读、写、擦除等测试,验证存储颗粒的可用性。最后,FT2阶段主要作用是运行用户固件,进行盘片在业务活动下的顺序读写、随机读写、获取盘片基础信息(如温度、电压、坏块)等。
对SSD进行固件烧录,主要存在两种烧录方式:离线烧录和在线烧录。离线烧录是指在盘片在表面贴装前,通过烧录治具把固件烧录到EEPROM或NAND中,组装起来的硬盘可以直接运行相应程序;在线烧录是指盘片组装完成后,通过服务器、串口等方式烧录,将固件烧录进盘片。根据硬盘接口不同,可以选择不同的在线烧录方式,例如:通过服务器的PCIE链路进行烧录,或通过盘片自身预留的调试接口烧录等。在通过服务器的PCIE链路进行烧录时,为了提高生产效率,通常采用多盘片同时烧录的策略,而这种烧录方式可能会引发硬件层面服务器死机的故障,导致烧录失败。即,出现一块问题盘片引起正在烧录的全部盘片烧录失败的情况。
当前在SSD的工厂化流程中,如果使用在线烧录,需要烧录两次,即:先在FT1阶段烧录BIST固件,再在FT2阶段烧录用户固件,两个步骤均有可能烧录失败。在工厂化流程中,对于烧录失败的处理方式通常是:进行全盘片擦除,再从FT1流程重新执行。因此,烧录失败的出现将影响生产效率,尤其是对于只在FT2阶段出现的烧录失败情况,全盘片擦除会浪费已成功的FT1和BIST阶段的产能,同时增加了产线测试维修人员的工作量,进一步地,降低了生产效率,影响交付进度。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种固态硬盘固件烧录方法、装置、设备和存储介质,以克服现有技术在工厂化生产固态硬盘的流程中,因固件烧录失败导致产能浪费,人员工作量增大的问题。
为了解决上述的一个或多个技术问题,本发明采用的技术方案如下:
第一方面,提供一种固态硬盘烧录方法,包括:
将BIST固件和用户固件烧录进固态硬盘盘片;
判断FLAG1标记点是否置位;
若是,则判断FLAG2标记点是否置位;
若是,则完成对上述固态硬盘的固件烧录,进入正常运行模式。
进一步地,上述FLAG1标记点和上述FLAG2标记点分别位于上述固态硬盘的内部存储器中对应的固定地址;
上述FLAG1标记点,用于指示BIST固件是否首次上电执行完成;
上述FLAG2标记点,用于指示用户固件是否首次上电执行完成;
上述固定地址存在“0”或“1”两种状态;
上述置位是将上述固定地址的初始状态翻转的动作。
进一步地,上述判断FLAG1标记点是否置位,还包括:
从上述固态硬盘的内部存储器中FLAG1标记点对应的固定地址读取记录;
若上述FLAG1标记点对应的固定地址未置位,则执行BIST固件程序;
上述BIST固件程序执行完成后,对上述FLAG1标记点对应的固定地址进行置位。
进一步地,上述判断FLAG2标记点是否置位,还包括:
从上述固态硬盘的内部存储器中FLAG2标记点对应的固定地址读取记录;
若上述FLAG2标记点对应的固定地址未置位,则执行用户固件程序;
上述用户固件程序执行完成后,对上述FLAG2标记点对应的固定地址进行置位。
进一步地,执行用户固件程序前,还包括:
复制上述固态硬盘的内部存储器中的BIST固件数据;
将上述BIST固件数据拷贝至上述固态硬盘的存储单元;
擦除上述内部存储器中的所有数据;
写入执行用户固件程序的相关数据。
第二方面,提供一种固态硬盘烧录装置,包括:烧录模块、第一判断模块、第二判断模块、运行模块;
上述烧录模块,用于将BIST固件和用户固件烧录进固态硬盘盘片;
上述第一判断模块,用于判断FLAG1标记点是否置位;
上述第二判断模块,用于判断FLAG2标记点是否置位;
上述运行模块,用于完成上述固态硬盘的固件烧录后,正常运行上述固态硬盘。
进一步地,上述固态硬盘烧录装置,还包括:第一读取模块、第一执行模块、第一标记模块、第二读取模块、第二执行模块、第二标记模块;
上述第一读取模块,用于从上述固态硬盘的内部存储器中FLAG1标记点对应的固定地址读取记录;
上述第一执行模块,用于在上述FLAG1标记点对应的固定地址未置位时,执行BIST固件程序;
上述第一标记模块,用于在上述BIST固件程序执行完成后,对上述FLAG1标记点对应的固定地址进行置位;
上述第二读取模块,用于从上述固态硬盘的内部存储器中FLAG2标记点对应的固定地址读取记录;
上述第二执行模块,用于在上述FLAG2标记点对应的固定地址未置位时,执行用户固件程序;
上述第二标记模块,用于在上述用户固件程序执行完成后,对上述FLAG2标记点对应的固定地址进行置位。
进一步地,上述第二执行模块还包括:复制子模块,搬移子模块,擦除子模块,写入子模块;
上述复制子模块,用于复制上述固态硬盘的内部存储器中的BIST数据;
上述搬移子模块,用于将上述BIST固件数据拷贝至上述固态硬盘的存储单元;
上述擦除子模块,用于擦除上述内部存储器中的所有数据;
上述写入子模块,用于写入执行上述用户固件程序的相关数据。
第三方面,提供一种电子设备,其特征在于,包括:
一个或多个处理器;以及
与上述一个或多个处理器关联的存储器,上述存储器用于存储程序指令,上述程序指令在被上述一个或多个处理器读取执行时,执行以下固态硬盘烧录方法:
将BIST固件和用户固件烧录进固态硬盘盘片;
判断FLAG1标记点是否置位;
若是,则判断FLAG2标记点是否置位;
若是,则完成上述固态硬盘的固件烧录,进入正常运行模式。
进一步地,上述判断FLAG1标记点是否置位,还包括:
从上述固态硬盘的内部存储器中FLAG1标记点对应的固定地址读取记录;
若上述FLAG1标记点对应的固定地址未置位,则执行BIST固件程序;
上述BIST固件程序执行完成后,对上述FLAG1标记点对应的固定地址进行置位。
进一步地,上述判断FLAG2标记点是否置位,还包括:
从上述固态硬盘的内部存储器中FLAG2标记点对应的固定地址读取记录;
若上述FLAG2标记点对应的固定地址未置位,则执行用户固件程序;
上述用户固件程序执行完成后,对上述FLAG2标记点对应的固定地址进行置位。
进一步地,执行用户固件程序前,还包括:
复制上述固态硬盘的内部存储器中的BIST固件数据;
将上述BIST固件数据拷贝至上述固态硬盘的存储单元;
擦除上述内部存储器中的所有数据;
写入执行用户固件程序的相关数据。
第四方面,提供一种计算机可读的存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下固态硬盘烧录方法:
将BIST固件和用户固件烧录进固态硬盘盘片;
判断FLAG1标记点是否置位;
若是,则判断FLAG2标记点是否置位;
若是,则完成上述固态硬盘的固件烧录,进入正常运行模式。
进一步地,上述判断FLAG1标记点是否置位,还包括:
从上述固态硬盘的内部存储器中FLAG1标记点对应的固定地址读取记录;
若上述FLAG1标记点对应的固定地址未置位,则执行BIST固件程序;
上述BIST固件程序执行完成后,对上述FLAG1标记点对应的固定地址进行置位。
进一步地,上述判断FLAG2标记点是否置位,还包括:
从上述固态硬盘的内部存储器中FLAG2标记点对应的固定地址读取记录;
若上述FLAG2标记点对应的固定地址未置位,则执行用户固件程序;
上述用户固件程序执行完成后,对上述FLAG2标记点对应的固定地址进行置位。
进一步地,执行用户固件程序前,还包括:
复制上述固态硬盘的内部存储器中的BIST固件数据;
将上述BIST固件数据拷贝至上述固态硬盘的存储单元;
擦除上述内部存储器中的所有数据;
写入执行用户固件程序的相关数据。
本发明实施例提供的技术方案带来的有益效果是:
1.将原本应在两个阶段烧录的BIST固件和用户固件合并在一个阶段进行烧录,提高生产效率,节约产能,减少生产线上测试、维修人员的工作量;
2.避免了原工厂化流程中因FT2阶段烧录失败造成的FT1和BIST阶段的产能浪费;
3.通过置位FLAG1和FLAG2标识点,准确判断在同一阶段烧录的BIST固件和用户固件是否经过首次上电配置完毕;
4.通过搬移固态硬盘内部存储器内的数据,再进行擦除,使得BIST配置执行后产生的数据得以保留,以便后期读取或调用。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种固态硬盘固件烧录方法的流程示意图;
图2是本发明实施例提供的一种固态硬盘固件烧录装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。说明书附图中的编号,仅表示对各个功能部件或模块的区分,不表示部件或模块之间的逻辑关系。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
下面,将参照附图详细描述根据本公开的各个实施例。需要注意的是,在附图中,将相同的附图标记赋予基本上具有相同或类似结构和功能的组成部分,并且将省略关于它们的重复描述。
现有技术中,SSD的BIST和用户固件烧录通常分置在两个不同的流程进行。为了提高工厂化流程烧录SSD固件的效率,目前,通常使用服务器通过PCIE链路同时对多盘片进行烧录的方式进行。在这种流程下,容易引发硬件层面服务器死机的发生,导致烧录失败。无论是在BIST还是用户固件的烧录环节出现失败现象。应对烧录的方法都是:全盘片擦除,重新烧录,执行固件程序。因此,烧录失败对于生产厂商来说不仅浪费了前序步骤的产能,更严重影响了生产效率,影响交付进度。本发明实施例公开一种应用于工厂化流程的SSD固件烧录方法,具体的技术方案如下:
在一个实施例中,如图1所示,一种SSD固件烧录方法,包括:
S10:将BIST固件和用户固件烧录进固态硬盘盘片;
S20:判断FLAG1标记点是否置位;
S30:若是,则判断FLAG2标记点是否置位;
S40:若是,则完成所述固态硬盘的固件烧录,进入正常运行模式。
步骤S10:将BIST固件和用户固件烧录进固态硬盘盘片。
固件是指设备内部保存的设备“驱动程序”。通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作。烧录固件是将程序写入硬件设备的内部存储单元中,以供硬件在启动时直接从内部存储其中找到这些文件。硬件设备的内部存储单元通常是指:EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器),EEPROM(Electrically Erasable Programmable read only memory,带电可擦可编程只读存储器),NAND(NAND闪存),NOR(NOR闪存)中的一种或几种。在固态硬盘中,通常由NAND和/或EEPROM保存相关固件。
在一个实施例中,BIST固件和用户固件将在固态硬盘生产流程的FT1(FactoryTest 1)环节被打包烧录进固态硬盘。
步骤S20:判断FLAG1标记点是否置位。
FLAG1标记点,是经过预先设置的位于固态硬盘的内部存储器中的固定地址,该固定地址为特别选取的地址,只用于标识BIST固件是否经过首次上电,并执行完成相关固件程序配置。该固定地址包含:“0”或“1”两种状态。
置位:即将上述固定地址的初始值进行翻转。例如:将初始值为“0”的地址翻转为“1”,或将初始值为“1”的地址翻转为“0”,用以进行标记。
判断FLAG1标记点是否置位,即判断FLAG1标记点对应固定地址的数据对于初始值是否发生翻转。若BIST固件经首次上电,完成固件程序配置,则FLAG1标记点被置位;反之,若BIST固件未完成首次配置,则FLAG1标记点不会被置位。
在一个实施例中,步骤S20还包括:
步骤S21:从所述固态硬盘的内部存储器中FLAG1标记点对应的所述固定地址读取记录;
在另一个实施例中,出现FLAG1未置位的情况,表示BIST固件未完成首次上电配置。此时重新执行BIST固件程序,完成BIST固件首次上电配置即可。
步骤S22:若所述FLAG1标记点对应的所述固定地址未置位,则执行BIST固件程序;
BIST固件和用户固件在前序步骤S10中已经烧录进固态硬盘盘片,步骤S10的完成,意味着固态硬盘内部存储器中已经存储有BIST固件和用户固件的程序,只待进行首次上电配置。因此,当FLAG1标记点未置位意味着BIST固件程序已经存储于固态硬盘的内部存储器,但未完成首次上电配置;而不是未存储完成。进一步地,若FLAG1标记点未置位,只需重新执行BIST固件程序,进行配置即可,无需重进将BIST固件烧录进固态硬盘的内部存储器。
步骤S23:所述BIST固件程序执行完成后,对所述FLAG1标记点对应的所述固定地址进行置位。
步骤S30:判断FLAG2标记点是否置位。
类似步骤S20所述,FLAG2标记点,是经过预先设置的位于固态硬盘的内部存储器中的固定地址,该固定地址为特别选取的地址,只用于标识用户固件是否经过首次上电,并执行完成相关固件程序配置。该固定地址包含:“0”或“1”两种状态。
置位:即将上述固定地址的初始值进行翻转。例如:将初始值为“0”的地址翻转为“1”,或将初始值为“1”的地址翻转为“0”,用以进行标记。
判断FLAG2标记点是否置位,即判断FLAG2标记点对应固定地址的数据对于初始值是否发生翻转。若用户固件经首次上电,完成固件程序配置,则FLAG2标记点被置位;反之,若用户固件未完成首次配置,则FLAG2标记点不会被置位。
在一个实施例中,步骤S30还包括:
步骤S31:从所述固态硬盘的内部存储器中FLAG2标记点对应的所述固定地址读取记录;
步骤S32:若所述FLAG2标记点对应的所述固定地址未置位,则执行用户固件程序;
用户固件在前序步骤S10中已经烧录进固态硬盘盘片,步骤S10的完成,意味着固态硬盘内部存储器中已经存储有用户固件的程序,只待进行首次上电配置。因此,当FLAG2标记点未置位意味着用户固件已经存储于固态硬盘的内部存储器,但未完成首次上电配置;而不是未存储完成。进一步地,若FLAG2标记点未置位,只需重新执行用户固件程序,进行配置即可,无需重进将用户固件烧录进固态硬盘的内部存储器。
步骤S33:所述用户固件程序执行完成后,对所述FLAG2标记点对应的所述固定地址进行置位。
在另一个实施例中,出现FLAG1置位,FLAG2位置位的情况,表示BIST固件已经完成了首次上电配置,但用户固件未完成首次上电配置。此时,重新执行用户固件程序,完成用户固件首次上电配置即可。
在执行用户固件程序的过程中,进一步细化的步骤为:
步骤S321:复制所述固态硬盘的内部存储器中的BIST固件数据;
步骤S322:将所述BIST固件数据拷贝至所述固态硬盘的存储单元;
步骤S323:擦除所述内部存储器中的所有数据;
步骤S324:写入执行所述用户固件程序的相关数据。
进行上述步骤是由固态硬盘内部存储器的特殊性质决定的:在写入新的数据前必须将现有数据擦除。在前序步骤,BIST固件执行的过程中,在固态硬盘内部存储器中,将产生一部分有用的数据。为了保留这部分数据,同时在写入新数据时,不引起固态硬盘内部存储器的硬件故障。故现将已有数据搬移至固态硬盘的存储单元,再进行写入的动作。
若FLAG2标记点对应的地址也置位,则进行S40步骤:完成所述固态硬盘的固件烧录,进入正常运行模式。
为了执行本发明实施例公开一种应用于工厂化流程的固态硬盘固件烧录方法,本发明还公开一种固态硬盘固件烧录装置,如图2所示,具体的技术方案如下:
包括:烧录模块11、第一判断模块12、第二判断模块13、运行模块14;
烧录模块11,用于将BIST固件和用户固件烧录进固态硬盘盘片;
第一判断模块12,用于判断FLAG1标记点是否置位;
第二判断模块13,用于判断FLAG2标记点是否置位;
运行模块14,用于完成上述固态硬盘的固件烧录后,正常运行上述固态硬盘。
在一个实施例中,上述固态硬盘烧录装置还包括:第一读取模块、第一执行模块、第一标记模块、第二读取模块、第二执行模块、第二标记模块;
第一读取模块,用于从上述固态硬盘的内部存储器中FLAG1标记点对应的固定地址读取记录;
第一执行模块,用于在上述FLAG1标记点对应的固定地址未置位时,执行BIST固件程序;
第一标记模块,用于在上述BIST固件程序执行完成后,对上述FLAG1标记点对应的固定地址进行置位;
第二读取模块,用于从上述固态硬盘的内部存储器中FLAG2标记点对应的固定地址读取记录;
第二执行模块,用于在上述FLAG2标记点对应的固定地址未置位时,执行用户固件程序;
第二标记模块,用于在上述用户固件程序执行完成后,对上述FLAG2标记点对应的固定地址进行置位。
在一个实施例中,
上述第二执行模块还包括:复制子模块,搬移子模块,擦除子模块,写入子模块;
复制子模块,用于复制上述固态硬盘的内部存储器中的BIST数据;
搬移子模块,用于将上述BIST固件数据拷贝至上述固态硬盘的存储单元;
擦除子模块,用于擦除上述内部存储器中的所有数据;
写入子模块,用于写入执行上述用户固件程序的相关数据。
本发明还公开一种固态硬盘烧录设备,包括上述固态硬盘固件烧录装置,在运行时,执行上述步骤S10~步骤S40。包括每一个子步骤。具体内容,前文已叙述,在此不再赘述。
本发明还公开一种计算机可读的存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述步骤S10~步骤S40,包括每个子步骤。具体内容,前文已叙述,在此不再赘述。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
实施例一
在本实施例中,烧录模块11将BIST固件和用户固件烧录进固态硬盘盘片;第一判断模块12判断FLAG1标记点已置位;第二判断模块13接着判断FLAG2标记点已置位;此时,说明BIST固件和用户固件均已烧录进固态硬盘的内部存储器,并且已经经过首次上电配置,可以进行正常运行。运行模块14正常运行上述固态硬盘。
实施例二
在本实施例中,烧录模块11将BIST固件和用户固件烧录进固态硬盘盘片;第一判断模块12判断FLAG1标记点已置位;第二判断模块13接着判断FLAG2标记点未置位;此时,说明BIST固件和用户固件均已烧录进固态硬盘的内部存储器;并且BIST固件已经经过首次上电配置,但用户固件未完成首次上电配置,该移动硬盘还不可以进行正常运行。第二执行模块32执行用户固件程序,进行首次上电配置。随后,第二标记模块33将FLAG2标记点对应的固定地址进行置位。运行模块14即可正常运行上述固态硬盘。
实施例三
在本实施例中,烧录模块11将BIST固件和用户固件烧录进固态硬盘盘片;第一判断模块12判断FLAG1标记点未置位;此时,说明BIST固件和用户固件均已烧录进固态硬盘的内部存储器;并且BIST固件未完成首次上电配置。由于用户固件的执行顺序在BIST固件首次上电配置完成之后,由此可知,用户固件也未完成首次上电配置。第一执行模块22执行BIST固件程序,进行首次上电配置。随后,第一标记模块23将FLAG1标记点对应的固定地址进行置位。完成BIST固件的首次上电配置。此时第二判断模块判断出FLAG2标记点未置位,第二执行模块32执行用户固件程序,进行首次上电配置。随后,第二标记模块33将FLAG2标记点对应的固定地址进行置位。运行模块14即可正常运行上述固态硬盘。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括装载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储器被安装,或者从ROM被安装。在该计算机程序被外部处理器执行时,执行本申请的实施例的方法中限定的上述功能。
需要说明的是,本申请的实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(Radio Frequency,射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述服务器中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:响应于检测到终端的外设模式未激活时,获取终端上应用的帧率;在帧率满足息屏条件时,判断用户是否正在获取终端的屏幕信息;响应于判断结果为用户未获取终端的屏幕信息,控制屏幕进入立即暗淡模式。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的实施例的操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java,Smalltalk,C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种固态硬盘烧录方法,其特征在于,所述固态硬盘烧录方法包括:
将BIST固件和用户固件烧录进固态硬盘盘片;
判断FLAG1标记点是否置位;
若是,则判断FLAG2标记点是否置位;
若是,则完成所述固态硬盘的固件烧录,进入正常运行模式;
其中,所述FLAG1标记点和所述FLAG2标记点分别位于所述固态硬盘的内部存储器中对应的固定地址;
所述FLAG1标记点,用于指示所述BIST固件是否首次上电执行完成;
所述FLAG2标记点,用于指示所述用户固件是否首次上电执行完成;
所述固定地址存在“0”或“1”两种状态;
所述置位是将所述固定地址的初始状态翻转的动作。
2. 根据权利要求1所述的一种固态硬盘烧录方法,其特征在于,所述判断FLAG1标记点是否置位,还包括:
若所述FLAG1标记点对应的所述固定地址未置位,则
执行BIST固件程序;
所述BIST固件程序执行完成后,对所述FLAG1标记点对应的所述固定地址进行置位。
3. 根据权利要求1所述的一种固态硬盘烧录方法,其特征在于,所述判断FLAG2标记点是否置位,还包括:
若所述FLAG2标记点对应的所述固定地址未置位,则
执行用户固件程序;
所述用户固件程序执行完成后,对所述FLAG2标记点对应的所述固定地址进行置位。
4.根据权利要求3所述的一种固态硬盘烧录方法,其特征在于,所述执行用户固件程序前,还包括:
复制所述固态硬盘的内部存储器中的BIST固件数据;
将所述BIST固件数据拷贝至所述固态硬盘的存储单元;
擦除所述内部存储器中的所有数据;
写入执行所述用户固件程序的相关数据。
5.一种固态硬盘烧录装置,其特征在于,所述固态硬盘烧录装置包括:烧录模块、第一判断模块、第二判断模块、运行模块;
所述烧录模块,用于将BIST固件和用户固件烧录进固态硬盘盘片;
所述第一判断模块,用于判断FLAG1标记点是否置位;
所述第二判断模块,用于判断FLAG2标记点是否置位;
所述运行模块,用于完成所述固态硬盘的固件烧录,进入正常运行模式;
其中,所述FLAG1标记点和所述FLAG2标记点分别位于所述固态硬盘的内部存储器中对应的固定地址;
所述FLAG1标记点,用于指示所述BIST固件是否首次上电执行完成;
所述FLAG2标记点,用于指示所述用户固件是否首次上电执行完成;
所述固定地址存在“0”或“1”两种状态;
所述置位是将所述固定地址的初始状态翻转的动作。
6.根据权利要求5所述的一种固态硬盘烧录装置,其特征在于,还包括:第一读取模块、第一执行模块、第一标记模块、第二读取模块、第二执行模块、第二标记模块;
所述第一读取模块,用于从所述固态硬盘的内部存储器中FLAG1标记点对应的固定地址读取记录;
所述第一执行模块,用于在所述FLAG1标记点对应的固定地址未置位时,执行BIST固件程序;
所述第一标记模块,用于在所述BIST固件程序执行完成后,对所述FLAG1标记点对应的固定地址进行置位;
所述第二读取模块,用于从所述固态硬盘的内部存储器中FLAG2标记点对应的固定地址读取记录;
所述第二执行模块,用于在所述FLAG2标记点对应的固定地址未置位时,执行用户固件程序;
所述第二标记模块,用于在所述用户固件程序执行完成后,对所述FLAG2标记点对应的固定地址进行置位。
7.根据权利要求6所述的一种固态硬盘烧录装置,其特征在于,所述第二执行模块还包括:复制子模块,搬移子模块,擦除子模块,写入子模块;
所述复制子模块,用于复制所述固态硬盘的内部存储器中的BIST数据;
所述搬移子模块,用于将所述BIST固件数据拷贝至所述固态硬盘的存储单元;
所述擦除子模块,用于擦除所述内部存储器中的所有数据;
所述写入子模块,用于写入执行所述用户固件程序的相关数据。
8. 一种电子设备,其特征在于,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指
令在被所述一个或多个处理器读取执行时,执行如权利要求1~4任一项所述的一种固态硬盘烧录方法。
9.一种计算机可读的存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1~4任一项所述的一种固态硬盘烧录方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111242868.9A CN113885899B (zh) | 2021-10-25 | 2021-10-25 | 一种固态硬盘固件烧录方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111242868.9A CN113885899B (zh) | 2021-10-25 | 2021-10-25 | 一种固态硬盘固件烧录方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113885899A CN113885899A (zh) | 2022-01-04 |
CN113885899B true CN113885899B (zh) | 2024-01-12 |
Family
ID=79014057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111242868.9A Active CN113885899B (zh) | 2021-10-25 | 2021-10-25 | 一种固态硬盘固件烧录方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113885899B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114035833A (zh) * | 2022-01-10 | 2022-02-11 | 深圳市安信达存储技术有限公司 | ssd的固件在线烧录方法、装置、计算机设备及存储介质 |
CN114691178B (zh) * | 2022-05-31 | 2022-09-06 | 深圳市杰美康机电有限公司 | 一种基于EtherCAT通讯驱动器的固件升级方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109656583A (zh) * | 2018-12-28 | 2019-04-19 | 北京深思数盾科技股份有限公司 | 芯片烧录方法、上位机及芯片烧录系统 |
CN110534151A (zh) * | 2018-05-24 | 2019-12-03 | 深圳忆联信息系统有限公司 | 实现写入前擦除的方法、装置、计算机设备及存储介质 |
CN111552486A (zh) * | 2020-04-27 | 2020-08-18 | 苏州浪潮智能科技有限公司 | Ssd固件烧录方法及相关组件 |
CN111708548A (zh) * | 2020-06-18 | 2020-09-25 | 北京小米移动软件有限公司 | 软件安装方法、装置、设备及存储介质 |
-
2021
- 2021-10-25 CN CN202111242868.9A patent/CN113885899B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110534151A (zh) * | 2018-05-24 | 2019-12-03 | 深圳忆联信息系统有限公司 | 实现写入前擦除的方法、装置、计算机设备及存储介质 |
CN109656583A (zh) * | 2018-12-28 | 2019-04-19 | 北京深思数盾科技股份有限公司 | 芯片烧录方法、上位机及芯片烧录系统 |
CN111552486A (zh) * | 2020-04-27 | 2020-08-18 | 苏州浪潮智能科技有限公司 | Ssd固件烧录方法及相关组件 |
CN111708548A (zh) * | 2020-06-18 | 2020-09-25 | 北京小米移动软件有限公司 | 软件安装方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113885899A (zh) | 2022-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113885899B (zh) | 一种固态硬盘固件烧录方法、装置、设备和存储介质 | |
CN102157176B (zh) | 数据存储装置测试仪 | |
CN102148046B (zh) | 数据存储装置测试仪 | |
TWI401691B (zh) | 具快閃記憶體測試功能的控制器及其儲存系統與測試方法 | |
CN105718570A (zh) | 用于数据库的数据迁移方法和装置 | |
CN104965725B (zh) | 一种基于sd卡的嵌入式设备全自动固件烧写方法 | |
CN109408097A (zh) | 一种固件升级方法、装置、系统及一种电子设备 | |
CN111722807B (zh) | 固态硬盘垃圾回收方法、装置、计算机设备及存储介质 | |
CN111737051B (zh) | 一种SSD固态硬盘的trim数据校验测试方法、装置及系统 | |
JPH03209601A (ja) | ディスク装置 | |
CN105868047A (zh) | 数据分区的修复方法、装置及终端 | |
CN111124303A (zh) | 一种数据的存储方法、装置及系统 | |
CN110990184A (zh) | 一种用于希捷硬盘的故障修复方法和系统 | |
CN112270945A (zh) | 记录是否有擦除时掉电的方法、装置、存储介质和终端 | |
CN115422091B (zh) | 一种固件调试方法及装置、电子设备、存储介质 | |
CN116521463A (zh) | 服务器硬盘连接拓扑自动识别方法、装置、设备和介质 | |
CN110674038A (zh) | 一种对软件测试中错误信息的分类方法及装置 | |
JP2009245292A (ja) | 試験対象装置、試験システム、テスト方法及びプログラム | |
US6229743B1 (en) | Method of a reassign block processing time determination test for storage device | |
US11016839B2 (en) | System and method for processing storage device abnormally powered down | |
TWI417888B (zh) | An embedded chip system, a method for burning a wafer, and a computer program product | |
CN111145789A (zh) | 一种用于希捷硬盘的磁头匹配方法和系统 | |
JPH1050005A (ja) | 光ディスク欠陥管理方法および装置 | |
CN112052031A (zh) | 一种业务板卡自动匹配和升级cpld的方法及装置 | |
JP2007328447A (ja) | ソフトウェア試験項目選択装置、ソフトウェア試験項目選択プログラム、ソフトウェア試験項目選択プログラムが格納された記憶媒体およびソフトウェア試験項目選択方法 |
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 |