CN114356806A - 快速开卡方法、设备及计算机可读存储介质 - Google Patents
快速开卡方法、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114356806A CN114356806A CN202111681407.1A CN202111681407A CN114356806A CN 114356806 A CN114356806 A CN 114356806A CN 202111681407 A CN202111681407 A CN 202111681407A CN 114356806 A CN114356806 A CN 114356806A
- Authority
- CN
- China
- Prior art keywords
- memory
- mother
- child
- card
- sub
- 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
- 238000000034 method Methods 0.000 title claims abstract description 128
- 238000003860 storage Methods 0.000 title claims abstract description 49
- 230000015654 memory Effects 0.000 claims abstract description 382
- 238000013507 mapping Methods 0.000 claims abstract description 41
- 230000008569 process Effects 0.000 claims description 67
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012790 confirmation Methods 0.000 claims description 13
- 238000012360 testing method Methods 0.000 claims description 8
- 238000011989 factory acceptance test Methods 0.000 description 17
- 238000012949 factory acceptance testing Methods 0.000 description 17
- 239000003925 fat Substances 0.000 description 17
- 230000006872 improvement Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 239000011324 bead Substances 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000012528 membrane Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供了一种快速开卡方法、设备及计算机可读存储介质,所述方法包括:判断与母卡接口连接的母存储器和与子卡接口连接的子存储器是否为同一类型的存储器;在母存储器和子存储器为同一类型的存储器时,进一步判断所述子存储器是否完成映射总表创建;在所述子存储器完成映射总表创建时,从母存储器读取子存储器固件及母存储器文件系统数据,并将所述子存储器固件及母存储器文件系统数据写入到子存储器,所述子存储器固件和文件系统数据用于供所述子存储器执行,以响应外部输入的数据存取指令。本发明通过将从母存储器获取的子存储器固件和母存储器文件系统数据写入到子存储器,从而可实现不同类型存储器的快速离线开卡操作。
Description
技术领域
本发明涉及存储器领域,更具体地说,涉及一种快速开卡方法、设备及计算机可读存储介质。
背景技术
目前的存储器开卡操作大都需要个人电脑(Personal Computer,PC)配合完成,其具体过程如下:先通过线缆和连接器等将存储器与个人电脑连接;再通过个人电脑上的量产工具把离线扫描(RDT)程序烧录到存储器中,上述RDT程序用于对存储器进行全盘扫描,确定存储器中可使用的块;烧录RDT程序之后,断开存储器与个人电脑的连接,并对存储器重新上电,使得存储器中的RDT程序能够运行;RDT程序完成扫描后(通过闪灯的状态来表示RDT程序已完成扫描),将存储器与个人电脑再次连接;存储器与个人电脑再次连接后,需要通过个人电脑将存储器的固件写入到存储器中。
在上述开卡过程中,很多操作依赖人工和个人电脑上的软件。从而使得操作人员需要跟进个人电脑的开卡进度,以不断推进开卡的流程,存在人力成本的浪费。
为避免人力成本的浪费,出现了一些离线开卡的设备,但是此类设备通常是专用设备,只能对某一特定种类的存储器进行开卡。针对不同类型的存储器,需要多个不同的离线开卡设备。
发明内容
本发明要解决的技术问题在于,针对上述采用个人电脑进行存储器开卡浪费人力成本,以及离线开卡设备无法兼容多种类存储器的问题,提供一种新的快速开卡方法、设备及计算机可读存储介质。
本发明解决上述技术问题的技术方案是,提供一种快速开卡方法,用于一个或多个子存储器的开卡,所述方法包括:
判断与母卡接口连接的母存储器和与子卡接口连接的子存储器是否为同一类型的存储器;
在与母卡接口连接的母存储器和与子卡接口连接的子存储器为同一类型的存储器时,进一步判断所述子存储器是否完成映射总表创建;
在所述子存储器完成映射总表创建时,通过所述母卡接口从母存储器读取子存储器固件及文件系统数据,并将所述子存储器固件及文件系统数据写入到子存储器,所述子存储器固件和文件系统数据用于供所述子存储器执行,以响应外部输入的数据存取指令。
作为本发明的进一步改进,所述通过所述母卡接口从母存储器读取子存储器固件及母存储器文件系统数据,并将所述子存储器固件及母存储器文件系统数据写入到子存储器,包括:
通过所述母卡接口从母存储器依次读取母存储器文件系统数据的多个子集,并将多个所述子集依次写入到所述子存储器,每一所述子集的数据量小于预设数据量。
作为本发明的进一步改进,所述通过所述母卡接口从母存储器依次读取母存储器文件系统数据的多个子集,并将多个所述子集依次写入到所述子存储器,包括:
读取与所述子卡接口连接的子存储器中的第一进程标记,并根据所述第一进程标记依次读取所述母存储器文件系统数据中未写入到子存储器的子集,以及将读取的所述子集依次写入到所述子存储器,同时根据所述母存储器文件系统数据的子集的写入进程更新所述第一进程标记。
作为本发明的进一步改进,所述母存储器文件系统的数据包括存储区块的划分的数据、MBR区中的所有数据、DBR区中的所有数据、FAT区的START标识和END标识、DIR区的START标识和END标识和DATA区的START标识和END标识。
作为本发明的进一步改进,所述母存储器的常规存储区块未存储子存储器固件;
所述通过所述母卡接口从母存储器读取子存储器固件及母存储器文件系统数据,并将所述子存储器固件及母存储器文件系统数据写入到子存储器,包括:
通过所述母卡接口读取所述母存储器的母存储器固件,并将所述母存储器固件作为子存储器固件写入到子存储器。
作为本发明的进一步改进,所述通过所述母卡接口从母存储器读取子存储器固件及母存储器文件系统数据,并将所述子存储器固件及母存储器文件系统数据写入到子存储器,包括:
读取与所述子卡接口连接的子存储器中的第二进程标记,并根据所述第二进程标记将所述子存储器固件的未写入到子存储器的部分写入到所述子存储器,以及根据所述子存储器固件的写入进程更新所述第二进程标记。
作为本发明的进一步改进,所述方法还包括:
在与所述子卡接口连接的子存储器写入子存储器固件及文件系统数据完成后,控制所述与子卡接口连接的子存储器断电重启;
在所述与子卡接口连接的子存储器重启完成后,向所述子存储器写入测试数据,以及从所述子存储器读取数据;
在从所述子存储器读取的数据与写入到所述子存储器的测试数据一致时,确认所述子存储器开卡完成。
作为本发明的进一步改进,所述判断与母卡接口连接的母存储器和与子卡接口连接的子存储器是否为同一类型的存储器,包括:
向所述母卡接口发送第一问询信号,并接收所述母卡接口返回的信号,所述第一问询信号用于供所述母存储器执行,以向所述母卡接口反馈第一确认信号,且所述第一确认信号包括所述母存储器的存储器类型;
向所述子卡接口发送第二问询信号,并接收所述子卡接口返回的信号,所述第二问询信号用于供所述子存储器执行,以向所述子卡接口反馈第二确认信号,且所述第二确认信号包括所述子存储器的存储器类型;
根据母卡接口返回的信号和子卡接口返回的信号,判断所述与母卡接口连接的母存储器和与子卡接口连接的子存储器是否为同一类型的存储器。
作为本发明的进一步改进,所述方法还包括:
在所述与母卡接口连接的母存储器和与子卡接口连接的子存储器为不同类型的存储器时,输出报警信号。
作为本发明的进一步改进,所述方法还包括:
通过所述母卡接口从母存储器读取开卡程序,并将所述开卡程序写入到所述子存储器及控制所述子存储器断电重启,所述开卡程序用于供所述子存储器在断电重启后执行,以扫描本地的存储芯片并建立用于映射所述存储芯片中的存储区块的映射总表,以及在映射总表创建完成后向子卡接口发送扫描完成信号。
作为本发明的进一步改进,所述方法还包括在向子存储器写入开卡程序之前执行的以下步骤:检查子存储器中是否存在映射总表,并在所述子存储器中存在映射总表时删除所述映射总表,或者在所述子存储器中存在映射总表时停止向所述子存储器中写入开卡程序并输出提示信号。
本发明还提供一种快速开卡设备,包括母卡接口、子卡接口、存储单元以及控制芯片;所述存储单元与控制芯片连接或集成于控制芯片,所述存储单元中存储有可在所述控制芯片上执行的计算机程序,且所述控制芯片执行所述计算机程序时实现如上所述的快速开卡方法的步骤。
作为本发明的进一步改进,所述快速开卡设备包括多个子卡接口,且多个所述子卡接口分别与所述控制芯片的同一组引脚连接。
作为本发明的进一步改进,所述快速开卡设备还包括电源接口,且所述电源接口分别与所述控制芯片和子卡接口的供电引脚电性连接,所述母卡接口的供电引脚与所述控制芯片的电源输出引脚电性连接。
本发明还提供一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述快速开卡方法的步骤。
本发明具有以下技术效果:通过从母存储器获取子存储器固件和母存储器文件系统数据,并将获取的子存储器固件和母存储器文件系统数据写入到子存储器,从而可实现不同类型存储器的快速离线开卡操作。
附图说明
图1是本发明实施例提供的快速开卡方法的流程示意图;
图2是本发明实施例提供的快速开卡方法中确认母存储器和子存储器是否为同一类型的存储器的流程示意图;
图3是本发明实施例提供的快速开卡方法中确认子存储器是否开卡成功的流程示意图;
图4是本发明实施例提供的快速开卡方法中将子存储器固件及母存储器文件系统数据写入到子存储器的流程示意图;
图5是本发明实施例提供的快速开卡方法中母存储器的示意图;
图6是本发明另一实施例提供的快速开卡方法中母存储器的示意图;
图7是本发明实施例提供的快速开卡设备的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,是本发明快速开卡方法实施例的流程示意图,该快速开卡方法可应用于图7所示的快速开卡设备,并实现离线开卡,该快速开卡设备包括控制芯片71、母卡接口72、子卡接口73及存储单元,上述控制芯片71内可以集成SRAM(Static Random-AccessMemory,静态随机存取存储器),用于加载程序,母卡接口72、子卡接口73及存储单元均与控制芯片71连接,并与控制芯片71进行数据交互。在实际应用中,存储单元可集成于控制芯片71中。
具体地,本实施例的快速开卡方法可集成到上述控制芯片71,并包括以下步骤:
步骤S11:快速开卡设备上电,快速开卡设备的控制芯片71得电启动。
步骤S12:控制芯片71判断与母卡接口72连接的母存储器和与子卡接口73连接的子存储器是否为同一类型的存储器,包括容量是否相同。若与母卡接口72连接的母存储器和与子卡接口73连接的子存储器为同一类型的存储器(且容量相同),则执行步骤S14,否则执行步骤S13。
上述母存储器和子存储器均为完整的存储器,即其内部均有控制和存储的功能,并包括有主控芯片和存储芯片;同时,母存储器和子存储器均具有与外部接口配合的连接接口,从而可与外部接口连接并响应来自外部接口的指令,并执行相应的操作。上述与母卡接口72连接的母存储器中存储有开卡程序和子存储器固件。具体地,母存储器和子存储器可为串行外围设备接口(serial peripheral interface,SPI)FLASH等非掉电丢失的存储器件,例如固态硬盘、CF、SM、MMC、SD、XD、SM、TF、1394、PCMCIA、USB接口存储器等。
相应地,母卡接口72和子卡接口73为可拔插接口,具体可以为与母存储器和子存储器的外接接口所对应的接口。在实际应用中,快速开卡设备也可通过设置多个不同类型的母卡接口和子卡接口,以实现不同存储器的开卡。此外,也可通过连接不同的转换插头实现不同类型的存储器的开卡。
步骤S13:控制芯片71输出报警信号,例如通过LED灯闪烁和/或蜂鸣器发出特定声音,开卡过程中止。
步骤S14:控制芯片71进一步判断子存储器是否完成映射总表创建,若控制芯片71确认子存储器完成映射总表创建,则执行步骤S16,否则执行步骤S15。例如,与子卡接口73连接的子存储器扫描其存储芯片并建立映射总表完成后,通过子卡接口73向控制芯片71发送扫描完成信号,控制芯片71在接收到扫描完成信号,确认子存储器完成映射总表创建。
上述映射总表存储有子存储器的存储芯片中各个存储区块的状态(例如好或坏、空闲或占用等),具体地,该映射总表可存储到子存储器的控制芯片的EEPROM(Electrically Erasable Programmable ROM)或存储芯片中隐藏的存储区块。
步骤S15:控制芯片71等待子存储器发送的扫描完成信号,具体地,控制芯片71可按照预设周期向子卡接口73发送相应的查询指令,或者以周期性扫描子卡接口73的对应引脚的状态,直到接收到子存储器发送的扫描完成信号。
步骤S16:控制芯片71通过母卡接口72从母存储器读取子存储器固件及母存储器文件系统数据,并将子存储器固件及母存储器文件系统数据写入到子存储器。
上述子存储器固件用于供子存储器执行,并构成子存储器的最基础最底层的软件(即子存储器的文件系统)。通常,子存储器固件中包括有bin文件,子存储器的主控芯片在读入子存储器固件时,若子存储器中不存在文件系统时,子存储器的主控芯片先搜寻到子存储器固件中的bin文件后执行固件,根据固件在子存储器的存储芯片中划分出各个区块,建立起子存储器本身的文件系统。上述文件系统是指子存储器的主控芯片用于明确本地存储芯片中的文件的方法和数据结构,即在本地存储芯片上组织文件的方法,其执行的功能包括:管理和调度文件的存储空间,提供文件的逻辑结构、物理结构和存储方法;实现文件从标识到实际地址的映射,实现文件的控制操作和存取操作,实现文件信息的共享并提供可靠的文件保密和保护措施,提供文件的安全措施等。当子存储器固件挂载到该文件系统后,可启动系统文件的各个进程,并响应外部的读写请求。存储器固件本身属于本领域的习知技术,在此不再赘述。
特别地,子存储器固件可存储到子存储器的存储芯片中的隐藏的存储区块或者子存储器的主控芯片的EEPROM中。
由于子存储器的文件系统的建立过程较为繁琐,并会占据较长时间,从而增加子存储器的开卡时间,该步骤直接从母存储器获取其文件系统数据,并写入到子存储器,从而子存储器无需根据子存储器固件建立本身的文件系统。因子存储器和母存储器为相同类型的存储器,子存储器和母存储器的文件系统也相同,从而子存储器可直接使用母存储器的文件系统数据,并保证子存储器在开卡完成后能正常使用。
上述快速开卡方法,通过从母存储器获取子存储器固件和母存储器文件系统数据,并将获取子存储器固件和母存储器文件系统数据写入到子存储器,可实现不同类型存储器的快速离线开卡操作,例如在为不同类型的存储器进行开卡时,只需更换与母卡接口72连接的母存储器即可。
由于快速开卡设备上的缓存有限,母存储器本身的整个文件系统的数据量较大,因此在上述步骤S16中,将母存储器文件系统数据写入到子存储器时,需将母存储器文件系统数据分段后再写入到子存储器,具体包括:通过母卡接口从母存储器依次读取(即分时读取)母存储器文件系统数据的多个子集,并将多个子集依次写入(即分时写入)到子存储器,上述每一子集的数据量小于预设数据量(具体可根据快速开卡设备的缓存进行设置)。具体地,可按文件将母存储器文件系统数据分成多个子集,也可以按数据量将母存储器文件系统数据分成多个子集。
由于上述存储器开卡方法采用离线方式操作,因此为保证母存储器文件系统数据的完整写入,同时避免母存储器文件系统数据写入意外中断(例如断电)而导致母存储器文件系统数据的重复写入,在从母存储器依次读取母存储器文件系统数据的多个子集,并将多个所述子集依次写入到子存储器,包括由控制芯片71执行的以下步骤:读取与子卡接口73连接的子存储器中的第一进程标记,并根据第一进程标记依次读取母存储器文件系统数据中未写入到子存储器的子集,以及将读取的子集依次写入到子存储器,同时根据母存储器文件系统数据的子集的写入进程更新第一进程标记。上述第一进程标记可由控制芯片71写入到子存储器的存储芯片中的特定存储区块(可预先设定)。
具体地,更新第一进程标记包括:将已经写入到子存储器中的母存储器文件系统数据的子集所对应的第一进程标记写入到子存储器的特定存储区块,即子存储器中存在多个不同第一进程标记。在实际应用中,子存储器固件也可仅包括一个第一进程标记,在对应的子集写入到子存储器后,删除子存储器中原有的第一进程标记,并写入新的第一进程标记(即与刚写入的子集对应的进程标记)。特别地,当控制芯片71未读取到子存储器中的第一进程标记(例如子存储器中并无第一进程标记,此时母存储器文件系统数据还未开始写入)时,控制芯片71直接将母存储器文件系统数据的所有子集写入到子存储器,在写入过程中,控制芯片71创建第一进程标记并随着子集写入而更新第一进程标记。
类似地,为保证子存储器固件的完整写入,同时避免子存储器固件写入意外中断(例如断电)而导致子存储器固件数据的重复写入,在本发明的一个实施例中,上述步骤S16中,在将子存储器固件写入到与子卡接口73连接的子存储器,包括由控制芯片71执行的以下步骤:读取与子卡接口73连接的子存储器中的第二进程标记,并根据第二进程标记将子存储器固件中未写入子存储器的部分写入到子存储器,以及根据子存储器固件的写入进程更新第二进程标记。
上述第二进程标记可由控制芯片71写入到子存储器的存储芯片中的特定存储区块(可预先设定),根据子存储器固件的数据量生成,例如控制芯片71每写入1K数据的子存储器固件时更新一次第二进程标记。或者,控制芯片71也可根据子存储器固件的内容生成第二进程标记。
具体地,控制芯片71可将子存储器固件分成多个数据集,每一数据集对应一个第二进程标记,相应地,上述更新进程标记包括:将已经写入到子存储器中的子存储器固件的数据集所对应的第二进程标记写入到子存储器的特定存储区块,即子存储器中存在多个不同第二进程标记。在实际应用中,控制芯片71也可将子存储器固件分成多个顺序写入到子存储器的数据集,相应地,上述更新第二进程标记包括:将写入的子存储器固件的数据集写入到子存储器后,删除子存储器中原有的第二进程标记,并写入新的第二进程标记(即与刚写入的数据集对应的第二进程标记)。
特别地,当控制芯片71未读取到子存储器中的第二进程标记(例如子存储器中并无第二进程标记,此时子存储器固件还未开始写入)时,控制芯片71直接将子存储器固件的所有数据写入到子存储器,在写入过程中,控制芯片71创建进程标记并随着子存储器固件的写入而更新第二进程标记。
结合图2所示,在本发明的一个实施例中,上述步骤S12,即判断母存储器和子存储器是否为同一类型的存储器,具体可包括由控制芯片71执行的以下步骤:
步骤S121:向母卡接口72发送第一问询信号,并接收母卡接口72返回的信号。
上述第一问询信号用于供母存储器执行,以向母卡接口72反馈第一确认信号,即母存储器的主控芯片在接收到第一问询信号后,通过母卡接口72向控制芯片71发送表明连接状态和母存储器身份的第一确认信号,其中母存储器身份信息包括母存储器的类型(包括母存储器的存储容量)。控制芯片71在接收到上述第一确认信号后即确认母卡接口72连接有母存储器;若控制芯片71未接收到任何反馈信号,则确认母卡接口72未连接母存储器。特别地,当控制芯片71确认母卡接口72未连接母存储器时,控制芯片71可按预设周期循环执行该步骤S121,直到有母存储器连接到母卡接口72。
步骤S122:向子卡接口73发送第二问询信号,并接收子卡接口73返回的信号。
上述第二问询信号用于供子存储器执行,以向子卡接口73反馈第二确认信号,即子存储器的主控芯片在接收到第二问询信号后,通过子卡接口73向控制芯片71发送表明连接状态和子存储器身份的第二确认信号,其中子存储器身份信息包括子存储器的类型(包括子存储器的存储容量)。控制芯片71在接收到上述第二确认信号后即确认子卡接口73连接有子存储器;若控制芯片71未接收到任何反馈信号,则确认子卡接口73未连接子存储器。特别地,当控制芯片71确认子卡接口73未连接子存储器时,控制芯片71可按预设周期循环执行该步骤S122,直到有子存储器连接到子卡接口73。
步骤S123:根据母卡接口72返回的信号(即第一确认信号)和子卡接口73返回的信号(第二确认信号),获取与母卡接口72连接的母存储器的存储器类型以及与子卡接口73连接的子存储器的存储器类型,并判断与母卡接口72连接的母存储器和与子卡接口73连接的子存储器是否为同一类型的存储器,例如是否同为TF卡,或同为SD卡等,存储容量是否相同。
上述步骤S121和S122的顺序可不限,即控制芯片71在上电后可先向母卡接口72发送第一问询信号,也可先向子卡接口73发送第二问询信号。在控制芯片71确认母卡接口72连接有母存储器且子卡接口73连接有子存储器后,即可执行步骤S123。通过上述方式,无需操作人员的手动操作,只需插接母存储器到母卡接口72和插接子存储器到子卡接口73,即可实现子存储器的离线开卡,同时可避免子出现开卡错误。
结合图3所示,在本发明的一个实施例中,上述快速开卡方法的步骤S11-S16之后,还包括由控制芯片71执行的以下步骤:
步骤S17:在与子卡接口73连接的子存储器写入子存储器固件和母存储器文件系统数据完成后,控制与子卡接口73连接的子存储器断电重启。
具体地,可根据子存储器的反馈信号确认子存储器固件及母存储器文件系统数据是否写入完成。并且,控制芯片71可通过控制子卡接口73的供电引脚断电,使与子卡接口73连接的子存储器断电重启。
步骤S18:在与子卡接口73连接的子存储器重启后(此时子存储器自动运行步骤S12写入的子存储器固件及母存储器文件系统数据),向子存储器写入测试数据,以及从子存储器读取数据。
上述测试数据可通过母卡接口72从母存储器读取,或者直接存储在控制芯片71的SRAM、快速开卡设备内与控制芯片71相连的存储装置、或者由控制芯片71随机生成。
步骤S19:在从子存储器读取的数据与写入到子存储器的测试数据一致时,确认子存储器开卡完成。若从子存储器读取的数据与写入到子存储器的测试数据不一致,则控制芯片71返回步骤S11,重新执行开卡操作。数据比对方式属于本领域的习知技术,在此不再赘述。
通过上述步骤S17-S19,可对开卡操作进行验证,从而提高开卡操作的成功率。
在本发明的一个实施例中,本发明的快速开卡方法还包括由控制芯片71执行的以下步骤:通过母卡接口72从母存储器读取开卡程序,并将开卡程序写入到子存储器及控制子存储器断电重启。具体地,该步骤可在图1所示的步骤S12和步骤S14之间执行。
上述开卡程序用于供子存储器执行,即开卡程序被写入到子存储器后(例如子存储器的存储芯片),子存储器的主控芯片可执行该开卡程序。开卡程序本身属于本领域的习知技术,在此不再赘述。
具体地,在开卡程序写入子存储器后,控制芯片71可产生一个重启信号,控制子卡接口给子存储器断电重启,子存储器重启后即执行开卡程序,扫描本地的存储芯片和建立用于映射存储芯片中的存储区块的映射总表,该映射总表存储有存储芯片中各个存储区块的状态(例如好或坏、空闲或占用等),且该映射总表可存储到子存储器的控制芯片的EEPROM(Electrically Erasable Programmable ROM)或存储芯片的隐藏的存储区块。
在本发明的一个实施例中,控制芯片71在向子存储器写入开卡程序之前,还检查与子卡接口73连接的子存储器中是否已经存在映射总表,若已存在映射总表,则删除映射总表后再将开卡程序写入到子存储器,从而子存储器可在重启后扫描本地的存储芯片并根据扫描结果重新建立用于映射存储芯片中的存储区块的映射总表。在实际应用中,若控制芯片71在检查到与子卡接口73连接的子存储器中已经存在映射总表,也可中止开卡操作并输出提示信号(例如声、光等),以避免原子存储器中的数据丢失。
结合图4-5所示,在本发明的一个实施例中,在母存储器中,开卡程序存储于隐藏的存储区块53中,即开卡程序与映射总表、固件(母存储器固件)共同存储在其隐藏的存储区块53中,而非存储在常规的存储区块52,且母存储器的常规存储区块52空白,即母存储器的常规的存储区块并未存储子存储器固件。相应地,图1中的步骤S16,即通过母卡接口从母存储器读取子存储器固件及母存储器文件系统数据,并将子存储器固件及母存储器文件系统数据写入到子存储器,具体可包括由控制芯片71执行的以下步骤:
步骤S161:通过母卡接口72读取母存储器固件,并将母存储器固件作为子存储器固件写入到子存储器,例如写入子存储器的隐藏的存储区块。
具体地,控制芯片71可以通过读取指令将母存储器的隐藏的存储区块中的固件(即母存储器固件)读出,例如,控制芯片71直接向母存储器发送指令(如Uboot中的子命令flinfo、iminfo等),获取其固件的存放信息(存放地址,起始地址,存放长度等),再将该存放信息对应位置中的固件提取出来。
步骤S162:通过母卡接口从母存储器依次读取母存储器的文件系统数据的子集,并将读取的子集依次写入到子存储器。
上述镜像数据具体包括母存储器的存储芯片中存储区块的划分以及每个存储区块对应的数据。存储区块的划分可以分为MBR区、DBR区、FAT区、DIR区和DATA区,其中MBR区(Main Boot Record,主引导记录区)包含了母存储器的一系列参数和一段引导程序,MBR区的引导程序的主要作用是检测映射总表是否正常并且在硬件完成自检以后引导具有激活标志的分区上的操作系统,并将控制权交给启动程序;DBR区(Dos Boot Record,操作系统引导记录区)是操作系统可以访问的第一个区块,它包括一个引导程序和一个BPB(BiosParameter Block,本分区参数块),DBR区的引导程序的主要任务是当MBR区的引导程序将系统控制权交出后,判断本区根目录前端文件是否为固件的引导文件,如果是,则将该文件读入内存,并将控制权交于该文件;BPB记录着本分区的起始扇区、结束扇区、文件存储格式、存储芯片介质描述符、根目录大小、FAT个数,分配单元的大小等重要参数;FAT区(FileAllocation Table,文件分配表)用于表明文件在存储芯片中的链接存储关系,并且记录已经被占用的存储位置和指明后续内容的存储位置,由于FAT对于文件管理的重要性,所以FAT有一个备份,即在原FAT的后面再建一个同样的FAT;初形成的FAT中所有项都标明为“未占用”,但如果存储芯片中有局部损坏,那么格式化程序会检测出损坏的位置,在相应的项中标为损坏位置,以后存文件时就不会再存入这个位置中;DIR区(Directory根目录区)紧跟着第二FAT表后,记录着根目录下每个文件(目录)的起始单元,文件的属性等,定位文件位置时,操作系统根据DIR区中的起始单元,结合FAT区就可以知道文件在存储芯片中的具体位置和大小了;DATA区用于存储数据,占据存储芯片上的大部分数据空间。
由于母存储器与子存储器中的MBR区、DBR区、FAT区、DIR区和DATA区的区块划分是一致的,而在MBR区、DBR区中的参数表、引导程序等是相同的,并且由于子存储器一开始是空白的(新开卡是完全空白的,重开卡则是会格式化后开卡),因此其FAT区、DIR区、DATA区的数据应该处于初始状态。将由于在母存储器中,开卡程序与映射总表、固件等一起存储在隐藏的存储区块中,隐藏的存储区块并不会在上层逻辑51中表现,由此在上层逻辑51的文件系统中不会出现开卡程序的痕迹,开卡程序对该镜像数据无影响,因此可直接根据从母存储器搜集的文件系统数据生成子集,并写入到子存储器,而不会导致子存储器存在非必要数据。
在本发明的一个实施例中,结合图7所示,在母存储器中,开卡程序还可存储于常规的存储区块52中,而映射总表、固件则共同存储在其隐藏的存储区块53中。相应地,图1中的步骤S16中,在写入母存储器的文件系统数据时,先将母存储器文件系统数据的子集过滤后写入到子存储器。
由于开卡程序放置在母存储器的常规存储区块中,故开卡程序会在文件系统数据的FAT区、DIR区和DATA区留下存储痕迹。虽然控制芯片51可以忽视此类存储痕迹,仍将该镜像数据直接输入子存储区,但作为工厂端需要避免子存储器中放入不必要的数据。因此在该步骤中,控制芯片71在收集复制母存储器文件系统数据后,选择性清除常规的存储区块中的开卡程序(以及其他数据,例如子存储器固件等)在FAT区、DIR区和DATA区的痕迹,再将处理后的镜像数据写入子存储器;或者控制芯片71在收集复制母存储器中的母存储器的文件系统数据时,忽略该开卡程序的痕迹。即写入到母存储器文件系统的数据包括存储区块的划分的数据、MBR区中的所有数据、DBR区中的所有数据、FAT区的START标识和END标识、DIR区的START标识和END标识和DATA区的START标识和END标识。
本发明实施例还提供一种快速开卡设备,如图7所示,该快速开卡设备包括控制芯片71、母卡接口72、子卡接口73及存储单元,且母卡接口72、子卡接口73及存储单元均与控制芯片71连接(或者存储单元集成到控制芯片71),并与控制芯片71进行数据交互。上述存储单元中存储有可在控制芯片71上执行的计算机程序,且控制芯片71执行所述计算机程序时实现如上所述的快速开卡方法的步骤。
在本发明的一个实施例中,上述快速开卡设备包括多个子卡接口73,且该多个子卡接口73分别与控制芯片71的同一组引脚连接,从而可实现多个子存储器的同时开卡。
此外,快速开卡设备还可包括电源接口74,且电源接口74分别与控制芯片71和子卡接口73的供电引脚电性连接,母卡接口72的供电引脚则与控制芯片71的电源输出引脚电性连接,即子卡接口73由电源接口74供电,母卡接口72则由控制芯片71供电。在实际应用中,母卡接口72和子卡接口73可均由控制芯片71供电。
为便于开卡控制,在本发明的一个实施例中,存储器开卡设备还可包括控制开关,电源接口74经由控制开关与子卡接口73的供电引脚电性连接,例如每一子卡接口73与电源接口74之间均连接有一个独立的控制开关,或者所有子卡接口73经由同一控制开关与电源接口74连接。特别地,上述控制开关的控制端与控制芯片71连接并由控制芯片71控制通断,例如控制开关可以包括半导体开关管。上述控制开关也可通过手动方式控制通断,例如包括拨杆或按钮等。
为使操作人员实时了解子存储器的开卡进程,在上述存储器开卡设备中,每一所述子卡接口73包括用于指示子卡接口73状态的状态指示灯(具体可包括多个不同颜色的灯珠,或者包括一个可发出不同颜色的灯珠),相应地,存储器开卡设备还包括由控制芯片71控制的驱动电路,且状态指示灯分别与驱动电路连接,并由驱动电路驱动发光。例如,当子卡接口73处于正常开卡过程中,控制芯片71通过驱动电路控制该子卡接口73的状态指示灯发出红光;当子卡接口73出现错误时,控制芯片71通过驱动电路控制该子卡接口73的状态指示灯发出闪烁的红光;当子卡接口73的子存储器开卡完成时,控制芯片71通过驱动电路控制该子卡接口73的状态指示灯发出绿光。
本实施例中的快速开卡设备与上述图1-7对应实施例中的快速开卡方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,该存储介质上存储有计算机程序,计算机程序被处理器执行时,实现如上所述快速开卡方法的步骤。
本实施例中的计算机可读存储介质与上述图1-7对应实施例中的快速开卡方法属于同一构思,其具体实现过程详细见对应的方法实施例,且方法实施例中的技术特征在本设备实施例中均对应适用,这里不再赘述。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成。实施例中的各功能单元、模块可以集成在一个处理器中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的快速开卡方法及设备,可以通过其它的方式实现。例如,以上所描述的快速开卡设备实施例仅仅是示意性的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理器中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或界面切换设备、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (14)
1.一种快速开卡方法,用于一个或多个子存储器的开卡,其特征在于,所述方法包括:
判断与母卡接口连接的母存储器和与子卡接口连接的子存储器是否为同一类型的存储器;
在与母卡接口连接的母存储器和与子卡接口连接的子存储器为同一类型的存储器时,进一步判断所述子存储器是否完成映射总表创建;
在所述子存储器完成映射总表创建时,通过所述母卡接口从母存储器读取子存储器固件及母存储器文件系统数据,并将所述子存储器固件及母存储器文件系统数据写入到子存储器,所述子存储器固件和母存储器文件系统数据用于供所述子存储器执行,以响应外部输入的数据存取指令。
2.根据权利要求1所述的快速开卡方法,其特征在于,所述通过所述母卡接口从母存储器读取子存储器固件及母存储器文件系统数据,并将所述子存储器固件及母存储器文件系统数据写入到子存储器,包括:
通过所述母卡接口从母存储器依次读取母存储器文件系统数据的多个子集,并将多个所述子集依次写入到所述子存储器,每一所述子集的数据量小于预设数据量。
3.根据权利要求2所述的快速开卡方法,其特征在于,所述通过所述母卡接口从母存储器依次读取母存储器文件系统数据的多个子集,并将多个所述子集依次写入到所述子存储器,包括:
读取与所述子卡接口连接的子存储器中的第一进程标记,并根据所述第一进程标记依次读取所述母存储器文件系统数据中未写入到子存储器的子集,以及将读取的所述子集依次写入到所述子存储器,同时根据所述母存储器文件系统数据的子集的写入进程更新所述第一进程标记。
4.根据权利要求3所述的快速开卡方法,其特征在于,所述母存储器文件系统的数据包括存储区块的划分的数据、MBR区中的所有数据、DBR区中的所有数据、FAT区的START标识和END标识、DIR区的START标识和END标识和DATA区的START标识和END标识。
5.根据权利要求1所述的快速开卡方法,其特征在于,所述母存储器的常规存储区块未存储子存储器固件;
所述通过所述母卡接口从母存储器读取子存储器固件及母存储器文件系统数据,并将所述子存储器固件及母存储器文件系统数据写入到子存储器,包括:
通过所述母卡接口读取所述母存储器的母存储器固件,并将所述母存储器固件作为子存储器固件写入到子存储器。
6.根据权利要求1所述的快速开卡方法,其特征在于,所述通过所述母卡接口从母存储器读取子存储器固件及母存储器文件系统数据,并将所述子存储器固件及母存储器文件系统数据写入到子存储器,包括:
读取与所述子卡接口连接的子存储器中的第二进程标记,并根据所述第二进程标记将所述子存储器固件的未写入到子存储器的部分写入到所述子存储器,以及根据所述子存储器固件的写入进程更新所述第二进程标记。
7.根据权利要求1所述的快速开卡方法,其特征在于,所述方法还包括:
在与所述子卡接口连接的子存储器写入子存储器固件及母存储器文件系统数据完成后,控制所述与子卡接口连接的子存储器断电重启;
在所述与子卡接口连接的子存储器重启完成后,向所述子存储器写入测试数据,以及从所述子存储器读取数据;
在从所述子存储器读取的数据与写入到所述子存储器的测试数据一致时,确认所述子存储器开卡完成。
8.根据权利要求1所述的快速开卡方法,其特征在于,所述判断与母卡接口连接的母存储器和与子卡接口连接的子存储器是否为同一类型的存储器,包括:
向所述母卡接口发送第一问询信号,并接收所述母卡接口返回的信号,所述第一问询信号用于供所述母存储器执行,以向所述母卡接口反馈第一确认信号,且所述第一确认信号包括所述母存储器的存储器类型;
向所述子卡接口发送第二问询信号,并接收所述子卡接口返回的信号,所述第二问询信号用于供所述子存储器执行,以向所述子卡接口反馈第二确认信号,且所述第二确认信号包括所述子存储器的存储器类型;
根据母卡接口返回的信号和子卡接口返回的信号,判断所述与母卡接口连接的母存储器和与子卡接口连接的子存储器是否为同一类型的存储器,并在所述与母卡接口连接的母存储器和与子卡接口连接的子存储器为不同类型的存储器时输出报警信号。
9.根据权利要求1所述的快速开卡方法,其特征在于,所述方法还包括:
通过所述母卡接口从母存储器读取开卡程序,并将所述开卡程序写入到所述子存储器执行,以扫描本地的存储芯片并建立用于映射所述存储芯片中的存储区块的映射总表,以及在映射总表创建完成后向子卡接口发送扫描完成信号。
10.根据权利要求1所述的快速开卡方法,其特征在于,所述方法还包括在向子存储器写入开卡程序之前执行的以下步骤:检查子存储器中是否存在映射总表,并在所述子存储器中存在映射总表时删除所述映射总表,或者在所述子存储器中存在映射总表时停止向所述子存储器中写入开卡程序并输出提示信号。
11.一种快速开卡设备,其特征在于,包括母卡接口、子卡接口、存储单元以及控制芯片;所述存储单元与控制芯片连接或集成于控制芯片,所述存储单元中存储有可在所述控制芯片上执行的计算机程序,且所述控制芯片执行所述计算机程序时实现如权利要求1-10中任一项所述的快速开卡方法的步骤。
12.根据权利要求11所述的快速开卡设备,其特征在于,所述快速开卡设备包括多个子卡接口,且多个所述子卡接口分别与所述控制芯片的同一组引脚连接。
13.根据权利要求11所述的快速开卡设备,其特征在于,所述快速开卡设备还包括电源接口,且所述电源接口分别与所述控制芯片和子卡接口的供电引脚电性连接,所述母卡接口的供电引脚与所述控制芯片的电源输出引脚电性连接。
14.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1至10中任一项所述快速开卡方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111681407.1A CN114356806B (zh) | 2021-12-31 | 2021-12-31 | 快速开卡方法、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111681407.1A CN114356806B (zh) | 2021-12-31 | 2021-12-31 | 快速开卡方法、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114356806A true CN114356806A (zh) | 2022-04-15 |
CN114356806B CN114356806B (zh) | 2024-04-16 |
Family
ID=81104400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111681407.1A Active CN114356806B (zh) | 2021-12-31 | 2021-12-31 | 快速开卡方法、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114356806B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040089717A1 (en) * | 2002-11-13 | 2004-05-13 | Sandisk Corporation | Universal non-volatile memory card used with various different standard cards containing a memory controller |
CN103237252A (zh) * | 2013-03-22 | 2013-08-07 | 深圳市九洲电器有限公司 | 一种机顶盒存储芯片烧录方法和装置 |
CN105740031A (zh) * | 2016-03-08 | 2016-07-06 | 深圳市硅格半导体股份有限公司 | 基于开卡套件的开卡方法、开卡套件 |
CN106814968A (zh) * | 2015-11-27 | 2017-06-09 | 群联电子股份有限公司 | 存储器管理方法与系统及其存储器存储装置 |
CN110297791A (zh) * | 2019-06-28 | 2019-10-01 | 深圳忆联信息系统有限公司 | 一种有效提高固态硬盘串口开卡速度的方法及其系统 |
CN112286442A (zh) * | 2019-07-23 | 2021-01-29 | 慧荣科技股份有限公司 | 存储器控制器、数据储存装置及其开卡方法 |
CN113312065A (zh) * | 2021-06-06 | 2021-08-27 | 深圳市昂科技术有限公司 | 数据烧录方法、装置、终端及存储介质 |
-
2021
- 2021-12-31 CN CN202111681407.1A patent/CN114356806B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040089717A1 (en) * | 2002-11-13 | 2004-05-13 | Sandisk Corporation | Universal non-volatile memory card used with various different standard cards containing a memory controller |
CN103237252A (zh) * | 2013-03-22 | 2013-08-07 | 深圳市九洲电器有限公司 | 一种机顶盒存储芯片烧录方法和装置 |
CN106814968A (zh) * | 2015-11-27 | 2017-06-09 | 群联电子股份有限公司 | 存储器管理方法与系统及其存储器存储装置 |
CN105740031A (zh) * | 2016-03-08 | 2016-07-06 | 深圳市硅格半导体股份有限公司 | 基于开卡套件的开卡方法、开卡套件 |
CN110297791A (zh) * | 2019-06-28 | 2019-10-01 | 深圳忆联信息系统有限公司 | 一种有效提高固态硬盘串口开卡速度的方法及其系统 |
CN112286442A (zh) * | 2019-07-23 | 2021-01-29 | 慧荣科技股份有限公司 | 存储器控制器、数据储存装置及其开卡方法 |
CN113312065A (zh) * | 2021-06-06 | 2021-08-27 | 深圳市昂科技术有限公司 | 数据烧录方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114356806B (zh) | 2024-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106569839B (zh) | 电路板及其固件烧录方法 | |
CN109408097A (zh) | 一种固件升级方法、装置、系统及一种电子设备 | |
CN109614118B (zh) | 一种SPI Flash固件烧录方法及装置 | |
CN104317618A (zh) | 一种固件分区处理方法和装置 | |
CN105653330A (zh) | 一种基于SD卡的NorFlash烧写系统和方法 | |
CN106970778B (zh) | 一种基于fpga的嵌入式设备的在线配置方法及系统 | |
CN114356806B (zh) | 快速开卡方法、设备及计算机可读存储介质 | |
JP2009193358A (ja) | 情報処理装置 | |
CN114816491A (zh) | 用于多系统移动终端的系统升级方法、装置及终端 | |
CN117076214A (zh) | 服务器硬盘背板拨码防呆检测方法、系统、终端及介质 | |
CN107908418B (zh) | 光纤通道节点卡的逻辑程序升级方法及光纤通道总线设备 | |
CN116471731A (zh) | 基于usb的舞台灯程序更新系统 | |
CN112052031B (zh) | 一种业务板卡自动匹配和升级cpld的方法及装置 | |
CN101443739B (zh) | 数据存储装置及其初始化方法 | |
CN115437668A (zh) | 一种批量生产ssd的工具的开发设计方法及系统 | |
CN110231951A (zh) | 一种多单片机程序升级系统及其方法 | |
CN112015452B (zh) | 一种闸机系统的固件升级方法、装置及闸机系统 | |
CN114356805A (zh) | 存储器开卡方法、设备及计算机可读存储介质 | |
CN115328505A (zh) | 一种机电管理mcu固件烧录方法和系统 | |
CN212782723U (zh) | PCIe和SATA互容的拷贝装置 | |
CN109245920B (zh) | 交换机自动配置方法、装置、交换机和存储介质 | |
CN108052337A (zh) | 一种eMMC量产工具的固件升级方法及装置 | |
KR101837725B1 (ko) | 마이크로 콘트롤러용 프로그래밍 장치 및 그 프로그래밍 방법 | |
CN110737483B (zh) | 一种基于Windows USB MassStorage类的信令、数据传输方法 | |
CN114625389A (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 |