ما هو RISC-V؟ لماذا اختارت CKB-VM RISC-V؟

المؤلف: CKB

أدى ظهور تقنية البلوكتشين إلى تحسين وتنمية العقود الذكية، وهناك دور مهم آخر بين البلوكتشين والعقود الذكية: الآلة الافتراضية (Virtual Machine).

أدى ظهور blockchain إلى تحسين وتطوير العقود الذكية، وهناك دور مهم آخر بين blockchain والعقود الذكية: الآلة الافتراضية (Virtual Machine).

تم تقديم مفهوم الأجهزة الافتراضية في الستينيات من القرن الماضي ، وأصبح شائعا فقط في التسعينيات. في ذلك الوقت ، امتد الويب إلى العديد من أنظمة التشغيل والمتصفحات المختلفة ، وإذا أراد المطور إنشاء تطبيق ، فعليه التكيف مع جميع أنظمة التشغيل المختلفة. كما تعلم ، ينقسم تطوير التطبيقات الآن إلى Android و iOS ، وكان الوضع أكثر تعقيدا في ذلك الوقت. لقد حدث أن أصبحت لغة برمجة Java شائعة ، وقامت Java ببناء جهاز افتراضي يسمح بكتابة البرامج مرة واحدة فقط ، ويمكن تشغيلها على منصات متعددة تعتمد على جهاز Java الظاهري ، لذلك كان الشعار في ذلك الوقت: تجميع مرة واحدة ، تشغيل في كل مكان.

نعلم أن البيتكوين ليس لديه آلة افتراضية، لأن البيتكوين هو مجرد نقل جزء من الأرقام (أي "بيتكوين") من العنوان A إلى العنوان B، بينما اقترحت الإيثيريوم، لماذا لا يمكن أن تكون مجموعة من الأكواد هي ما يتم تنفيذه على البلوكشين، مما يمكن أن يحقق أشياء أكثر تعقيدًا وتنوعًا؟ وهذا هو ما نسميه منصة العقود الذكية، حيث تعمل جميع العقد بنفس كود العقد وتحصل على نفس النتائج تمامًا.

على blockchain ، الجهاز الظاهري هو بيئة تشغيل العقد الذكي ، وهو نظام كمبيوتر كامل يمكن عزله تماما عن العالم الخارجي. تستخدم Blockchains آلات افتراضية لاستدعاء وتنفيذ العقود الذكية وتتطلب موافقة جميع العقد. تستخدم العقد أنظمة مختلفة ، وبعض الأجهزة 64 بت ، وبعضها 32 بت ، وتتسامح أجهزة Java الافتراضية التقليدية مع عدد صغير من الاختلافات في نتائج الحساب ، ولكن يجب أن تكون جميع النتائج هي نفسها على blockchain ، لذلك من الضروري وجود جهاز افتراضي جديد صديق ل blockchain.

آلة افتراضية بلوكشين مثالية تصميم الآلة الافتراضية لكل مشروع بلوكشين له طموحاته الفنية الخاصة، حيث يتم إجراء تنازلات على مستويات مختلفة مع السعي لتحقيق العديد من الخصائص. بعد إجراء الكثير من الأبحاث، نعتقد أن الآلة الافتراضية المثالية للبلوكشين يجب أن تكون على هذا النحو:

يجب أن يكون هناك قدر كافٍ من اليقين أثناء التشغيل، فعند استدعاء نفس مدخلات العقد الذكي، يجب أن تعيد نفس نتائج الخرج، ولا تعتمد نتائج الخرج على الوقت أو بيئة التشغيل أو أي شروط خارجية أخرى؛

وقت التشغيل آمن بما فيه الكفاية ، ولا يؤثر تنفيذ الجهاز الظاهري سلبا على النظام الأساسي نفسه ؛ كن مرنا بما يكفي للتحديثات حتى تتمكن سلاسل الكتل من ترقية أو إضافة خوارزميات التشفير دون المرور عبر هارد فورك (فكر في ألم ترقيات الهارد فورك Ethereum) ؛

يجب أن تكون المعلومات شفافة بما يكفي للسماح للعقود الذكية التي تعمل على الآلة الافتراضية بالاستفادة الكاملة من إمكانيات الآلة الافتراضية؛ يجب أن تكون آلية الرسوم معقولة بما يكفي لضمان أن طريقة حساب استهلاك الموارد أثناء تشغيل الآلة الافتراضية أكثر دقة وعقلانية.

