Komponen apa dari SSD NVMe yang menandai kinerjanya?

By | December 7, 2021

Salah satu istilah yang mengacu pada kinerja SSD NVMe yang paling sering Anda dengar dalam beberapa bulan terakhir adalah SLC Cache. Itulah sebabnya kami telah menyiapkan artikel ini untuk Anda sehingga Anda dapat memahami cara kerjanya dan apa manfaatnya bagi kinerja solid-state drive kami yang berkinerja tinggi.

Penyimpanan data berbasis teknologi NAND Flash telah menghasilkan perubahan paradigma di berbagai sektor komputasi, dari kartu memori untuk perangkat genggam ke  SSD NVMe  di PC. Justru dalam kasus terakhir bahwa salah satu hambatan historis dalam sejarah telah dihilangkan dengan tidak memiliki batasan baik dalam latensi akses dan bandwidth hard drive tradisional, namun, tidak ada teknologi sempurna yang berkinerja 100% dan selalu ada elemen yang membebaninya, memaksa para insinyur harus menemukan dan menerapkan solusi.

Flash NAND dan sel memori

Memori Flash NAND adalah jenis NVRAM atau RAM non-volatile, ini berarti bahwa operasinya sama dengan RAM konvensional, tetapi dengan perbedaan bahwa datanya tidak hilang ketika sistem berhenti menerima daya. Trade-off untuk memiliki kemampuan ini adalah memiliki jumlah memori yang terbatas dalam siklus hidupnya. Meski kelebihan berupa performa dalam hal mengakses storage sepadan, tidak sia-sia, setiap sistem komputer hanya secepat bagian paling lambatnya, yang biasanya storage, meninggalkannya.

Setiap bit memori dalam memori RAM disimpan dalam apa yang disebut sel memori dan dalam memori Flash NAND pertama yang digunakan untuk penyimpanan SSD, satu bit per sel digunakan, yang membuat penyimpanan menjadi sangat mahal. Solusinya? Bahwa setiap sel dapat menyimpan data 2 bit (  MLC  ), 3 bit (  TLC  ) atau hingga 4 bit (  QLC  ). Masalah tambahan? Semakin banyak bit per sel, semakin cepat mereka terdegradasi dan oleh karena itu kurang bermanfaat. Ingatlah hal ini karena ini adalah dasar untuk memahami SLC Cache.

Sel TLC dan QLC tidak hanya menurun dalam durasi

Setelah Anda mencapai titik ini, banyak dari Anda akan memiliki gagasan di kepala Anda bahwa memori Flash NAND dari tipe MLC, TLC dan QLC memiliki kapasitas penyimpanan yang lebih besar, meskipun durasinya lebih sedikit, tetapi bandwidth semuanya sama dan oleh karena itu jenis sel tidak bervariasi kinerjanya. Baiklah, izinkan kami memberi tahu Anda bahwa berita buruknya tidak berakhir di sana, tetapi kecepatan aksesnya juga menurun.

Ketika CPU membuat permintaan untuk akses ke alamat memori di NVMe SSD, itu diterima oleh pengontrol flash yang akan mencari data di memori untuk mengirimkannya melalui antarmuka PCI Express atau SATA, tergantung mana yang Anda gunakan. unit, tetapi pengontrol flash mengakses chip NVMe unit secara langsung untuk memanipulasi datanya dan tidak melakukannya melalui antarmuka yang telah kami sebutkan.

Cara menyimpan data di memori Flash NAND adalah melalui perubahan tegangan, memori SLC hanya membutuhkan 1 tegangan, MLC membutuhkan  3  , tetapi TLC menjadi  7  dan jika kita pergi ke QLC maka menjadi  15  . Nah, semakin tinggi angkanya, semakin lama waktu yang dibutuhkan untuk melakukan operasi baca dan tulis. Dan kapan ini mulai menjadi masalah? Nah, dari memori TLC dan jika Anda melihat jumlah unit NVMe SSD di toko, Anda akan melihat bahwa mereka semua menggunakan sel ini setidaknya hari ini.

