WO2023206605A1 - 存储装置的程序运行方法、电子设备及可读存储装置 - Google Patents
存储装置的程序运行方法、电子设备及可读存储装置 Download PDFInfo
- Publication number
- WO2023206605A1 WO2023206605A1 PCT/CN2022/092045 CN2022092045W WO2023206605A1 WO 2023206605 A1 WO2023206605 A1 WO 2023206605A1 CN 2022092045 W CN2022092045 W CN 2022092045W WO 2023206605 A1 WO2023206605 A1 WO 2023206605A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- storage
- block
- storage block
- combined
- blocks
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000013507 mapping Methods 0.000 claims description 39
- 238000003672 processing method Methods 0.000 abstract description 14
- 238000004519 manufacturing process Methods 0.000 abstract description 5
- 235000012431 wafers Nutrition 0.000 description 31
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 3
- 108010076504 Protein Sorting Signals Proteins 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- 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/062—Securing storage systems
- G06F3/0623—Securing storage systems in relation to content
-
- 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
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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]
Definitions
- the present application relates to the field of storage, and in particular, to a storage device processing method, a storage device, and a computer-readable storage device.
- various FLASH storage technologies are used to combine multiple FLASH physical blocks together to form a large bound logical block for use.
- physical blocks with the same physical block number in different planes under different CEs or the same CE are bound into one logical block.
- four physical blocks are CE0 plane0 block2, CE0 plane1 block2, CE1 plane0 block2, and CE1 plane1 block2. Bind it to the logical block block2 for use.
- physical block damage will inevitably occur.
- binding logical blocks if there is physical block damage in physical blocks with the same physical block number, then the physical block number corresponding to Physical blocks cannot be bound into logical blocks for use, leaving a bunch of scattered available physical blocks.
- the scattered available physical blocks that cannot be bound for use reduce the available capacity of FLASH products, turning originally qualified storage products into defective products whose available capacity does not meet demand.
- the main purpose of this application is to provide a storage device processing method, a storage device and a computer-readable storage device that can solve the technical problem of reduced available capacity due to bad blocks in the storage device.
- the first technical solution adopted by this application is to provide a processing method for a storage device.
- the method includes: determining the quality of the storage blocks in the storage device; if all storage blocks with the same physical number are For a good storage block, all good storage blocks with the same physical number are bound to form a bound storage block; the remaining good storage blocks of the storage device except the bound storage block are combined to form a combined storage block.
- the second technical solution adopted by this application is to provide a storage device.
- the storage device includes a memory and a processor.
- the memory is used to store program data.
- the processor is connected to the memory to implement the method described in the first technical solution.
- the third technical solution adopted by this application is to provide a computer-readable storage device.
- the computer-readable storage device stores program data and can be executed by the processor to implement the method described in the first technical solution.
- this application determines the status of good and fast storage blocks in the storage device, thereby determining the physical number of the bad storage block. Other good storage blocks with the same physical number as the bad storage block cannot be bound. Further, it is possible to determine the good storage blocks to be bound into large logical blocks and the good storage blocks that cannot be bound. The good storage blocks that can be bound are bound, and the good storage blocks that cannot be bound are combined to form a combination block for use, thereby turning the unusable good storage blocks into usable storage blocks and increasing the storage capacity. The available capacity of the device improves the mass production yield of the storage device.
- Figure 1 is a schematic flowchart of a first embodiment of a processing method for a storage device of the present application
- Figure 2 is a schematic flowchart of a second embodiment of the processing method of the storage device of the present application.
- Figure 3 is a schematic structural diagram of a combined storage block mapping table
- Figure 4 is another structural diagram of a combined storage block mapping table
- Figure 5 is another structural diagram of a combined storage block mapping table
- Figure 6 is a schematic flowchart of a third embodiment of the processing method of the storage device of the present application.
- Figure 7 is a schematic flowchart of the fourth embodiment of the processing method of the storage device of the present application.
- Figure 8 is a schematic structural diagram of an embodiment of the storage device of the present application.
- Figure 9 is a schematic structural diagram of an embodiment of a computer-readable storage device of the present application.
- an embodiment means that a particular feature, structure or characteristic described in connection with the embodiment can be included in at least one embodiment of the present application.
- the appearances of this phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Those skilled in the art understand, both explicitly and implicitly, that the embodiments described herein may be combined with other embodiments.
- Figure 1 is a schematic flowchart of a first embodiment of a processing method for a storage device of the present application. It includes the following steps:
- S11 Determine the quality of the storage blocks in the storage device.
- Each physical storage block has its corresponding number to indicate its location. Based on the obtained good or bad situation, a bad block table indicating the location information of the bad physical storage block can be obtained. Further, a good block table indicating location information of all good physical storage blocks can also be obtained.
- the bound storage blocks are removed from the good block table, leaving good scattered storage blocks that cannot be bound. These scattered storage blocks are combined in new ways for use to complete the storage device. Fully utilize the available capacity to increase the final available capacity of the storage device.
- the physical number of the bad storage block can also be determined through the bad block table, other good storage blocks with corresponding physical numbers can be determined as unbindable scattered storage blocks, the scattered storage blocks can be combined, and other good storage blocks can be combined. The good storage blocks under the physical number are bound accordingly.
- the status of the storage blocks in the storage device is determined, thereby determining the physical numbers of the bad storage blocks, and further determining the good storage blocks that can be bound into large logical blocks and the good storage blocks that cannot be bound.
- Good storage block The good storage blocks that can be bound are bound, and the good storage blocks that cannot be bound are combined to form a combination block for use, thereby turning the unusable good storage blocks into usable storage blocks and increasing the storage capacity.
- the available capacity of the device improves the mass production yield of the storage device.
- Figure 2 is a schematic flowchart of a second embodiment of a processing method for a storage device of the present application. This method is a further extension of the above embodiment. It includes the following steps:
- a corresponding mapping table is required to represent the mapping relationship between the binding storage block and each physical storage block.
- Physical memory blocks usually have wafer numbers, plane numbers, and physical numbers. The wafer number indicates which wafer the physical storage block is located on, the plane number indicates which plane the physical storage block is located on the wafer, and the physical number further indicates which storage block under the plane the physical storage block is located. The logical number of the bound memory block is the same as the physical number of the bound memory block.
- the memory blocks of CE0 plane0 block2, CE0 plane1 block2, CE1 plane0 block2, and CE1 plane1 block2 are bound to form a bound memory block with a logical number of 2, which is the same as the four memory blocks.
- the corresponding physical numbers of the blocks are the same.
- mapping table is needed to represent its corresponding mapping relationship. Since the physical numbers of the storage blocks in the combined storage blocks are different, a common physical number is introduced for the mapping relationship of the combined storage blocks.
- the logical number of the combined storage block is the same as the common physical number of the combined storage block.
- the logical number of the combined storage block may be incremented immediately following the logical number of the largest binding storage block. For example, the logical number of the largest bound storage block is 100, then the logical number of the first combined storage block is 101, the logical number of the second combined storage block is 102, and so on.
- the logical numbers of the combined storage blocks can be set arbitrarily, and there is no correlation between them, as long as they can be distinguished from the logical numbers of the bound storage blocks, and can be distinguished from each other.
- S23 Determine the target storage block according to the received operation command, logical block table, and combined block table.
- the logical number of the bound storage block is different from the logical number of the combined storage block, so that the logical number in the logical block table or combined block table can be confirmed according to the logical number in the operation command, and the target storage block can be further determined.
- the mapping relationship of the combined storage block is expressed by filling in the numbers of all the corresponding physical storage blocks under the combined storage block.
- CE0 plane0 block2, CE0 plane1 block2, CE1 plane0 block2, and CE1 plane1 block5 are a combined memory block.
- CE1 plane1 block5 replaces the original bad memory block CE1 plane1 block2.
- the numbers of the four storage blocks need to be expressed under the logical number of the combined storage block. Indicates that the number of a storage block will occupy 2 bytes of capacity, so the mapping relationship of the combined storage block will occupy 8 bytes of capacity.
- mapping relationship of each combined memory block As the number of wafers and planes increases, the capacity required to express the mapping relationship of each combined memory block will become larger and larger. For example, taking eight wafers and four planes as an example, indicating the mapping relationship of a combined memory block requires a capacity of 64 bytes. The size of the RAM used to store the mapping relationship in the storage device is limited. When the data representing a combined storage block is too large, the storage device cannot represent all the combined storage blocks. Other combined memory blocks not shown are still unusable memory blocks.
- the combination block table includes a mapping table of at least one combination storage block, and the mapping table represents a mapping relationship between the logical number of the combination storage block and the corresponding physical storage block.
- Each mapping table includes a common physical number, at least one replacement wafer number, at least one replacement plane number, and at least one replacement physical number.
- Figure 3 is a schematic structural diagram of a combined memory block mapping table.
- A represents the common physical number
- B represents the replacement wafer number
- C represents the replacement plane number
- D represents the replacement physical number.
- the common physical number is the physical number with the largest number of storage blocks in the combined storage block.
- the mapping relationship of the combined storage blocks can now be expressed as: the common physical number A is 2, and the block number among the four storage blocks is 2 The number is the largest, replace the wafer number B with 1, replace the plane number C with 1, and replace the physical number D with 5. If CE1 plane1 block2 is not a bad block, then the combined storage block could have been a bound storage block with a logical number of 2. Since CE1 plane1 block2 is damaged, the remaining three storage blocks become scattered storage blocks. Now CE1 plane1 block5 is replaced. CE1 plane1 block2 combines them so that they can continue to be used, so CE1 plane1 block5 is regarded as the replacement memory block in the combined memory block, and its corresponding replacement wafer number, replacement plane number, and replacement physical number are 115.
- the common physical number A occupies 2 bytes
- the replacement wafer number occupies 1 byte
- the replacement plane number occupies 1 byte
- the replacement physical number occupies 2 bytes, indicating that the mapping relationship of a combined storage block only occupies 6 bytes.
- the common physical number and replacement number representation can reduce the occupied capacity of the combined storage block mapping table, so that under the same RAM, the storage device can store more mapping relationships of combined storage blocks and reuse more scattered storage. piece.
- Figure 4 is another structural schematic diagram of a combined memory block mapping table.
- A represents the common physical number
- B represents the replacement wafer number
- C represents the replacement plane number
- D represents the replacement physical number
- E represents the replacement wafer number
- F represents the replacement plane number
- G represents the replacement physical number.
- the common physical number is the physical number with the largest number of storage blocks in the combined storage block.
- Figure 4 shows the representation when there are two replacement memory blocks in the combined memory block. Take the combined storage blocks of CE0 plane0 block2, CE0 plane1 block3, CE1 plane0 block2, and CE1 plane1 block5 as an example. At this time, their common physical number is 2.
- the replacement memory blocks are CE0 plane1 block3 and CE1 plane1 block5, the corresponding number for BCD is 013, and the corresponding number for EFG is 115. Although it takes 10 bytes to represent the mapping relationship of the combined memory block at this time, for a storage device with a large number of wafers and planes, the data capacity is still smaller than the mapping relationship representation method of filling in all numbers.
- the combination block table may include at least one mapping table of the combination storage block, and the mapping table represents the mapping relationship of the combination storage block.
- the mapping table may include a common physical number, at least one replacement wafer number, at least one replacement plane number, and at least one replacement physical number. Among them, the number of replacement wafer numbers and replacement plane numbers is the same as the number of replacement physical numbers. Each set of replacement wafer numbers, replacement plane numbers, and replacement physical numbers corresponds to a replacement storage in the combined storage block. piece.
- each pair of replacement wafer number and replacement plane number in the mapping table in the combination block table corresponds to at least one replacement physical number.
- a pair of replacement wafer number and replacement plane number BC correspond to a replacement physical number D, indicating a replacement memory block.
- Figure 5 is another structural schematic diagram of a combined memory block mapping table.
- A represents the common physical number
- B represents the replacement wafer number
- C represents the replacement plane number
- D represents the replacement physical number
- E represents the replacement physical number.
- the common physical number is the physical number with the largest number of storage blocks in the combined storage block.
- Figure 5 shows the representation when there are two replacement memory blocks in the combined memory block. Take the combined storage blocks of CE0 plane0 block2, CE1 plane1 block3, CE1 plane0 block2, and CE1 plane1 block5 as an example. At this time, their common physical number is 2.
- the replacement memory blocks are CE1 plane1 block3 and CE1 plane1 block5.
- the number corresponding to BCD is 113, which represents the replacement of storage block CE1 plane1 block3, and the corresponding number of BCE is 115, which represents the replacement of storage block CE1 plane1 block5.
- the memory block selection in Figure 5 is selected from the same plane of the same wafer, thereby reducing the capacity occupied by the replacement wafer number and replacement plane number in the mapping table.
- FIG. 6 is a schematic flowchart of a third embodiment of a processing method for a storage device of the present application. This method is a further expansion of step S22. It includes the following steps:
- the number includes wafer number, plane number and physical number.
- S32 Select numbers based on preset rules to determine the storage blocks that form the combined storage block.
- the preset rule is that the numbers of the memory blocks forming the combined memory block include all combinations of the wafer number and the plane number. That is, each plane of each wafer includes at least one memory block. Taking two wafers and two planes as an example, in the combined memory blocks of CE0 plane0 block2, CE0 plane1 block3, CE1 plane0 block2, and CE1 plane1 block5, there is a corresponding memory block in each plane of each wafer. This allows the combined memory block to have higher read and write performance than the combined memory block in which the memory blocks are gathered in a certain wafer or a certain plane.
- FIG. 7 is a schematic flowchart of a fourth embodiment of a processing method for a storage device of the present application. This method is a further extension of the above embodiment. It includes the following steps:
- step S43 It is determined whether the logical block with the logical number is a combined storage block or a bound storage block. If it is a combined storage block, step S43 is executed. If it is a bound storage block, step S44 is executed.
- S43 Determine the storage block corresponding to the logical number in the combination block table as the target storage block.
- the logical number of the bound storage block is the same as the physical number of the storage block.
- the logical number is directly converted into the physical number of the storage block, and the corresponding target storage block is determined based on the physical number. .
- the number of each storage block in the combined storage block is set to be equal to that of the binding storage block.
- the number of each storage block in them is the same.
- FIG. 8 is a schematic structural diagram of an embodiment of a storage device according to the present application.
- the storage device includes a processor 110 and a memory 120 .
- the processor 110 controls the operation of the storage device.
- the processor 110 may also be called a CPU (Central Processing Unit).
- the processor 110 may be an integrated circuit chip having signal sequence processing capabilities.
- the processor 110 may also be a general purpose processor, a digital signal sequence processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, or discrete hardware components.
- DSP digital signal sequence processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- a general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
- Memory 120 stores instructions and program data.
- the processor 110 is connected to the memory 120 to execute instructions to implement the method provided by any embodiment and possible combinations of the storage device processing method of the present application.
- Figure 9 is a schematic structural diagram of an embodiment of a computer-readable storage device according to the present application.
- One embodiment of the readable storage device of the present application includes a memory 210.
- the memory 210 stores program data.
- the program data is executed, the method provided by any embodiment and possible combinations of the processing method of the storage device of the present application is implemented.
- the memory 210 may include a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, a Random Access Memory), a magnetic disk, and other media that can store program instructions, or it may also be a medium that stores program instructions.
- the server of the program instructions can send the stored program instructions to other devices for execution, or can also run the stored program instructions by itself.
- this application determines the physical number of the bad storage block by determining the quality of the storage block in the storage device. Other good storage blocks with the same physical number as the bad storage block cannot be bound. Further, it is possible to determine the good storage blocks to be bound into large logical blocks and the good storage blocks that cannot be bound. The good storage blocks that can be bound are bound, and the good storage blocks that cannot be bound are combined to form a combination block for use, thereby turning the unusable good storage blocks into usable storage blocks and increasing the storage capacity. The available capacity of the device improves the mass production yield of the storage device.
- the disclosed methods and devices can be implemented in other ways.
- the device implementation described above is only illustrative.
- the division of modules or units is only a logical function division.
- there may be other division methods for example, multiple units or components may be The combination can either be integrated into another system, or some features can be ignored, or not implemented.
- the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of this embodiment.
- each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
- the above integrated units can be implemented in the form of hardware or software functional units.
- the integrated units in the above other embodiments are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium.
- the technical solution of the present application is essentially or contributes to the existing technology, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , including several instructions to cause a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the method described in each embodiment of the application.
- the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program code. .
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)
- Memory System (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种存储装置的处理方法,该方法包括:确定存储装置中存储块的好坏情况(S11);若物理编号相同的所有存储块均为好存储块,则将物理编号相同的所有好存储块,绑定形成绑定存储块(S12);将存储装置除绑定存储块之外的剩余好存储块,组合形成组合存储块(S13)。能够增大存储装置产品的可用容量,提高量产良率。
Description
本申请要求申请号为2022104425113的中国专利申请的优先权,其内容通过引用结合在本申请中。
本申请涉及存储领域,特别是涉及一种存储装置的处理方法、存储装置及计算机可读存储装置。
在应用FLASH的存储装置中,为了提高存储装置的使用性能,会使用FLASH存储得到多种技术,将多个FLASH的物理块组合在一起,形成一个绑定的大的逻辑块来使用。通常,将不同CE或相同CE下,不同plane中的物理块编号相同的物理块绑定成为一个逻辑块,例如,将CE0 plane0 block2、CE0 plane1 block2、CE1 plane0 block2、CE1 plane1 block2四个物理块绑定为逻辑块block2进行使用。在存储装置的生产中,不可避免的会出现物理块损坏的情况,而进行逻辑块的绑定时,若物理块编号相同的物理块中存在物理块损坏的情况,那么该物理块编号对应的物理块就不能绑定成为逻辑块进行使用,就会留下一堆零散的可用物理块。而不可绑定进行使用的零散可用物理块使得FLASH产品的可用容量减少,将原本合格的存储产品变成可用容量不满足需求的不良品。
【发明内容】
本申请主要目的是提供一种存储装置的处理方法、存储装置及计算机可读存储装置,能够解决存储装置中由于坏块导致可用容量减少的技术问题。
为解决上述技术问题,本申请采用的第一个技术方案是:提供一种存储装置的处理方法,该方法包括:确定存储装置中存储块的好坏情况;若物理编号相同的所有存储块均为好存储块,则将物理编号相同的所有好存储块,绑定形成绑定存储块;将存储装置除绑定存储块之外的剩余 好存储块,组合形成组合存储块。
为解决上述技术问题,本申请采用的第二个技术方案是:提供一种存储装置。该存储装置包括存储器和处理器,存储器用于存储程序数据,处理器连接存储器以实现如第一个技术方案中所述的方法。
为解决上述技术问题,本申请采用的第三个技术方案是:提供一种计算机可读存储装置。该计算机可读存储装置存储有程序数据,能够被处理器执行,以实现如第一个技术方案中所述的方法。
本申请的有益效果是:区别于现有技术的情况,本申请对存储装置中的存储块好快情况进行确定,从而确定出坏存储块的物理编号。而与坏存储块的物理编号相同的其他的好存储块是不能进行绑定的,进一步地能够确定进行绑定成大的逻辑块的好存储块以及不能进行绑定的好存储块。将能够绑定的好存储块进行绑定,而不能绑定的好存储块进行组合形成组合块以进行使用,从而将不可使用的好存储块重新变成能够使用的存储块,增大了存储装置的可用容量,提高了存储装置的量产良率。
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请存储装置的处理方法第一实施例的流程示意图;
图2是本申请存储装置的处理方法第二实施例的流程示意图;
图3是一组合存储块映射表的一结构示意图;
图4是一组合存储块映射表的又一结构示意图;
图5是一组合存储块映射表的又一结构示意图;
图6是本申请存储装置的处理方法第三实施例的流程示意图;
图7是本申请存储装置的处理方法第四实施例的流程示意图;
图8是本申请存储装置一实施例的结构示意图;
图9是本申请计算机可读存储装置一实施例的结构示意图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
参照图1,图1为本申请存储装置的处理方法第一实施例的流程示意图。其包括以下步骤:
S11:确定存储装置中存储块的好坏情况。
扫描存储装置中所有的FLASH物理存储块,确定每个物理存储块的好坏情况,是否能够读写数据。而每个物理存储块都有其对应的编号以指示其位置,根据得到的好坏情况,能够得到指示坏物理存储块位置信息的坏块表。进一步地,也能够得到指示所有好物理存储块位置信息的好块表。
S12:若物理编号相同的所有存储块均为好存储块,则将物理编号相同的所有好存储块,绑定形成绑定存储块。
对存储块的物理编号进行判断,若某一物理编号对应的所有存储块 都为好存储块,表示该物理编号的所有存储块能够进行绑定成为一个大逻辑块进行使用,将所有符合要求的物理编号下的存储块进行绑定,得到对应的大的逻辑块。
S13:将存储装置除绑定存储块之外的剩余好存储块,组合形成组合存储块。
将绑定完成的存储块从好块表中除去,留下了无法进行绑定的好的零散的存储块,将这些零散的存储块通过新的方式进行组合以供使用,完成对存储装置中可用容量的充分利用,提高存储装置最终的可用容量。
在一实施例中,也可通过坏块表确定坏存储块的物理编号,将对应物理编号下其他的好存储块确定为不可绑定的零散存储块,将零散存储块进行组合处理,将其他物理编号下的好存储块进行相应的绑定。
通过上述实施例,对存储装置中的存储块好快情况进行确定,从而确定出坏存储块的物理编号,进一步地能够确定进行绑定成大的逻辑块的好存储块以及不能进行绑定的好存储块。将能够绑定的好存储块进行绑定,而不能绑定的好存储块进行组合形成组合块以进行使用,从而将不可使用的好存储块重新变成能够使用的存储块,增大了存储装置的可用容量,提高了存储装置的量产良率。
参照图2,图2为本申请存储装置的处理方法第二实施例的流程示意图。该方法是对上述实施例的进一步扩展。其包括以下步骤:
S21:生成绑定存储块的逻辑块表。
对绑定生成的绑定存储块,需要对应的映射表表示绑定存储块与各个物理存储块的映射关系。物理存储块通常具有晶圆编号、plane编号以及物理编号。晶圆编号表示该物理存储块位于第几晶圆,plane编号表示该物理存储块位于该晶圆中第几plane,物理编号进一步表示该物理存储块位于该plane下第几个存储块。绑定存储块的逻辑编号与绑定存储块的物理编号相同。例如,以两个晶圆,两个plane为例,CE0 plane0 block2、CE0 plane1 block2、CE1 plane0 block2、CE1 plane1 block2的存储块绑定成的绑定存储块的逻辑编号为2,与四个存储块对应的物理编号相同。
S22:生成组合存储块的组合块表。
同理,对于组合生成的组合存储块,需要映射表来表示其相应的映射关系。而由于组合存储块中存储块的物理编号是不同的,因此对于组合存储块的映射关系引入了共同物理编号。
在一实施例中,组合存储块的逻辑编号与组合存储块的共同物理编号相同。
在一实施例中,组合存储块的逻辑编号可以是紧接着最大的绑定存储块的逻辑编号进行递增的。比如,最大的绑定存储块的逻辑编号为100,则第一个组合存储块的逻辑编号为101,第二个组合存储块的逻辑编号为102,以此类推。
在一实施例中,组合存储块的逻辑编号可以是随意设置的,彼此之间不存在任何关联,只要能够与绑定存储块的逻辑编号区分开,相互之间能够区分开即可。
S23:根据接收的操作命令、逻辑块表、组合块表确定目标存储块。
绑定存储块的逻辑编号与组合存储块的逻辑编号是不同的,从而能够根据操作命令中的逻辑编号,对逻辑块表或组合块表中的逻辑编号进行确认,进一步确定目标存储块。
在通常情况下,对于组合存储块的映射关系的表示为填写其组合存储块下对应的所有物理存储块的编号。例如,以两个晶圆,两个plane为例,CE0 plane0 block2、CE0 plane1 block2、CE1 plane0 block2、CE1 plane1 block5是一个组合存储块。CE1 plane1 block5替换了原有的坏存储块CE1 plane1 block2。当对该组合存储块进行表示时,需在该组合存储块的逻辑编号下将四个存储块的编号都表示出来。表示一个存储块的编号将占用2byte的容量,则该组合存储块的映射关系就需要占用8byte的容量。而对于晶圆和plane数量越来越大的情况,表示每个组合存储块的映射关系需要的容量就会越来越大。例如以八个晶圆四个plane为例,表示一个组合存储块的映射关系就需要占用64byte的容量。而存储装置中用于存储映射关系的RAM的大小是有限的,当表示一个组合存储块的数据过大时,存储装置就无法表示出所有的组合存储块。其他未 表示出的组合存储块依旧是不能使用的存储块。
因此,使用共同物理编号对填写所有的存储块编号的映射关系表示方式进行改进。组合块表中包括了至少一个组合存储块的映射表,映射表表示了该组合存储块的逻辑编号与对应的物理存储块的映射关系。每个映射表中包括了共同物理编号,至少一替换晶圆编号、至少一替换plane编号以及至少一替换物理编号。
参照图3,图3为一组合存储块映射表的一结构示意图。
其中A代表共同物理编号,B代表替换晶圆编号,C代表替换plane编号,D代表替换物理编号。共同物理编号为组合存储块中存储块具有的数量最多的物理编号。
以CE0 plane0 block2、CE0 plane1 block2、CE1 plane0 block2、CE1 plane1 block5组合存储块为例,现在组合存储块的映射关系可以表示为:共同物理编号A为2,四个存储块中block的编号中2的数量是最多的,替换晶圆编号B为1,替换plane编号C为1,替换物理编号D为5。如果CE1 plane1 block2不是坏块,那么该组合存储块原本可以是绑定存储块,其逻辑编号为2,由于CE1 plane1 block2损坏,其余三个存储块变为零散存储块,现将CE1 plane1 block5替换CE1 plane1 block2将其进行组合以让其能够继续使用,因此CE1 plane1 block5就是视为该组合存储块中的替换存储块,其对应的替换晶圆编号、替换plane编号以及替换物理编号为115。
以该种方式表示时,共同物理编号A占用2byte,替换晶圆编号占用1byte,替换plane编号占用1byte,替换物理编号占用2byte,表示一个组合存储块的映射关系仅占用了6byte,相较于存储块编号全部填写得到方式减少了2byte。对于晶圆和plane数量越多的存储装置来说,其中表示组合存储块的映射关系所占用的数据容量会减少的更多。因此使用共同物理编号以及替换编号的表示方式能够减少组合存储块映射表的占用容量,使得在相同的RAM下,存储装置能够存储更多的组合存储块的映射关系,重新利用更多的零散存储块。
进一步地,对于某一组合存储块中存在多个替换存储块时,也可使 用该种表示方式。参照图4,图4为一组合存储块映射表的又一结构示意图。其中A代表共同物理编号,B代表替换晶圆编号,C代表替换plane编号,D代表替换物理编号,E代表替换晶圆编号,F代表替换plane编号,G代表替换物理编号。共同物理编号为组合存储块中存储块具有的数量最多的物理编号。
图4表示了组合存储块中存在两个替换存储块时的表示方式。以CE0 plane0 block2、CE0 plane1 block3、CE1 plane0 block2、CE1 plane1 block5组合存储块为例,此时其共同物理编号为2。替换存储块为CE0 plane1 block3和CE1 plane1 block5,BCD对应的编号为013,EFG对应的编号为115。尽管此时表示该组合存储块的映射关系需要占用10byte,但对于晶圆和plane数量较多的存储装置来说,依旧是比将编号全部填写的映射关系表示方式占用的数据容量要小。
类似于上述两种表示方式可知,组合块表可包括至少一组合存储块的映射表,映射表表示该组合存储块的映射关系。映射表可包括共同物理编号、至少一替换晶圆编号,至少一替换plane编号,至少一替换物理编号。其中,替换晶圆编号的个数、替换plane编号的个数与替换物理编号的个数相同,每一组替换晶圆编号、替换plane编号和替换物理编号对应该组合存储块中的一替换存储块。
进一步地,组合块表中映射表中每一对替换晶圆编号和替换plane编号对应至少一替换物理编号。图3中为一对替换晶圆编号和替换plane编号BC对应一替换物理编号D,表示了一替换存储块。如图5所示,图5为一组合存储块映射表的又一结构示意图。其中A代表共同物理编号,B代表替换晶圆编号,C代表替换plane编号,D代表替换物理编号,E代表替换物理编号。共同物理编号为组合存储块中存储块具有的数量最多的物理编号。
图5表示了组合存储块中存在两个替换存储块时的表示方式。以CE0 plane0 block2、CE1 plane1 block3、CE1 plane0 block2、CE1 plane1 block5组合存储块为例,此时其共同物理编号为2。替换存储块为CE1 plane1 block3和CE1 plane1 block5。BCD对应的编号为113,代表替换 存储块CE1 plane1 block3,BCE对应的编号为115,代表替换存储块CE1 plane1 block5。不同于图4中替换存储块的替换方式,图5中存储块选择从同一晶圆的同一plane中进行选择,从而减少映射表中替换晶圆编号以及替换plane编号的容量占用。
参照图6,图6为本申请存储装置的处理方法第三实施例的流程示意图。该方法是对步骤S22的进一步扩展。其包括以下步骤:
S31:确定好存储块的编号。
确定零散存储块的存储块编号。该编号包括晶圆编号、plane编号以及物理编号。
S32:基于预设规则对编号进行选择,确定形成组合存储块的存储块。
预设规则为形成组合存储块的存储块的编号包括晶圆编号和plane编号的所有组合方式。即每一晶圆的每一plane下包括至少一个存储块。以两晶圆,两plane为例,在CE0 plane0 block2、CE0 plane1 block3、CE1 plane0 block2、CE1 plane1 block5组合存储块中,每个晶圆的每个plane中都存在一个对应的存储块。这样可以使得组合成的组合存储块,相较于存储块聚集在某一晶圆或某一plane中的组合存储块,具有更高的读写性能。
参照图7,图7为本申请存储装置的处理方法第四实施例的流程示意图。该方法是对上述实施例的进一步扩展。其包括以下步骤:
S41:基于接收的操作命令确定操作对象存储块的逻辑编号。
接收操作命令,确定需要进行操作的逻辑块以及对应的逻辑编号。
S42:判断逻辑编号是否存在于组合块表。
判断该逻辑编号的逻辑块是组合存储块或是绑定存储块,若是组合存储块,执行步骤S43,若是绑定存储块,执行步骤S44。
S43:确定组合块表中与逻辑编号对应的存储块为目标存储块。
将组合块表中与逻辑编号相同的共同物理编号的映射表中的存储块确定为需要进行操作的目标存储块。
S44:将逻辑编号转换为物理编号以确定相应的存储块为目标存储 块。
绑定存储块的逻辑编号与其中存储块的物理编号相同,当确定操作对象为绑定存储块时,直接将逻辑编号转换为存储块的物理编号,根据物理编号确定相应的目标存储块即可。
S45:基于操作命令对目标存储块进行操作。
根据操作命令对确定的目标存储块进行读写操作。
在上述实施例中,为了便于管理以及让存储装置拥有最佳的读写性能,在确定绑定存储块以及组合存储块时,将组合存储块中各个存储块的数量设置为与绑定存储块中各个存储块的数量相同。
如图8所示,图8为本申请存储装置一实施例的结构示意图。
该存储装置包括处理器110、存储器120。
处理器110控制存储装置的操作,处理器110还可以称为CPU(Central Processing Unit,中央处理单元)。处理器110可能是一种集成电路芯片,具有信号序列的处理能力。处理器110还可以是通用处理器、数字信号序列处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器120存储指令和程序数据。
处理器110连接存储器120执行指令以实现本申请存储装置的处理方法的任一实施例及可能的组合所提供的方法。
如图9所示,图9为本申请计算机可读存储装置一实施例的结构示意图。
本申请可读存储装置一实施例包括存储器210,存储器210存储有程序数据,该程序数据被执行时实现本申请存储装置的处理方法任一实施例及可能的组合所提供的方法。
存储器210可以包括U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟等可以存储程序指令的介质,或者也可以为存储有该程序指令的服务 器,该服务器可将存储的程序指令发送给其他设备运行,或者也可以自运行该存储的程序指令。
综上所述,本申请通过对存储装置中的存储块好快情况进行确定,从而确定出坏存储块的物理编号。而与坏存储块的物理编号相同的其他的好存储块是不能进行绑定的,进一步地能够确定进行绑定成大的逻辑块的好存储块以及不能进行绑定的好存储块。将能够绑定的好存储块进行绑定,而不能绑定的好存储块进行组合形成组合块以进行使用,从而将不可使用的好存储块重新变成能够使用的存储块,增大了存储装置的可用容量,提高了存储装置的量产良率。
在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述其他实施方式中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分 步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
- 一种存储装置的处理方法,其特征在于,所述方法包括:确定所述存储装置中存储块的好坏情况;若物理编号相同的所有存储块均为好存储块,则将物理编号相同的所有好存储块,绑定形成绑定存储块;将所述存储装置除所述绑定存储块之外的剩余好存储块,组合形成组合存储块。
- 根据权利要求1所述的方法,其特征在于,所述方法还包括:生成所述绑定存储块的逻辑块表,其中,所述绑定存储块的逻辑编号与所述绑定存储块的所述物理编号相同;生成所述组合存储块的组合块表;根据接收的操作命令、所述逻辑块表、所述组合块表确定目标存储块;其中,所述绑定存储块的逻辑编号与所述组合存储块的逻辑编号不同,以所述根据接收的操作命令和所述逻辑编号确定目标存储块。
- 根据权利要求2所述的方法,其特征在于,所述根据接收的操作命令、所述逻辑块表、所述组合块表确定目标存储块包括:基于所述接收的操作命令确定操作对象存储块的逻辑编号;判断所述逻辑编号是否存在于所述组合块表;若是,确定所述组合块表中与所述逻辑编号对应的存储块为所述目标存储块;若否,将所述逻辑编号转换为所述物理编号以确定相应的存储块为所述目标存储块;基于所述操作命令对所述目标存储块进行操作。
- 根据权利要求2所述的方法,其特征在于,所述组合块表包括至少一所述组合存储块的映射表,每一所述组合存储块的映射表包括共同物理编号、至少一替换晶圆编号、至少一替换plane编号、至少一替换物理编号。
- 根据权利要求4所述的方法,其特征在于,所述组合存储块的映射表中的所述替换晶圆编号、所述替换plane编号、所述替换物理编号的个数相同,其中,每一组所述替换晶圆编号、所述替换plane编号以及所述替换物理编号代表一用于替换的存储块。
- 根据权利要求4所述的方法,其特征在于,所述组合存储块的映射表中每一对所述替换晶圆编号和所述替换plane编号对应至少一所述替换物理编号。
- 根据权利要求1所述的方法,其特征在于,所述将所述存储装置除所述绑定存储块之外的剩余好存储块,组合形成组合存储块包括:确定所述好存储块的编号,所述编号包括晶圆编号、plane编号以及物理编号;基于预设规则对所述编号进行选择,确定形成所述组合存储块的存储块;其中,所述预设规则为形成所述组合存储块的存储块的所述编号包括所述晶圆编号和所述plane编号的所有组合方式。
- 根据权利要求2所述的方法,其特征在于,所述绑定存储块中的存储块的个数与所述组合存储块中的存储块的个数相同。
- 一种存储装置,其特征在于,包括存储器和处理器,所述存储器用于存储程序数据,所述处理器连接所述存储器以实现如权利要求1-8中任一项所述的方法。
- 一种计算机可读存储装置,其特征在于,存储有程序数据,能够被处理器执行,以实现如权利要求1-8中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210442511.3 | 2022-04-25 | ||
CN202210442511.3A CN116991306A (zh) | 2022-04-25 | 2022-04-25 | 存储装置的处理方法、存储装置及计算机可读存储装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023206605A1 true WO2023206605A1 (zh) | 2023-11-02 |
Family
ID=88517060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/092045 WO2023206605A1 (zh) | 2022-04-25 | 2022-05-10 | 存储装置的程序运行方法、电子设备及可读存储装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116991306A (zh) |
WO (1) | WO2023206605A1 (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090282301A1 (en) * | 2008-04-05 | 2009-11-12 | David Flynn | Apparatus, system, and method for bad block remapping |
CN101645310A (zh) * | 2008-08-05 | 2010-02-10 | 深圳市朗科科技股份有限公司 | 闪存设备、闪存管理方法及系统 |
CN106445408A (zh) * | 2016-08-31 | 2017-02-22 | 深圳芯邦科技股份有限公司 | 一种nand闪存管理方法、主机、nand闪存读写方法及nand闪存控制器 |
CN107562640A (zh) * | 2016-06-30 | 2018-01-09 | 联想(北京)有限公司 | 一种信息处理方法、固态硬盘及电子设备 |
CN108595349A (zh) * | 2017-12-28 | 2018-09-28 | 贵阳忆芯科技有限公司 | 大容量存储设备的地址转换方法与装置 |
CN112068777A (zh) * | 2020-09-03 | 2020-12-11 | 深圳市硅格半导体有限公司 | 数据存储介质的管理方法、系统、终端设备及存储介质 |
-
2022
- 2022-04-25 CN CN202210442511.3A patent/CN116991306A/zh active Pending
- 2022-05-10 WO PCT/CN2022/092045 patent/WO2023206605A1/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090282301A1 (en) * | 2008-04-05 | 2009-11-12 | David Flynn | Apparatus, system, and method for bad block remapping |
CN101645310A (zh) * | 2008-08-05 | 2010-02-10 | 深圳市朗科科技股份有限公司 | 闪存设备、闪存管理方法及系统 |
CN107562640A (zh) * | 2016-06-30 | 2018-01-09 | 联想(北京)有限公司 | 一种信息处理方法、固态硬盘及电子设备 |
CN106445408A (zh) * | 2016-08-31 | 2017-02-22 | 深圳芯邦科技股份有限公司 | 一种nand闪存管理方法、主机、nand闪存读写方法及nand闪存控制器 |
CN108595349A (zh) * | 2017-12-28 | 2018-09-28 | 贵阳忆芯科技有限公司 | 大容量存储设备的地址转换方法与装置 |
CN112068777A (zh) * | 2020-09-03 | 2020-12-11 | 深圳市硅格半导体有限公司 | 数据存储介质的管理方法、系统、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116991306A (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2010086921A1 (ja) | ストレージシステム | |
US10042576B2 (en) | Method and apparatus for compressing addresses | |
US20100191919A1 (en) | Append-based shared persistent storage | |
US9092366B2 (en) | Splitting direct memory access windows | |
WO2017041570A1 (zh) | 向缓存写入数据的方法及装置 | |
JP2013502658A (ja) | データベース動作を意識するストライピング技術 | |
US20190026225A1 (en) | Multiple chip multiprocessor cache coherence operation method and multiple chip multiprocessor | |
WO2014023000A1 (zh) | 分布式数据处理方法及装置 | |
KR20140133603A (ko) | 데이터 저장 방법 및 장치 | |
WO2021258512A1 (zh) | 数据的聚合处理装置、方法和存储介质 | |
JP5391705B2 (ja) | ストレージシステム | |
US20240241724A1 (en) | Embedding vector prefetching method and apparatus, system, and related device | |
US9104601B2 (en) | Merging direct memory access windows | |
CN107423425B (zh) | 一种对k/v格式的数据快速存储和查询方法 | |
KR102471966B1 (ko) | 스토리지 노드 기반의 키-값 스토어를 이용하는 데이터 입출력 방법 | |
WO2021232743A1 (zh) | 缓存管理方法、装置、存储介质和固态非易失存储设备 | |
WO2023206605A1 (zh) | 存储装置的程序运行方法、电子设备及可读存储装置 | |
US20240036728A1 (en) | Method and apparatus for processing data, reduction server, and mapping server | |
CN112711564B (zh) | 合并处理方法以及相关设备 | |
CN107179883B (zh) | 一种基于SSD和HDD的混合存储系统的Spark架构优化方法 | |
CN117492661A (zh) | 数据写入方法、介质、装置和计算设备 | |
WO2024001863A1 (zh) | 一种数据处理方法及相关设备 | |
WO2024055529A1 (zh) | 放置组成员选择方法、装置、设备及可读存储介质 | |
JP2015080149A (ja) | 映像記録装置及び映像記録方法 | |
EP4321981A1 (en) | Data processing method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22939447 Country of ref document: EP Kind code of ref document: A1 |