تفاوت میکرو پروسِسور ها با میکروکنترلر های FPGA (مهندسی میکرو- نانو الکترونیک)
پژوهشگر و نویسنده: دکتر ( افشین رشید)
نکته: به طور کلی بلوک های داخلی FPGA قابل برنامه ریزی هستند و با یک برنامه ریزی ساده می توان آن را به هر مدار دلخواه تغییر داد از این رو به این تراشه ها قابل برنامه ریزی می گویند.
FPGA مخفف Field Programmable Gate Arrays یعنی آرایه های گیت قابل برنامه ریزی است. که با متصل کردن بلوک های داخلی آن به هم ، می توان هر مدار دیجیتالی دلخواه را به وجود آورد به عنوان مثال با یک FPGA میتوان یک پردازنده یا Microproccessor طراحی کرد یا از آن میتوان برای پردازش تصویر ، صوت و سیگنال های دیگر بهره برد.
به طور کلی بلوک های داخلی FPGA قابل برنامه ریزی هستند و با یک برنامه ریزی ساده می توان آن را به هر مدار دلخواه تغییر داد از این رو به این تراشه ها قابل برنامه ریزی می گویند.
تفاوت FPGA با میکروکنترلر ؟
یک میکروکنترلر از CPU ، تایمر ها ، پورت ها و حافظه های مختلفف مانند flash؛ Rom و EEPROM تشکیل شده است که با پروگرام کردن آن CPU شروع به اجرای خط به خط برنامه نوشته شده می کند. در حالی که در FPGA هیچ CPU یی وجود ندارد و با نوشتن کد به یک FPGA در واقع ما سخت افزار مدار را طراحی میکنیم.
در یک FPGA بر خلاف میکروکنترلر قابلیت اجرای پردازش های موازی وجود دارد و این امر باعث بالا رفتن سرعت عملیات در یک FPGA می شود. همچنین یک FPGA به دلیل استفاده مستقیم از گیت ها و بلوک های منطقی و عملیاتی دیگر خیلی سریع تر از میکروکنترلر هست. به همین دلیل از FPGA ها برای ساخت سیستم های پرسرعت و حساس که دارای پیچیدگی های خاص هم می باشند استفاده می شود.
نکته : تفاوت میکرو پروسسورها در عملکرد برعکس FPGA در سیستم است.
برای طراحی یک مدار با یک FPGA ما نیاز به یک زبان توصیف سخت افزار داریم که کدهای نوشته شده ی ما را به مدار مد نظر ما تبدیل کند. در واقع ما در یک FPGA با نوشتن برنامه مدار مورد نظرمان را طراحی می کنیم. تعداد زبان های توصیف سخت افزار زیاد است اما دو زبان VHDL و Verilog از همه مشهورتر هستند.
پژوهشگر و نویسنده: دکتر ( افشین رشید)