tarekforall
04-08-2011, 14:09
توضيح بشأن أقراص الحالة الصلبة بمتحكم SandForce SF-2xxx الجديد
https://dl.dropbox.com/u/4828002/SandForce 2281/Patriot-Wildfire-120GB-SSD-controller.jpg
كما تعلمون قامت شركة ساند فورس بإطلاق متحكم جديد فائق الأداء يدعم واجهة الربط الحديثة SATA 6Gb/s، وسارعت الكثير من الشركات وفي مقدمتهم شركة OCZ بتبني هذا المتحكم واصدار أقراص SSD للاستخدام المكتبي تعتمد عليه، ولكن لاحظنا أيضاً أن الشركات بدأت بإصدار نسخ متعددة تعتمد على هذا المتحكم ولكن بأداء وأسعار مختلفة.
لو نظرت مثلاً الى شركة OCZ لوجدت أنها تقدم مجموعة من الأقراص التي تعتمد على المتحكم SF-2281 وبأسعار مختلفة وتصنفها حسب الأداء، ولكن المشكلة أن الشركة تسوق لهذه الأقراص بأداء تتابعي الى حد كبير متساوي، شاهدوا الجدول التالي الذي يبين أداء الأقراص بمساحة 120 جيجابايت:
https://dl.dropbox.com/u/4828002/SandForce 2281/OCZ 120GB.jpg
شركة Corsair اتخذت المسار ذاته مع أقراص Force 3 وForce GT وغيرهما من الشركات ستسلك المسار ذاته.
الأقراص السابقة تحتوي على المتحكم نفسه ولكن ذاكرة فلاش المستخدمة والـ Firmware يختلف بين بعض هذه الأقراص وبالتالي فهي مختلفة الأداء.
تقنية DuraWrite
تقنية هامة في متحكم SandForce تجعله يقوم بضغط البيانات قبل تخزينها الى ذاكرة فلاش، مما ينتج عن ذلك سرعة كبيرة في القراءة أو الكتابة وكذلك يقلل من مساحة البيانات التي يتم كتابتها الى ذاكرة فلاش فيحافظ عليها ويزيد من عمرها الافتراضي، ولكن على الجانب الآخر قراءة أو كتابة بيانات غير قابلة للضغط يؤدي الى انخفاض متوقع في الأداء.
ONFI vs. Toggle DDR
لمعرفة كيف يختلف أداء هذه الأقراص باختلاف ذاكرة فلاش المستخدمة فلابد من معرفة بعض الأمور، فكما نعلم أن المتحكم (ويطلق عليه المعالج أيضاً) هو عقل قرص الحالة الصلبة وهو يتحكم تقريباً بكل شيء، فهو يتصل بجميع شرائح الذاكرة الموجودة بالقرص ويقوم بتقسيم هذه الشرائح الى عدة قنوات (Channels) يستطيع القراءة أو الكتابة منها بشكل متوازي مما يساهم بشكل كبير في زيادة الأداء، وكلما زادت عدد تلك القنوات زاد الأداء، ومتحكم SandForce SF-2xxx يقسم شرائح ذاكرة فلاش الى 8 قنوات، كما يتضح بالصورة التالية:
https://dl.dropbox.com/u/4828002/SandForce 2281/SF-2281.jpg
(لاحظ أن الصورة السابقة للتوضيح فقط ولكن عملياً فجميع قنوات المتحكم تكون على جهة واحدة فقط، ولذلك تجد دائماً أن جميع شرائح ذاكرة فلاش على الجهة اليمنى من المتحكم.)
لكي يتم ربط ذاكرة فلاش ببعضها أو بالمتحكم نحتاج الى معيار محدد وواجهة ربط (Interface) تستطيع القيام بذلك لكي يتم تبادل المعلومات بين تلك المكونات ولابد من دعمها من قِبَل ذاكرة فلاش ومن المتحكم. حالياً توجد واجهتان متنافستان للربط هما ONFI و Toggle DDR.
واجهة ONFI (https://onfi.org/) وهي اختصار جملة "Open NAND Flash Interface" وتعني "واجهة ربط ذاكرة فلاش مفتوحة المصدر" وهذه الواجهة مجانية، وتدعمها الكثير من الشركات على رأسها شركات انتل وميكرون وهاينكس.
https://dl.dropbox.com/u/4828002/SandForce 2281/onfi_roadmap.jpg
مر معيار ONFI بعدة نسخ، أولها كانت ONFI 1.0 ويطلق عليها أيضاً "Asynchronous NAND Interface" لأن البيانات في هذه الواجهة تنتقل في اتجاه واحد فقط (SDR) وبشكل غير متزامن وسرعة هذه الواجهة 50 MB/s، لكن تم تحديث هذه النسخة لكي تستطيع نقل البيانات في اتجاهين مختلفين (DDR) في نفس الوقت وبشكل متزامن ليطلق عليها "Synchronous DDR "Interface، والنسخة المنتشرة حالياً من هذه الواجهة هي ONFI 2.x (https://onfi.org/specifications/) وسرعة نقل البيانات في تلك الواجهة 166 MB/s و 200 MB/s، أما النسخة الأحدث القادمة ONFI 3.0 ستكون سرعتها 400 MB/s.
واجهة ربط Toggle DDR NAND Interface (https://www.samsung.com/global/business/semiconductor/products/flash/Products_Toggle_DDR_NANDFlash.html) من شركتي سامسونج وتوشيبا تستطيع نقل البيانات في اتجاهين مختلفين وبنفس الوقت أيضاً، ويوجد من هذه الواجهة نسختان الأولى هي Toggle DDR 1.0 وسرعتها 133 MB/s أما الحالية فهي Toggle DDR 2.0 وسرعتها 400 MB/s، وكما يتضح فهذه الواجهة تتقدم حالياً على واجهة ONFI في الأداء، كما أن شركة سامسونج تدّعي أنها أقل استهلاكاً للطاقة.
https://dl.dropbox.com/u/4828002/SandForce 2281/Toggle_DDR_Trend.gif
متحكم ساند فورس يدعم الواجهتان السابقتان، وأفضل الأقراص أداءً يستخدم ذاكرة فلاش من شركة توشيبا تدعم Toggle DDR وبدقة تصنيع 32 نانومتر، ثم يأتي ورائها مباشرة وليس بفارق كبير الأقراص بذاكرة فلاش ONFI Synchronous DDR Interface وبدقة تصنيع 25 نانومتر، ولكن الشركات قررت تخفيض النفقات واستخدام ذاكرة فلاش رخيصة تدعم Asynchronous NAND Interface وبدقة تصنيع 25 نانومتر، أدى استخدام النوع الأخير الى انخفاض كبير في الأداء يتضح عند تعامل القرص مع البيانات الغير قابلة للضغط (Incompressible) أو عند ملء القرص بالبيانات، وفي هاتان الحالتان نجد أن الأداء ينخفض كثيراً.
أمثلة لهذه الأقراص:
https://dl.dropbox.com/u/4828002/SandForce 2281/Interface.png
اذاً فالأقراص بمتحكم SandForce الجديد الحالية ثلاثة أنواع بالاعتماد على ذاكرة فلاش التي تستخدمها:
*الأقراص التي تستخدم ذاكرة فلاش من شركة توشيبا تدعم Toggle DDRوبدقة تصنيع 32 nm وهي الأفضل أداء والأعلى سعراً أيضاً.
*الأقراص التي تستخدم ذاكرة فلاش تدعم Synchronous DDR Interface وبدقة 25 nm وهي ممتازة الأداء أيضاً ولكنها أقل في السعر قليلاً من النوع السابق.
*الأقراص التي تستخدم ذاكرة فلاش الرخيصة Asynchronous NAND Interface وبدقة 25 nm وهي الأقل أداءً.
نظرة على أداء هذه الأقراص:
الصورتان التاليتان تبينان الفارق بين قرص OCZ Vertex 3 120GB وقرص OCZ Agility 3 120GB عند التعامل مع البيانات الغير قابلة للضغط، القرص OCZ Vertex 3 أداءه عند القراءة أكثر من ضعف أداء القرص !Agility 3، وعند الكتابة الفارق يتضاءل ولكن مازال القرص Vertex 3 أفضل في الأداء:
https://dl.dropbox.com/u/4828002/SandForce 2281/38554.png
https://dl.dropbox.com/u/4828002/SandForce 2281/38555.png
الصورة التالية تقارن بين أداء القرصان Corsair GT وCorsair Force 3 عند التعامل مع البيانات الغير قابلة للضغط:
https://dl.dropbox.com/u/4828002/SandForce 2281/Crystal-Comparison1.png
الصورة التالية توضح أداء بعض الأقراص عند ملء القرص بالبيانات، وكيف ينخفض الأداء مع مرور الوقت، مع ملاحظة أن غالبية الأقراص ينخفض أداءها عند ملئها بالبيانات ولكن بشكل متباين:
https://dl.dropbox.com/u/4828002/SandForce 2281/4219_22_owc_electra_240gb_solid_state_drive_review .png
الصورة السابقة تحتوي على القرصين OWC Electra و OCZ Agility 3 وكلاهما يحتوي ذاكرة فلاش Asynchronous NAND.
من الممكن تمييز الأقراص التي تستخدم ذاكرة فلاش الرخيصة Asynchronous NAND Interface عن طريق الاطلاع على أداءها أثناء قراءة أو كتابة البيانات الغير قابلة للضغط.
Firmware مختلف
وأخيراً فقد قررت بعض الشركات استخدام Firmware مختلف في بعض أقراصها مما يؤثر على الأداء أيضاً ومن أمثلة هذه الأقراص OCZ Solid 3 فهو يستخدم ذاكرة فلاش الرخيصة Asynchronous NAND وفي نفس الوقت يعمل بـ Firmware مختلف يؤدي الى انخفاض أكثر في الأداء عن باقي أقراص متحكم ساند فورس الجديد.
ماذا يعني هذا التوضيح؟
التوضيح السابق لا يعني أن الأقراص التي تستخدم ذاكرة فلاش Asynchronous NAND سيئة الأداء لهذا الحد، ولكنه يعني أن هناك أقراص أخرى يمكن أن تكون أفضل في الأداء وفارق السعر ليس كبيراً.
لا ينقل الموضوع بدون ذكر المصدر
https://dl.dropbox.com/u/4828002/SandForce 2281/Patriot-Wildfire-120GB-SSD-controller.jpg
كما تعلمون قامت شركة ساند فورس بإطلاق متحكم جديد فائق الأداء يدعم واجهة الربط الحديثة SATA 6Gb/s، وسارعت الكثير من الشركات وفي مقدمتهم شركة OCZ بتبني هذا المتحكم واصدار أقراص SSD للاستخدام المكتبي تعتمد عليه، ولكن لاحظنا أيضاً أن الشركات بدأت بإصدار نسخ متعددة تعتمد على هذا المتحكم ولكن بأداء وأسعار مختلفة.
لو نظرت مثلاً الى شركة OCZ لوجدت أنها تقدم مجموعة من الأقراص التي تعتمد على المتحكم SF-2281 وبأسعار مختلفة وتصنفها حسب الأداء، ولكن المشكلة أن الشركة تسوق لهذه الأقراص بأداء تتابعي الى حد كبير متساوي، شاهدوا الجدول التالي الذي يبين أداء الأقراص بمساحة 120 جيجابايت:
https://dl.dropbox.com/u/4828002/SandForce 2281/OCZ 120GB.jpg
شركة Corsair اتخذت المسار ذاته مع أقراص Force 3 وForce GT وغيرهما من الشركات ستسلك المسار ذاته.
الأقراص السابقة تحتوي على المتحكم نفسه ولكن ذاكرة فلاش المستخدمة والـ Firmware يختلف بين بعض هذه الأقراص وبالتالي فهي مختلفة الأداء.
تقنية DuraWrite
تقنية هامة في متحكم SandForce تجعله يقوم بضغط البيانات قبل تخزينها الى ذاكرة فلاش، مما ينتج عن ذلك سرعة كبيرة في القراءة أو الكتابة وكذلك يقلل من مساحة البيانات التي يتم كتابتها الى ذاكرة فلاش فيحافظ عليها ويزيد من عمرها الافتراضي، ولكن على الجانب الآخر قراءة أو كتابة بيانات غير قابلة للضغط يؤدي الى انخفاض متوقع في الأداء.
ONFI vs. Toggle DDR
لمعرفة كيف يختلف أداء هذه الأقراص باختلاف ذاكرة فلاش المستخدمة فلابد من معرفة بعض الأمور، فكما نعلم أن المتحكم (ويطلق عليه المعالج أيضاً) هو عقل قرص الحالة الصلبة وهو يتحكم تقريباً بكل شيء، فهو يتصل بجميع شرائح الذاكرة الموجودة بالقرص ويقوم بتقسيم هذه الشرائح الى عدة قنوات (Channels) يستطيع القراءة أو الكتابة منها بشكل متوازي مما يساهم بشكل كبير في زيادة الأداء، وكلما زادت عدد تلك القنوات زاد الأداء، ومتحكم SandForce SF-2xxx يقسم شرائح ذاكرة فلاش الى 8 قنوات، كما يتضح بالصورة التالية:
https://dl.dropbox.com/u/4828002/SandForce 2281/SF-2281.jpg
(لاحظ أن الصورة السابقة للتوضيح فقط ولكن عملياً فجميع قنوات المتحكم تكون على جهة واحدة فقط، ولذلك تجد دائماً أن جميع شرائح ذاكرة فلاش على الجهة اليمنى من المتحكم.)
لكي يتم ربط ذاكرة فلاش ببعضها أو بالمتحكم نحتاج الى معيار محدد وواجهة ربط (Interface) تستطيع القيام بذلك لكي يتم تبادل المعلومات بين تلك المكونات ولابد من دعمها من قِبَل ذاكرة فلاش ومن المتحكم. حالياً توجد واجهتان متنافستان للربط هما ONFI و Toggle DDR.
واجهة ONFI (https://onfi.org/) وهي اختصار جملة "Open NAND Flash Interface" وتعني "واجهة ربط ذاكرة فلاش مفتوحة المصدر" وهذه الواجهة مجانية، وتدعمها الكثير من الشركات على رأسها شركات انتل وميكرون وهاينكس.
https://dl.dropbox.com/u/4828002/SandForce 2281/onfi_roadmap.jpg
مر معيار ONFI بعدة نسخ، أولها كانت ONFI 1.0 ويطلق عليها أيضاً "Asynchronous NAND Interface" لأن البيانات في هذه الواجهة تنتقل في اتجاه واحد فقط (SDR) وبشكل غير متزامن وسرعة هذه الواجهة 50 MB/s، لكن تم تحديث هذه النسخة لكي تستطيع نقل البيانات في اتجاهين مختلفين (DDR) في نفس الوقت وبشكل متزامن ليطلق عليها "Synchronous DDR "Interface، والنسخة المنتشرة حالياً من هذه الواجهة هي ONFI 2.x (https://onfi.org/specifications/) وسرعة نقل البيانات في تلك الواجهة 166 MB/s و 200 MB/s، أما النسخة الأحدث القادمة ONFI 3.0 ستكون سرعتها 400 MB/s.
واجهة ربط Toggle DDR NAND Interface (https://www.samsung.com/global/business/semiconductor/products/flash/Products_Toggle_DDR_NANDFlash.html) من شركتي سامسونج وتوشيبا تستطيع نقل البيانات في اتجاهين مختلفين وبنفس الوقت أيضاً، ويوجد من هذه الواجهة نسختان الأولى هي Toggle DDR 1.0 وسرعتها 133 MB/s أما الحالية فهي Toggle DDR 2.0 وسرعتها 400 MB/s، وكما يتضح فهذه الواجهة تتقدم حالياً على واجهة ONFI في الأداء، كما أن شركة سامسونج تدّعي أنها أقل استهلاكاً للطاقة.
https://dl.dropbox.com/u/4828002/SandForce 2281/Toggle_DDR_Trend.gif
متحكم ساند فورس يدعم الواجهتان السابقتان، وأفضل الأقراص أداءً يستخدم ذاكرة فلاش من شركة توشيبا تدعم Toggle DDR وبدقة تصنيع 32 نانومتر، ثم يأتي ورائها مباشرة وليس بفارق كبير الأقراص بذاكرة فلاش ONFI Synchronous DDR Interface وبدقة تصنيع 25 نانومتر، ولكن الشركات قررت تخفيض النفقات واستخدام ذاكرة فلاش رخيصة تدعم Asynchronous NAND Interface وبدقة تصنيع 25 نانومتر، أدى استخدام النوع الأخير الى انخفاض كبير في الأداء يتضح عند تعامل القرص مع البيانات الغير قابلة للضغط (Incompressible) أو عند ملء القرص بالبيانات، وفي هاتان الحالتان نجد أن الأداء ينخفض كثيراً.
أمثلة لهذه الأقراص:
https://dl.dropbox.com/u/4828002/SandForce 2281/Interface.png
اذاً فالأقراص بمتحكم SandForce الجديد الحالية ثلاثة أنواع بالاعتماد على ذاكرة فلاش التي تستخدمها:
*الأقراص التي تستخدم ذاكرة فلاش من شركة توشيبا تدعم Toggle DDRوبدقة تصنيع 32 nm وهي الأفضل أداء والأعلى سعراً أيضاً.
*الأقراص التي تستخدم ذاكرة فلاش تدعم Synchronous DDR Interface وبدقة 25 nm وهي ممتازة الأداء أيضاً ولكنها أقل في السعر قليلاً من النوع السابق.
*الأقراص التي تستخدم ذاكرة فلاش الرخيصة Asynchronous NAND Interface وبدقة 25 nm وهي الأقل أداءً.
نظرة على أداء هذه الأقراص:
الصورتان التاليتان تبينان الفارق بين قرص OCZ Vertex 3 120GB وقرص OCZ Agility 3 120GB عند التعامل مع البيانات الغير قابلة للضغط، القرص OCZ Vertex 3 أداءه عند القراءة أكثر من ضعف أداء القرص !Agility 3، وعند الكتابة الفارق يتضاءل ولكن مازال القرص Vertex 3 أفضل في الأداء:
https://dl.dropbox.com/u/4828002/SandForce 2281/38554.png
https://dl.dropbox.com/u/4828002/SandForce 2281/38555.png
الصورة التالية تقارن بين أداء القرصان Corsair GT وCorsair Force 3 عند التعامل مع البيانات الغير قابلة للضغط:
https://dl.dropbox.com/u/4828002/SandForce 2281/Crystal-Comparison1.png
الصورة التالية توضح أداء بعض الأقراص عند ملء القرص بالبيانات، وكيف ينخفض الأداء مع مرور الوقت، مع ملاحظة أن غالبية الأقراص ينخفض أداءها عند ملئها بالبيانات ولكن بشكل متباين:
https://dl.dropbox.com/u/4828002/SandForce 2281/4219_22_owc_electra_240gb_solid_state_drive_review .png
الصورة السابقة تحتوي على القرصين OWC Electra و OCZ Agility 3 وكلاهما يحتوي ذاكرة فلاش Asynchronous NAND.
من الممكن تمييز الأقراص التي تستخدم ذاكرة فلاش الرخيصة Asynchronous NAND Interface عن طريق الاطلاع على أداءها أثناء قراءة أو كتابة البيانات الغير قابلة للضغط.
Firmware مختلف
وأخيراً فقد قررت بعض الشركات استخدام Firmware مختلف في بعض أقراصها مما يؤثر على الأداء أيضاً ومن أمثلة هذه الأقراص OCZ Solid 3 فهو يستخدم ذاكرة فلاش الرخيصة Asynchronous NAND وفي نفس الوقت يعمل بـ Firmware مختلف يؤدي الى انخفاض أكثر في الأداء عن باقي أقراص متحكم ساند فورس الجديد.
ماذا يعني هذا التوضيح؟
التوضيح السابق لا يعني أن الأقراص التي تستخدم ذاكرة فلاش Asynchronous NAND سيئة الأداء لهذا الحد، ولكنه يعني أن هناك أقراص أخرى يمكن أن تكون أفضل في الأداء وفارق السعر ليس كبيراً.
لا ينقل الموضوع بدون ذكر المصدر