آموزش مقدماتی FPGA

EE-FPGA

آموزش مقدماتی FPGA

بخش اول: چگونه و از کجا کار با FPGA را شروع کنیم؟

در این نوشته قصد دارم تا شما را با FPGA به عنوان ابزاری بسیار قدرتمند در طراحی سیستمهای دیجیتال آشنا کنم.ابزاری که می تواند توانایی تان را در انجام پروژه های مربوط به پیاده سازی سیستمهای دیجیتال به طرز چشمگیری افزایش دهد.
علی رغم نیاز شدید، نیروی انسانی مسلط به FPGA بسیار نادر است.این در حالی است که که معمولا افراد فعال در این حوزه از دستمزد بالایی در محیط کار بهره میبرند. بنابراین، برای شما به عنوان فردی که میخواهد در این حوزه فعالیت کند، تسلط به کار با FPGA میتواند موقعیتهای بسیاری بریا یافتن یک جایگاه شغلی عالی ایجاد کند. بعد از این نوشته، شما درک صحیحی از ماهیت و کاربردهای FPGA بدست خواهی آورد.
ماهیت و ساختار FPGA چیست؟
حتما زمانی را که در آزمایشگاه دیجیتال به کمک گیتهای منطقی مثل AND و آی سی هایی مثل مالتی پلکسر، دیکدر و فلیپ فلاپ، مدارات ساده دیجیتال را طراحی می کردید به یاد دارید.در آن زمان با کنار هم قرار دادن این گیتها ی پایه،مدارات کوچک ومهمی مثل جمع کنندها را روی بردبورد طراحی میکردید و سپسپ به کمک منبع تغذیه، مولتی متر،اسکوپ و در مواقعی سیگنال ژنراتورف آنها را تست میکردید.
در سالهای بعد که کاربردهای پیچیده تری را طراحی میکردید به سراغیکی از انواع میکروکنترلرها مثل 8051، AVR یا PLC میرفتید و روتین فانکشنهای متنوع تری را به کمکشان پیاده سازی میکردید.
وقتی با گیتها و آی سی های دیجیتال پایه به ساخت مداراتدیجیتال می پرداختید، در حقیقت در حال طراحی “سخت افزار دیجیتال” بودید.ولی زمانیکه از میکروکنترلر ها استفاده میکردید با یک سخت افزار “از پیش طراحی شده” سر و کار داشتید که دارای یک واحد پردازنده مرکزی CPU بود. این CPU دارای دستورات از پیش تعریف شده ای بود که شما به کمک آنها برای میکروکنترلر یک برنامه نرم افزاری می نوشتید. بنابراین شما به هنگام کار با میکروکنترلرها در حقیقت یک “نرم افزار” طراحی میکردید.
اما چرا مجبور بودید روتین ها و الگوریتمهای پیچیده تر را به کمک میکروکنترلرها و به صورت نرم افزاری پیاده سازی کنید و نه به صورت سخت افزاری؟!! چون در آن صورت باید از صدها و گاه هزاران گیت و آی سی پایه استفاده کنید که این عملا به علت مشکلات مربوط به کمبود فضای روی برد و هزینه قابل انجام نبود.
اما آیا واقعا هیچ راه سریعی برای پیاده سازی یک سیستم دیجیتالی پیچیده و بزرگ به صورت سخت افزاری نیست؟؟
خوشبختانه این امکان وجود دارد و راه آن استفاده از FPGA ها است.

ادامه این آموزش که توسط خانم م.سرائی در انجمن نواندیشان ارسال میشود را میتوانید از آدرس زیر دنبال کنید

www.noandishaan.com/forums/thread155106.html

 

 

 

 


درباره نویسنده

مطالب مرتبط

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *