اختصاصی سایت

مقدمه ای بر طراحی مدارهای دیجیتالی با FPGA (قسمت دوم)


fpga4

 بر اساس توضیحات قسمت اول به شرح مختصری در رابطه ی با سطوح انتزاعی می پردازیم:

سطح فیزیکی

این سطح مربوط به نواحی سیلیکونی مثبت(P) و منفی (N)، ساختار مداری و مواد دیگری که برای ایجاد ترانزیستورها مورد نیاز است، می باشد.

سطح منطقی

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

سطح معماری

سطح بعدی سطح معماری است. یک الگوریتم برای نمایش رفتاری این سطح استفاده می شود. در نمایش الگوریتمی استفاده از عملگرهای عمومی مانند جمع، ضرب، شیفت ساختارهای جریان کنترل مانند حلقه های for و while ساختار if-then-else مجاز است. یک پردازنده یک نمونه از نمایش ساختاری در سطح معماری است. نمایش هندسی سطح معماری بلوک و تراشه ها را شامل می شود.

سطح سیستم

بالاترین سطح انتزاع سطح سیستم است. برای نمایش رفتاری در این سطح از مدل های محاسباتی استفاده می شود. نمایش ساختاری آن شامل عناصر پردازشی مشابه CPU است عناصر پردازشی معمولاً به سادگی برنامه پذیراند. نمایش هندسی در سطح سیستم شامل تراشه ها و بوردهای مدار چاپی است.

شبیه ساز (Simulator)

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

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

ابزار سنتز

ابزارهای سنتز به طور خودکار از روی یک تمثیل از طرح، تمثیل دیگری را ایجاد می کنند. اولین ابزارهای تجاری سنتز منطق برای مدارهای قابل برنامه ریزی ساده بودند.( طراحی توابع بولی با استفاده از شماتیک کار وقت گیری بود و طراح باید چیدن و کوچک سازی طرح را خود انجام می داد. این مشکل با طراحی ابزارهایی برای تبدیل یک متن شامل توابع بولی به یک شماتیک از گیتها که شامل الگوریتمهایی برای کوچک سازی هر چه بیشتر توابع بود رفع شد. این ابزارها اولین ابزارهای سنتز بودند و عمل آنها را سنتز منطق نام گذاری کردند.)  سپس مدارهای قابل برنامه ریزی شامل فلیپ فلاپ ها نیز ساخته شدند که آنها را “ابزارهای منطقی قابل برنامه ریزی” PLD نامیدند. توسط PLD ها امکان طراحی ماشینهای حالت نیز وجود داشت. با ظهور این تراشه ها، نرم افزارهای سنتز که ماشینهای حالت را همراه با کاهش حالات ترجمه کردند به وجود آمدند. لازم به ذکر است که به تعریف PLD ها در قسمتهای بعدی پرداخته خواهد شد.

سنتز برای سطوح زیر تعریف می شود:

  1. سنتز منطق: ترجمه و خلاصه سازی توابع بولی به گیت می باشد.
  2. سنتز در سطح گذر رجیسترها (RTL) مشابه سنتز منطق است ضمن اینکه دستورات ترتیبی زبان VHDL را به گیت و فلیپ فلاپها ترجمه می کند(ماشین حالت)
  3. سنتز رفتاری: در این حالت می توان یک قطعه سخت افزاری را برای چندین دستور موازی ترتیبی مورد استفاده قرار داد.

در آینده ی نزدیک ابزارهای سنتزی به قدرت مفسرهای امروزی ساخته خواهد شد. و طراحان سخت افزار با بهره گیری از همزمانی ذاتی در الکترونیک امکان خلق سیستمهای عامل سخت افزاری را برای پشتیبانی از یک سخت افزار (برنامه) خواهند داشت. در این صورت مرز بین سخت افزار و نرم افزار برداشته خواهدشد.

سخت افزارهای برنامه پذیر

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

مزایای استفاده از مدارات برنامه پذیر

