Method for realizing hidden partition of solid state hard disk and solid state hard disk and reading and writing method thereof
By dividing the storage array of the solid-state drive into multiple storage units and establishing firmware for each channel, physical isolation storage of data is achieved, solving the problem that existing hidden partition technology cannot achieve physical isolation, and ensuring the security and integrity of data.
Patent Information
- Application Number
- CN202411347433.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-24
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2044-09-24
AI Technical Summary
Existing hidden partition technology cannot achieve physical isolation of data, resulting in data stored on hidden partitions being no more secure than ordinary partitions when the hard drive is damaged or attacked by viruses, and its deployment is limited by the number of storage interfaces.
The storage array of the solid-state drive is divided into multiple storage units, and different firmware is established for each channel. The storage units and firmware connected to each channel form different sub-physical solid-state drive partitions. Each channel can only respond to one read or write command at a time, and the physical isolation storage of data is achieved through firmware.
It achieves physical isolation storage of general data and important sensitive data, ensuring data integrity and security, and avoiding additional storage costs and deployment restrictions.
Smart Images

Figure CN119336254B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to, but is not limited to, the technical field of storage systems, and specifically to a method for implementing a hidden partition of a solid-state hard disk and a solid-state hard disk and a reading and writing method thereof. Background Art
[0002] Hiding a partition means hiding it from the File Explorer, rendering it invisible. This prevents other users or programs from accidentally accessing or accessing the data in the partition, thus protecting the integrity and security of the data. Hidden partitions can also be used to store sensitive or private files, ensuring they remain hidden from easy discovery.
[0003] Typically, a full hard drive can be logically divided into several different partitions. Using software or partition configuration, some partitions can be hidden from the host computer, creating hidden partitions. Hidden partition technology can only protect the integrity and security of user data to a certain extent, preventing data leakage or unauthorized access. Hidden partitions merely logically partition a hard drive and do not physically isolate the data stored on regular partitions from the important data stored on the hidden partitions, nor do they physically store them on different storage media. If the hard drive storage media becomes damaged or attacked by a virus, the data on the hidden partitions will not be any more secure than the data on the regular partitions.
[0004] To address the problem of hidden partitions not being able to achieve physical isolation, user data can be stored in completely different hard drives based on their importance. However, this approach not only increases storage costs, but is also easily limited by the number of storage interfaces on the host during actual deployment, resulting in restricted system deployment. Summary of the Invention
[0005] The present application provides a method for implementing hidden partitions in a solid-state drive and a solid-state drive and a reading and writing method thereof, which can realize physical isolation storage of data and ensure the integrity and security of stored data.
[0006] An embodiment of the present invention provides a method for implementing a hidden partition on a solid-state drive, comprising:
[0007] Divide the storage array of the solid-state drive into multiple storage units, and establish a connection between each channel of the solid-state drive master controller and a different storage unit;
[0008] Firmware belonging to the current channel is established for each channel, so that the multiple sub-physical solid-state drives composed of the storage units connected to each channel and the firmware corresponding to the channel are used as different partitions; wherein each sub-physical solid-state drive responds to read and write commands through the firmware of the channel to which it is connected, and only the firmware of one of the channels responds to read and write commands at the same time.
[0009] In an exemplary embodiment, a channel connects one or more storage units.
[0010] In one exemplary embodiment, the storage unit includes a NAND flash memory;
[0011] The NAND flash memory includes any one or any combination of the following: a single-layer cell type, a triple-layer cell type, and a quad-layer cell type.
[0012] In an exemplary embodiment, when programming the firmware on the channel, the identifiers of all storage units connected to all remaining channels are forcibly assigned to be invalid.
[0013] In one exemplary embodiment, the present invention further comprises:
[0014] After the firmware on the channel is written, the firmware on the channel is written into a storage unit connected to the channel.
[0015] In an exemplary embodiment, the size of the storage space corresponding to each of the sub-physical solid-state hard disks is the size of the storage area of the storage unit connected to the channel corresponding to the sub-physical solid-state hard disk.
[0016] The present application also provides a method for reading and writing a solid-state hard disk, which is based on the method for implementing a hidden partition of a solid-state hard disk according to any one of claims 1 to 6 and includes:
[0017] When the system application reads data from or writes data to the solid-state drive, the read and write operations between the system application and the storage unit connected to the current channel are completed through the firmware of the channel belonging to the current sub-physical solid-state drive.
[0018] In one exemplary embodiment, the present invention further comprises:
[0019] When the system is powered on, the solid-state drive master controller selects a corresponding channel to load corresponding firmware and run it according to the set conditions to complete the switching of the sub-physical solid-state drive.
[0020] In an exemplary embodiment, a general purpose input and output interface (GPIO) is used to implement the switching of the sub-physical solid-state drive to select a channel corresponding to the setting condition to load the corresponding firmware for execution.
[0021] An embodiment of the present application further provides a computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions are used to execute any of the above-mentioned methods for implementing a hidden partition of a solid-state hard disk and / or any of the above-mentioned methods for reading and writing a solid-state hard disk.
[0022] An embodiment of the present application further provides a computer device comprising a memory and a processor, wherein the memory stores the following instructions executable by the processor: for executing the steps of any of the above-described methods for implementing a hidden partition of a solid-state hard drive, and / or the steps of any of the above-described methods for reading and writing a solid-state hard drive.
[0023] The embodiment of the present application further provides a solid-state hard disk, comprising: a solid-state hard disk master, at least one communication interface, and multiple physical sub-solid-state hard disks as different partitions; wherein,
[0024] The SSD master controller is used to receive and parse commands from the host through the communication interface to implement read and write control of the storage unit corresponding to the sub-physical SSD; each channel equipped with the SSD master controller is connected to a different storage unit;
[0025] Each sub-physical solid-state drive includes a channel, a storage unit connected to the channel and the firmware corresponding to the channel, which is used to receive commands from the solid-state drive master and respond to read and write commands through the firmware of the channels to which they are connected, and only the firmware of one of the channels responds to read and write commands at the same time.
[0026] In an exemplary embodiment, the solid-state drive controller has multiple channels, and each channel is connected to one or more different storage units.
[0027] In an exemplary embodiment, the sub-physical solid-state drive is also used to complete the read and write operations between the system application and the storage unit connected to the current channel through the firmware of the channel belonging to the current sub-physical solid-state drive when the system application reads data from the solid-state drive or writes data to the solid-state drive.
[0028] In one exemplary embodiment, the storage unit includes a NAND flash memory;
[0029] The NAND flash memory includes any one or any combination of the following: a single-layer cell type, a triple-layer cell type, and a quad-layer cell type.
[0030] The method for implementing hidden partitions on a solid-state drive provided by the embodiments of the present application physically divides a solid-state drive into multiple sub-physical solid-state drives. Each sub-physical solid-state drive has complete solid-state drive functionality and can independently respond to read and write commands from the host to complete data storage operations. Users can switch the solid-state drive to different sub-physical solid-state drive modes based on actual data storage needs and store different data on different sub-physical solid-state drives, thereby achieving physical isolation storage of different data, such as ordinary data and important sensitive data, and ensuring the integrity and security of the stored data.
[0031] Other features and advantages of the present invention will be described in the following description, and in part will become apparent from the description, or will be understood by practicing the present invention. The purposes and other advantages of the present invention can be realized and obtained by the structures particularly pointed out in the description, claims and drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] The accompanying drawings are used to provide a further understanding of the technical solution of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present application and do not constitute a limitation on the technical solution of the present application.
[0033] Figure 1 This is a flow chart of a method for implementing a hidden partition on a solid-state drive according to an embodiment of the present application;
[0034] Figure 2 This is a schematic diagram of an embodiment of implementing a hidden partition on a solid-state drive in an embodiment of the present application;
[0035] Figure 3 Schematic diagram of the composition structure of the solid-state drive in an embodiment of the present application. DETAILED DESCRIPTION
[0036] To make the purpose, technical solutions and advantages of this application more clear, the embodiments of this application will be described in detail below with reference to the accompanying drawings. It should be noted that, unless there is a conflict, the embodiments and features in the embodiments of this application can be combined with each other in any way.
[0037] To facilitate understanding of the present application, the present application will be described more fully below with reference to the accompanying drawings. The accompanying drawings provide embodiments of the present application. However, the present application may be implemented in many different forms and is not limited to the embodiments described herein. Rather, these embodiments are provided to make the disclosure of the present application more thorough and comprehensive.
[0038] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application pertains. The terms used herein in the specification of this application are for the purpose of describing specific embodiments only and are not intended to limit this application.
[0039] It is understood that the terms "first" and "second" used in this application are used for descriptive purposes only and should not be understood to indicate or imply relative importance or implicitly specify the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of such features. In the description of this application, "plurality" means at least two, for example, two, three, etc., unless otherwise specifically defined.
[0040] It can be understood that the “connection” in the following embodiments should be understood as “electrical connection”, “communication connection”, etc. if there is transmission of electrical signals or data between the connected circuits, modules, units, etc.
[0041] As used herein, the singular forms "a," "an," and "the" may also include the plural forms, unless the context clearly indicates otherwise. It should also be understood that the terms "include," "comprising," "having," and the like specify the presence of stated features, integers, steps, operations, components, parts, or combinations thereof, but do not preclude the presence or addition of one or more other features, integers, steps, operations, components, parts, or combinations thereof. Furthermore, the term "and / or" as used in this specification includes any and all combinations of the relevant listed items.
[0042] As a new type of storage device, solid-state drives (SSDs) offer advantages over traditional mechanical hard drives, including large capacity, high reliability, fast read / write speeds, shock and drop resistance, low power consumption, and silence. Consequently, SSDs have been widely adopted in consumer PCs and enterprise servers.
[0043] The storage array of a solid-state drive (SSD) is primarily composed of multiple Nand Flash cells (Nand Flash Dies). These cells (Dies) form multiple channels and multiple banks. Each die consists of multiple blocks, and each block consists of multiple pages. Typically, the physical size of each page is 16KB.
[0044] The order of writing or reading data stored on a solid-state drive is to first determine the channel and bank of the storage array, and then determine the block and page. When a system application writes data to the solid-state drive, it accesses the storage space of the solid-state drive based on the logical block address (LBA) of the host. The firmware inside the solid-state drive needs to translate the LBA accessed by the system application into the physical page address (PPA) of the storage array, that is, to determine the channel, bank, block, and page location of the data storage. The one-to-one mapping relationship between LBA and PPA constitutes the mapping table of the logical address to the physical address of the solid-state drive. When a system application reads data from the solid-state drive, the solid-state drive firmware will search the mapping table based on the LBA, obtain the PPA, find the actual storage location of the data, and then read the data from the storage array based on the PPA and return it to the system application.
[0045] In order to physically isolate the data stored in the common partition and the important data stored in the hidden partition and store them on different storage media to ensure the integrity and security of the stored data, the embodiment of the present application provides a method for implementing a hidden partition on a solid-state drive. Figure 1 FIG. 1 is a flow chart of a method for implementing a hidden partition of a solid-state hard disk in an embodiment of the present application. Figure 1 As shown, this may include:
[0046] Step 100: Divide the storage array of the solid-state drive into multiple storage units, and establish a connection between each channel of the solid-state drive master controller and a different storage unit.
[0047] Figure 2 This is a schematic diagram of an embodiment of implementing a hidden partition of a solid state drive in an embodiment of the present application. Figure 2 As shown, Figure 2 The solid-state hard disk 21 is connected to the host through a communication interface. In one embodiment, the communication interface can be, but is not limited to, USB, SATA, PCIe, or a network port.
[0048] like Figure 2 As shown, the SSD controller 22 is primarily used to parse host commands and implement read and write control of storage units, such as Nand Flash Dies. The SSD controller typically has multiple channels, each connected to a different storage unit. The storage units within each channel can concurrently perform read and write operations. In one embodiment, a channel can connect to one or more storage units.
[0049] like Figure 2 As shown, the storage unit 23 of the solid-state drive, such as a Nand Flash Die, is mainly used to receive commands from the solid-state drive controller 22 to complete data read and write operations. In one embodiment, the storage unit 23 can be, but is not limited to, a single-level cell (SLC), a triple-level cell (TLC), a quad-level cell (QLC), or a mixture of the two, determined by the number of storage bits per storage cell. Figure 2 In the example, the storage unit 23 of the solid state drive includes four Nand Flashes, Nand Flash 231, Nand Flash 232, Nand Flash 233 and Nand Flash 234. In this embodiment, these four Nand Flashes are connected to different channels on the main controller ( Figure 2For example, the first channel channel_0 is connected to Nand Flash 231 , the second channel channel_1 is connected to Nand Flash 232 , the third channel channel_2 is connected to Nand Flash 233 , and the fourth channel channel_3 is connected to Nand Flash 234 .
[0050] exist Figure 2 In the illustrated embodiment, step 100 divides the storage array of the solid-state drive into four storage units, namely Nand Flash 231, Nand Flash 232, Nand Flash 233, and Nand Flash 234. Each Nand Flash is connected to the first channel channel_0 to the fourth channel channel_3 on the solid-state drive controller 22.
[0051] Step 101: For each channel, a firmware belonging to the current channel is established respectively, so that the multiple sub-physical solid-state hard disks composed of the storage units connected to each channel and the firmware corresponding to the channel serve as different partitions; wherein, each sub-physical solid-state hard disk responds to read and write commands through the firmware of the channel to which it is connected, and at the same time, only the firmware of one of the channels responds to read and write commands.
[0052] In an exemplary embodiment, firmware is written for each channel, so that each channel has its own dedicated firmware. The firmware is mainly responsible for controlling and managing the code of the NAND Flash operations on each channel.
[0053] When the system powers on, the SSD sends a "Read Nand Flash ID" command to all channels and banks to confirm which channels and banks contain Nand Flash memory. This allows the firmware in each channel to identify the NAND Flash memory it controls. In other words, during the system power-on initialization process, the firmware learns which channels and banks contain valid NAND Flash memory and performs operations based on this information. This initialization process provides the foundational data for the firmware to write. Using this information, the firmware ensures that its operations are limited to the device on the current channel.
[0054] In one embodiment, Figure 2For example, when programming the firmware on the first channel, channel_0, the Nand Flash identifiers (Nand Flash IDs) of all Nand Flashes connected to the second, third, and fourth channels, channel_2, and channel_3, are forcibly assigned to invalid values, such as 0. At this point, the firmware on the first channel, channel_0, can only scan the Nand Flash connected to channel_0, namely Nand Flash 231. When programming the firmware on the second channel, channel_1, the Nand Flash IDs of all Nand Flashes connected to channel_0, third, and fourth channels, channel_2, and channel_3, are forcibly assigned to 0. At this point, the firmware on the second channel, channel_1, can only scan the Nand Flash connected to channel_1, namely Nand Flash 232. Programming firmware on the remaining channels is similar to the above description and is not repeated here.
[0055] In an exemplary embodiment, Figure 2 For example, after completing the firmware programming on the first channel channel_0, the firmware on the first channel channel_0 is written to the Nand Flash connected to the first channel channel_0, that is, Nand Flash 231, such as bank0, block0; similarly, the firmware on the remaining channels are written to their respective connected Nand Flashes.
[0056] By step 101, the system is powered on, which means that an independent firmware program is written for each channel in the solid state drive. Figure 2For example, when programming the firmware on the first channel, channel_0, through step 101, the solid-state drive controller 22, the Nand Flash 231 connected to the first channel, channel_0, on the solid-state drive controller 22, and the firmware corresponding to the first channel, channel_0, form the first sub-physical solid-state drive. Similarly, when programming the firmware on the second channel, channel_1, through step 101, the solid-state drive controller 22, the Nand Flash 232 connected to the second channel, channel_1, on the solid-state drive controller 22, and the firmware corresponding to the second channel, channel_1, form the second sub-physical solid-state drive. When programming the firmware on the third channel, channel_2, through step 101, the solid-state drive controller 22, the Nand Flash 233 connected to the third channel, channel_2, on the solid-state drive controller 22, and the firmware corresponding to the third channel, channel_2, form the third sub-physical solid-state drive. To program the firmware on the fourth channel channel_3, through step 101, the solid state drive controller 22, the Nand Flash 234 connected to the fourth channel channel_3 on the solid state drive controller 22, and the firmware corresponding to the fourth channel channel_3 form a fourth sub-physical solid state drive.
[0057] In the embodiment of the present application, each sub-physical SSD is physically isolated. Each sub-physical SSD acts as a partition physically isolated from the other sub-physical SSDs. Each sub-physical SSD responds to host read and write commands based on the firmware on its own channel. However, they cannot respond to host commands simultaneously. In other words, only the firmware on one channel is running at any given time.
[0058] In the embodiment of the present application, the storage space size corresponding to each sub-physical solid-state drive is the storage area size of the Nand Flash connected to each channel.
[0059] In the embodiment of the present application, the firmware of each sub-physical solid-state drive only manages the Nand Flash connected to its corresponding current channel and can only send read and write commands to the Nand Flash connected to the current channel.
[0060] In an exemplary embodiment, the present application also provides a method for reading and writing a solid-state drive, which is based on a solid-state drive established by the method for implementing a hidden partition on a solid-state drive provided by the present application, further comprising:
[0061] Step 102: When the system application reads data from the SSD or writes data to the SSD, the firmware of the channel belonging to the current sub-physical SSD completes the read and write operations between the system application and the storage unit connected to the current channel.
[0062] In one exemplary embodiment, when a system application writes data to a solid-state drive (SSD), for example, to the NAND Flash controlled by channel 0, the firmware on channel 0 translates the LBA accessed by the system application into the storage array's PPA. It then sends a write command to the NAND Flash connected to channel 0, such as Nand Flash 231. The write command address is the PPA, and the data the host wants to write to the hard drive is written to Nand Flash 231. At this point, the firmware on channel 0 can only send commands to Nand Flash 231 to read data.
[0063] In one exemplary embodiment, when a system application reads data from a solid-state drive (SSD), for example, from the NAND Flash memory controlled by channel 0, the firmware on channel 0 searches a mapping table based on the LBA to obtain the PPA, representing the actual location of the data in the storage array. Simultaneously, the firmware on channel 0 sends a read command to the NAND Flash memory connected to channel 0, such as Nand Flash 231. The read command address is the PPA. The firmware on channel 0 then returns the data read from the storage array to the system application. At this point, the firmware on channel 0 can only send commands to Nand Flash 231 to write data.
[0064] The method for implementing hidden partitions on a solid-state drive provided in an embodiment of the present application physically divides a solid-state drive into multiple sub-physical solid-state drives. Each sub-physical solid-state drive has complete solid-state drive functionality and can independently respond to read and write commands from the host to complete data storage operations. Users can switch the solid-state drive to different sub-physical solid-state drive modes based on actual data storage needs and store different data on different sub-physical solid-state drives, thereby achieving physically isolated storage of different data, such as general data and important sensitive data, ensuring the integrity and security of the stored data.
[0065] In an exemplary embodiment, after the solid-state drive is physically divided into multiple sub-physical solid-state drives, and the firmware corresponding to each channel has been written into, for example, bank 0, block 0 of the Nand Flash connected to the current channel, before writing data to or reading data from the solid-state drive, the method for implementing hidden partitions in the solid-state drive provided in an embodiment of the present application may further include:
[0066] When the system is powered on, the SSD controller selects the corresponding channel and loads the corresponding firmware according to the set conditions to complete the switching of the sub-physical SSD.
[0067] In an exemplary embodiment, a general purpose input / output (GPIO) interface may be used to implement switching of the sub-physical solid-state drives to select a channel corresponding to a set condition and load the corresponding firmware to run.
[0068] In one embodiment, GPIO1 and GPIO2 can be selected as the sub-physical SSD switching selection pins. As shown in Table 1, different GPIO1 and GPIO2 combination values (level values) correspond to different sub-physical SSDs. According to Table 1, the user can set the GPIO1 and GPIO2 combination values when the system is powered on, and select which channel's firmware to load (or boot) based on the GPIO pin level status.
[0069] GPIO 1 value GPIO 2 value Select the loaded firmware 0 0 Firmware on the first channel channel_0 0 1 Firmware on the second channel channel_1 1 0 Firmware on the third channel channel_2 1 1 Firmware on the fourth channel channel_3
[0070] Table 1
[0071] In an embodiment of the present application, ordinary data and important sensitive data can be stored in different sub-physical solid-state hard drives respectively.
[0072] In one embodiment, when a user needs to store normal data, they can set the setting conditions and set the values of GPIO1 and GPIO2 to correspond to the sub-physical solid-state drive for normal data storage. For example, when GPIO1=0 and GPIO2=0, the firmware of the channel where the sub-physical solid-state drive for normal data storage is located is selected for loading, such as the firmware on the first channel channel_0. Then, when the system is powered on, the solid-state drive master controller will load the firmware on the first channel channel_0 and run it. In this way, the host can identify the first sub-physical solid-state drive with the Nand Flash connected to the first channel channel_0, such as Nand Flash 231, as storage space. The host can then send read and write commands to the first sub-physical solid-state drive to access normal data.
[0073] In one embodiment, when a user needs to store important sensitive data, the host is first shut down, that is, the solid-state drive is powered off, and GPIO1 and GPIO2 on the solid-state drive are selected to another set of values corresponding to the sub-physical solid-state drive where the important sensitive data is stored. For example, GPIO1 can be set to 0, and GPIO2 can be set to 1. The firmware of the channel where the sub-physical solid-state drive where ordinary data is stored is loaded, such as the firmware on the second channel channel_1. Then, when the system is powered on, the solid-state drive master controller will load the firmware on the second channel channel_1 and run it. In this way, the host can identify the second sub-physical solid-state drive with the Nand Flash connected to the second channel channel_1, such as Nand Flash 232, as the storage space. The host can send read and write commands to the second sub-physical solid-state drive to achieve access to important sensitive data.
[0074] As can be seen from the embodiments of the present application, the user's ordinary data and important sensitive data are stored on different sub-physical solid-state drives, namely Nand Flash 231 and Nand Flash 232, respectively, achieving physical isolation. In this way, when a user accesses ordinary data, the user cannot access the storage medium storing important sensitive data through host read and write commands. This achieves physical isolation of sensitive data and ordinary data, ensuring the integrity and security of important sensitive data.
[0075] The present application also provides a computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions are used to execute any of the above methods for implementing a hidden partition of a solid-state hard disk.
[0076] An embodiment of the present disclosure further provides a computer device, including a memory; and a processor connected to the memory, wherein the processor executes the steps of the method for implementing a hidden partition of a solid-state drive as described in any of the preceding items based on instructions stored in the memory.
[0077] Figure 3 This is a schematic diagram of the structure of the solid state drive in the embodiment of the present application. Figure 3 As shown, it at least includes: a solid-state hard disk master, at least one communication interface, and multiple sub-physical solid-state hard disks; wherein,
[0078] The solid-state drive master controller is used to receive and parse commands from the host through the communication interface to implement read and write control of the storage unit corresponding to the sub-physical solid-state drive; each channel equipped with the solid-state drive master controller is connected to a different storage unit.
[0079] In one embodiment, the solid-state drive controller has multiple channels, and each channel is connected to one or more different storage units.
[0080] Each sub-physical solid-state drive includes a channel, a storage unit connected to the channel and the firmware corresponding to the channel, which is used to receive commands from the solid-state drive master and respond to read and write commands through the firmware of the channels to which they are connected, and only the firmware of one of the channels responds to read and write commands at the same time.
[0081] In an exemplary embodiment, a sub-physical solid-state drive is used to complete the read and write operations between the system application and the storage unit connected to the current channel through the firmware of the channel belonging to the current sub-physical solid-state drive when the system application reads data from the solid-state drive or writes data to the solid-state drive.
[0082] The solid-state drive provided in the embodiments of the present application physically divides a solid-state drive into multiple sub-physical solid-state drives. Each sub-physical solid-state drive has complete solid-state drive functionality and can independently respond to read and write commands from the host to complete data storage operations. Users can switch the solid-state drive to different sub-physical solid-state drive modes based on actual data storage needs, storing different data on different sub-physical solid-state drives. This allows for physically isolated storage of different data, such as general data and important sensitive data, ensuring the integrity and security of the stored data.
[0083] In an exemplary embodiment, the solid-state drive master controller is further configured to: upon power-on, select a corresponding channel according to set conditions to load a corresponding firmware to run, so as to complete the switching of the sub-physical solid-state drive.
[0084] Although the embodiments disclosed in this application are as described above, the contents described are merely embodiments adopted to facilitate understanding of this application and are not intended to limit this application. Any person skilled in the art to which this application belongs may make any modifications and changes in the form and details of the implementation without departing from the spirit and scope disclosed in this application. However, the scope of patent protection of this application shall still be based on the scope defined by the attached claims.
Claims
1. A method for realizing hidden partition of solid state hard disk, characterized in that: include: Divide the storage array of the solid-state drive into multiple storage units, and establish a connection between each channel of the solid-state drive master controller and a different storage unit; Firmware belonging to the current channel is established for each channel, so that the multiple sub-physical solid-state drives composed of the storage units connected to each channel and the firmware corresponding to the channel are used as different partitions; wherein each sub-physical solid-state drive responds to read and write commands through the firmware of the channel to which it is connected, and only the firmware of one of the channels responds to read and write commands at the same time.
2. The method according to claim 1, wherein The channel connects one or more storage units.
3. The method according to claim 1, wherein The storage unit includes a NAND flash memory; The NAND flash memory includes any one or any combination of the following: a single-layer cell type, a triple-layer cell type, and a quad-layer cell type.
4. The method according to any one of claims 1 to 3, wherein: When programming the firmware on one of the channels, the identifiers of all storage units connected to all the remaining channels are forcibly assigned to be invalid.
5. The method according to claim 4, further comprising: After the firmware is written, the firmware on the channel is written into the storage unit connected to the channel.
6. The method according to claim 2, wherein: The size of the storage space corresponding to each of the sub-physical solid-state hard disks is the size of the storage area of the storage unit connected to the channel corresponding to the sub-physical solid-state hard disk.
7. A method for reading and writing a solid state hard disk, characterized in that: A solid-state hard disk established based on the method for realizing a hidden partition of a solid-state hard disk according to any one of claims 1 to 6, comprising: When the system application reads data from or writes data to the solid-state drive, the read and write operations between the system application and the storage unit connected to the current channel are completed through the firmware of the channel belonging to the current sub-physical solid-state drive.
8. The reading and writing method according to claim 7, further comprising: When the system is powered on, the solid-state drive master controller selects a corresponding channel to load corresponding firmware and run it according to the set conditions to complete the switching of the sub-physical solid-state drive.
9. The reading and writing method according to claim 8, wherein: The switching of the sub-physical solid-state hard disk is realized by using a general purpose input and output interface GPIO to select a channel corresponding to the setting condition to load the corresponding firmware for operation.
10. A computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions are used to execute the method for implementing a hidden partition of a solid-state drive according to any one of claims 1 to 6, and / or the method for reading and writing a solid-state drive according to any one of claims 7 to 9.
11. A computer device comprising a memory and a processor, wherein: The memory stores the following instructions that can be executed by the processor: used to execute the steps of the method for implementing a hidden partition of a solid-state hard disk as described in any one of claims 1-6, and / or the steps of the method for reading and writing a solid-state hard disk as described in any one of claims 7-9.
12. A solid state hard disk, characterized in that: include: A solid-state hard drive master controller, at least one communication interface, and multiple physical solid-state hard drives with different partitions; wherein, The SSD master controller is used to receive and parse commands from the host through the communication interface to implement read and write control of the storage unit corresponding to the sub-physical SSD; each channel equipped with the SSD master controller is connected to a different storage unit; Each sub-physical solid-state drive includes a channel, a storage unit connected to the channel and the firmware corresponding to the channel, which is used to receive commands from the solid-state drive master and respond to read and write commands through the firmware of the channels to which they are connected, and only the firmware of one of the channels responds to read and write commands at the same time.
13. The solid-state drive according to claim 12, wherein: The solid state drive master controller has multiple channels, and each channel is connected to one or more storage units.
14. The solid-state drive according to claim 12 or 13, wherein the sub-physical solid-state drive is further used to complete the read and write operations between the system application and the storage unit connected to the current channel through the firmware of the channel belonging to the current sub-physical solid-state drive when the system application reads data from the solid-state drive or writes data to the solid-state drive.
15. The solid-state drive according to claim 12 or 13, wherein: The storage unit includes a NAND flash memory; The NAND flash memory includes any one or any combination of the following: a single-layer cell type, a triple-layer cell type, and a quad-layer cell type.
Citation Information
Patent Citations
Method for improving stability in use of large-capacity solid state disk
CN102122531A
Data storage device and data processing system including the data storage device
CN106951180A