انواع آرایه در VHDL

انواع آرایه ای یک یا چند عنصر از یک نوع را با هم و به صورت یک تک شیء گروه بندی می کنند. به هر عنصر آرایه می توان یک یا چند شاخص آرایه دسترسی داشت.

عناصر می توانند یکی از انواع VHDL باشند. برای نمونه، یک آرایه می تواند آرایه ها یا رکوردها را به عنوان عناصر خود داشته باشد.

 
Learning VHDL
 

در یک آرایه، تمام عناصر از یک نوع می باشند، مثال زیر یک اعلان نوع برای آرایه ای تک بعدی از بیت ها را نشان می دهد:

 

این اعلان یک نوع داده با نام data_bus اعلان می کند که آرایه ای ۳۲ بیتی است. تمام عناصر آرایه شبیه به هم می باشند. با استاده از یک شاخص آرایه می توان به عناصر آرایه دسترسی پیدا کرد. نحوه دسترسی به عناصر آرایه در مثال زیر نشان داده شده است:

 

 

این مثال یک قطعه کد VHDL را نشان می دهد نه یک مدل کامل را. در خط ۱، به نخستین عنصر آرایه X دسترسی می شود و به متغیر Y تخصیص می یابد که از نوع بیت است.

نوع Y بایستی با نوع مبنای آرایه X یکی باشد تا تخصیص انجام شود. اگر نوع ها یکسان نباشد، کامپایلر یک خطا تولید می کند.

در خط ۲، شانزدهمین آرایه X دستیابی می شود زیرا شاخص آرایه از ۰ شروع می شود. عنصر ۰ نخستین عنصر است، عنصر ۱ دومین عنصر و به همین ترتیب.

در زیر مثال جامع تری از دستیابی به آرایه ارائه می کنیم:

 

این موجودیت یک عنصر آرایه ۳۲ بیتی را به عنوان یک درگاه می گیرد و ۸ بیت از عنصر را برمی گرداند. ۸بیت برگشتی به مقدار شاخص start بستگی دارد. ۸ بیت از طریق درگاه خروجی data_out برگردانده می شود.

تغییر در مقدار start یا data پروسس را برای اجرا تریگر می کند. حلقه FOR 8 بار تکرار می شود و هر بار یک تک بیت از درگاه data را به درگاه data_out کپی می کند.

نقطه شروع کپی در مقدار صحیح درگاه start رخ می دهد.هر بار در حلقه، به عنصر i ام data_out عنصر (i+start) ام داده تخصیص می یابد.

 

مثال های بالا آرایه ساده ای با انواع مبنای اسکالر داشته اند. در مثال زیر نوع مبنای آرایه، آرایه ای دیگر است:

 

بسته حافظه برای تعریف دو نوع داده ای که ساختارهای داده موجودیت rom را می سازند از دو ثابت استفاده می کند. با تغییر پهنای باند ثابت و کامپایل دوباره، می توان پهنای خروجی حافظه را تغییر داد. داده های اولیه ROM را نیز می توان برای انعکاس پهنای جدید تغییر داد.

انواع داده بسته حافظه برای تعریف انواع داده درگاه های موجودیت نیز استفاده می شوند. به خصوص، درگاه داده از نوع data_out تعریف می شود.



[ برچسب ها ] : , , , , ,
ارسال شده در : بخش الکترونیک
نظر شما در مورد اين پست چيست ؟

دیدگاه خود را به ما بگویید.

 
 
  دکتری تخصصی برق الکترونیک
طراح مدارهای الکترونیکی
برنامه نویس انواع میکروها
مشاوره و اجرای لینک های وایرلس
پیاده سازی سیستم های مبتنی بر شبکه
E_mail: electronic@sabzelco.ir
Tel: 09150462401
توسعه دهنده برنامه های سمت سرور

طراحی و برنامه نویسی سایت و پرتال های حرفه ای

E_mail: computer@sabzelco.ir
Tel: 09371974233