در طراحی یک سیستم می توان به روش سنتی عمل نموده و تراشه های استاندارد استفاده کرد یا اینکه به روش خودکار (به وسیله ی ابزار CAD) عملیات طراحی را انجام داده و جهت پیاده سازی از قطعات برنامه پذیر استفاده نمود. یک بورد مدار چاپی که با استفاده از قطعات برنامه پذیر ساخته می شود علاوه بر اینکه سبک و کوچک بوده و ظرفیت عملیاتی بیشتری دارد دارای مزایای دیگری نیز می باشد که در زیر به آنها اشاره شده است:

  • قابلیت برنامه ریزی مجدد: بیشتر سخت افزارهای برنامه پذیر که امروزه تولید شده و به کار گرفته می شود قابلیت برنامه ریزی مجدد دارند این امر باعث انعطاف پذیری و سهولت ایجاد تغییرات در طرح و در نتیجه صرفه جویی در هزینه می گردد.
  • عدم نیاز به نگهداری کتابخانه تراشه ها: در روش طراحی سنتی یک طراح می بایست انواع تراشه های منطقی استاندارد را که احتمالاً در طرح های خود استفاده می کند در اختیار داشته باشد گاهی نبود یک قطعه در کتابخانه قطعات در مراحل ساخت نمونه اولیه و آزمایش، طراح را با مشکل مواجه می کند. با داشتن تعدادی تراشه برنامه پذیر، دیگر نیازی به کتابخانه قطعات استاندارد نخواهد بود و در وقت و هزینه نیز صرفه جویی خواهد شد.
  • هزینه ساخت و نگهداری کمتر: در استفاده از قطعات برنامه پذیر به علت اینکه از تعداد قطعات کمتری استفاده می شود بورد کوچکتر شده  وهزینه ساخت کمتر می شود و از طرفی به علت اینکه در این روش اتصالات بین تراشه ای نسبت به روش سنتی بسیار کمتر است احتمال خرابی کمتر و قابلیت اطمینان بیشتری وجود دارد. این موضوع باعث کاهش هزینه ی نگهداری نیز می گردد.
  • سهولت تست مدار: عملیات تست ساده تر قابل انجام است به خاطر اینکه با تست هر قطعه برنامه پذیر قبل از قرار دادن روی بورد می توان با درصد بالایی از صحت عملکرد سیستم مطمئن شد.
  • هزینه ی پایین: در صورتی که طراح بخواهد طرح خود را به صورت یک تک تراشه ارائه نماید یک راه سفارش آی سی است که به علت هزینه سنگین برای تعداد کم مقرون به صرفه نیست در بسیاری از کاربردها و در مدارات با کاربرد خاص (ASIC) که نیاز به تولید با تعداد بالا وجود ندارد استفاده از تراشه های برنامه پذیر هزینه کمی دارد به دلیل آنکه استفاده کنندگان هزینه تولید با حجم بالا را می پردازند. از طرفی حتی اگر طراح قصد داشته باشد سفارش آی سی با تعداد هزینه زیاد داشته باشد استفاده از تراشه های برنامه پذیر در مرحله ی ساخت نمونه اولیه (Prototyping) هزینه را کاهش می دهد.
  • سرعت: به خاطر استفاده از یک یا چند تراشه با چگالی بالا، به جای تعداد زیادی تراشه، علاوه بر کاهش قابل توجه توان مصرفی کل سیستم به دلیل انتقال اتصالات سیمی به داخل مدار مجتمع، طول مسیرهای اتصالی کاهش یافته و در نتیجه سرعت سیستم افزایش می یابد.
  • امکان استفاده از ابزارهای CAD: معمولاً هر شرکت تولید کننده تراشه های برنامه پذیر، نرم افزاری را به عنوان ابزار طراحی جهت پشتیبانی از قطعات خود ارائه می کند برخی نرم افزارها نیز عمومیت دارند و با انواع تراشه های برنامه پذیر شرکتهای مختلف کار می کنند، با استفاده از تکنیک های پیشرفته در طراحی و نرم افزارهای با قابلیت بالا، به همراه قطعات برنامه پذیر زمان ارائه طرحهای پیچیده به بازار کاهش می یابد.
  • استفاده مجدد از کتابخانه های از پیش تعریف شده: وجود کتابخانه های غنی، همراه نرم افزارهای CAD کار طراحی را ساده تر نموده و باعث کاهش نیازمندی به آگاهی از جزئیات طرح شده سرعت بیرون دهی و اطمینان از درستی طرح ها را افزایش می دهد.
  • امکان کار تیمی: یک طرح پیچیده می تواند به زیر بخش های تقسیم شده و هر بخش به یکی از اعضای تیم طراحی سپرده شود. در بسیاری موارد برای هر نیاز خاص یک پیمانه ( Module ) استاندارد وجود دارد.
  • امکان شبیه سازی: طرح کامل و اجزای آن به طور جزئی می تواند قبل از قرار گرفتن در تراشه شبیه سازی شود و اشکالات احتمالی برطرف گردد.
  • مستند سازی و استفاده مجدد: ابزارهای طراحی، مستندسازی سطح بالایی ارائه می کنند که قابلیت تکرار و استفاده مجدد و حتی فروش مجدد پیمانه های طراحی شده را ممکن می سازد. این قابلیت یکی از مهمترین مزایای این روش در رقابت با روش سنتی است.
  • امنیت طرح: استفاده از تراشه های برنامه پذیر سطح تجمع طرح را بالا می برد. طراحی با تجمع بالاتر امنیت بیشتری در مقابل کپی برداری فراهم می کند و در مقابل، بوردهای مدار چاپی که با استفاده از تراشه های استاندارد طراحی می شوند امنیت کمتری در مقابل کپی برداری دارند.
  • ارتقا: شرکت های سازنده تراشه های برنامه پذیر در رقابت با یکدیگر محصولات خود را از نظر سرعت، ظرفیت و فشردگی ارتقاء می دهند. اگر سازگاری با تولیدات قبلی رعایت شده باشد در کاربردهایی که کارایی، اندازه یا وزن بحرانی است گاهی با تعویض یک آی سی و بدون تعویض بورد می توان مشکل را برطرف نموده و به مشخصات مطلوب رسید.

این داستان ادامه دارد….

 

Examiner

Winning is a Science, educate yourself to Win

نوشته های مشابه

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

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

دکمه بازگشت به بالا