终端设备的数据访问方法及装置、电子设备及存储介质与流程



1.本公开技术方案涉及电子设备技术领域,尤其涉及终端设备的数据访问方法及装置、电子设备及存储介质。


背景技术:



2.在nand存储器芯片中,擦除的基本存储单位称作块(block),不能正常读写数据的块被称为坏块(bad block)。由于nand存储器工艺问题,允许nand存储器芯片在出厂时即带有有限个数的坏块。并且,通常情况下,这些坏块是随机分布的,这些坏块的存在会造成数据的读写出错。


技术实现要素:



3.为解决上述问题,本公开实施例提供一种终端设备的数据访问方法及装置、电子设备及存储介质。
4.根据本公开的第一方面,提出一种终端设备的数据访问方法,所述方法包括:
5.响应于接收到针对目标数据的数据访问请求,获取所述终端设备中存储的外设存储器的固有坏块信息,其中,所述固有坏块信息包括固有坏块地址信息;
6.基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址;
7.访问所述目标物理块地址对应的物理块中存储的所述目标数据。
8.根据本公开的第二方面,提出一种终端设备的数据访问装置,所述装置包括:
9.固有坏块信息获取模块,用于响应于接收到针对目标数据的数据访问请求,获取所述终端设备中存储的外设存储器的固有坏块信息,其中,所述固有坏块信息包括固有坏块地址信息;
10.地址转换模块,用于基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址;
11.目标数据访问模块,用于访问所述目标物理块地址对应的物理块中存储的所述目标数据。
12.根据本公开的第三方面,提供一种电子设备,包括:
13.处理器;
14.用于存储固有坏块信息的存储器;
15.其中,所述处理器被配置为用于执行本公开任一实施例的终端设备的数据访问方法。
16.根据本公开的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,促使所述处理器实现本公开任一实施例的终端设备的数据访问方法。
17.本公开实施例提供的技术方案可以包括以下有益效果:
18.本公开实施例提供的终端设备的数据访问方法及装置、电子设备及存储介质,响应于接收到针对目标数据的数据访问请求,获取所述终端设备中存储的外设存储器的固有坏块信息,其中,所述固有坏块信息包括固有坏块地址信息;基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址;访问所述目标物理块地址对应的物理块中存储的所述目标数据。通过本公开实施例的所述终端设备的数据访问方法,可以避免坏块的存在造成的数据读写出错的问题。
19.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
20.为了更清楚地说明本公开一个或多个实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开一个或多个实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图:
21.图1是本公开根据一示例性实施例示出的一种镜像文件的结构示意图;
22.图2是本公开根据一示例性实施例示出的一种nand存储器的结构示意图;
23.图3是本公开根据一示例性实施例示出的另一种nand存储器的结构示意图;
24.图4是本公开根据一示例性实施例示出的一种可穿戴设备的结构示意图;
25.图5是本公开根据一示例性实施例示出的一种终端设备的数据访问方法的流程图;
26.图6是本公开根据一示例性实施例示出的另一种nand存储器的结构示意图;
27.图7是本公开根据一示例性实施例示出的一种固有坏块信息的结构示意图;
28.图8是本公开根据一示例性实施例示出的一种统一坏块信息的结构示意图;
29.图9是本公开根据一示例性实施例示出的一种终端设备的数据访问装置的结构示意图;
30.图10是本公开根据一示例性实施例示出的另一种终端设备的数据访问装置的结构示意图;
31.图11是本公开根据一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
32.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
33.在本公开使用的术语仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
34.应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
35.嵌入式设备中,通常把占用存储资源较大的图片、字体等文件数据存储在外设存储器中。例如,在手环、手表等嵌入式设备中,通常会把上述的文件数据存储在外设存储器中,所述外设存储器例如可以为nand存储器。
36.为了使得方案理解更加清楚,首先对将上述的文件数据存储在nand存储器的过程进行详细的描述。通常情况下,上述过程在专业的烧录厂进行,具体的,可以由烧录器将上述的文件数据烧录在nand存储器中。
37.在烧录器进行烧录操作之前,首先可以获取到与当前nand存储器对应的镜像文件,所述镜像文件中包含所述nand存储器所需要的图片、字体等文件数据。例如,当前的nand存储器为用于生产某一型号手环的nand存储器,那么,所述nand存储器所需要的图片、字体等文件数据实际为相关工作人员设定的所述型号的手环所需要的文件数据。
38.示例性的,镜像文件的结构可以如图1所示,镜像文件中可以包含多个区块,不同的区块用于存储不同的文件数据,例如图片文件1、图片文件2等。在本示例中,可以将所述区块称为逻辑块。如图1所示的,不同的逻辑块中还记录有当前逻辑块与物理块之间的映射关系,例如逻辑块1中记录有逻辑块1和物理块1之间的映射关系,所述物理块指的是所述nand存储器中的物理块。示例性的,所述nand存储器的结构可以如图2所示,一个nand存储器中可以包含多个物理块。
39.烧录器在接收到所述镜像文件之后,可以将所述镜像文件中各个逻辑块中的文件数据以及映射关系烧录在当前逻辑块记录的物理块中。例如,可以将镜像文件中逻辑块1中存储的图片文件1、以及映射关系逻辑块1-物理块1烧录在物理块1中。将逻辑块2中存储的图片文件2、以及映射关系逻辑块2-物理块2烧录在物理块2中。
40.由于nand存储器的工艺问题,nand存储器在出厂时有时会带有有限个数的坏块,即发生故障、无法正常读写数据的物理块。并且,通常情况下,这些坏块是随机分布的。示例性的,带有坏块的nand存储器的示例图可以如图3所示。
41.在实际烧录过程中,烧录器可以依据所述nand存储器中各个物理块的坏块标志位(bad block marker),判断该物理块是否为坏块。并在确定该物理块为正常物理块时,将对应的文件数据烧录至该物理块中。如果确定该物理块为坏块,则跳过该坏块,把本该烧录在该坏块的文件数据烧录在与该坏块相邻的下一个正常物理块中。
42.例如,如图3所示,由于物理块1为正常物理块,因此,烧录器可以将镜像文件中逻辑块1中的图片文件1和映射关系逻辑块1-物理块1烧录在nand存储器的物理块1中。由于物理块2是块块,因此,烧录器在烧录时会跳过该坏块,将逻辑块2中的图片文件2和映射关系逻辑块2-物理块2烧录在物理块3中。又由于物理块4为坏块,因此,烧录器会将逻辑块3中的字体文件1和映射关系逻辑块3-物理块3烧录在物理块5中。后续逻辑块与物理块之间的烧录映射关系以此类推,此处不再赘述。
43.在实际应用中,虽然烧录过程会采取如上跳过坏块的方式,但由于镜像文件中各
个逻辑块中存储的映射关系并没有发生变化,因此,写入物理块中的映射关系也是未发生变化之前的映射关系。当终端设备第一次启动时,终端设备会获取到每一个物理块中记录的上述映射关系。当需要读取逻辑块地址2时,终端设备会从获取到的上述映射关系中到与之对应的物理块地址2,并访问物理块地址2中存储的数据。由于物理块2是坏块,此时,就会出错。
44.为解决上述问题,本公开实施例提供一种终端设备的数据访问方法。下面结合附图,对本公开实施例的终端设备的数据访问方法进行详细的描述。
45.如下以一个可穿戴设备为例,来描述该方法。图4为本公开一示例性实施例示出的一种可穿戴设备的结构示意图。如图4所示,该可穿戴设备中可以包括文件系统41、地址转换器42、驱动装置43以及外设存储器44,例如,该外设存储器44可以是nand存储器。
46.其中,所述文件系统41,用于对逻辑块地址进行读写操作。例如,该可穿戴设备是手环,当用户使用该手环时,假设用户要获取手环中的某个图片,文件系统41可以基于用户发送的请求确定该图片对应的逻辑块地址,并将该逻辑块地址传输给地址转换器42。
47.所述地址转换器42,用于根据获取到的逻辑块地址转换得到对应的物理块地址。图片实际上是存储在nand存储器中的物理块中的,地址转换器42可以基于映射关系,将接收到的逻辑块地址转换得到对应在nand存储器中的物理块地址。
48.所述驱动装置(driver)43,用于对物理块地址进行读写操作。例如,该驱动装置可以根据地址转换器42转换得到的物理块地址,访问nand存储器中对应该地址的物理块,获取到物理块中存储的所述图片。
49.所述外设存储器44中可以包含多个物理块,通过所述驱动装置43可以对所述多个物理块进行读写操作。
50.图5是本公开根据一示例性实施例示出的一种终端设备的数据访问方法的流程图,所述方法由终端设备执行,例如,所述终端设备可以为手环、或者手表。如图5所示,该示例性实施例方法可以包括以下步骤:
51.在步骤500中,响应于接收到针对目标数据的数据访问请求,获取所述终端设备中存储的外设存储器的固有坏块信息。
52.其中,所述针对目标数据的数据访问请求为终端设备中的文件系统41接收到的请求访问目标数据的请求。例如,如上所述的,当用户使用手环时,假设用户要获取手环中的某个图片,文件系统41就会接收到请求获取该图片的请求,该图片即为所述目标数据。进一步的,文件系统41可以基于该请求确定该图片对应的逻辑块地址。
53.所述固有坏块信息包括固有坏块地址信息,所述固有坏块信息包括所述外设存储器固有的至少一个坏块的地址信息。所述固有坏块信息可以在烧录厂使用烧录器对所述外设存储器进行烧录时,由烧录器上的算法模块记录生成。具体的,当烧录器在烧录的过程中检测到坏块时,可以将该坏块的地址信息记录在所述固有坏块信息中。然后,将记录生成的所述固有坏块信息保存在所述外设存储器的最后一个正常物理块中。
54.所述外设存储器例如可以为nand存储器。当所述终端设备中的文件系统41接收到请求访问目标数据的请求时,可以调用驱动装置43从所述nand存储器44中获取所述固有坏块信息。
55.在步骤502中,基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地
址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址。
56.在一个可选示例中,当终端设备接收到数据访问请求时,终端设备中的地址转换器42可以调用驱动装置43获取所述nand存储器的各个物理块中存储的映射关系,或者可以称为地址映射信息,并将获取到的所述地址映射信息保存在所述地址转换器42中。所述地址映射信息包括预设逻辑块地址与预设物理块地址之间的映射关系。
57.如上所述的,文件系统41在确定了图片对应的逻辑块地址之后,会将所述逻辑块地址传输给地址转换器42,由所述地址转换器42基于所述地址映射信息,对所述逻辑块地址进行第一地址转换,得到对应在nand存储器中的初始物理块地址,并将转换得到的初始物理块地址发送给驱动装置43。其中,所述逻辑块地址与所述地址映射信息中的预设逻辑块地址相对应,所述初始物理块地址与所述地址映射信息中的预设物理块地址相对应。
58.由于nand存储器中可能存在坏块,因此,由所述地址转换器42经过第一地址转换处理之后获取到的所述物理块地址可能是出现故障、无法正常读写的物理块的物理块地址。本示例的终端设备的数据访问方法会基于获取到的所述固有坏块信息对获取到的所述初始物理块地址做第二地址转换处理,得到所述目标数据对应的目标物理块地址。
59.由于在烧录时是采用前述的跳过坏块的方式,因此,驱动装置43在获取到所述初始物理块地址之后,可以将获取到的所述初始物理块地址与所述固有坏块信息中的至少一个固有坏块地址信息进行比较,获取到所述固有坏块信息中目标固有坏块地址的数量。所述目标固有坏块地址是小于或等于所述初始物理块地址的固有坏块地址。即,可以依据所述固有坏块信息确定在所述初始物理块地址之前的坏块的数量。假如在所述物理块地址之前的坏块的数量为1,则说明在该物理块之前有一个坏块,那么在烧录时应该是跳过了一个坏块,所述目标物理块地址=所述初始物理块地址+1。假如在所述初始物理块地址之前的坏块的数量为2,则说明在该初始物理块之前有两个坏块,那么在烧录时应该是跳过了两个坏块,所述目标物理块地址=所述初始物理块地址+2。
60.以下述为例来详细介绍本步骤的终端设备的数据访问方法。
61.在一个可选示例中,假如获取到的所述固有坏块信息中的固有坏块地址信息为{2,4,0xffff}。其中,所述0xffff为所述固有坏块信息中的固有坏块地址信息的初始值,在本示例的比较中,可以默认该初始值大于任一获取到的所述初始物理块地址的值。
62.例如,文件系统41确定的所述图片对应的逻辑块地址为1,将其发送至地址转换器42之后,地址转换器42可以将所述逻辑块地址1转换得到对应在nand存储器中的初始物理块地址1。
63.然后,可以将所述初始物理块地址1与获取到的所述固有坏块信息中的至少一个固有坏块地址信息进行比较,获取到所述固有坏块信息中小于或者等于所述初始物理块地址1的数量为0,即获取到的所述物理块地址之前没有坏块,因此,可以获取到与所述逻辑块地址1对应的目标物理块地址为1+0=1。
64.再例如,文件系统41确定的所述图片对应的逻辑块地址为2,将其发送至地址转换器42之后,地址转换器42可以将所述逻辑块地址2转换得到对应在nand存储器中的初始物理块地址2。
65.然后,可以将所述初始物理块地址2与获取到的所述固有坏块信息中的至少一个固有坏块地址信息进行比较,获取到所述固有坏块信息中小于或者等于所述物理块地址2
的数量为1,即获取到的所述物理块地址之前有一个坏块,因此,可以获取到与所述逻辑块地址2对应的目标物理块地址为2+1=3。
66.在步骤504中,访问所述目标物理块地址对应的物理块中存储的所述目标数据。
67.如上所述的,当驱动装置43经过转换得到所述目标物理块地址之后,即可以访问该目标物理块地址对应的目标物理块中存储的数据,该数据即为所述目标数据。例如,可以为上述的用户想要获取的手环中的某个图片。
68.本公开实施例提供的终端设备的数据访问方法,可以避免坏块的存在造成的数据读写出错的问题。
69.下面对所述终端设备的数据访问方法的部分步骤进行进一步的描述。
70.针对上述步骤500,在一个可选示例中,当所述数据访问请求为所述终端设备在本次启动后首次接收到的数据访问请求,则获取所述外设存储器中存储的所述固有坏块信息。
71.如前所述的,所述数据访问请求例如可以为用户想到获取手环中的某个图片的请求。当该请求是手环在本次启动,比如是手环在关机、又开机之后首次接收到的请求,则可以从所述nand存储器中获取所述固有坏块信息,并将获取到的所述固有坏块信息存储在nand存储器自身的内设存储器中。
72.由前述可得,在由烧录器中的算法模块获取到所述固有坏块信息之后,可以将其存储在nand存储器的最后一个好块中。因此,在从所述nand存储器中获取所述固有坏块信息时,可以按照物理块地址从大到小的顺序,依次扫描所述nand存储器中的物理块。并当确定当前扫描的第一物理块为正常物理块时,从所述第一物理块中获取所述固有坏块信息。
73.以图6所示的nand存储器的结构为例,nand存储器的最后一个好块是物理块12,因此,在由烧录器中的算法模块获取到所述固有坏块信息之后,可以将所述固有坏块信息存储在所述物理块12中。在从所述nand存储器中获取所述固有坏块信息时,即可以按照物理块地址从大到小的顺序,依次扫描所述nand存储器中的物理块。由于第一个扫描到的物理块为物理块13,但是物理块13为坏块,不满足要求。所以继续扫描,可以扫描到物理块12,由于物理块12为正常物理块,因此,可以从所述物理块12中获取所述固有坏块信息。所述物理块12即为所述第一物理块。
74.在一个可选示例中,如果接收到的所述数据访问请求不是手环在本次启动之后接收到的第一次请求,例如,是用户在访问到上述的手环中的图片之后,又发送的想要访问手环中的某种字体的请求。此时,可以直接从所述内设存储器中获取所述固有坏块信息。从而加快获取所述固有坏块信息的速度,提高终端设备的工作效率。
75.如图7所示,在一个可选示例中,所述固有坏块信息可以包含签名、坏块数量、校验、以及多个坏块号等信息。其中,所述签名用于表征该物理块存储的信息为固有坏块信息。所述坏块数量用于表征nand存储器中的坏块的数量、所述校验位存储的是依据后面的坏块号数据生成的校验值,可以使用该位置存储的校验值与之前的校验值进行比较,如果该校验值与之前的校验值相符,则认为后面的坏块号数据没有被破坏。可以进行后续的操作。反之,则认为后面的坏块号数据被破坏,可以将此信息上报给相关的工作人员,由相关工作人员进行处理。
76.在一个可选示例中,所述固有坏块信息可以仅包含数量字段和多个地址字段。其
中,所述数量字段用于指示所述nand存储器的固有坏块数量,所述多个地址字段中的每一个地址字段用于指示固有坏块的地址。
77.例如,所述固有坏块信息中的数字字段为4。则表示所述nand存储器中有4个固有坏块。相对应的,所述固有坏块信息中即包含4个地址字段,每一个地址字段表示其中的一个固有坏块的地址。
78.在一个可选示例中,当在所述nand存储器中检测到存在所述固有坏块信息,且所述固有坏块信息中存储的所述坏块数量等于0时,在接收到经过第一地址转换处理之后得到的所述初始物理块地址之后,由所述nand存储器的所述初始物理块地址处获取所述目标数据。
79.当所述固有坏块信息中存储的坏块数量为0时,表明所述nand存储器中的物理块均为正常物理块。因此,在烧录厂中使用烧录器对所述存储设备进行烧录时,均按照原映射关系进行烧录,此时,即可以根据获取到的初始物理块地址获取该地址处的所述数据。
80.在一个可选示例中,当检测到所述nand存储器中不存在所述固有坏块信息时,在接收到经过所述第一地址转换处理之后得到的所述初始物理块地址之后,也由所述nand存储器中的所述初始物理块地址处获取所述数据。
81.当所述nand存储器中不存在所述坏块管理表时,表明所述nand存储器在烧录时并没有使用本示例的所述跳过坏块的烧录方法。因此,不进行上述的地址转换。
82.在一个可选示例中,可以当确定终端设备是非首次启动时,对所述外设存储器中的多个物理块进行扫描,以确定所述外设存储器在使用过程中是否出现了继生坏块,并当确定出现了继生坏块时,基于所述继生坏块的信息,建立继生坏块管理表,继生坏块管理表中存储有继生坏块与可用坏之间的地址映射关系。
83.在使用过程中,由于操作电压或者操作次数超过限制等原因,会导致nand存储器在使用过程中出现一些新的坏块,可以将其称为继生坏块。因此,在确定终端设备是非首次启动时,可以进一步检测所述nand存储器中是否出现了继生坏块。
84.具体的,可以将存储的固有坏块信息与检测到的多个坏块的地址信息进行比对。当存在坏块地址在所述固有坏块信息中不存在的情况时,则说明出现了继生坏块。此时,可以从所述nand存储器中查可用块,将该继生坏块中的文件数据存储在所述可用块中,并建立所述继生坏块与所述可用块之间的映射关系,将该映射关系存储在所述nand存储器存储的继生坏块管理表中。
85.在一些实施例中,所述继生坏块管理表和所述固有坏块信息可以存储在一起,如图8所示。以图3所示的所述nand存储器的固有坏块地址信息为2、4为例。假如,终端设备在使用一段时间之后,检测到所述nand存储器中出现了继生坏块,其坏块地址信息为3。此时,可以从所述nand存储器的正常物理块中选取一个物理块,例如,该正常物理块为12。然后将地址信息为3的坏块中存储的文件数据转存在所述正常物理块12中,并建立所述继生坏块地址3和所述正常物理块12之间的映射关系,并将该映射关系存储在图8所示的统一坏块信息中。
86.其中,所述nand存储器的正常物理块可以是预设的备份区中的正常物理块,也可以是在所述nand存储器中从后向前检索,获取的首个正常物理块,本公开对此不作限定。
87.在确定存在继生坏块后,本示例所述的终端设备的数据访问方法在经过上述的第
二次地址转换处理之后,还需要将转换得到的所述目标物理块地址与所述继生坏块管理表中的映射关系进行比对,以确定是否需要进行第三次地址转换处理。
88.具体的,当所述目标物理块地址存在于所述继生坏块管理表中的某一个映射关系中时,则表明该目标物理块地址在使用过程中损坏了,驱动装置已经将该目标物理块中存储的文件数据转存在该继生坏块管理表的映射关系中提到的另外一个物理块中。因此,需要依据该映射关系,对所述目标物理块地址作第三次地址转换处理。
89.例如,经过前述实施例中的第二次地址转换处理之后,得到的目标物理块地址为3,将该物理块地址与所述继生坏块管理表中的映射关系进行比对,发现所述映射关系中存在物理块地址3-物理块地址12的映射关系,因此,可以依据该映射关系,对所述物理块地址3作第三次地址转换处理,得到物理块地址12。所述物理块地址12即为前述实施例中的目标数据对应存储的物理块地址。
90.本公开实施例提供的终端设备的数据访问方法,进一步提供了出现继生坏块时数据的访问方法,可以避免继生坏块的出现造成的数据读写出错的问题。
91.图9是本公开根据一示例性实施例示出的一种终端设备的数据访问装置的结构示意图,如图9所示,该终端设备的数据访问装置可以包括:
92.固有坏块信息获取模块91,用于响应于接收到针对目标数据的数据访问请求,获取所述终端设备中存储的外设存储器的固有坏块信息,其中,所述固有坏块信息包括固有坏块地址信息。
93.地址转换模块92,用于基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址。
94.目标数据获取模块93,用于访问所述目标物理块地址对应的物理块中存储的所述目标数据。
95.可选的,所述固有坏块信息获取模块91,在用于获取所述终端设备中存储的外设存储器的固有坏块信息时,包括:
96.响应于所述数据访问请求为所述终端设备在本次启动后首次接收到的数据访问请求,获取所述外设存储器中存储的所述固有坏块信息。
97.和/或,
98.响应于所述数据访问请求为所述终端设备在本次启动后非首次接收到的数据访问请求,获取所述终端设备的内设存储器中存储的所述固有坏块信息。
99.可选的,所述固有坏块信息获取模块91,在用于获取所述外设存储器中存储的所述固有坏块信息时,包括:
100.按照物理块地址从大到小的顺序,依次扫描所述外设存储器中的至少一个物理块,直到确定当前扫描的第一物理块为正常物理块。
101.获取所述第一物理块中存储的所述固有坏块信息。
102.可选的,所述地址转换模块92,在用于基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址时,包括:
103.基于所述终端设备中存储的地址映射信息,对所述目标数据的逻辑块地址进行第一地址转换处理,得到所述目标数据对应的初始物理块地址,所述地址映射信息包括预设
逻辑块地址与预设物理块地址之间的映射关系。
104.基于所述固有坏块信息,对所述目标数据对应的初始物理块地址进行第二地址转换处理,得到所述目标数据对应的目标物理块地址。
105.可选的,所述固有坏块信息包括数量字段和多个地址字段,所述数量字段用于指示所述外设存储器的固有坏块数量,所述多个地址字段中的每个地址字段用于指示固有坏块的地址。
106.可选的,所述地址转换模块92,在用于基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址时,包括:
107.将所述初始物理块地址与所述固有坏块信息中包括的至少一个固有坏块地址进行比较。
108.响应于确定所述至少一个固有坏块地址中存在位于所述初始物理块地址之前的固有坏块地址,基于位于所述初始物理块地址之前的固有坏块地址的数量,对所述初始物理块地址进行第二地址转换,得到所述目标物理块地址。
109.可选的,如图10所示,在图9所示模块的基础上,所述终端设备的数据访问装置还可以包括:
110.扫描模块101,用于对所述外设存储器的多个物理块进行扫描,以确定所述外设存储器在使用过程中是否出现了继生坏块。
111.存储模块102,用于响应于确定出现了继生坏块,将所述继生坏块中存储的数据存储到所述外设存储器的可用块中,并存储继生坏块信息,所述继生坏块信息包括所述继生坏块与所述可用块之间的地址映射关系。
112.可选的,所述地址转换模块92,在用于基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址时,还包括:
113.查询所述继生坏块信息。
114.响应于确定所述继生坏块信息中包括与所述目标物理块地址对应的地址映射关系,基于所述对应的地址映射关系,对所述目标物理块地址进行第三地址转换,得到转换后的目标物理块地址。
115.上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
116.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
117.本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本公开任一实施例所述的终端设备的数据访问方法。
118.本公开实施例还提供了一种电子设备,如图11所示,所述电子设备包括存储器
111、处理器112,所述存储器111用于存储可在处理器上运行的计算机指令,所述处理器112用于在执行所述计算机指令时实现本公开任一实施例所述的终端设备的数据访问方法。
119.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
120.虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
121.由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
122.以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。