يمكن أن يدعم تجميع اللغات المختلفة، مما يسمح للمطورين بتطوير بحرية، وتطبيق أحدث التكنولوجيا فيها.

قبل تصميم آلة افتراضية Nervos CKB، اكتشفنا أن العديد من مشاريع البلوكشين لم تبنِ آلاتها الافتراضية باستخدام مجموعة تعليمات CPU الحقيقية، بل اختاروا بشكل أكبر استخدام WASM لبناء آلاتهم الافتراضية.

نحن نميل أكثر إلى استخدام مجموعة تعليمات CPU الحقيقية لبناء آلة افتراضية خاصة بنا، لأنه في أدنى مستوى من أي آلة افتراضية معقدة ومصممة بدقة، يجب تحويل العمليات إلى تعليمات تجميعية أساسية لتنفيذ العمليات على وحدة المعالجة المركزية. بالإضافة إلى ذلك، فإن استخدام مجموعة تعليمات CPU الحقيقية لن يضيف بعض القيود الدلالية على مستوى التصميم، مما يقيد مرونة الآلة الافتراضية.

عمل تشبيه غير مناسب، يتطلب تشغيل وحدة المعالجة المركزية مجموعة من أنظمة اللغة، واستخدام مجموعة تعليمات وحدة المعالجة المركزية الحقيقية يشبه القدرة على «التحدث» مباشرة بهذه المجموعة اللغوية مع وحدة المعالجة المركزية، مما يجعل الأمر مريحًا للغاية. خلاف ذلك، يكون الأمر كما لو كنت تتحدث بالصينية ثم تحويله إلى الإنجليزية، بغض النظر عن مدى دقة مستوى الترجمة، سيكون هناك دائمًا انحرافات وقيود معينة.

من خلال مجموعة التعليمات الحقيقية لوحدة المعالجة المركزية، يمكن للآلة الافتراضية إضافة أي نوع من هياكل البيانات أو الخوارزميات حسب الحاجة، مما يسمح للمطورين بكتابة أي عقد يتوافق مع المتطلبات. لذلك قررنا أن نجرب بجرأة استخدام مجموعة التعليمات الحقيقية لوحدة المعالجة المركزية لبناء الآلة الافتراضية الخاصة بنا CKB-VM.

في اختيار مجموعة تعليمات وحدة المعالجة المركزية ، اخترنا RISC-V ، وهي مجموعة تعليمات مبسطة مفتوحة المصدر. يمكن ل RISC-V تلبية متطلبات التنفيذ من المعالجات الدقيقة منخفضة الطاقة إلى معالجات مركز البيانات عالية الأداء (DC) ، وتتميز بالشفافية والبساطة والنمطية واتساع نطاق الدعم والنضج. هذه الميزات مناسبة تماما لمتطلبات تصميم CKB-VM. إذن ما هو RISC-V؟

ريسك-V RISC-V هو مجموعة تعليمات وحدة المعالجة المركزية واضحة وبسيطة ومفتوحة المصدر، نشأت في جامعة كاليفورنيا، بيركلي في الولايات المتحدة.

في عام 2010، بسبب قيود مجموعات التعليمات التجارية المغلقة الأخرى، صمم فريق بحثي في الجامعة مجموعة جديدة من مجموعات التعليمات مفتوحة المصدر من الصفر عند بدء مشروع جديد. تحتوي مجموعة التعليمات الجديدة هذه على عدد كبير من السجلات وسرعة تنفيذ تعليمات شفافة، مما يمكن المترجمين ومبرمجي لغة التجميع من تحويل المشكلات الهامة الفعلية إلى تعليمات مناسبة وفعالة، ولا تحتوي إلا على أقل من 50 تعليمة. هذه مجموعة التعليمات هي RISC-V.

عند تصميم RISC-V، كان هدف المعماريين هو جعل RISC-V يعمل بكفاءة على جميع أجهزة الحوسبة. منذ اختراعه في عام 2010، نالت تصميمات RISC-V البسيطة دعمًا واسعًا من الصناعة والأوساط الأكاديمية، وحازت على حب المجتمع.

