Pengantar SSD. Bagian 2. Antarmuka

Pengantar SSD. Bagian 2. Antarmuka

В bagian terakhir siklus "Pengantar SSD" kami berbicara tentang sejarah munculnya disk. Bagian kedua akan menceritakan tentang antarmuka untuk berinteraksi dengan drive.

Komunikasi antara prosesor dan periferal terjadi menurut konvensi yang telah ditentukan sebelumnya yang disebut antarmuka. Perjanjian ini mengatur tingkat interaksi fisik dan perangkat lunak.

Antarmuka - seperangkat cara, metode, dan aturan interaksi antara elemen sistem.

Implementasi fisik antarmuka memengaruhi parameter berikut:

  • throughput saluran komunikasi;
  • jumlah maksimum perangkat yang terhubung secara bersamaan;
  • jumlah kesalahan yang terjadi.

Antarmuka disk dibangun di atas port I/O, yang merupakan kebalikan dari I/O memori dan tidak memakan ruang di ruang alamat prosesor.

Port paralel dan serial

Menurut metode pertukaran data, port I/O dibagi menjadi dua jenis:

  • paralel;
  • konsisten.

Sesuai namanya, port paralel mengirimkan kata mesin sekaligus, yang terdiri dari beberapa bit. Port paralel adalah cara termudah untuk bertukar data, karena tidak memerlukan solusi sirkuit yang rumit. Dalam kasus yang paling sederhana, setiap bit dari kata mesin dikirim pada jalur sinyalnya sendiri, dan dua jalur sinyal layanan digunakan untuk umpan balik: Data siap и Data diterima.

Pengantar SSD. Bagian 2. Antarmuka
Port paralel, pada pandangan pertama, menskala dengan baik: lebih banyak jalur sinyal - lebih banyak bit yang ditransmisikan pada satu waktu dan, oleh karena itu, throughput yang lebih tinggi. Namun, karena bertambahnya jumlah jalur sinyal, interferensi terjadi di antara mereka, yang menyebabkan distorsi pada pesan yang dikirimkan.

Port serial adalah kebalikan dari paralel. Data dikirim sedikit demi sedikit, yang mengurangi jumlah garis sinyal, tetapi memperumit pengontrol I/O. Pengontrol pemancar menerima kata mesin pada satu waktu dan harus mengirimkan satu bit pada satu waktu, dan pengontrol penerima pada gilirannya harus menerima bit dan menyimpannya dalam urutan yang sama.

Pengantar SSD. Bagian 2. Antarmuka
Sejumlah kecil jalur sinyal memungkinkan Anda meningkatkan frekuensi pengiriman pesan tanpa gangguan.

SCSI

Pengantar SSD. Bagian 2. Antarmuka
Antarmuka Sistem Komputer Kecil (SCSI) muncul kembali pada tahun 1978 dan pada awalnya dirancang untuk menggabungkan perangkat dari berbagai profil ke dalam satu sistem. Spesifikasi SCSI-1 menyediakan koneksi hingga 8 perangkat (bersama dengan pengontrol), seperti:

  • pemindai;
  • tape drive (streamer);
  • drive optik;
  • disk drive dan perangkat lainnya.

SCSI awalnya bernama Shugart Associates System Interface (SASI), tetapi komite standar tidak akan menyetujui nama setelah perusahaan, dan setelah seharian melakukan brainstorming, nama Small Computer Systems Interface (SCSI) lahir. "Bapak" SCSI, Larry Boucher, bermaksud agar akronim tersebut diucapkan "seksi", tetapi Dal Allan baca "sсuzzy" ("katakan"). Selanjutnya, pengucapan "tell" tertanam kuat dalam standar ini.

Dalam terminologi SCSI, perangkat yang terhubung dibagi menjadi dua jenis:

  • pemrakarsa;
  • perangkat sasaran.

Inisiator mengirimkan perintah ke perangkat target, yang kemudian mengirimkan respons ke inisiator. Inisiator dan target terhubung ke bus SCSI umum, yang memiliki bandwidth 1 MB/s dalam standar SCSI-5.

Topologi "common bus" yang digunakan memberlakukan sejumlah batasan:

  • di ujung bus, diperlukan perangkat khusus - terminator;
  • bandwidth bus dibagi di antara semua perangkat;
  • Jumlah maksimum perangkat yang terhubung secara bersamaan terbatas.

