Algoritma Meratakan Haus Denyar NAND

Aug 27, 2022

Oleh kerana bilangan operasi tulis memori kilat adalah terhad, jika 100000 operasi tulis telah dilakukan pada beberapa unit, kebolehpercayaan tulis unit ini tidak dapat dijamin dan sesetengah unit mungkin gagal. Sebagai contoh, beberapa log sistem data pengurusan ditulis semula dengan kerap, manakala beberapa data fail statik hampir tidak pernah ditulis semula. Jika tidak dikawal, beberapa blok akan rosak terlebih dahulu kerana pemadaman berulang, dan beberapa blok belum ditulis semula, Untuk menyelesaikan masalah ini, operasi tulis diagihkan sama rata ke semua sel memori flash untuk membuat keseimbangan secara keseluruhan untuk mengelakkan kegagalan sel individu. Wear leveling ialah algoritma yang digunakan secara meluas untuk menyelesaikan masalah ini.

Perataan memakai adalah untuk menyediakan mekanisme pemetaan blok untuk menyebarkan kehilangan tulis antara blok yang berbeza. Ia tidak akan menyebabkan beberapa blok ditulis terlebih dahulu dan membatalkan keseluruhan cakera SSD. Sebaliknya, beberapa blok simpanan akan menggantikan blok yang gagal sebelum jangka hayat. Algoritma ini menjadikan hayat keseluruhan peranti sama dengan hayat maksimum denyar.

Secara amnya, algoritma penyimpanan fail berasaskan halaman digunakan untuk merealisasikan perataan haus. Tiada surat-menyurat satu-dengan-satu antara alamat fizikal dan alamat logik memori kilat. Apabila SSD menerima permintaan menulis data, ia tidak akan menulis mengikut urutan, tetapi mencari unit dengan tulis paling sedikit. Oleh itu, apabila memperuntukkan blok fizikal secara dinamik untuk menulis data, keutamaan yang sepadan akan diperuntukkan mengikut penggunaan setiap blok, untuk mengimbangi hayat perkhidmatan setiap sel bagi keseluruhan memori.