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

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

 
Learning VHDL
 

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

 

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

 

 

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

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

در خط 2، شانزدهمین آرایه X دستیابی می شود زیرا شاخص آرایه از 0 شروع می شود. عنصر 0 نخستین عنصر است، عنصر 1 دومین عنصر و به همین ترتیب.

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

 

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

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

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

 

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

 

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

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