بخش مدار های ASIC/FPGA _ بلوک های منطقی قابل برنامه ریزی

(یک جمع بندی کلی و پایانی از مبحث) ASIC میکرو پروسِسور ها و میکروکنترلر های FPGA 

پژوهشگر و نویسنده:  دکتر  (  افشین رشید)


نکته: به طور کلی بلوک های داخلی FPGA  قابل برنامه ریزی هستند و با یک برنامه ریزی ساده می توان آن را به هر مدار دلخواه تغییر داد از این رو به این تراشه ها قابل برنامه ریزی می گویند. 

FPGA  مخفف Field Programmable Gate Arrays  یعنی آرایه های گیت قابل برنامه ریزی است. که با متصل کردن بلوک های داخلی آن به هم ، می توان هر مدار دیجیتالی دلخواه را به وجود آورد به عنوان مثال با یک FPGA  میتوان یک پردازنده یا Microproccessor  طراحی کرد یا از آن میتوان  برای پردازش تصویر ، صوت و سیگنال های دیگر بهره برد. 

به طور کلی بلوک های داخلی FPGA  قابل برنامه ریزی هستند و با یک برنامه ریزی ساده می توان آن را به هر مدار دلخواه تغییر داد از این رو به این تراشه ها قابل برنامه ریزی می گویند. 

تفاوت اصلی ASIC میکرو پروسِسور ها با میکروکنترلر های FPGA 

یک میکروکنترلر از  CPU  ، تایمر ها ، پورت ها و حافظه های مختلفف مانند flash؛ Rom و EEPROM  تشکیل شده است که با پروگرام کردن آن CPU  شروع به اجرای خط به خط برنامه نوشته شده می کند. در حالی که در FPGA  هیچ CPU  یی وجود ندارد و با نوشتن کد به یک FPGA  در واقع ما سخت افزار مدار را طراحی میکنیم.



در یک FPGA  بر خلاف میکروکنترلر قابلیت اجرای پردازش های موازی وجود دارد و این امر باعث بالا رفتن سرعت عملیات در یک FPGA  می شود. همچنین یک FPGA  به دلیل استفاده مستقیم از گیت ها و بلوک های منطقی و عملیاتی دیگر خیلی سریع تر از میکروکنترلر هست. به همین دلیل از FPGA  ها برای ساخت سیستم های پرسرعت و حساس که دارای پیچیدگی های خاص هم می باشند استفاده می شود.

نکته : تفاوت میکرو پروسسورها asic در عملکرد برعکس FPGA در سیستم است.

برای طراحی یک مدار با یک FPGA  ما نیاز به یک زبان توصیف سخت افزار داریم که کدهای نوشته شده ی ما را به مدار مد نظر ما تبدیل کند. در واقع ما در یک FPGA  با نوشتن برنامه مدار مورد نظرمان را طراحی می کنیم.  تعداد زبان های توصیف سخت افزار زیاد است اما دو زبان VHDL  و Verilog  از همه مشهورتر هستند.

پژوهشگر و نویسنده:  دکتر  (  افشین رشید)

دکترایِ  تخصصی نانو _ میکرو الکترونیک