ssd 512gb interpreted SSDs.
m2 SSD OEM SSD 512GB Prefix:
SSD ssd 512gb, the so-called solid-state storage SSD 512gb, is a semiconductor flash memory (NAND FLASH) as the media of storage devices, and HDD (traditional mechanical hard disk) in performance, power consumption, reliability and other aspects have a very large advantage, today we will take a look at it.”
, Basic architecture
C, cache chip (DRAM, optional, some only SRAM)
D. Printed circuit board part
E, Interface Section (SATa/SAS/PCIe)
F, firmware FW, which plays a very important role in the SSD, is responsible for scheduling data from the interface side to the media side, embedded core flash media life and reliability management scheduling algorithms, and other SSD algorithms.
From the above elaboration, we can roughly understand that in solid-state storage, there are three core parts:
2. South Dvrush section
3. The company
So what are the major flash vendors on the market today? To summarize:
3, modern Hynix
5. Western Digital and SanDisk
In the current flash memory market, basically monopolized by the above manufacturers, in the domestic storage enterprises, mainly Yangtze River Storage (NANDflash), Changxin Storage (DRAM, only D4 in 2019), Fuzhou Jinhua, but the mainstream market to buy domestic wafer manufacturers is still relatively small, in the technology accumulation is very lacking.
2. SSD performance and parameters
1. Read and write speed
A 500GB SSD can reach a continuous read and write speed of 530/330 MB/S, a random read and write speed of IOPS can reach 98000/70000, and a data access time of 0.1ms, which is very obvious than the performance optimization of HDD.
There is also a tool that can comprehensively evaluate the hardware, PCmark, this software is based on the PC-side hardware testing benchmark software, using PCmark can be a comprehensive assessment of the various factors that affect the user experience of solid-state storage, such as system startup time, file loading, file editing and other operations for comprehensive evaluation.
In the table above, we can see several key parameters:
(1) IOPS (input and output operations per second)
IOPS metrics reflect the performance of random reads and writes, that is, the number of IO requests completed by the SSD per second. Typically, it is the number of responses to read and write commands for small pieces of data, such as the size of a 4KB block. The larger the IOPS, the better.
(2) Throughput: unit MB/S, that is, the amount of data transmitted to read and write commands per second, also known as bandwidth, this parameter is generally a large block of data read and write commands, such as 512KB data block size.
2. Power consumption
For solid-state storage, the reduction in SSDA is very pronounced, and in the storage industry, power consumption is defined as follows:
First, the peak power
B. Active power
C. Idle power supply
D. Power saving power
Peak power is the so-called peak power consumption, active power is the read and write power consumption of solid-state storage, idle power is idle power consumption, power-saving power is:
First, standby power
B. Sleep power
C. Develop sleep power supply
The power consumption of devsleep is very important, and this parameter is very important for the power saving of SSDs in the sleep state of mobile phones or other consumer devices.
Then in the two major hardware parts of solid-state storage: controller and NAND, the current is disassembled, and it is found that when reading and writing to solid-state storage, most of it is flash memory consumption, followed by the master control, the main control consumes about 20%, so how to scientifically evaluate the power consumption, we can define as follows:
P/I = power/IOPS.
We define it as a PI parameter, i.e. comparing the effect of power output on performance per unit of IOPS, it is clear that the lower the PI parameter, the better.
3. The basic working principle of SSD
The basic working principle of SSD is roughly summarized as follows:
(1) The user system makes a request to the SSD from the operating system level, the file system converts the drive read and write request into the corresponding read and write and other commands that conform to the protocol, the SSD receives the command to perform the corresponding operation, and then outputs the result, and the input and output of each command are standardized by the protocol standard organization, which is a standard thing.
The input of the SSD is the command, the output is the data and command state, the SSD front end receives the user’s command request, through the internal calculation and processing logic, the output of the user’s required data and state.
As can be seen from the above figure, solid-state storage has three major functional modules:
First, the front-end interface and related protocol modules
B. Intermediate FTL layer
C, back-end and flash communication modules
The SSD front end is responsible for direct communication with the host, receiving the commands and related data sent by the host, the command is processed by the SSD, and finally handed over to the front end to return the command status or data to the host, the SSD is connected to the host through SATA and other interfaces, SAS or PCIe, etc., to achieve the corresponding ATA, SCSI and NVMe and other protocols.
4. The specific reading and writing of SSD
To read and write data:
The SSD sends a write command to the SSD on the communication interface, and the SSD receives the command and executes it, receiving the data that the host wants to write. The data is generally cached in the RAM inside the SSD, FTL will allocate a flash address for each logical block, when the amount of data reaches a certain amount, FTL will send a flash request to the backend, and then the backend will write the data in the cache to the corresponding flash space according to the write request.
But the flash memory itself can not be overwritten and written, can only be erased and then written internally, such as the data block sent by the host, it is not written to a fixed location, the SSD can allocate any possible flash space to write, so the SSD internally requires ftL. Completes the conversion or mapping of logical data blocks to flash physical space addresses.
We assume that the capacity of solid-state storage is 128GB, and the size of the logical data block is 4KB, so the SSD has a total of 128GB/4KB = 32M logical data blocks, each logical data block has a mapping, that is, each logical block has a storage location in the flash space, if the flash address size is represented by 4 bytes, then the address of storing 32M logical blocks in flash memory requires a mapping table of 32Mx4B = 128MB size.
Precisely because the SSD maintains a mapping table for logical address to physical address conversion, when the host issues a command, the SSD can read the logical data blocks as needed to find the mapping table, get the location of these logical data blocks in flash, the back end can read the corresponding data from the flash to the SSD’s internal cache space, and then the front end is responsible for returning the data to the host.
After the SSD front-end protocol and flash memory are established, the main difference is the FTL algorithm, which determines the performance, reliability, power consumption and other parameters of the SSD core.
Flash cannot be overwritten, so as user data is constantly written, flash generates garbage, and all FTL needs to do is garbage collection to free up available flash space to write user data.
In addition, flash memory has a lifespan, each flash memory block can not always write data, so in order to write the maximum amount of data, FTL must let each flash memory block balance write, which is wear balance.
FTL also realizes bad block management, read interference processing, data retention processing, error handling, and many other things, and you will also understand the working principle of FTL and SSD. m2SSD OEM 512gb