مؤسسة RISC-V تطور مجموعة تعليمات RISC-V يتم دفعه بشكل رئيسي من قبل مؤسسة RISC-V والمجتمع. تم تأسيس مؤسسة RISC-V في عام 2015، وهي منظمة غير ربحية وأول مجتمع مبتكر مفتوح ومتعاون في البرمجيات والأجهزة.

تضم مؤسسة RISC-V حاليًا أكثر من 235 عضوًا، بما في ذلك شركات مثل جوجل وكوالكوم وآبل وآي بي إم وتيسلا وهواوي. يمكن للأعضاء المشاركة في وضع واستخدام معايير مجموعة تعليمات RISC-V، والمساهمة في تطوير النظام البيئي المتعلق بالبرمجيات والأجهزة.

بفضل تصميمه المبسط والمفتوح المصدر، حظي RISC-V بشعبية كبيرة في بعض المؤسسات الأكاديمية مثل جامعة كاليفورنيا، بيركلي، ومعهد ماساتشوستس للتكنولوجيا، وجامعة برينستون، ومعهد الأبحاث في الأكاديمية الصينية للعلوم. بالإضافة إلى ذلك، تدعم بعض الوكالات الحكومية، مثل حكومة الهند و لجنة المعلومات الاقتصادية في مدينة شنغهاي، بقوة تطوير المشاريع المعتمدة على RISC-V.

مجموعة التعليمات الحالية RISC-V هو مجموعة تعليمات شابة جدًا، فما هي مجموعات التعليمات الرئيسية الأخرى قبل ذلك؟

في عصر الكمبيوتر الشخصي ، x86 هو أفرلورد الذي لا يتزعزع ، x86 هو كمبيوتر مجموعة التعليمات CISC(Complex ، ) مجموعات التعليمات المعقدة ، و RISC (Reduced Instruction Set Computer ، على عكس مجموعات التعليمات المخفضة ) تستمر مجموعات تعليمات CISC في النمو مع تطورها. نتيجة لذلك ، تستمر التكاليف في الارتفاع ، ويعاني الأداء واستهلاك الطاقة. علاوة على ذلك ، فإن طول مجموعة تعليمات CISC ووقت التنفيذ غير ثابتين ، ومن الصعب العثور على مسار تصميم عالمي فعال لإكمال تنفيذ التعليمات. بعد شعبية الهواتف الذكية ، أصبح ARM محبوبا للجوال. ARM هي مجموعة تعليمات مخفضة (RISC) مع استهلاك منخفض للطاقة وتكلفة منخفضة ، ولكن للحفاظ على التوافق مع الإصدارات السابقة ، يحتاج ARM إلى الاحتفاظ بالعديد من التعريفات القديمة ، مما يؤدي إلى تكرار مجموعة التعليمات الخطيرة ، مما يجعل توثيق بنية ARM معقدا بشكل متزايد.

في ظل احتكار x86 و ARM ، جلبت RISC-V حياة جديدة للسوق:

مبسطة

بعد عقود من التطوير ، نمت وثائق الهندسة المعمارية ل x86 و ARM إلى آلاف الصفحات ، والتي تستغرق تقريبا مهندسا ما يقرب من شهر لقراءتها ، مقارنة ب 1-2 أيام لقراءة وثائق RISC-V. وذلك لأن RISC-V يختار فقط مجموعات التعليمات الأكثر استخداما ويحسنها على وجه التحديد ، بينما يمكن تنفيذ التعليمات الأقل استخداما في مزيج من بعض التعليمات الأساسية ، والتي يمكن أن تحسن الكفاءة بشكل كبير. على سبيل المثال ، إذا كنا نستخدم x86 ، فسيتعين علينا شراء سوبر ماركت كامل للحصول على ما نحتاجه. RISC-V ، من ناحية أخرى ، هو سوبر ماركت واحد لواحد حيث يحتاج العملاء فقط إلى اختيار ودفع ثمن ما يحتاجون إليه.

المصدر المفتوح:

