عمليات التحقق رباعية الحالات
جزء من قسم تصميم RTL والتحقق منه في رحلة Verilog على Coddy. الدرس 26 من 38.
يجب أن يتعامل بيئة الاختبار مع القيم المجهولة بشكل متعمد. قد تُرجع المساواة العادية X، مما قد يخفي فشلًا في شرط if. تقارن مساواة الحالة وعدم مساواة الحالة، === و!==، جميع القيم الأربع حرفيًا وتُرجع قيمة Boolean معروفة. يمكن لـ XOR الاختزالي متبوعًا بمقارنة case مع X اكتشاف البتات المجهولة. استخدم هذه كاختبارات للمحاكاة، وليس كنموذج للعتاد يكتشف قيم X الفيزيائية.
مقتطف ذو صلة؛ يتم توفير التصريحات والاتصالات المحيطة في التحدي.
if(actual !== expected) errors = errors + 1;يُحتسب الاختلاف الذي يتضمن X أو Z بدلًا من أن يختفي في شرط غير معروف.
استخدم مقارنات صريحة من أربع حالات في أدوات التحقق من المحاكاة، وحدد كيفية التعامل مع القيم غير المعروفة.
التحدي
متوسطهذا فاحص مخصّص للمحاكاة فقط، وليس منطق مسار بيانات قابلًا للتوليف. اضبط mismatch عندما يختلف actual وexpected وفقًا للمقارنة ذات الحالات الأربع. إذا كان كلاهما يحتوي على X أو Z نفسيهما في المواضع نفسها، فهما متساويان عند المقارنة. يجب أن تكون النتيجة always قيمة معروفة، إما 0 أو 1. أعمدة الخرج: mismatch. جميع قيم التحفيز هي قيم ثنائية معروفة.
أكمل design.v وحافظ على أسماء الوحدة ومنافذها. يوفّر testbench.v المقفل تغييرات الإدخال ويطبع المخرجات بعد استقرارها. ويختار سيناريو باستخدام وسيط للمحاكي مثل +CASE=1؛ ولا يلزم إدخال قياسي. لا تضف طباعة أو تأخيرات أو إنهاءً للمحاكاة إلى التصميم. الخرج المتوقع هو صف واحد من القيم العشرية لكل ملاحظة، مفصولة بمسافة واحدة ومنتهية بسطر جديد.
جرّب بنفسك
module dut (input [3:0] actual, input [3:0] expected, output mismatch);
// استبدل هذا العنصر النائب بتصميمك.
assign mismatch = 0;
endmoduleيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس تصميم RTL والتحقق منه
1دوائر RTL التوافقية الموثوقة
القيم الافتراضية تمنع المزالجمشفّرات الأولويةالتحقق من One-Hotفك ترميز Case الآمنمراجعة - موجّه الطلبات4RTL تسلسلي متحكَّم فيه
أولوية إعادة الضبط والتمكينالعدادات التشبُّعيةتسلسل البيانات والإشارة الصالحةاكتشاف الحواف المُعايَنةمراجعة - عداد الأحداث7المشروع - مراقب العينات
تجميع العيناتقبول العينات المفعّلة2الأحجام والحساب الموقّع
الحفاظ على بتّات الحملالمقارنات الموقّعةالإزاحات الحسابية إلى اليمينالتجاوز والتشبّعمراجعة - الفرق الموقّع3وحدات RTL قابلة لإعادة الاستخدام
دوال توافقيةمعلمات آمنة العرضحلقات التوليدالتوليد الشرطيمراجعة - قناع بتات قابل لإعادة الاستخدام6بيئات الاختبار ذاتية التحقق
عمليات التحقق رباعية الحالاتمهام التحقق القابلة لإعادة الاستخدامالنماذج المرجعية ودرجات التقييمتغطية الحدود والتحكممراجعة - تدقيق الجامعتدرّب بنفسك: مترجم Verilog عبر الإنترنت