دروازه-آرایه (به انگلیسی: Gate Array) یا آرایه منطق غیرمتعهد (به انگلیسی: Uncommitted Logic Array) یک رویکرد جهت طراحی و ساخت مدارهای مجتمع با کاربرد خاص (ASIC)، با استفاده از تراشههای از پیش ساخته با قطعات فعال مانند دروازه NANDD میباشد، که بعداً با توجه به درخواست سفارش به وسیله اضافه کردن لایههای فلزی در محیط کارخانه به هم متصل میشوند.
طراحی
یک مدار دروازه-آرایه، یک مدار تراشه سیلیکونی از پیش ساخته با هیچ تابع خاصی است که در آن ترانزیستور، گیتهای استاندارد NAND و یا NOR، و سایر قطعات فعال در موقعیتهای از پیش تعریف شده به طور منظم قرار داده شده و روی یک ویفر که معمولاً برش اصلی یا شاهقاچ (master slice) نامیده میشود ساخته شده است. ایجاد یک مدار با یک تابع مشخص با اضافه کردن یک لایه سطح نهایی و یا لایههایی از اتصالات فلزی به تراشه روی شاهقاچ در فرایند تولید انجام میشود، اتصال این عناصر اجازه میدهد که عملکرد این تراشه مطابق سفارش مورد نظر انجام شود. این لایه مشابه لایه یا لایههای مسی از یک تخته مدار چاپی (PCBB) است.
شاهقاچ معمولاً از پیش ساخته میباشند و در مقادیر زیاد بدون توجه به سفارشات مشتری ذخیره میشوند. طراحی و ساخت با توجه به مشخصات مشتری ممکن است در یک زمان کوتاه در مقایسه با سلولهای استاندارد و یا طراحی سفارشی کامل به انجام شود. روش دروازه-آرایه هزینههای ماسک را زمانی که ماسکهای سفارشی کمتری نیازمند تولید میباشد را کاهش میدهد. بعلاوه هزینههای ابزارهای تست کارخانه و زمان تست با توجه به اینکه ممکن است یک قالب تست یکسان (وسایل آزمون مشابه) برای تمام محصولات دروازه-آرایه ساخته شده در ابعاد مشابه مورد استفاده قرار بگیرد، کاهش مییابد. دروازه-آرایهها به عنوان اجداد مدارهای ASIC دارای ساختار پیشرفتهتر بودند، بر خلاف آرایههای دروازه، ASICها ساختار یافته تمایل دارند که شامل حافظههای از پیش تعریف شده یا قابل پیکربندی، و / یا بلاکهای آنالوگ باشند. مدارهای ASIC ساختاریافته هنوز هم توسط برخی شرکتها مانند ChipX، به فروش میرسد.
یک مدار کاربردی باید روی یک آرایه دروازه که به اندازه کافی دروازه یا گیت، سیمکشی و پایههای ورودی-خروجی (I/O) دارد ساخته شود. از آنجا که نیازمندیها متفاوت است، آرایههای دروازه معمولاً در قالب خانوادهها یا دستههای با اعضای بزرگتری که بیشتر از تمام منابع را دارند ارائه شده است، اما به نسبت گران تر هستند. در حالی که طراح نسبتاً به راحتی میتواند تعداد دروازهها و پایههای ورودی-خروجی مورد نیاز را تعیین کند، مقدار گامهای مسیریابی مورد نیاز ممکن است به طور قابل ملاحظهای حتی در میان طرح با همان مقدار از منطق متفاوت باشد.(به عنوان مثال، یک crossbar switch یا سوئیچ ماتریسی نیاز به مسیریابی بسیار بیشتر از یک آرایه سیستولیک با همان تعداد گیت دارد.) از آنجا که گامهای مسیریابی استفاده نشده هزینه را، بدون ایجاد هیچگونه سودی، افزایش (و عملکرد را کاهش) میدهند، تولید کنندگان دروازه-آرایه سعی در ارائه تنها گامهای (Track) لازم دارند. بنابراین بسیاری از طرحها که از نظر دروازه و پایههای ورودی-خروجی مناسب است را میتوان تعیین مسیر کرد. این بوسیله تخمین چیزهایی که از قانون اجاره (Rent's rulee) و یا بوسیله تجربیاتی که از طرحهای موجود بدست میآید، تعیین میشود.
اشکال اصلی آرایههای گیت، تراکم و عملکرد تا حدودی پایینتر در مقایسه با روشهای دیگر طراحی مدارهای ASIC میباشد. با این حال این شیوه اغلب یک رویکرد قابل قبول برای حجم تولید کم است.
ویاچدیال (به انگلیسی VHDL) یک زبان توصیف سخت افزار برای بیان مشخصات سخت افزار است . زبان VHDL نخستین بار توسط وزارت دفاع آمریکا به منظور طراحی و توصیف مدارهای مجتمع سرعت بالا طراحی شد و مورد استفاده قرار گرفت . سپس در سال 1987 توسط انجمن IEEE (انجمن مهندسان برق و الکترونیک)در قالب استاندارد IEEE 1076-1987 ارائه گردید. پس از گذشت چند سال و انجام پاره ای ار تصحیحات، استاندارد دوم این زبان تحت عنوان IEEE 1076-1993 در اختیار عموم قرار گرفت . به طور کلی می توان مزایای زیر را در استفاده از زبان VHDL عنوان نمود :
- با توجه به این که VHDL یک زبان استاندارد می باشد، کد نوشته توسط آن را می توان به روی سنتز کننده ها و تراشه های تولید کنندگان مختلف پیاده سازی نمود و نیازی به تغییر کد وجود ندارد .
- شبیه ساز ها و کامپایلرهای این زبان در دسترس و ارزان قیمت می باشند .
- با استفاده از این زبان می توان سیستم ها را به صورت ساختاری یا رفتاری مدل سازی نمود. توصیف رفتاری نشان دهنده عملکرد سیستم و چگونگی تولید خروجی ها بر اساس سیگنال های ورودی می باشد . با استفاده از این توصیف می توان عملکرد کلی سیستم را بیان کرد و از درگیر شدن با جزئیات بلوک های سازنده سیستم که در طرح های بزرگ به پیچیدگی توصیف سیستم منجر شود اجتناب نمود . در مقابل مدل ساختاری نشان دهنده نحوه ارتباط بلوک های سازنده سیستم است و بیانگر جزئیات بیشتری از سخت افزار می باشد . به این ترتیب با استفاده از این زبان امکان توصیف سخت افزار از سطح گیت تا سیستم فراهم می شود .
- با استفاده از توصیف سخت افزاری می توان سیستم های پیچیده را توسط ارتباط بین بلوک های سازنده آن ها مدل سازی نمود، به این ترتیب پیاده سازی این سیستم ها توسط زبان VHDL ساده تر از زبان های برنامه نویسی از قبیل c می باشد .
- با بکار گیری کتابخانه ها و component ها در زبان VHDL، می توان از المان های موجود و نوشته شده در سایر طراحی ها استفاده نمود . در واقع عملکرد آن ها شبیه DLL ها و توابع در زبان های برنامه نویسی نرمافزاری می باشد .
- سرعت طراحی و پیاده سازی سیستم های پیچیده توسط این زبان بسیار بیشتر از طراحی شماتیک است زیرا چگونگی اتصال گیت ها و بلوک ها، توسط نرمافزار سنتز کننده تعیین می شود . به این ترتیب می توان سیستم های پیچیده را در مدت زمان کوتاهی پیاده سازی کرده، تغییرات و اصطلاحات مورد نیاز را در برنامه اعمال نمود .
- استفاده از این زبان بستر مناسبی برای شبیه سازی سیستم مورد توصیف ایجاد می کند و پس از اطمینان از صحت عملکرد کد نوشته شده در محیط شبیه ساز، می توان توصیف سیستم را به روی تراشه مورد نظر پیاده کرد .
فهرست مطالب:
ASIC چیست؟
مزایا
معایب
FPGA چیست؟
مزایا
معایب
کاربردها
شرکت های سازنده
درباره زایلینکس
درباره آلترا
نحوه پیاده سازی مدارهای دیجیتالی در FPGA
پیاده سازی مدارات ترتیبی در FPGA
ضرب کننده
میکروپروسسور
طراحی ابتدایی
زبان توصیفی با سرعت خیلی بالا VHDL
شبیه سازی
سنتز
پیاده سازی
ساختار یک برنامه VHDL
معرفی کتابخانه ها
موجودیت
معماری
طراحی گیت NAND ساده
طراحی نیم جمع کننده
انواع داده
داده های از قبل تعریف شده توسط کاربر
نوع Bit و Bit Vector
انواع STD_LOGIC و STD_LOGIC_VECTOR
انواع STD_ULOGIC و STD_ULOGIC_VECTOR
تعریف نوع جدید داده
کتابخانه ها
بسته
عملگرها
انواع ساختارها در VHDL
ساختارهای موازی
ساختارهای متوالی
عبارت IF
عبارت WHEN
طراحی مدار مقایسه کننده
طراحی دیکودر 8*3
طراحی مالتی پلکسر 1*8
عبارت WITH
و...
پاورپوینت کامل با عنوان آموزش FPGA و زبان VHDL در 82 اسلاید