Pengantar SSD. Bagian 2. Antarmuka

Perangkat di bus diidentifikasi dengan nomor unik yang disebut ID Target SCSI. Setiap unit SCSI dalam sistem diwakili oleh setidaknya satu perangkat logis, yang dialamatkan oleh nomor unik di dalam perangkat fisik. Nomor Unit Logis (LUN).

Pengantar SSD. Bagian 2. Antarmuka
Perintah di SCSI dikirim dalam bentuk blok deskripsi perintah (Command Descriptor Block, CDB), terdiri dari kode operasi dan parameter perintah. Standar menjelaskan lebih dari 200 perintah, dibagi menjadi empat kategori:

  • wajib — harus didukung oleh perangkat;
  • Opsional - dapat dilaksanakan;
  • Khusus vendor - digunakan oleh pabrikan tertentu;
  • Usang - perintah usang.

Di antara banyak perintah, hanya tiga di antaranya yang wajib untuk perangkat:

  • UNIT UJI SIAP — memeriksa kesiapan perangkat;
  • PERMINTAAN SENSE — meminta kode kesalahan dari perintah sebelumnya;
  • INQUIRY — meminta karakteristik utama perangkat.

Setelah menerima dan memproses perintah, perangkat target mengirimkan kode status ke inisiator, yang menjelaskan hasil eksekusi.

Peningkatan lebih lanjut dari SCSI (spesifikasi SCSI-2 dan Ultra SCSI) memperluas daftar perintah yang digunakan dan meningkatkan jumlah perangkat yang terhubung hingga 16, dan kecepatan pertukaran data pada bus hingga 640 MB/s. Karena SCSI adalah antarmuka paralel, peningkatan frekuensi pertukaran data dikaitkan dengan penurunan panjang kabel maksimum dan menyebabkan ketidaknyamanan dalam penggunaan.

Dimulai dengan standar Ultra-3 SCSI, dukungan untuk "hot plugging" telah muncul - menghubungkan perangkat saat daya hidup.

SSD SCSI pertama yang diketahui adalah M-Systems FFD-350, dirilis pada tahun 1995. Disk tersebut memiliki biaya tinggi dan tidak banyak digunakan.

Saat ini, SCSI paralel bukanlah antarmuka disk yang populer, tetapi kumpulan perintah masih digunakan secara aktif di antarmuka USB dan SAS.

ATA/PATA

Pengantar SSD. Bagian 2. Antarmuka
Antarmuka. ATA (Lampiran Teknologi Lanjutan), juga dikenal sebagai PATA (Parallel ATA) dikembangkan oleh Western Digital pada tahun 1986. Nama pemasaran untuk standar IDE (Eng. Integrated Drive Electronics - "elektronik yang terpasang di dalam drive") menekankan inovasi penting: pengontrol drive diintegrasikan ke dalam drive, dan bukan pada papan ekspansi terpisah.

Keputusan untuk menempatkan pengontrol di dalam drive menyelesaikan beberapa masalah sekaligus. Pertama, jarak dari drive ke pengontrol berkurang, yang berdampak positif pada kinerja drive. Kedua, pengontrol bawaan "diasah" hanya untuk jenis drive tertentu dan, karenanya, lebih murah.

Pengantar SSD. Bagian 2. Antarmuka
ATA, seperti SCSI, menggunakan metode I/O paralel, yang tercermin dalam kabel yang digunakan. Menghubungkan drive menggunakan antarmuka IDE memerlukan kabel 40-inti, juga disebut sebagai kabel pipih. Spesifikasi yang lebih baru menggunakan stub 80-kawat, lebih dari setengahnya adalah ground loop untuk mengurangi interferensi pada frekuensi tinggi.

Ada dua hingga empat konektor pada kabel ATA, salah satunya terhubung ke motherboard, dan sisanya ke drive. Saat menghubungkan dua perangkat dalam satu loop, salah satunya harus dikonfigurasi sebagai Menguasai, dan yang kedua sebagai Budak. Perangkat ketiga hanya dapat dihubungkan dalam mode read-only.

Pengantar SSD. Bagian 2. Antarmuka
Posisi pelompat menentukan peran perangkat tertentu. Istilah Master dan Slave dalam kaitannya dengan perangkat tidak sepenuhnya benar, karena dalam kaitannya dengan pengontrol, semua perangkat yang terhubung adalah Slave.

