رفتن به مطلب

پست های پیشنهاد شده

FPGA چیست ؟

FPGA ها نسل جدید مدارهای مجتمع دیجیتال قابل برنامه ریزی هستند که عبارت FPGA از سر کلمه های Field Programmable Logic Gate Array گرفته شده است . سرعت اجرای توابع منطقی در FPGA ها بسیار بالا و در حد نانو ثانیه است . اگر بخواهیم FPGA ها را به طور ساده تشریح کنیم ، عبارت است از یک تراشه که از تعداد بالایی بلوک منطقی - LB (Logic Block) ، خطوط ارتباطی و پایه های ورودی / خروجی (IOB) تشکیل شده است که به صورت آرایه ای در کنار یکدیگر قرار دارند . خطوط ارتباطی که وظیفهء آنها ارتباط بین بلوک های منطقی است از سوئیچ های قابل برنامه ریزی تشکیل شده اند . این سوئیچ ها بسته به نوعی که دارند ، برخی تنها یکبار قابل برنامه ریزی هستند و برخی به تعداد دفعات زیادی برنامه ریزی می شوند .

بلوک های منطقی نیز دارای انواع مختلفی هستند که عموما توسط المانی پایه ، تمامی توابع منطقی را ایجاد می کنند . به عنوان مثال بلوک های منطقی در خانواده ACT-1 از شرکت Actel ، با پایهء مالتی پلکسری عمل می کنند . به این معنا که توسط مالتی پلکسر ، توانایی ایجاد توابع منطقی مختلف را دارند .

البته تعداد ورودی های هر بلوک منطقی متفاوت است و به نوع FPGA مربوط می شود . به عنوان مثال بلوک های منطقی در خانوادهء ACT-1 ، از نوع 8 ورودی است . البته در برخی موارد به بلوک های منطقی ، سلول های منطقی نیز گفته می شود (LC) .

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

 

 

fpga_001.gif

 

 

 

البته بسیاری از سلول های منطقی بر اساس جداول LUT ساخته می شوند . LUT از تعدادی سلولهای حافظه SRAM تشکیل می شود که در هنگام برنامه ریزی FPGA ، مقدار دهی می شوند . به طور خلاصه LUT عبارت است از تولید توابع آماده برای استفاده در سلول های منطقی .

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

 

 

fpga_002.gif

 

 

نکته :

 

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

علاوه بر اجزای گفته شده ، ممکن است برخی قسمت های داخلی نیز برای FPGA تعبیه شده باشد ، نظیر ALU و ... که بستگی به طراحی شرکت سازنده دارد .

 

 

 

کاربرد FPGA :

 

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

 

 

برنامه نویسی و طراحی با FPGA :

 

برنامه نویسی و طراحی مدارات با FPGA ها به طور کلی به 2 صورت انجام می شود .

- با استفاده از زبان های توصیف سخت افزاری مانند VHDL ، AHDL ، HDL و ...

- با استفاده از طراحی مدار

 

این عمل توسط نرم افزارها و ابزارهای برنامه ریزی مختص به هر خانواده انجام می شود که توسط شرکت های سازنده در اختیار طراحان قرار می گیرد . به عنوان نمونه MAX + Plus || و QUARTUS || ابزار های برنامه ریزی FPGA های ساخت شرکت ALTERA هستند .

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

mips_die.jpg

FPGA ها نسل جدید مدارهای مجتمع دیجیتال قابل برنامه ریزی هستند که عبارت FPGA از سر کلمه های Field Programmable Logic Gate Array گرفته شده است . سرعت اجرای توابع منطقی در FPGA ها بسیار بالا و در حد نانو ثانیه است . اگر بخواهیم FPGA ها را به طور ساده تشریح کنیم ، عبارت است از یک تراشه که از تعداد بالایی بلوک منطقی - LB (Logic Block) ، خطوط ارتباطی و پایه های ورودی / خروجی (IOB) تشکیل شده است که به صورت آرایه ای در کنار یکدیگر قرار دارند . خطوط ارتباطی که وظیفهء آنها ارتباط بین بلوک های منطقی است از سوئیچ های قابل برنامه ریزی تشکیل شده اند . این سوئیچ ها بسته به نوعی که دارند ، برخی تنها یکبار قابل برنامه ریزی هستند و برخی به تعداد دفعات زیادی برنامه ریزی می شوند .

بلوک های منطقی نیز دارای انواع مختلفی هستند که عموما توسط المانی پایه ، تمامی توابع منطقی را ایجاد می کنند . به عنوان مثال بلوک های منطقی در خانواده ACT-1 از شرکت Actel ، با پایهء مالتی پلکسری عمل می کنند . به این معنا که توسط مالتی پلکسر ، توانایی ایجاد توابع منطقی مختلف را دارند .

fpga.png

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

البته تعداد ورودی های هر بلوک منطقی متفاوت است و به نوع FPGA مربوط می شود . به عنوان مثال بلوک های منطقی در خانوادهء ACT-1 ، از نوع 8 ورودی است . البته در برخی موارد به بلوک های منطقی ، سلول های منطقی نیز گفته می شود (LC) .

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

fpgaclb.png

البته بسیاری از سلول های منطقی بر اساس جداول LUT ساخته می شوند . LUT از تعدادی سلولهای حافظه SRAM تشکیل می شود که در هنگام برنامه ریزی FPGA ، مقدار دهی می شوند . به طور خلاصه LUT عبارت است از تولید توابع آماده برای استفاده در سلول های منطقی .

پیاده سازی توابع مختلف نیز به وسیلهء در کنار هم قرار گرفتن بلوک های منطقی و همچنین تنظیم ارتباط بین هر بلوک و به عهده گرفتن پردازش اطلاعات توسط هر بخش انجام می شود

نکته :

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

علاوه بر اجزای گفته شده ، ممکن است برخی قسمت های داخلی نیز برای FPGA تعبیه شده باشد ، نظیر ALU و ... که بستگی به طراحی شرکت سازنده دارد .

کاربرد FPGA :

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

 

برنامه نویسی و طراحی با FPGA :

برنامه نویسی و طراحی مدارات با FPGA ها به طور کلی به 2 صورت انجام می شود .

- با استفاده از زبان های توصیف سخت افزاری مانند VHDL ، AHDL ، HDL و ...

- با استفاده از طراحی مدار

این عمل توسط نرم افزارها و ابزارهای برنامه ریزی مختص به هر خانواده انجام می شود که توسط شرکت های سازنده در اختیار طراحان قرار می گیرد . به عنوان نمونه MAX + Plus || و QUARTUS || ابزار های برنامه ریزی FPGA های ساخت شرکت ALTERA هستند .

 

محتوای مخفی

    برای مشاهده محتوای مخفی می بایست در انجمن ثبت نام کنید.

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از ۷۵ اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


×
×
  • جدید...