Vhdl integer خطأ؟؟؟؟؟؟؟؟؟؟؟؟

L

lmtg

Guest
الميناء)
س : في std_logic ؛
ذ : integer في نطاق 0 إلى 32 ؛
ض : integer خارج النطاق 0 إلى 32 ؛
ث : std_logic بها) ؛

لشيء بسيط entiy أحصل الخطأ التالية :

السطر 17 : الخطأ ، وغير الموحدة IEEE نوع "integer" ، المستخدمة في الميناء "ذ"
السطر 17 : الخطأ ، والحيوية على مستوى عال الميناء "ذ" "integer" من النوع الذي لا علامة تدل على وجود نوع / أعلنت فرعي في مجموعة std_logic_1164
السطر 17 : تحذير ، بالبعد / نطاق تعريف "(0 إلى 32)" ، "ذ" ، لم تذعن لاتفاقية تنازليا

كيف يمكن لي أن تحل؟

 
integer باستخدام أنواع الموانئ لأعلى مستوى يمكن أن تدعمها أداة VHDL الخاصة بك.synthesizable في التصاميم ، ورسم خرائط لميناء integer بت هو تنفيذ معال.

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

 
كنت صائبا ، Integer أعلن في ميناء الإعلان جزء لا synthasizable.
يمكنك أن تعلن بأنه std_logic_vector في الميناء وتحويلها.

 
أو ربما في محاولة لتحديد نوع أو اسم فرعي في حزمة

هي مجموعة MyComponentPack
فرعي MyInt_t الطبيعي 0 إلى 32 مجموعة ؛
إنهاء صفقة ؛

واستخدامه أينما كنت بحاجة إلى ذلك النوع من الإشارات

استخدام work.MyComponentPack.all ؛
...
الميناء)
...
ذ : في MyInt_t ؛
...

 
وأنا لا أرى أن استخدام حزمة مع تعريف نوع التغييرات شيئا.

supported by some synthesis tools, eg A.ltera Q.uartus, but apparently unsupported by some others.

Integer النوع على مستوى عال في الموانئ وتدعم تجميع بعض الأدوات ، مثل A.ltera Q.uartus ، ولكن يبدو أن البعض الآخر غير مدعومة.وهذا موافق ، وذلك لأن VHDL القياسية لا يحتاج إلى ذلك ،
بقدر ما فهمت.

 

Welcome to EDABoard.com

Sponsor

Back
Top