Inovasi khusus pada ATA-3 adalah tampilannya Pemantauan Diri, Teknologi Analisis dan Pelaporan (SMART). Lima perusahaan (IBM, Seagate, Quantum, Conner, dan Western Digital) telah bergabung dan menstandarkan teknologi penilaian kesehatan hard disk.

Dukungan untuk solid state drive telah ada sejak standar versi 1998, dirilis pada tahun 33.3. Versi standar ini memberikan kecepatan transfer data hingga XNUMX MB/s.

Standar mengedepankan persyaratan ketat untuk kabel ATA:

  • bulu harus rata;
  • panjang kereta maksimum 18 inci (45.7 sentimeter).

Kereta pendek dan lebar tidak nyaman dan mengganggu pendinginan. Semakin sulit untuk meningkatkan frekuensi transmisi dengan setiap versi standar berikutnya, dan ATA-7 memecahkan masalah secara radikal: antarmuka paralel diganti dengan antarmuka serial. Setelah itu, ATA memperoleh kata Paralel dan dikenal sebagai PATA, dan versi ketujuh dari standar menerima nama yang berbeda - Serial ATA. Penomoran versi SATA dimulai dari satu.

SATA

Pengantar SSD. Bagian 2. Antarmuka
Standar Serial ATA (SATA) diperkenalkan pada 7 Januari 2003 dan mengatasi masalah pendahulunya dengan perubahan berikut:

  • port paralel diganti dengan serial;
  • kabel lebar 80-kawat diganti dengan 7-kawat;
  • topologi "common bus" telah diganti dengan koneksi "point-to-point".

Meskipun SATA 1.0 (SATA/150, 150 MB/dtk) sedikit lebih cepat daripada ATA-6 (UltraDMA/130, 130 MB/dtk), perpindahan ke komunikasi serial adalah "mengatur dasar" untuk kecepatan.

Enam belas jalur sinyal untuk transmisi data dalam ATA diganti dengan dua pasang bengkok: satu untuk transmisi, yang kedua untuk penerimaan. Konektor SATA dirancang agar lebih tahan terhadap beberapa penyambungan ulang, dan spesifikasi SATA 1.0 memungkinkan hot plugging.

Beberapa pin pada drive lebih pendek dari yang lainnya. Ini dilakukan untuk mendukung "pertukaran panas" (Hot Swap). Selama proses penggantian, perangkat "kehilangan" dan "menemukan" garis dalam urutan yang telah ditentukan.

Sedikit lebih dari setahun kemudian, pada bulan April 2004, versi kedua dari spesifikasi SATA dirilis. Selain akselerasi hingga 3 Gb / s, teknologi SATA 2.0 diperkenalkan Antrian Perintah Asli (NCQ). Perangkat dengan dukungan NCQ dapat secara mandiri mengatur urutan eksekusi perintah yang masuk untuk mencapai performa maksimal.

Pengantar SSD. Bagian 2. Antarmuka
Tiga tahun berikutnya, Kelompok Kerja SATA bekerja untuk meningkatkan spesifikasi yang ada, dan versi 2.6 memperkenalkan konektor Slimline dan micro SATA (uSATA) yang ringkas. Konektor ini adalah versi yang lebih kecil dari konektor SATA asli dan dirancang untuk drive optis dan drive kecil di laptop.

Sementara SATA generasi kedua memiliki bandwidth yang cukup untuk HDD, SSD menuntut lebih banyak. Pada Mei 2009, versi ketiga dari spesifikasi SATA dirilis dengan peningkatan bandwidth menjadi 6 Gb / s.

Pengantar SSD. Bagian 2. Antarmuka
Perhatian khusus diberikan pada solid state drive dalam edisi SATA 3.1. Konektor Mini-SATA (mSATA) telah muncul, dirancang untuk menghubungkan solid-state drive di laptop. Tidak seperti Slimline dan uSATA, konektor baru ini terlihat seperti PCIe Mini, meskipun tidak kompatibel secara elektrik dengan PCIe. Selain konektor baru, SATA 3.1 membanggakan kemampuan untuk mengantri perintah TRIM dengan perintah baca dan tulis.

Perintah TRIM memberi tahu SSD tentang blok data yang tidak membawa muatan. Sebelum SATA 3.1, perintah ini akan membersihkan cache dan menangguhkan operasi I/O, diikuti dengan perintah TRIM. Pendekatan ini menurunkan kinerja disk selama operasi penghapusan.

