Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

مستويات تجريد التصميم

جزء من قسم الأساسيات في رحلة Verilog على Coddy. الدرس 5 من 90.

في التصميم الرقمي، يمكننا وصف الدارة نفسها بمستويات مختلفة من التفاصيل. Verilog هي لغة يمكنها وصف الدارات عند أي من مستويات Abstraction هذه. وهذا ما يجعلها قوية!

هذه هي المستويات:

المستوى 1: Behavioral

يصف هذا المستوى ما تفعله الدائرة، وليس كيفية فعلها لذلك. ويركّز على الوظيفة أو السلوك، مثل "العدّ تصاعديًا" أو "Add رقمين."

لا تظهر التفاصيل الداخلية لكيفية حدوث العدّ أو الجمع. هذا المستوى هو الأقرب إلى التفكير البشري، ومن الأسهل كتابته.

Level 2: RTL

يوضح هذا المستوى كيفية انتقال data بين السجلات والعمليات التي تحدث على data. يمكنك رؤية مسار data: تنتقل data من سجل إلى جامع، ثم تعود إلى السجل.

هذا هو المستوى الذي يعمل فيه معظم المصممين الرقميين، لأنه يحقق توازنًا جيدًا بين سهولة الفهم وتقديم تفاصيل كافية لإنشاء العتاد.

المستوى 3: مستوى البوابة

يصف هذا المستوى الدائرة باستخدام البوابات المنطقية الأساسية مثل AND وOR وXOR. يتم إظهار كل اتصال بشكل صريح.

هذا المستوى مفصل جدًا ومن الصعب كتابته يدويًا. وعادةً ما تُنشئه الأدوات من أوصاف ذات مستوى أعلى، ولا يُكتب يدويًا.
 

لماذا يهم ذلك

- **مستوى أعلى** = أسهل في الكتابة، تحكّم أقل
- **مستوى أدنى** = أصعب في الكتابة، تحكّم أكبر
- **RTL** هو الخيار الأمثل لمعظم أعمال التصميم

challenge icon

التحدي

ما يجب فعله:

  1. شغّل هذا الكود ولاحظ كيف يتم وصف العملية نفسها على ثلاثة مستويات مختلفة:

جرّب بنفسك

module abstraction_demo;
  
  initial begin
    $display("=== Design Abstraction Levels ===");
    $display("");
    
    $display("Level 1 (Behavioral):");
    $display("  'Add a and b' - no details how");
    $display("");
    
    $display("Level 2 (RTL):");
    $display("  'On clock edge, result <= a + b' - shows data flow");
    $display("");
    
    $display("Level 3 (Gate Level):");
    $display("  'XOR gates for sum, AND gates for carry' - actual gates");
    $display("");
    
    $finish;
  end
  
endmodule
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم Verilog عبر الإنترنت