อัลกอริทึมการปรับระดับการสึกหรอของแฟลช NAND
Aug 27, 2022
เนื่องจากจำนวนของการดำเนินการเขียนของหน่วยความจำแฟลชมีจำกัด หากมีการดำเนินการเขียน 100000 ในบางหน่วย ความน่าเชื่อถือในการเขียนของหน่วยเหล่านี้ไม่สามารถรับประกันได้ และบางหน่วยอาจล้มเหลว ตัวอย่างเช่น บันทึกระบบข้อมูลการจัดการบางรายการถูกเขียนใหม่บ่อยครั้ง ในขณะที่ข้อมูลไฟล์สแตติกบางรายการแทบไม่เคยเขียนใหม่เลย หากไม่ควบคุม บางบล็อกจะเสียหายล่วงหน้าเนื่องจากการลบซ้ำ และบางบล็อกยังไม่ได้เขียนใหม่ เพื่อแก้ปัญหานี้ การดำเนินการเขียนจะกระจายไปยังเซลล์หน่วยความจำแฟลชทั้งหมดเท่าๆ กัน เพื่อสร้างสมดุลโดยรวมเพื่อหลีกเลี่ยง ความล้มเหลวของแต่ละเซลล์ การปรับระดับการสึกหรอเป็นอัลกอริทึมที่ใช้กันอย่างแพร่หลายในการแก้ปัญหานี้
การปรับระดับการสึกหรอคือการจัดเตรียมกลไกการทำแผนที่บล็อกเพื่อกระจายการสูญเสียการเขียนระหว่างบล็อกต่างๆ จะไม่ทำให้บางบล็อคถูกเขียนลงก่อนและทำให้ดิสก์ SSD ทั้งหมดใช้การไม่ได้ บล็อกที่สงวนไว้บางส่วนจะแทนที่บล็อกที่ล้มเหลวก่อนอายุที่คาดไว้ อัลกอริธึมนี้ทำให้อายุการใช้งานของอุปกรณ์ทั้งหมดเท่ากับอายุการใช้งานสูงสุดของแฟลช
โดยทั่วไป อัลกอริธึมการจัดเก็บไฟล์แบบเพจจะใช้เพื่อให้ทราบถึงการปรับระดับการสึกหรอ ไม่มีการติดต่อระหว่างที่อยู่จริงและที่อยู่ตรรกะของหน่วยความจำแฟลช เมื่อ SSD ได้รับคำขอเขียนข้อมูล จะไม่เขียนตามลำดับ แต่จะค้นหาหน่วยที่มีการเขียนน้อยที่สุด ดังนั้น เมื่อจัดสรรบล็อกทางกายภาพแบบไดนามิกสำหรับการเขียนข้อมูล ลำดับความสำคัญที่เกี่ยวข้องจะได้รับการจัดสรรตามการใช้งานของแต่ละบล็อก เพื่อให้อายุการใช้งานของแต่ละเซลล์ของหน่วยความจำทั้งหมดสมดุล







