سؤال

لدي pakcgae أعلن فيه عن مجموعة من الأنواع الفرعية والأنواع.في Active HDL، يبدو أن هناك مشكلة عندما أحاول إنشاء منفذ من نوع فرعي، لذلك أتساءل عما إذا كانت هناك طريقة لتحويلها إلى أنواع بدلاً من ذلك.سيكون ما يلي هو النوع الفرعي الذي أرغب في تحويله:

النوع الفرعي word_t هو std_logic_vector(15 وصولاً إلى 0);- كلمة (تعريف)

هل هذا ممكن بدون إنشاء نوع عبارة عن سجل أو مصفوفة؟شكرًا

هل كانت مفيدة؟

المحلول

لا تعتقد أنه من الممكن إنشاء ملف type على أساس آخر subtype, ، ولكن من دون subtype يمكن القيام به مثل:

type word_t is array (15 downto 0) of std_logic;

ومع ذلك، إنشاء جديد type لأن المنفذ سوف يجعل استخدام المنفذ مرهقًا، نظرًا لطبيعة النوع الصلب لـ VHDL.

قد يكون الحل البديل هو إجراء subtype مع النطاق ل word_t, ، يحب:

subtype word_range_t is natural range 15 downto 0;

ثم استخدم ذلك subtype مع std_logic_vector في ال port إعلان، مثل:

... std_logic_vector(word_range_t);

المنفذ لا يزال متوافقًا مع std_logic_vector, ، ولا يزال حجم الكلمة قابلاً للصيانة بسهولة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top