/SSD & Nand Flash

SSD & Nand Flash

‫إن الفكرة و المكونات وراء الـ ‫‪(solid-state drives‬‬) SSD‬ليست بجديدة على الإطلق بل أنه تم تصنيع ‪ SSD‬منذ التسعينات, و لكن الجديد الآن‬ ‫أنه يتم حاليا تصنيعها على نطاق أكبر و تستهدف نسبة أكثر من المستخدمين، إذا لماذا الآن؟ كان ذلك بعد أن عرضت شركة‬ أبل جهازها الكمبيوتر المحمول الصغير للغاية ‪ Apple Air‬و زودته بـ ‪ SSD‬كوسيلة تخزين و ذلك لأكبر ميزة له و هو‬ ‫صغر حجمه و كان هذا على حساب تكلفته العالية و من هنا انطلقت هوجة تصنيع الـ ‪ SSD‬بمساحات تناسب إستخدامها كوسيط‬ ‫أساسى لتخزين البيانات‬.

‫أولا و لكى نعرف الفارق الجديد فى ‪ SSD‬و كيف تختلف عن نظيرها الـ ‪ HDD‬يجب معرفة كيفية عمل و تكوين كل منهما:‬
‫ً‬
‫-تكوين الهارد ديسك:‬

1

‫يتكون الهارد ديسك من أقراص معدنيه ممغنطة (‪ (Platters‬و رؤوس القراءة و موتور لتحريك الأقراص. يتم تقسيم وجهى‬ ‫كل قرص الى ‪ Sectors‬لتكون هى وحدة التخزين الأساسية و تكون مساحتها 512 بايت لتخزين البيانات زائد عليها بيانات‬ ‫اخرى يستخدمها المتحكم فى الهارد ديسك لتحديد رقم الـ ‪ Sector‬و للتأكد من سلامة البيانات و يترك مساحة كافية للفصل‬ ‫بين كل ‪ Sector‬و آخر و لذلك الـ ‪ Sector‬يخزن فعليا أكثر من 512 بايت.‬
‫ً‬
‫لكى نعرف كيف يعمل الهارد ديسك لقراءة ‪ Sector‬معين فلنفرض أنه يريد أن يصل من الـ 1Sector‬كما فى الصورة‬
‫الى 2 فإن الموتور يحرك الأقراص لكى تصل 2 تحت الرؤوس و فى نفس الوقت يجد المتحكم فى الهارد انه يجب تحريك‬ ‫الرؤوس فى الـ ‪ Track‬الذى تقع فيه الـ ‪ Sector‬و يتم القراءة من الرأس المناسبة.‬
‫هذا الوقت الذى يستغرقه الـ ‪ HDD‬للوصول لـ ‪ Sector‬معينة لقرائتها يسمى بالـ ‪ Latency Time‬و يعتبر من أكبر‬
‫معوقات زيادة سرعة الهارد ديسك و ذلك لأنه يعتمد على حركة ميكانيكية و التى لن تصل الى سرعة المكونات الإلكترونية‬ ‫التى تستخدمه .‬

‫-الآن سوف نعرف تكوين الـ ‪:SSD‬‬

2

‫كما هو واضح من الصورة فإن الـ‪ NAND Memory‬هى وسيط لتخزين الأساسى للـ ‪ SSD‬و لكن يمكن إستخدام الـ ‪ NOR Memory ‬كذلك و لكن هناك فارق كبير بين تركيب الاثنين:‬

3

‫-فى الـ ‪ NOR‬يتم توصبل كل وحدة تخزين على حدى الى المتحكم (‪ (Controller‬و لذلك يتميز هذا النوع بسرعة القراءة و‬‫الكتابة العشوائية فيفضل إستخدامه فى تخزين البرامج التى تحتاج إلى سرعة كبيرة فى الحصول على البيانات, و لكن هذه‬ ‫الطريقة فى التركيب يعيبها كثرة التوصيلات لكل خلية/وحدة تخزين مما يمنع إمكانية تكوين أحجام كبير مكثفة منها و إرتفاع‬ ‫تكلفتها و عدم صلاحيتها لتخزين حجم كبير من البيانات و كان هذا النوع المستخدم فى أوائل تصنيع ال‪.SSDs‬‬

‫- أما فى الـ ‪ NAND‬فإن الخلايا يتم توصيلها مع بعضها كل مجموعة بحجم محدد تسمى ‪ Page‬و هى أصغر وحدة للبرمجة‬ ‫فى الـ ‪ NAND Flash‬و يساعد ذلك على زيادة القراءة المتعاقبة(‪ (Sequential reading‬و قلة التوصيلات فيمكن‬ ‫صناعتها بكثافة عالية و قلة تكلفتها.‬

‫-الآن ندخل أعمق فى تكوين ال‪: NAND Flash‬‬

4

‫تتكون الوحدة من الـ ‪من  NAND Flash‬مجموعة من الـ ‪ Blocks‬حيث كل واحدة تتكون من مجموعة من الـ ‪ Pages‬فوق‬ ‫بعضها و كل ‪ Page‬‬‫تتكون من مجموعة من الخلايا. تكون مساحة الـ ‪ Block‬فى الغالب 2112 بايت حيث يستخدم منها‬ ‫2048 لتخزين البيانات و 64 بايت لبيانات مساعدة للمتحكم تماما مثل الـ ‪ HDD‬لمعالجة الأخطاء.‬

‬‫-الآن نتعرف على كيفية عمل الأوامر الأساسية على الذاكرة ‪: NAND

‫عملية القراءة تتم على أساس قراءة الـ ‪ Page‬كأصغر وحدة فيتم تحميل الـ ‪ Page‬التى يريد المستخدم قراءتها إلى الـ ‪Data‬‬ ‫‪ Register‬و بعدها إرسالها.‬
‫عملية الكتابة مثل القراءة تتم بالـ ‪ Page‬بعد أن يتم كتابنها فى الـ ‪ Data register‬يتم تخزينها فى الـ ‪ Page‬المناسبة.‬
‫المسح هو من أكثرعيوب الـ ‪ NAND Flash‬حيث أنه يجب مسح ‪ Block‬بأكمله.‬
‫-اذا الذاكرة تتكون من ‪Blocks‬ و الـ ‪ Block‬يتكون من ‪ Pages‬و الـ ‪ Page‬تتكون من ‪، Cells‬فما هى هذه الخلايا ؟‬
‫هذه الخلية ما هى إلا ترنزيستر ‪: MOSFET With a Floating Gate‬‬5

‫‪ MOSFET‬هو شبه موصل يعمل كمفتاح إلكترونى .‬
‫النوع منه ذو الـ ‪ Floating Gate‬يمكنه تخزين شحنه فى الـ ‪ Floating Gate‬بحبس الإلكترونات به حتى بعد إنقطاع‬
‫مصدر الكهرباء، و لذلك يجعل الـ ‪ NAND Memory‬ذاكرة ‪ . Nonvolatile
‬من الخواص التى يجب معرفتها:
– ‫‪ Tunneling‬و هو عندما تعبر إلكترونات عبر العازل الى/من الـ ‪ P‬من/الى الـ ‪ Floating Gate‬و هذا هو أساس عملية‬
‫المسح و الكتابة.
– ‪ : Threshold Voltage‬هو الجهد الذى إذا تم تطبيقه على الـ ‪ Gate‬يسمح للتيار للعبور من الـ ‫‪ Source‬الى الـ ‪.Drain‬‬

‫الآن عند القراءة لمعرفة إذا كان هناك شحنة فى الـ ‪، Floating Gate‬فإنه يتم تطبيق جهد ‪ Threhold‬المعروف إذا لم‬
‫يوجد شحنة فإذا عبر التيار إلى الـ ‪ Drain‬فأنه لا يوجد شحنة فى الـ ‪ Floating Gate‬أما إذا لم تمر فأنه توجد شحنه و ذلك‬ ‫لأن وجودها يزيد من الجهد اللازم لمرور التيار.‬
‫عند الكتابة يتم تحريك إلكترونات إلى الـ ‪ Floating gate‬من الـ ‪ P-sup‬و ذلك بتطبيق جهد كبير على الـ ‪Gate(Vg) t‬‬
‫فتنتقل الشحنة و هذه هى ظاهرة ال‪.Tunneling‬‬
‫عند المسح يحدث العكس، يتم تطبيق شحنة على الـ ‪ P-sup‬فتنتقل الإلكترونات إليها من الـ ‪.Floating Gate‬‬

‫-الآن يمكننا التعرف على طريقة يمكننا بها زيادة كمية البيانات التى يمكنها أن تخزنها الخلية الواحدة:‬

6

‫عرفنا أن حسب الجهد على الـ ‪ Gate‬يمكن معرفة إذا كانت هناك شحنة على الـ ‪ Floating gate‬أم لا، فإذا وجدت شحنة‬ ‫تتغير الـ ‪ Treshold Voltage‬التى يمر فيها التيار إلى الـ ‪ ,Drain‬فتكون بقيمة1 ‪ Vth‬بدل من الـ 0 ‪ Vth‬الأصلية الطبقة‬ ‫على الـ ‪ , Gate‬إذا استطعنا زيادة كمية الشحنة على الـ ‪ Floating gate‬يزيد الجهد الى 2 ‪ Vth‬هكذا 3 Vth‬‬.

‫يمكن الإستفادة من هذا إذا وفرنا مصادر طاقة ذات جهد مختلف , و عند الكتابة إذا أردنا كتابة 2 نزود الـ ‪ P-sup‬ بمصدر‬ ‫جهد أعلى من الذى كنا نستخدمه سابقا فى الكتابة، فتكون شحنة الـ ‪ Floating gate‬أعلى و هكذا لكتابة 3.‬
‫ً‬
‫عند القراءة، يتم تزويد جهد على الـ ‪ Gate‬أعلى من 2Vth‬إذا لم يمر تيار فإنه يوجد 3 و إذا مرت فيوجد شحنة أقل من 3 أو‬ ‫0 فنقلل الجهد على الـ ‪ Gate‬حتى يمر تيار و بذلك يم تحديد المخزن حسب الـ ‪ Threshold Voltages‬المحددة.‬
‫تسمى هذه الطريقة : (‪ Multi-Level Cell(MLC‬و الصريقة التقليدية بـ (‪ Single-Level Cell(SLC‬يعيب الـ ‫‪ MLC‬الكثير من الأخطاء تحدث نتيجة تغير الشحنة لسبب ما من على الـ ‪ Floating gate‬و زيادة كمية التحليل على‬ ‫البيانات و لكنها تستخدم لزيادة كمية البيانات التى يمكن أن تستوعبها نفس الكمية من الخلايا, و لهذا فهى مناسبة للمستخدميين‬
‫العاديين أما للشركات فيفضل إسنخدام الـ ‪.SLC‬‬

‫الآن و بعد معرفة كيفية عمل الـ ‪ SSD‬و تكوينه, نستطيع معرفة مميزاته عن الـ ‪ HDD‬و ذلك أنه لا يوجد ‪Latency time‬‬
‫تقريبا فعملية القراءة تتم فى 2 نانو ثانية و الكتابة فى 2 ميلى ثانية بينما المسح فى 300 ميلى ثانية طبعًا هذه الإحصائيات‬ ‫مختلفة حسب نوع المصنع و ستقل إن شاء الله فى المستقبل، و رغم كل هذا إذا قرأت مقارنات بين ال‪ HDD‬و ال‪ SSD‬على‬ ‫الإنترنت ستجد أن ال‪ HDD‬قد يتفوق فى أغلب الأحيان على مناظره , و لكن الـ ‪ HDD‬قديم نسبيا و لقى كمية كبيرة من‬ ‫التطوير التى جعلته بهذه المكانة و لكن أتوقع انه سوف يصل الى حد لا يستطيع زيادة سرعته, و ذلك كما ذكرنا لإعتماده على‬ ‫العمليات الميكانيكية, بينما ال‪ SSD‬مازال جديدا فى السوق و سوف يحتاج الى الكثير من التطوير.‬

7

‫و أختم بنظرة مستقبلية لى من وجهة نظر مبرمج, فتخيل أن سرعة ال‪ SSD‬تزيد فى السنيين القادمة لتجعلك تتجاهل الفارق‬ ‫ما بين سرعة الرام و وسيط التخزين الأساسى, فلا يوجد و قت لتحميل البيانات و تقل مشاكل قلة مساحة الرام بالنسبة للعمليات‬ ‫الكبيرة.‬