Spesifikasi SATA tidak mengikuti pertumbuhan cepat dalam kecepatan akses untuk SSD, yang menyebabkan kompromi pada tahun 2013 yang disebut SATA Express dalam standar SATA 3.2. Alih-alih menggandakan bandwidth SATA lagi, para pengembang telah menggunakan bus PCIe yang banyak digunakan, yang kecepatannya melebihi 6 Gb / s. Drive dengan dukungan SATA Express telah memperoleh faktor bentuknya sendiri yang disebut M.2.

SAS

Pengantar SSD. Bagian 2. Antarmuka
Standar SCSI, "bersaing" dengan ATA, juga tidak berhenti dan hanya setahun setelah kemunculan Serial ATA, pada tahun 2004, ia terlahir kembali menjadi antarmuka serial. Nama antarmuka baru adalah SCSI Terlampir Serial (SA).

Meskipun SAS mewarisi set perintah SCSI, perubahannya signifikan:

  • antarmuka serial;
  • kabel 29-kawat dengan catu daya;
  • koneksi titik ke titik

Terminologi SCSI juga telah diwariskan. Pengontrol masih disebut inisiator, dan perangkat yang terhubung disebut target. Semua perangkat target dan inisiator membentuk domain SAS. Di SAS, bandwidth koneksi tidak bergantung pada jumlah perangkat di domain, karena setiap perangkat menggunakan saluran khusus sendiri.

Jumlah maksimum perangkat yang terhubung secara bersamaan dalam domain SAS, menurut spesifikasi, melebihi 16 ribu, dan alih-alih ID SCSI, pengidentifikasi digunakan untuk mengatasi Nama Dunia Luas (WWN).

WWN adalah pengidentifikasi unik sepanjang 16 byte, mirip dengan alamat MAC untuk perangkat SAS.

Pengantar SSD. Bagian 2. Antarmuka
Terlepas dari kesamaan antara konektor SAS dan SATA, standar ini tidak sepenuhnya kompatibel. Namun, drive SATA dapat dihubungkan ke konektor SAS, tetapi tidak sebaliknya. Kompatibilitas antara drive SATA dan domain SAS dipastikan menggunakan SATA Tunneling Protocol (STP).

Versi pertama standar SAS-1 memiliki bandwidth 3 Gb / s, dan yang paling modern, SAS-4, telah meningkatkan angka ini sebanyak 7 kali: 22,5 Gb / s.

PCIe

Pengantar SSD. Bagian 2. Antarmuka
Peripheral Component Interconnect Express (PCI Express, PCIe) adalah antarmuka serial untuk transfer data, yang muncul pada tahun 2002. Pengembangan dimulai oleh Intel, dan kemudian dipindahkan ke organisasi khusus - Kelompok Minat Khusus PCI.

Antarmuka serial PCIe tidak terkecuali dan menjadi kelanjutan logis dari PCI paralel, yang dirancang untuk menghubungkan kartu ekspansi.

PCI Express sangat berbeda dari SATA dan SAS. Antarmuka PCIe memiliki jumlah jalur yang bervariasi. Jumlah garis sama dengan kekuatan dua dan berkisar dari 1 hingga 16.

Istilah "jalur" di PCIe tidak merujuk ke jalur sinyal tertentu, tetapi ke tautan komunikasi dupleks penuh terpisah yang terdiri dari jalur sinyal berikut:

  • terima+ dan terima-;
  • transmisi+ dan transmisi-;
  • empat kabel ground.

Jumlah jalur PCIe secara langsung memengaruhi bandwidth maksimum koneksi. Standar PCI Express 4.0 saat ini memungkinkan Anda mencapai 1.9 GB / dtk pada satu baris, dan 31.5 GB / dtk saat menggunakan 16 baris.

Pengantar SSD. Bagian 2. Antarmuka
"Nafsu makan" solid-state drive tumbuh dengan sangat cepat. Baik SATA maupun SAS belum dapat meningkatkan bandwidth mereka untuk mengimbangi SSD, yang menyebabkan diperkenalkannya SSD yang terhubung dengan PCIe.

Meskipun kartu Add-In PCIe disekrup, PCIe dapat ditukar dengan panas. Pin pendek PRSNT (Bahasa Inggris hadir - sekarang) pastikan kartu terpasang sepenuhnya di slot.