技术特征:


1.一种终端设备的数据访问方法,其特征在于,所述方法包括:响应于接收到针对目标数据的数据访问请求,获取所述终端设备中存储的外设存储器的固有坏块信息,其中,所述固有坏块信息包括固有坏块地址信息;基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址;访问所述目标物理块地址对应的物理块中存储的所述目标数据。2.根据权利要求1所述的方法,其特征在于,所述获取所述终端设备中存储的外设存储器的固有坏块信息,包括:响应于所述数据访问请求为所述终端设备在本次启动后首次接收到的数据访问请求,获取所述外设存储器中存储的所述固有坏块信息;和/或,响应于所述数据访问请求为所述终端设备在本次启动后非首次接收到的数据访问请求,获取所述终端设备的内设存储器中存储的所述固有坏块信息。3.根据权利要求2所述的方法,其特征在于,所述获取所述外设存储器中存储的所述固有坏块信息,包括:按照物理块地址从大到小的顺序,依次扫描所述外设存储器中的至少一个物理块,直到确定当前扫描的第一物理块为正常物理块;获取所述第一物理块中存储的所述固有坏块信息。4.根据权利要求1至3中任一项所述的方法,其特征在于,所述基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址,包括:基于所述终端设备中存储的地址映射信息,对所述目标数据的逻辑块地址进行第一地址转换处理,得到所述目标数据对应的初始物理块地址,所述地址映射信息包括预设逻辑块地址与预设物理块地址之间的映射关系;基于所述固有坏块信息,对所述目标数据对应的初始物理块地址进行第二地址转换处理,得到所述目标数据对应的目标物理块地址。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述固有坏块信息包括数量字段和多个地址字段,所述数量字段用于指示所述外设存储器的固有坏块数量,所述多个地址字段中的每个地址字段用于指示固有坏块的地址。6.根据权利要求4所述的方法,其特征在于,所述基于所述固有坏块信息,对所述目标数据对应的初始物理块地址进行第二地址转换处理,得到所述目标数据对应的目标物理块地址,包括:将所述初始物理块地址与所述固有坏块信息中包括的至少一个固有坏块地址进行比较;响应于确定所述至少一个固有坏块地址中存在位于所述初始物理块地址之前的固有坏块地址,基于位于所述初始物理块地址之前的固有坏块地址的数量,对所述初始物理块地址进行第二地址转换,得到所述目标物理块地址。7.根据权利要求4或6所述的方法,其特征在于,所述方法还包括:对所述外设存储器的多个物理块进行扫描,以确定所述外设存储器在使用过程中是否
出现了继生坏块;响应于确定出现了继生坏块,将所述继生坏块中存储的数据存储到所述外设存储器的可用块中,并存储继生坏块信息,所述继生坏块信息包括所述继生坏块与所述可用块之间的地址映射关系。8.根据权利要求7所述的方法,其特征在于,所述基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址,还包括:查询所述继生坏块信息;响应于确定所述继生坏块信息中包括与所述目标物理块地址对应的地址映射关系,基于所述对应的地址映射关系,对所述目标物理块地址进行第三地址转换,得到转换后的所述目标物理块地址。9.一种电子设备,其特征在于,包括:存储器,所述存储器存储有固有坏块信息,所述固有坏块信息包括固有坏块地址信息;处理器,用于执行权利要求1至8中任一所述的方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至8任一所述的方法。

技术总结


本公开实施例提供一种终端设备的数据访问方法及装置、存储介质及电子设备,其中,所述终端设备的数据访问方法包括:响应于接收到针对目标数据的数据访问请求,获取所述终端设备中存储的外设存储器的固有坏块信息,其中,所述固有坏块信息包括固有坏块地址信息;基于所述固有坏块信息,对所述目标数据的逻辑块地址进行存储地址转换处理,得到所述目标数据在所述外设存储器中对应的目标物理块地址;访问所述目标物理块地址对应的物理块中存储的所述目标数据。通过本公开实施例的所述终端设备的数据访问方法,可以避免坏块的存在造成的数据读写出错的问题。读写出错的问题。读写出错的问题。


技术研发人员:

刘泽欣 李应 张文军 张巍巍 谭曲 林家仕 王耀庭

受保护的技术使用者:

安徽华米信息科技有限公司

技术研发日:

2022.07.21

技术公布日:

2022/10/11

本文发布于:2024-09-24 07:24:13,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/13185.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   地址   物理   数据
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议