Solusinya: SLC cache

Hal pertama yang perlu diingat adalah bahwa cache SLC tidak sama dengan cache DRAM yang juga ada di beberapa SSD NVMe, karena kita tidak berbicara tentang memori volatil yang berada di antara pengontrol flash dan antarmuka PCI. Ekspresikan hal yang sama, karena cache SLC juga ada di unit DRAM-Less. Secara umum, meskipun ada pengecualian yang akan kita lihat nanti, di dalam setiap chip NVMe ada dua jenis memori Flash NAND:

  • Memori TLC atau QLC untuk penyimpanan data
  • Memori SLC yang jauh lebih kecil yang berfungsi sebagai cache.

Hal pertama yang harus kita pahami adalah bahwa cache tidak lebih dari memori yang lebih dekat ke prosesor dan oleh karena itu dengan latensi lebih rendah yang menyimpan data untuk sementara. Jika kami meninjau apa yang telah kami katakan kepada Anda, kami memiliki premis berikut:

  • Sel SLC memiliki umur yang jauh lebih lama daripada TLC dan bahkan lebih lama dari QLC, sehingga membutuhkan waktu lebih lama untuk terdegradasi.
  • Kecepatan akses sel SLC jauh lebih tinggi.

Jadi, solusinya adalah agar data sementara dibuang ke memori SLC, yang berfungsi sebagai cache buffer sehingga mekanisme penyalinan data kemudian memodifikasi alamat memori di TLC.

kinerja cache SLC

Kita sampai pada bagian yang paling penting, cache SLC memiliki ukuran yang tetap dan ini berarti jika kita menggunakannya untuk mengirim atau menerima data kecil, kinerjanya akan tetap terjaga, tetapi jika misalnya kita ingin membuat salinan data secara berurutan. dalam bentuk blok data yang sangat besar segera setelah SLC penuh kinerjanya akan turun.

Itulah sebabnya, terlepas dari kenyataan bahwa kita dapat memiliki dua SSD NVMe di tangan kita dengan penyimpanan yang sama, antarmuka akses, dan bahkan jenis sel, yang secara praktis sama, mereka mungkin memiliki kinerja yang sama sekali berbeda. Alasannya? Jelas cache SLC yang bisa berbeda ukurannya.

Cache SLC tidak hanya digunakan untuk menyimpan data dengan akses berurutan, tetapi juga acak dan harus diperhitungkan bahwa program saat mengakses informasi melakukannya dengan rekursi tinggi dan dalam blok informasi yang dibatasi.

Jenis cache SLC

Ada dua cara untuk mengelola cache SLC, yang akan bergantung pada algoritme untuk ini yang telah diterapkan oleh pabrikan di pengontrol flash. Sebaliknya, ini mengacu pada seberapa banyak ruang di dalamnya yang dapat dialokasikan untuk penyimpanan sementara.

  • Dalam cache statis, ruang penyimpanan tetap dan tidak dapat bervariasi ukurannya.
  • Dalam cache dinamis, ukuran yang dialokasikan adalah variabel.

Bagaimana cache dinamis dimungkinkan jika jumlah sel SLC diperbaiki? Tangkapannya adalah menggunakan sel NVMe TLC seolah-olah mereka adalah SLC, yaitu, membuat mereka menyimpan satu bit di masing-masing alih-alih 3. Jadi ada beberapa chip NVMe yang mengalokasikan kembali bagian penyimpanan sebagai cache.

Keuntungan dari cache dinamis adalah bahwa ukuran cache SLC tidak habis, tetapi ada risiko bahwa semakin banyak sel TLC tidak lagi digunakan untuk penyimpanan, mempengaruhi kapasitas keseluruhan untuk menyimpan data. Untuk alasan ini, sebagian besar sistem cache SLC dinamis menggunakan sistem yang membatasi ukuran maksimum ini melalui firmware.