Solid state drive yang terhubung melalui PCIe diatur oleh standar terpisah Spesifikasi Antarmuka Pengontrol Host Memori Non-Volatile dan diwujudkan dalam berbagai faktor bentuk, tetapi kita akan membicarakannya di bagian selanjutnya.

Drive Jarak Jauh

Saat membuat gudang data besar, diperlukan protokol yang memungkinkan Anda menghubungkan drive yang terletak di luar server. Solusi pertama di bidang ini adalah SCSI Internet (iSCSI), dikembangkan oleh IBM dan Cisco pada tahun 1998.

Ide di balik protokol iSCSI sederhana: perintah SCSI "dibungkus" ke dalam paket TCP/IP dan dikirim ke jaringan. Terlepas dari koneksi jarak jauh, ini memberikan ilusi kepada klien bahwa drive terhubung secara lokal. Storage Area Network (SAN), berdasarkan iSCSI, dapat dibangun pada infrastruktur jaringan yang sudah ada. Penggunaan iSCSI secara signifikan mengurangi biaya pengorganisasian SAN.

iSCSI memiliki opsi "premium" - Protokol Saluran Serat (FCP). SAN menggunakan FCP dibangun di atas jalur komunikasi serat optik khusus. Pendekatan ini membutuhkan peralatan jaringan optik tambahan, tetapi stabil dan throughput tinggi.

Ada banyak protokol untuk mengirimkan perintah SCSI melalui jaringan komputer. Namun, hanya ada satu standar yang menyelesaikan masalah sebaliknya dan memungkinkan Anda mengirim paket IP melalui bus SCSI - IP melalui SCSI.

Sebagian besar protokol SAN menggunakan set perintah SCSI untuk mengelola drive, tetapi ada pengecualian, seperti yang sederhana ATA melalui Ethernet (AOE). Protokol AoE mengirimkan perintah ATA dalam paket Ethernet, tetapi drive muncul sebagai SCSI di sistem.

Dengan munculnya drive NVM Express, protokol iSCSI dan FCP tidak lagi memenuhi persyaratan SSD yang berkembang pesat. Dua solusi muncul:

  • penghapusan bus PCI Express di luar server;
  • pembuatan protokol NVMe melalui Fabrics.

Menghapus bus PCIe menciptakan perangkat keras switching yang rumit tetapi tidak mengubah protokol.

Protokol NVMe over Fabrics telah menjadi alternatif yang baik untuk iSCSI dan FCP. NVMe-oF menggunakan tautan serat optik dan kumpulan perintah NVM Express.

DDR-T

Pengantar SSD. Bagian 2. Antarmuka
Standar iSCSI dan NVMe-oF memecahkan masalah menghubungkan drive jarak jauh sebagai yang lokal, sementara Intel mengambil jalan lain dan membawa drive lokal sedekat mungkin ke prosesor. Pilihan jatuh pada slot DIMM yang terhubung dengan RAM. Bandwidth maksimum DDR4 adalah 25 GB/dtk, yang jauh lebih cepat daripada bus PCIe. Beginilah Intel® Optane™ DC Persistent Memory SSD lahir.

Protokol diciptakan untuk menghubungkan drive ke slot DIMM DDR-T, kompatibel secara fisik dan elektrik dengan DDR4, tetapi membutuhkan pengontrol khusus yang melihat perbedaan antara bilah memori dan drive. Kecepatan akses ke drive kurang dari RAM, tetapi lebih dari NVMe.

DDR-T hanya tersedia dengan prosesor generasi Intel® Cascade Lake atau lebih baru.

Kesimpulan

Hampir semua antarmuka telah berkembang jauh dari transmisi data serial ke paralel. Kecepatan SSD meroket, kemarin SSD membuat penasaran, dan hari ini NVMe tidak lagi mengejutkan.

Di laboratorium kami Lab Selectel Anda dapat menguji drive SSD dan NVMe sendiri.

Hanya pengguna terdaftar yang dapat berpartisipasi dalam survei. Masuk, silakan.

Akankah drive NVMe menggantikan SSD klasik dalam waktu dekat?

  • 55.5%Ya100

  • 44.4%No80

180 pengguna memilih. 28 pengguna abstain.

Sumber: www.habr.com

Tambah komentar