كل من ARM و x86 هي مشاريع مغلقة المصدر ، وشروط الترخيص مقيدة للغاية: لا تسمح Intel لأي شركة أخرى غير AMD و VIA باستخدام مجموعة تعليمات x86 ؛ يمكن أن يكلف ترخيص مجموعة تعليمات ARM عشرات الملايين من الدولارات في رسوم الترخيص ، وستحتاج إلى إعادة التفاوض بعد انتهاء صلاحية الترخيص. RISC-V هو مشروع حقيقي مفتوح المصدر يعرف باسم Linux في الأجهزة. في الواقع ، كان الدافع وراء البروفيسور ديفيد باترسون ، والبروفيسور كرستي أسانوفيتش ، وأندرو ووترمان ، ويونسوب لي ، الذين اخترعوا RISC-V ، في الأصل هو الرغبة في "مجموعات التعليمات تريد أن تكون مجانية" ، حيث يمكن لأي شركة أو جامعة أو معهد أبحاث أو فرد في العالم تطوير معالجات متوافقة مع مجموعة تعليمات RISC-V يمكن دمجها في RISC-V بنيت الأجهزة والبرمجيات النظام البيئي.

تستخدم RISC-V ترخيص BSD ، حيث يسمح ترخيص BSD للمستخدمين بتعديل وإعادة نشر الشيفرة المصدرية المفتوحة، كما يسمح بتطوير البرمجيات التجارية بناءً على الشيفرة المصدرية المفتوحة ونشرها وبيعها.

عندما تلتقي البلوكتشين مع RISC-V تستخدم RISC-V في العديد من مجالات التكنولوجيا، والآن، بدأت في التطور تدريجياً في مجال blockchain. كونه مجموعة تعليمات تم التحقق منها فقط على وحدة المعالجة المركزية، فإن تطبيق RISC-V في مجال blockchain هو حقاً تجربة جريئة، لأنه في مشاريع blockchain، يتم بناء آلة افتراضية بدلاً من الأجهزة المعالجة.

لا نعرف على وجه اليقين ما إذا كانت هذه المحاولة ستنجح ، ولكن لدينا سبب للاعتقاد بأن الأجهزة الافتراضية المبنية على RISC-V مفتوحة المصدر يمكن أن تقصر المسافة بين صناعات الأجهزة والبرامج وتجلب نظاما بيئيا أكثر ثراء للتطوير.

لماذا اختارت CKB تطوير آلة افتراضية خاصة بها؟ انطلاقًا من المبادئ الأساسية، لدينا إجابات مختلفة. في فلسفة تصميم Nervos CKB، نتمسك دائمًا بمبدأ أساسي واحد: بناء بنية تحتية Layer1 مرنة وآمنة وقابلة للتوسع للمطورين العالميين. تعتبر العقود الذكية واحدة من أهم البنى التحتية في نظام الشبكة العامة، ولا يمكن تشغيلها بدون الآلة الافتراضية (VM). عند تصميم CKB-VM، لم نختار الحلول الشائعة مثل WASM، بل انطلقنا من المبادئ الأساسية لإعادة التفكير فيما هو الأنسب لبنية الآلة الافتراضية في blockchain.

بينما يقوم العالم ببناء الطبقة 2 ، يعود CKB إلى جوهر الطبقة 1 في تصميم Nervos، نؤمن دائمًا بأن Layer2 القوي حقًا يجب أن يُبنى على Layer1 قوي بما فيه الكفاية. وجود CKB-VM يجعل CKB منصة عامة تدعم بشكل أصلي أي Layer2، حسابات ZKP، تنفيذ الدوائر، وحتى قدرة Layer1 على التطور الذاتي.

هذا هو فهمنا للبنية التحتية للبلوكتشين، وهو تعريف جديد لـ "البرمجة الأساسية".

شاهد النسخة الأصلية
المحتوى هو للمرجعية فقط، وليس دعوة أو عرضًا. لا يتم تقديم أي مشورة استثمارية أو ضريبية أو قانونية. للمزيد من الإفصاحات حول المخاطر، يُرجى الاطلاع على إخلاء المسؤولية.
  • أعجبني
  • 3
  • مشاركة
تعليق
0/400
JELGUYANEvip
· 04-25 15:55
في 🚀
رد0
DailyLifeXiaoqiangvip
· 04-22 18:52
طلق
رد0
Iwankusmawanspdvip
· 04-22 15:26
صعود الثور 🐂
رد0
  • تثبيت