فایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن
دریافت فایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن به همراه پاورپوینت رایگان!
🎁 پیشنهاد ویژه برای شما!
با خرید پروژه فایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن، یک پاورپوینت حرفهای با طراحی جذاب و قابل استفاده بهصورت کاملاً رایگان به شما اهدا میشود.
✨ چرا فایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن انتخاب مناسبی است؟
- ۵۹ صفحه فرمتبندیشده و استاندارد: فایل Word حاوی ۵۹ صفحه کاملاً تنظیمشده است و آماده برای چاپ یا ارائه میباشد.
- مطابق با استانداردهای علمی: این فایل مطابق با اصول و استانداردهای دانشگاهی و مؤسسات آموزشی تهیه شده و بهخصوص برای دانشجویان و دانشآموزان مناسب است.
- محتوای دقیق و منظم: فایل نهایی بدون هیچگونه بهمریختگی ارائه میشود و تمامی موارد بهدرستی تنظیم شدهاند.
- پاورپوینت رایگان: بهعنوان یک هدیه ویژه، پاورپوینت آماده با طراحی زیبا و استاندارد به همراه فایل Word دریافت خواهید کرد.
- آماده برای ارائه: فایلها بهطور کامل آمادهاند و نیازی به تغییر یا ویرایش برای ارائه در کلاسها و سمینارها ندارند.
- مطالب علمی و کاربردی: این فایل شامل اطلاعات علمی بهروز و مفید است که به شما در درک بهتر موضوعات کمک خواهد کرد.
- قابلیت ویرایش آسان: فایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن بهطور کامل فرمتبندی شده است و بهسادگی قابل ویرایش است تا با نیازهای شما هماهنگ شود.
- تضمین کیفیت: ما کیفیت این فایل را تضمین میکنیم و در صورت بروز هرگونه مشکل، پشتیبانی کاملی ارائه میدهیم.
توجه : به همراه فایل word این محصول فایل پاورپوینت (PowerPoint) و اسلاید های آن به صورت هدیه ارائه خواهد شد
فایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن دارای ۵۹ صفحه می باشد و دارای تنظیمات و فهرست کامل در microsoft word می باشد و آماده پرینت یا چاپ است
فایل ورد فایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن کاملا فرمت بندی و تنظیم شده در استاندارد دانشگاه و مراکز دولتی می باشد.
بخشی از فهرست مطالب پروژه فایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن
مقدمه
ساختار کلی FPGA
مقایسه FPGA با MPGA
مراحل پیاده سازی یک طرح بر روی F PGA
جایگزینی و سیم کشی اتصالات داخلی
انواع متفاوت معماری های F PGA
معیارهای اساسی انتخاب واستفاده ازF PGA
تکنولوژی های مختلف برنامه ریزی
استفاده از S RAM
استفاده از Anti_Fuse
استفاده از تکنولوژی های گیت شناور( E EPROM, EPROM )
معماری بلوکهای منطقی
اثر معماری بلوکهای منطقی بر کارایی F PGA
معماری اتصالات قابل برنامه ریزی
تراشه های قابل بر نامه ریزیCPLD
مقایسه FPGA ها و CPLD ها
انواع PLD ها
مقایسه معماری CPLD ها و FPGA ها
مقایسه CPLD ها و FPGA از نظر اتصالات داخلی
بهره برداری از گیت های منطقی
تکنولوژی ساخت تراشه
زبان توصیف سخت افزاری AHDL
نمادها
اسامی در AHDL
گروهها
محدوده و زیر محدوده گروهها
عبارات بولی
عملگرهای منطقی
عملگرهای حسابی
مقایسه گرها
حق تقدم در عملگرهای بولی و مقایسه گرها
گیتهای استاندارد(ساده)
بافر TRI
ماکروفانکشن ها
پورتها
نگاهی گذرا به VHDL
ویژگیهای زبان VHDL
دستورات زبان VHDL
مراحل پیادهسازی برنامههای VHDL در FPGA
مقدمه:
امروزه با پیشرفت در زمینه ساخت قطعات قابل برنامه ریزی در روشهای طراحی سخت افزار تکنولوژی V LSIجایگزین SSI شده است.رشد سریع الکترونیک سبب شده است تا امکان طراحی با مدارهای مجتمعی فراهم شود که درآنها استفاده از قابلیت مدار مجتمع با تراکم بالا و کاربرد خاص نسبت به سایر کاربردهای ان اهمیت بیشتری دارد. از اینرواخیرا مدارهای مجتمع با کاربرد خاص( Integrated Circuit (Application Specific به عنوان راه حل مناسبی مورد توجه قرار گرفته است(ASIC) وروشهای متنوعی در تولیداین تراشه ها پدیدآمده است.در یک جمع بندی کلی مزایای طراحی به روش A SIC عبارت است از :
• کاهش ابعاد و حجم سیستم
• کاهش هزینه و افزایش قابلیت اطمینان سیستم که این امر ناشی ازآن است که بخش بزرگی از یک طرح به داخل تراشه منتقل میشود وسبب کاهش زمان ، هزینه مونتاژ راه اندازی ونگهداری طرح می شود و در نتیجه قابلیت اطمینان بالا میرود.
• کاهش مد ت زمان طراحی وساخت وعرضه به بازار
• کاهش توان مصرفی ,نویز واغتشاش
• حفاظت از طرح:سیستم هایی مه با استفاده از تراشه های استاندارد ساخته می شوند به علت وجود اطلاعات کامل در مورد این تراشه ها به راحتی از طریق مهندسی معکوس قابل شناسایی و مشابه سازی هستند.در عین حال امنیت طرح در تجارت از اهمیت زیادی بر خوردار است و اکثر طراحان مایلند تا از این بابت اطمینان حاصل کنند .
اولین تراشه قابل برنامه ریزی که به بازار عرضه شد ، حافظه های فقط خواندنی برنامه پذیر PROM)) بود که خطوط آدرس به عنوان ورودی وخطوط داده به عنوان خروجی این تراشه ها تلقی می شد. PROM شامل دسته ای از گیتهای AND ثابت شده(غیر قابل برنامه ریزی ) که به صورت رمز گشا بسته شده اند و نیز یک ارایه O R قابل برنامه ریزی است.
از آنجایی که PROM دارای قابلیت های لازم برای پیاده سازی مدارهای منطقی نمی باشد، از این تراشه ها بیشتر به عنوان حافظه های قابل برنامه ریزی استفاده می شود.
این قطعات دارای دو آرایه قابل برنامه ریزی AND,OR هستند .در سال ۱۹۲۰ Philips, ساختار PLA را به بازار عرضه کرد که دواشکال ان هزینه گران ساخت ان وسرعت کم آن بود.
شرکت Memories Monolitic برای پوشش دادن اشکالات PLA ساختار آرایه قابل برنامه ریزی منطقی PAL را به بازار عرضه کرد. PAL شامل یک آرایه AND قابل برنامه ریزی و یک OR تثبیت شده است.
PALهای استاندارد،آرایشهای متفاوتی دارند که هر یک از آنها توسط عددی یکتا مشخص می شوند.این عدد همیشه با پیشوند PAL شروع می- شود .دو رقم بعدازPAL , تعداد ورودیها را نشان می دهد که شامل خروجیهایی است که به صورت ورودی به کار روند.حرف بعد از تعداد ورودیها نوع خروجی را نشان می دهد:
L یعنی فعال پایین, H یعنی فعال بالا و P یعنی قابل برنامه ریزی .
یک یا دو عد د بعدی که بعد از نوع خروجی قرار می گیرد،تعداد خروجیهاست. به عنوان مثال PAL10L8 دارای ۱۰ ورودی و۸ خروجی فعال پایین است.
علاوه بر این شماره PALمی تواند پسوند هایی برای تعیین سرعت ،نوع بسته بندی و حوزه حرارتی داشته باشد.
بعد از PAL، یکی از تراشه های منطقی قابل برنامه ریزی PLD(Programable Logic Device) که در بسیاری از کاربرد ها،جایگزین مدارهای MSI,LSI با عنوان آرایه عمومی منطقی GAL)) به بازار عرضه شد.
GAL(Generic Array Logic) شامل آرایه ای قابل برنامه ریزی از گیت های AND است که به گیتهای OR متصل شده است.
درGAL به جای فیوزاز سلولهایی از نوع CMOS که قابل پاک شدن به صورت الکتریکی هستند (E2CMOS) هستند استفاده شده است.
GAL آرایشهای متنوعی دارد که هر یک توسط شماره یکتایی مشخص می شود.این شماره ،همواره با پیشوند GAL آغاز میشود دو رقم اولیه که بعد از پیشوند GAL می آید تعداد ورودیها را نشان می دهند که خروجیها یی که میتوانند به عنوان ورودی نیز به کار روند را در بر دارد.حرف V که بعد از ورودیها می اید،خروجی متغیر و یک یا دو رقم بعد از آن، تعداد خروجیها را نشان می دهد.
به عنوان مثال GAL1 6V 8 دارای ۱۶ ورودی و ۸ خروجی متغیر است.
به همراه تراشه های قابل برنامه ریزی ASIC قابل ماسک MPGA(Masked Programmable Gate Array) نیز شروع به رشد کرد که به صورت ارایه أی از ترانزیستور های پیش ساخته هستند و برای پیاده سازی مدارهای منطقی ، در کارخانه های سازنده به یکدیگر متصل می شوند.ظرفیت آنها طی ده سال ، از حدود هزار گیت به مرز چند ده هزار گیت رسید.
پیشرفت در ابزار های طراحی و نیز تراشه های قابل برنا مه ریزی منجر به عرضه FPGA شد.
امروزه FPGA ها از نظر تکنولوژی در زمره بزرگترین مدارهای مجتمع موجود در بازار هستند.مثلا محصولات Altera از سری FLEX10K با تکنولوژی نیم میکرون ، حدود ده میلیون ترانزیستور را در گستره أی به ابعاد 1.8cmدر ۱.۵ cmجای داده اند.
گر چه این محصولات ظرفیتی بیش از ۳۰۰۰۰۰ گیت و۳۰۰ پایه I/ /O را به کاربر عرضه می کند ولی با این همه هنوز از تراشه هایی چون ۱ ۶V8 و نیز سری 74LS00استفاده فراوانی به عمل می اید. با وجود اینکه می توان ۷۰۰۰ نوع از تراشه اخیر در یک FPGA معمولی جای داد.
بیشتر FPGA ها ی مورد استفاده ظرفیتی حدود ۸۰۰۰ گیت دارند .از های بزرگتر برای ساخت نمونه های اولیه به منظور پیاده سازی نهایی با MPGA ها استفاده می گردد .
این امکان نتیجه پیشرفت در نرم افزار های طراحی است که میتوانند مستقل از تراشه نهایی طراحی را انجام دهند و در نهایت طراح می تواند تصمیم بگیرد که طرح با FPGA یا MPGA پیاده سازی گردد .
به نظر می رسد که در آینده ، ایدهFPGA همچنان قوام بیشتری به خود گرفته و با ایجاد ابزارهای طراحی قویتر که دستورات پیشرفته تری از VHDL(Very Hardware Description Languages) و AHDL (Altera Hardware Description Languages) را پشتیبانی می کنند، راه برای به کار گیری هر چه بیشتر این گونه تراشه ها هموار گردد.طلیعه این گونه پیشرفت ها را می توان درتراشه ها ی بسیار پیشرفته (FIPSOC (Fild ed Programmable System On Chip مشاهده کرد.
ساختار کلی F PGA :
FPGAما نند MPGAتشکیل شده است از یک سری عناصر منطقی که برای کار خاصی محدود شده اند و نیز مانند PAL دارای اتصالات قابل برنامه ریزی است. بنابر این هر دو جزء اصلی تشکیل دهنده یک مدار یعنی بلوکهای منطقی و همچنین اتصالات بین آنها، قابل برنامه ریزی است.شکل زیر ساختار اصلی یک F PGA را نشان میدهد.
همانطور که در شکل مشخص است سه جزء اصلی آن عبارتند از بلوکهای منطقی ، عناصری که برای اتصالات به کار می روند وبلوکهای ورودی ـ خروجی.
ساختار و محتویات بلوکهای منطقی میتواند خیلی ساده (در حد گیت NAND) و یا خیلی پیچیده(نظیر چند MUXیاLook-UpTable به همراه یک فلیپ فلاپ) باشد.
بلوکهای منطقی در حقیقت جایی هستند که قسمتهای اصلی مدار قرار می گیرند . البته ابتدا باید مداری که قرار است روی F PGA قرار بگیرد به اجزای یکسانی که همان محتویات بلوکهای منطقی هستند تقسیم شود و بعد از این عمل است که می توان با بلوکهای پایه به هم مدار واقعی را به دست اورد.
عناصری که برای اتصالات به کار می روند ، همانطور که در شکل مشخص است،معمولا بین بلوکهای منطقی قرار می گیرند واز قطعات فلزی که می توانند به هم یا به بلوک های منطقی متصل شوند تشکیل شده اند. برای متصل کردن این قطعات از سوئیچهای قابل برنامه ریزی استفاده می شود. این قطعات می توانند طولهای متفاوتی داشته باشند.
بلوکهای ورودی – خروجی برای اینکه پین ها ی FPGA را بتوان در مد های مختلف ۳/۳ یا ۵ ولت و..برنامه ریزی کرد به کار می روند. طراحی بلوکهای منطقی و عناصر اتصالی مهمترین قسمت طراحی یک F PGA می باشد.زیرا طراحی این دو با هم باید به گونه أی باشد که پیاده سازی مدارات منطقی مختلف را روی F PGA ممکن سازد.معمولا بین پیچیدگی و انعطاف پذیری هر دوی بلوکهای منطقی و منابع اتصالی یک نسبت معکوس وجود دارد .یعنی با زیاد شدن یکی دیگری کم می شود و بر عکس.در ضمن، معماری یک بلوک منطقی و همچنین منابع اتصالی بر کل مساحت تراشه و سرعت تراشه اثر دارد.
مقایسه FPGA با MPGA:
پیشرفت تکنولوژی CMOS همواره باعث ایجاد مدارهای مجتمع پیچیده تر و پیشرفته تر شده است .به گونه أی که روز به روز بر بهبود وضعیت F PGA ها در برابر MPGA ها افزوده می شود. قبل از هر چیز توجه به این نکته ضروری است که به طور کلی نام اختصاری FPGA هم به FPGA هاو هم به CPLD ها اتلاق می گردد.
تا پیش از این تنها از MPGA ها برای تولید سریع نمونه های اولیه در طرح های ASIC استفاده میشد اما به موازات پیشرفت در تکنولوژی C MOS و امکان جای دادن مدارهای بسیار پیچیده بر روی یک تراشه , را برای جایگزین شدن F PGA ها به جای MPGA ها در کاربردهایی همچون سیستمهای کنترل صنعتی و مخابرات , هموار شد.
پس از اینکه ظرفیت FPGA به چند هزار گیت رسید,صحبت از جایگزینی F PGA ها جنبه عملی تر یافت .به علت تنوع تکنولوژی های به کار رفته در ساخت FPGA و نیز وجود ابزار های مختلف و پیشرفته حامی هر یک از انها یک تکنولوژی به خصوص از FPGA ها را نمی توان به ساد گی انتخاب کرد.
گر چه هم اکنون فرکانس کار برای F PGA ها نوعا حدود ۱۲۰MHZ تا۸۰۰MHZ می باشد ,اما محدوده واقعی کاملا به نوع طرح پیاده شده بستگی داشته و همچنین بسته به نوع مکان یابی و مسیر یابی ابزارهای طراحی می باشد.
FPGA ها معمولا به اندازه کافی پینI/O فراهم میکنند به طوریکه FPGA هایی با بیش از ۳۰۰ پین نیز در دسترس می باشند .در طرح هایی که برای پیاده سازی به چند FPGA نیاز می باشد ,از کل این پایه ها استفاده می شود.به خصوص اگر در در طرح,باس های ادرس و داده نیز وجود داشته باشد.
FPGA در مقایسه با MPGA دارای دو مزیت عمده می باشد :
هزینه پایین برای تولید کم : اماده سازی MPGA نیاز به استفاده از خط تولید کارخانه دارد ودر نتیجه برای تولید کم مقرون به صرفه نیست.
سر عت بالای اماده سازی :به دلیل بالا بودن مدت زمان اماده سازی در کار خانه و همچنین صرف زمان برای رفع عیبهای احتمالی ,اماده شدن چیپ M PGA خیلی طولا نیتر از FPGA است که به راحتی ظرف چند دقیقه در محل کار برنامه ریزی میشود.
در عوض سه عیب عمده ای که FPGA ها نسبت به MPGA ها دارند عبارتند از :
سرعت کم ( تا حد سه برابر ):به دلیل تاخیر زیاد سوئیچهای برنامه پذیر در مسیرهای اتصالات .(زیرا ظرفیت خازنی و مقاومتی بالایی دارند.)
چگالی پایین تر منطقی :به دلیل سطح اشغال شده توسط سوئیچهایومداراتی که برای برنامه پذیر کردن چیپ استفاده می شوند.
قیمت بالا برای تولیدات با تعداد زیاد .
مراحل پیاده سازی یک طرح بر روی F PGA:
اصولا روش طرا حی مدارات منطقی مستقل از تراشه نهایی است که برای پیاده سازی انتخاب می گردد .معمولا در این گونه طراحی ها ,یک کتابخانه از بلوکهای پیش ساخته در اختیار طراح قرار دارد که اعضای کتابخانه از قبل طراحی شده اند.البته در این کتابخانه بر خلاف Data Bookها به pin-out نیازی نمی باشد.اعضای پیچیده تر نظیر شمارنده ها و یا ساختار هایی شبیه تراشه های استانداردT T L وCMOS را ماکرو می نامند .هر ماکرو معمولا یک یا چند سلول از تراشه ها را اشغال می کند که با سیم بندی مناسب تابع مورد نظر را ایجاد می کند .در پروسه طراحی مهمترین بخش را مرحله شبیه سازی تشکیل می دهد. از انجا که طرح به صورت بخش بخش می باشد کلیه این بخش ها را می توان جداگانه و با اعمال ورودی و دریافت های خروجی های مورد نظر تست کرده و در نهایت کل طرح را به طور یک جا تست نمود .
بر خلاف تراشه های استاندارد,در ماکرو ها می توان تنها بخشهای مورد استفاده در طرح را استفاده کردو بقیه ماکرو را بدون هدر دادن هیچ بخشی از سلول قابل برنامه ریزی ,از طرح زدود.اما با این همه این مشکل به گونه أی د یگر می تواند ظهور کند.از انجا که هر تراشه با تعداد ثابتی سلول ساخته می شود. بنا براین پیاده سازی طرح با اولین تراشه ای صورت می گیرد که بتواند تعداد سلولهای مورد نیاز برای طرح را بر اورده کند.از این رو در صورتی که کوچکترین تراشه دارای ۱۰۰۰ سلول و تراشه بعدی دارای ۱۵۰۰ سلول باشد برای طرحی که نیاز به ۱۰۱۰ سلول دارد, ۳۰% از تراشه اخیر بدون استفاده رها خواهد شد . شکل صفحه بعد فلو چارت مراحلی را که برای پیاده سازی یک طرح بر روی F PGA باید طی شود نشان می دهد.
ورودی سیستم
در یک نرم افزار طراحی مدار را به روشهای مختلف می توا ن وارد نمود .و از جمله این روشها ویرایشگر های شماتیکی مدار , زبانهای ساده توصیف سخت افزار ( AHDLوDBEL و…) ویرایشگر های موج(که شکل موج ورودی /خروجی را به عنوان ورودی به سیستم قبول می کنند) و زبانهای توصیف سخت افزار در سطوح مختلف(مانند VHDLوVerilog) می باشند.
ترکیب و ترجمه
در ادامه طراحی می توان هر قسمت از طراحی را به هر یک از روشهای بالا که وارد شود با قسمت های دیگر ترکیب کرد و کل مدار را به صورت معادلات منطقی در اورد که خروجی طبقه کامپایل و ترکیب است.
بهینه سازی
در این قسمت به وسیله یک سری از الگوریتم ها و با توجه به معادلات جبر بولی و الگوریتم های بهینه سازی در ان و همچنین با توجه به ساختار خاص بلوکهای برنامه ریزی در FPGA ,معادلات بهینه به دست می اید.
یک نقطه ضعف در خلاصه سازی ان است که تغییر ساختار مدار باعث دشواری رفع خطاها یی که در مرحله شبیه سازی اشکار می شوند,می گردد.
نگاشت تکنولوژی
ترجمه یک مدار از گیت های پایه به مدارهایی با المانهای مداری دیگر (مانند سلولهای منطقی FPGAیا سلولهای پایه CPLD)را نگاشت تکنولوژی گویند.از انجایی که اطلاعات کامل در رابطه با ساختار FPGA باید در اختیار نرم افزار نگاشت قرار گیرد,معمولا این نرم افزارتوسط شرکت فروشنده تراشه قابل برنامه ریزی تولید می شود.
معمولا در برنامه نگاشت تکنولوژی یک فاز بهینه سازی منطقی با توجه به ساختار بلوکهای برنامه پذیر ,برای مینیمم کردن مساحت مصرفی یا بالا بردن سرعت موجود می باشد.
جایگزینی و سیم کشی اتصالات داخلی
بعد از انجام عمل نگاشت برنامه جایگزینی برای محل قرار گیری هر بلوک منطقی مدار تصمیم می گیرد که هر سلول منطقی در کدام سلول فیزیکی F PGA قرار گیرد.این مساله دارای پیچیدگی زیادی است.از انجایی که اطلاعات کامل در رابطه با ساختار اتصالات داخلی FPGA و نحوه قرار گیری سلولها درون FPGA باید در اختیار نرم افزار جایگزینی و سیم کشی قرار گیرد ,معمولا این نرم افزار ها توسط شرکت فروشنده تراشه تولید می شود. بعد از این عمل جایگزینی نرم افزار سیم کش در مورد واگذاری منابع برای اتصالات مورد نیاز تصمیم می گیرد.در این تراشه ها ,استفاده از ۹۵% سلولها و حتی بیشتر امکان پذیر است .
شبیه سازی
دو نوع شبیه سازی توسط نرم افزار انجام می شود:
شبیه سازی منطقی
این شبیه ساز از نظر منطقی عملکرد مدار را تست می کند.در این عمل , اطلاعاتی از زمان بندی و همچنین عملیات بهینه سازمنطقی در اختیار نیست.اگر خطایی در طراحی باشد در این مرحله مشخص می شود.
شبیه ساز زمانی
در این مرحله که پیش از مسیر یابی و رفع سایر مشکلات صورت می گیرد. پارامتر های تاخیر ,توان و خازنهای مدار و..نیز به محیط شبیه سازی منتقل شده و تصویر واقعی از عملکرد تراشه را به دست می دهد . تاخیر های فوق در واقع از کتابخانه ای که نرم افزار در دسترس دارد ,استخراج می شود و معمولا بدتر از حالت واقعی تراشه در نظرگرفته شده است .به گونه أی که پس از برنامه ریزی تراشه ,عملکرد تراشه معمولا سریعتر از مقدار پیش بینی شده توسط نرم افزار شبیه سازی است.
از مرحله شروع تا جا دادن طرح در داخل یک یا چند FPGA (با توجه به اندازه مدار ) و همچنین متصل کردن بلوکهای منطقی به هم اصطلاحا سنتز مدار روی FPGA گفته می شود.
انواع متفاوت معماری های F PGA
چهارنوع مختلف معماریهای FPGA را که کارخانجات متفاوت استفاده می کنند, عبارتند از :
• ارایه دو بعدی متقارن
• سطری
• دریایی از گیت ها
• مدارات سلسله مراتبی
نوع اول از یک ارایه دو بعدی از یک بلوکهای منطقی که منابع اتصالات به صورت سطری و ستونی بین این بلوکها واقع شده اند,تشکیل یافته است.
این نوع معماری توسط شرکت Xiliفایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن استفاده می شود.
نوع دوم شبیه به نسلهای اولیه MPGA ها می باشد و در حال حاضر ,توسط شرکت Actel پیاده سازی می شود.
نوع سوم متشکل از بلوکهای کوچک منطقی است که با لایه هایی برای برقراری اتصال بین این بلوکها پوشیده شده است .در این گونه ساختار سلولهای منطقی تنها قادرند که به نزدیکترین سلول همسایه أی متصل شوند که در مختصات افقی یا عمودی مشابهی قرار دارد .در این ساختار از سلولهای منطقی نیز می توان در جهت برقراری ارتباط استفاده کرد.که البته چنین کاری باعث افزایش تاخیر در مسیر سیگنال و نیز کاهش ظرفیت گیتی در دسترس می گردد .این نوع معماری شبیه به نسلهای بعدی MPGA ها می باشد که ان هم توسط شرکت Actel در معماریهای جدیدش استفاده می شود.
نوع چهارم معماری FPGA بر گرفته شده ازمعماری PLD ها وCPLD ها میباشد وتوسط شرکت Atera در سری MAX ساخت این کارخانه استفاده شده است.
معیارهای اساسی انتخاب واستفاده ازF PGA
به هنگام طراحی یک سیستم طراح با توجه به مشخصات سیستم ابتدا بلوکهای کلی از بخشهای اساسی سیستم را روی کاغذ پیاده می کند.نوعا این بلوکها شامل بلوک پردازنده , بلوکهای حافظه و برخی ورودی ها –خروجی ها و مدار های واسطه لازم می باشند.
برخی از این بلوکها را می توان با یک تراشه طراحی کرد حال انکه برخی قسمت ها به تعداد تراشه های بیشتری نیاز دارند .
به موازات پیشرفت تکنولوژی امروزه بسیاری از بلوکها را می توان در یک تراشه جای داد. از این رو طراح باید دست به انتخاب چنین تراشه أی بزند و طراحی سایر قسمتها رابر این اساس پیش ببرد.
با ظهور مدارهای LSI قابل برنامه ریزی وFPGAها,طراحان با گستره أی از انتخاب ها مواجه شدند.از این روطراح قبل از انتخاب یک F PGA نیازبه اطلاعات اساسی در این زمینه دارد.در این رابطه لازم است که طراح بتواند میزان گیت مورد نیازو نیز تعداد پایه های I/O و مشخصه مورد نیاز برای طراحی را تخمین بزند.
با توجه به اینکه امروزه خانواده های مختلفی از F PGA ها در دسترس می باشند,مسئله أی پیش روی طراح وجود داردو ان اینست که کدام تراشه برای یک کاربرد خاص مفید تر است؟
با در نظر گرفتن سه فاکتور مهم در هر خانواده می توان به انتخاب نهایی نزدیک شد.انتخاب نهایی نیز می تواند با توجه به فاکتور مهم قیمت صورت گیرد.
مقایسه مشخصه ها
از نظر مشخصه ها هنگامی می توان FPGA ها را با یکدیگر مقایسه کرد که این موضوع روشن شده باشد که اندازه گیری مشخصه در خانواده های مختلف از راه های مشابهی صورت گرفته است . از فرکانس کار می توان به عنوان نمونه أی در این زمینه نام برد.
چنین فرکانسی می تواند ماگزیمم فرکانسی باشد که فلیپ فلاپها قادر به تقسیم ان دو باشند و یا مینیمم پهنای پالس H ighوLowباشد که یک شمارنده قادر است با ان درست عمل کند و یا اصولا ماکزیمم فرکانس کار یک ماشین حالت باشد.برخی نیز مبنای اندازه گیری را میزان تاخیر انتشار در نظر می گیرند.گر چه تعاریف اخیر ساده است ولی با این همه مشکلاتی را پیش می اورد .
بر این اساس FPGA را به صورت یک گیت ساده برنامه ریزی کرده و تاخیر بین ورودی و دریافت خروجی را اندازه گیری می نمایند.برای مثال فرض کنید که یک گیت پیچیده مثلا یک AND با ۲۰ ورودی لازم باشد, در این حال تراشه های خانواده های PAL تاخیری به اندازه یک گیت ساده دو ورودی را ایجاد می کنند.در حالیکه در ساختارهای FPGA به دلیل به کارگیری چند لایه برای تحقق چنین گیتی , میزان تاخیر افزایش می یابد.
بنابر این انچه که باید مشخص شود,ان است که برای اندازه گیری مشخصه هادر F PGA های مختلف چه اندازه گیریهایی صورت گیرد؟در این رابطه می توان به ازمایشهای پیچیده أی که از سوی موسسات ناظر بر این تولیدات صورت می گیرد ,مراجعه کرد.اما برای انجام یک مقایسه ساده بر اساس داده های تولید کنندگان ,چهار ازمایش انجام می شود.نتایج این ازمایشها در کنار نتایج حاصل از ان دسته خانواده هایی که با ازمایشهای PREPتست شده اند نشان می دهد که تا چه اندازه می توان بر این تخمین ها تکیه کرد.چهار ازمایش مذکور عبارتند از :
• تاخیر ورودی-خروجی یک AND چهار ورودی
• تاخیر ورودی-خروجی یک مقایسه کننده هشت ورودی
• ماکزیمم فرکانس CLOCK مربوط به یک شیفت رجیستر
• ماکزیمم فرکانس کار یک شمارنده ۱۶ بیتی(این قسمت از ازمایشهای P REPاست)
تعداد گیت و پایه های I/O
پس از انکه مشخص شد کدام یک از خانواده ها قادرند تا مشخصه لازم را براورده کنند, انتخاب تراشه بستگی به تعداد گیت ,تعدادI/O و فاکتور قیمت دارد.تعداد گیتهای MPGA ها استاندارد خاصی ندارد اما برای ارایه های گیتی,اغلب بر اساس گیتهای دو ورودی محاسبه می شود.در این روش یک گیت چهار ورودی معادل سه گیت دو ورودی و یک فلیپ فلاپ D معادل ۶ گیت محاسبه می گردد.
با این همه تخمین گیت در FPGA عموما ساده نیست.برای مثال MACH110 دارای ۳۲ سلول بزرگ(Macrocell) می باشد که هر یک دارای چهار AND_22 ورودی که از ترکیب ۲۱ گیت دو ورودی ساخته شده و یک گیت O R چهار ورودی که از ترکیب سه گیت دو ورودی ساخته شده و یک فلیپ فلاپ D که از ترکیب ۶ گیت دو ورودی ساخته شده , تشکیل شده است.از این رو برای ساخت هر Macrocell به ۹۳ گیت نیاز می باشد.
به عبارتی مجموعا می توان ظرفیت تراشه را با ۲۹۶۷ گیت تخمین زد .تعداد درست گیت موجود در تراشه بستگی کامل به طرح در دست پیاده سازی دارد .برای مثال اگر با هر Microcell یک گیت چهار ورودی را پیاده سازی کنیم,در این صورت ظرفیتMACH110 برابر ۹۶ گیت خواهد بود. ظرفیت یک أی سی با استفاده از نتایج چند ازمایش مختلف و گرفتن متوسط ان به دست می اید,معمولا این ازمونها بر اساس پیاده سازی چهار مدار زیر صورت می گیرد:
• گیت های چهار ورودی
• مقایسه کننده های هشت ورودی
• شیفت رجیستر های هشت بیتی
• شمارنده UP/DOWN
داده های PREP
PREPموسسه مستقلی است که توسط مجموعه تولید کنندگان تراشه های قابل برنامه ریزی حمایت می شود.این موسسه با استفاده ازیک سری ازمایشهای به خصوص ,مشخصه و ظرفیت تولیدات مختلف را مقایسه می کند.
پیاده سازی مدارهای زیر مبنای این مقایسه ها می باشد :
• یک مدار مسیر داده (شامل یک مالتی پلکسر ۴ به ۱و یک رجیستر و یک شیفت رجیستر)
• یک شمارنده (شامل دو رجیستر و یک مالتی پلکسر ۴به۱)
• یک ماشین حالت کوچک( شامل ۸ حالت و ۸ ورودی و خروجی)
• یک ماشین حالت بزرگ(شامل ۱۶ حالت و ۸ ورودی و خروجی)
• یک مدار محاسبه ریاضی(شامل یک ضرب کننده ۴ در ۴ به همراه یک جمع کننده ۸ بیتی و یک رجیستر ۸ بیتی)
• یک اکومولاتور ۱۶ بیتی
• یک شمارنده ۱۶ بیتی با قابلیت بار شدن و فعال کننده هم زمان
• یک شمارنده ۱۶ بیتی با قابلیت بار شدن و امکان اغاز شمارش با مقدار جدید بار شده
• یک دیکدر ادرس ۱۶ بیتی
جزییات این مدار ها را با مراجعه به Data Book هر یک از تولید کنندگان تحت حمایت PREP می توان بررسی کرد.تراشه تحت حمایت برای اجرای چندین مدار از نمونه های فوق به کارگرفته می شود.
به عنوان نتیجه گیری باید گفت از انجا که P REP از سوی بسیاری از تولید کنندگان حمایت می شود,می توان به داده های ان برای برای انتخاب تراشه مناسب تا اندازه زیادی اعتماد کرد.
تکنولوژی های مختلف برنامه ریزی
قابلیت برنامه ریزی شدن مدارات مختلف و اتصالات متفاوت رویF PGA به دلیل وجود سوئیچهای الکتریکی قابل برنامه ریزی است که روی این تراشه وجود دارد .این سوئیچها باید دارای مشخصاتی باید دارای مشخصاتی باشند تا اثر منفی بر روی عملکرد FPGA نداشته باشند .مهمترین این مشخصات ان است که باید تا حد امکان جای کمی را اشغال کنند و مقاومت و ظرفیت خازنی کمی داشته باشند تا تاخیر زیادی ایجاد نکنند. از جمله سایر مشخصاتی که بعضی از این سوئیچها دارند قابلیت حفظ اطلاعات نوشته شده بر روی انها با از دست دادن برق(Non_Volatile), قابلیت برنامه ریزی مجدد روی انها (Reprogrammable), قابلیت برنامه ریزی داخل مداری(Programmable in system) و… می باشندکه سه مورد اخر هر کدام مزایا و معایبی دارند.به عنوان مثال سوئیچهای مبتنی بر حافظه های موقت با قطع برق اطلاعات خود را از دست می دهند. در نتیجه با هر بار روشن و خاموش شدن سیستم ,مجددا باید FPGAبرنامه ریزی شود.
سه تکنولوژی اصلی که برای برنامه ریزی کردن ساختار F PGA استفاده می شود عبارتند از:
• استفاده از سلولهای حافظه موقت(S RAM)
• استفاده از Anti_Fuse
• استفاده از گیت شناور (EEPROM,EPROM)
استفاده از S RAM
از سلول حافظه به دو گونه استفاده می شود.در روش اول از از یک سلول حافظه موقت برای کنترل روشن یا خاموش بودن یک ترانزیستور CMOS(PASS GATE) استفتده می شود.یعنی خروجی سلول حافظه را به گیت این ترانزیستور متصل می کنند.
در روش دوم با اتصال خروجیهای سلولهای حافظه به ورودیهای انتخاب یک مالتی پلکست مشخص می کنند که کدامیک از خطهای ورودی مالتی پلکسربه خروجی متصل می شود.همانطور که اشاره شد این روش دارای این ضعف است که باید هر بار که برق سیستم قطع می شود مجددا محتوای سلولهای حافظه نوشته شود که این کار نیاز به این دارد که یک حافظه دائمی PROM یا EPROM یا یک دیسک مغناطیسی در کنار FPGA گذاشته شود تا هر بار موقع روشن شدن اطلاعات خودش را از روی ان بخواند(عمل B OOT شدن (FPGA.مشکل دیگر این روش حجم زیادی است که سلول حافظه به خود اختصاص می دهد.زیرا یک سلول حافظه به ۵ یا ۶ ترانزیستور نیاز دارد .ولی در عین حال مزیت استفاده از حافظه های موقت ,قابلیت برنامه ریزی مجدد ان حتی در داخل مدار می باشد.شرکت Xiliفایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن برای برنامه ریزی FPGA های ساخت خود استفاده می کند.
استفاده از Anti_Fuse
Anti_Fuseنوعی فیوز است که بر عکس فیوز معمولی در حالت عادی اتصال کوتاه است.لذا در حالت عادی قطع است و هنگامی وصل می باشد که یک جریان نسبتا زیادی از دو سر ترمینال ان عبور داده شود.
دو نوع انتی فیوز در FPGA مورد استفاده است .یک نوع انها که تحت عنوان PLICE شناخته شده توسط شرکت Actel استفاده می شود و نوع دیگر که تحت عنوان Vialink شناخته می شود ,توسط شرکت Quicklogic استفاده می شود.
FPGA هایی که از قابلیت انتی فیوز استفاده می کنند چگالی گیتی بیشتری را نسبت به انواع دیگر که از المانهای حافظه استفاده می کنند, در اختیار طراح قرار می دهند.مزیت عمده استفاده از انتی فیوزها بالا بودن فرکانس کاری انها می باشد چرا که ظرفیت خازنی و اثر مقاومتی کمی دارند.
عیب اصلی این روش انست که قابلیت برنامه ریزی مجدد ندارند و وقتی که یک انتی فیوز برنامه ریزی شد دیگر به حالت قطع بر نمی گردد.
استفاده از تکنولوژی های گیت شناور( E EPROM, EPROM )
در تکنولوژی MOS ترانزیستور ها خود به عنوان سوئیچی عمل می کنند که با اعمال سطح High یاLow به گیتشان می توان باعث قطع و وصل شدن این سوئیچها شد.در این روش از ترانزیستوری استفاده می شود که دارای گیت شناور است.با استفاده از این گیت شناور می توان سطح استانه ترانزیستور را با شارژ و دشارژ کردن گیت دوم تغییر داد و ترانزیستور را به صورت دائم خاموش کرد . به این ترتیب که با گذراندن یک جریان زیادبین گیت اصلی و درین ترانزیستور مقداری بار روی گیت شناور قرار می گیرد که باعث بابلا رفتن ولتاژ استانه ترانزیستور از حد معمول می شود و در نتیجه در ولتاژهای کاری ترانزیستور همیشه خاموش است.برای از بین بردن این بار در EPROM از اشعه ماورائ بنفش ودر EEPROM از جریان الکتریکی استفاده می شود.
شرکت Altera از این روش در سری های اولیه تولید خود استفاده می کرد . مزیت این روش مانند روش استفاده از حافظه موقت قابلیت برنامه ریزی مجدد انست.لازم به ذکر است که EPROM در خارج مدار وEEPROM در داخل مدار,برنامه ریزی مجدد را دارا می باشند.
معماری بلوکهای منطقی
بلوکهای منطقی شرکتهای سازنده FPGA از نظر اندازه و منطق به کار رفته در انها با هم تفا وتهای زیادی دارند .به عنوان مثال شرکت Plessey از دو عدد ترانزیستور برای ساخت بلوکهای منطقی خود استفاده کرده که تنها قابلیت ساخت یک گیت NOT ا دارد و در عین حال شرکت Xiliفایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن از یک (LUT)Look_Up Table 5 ورودی که قابلیت ساخت هر تابع تا ۵ ورودی را دارد استفاده کرده است. لازم به توضیح است که n_LUT چیزی جز یک حافظه با ۲ محل ذخیره سازی و در نتیجه n ورودی نیست.یک روش برای دسته بندی بلوکهای منطقی مختلف می توان تعریف معیار Granularity است این معیار را به گونه های مختلف می توان تعریف کرد که از ان جمله می توان به موارد زیر اشاره کرد:
• تعداد توابع منطقی که یک بلوک منطقی می تواند پیاده سازی کند
• تعداد گیت های NAND دو ورودی معادل با ان
• تعداد ترانزیستورهای ان
• تعداد ورودی ها و خروجی های ان
در هر حال به نظر می رسد که دو تعریف اول پر کاربرد ترین تعریف بین سازندگان مختلف FPGA باشند.
برای بررسی بلوکهای منطقی مختلف به کار رفته شده توسط سازندگان مختلف ,انها به دو دسته اصلی بلوکهای بزرگ و کوچک (حجیم و ساده )معادل با واژه های Course Grain و Fine Grain تقسیم می نمایند.در هر کدام از این دسته ها به تعدادی از بلوکهای منطقی استفاده شده در FPGA های مشهور بازار اشاره خواهد شد.
بلوکهای منطقی کوچک
این بلوکهای منطقی از نظر اندازه تا حد چند ترانزیستور هستند و بسیار شبیه به MPGA ها هستند .ولی در این بلوکها ترانزیستور ها می توانند به صورت برنامه ریزی شده به هم متصل شوند .
مهمترین مزیت استفاده از بلوکهای منطقی کوچک این است که استفاده کامل از این بلوکها به سادگی میسر است . همچنین سنتز کردن مدار انها اسان است.ساختار این FPGA ها بسیار شبیه به MPGA هااست و بنابر این ار الگوریتم های سنتز موجود می توان استفاده کرد.ولی عیب اصلی این گونه بلوکها این است که حجم اتصالات در این گونه FPGA ها بسیار بالا می رود و چون اتصالات قابل برنامه ریزی هم از لحاظ جایی که اشغال می کنند و هم از نظر سرعت کار به صرفه نیستند ,بنابراین این نوع FPGA ها اصولا از چگالی و سرعت کمتری نسبت به FPGA هایی که از بلوکهای منطقی بزرگ استفاده می کنند ,برخوردار می باشند.
بلوکهای منطقی بزرگ
این بلوکها قابلیت پیاده سازی توابع بزرگتری را نسبت به حالت قبلی ,دارا می باشند,همچنین تعداد توابعی که می توانند پیاده سازی کنند ,زیاد است این نوع بلوکها معمولا دارای یک فلیپ فلاپ داخلی برای ساخت مدارات ترتیبی هستند که در بعضی از این نوع بلوکها ,قابلیت نوع فلیپ فلاپ نیز وجود دارد .معمولا نرم افزار های سنتز ,توانایی استفاده کامل از همه قابلیت های این گونه بلوکهای منطقی پیچیده را ندارند و در نتیجه این یک ضعف برای این نوع بلوکها می باشد. در عوض به علت این که حجم زیادی از مدار را بر روی این بلوکها می توان پیاده سازی کرد, حجم اتصالات موجود بین بلوکها کمتر می شود و همین یکی از مزایای عمده این نوع بلوکها نسبت به بلوکهای کوچکتر می باشد.در حال حاضر بیشتر شرکتهای عمده سازنده FPGA نظیر Xiliفایل کامل و عالی بررسی و شناخت FPGA و کاربرد های آن و Actel و Altera از این نوع بلوکها استفاده می کنند .
اثر معماری بلوکهای منطقی بر کارایی F PGA
منظور از کارایی FPGA همان سرعت ان است.معماری بلوکهای منطقی به دو گونه خلاف هم برسرعت اثر می گذارد.با افزایش یچیدگی بلوک منطقی همانطور که گفته شد,هم تعداد بلوکهای منطقی مورد نیاز کم می شود و هم تعداد سطوح مورد نیاز برای پیاده سازی مدار .در نتیجه با افزایش تعداد ورودیهای بلوکهای منطقی ,سرعت FPGA ها بالا می رود.
مساله دیگری که بر سرعت FPGA تاثیر دارد این است که تاخیر اتصالات با افزایش پیچیدگی بلوکهای منطقی افزایش می یابد.از دلایل این امر می توان به موارد زیر اشاره کرد:
• تعداد سوئیچهای متصل به هر سیم در حال افزایش است.
• طول سیم ها با بزرگ شدن بلوکهای منطقی افزایش می یابد.
معماری اتصالات قابل برنامه ریزی
بعد از اینکه مدار مورد نظر طراح توسط نرم افزار سنتز به بلوکهای منطقی موجود روی FPGA سنتز شد, باید به مسیله أی این بلوکهای منطقی را به یکدیگر متصل کرد. اتصال بلوکهای منطقی به یکدیگر توسط منابع اتصال قابل برنامه ریزی انجام می شود.
این منابع معمولا حجم زیادی را روی FPGA اشغال می کنند.دلیل این مساله بزرگ بودن سوئیچهای است که برای برنامه ریزی کردن انها استفاده می شود.در ضمن به علت بزرگ بودن تاخیر RC انها ,سوئیچها معمولا باعث پایین اوردن سرعت FPGA می شوند.هر چه تعداد منابع اتصالات بیشتر باشد امکان برقراری اتصالات بین بلوکهای منطقی بیشتر و برقراری ارتباط اسانتر است. قبل از وارد شدن به بحث ابتدا دو اصطلاح Segment وTrack که در این مبحث از انها نام برده می شود ,تعریف می شوند.
Segment:قطعه أی از سیم است که در وسط ان سوئیچ استفاده نشده باشد.
Track: عبارت است از چند segment که در یک خط راست که به وسیله یک یا چند سوئیچ از هم جدا شده اند.
در هر یک از مدلهای FPGA به گونه های مختلف عمل برقراری اتصالات انجام می شود که در بخش زیر به ان پر داخته می شود.
روشهای مختلف ارتباط
با توجه به نوع مداری که برای FPGA در نظر گرفته می شود طریقه برقراری اتصالات در انها فرق می کند.این روشها عبارتند از :
• FPGAهای متقارن دو بعدی
• FPGA های سطری
• FPGA های سلسله مرا تبی
تراشه های قابل بر نامه ریزیCPLD
بازار تراشه های قابل بر نامه نویسی منطقی ظرفیت بالا در سالهای اخیر گسترش زیادی یافته است .دلیل ان هم اشنایی طراحان با تراشه های تازه ومعماری جدید آنها می باشد. با توجه به اینکه این تراشه ها دامنه بزرگی از طراحی ها را برایمان ممکن می سازد یک مهندس طراح می بایست بسته به نوع طراحی خود از میان تمام قطعات موجود بهترین و در عین حال به صرفه ترین تراشه را برای طراحی خود انتخاب کند.انتخاب تراشه مناسب می تواند به بازار فروش منجر شود.در حالی که انتخاب غلط سبب شکست اقتصادی پروژه خواهد شد.برای یک تصمیم صحیح به صرفه شما باید با تواناییها و همچنین محدودیت های تراشه های مختلف آشنا شوید.
PLD ها شامل قطعات کم ظرفیت تا پر ظرفیت می باشند.ظرفیت های کم PLD ها که اصطلاحا PLD های ساده نامیده می شوند معمولا کمتر از ۶۰۰ گیت قابل استفاده دارند و شامل محصو لاتی چون PLD-GAL می شوند.
PLD های ساده توسط تکنو لوژی CMOS طراحی شده اند که شامل EPROM و EEPROM و حافظه FLASH می باشند.HCPLD ها بیش از ۶۰۰ گیت قابل استفاده دارند و شامل CPLD و FPGA ها می شوند. در در این نوع تراشه ها تکنولوژی بسیار بالایی به کار رفته است. HCPLD را بسته به ساختمان اتصالات داخلی آنها می توان به دو دسته CPLD ها و FPGA ها تقسیم کرد.
CPLD ها از چندین تکنو لوژی مختلف CMOS استفاده می کنند که دامنه گسترده یی از طراحیهای دیجیتال را در اختیار قرار می دهند. ترتشه های EPROM -EEPROM – FLASH قابلیت دوباره بر نامه ریزی شدن را دارند. در CPLD هایی که بر مبنای SRAM ساخته شده اند معماری LUT به کار رفته است که رجیستر های متمرکز را در اختیار طراح قرار می دهد. این قطعات قابلیت تغییر شکل درون مداری را دارند.امروزه شبیه سازی کامپیوتری میتوانند جلوی برخی اشکالات و اشتباهات طراحی را بگیرد. اما به هر حال یک طرح قاعدتا نیاز به تست سخت افزاری طرح خود را دارد تا تغییرات نا محسوس خصو صیات سیستم را مشاهده و خطایابی کند. با قطعه ای که قابلیت فقط یک بار بر نامه ریزی داشته باشد و مثلا ساخته شده باشد طراحی چیزی جز به هدر دادن سرمایه نیست.
مقایسه FPGA ها و CPLD ها
بازار تراشه های قابل برنامه نویسی منطقی ظرفیت بالا HCLPD(Programmable Logic Device High Capacity) در سالهای اخیر گسترش زیادی یافته است. دلیل آن هم آشنایی طراحان با تراشه های تازه و معماری جدید آنها می باشد. با توجه به اینکه این تراشه ها دامنه بزرگی از طراحی ها را برایمان ممکن می سازند ، یک مهندس طراح می بایست بسته به نوع طراحی خود از میان تمام قطعات موجود ، بهترین و درعین حال به صرفه ترین تراشه را برای طراحی انتخاب کند.
انتخاب تراشه مناسب می تواند به بازار فروش موفق منجر شود ، در حالیکه انتخاب غلط سبب شکست اقتصادی پروژه خواهد شد.
برای یک تصمیم صحیح و به صرفه ، باید با توانایی ها و همچنین محدودیت های تراشه های مختلف آشنا شویم. در این قسمت با خصوصیات دو دسته مهم HCPLD ها یعنی CPLD و FPGA آشنا می شویم.
انواع PLD ها
PLD ها شامل قطعات کم ظرفیت تا پر ظرفیت می باشند. ظرفیت های کم PLD که اصطلاحاً PLD های ساده نامیده می شوند معمولاً کمتر از ۶۰۰ گیت قابل استفاده دارند و شامل محصولاتی چون PLA ها ، GAL ها و ۲۲V10 ها می شوند.
PLD های ساده توسط تکنولوژی CMOS طراحی شده اند که شامل EPROM و EEPROM و حافظه FLASH می باشند.
HCPLD ها بیش از ۶۰۰ گیت قابل استفاده دارند و شامل CPLD ها و FPGA ها می شود. در HCPLD ها تکنولوژی CMOS با SRAM EPROM, , EEPROM,Anti fuseOption FLASH,, به کار رفته است.
HCPLD ها را بسته به ساختمان اتصالات داخلی آنها می توان به دو دسته CPLD ها و FPGA ها تقسیم کرد.
CPLD ها ساختمان اتصالات داخلی پیوسته (Continous) دارند در حالیکه FPGA ها دارای اتصالات قطعه قطعه می باشند.
مقایسه معماری CPLD ها و FPGA ها
CPLD ها از چندین تکنولوژی مختلف CMOS استفاده می کنند که دامنه گسترده ای از طراحی های دیجیتال را در اختیار قرار می دهند.
EPROM و EEPROM و تراشه هایی که اساس آنها FLASH است (شامل قطعات کلاسیک,MAX 7000 MAX 5000 ,MAX 9000 ,Altera خانواده های منطقی FLASH ) برای تولید قطعات ترکیبی در عین حال متمرکز به کار می روند و برای همین کار نیز بهینه سازی شده اند.تراشه های EPROM , EEPROM وFLASH قابلیت دوباره برنامه نویسی شدن را دارند. در CPLD هایی که برمبنای SRAM ساخته شده اند. (مانند خانواده FLEX 8000 از Altera ) معماری (Look-Up Table) LUT به کار رفته است که رجیسترهای متمرکز در اختیار طراح قرار می دهد. این قطعات قابلیت ، تغییر شکل درون مداری را دارند.
در مقابل FPGA ها اکثراً از SRAM و المانهای حافظه Anti fuse با یک بار قابلیت نوشتن استفاده می کنند.
معماری قطعه- قطعه و بخش بخش F PGA ها ، ابراز قدرتمندی را در دامنه وسیعی از کاربردها در اختیار طراح قرار می دهد. اما نسبت به CPLD ها کارآیی کمتری را در به کارگیری طراحی های ترکیبی-متمرکز دارا می باشند.
یک تراشه که بر اساس Anti fuse ساخته شده (برخلاف یک FPGA که بر اساس SRAM ساخته شده است).
قابلیت پاک شدن و بازترکیب را ندارد. در صورتی که PLD های ساده و ارزان قیمت (مانند ۲۲V10) شاید اصولاً قابلیتهای بالا را لازم نداشته باشند. اصولاً دانستن این خصوصیات HCPLD ها ضروری است. زیرا یک طرح که شامل هزار ها گیت می باشد سبب می شود تا چندین بار عمل طراحی تکرار گردد.
شبیه سازی کامپیوتری می تواند جلوی برخی اشکالات و اشتباهات طراحی را بگیرد. اما به هر حال یک طراح قاعدتاً نیاز به تست سخت افزاری طرح خود دارد تا تغییرات نامحسوس خصوصیات سیستم را مشاهده و خطا یابی کند. با قطعه ای که قابلیت فقط یک بار برنامه ریزی داشته باشد و مثلاً برپایه Anti fuse ساخته شده باشد، طراحی، چیزی جز به هدر دادن سرمایه نیست.
مقایسه CPLD ها و FPGA از نظر اتصالات داخلی
CPLD ها و FPGA ها از ساختمان اتصالات داخلی متفاوتی بهره می برند. درCPLD ها ساختمان به صورت پیوسته وجود دارد در حالیکه در FPGA ها این ساختمان به صورت قطعه-قطغه و مجزا می باشد.
ساختمان اتصالات پیوسته در CPLD ها خطوطی از فلز می باشند که به صورت متحدالشکل در طول و عرض تراشه و به صورت متقاطع قرار گرفته اند. مدامی که مقاومت و ظرفیت خازنی تمام اتصالات داخلی مقدار ثابتی باشد، تأخیر بین هر دو سلول منطقی در داخل تراشه قابل پیش بینی و محاسبه است. این متحالشکل بودن خطوط در تراشه سبب به حداقل رسیدن انحراف سیگنال خروجی می شود…
- لینک دانلود فایل بلافاصله بعد از پرداخت وجه به نمایش در خواهد آمد.
- همچنین لینک دانلود به ایمیل شما ارسال خواهد شد به همین دلیل ایمیل خود را به دقت وارد نمایید.
- ممکن است ایمیل ارسالی به پوشه اسپم یا Bulk ایمیل شما ارسال شده باشد.
- در صورتی که به هر دلیلی موفق به دانلود فایل مورد نظر نشدید با ما تماس بگیرید.