برای دریافت پروژه اینجا کلیک کنید

 مقاله بررسی معماری‌ها و روش‌های طراحی سیستم‌های قابل پیکربندی مجدد در word دارای 107 صفحه می باشد و دارای تنظیمات و فهرست کامل در microsoft word می باشد و آماده پرینت یا چاپ است

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

این پروژه توسط مرکز مرکز پروژه های دانشجویی آماده و تنظیم شده است

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

بخشی از فهرست مطالب پروژه مقاله بررسی معماری‌ها و روش‌های طراحی سیستم‌های قابل پیکربندی مجدد در word

1 مقدمه        
2 تاریخچه      
3 مفهوم پیکربندی مجدد  
3-1محاسبات قابل پیکربندی مجدد      ‌
3-2 سیستم بدون پیکربندی             
3-3 پیکربندی مجدد منطقی            
3-4 پیکربندی مجدد دستورات          
3-5 پیکربندی مجدد ایستا و پویا       
4 مروری بر معماری‌ها و طراحی سیستم‌های قابل پیکربندی مجدد     
4-1 دیدگاه اول             
4-2 دیدگاه دوم             
5 فناوری‌های سخت‌افزار قابل پیکربندی مجدد     
5-1  FPGAها              
5-2 قطعات مدارات مجتمع با منابع قابل پیکربندی مجدد تعبیه شده    
5-3 هسته‌های قابل پیکربندی مجدد تعبیه شده  
6 روند طراحی برای سیستم‌های قابل پیکربندی مجدد بر روی تراشه   
6-1 مقدمه     
6-2 ملزومات روند طراحی SoC        
6-3 رویکرد طراحی پیشنهاد شده برای SoC قابل پیکربندی مجدد    
6-4 مسائل پیکربندی مجدد در روند پیشنهادی   
6-5 نتیجه گیری           
7 رویکرد بر مبنای SystemC          
7-1 مقدمه    
7-2 مروری بر SystemC 2.0         
7-3 مروری بر گسترش‌های بر مبنای SystemC                          
7-4 رویکرد تخمین زنی برای تحلیل سیستم      
7-5 مدل کردن سربار پیکربندی مجدد           
7-6 استفاده از مدل‌های بار کاری برای پویش فضای طراحی            
7-7 نتیجه گیری          
8 منابع        

بخشی از منابع و مراجع پروژه مقاله بررسی معماری‌ها و روش‌های طراحی سیستم‌های قابل پیکربندی مجدد در word

[1] Katherine Compton, Scott Hauck, “An Introduction to Reconfigurable Computing”, Department of Electrical and Computer Engineering, Northwestern University Evanston, ILUSA,

 [2]  T.J. Todman, G.A. Constantinides, S.J.E. Wilton, O. Mencer, W. Luk and P.Y.K. Cheung, “Reconfigurable computing: architectures and design methods”, Department    of Electrical and Electronic Engineering, Imperial College London,

 [3] Prof. Dr. W. Rosenstiel, Sven Fleck, ” Reconfigurable Systems – A New Era In  Digital System Design Has Just Begun”, University of Tübingen WSI Dep. of Computer Engineering,

 [4]  Nikolaos S. Voros, Konstantinos Masselos, Imperial College of Science Technology and Medicine, London, U.K.,Springer

1. مقدمه

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

در این پایان نامه ابتدا تاریخچه‌ای مختصر از توسعه‌ی سیستم‌های قابل پیکربندی مجدد ارائه شده است.سپس مفهوم قابلیت پیکربندی مجدد و انواع آن بیان شده است.پس از آن نگاهی کلی به  دو طبقه بندی مختلف معماری‌های این سیستم‌ها شده است و همچنین مروری بر روش‌های طراحی و ملزومات آن کرده‌ایم. در فصل پنجم انواع تکنولوژی‌های سخت افزار قابل پیکربندی مجدد بحث شده است. در فصل ششم روند طراحی سیستم قابل پیکربندی مجدد بر روی تراشه ( SoC ) آورده شده است. و نهایتا در فصل هفت ویژگی‌های طراحی سیستم با یک زبان برنامه نویسی بر مبنای C به نام SystemC بیان شده است

2 تاریخچه محاسبات قابل پیکر بندی مجدد

 مفهوم محاسبات قابل پیکربندی مجدد از دهه 1960 پدیدار شد . موقعی که مقاله جرالد استرین(Gerald Estrin) مفهوم یک کامپیوتر ساخته شده از یک پردازنده ی استاندارد و آرایه ای از سخت افزار قابل پیکربندی مجدد را پیشنهاد کرد . پردازنده اصلی باید رفتار سخت افزار قابل پیکربندی مجدد را کنترل کند . در نتیجه این سخت افزار قابل پیکربندی مجدد برای انجام کاری خاص مناسب خواهد بود برای مثال می توان کارهایی نظیر پردازش تصویر و تطبیق الگو را با سرعت بالایی انجام داد . به محض اتمام کار ، سخت افزار می تواند برای انجام کار جدید پیکربندی مجدد شود. چنین خاصیتی با ترکیب انعطاف پذیری یک نرم افزار و سرعت یک سخت افزار در یک ساختار کامپیوتری ترکیبی میسر شده است . متاسفانه چنین ایده ای در زمان پیدایش بسیار جلوتر از تکنولوژی ساخت سخت افزار مورد نیازش بود

در دهه ی اخیر یک رنسانس در عرصه ی تحقیقات درباره ی معماری های قابل پیکربندی مجدد بوجود آمد . این معماری ها هم در دانشگاهها و هم در صنعت توسعه می یافتند معماری هایی نظیر : Matrix , Gorp , Elixent , XPP , Silicon Hive , Montium , Pleiades , Morphosys , PiCOGA چنین طرحهایی عملی بودند . و این مرهون پیشرفت مداوم فناوری سیلیکونی بود که پیاده سازی طرح های پیچیده را روی یک تراشه میسر میساخت

اولین مدل تجاری کامپیوتر قابل پیکربندی مجدد در جهان به نام Algotronix CHS 2*4 در سال 1991 تکمیل شد این یک موفقیت تجاری نبود اما آنقدر امیدبخش بود که شرکت Xiliمقاله بررسی معماری‌ها و روش‌های طراحی سیستم‌های قابل پیکربندی مجدد در word (مخترع FPGA) تکنولوژی را خرید و محققان Algotronix را به خدمت گرفت

هم اکنون تعدادی فروشنده ی کامپیوترهای قابل پیکربندی مجدد وجود دارند که بازار کامپیوترهای با کارایی بالا را مورد توجه قرار داده اند . این شرکت ها شامل SRC Computers , SGL , Cray می شوند . شرکت ابر رایانه ای Cray (که به SRC ارتباطی پیدا نمی کند ) Octigabay و بستر محاسبات قابل پیکربندی مجدد آنرا به دست آورد که Cray آنرا به عنوان XD1 تا کنون به فروش رسانده است . SGI رایانه ی RASC را همراه با سری ابر رایانه های Altix به فروش می رساند . شرکت SRC Computers  یک خانواده از رایانه های قابل پیکربندی مجدد را توسعه داده است . این خانواده بر اساس معماری ضمنی + صریح خود شرکت و پردازنده MAP می باشد

تمام آنچه که گفته شد رایانه های هیبرید Estrin هستندکه این رایانه ها با ریزپردازنده های سنتی که FPGA ها همراه شده اند ساخته می شوند . FPGA ها توسط کاربر برنامه ریزی می شوند این سیستم ها می توانند به عنوان رایانه های دسته ای سنتی بدون استفاده از FPGA ها  به کاربرده شوند ( در حقیقت FPGA ها گزینه ای در XD1 و SGIRASC هستند ) پیکربندی XD1 و SGIFPGA از طریق زبانهای توصیف سخت افزار (HDL ) سنتی تکمیل شده است . و یا با به کارگیری زبانهای سطح بالایی نظیر ابزار گرافیکی Star bridge viva یا زبانهایی مانند C مثل Handel-C از Celoxica و Lmpulse-C از Impulse Accelerated technologies یا Mitrpn-C    از Mitrionics کامل شده اند . به قول راهنمای برنامه نویسی XD1 «توسعه ی فایل منطقی یک FPGA خام یک فرآیند پیچیده است که نیازمند دانش و ابزار تخصصی است »

SRC کامپایلری را توسعه داده است که زبان سطح بالایی مثل C یا Fortran را گرفته و با اندکی تغییرات آنها را برای اجرا روی FPGA در ریزپردازنده کامپایل می کند . به نقل از مستندات SRC « ; الگوریتم های کاربردی با زبانهای سطح بالا همانند C و Fortran نوشته می شوند . Carte (همان کامپایلر) حداکثر موازی سازی را از کد استخراج می کند و منطق سخت افزار خط لوله ای را تولید می کند که در MAP  مقدار دهی شده اند . همچنین این کامپایلر تمام کدهای واسطی که برای مدیریت انتقال داده به داخل و خارج MAP نیاز است را تولید می کند . این کدهای واسط وظیفه ی هماهنگ سازی ریزپردازنده ی با منطق در حال اجرا در MAP را دارند » ( توجه شود که SRC همچنین اجازه استفاده از یک HDL سنتی را داده است )

XD1 بین ریزپردازنده و FPGA بوسیله ی شبکه ی اتصال داخلی Rapid Array اش ارتباط برقرار میکند . سیستم های SRC از طریق واسط حافظه SNAP و یا سویچ اختیاری Hi-Bear ارتباط برقرار می کند . واضح است که دسته بندی معماری های قابل پیکربندی مجدد هنوز توسعه می یابند و این بدلیل عرضه شدن معماری های جدید است . هیچ طبقه بندی واحدی تا کنون پیشنهاد نشده است . به هر حال چندین پارامتر دوری می‌توانند برای دسته بندی چنین سیستم هایی استفاده شوند

هنگامی که مفاهیم پایه ی محاسبات قابل پیکربندی مجدد در دهه ی 1960 شکل گرفت . RC در شکل جدی و عملی خود با پدیدار شدن FPGA ها در اواخردهه‌‌ی 1980 آغاز شد . FPGA ها IC هایی بودندکه شکل سخت‌افزاری آنها می توانست از نو به راحتی تعریف شود . یعنی با بارگذاری یک پیکربندی جدید درست همانند نرم‌افزار جدیدی که می تواند بر روی یک ریزپردازنده یا DSP بارگذاری شود نگاشت داده و سپس پردازش آن و الگوریتم های فشرده ی FPGA ها می توانست IC های متمایز شده به وسیله کاربرد ( Application Specific  (ASIC) IC ) را حاصل سازد . محققان در ایالات متحده و فرانسه به دنبال پایه های اولیه ی با بازدهی بالا و انعطاف پذیری مطلوب ابر رایانه ای را در سر می پروراندند که متشکل بود از اجزا سخت افزاری قابل برنامه ریزی مجدد که برای هر کاربرد می توانست بهینه شود . که در نتیجه یک تا دو برابر کارایی را در پردازنده هایی با طول دستور ثابت و قراردادی افزایش می داد . اولین رایانه های قابل پیکربندی مجدد بوسیله IDA Supercomputing Research Center ( SRC که در سال 1994 به Center for Computing Sciences تغییر نام داد ) در آمریکا ساخته شد . در فرانسه به وسیله DEC Paris Research Lab که پس از فروش Digital Equipment Co بسته شد ساخته شد

دو نسخه آرایه انقباضی Spalsh در SRC ساخته شدند . مدار اصلی Spalsh در سال 1989 با قیمت تقریبی 13000 دلار ساخته شد که می توانست از ابر رایانه ی موجود در آن زمان به نام Cray 2  برای کاربردهای تطبیق الگوی بیتی پیشی گیرد .این سیستم حاوی 32عدد FPGA از سری 3090 شرکت Xiliمقاله بررسی معماری‌ها و روش‌های طراحی سیستم‌های قابل پیکربندی مجدد در word بود که بصورت یک ارایه ی خطی متصل شده بودند . FPGA ها ی مجاور از یک بافر حافظه ای اشتراکی بهره مند بودند

RC در ایستگاه کاری SUN از طریق ارتباط داخلی VME معرفی شد . Splash 1 می توانست مقایسه ی یک رشته ی DNA را 45 برابر سرعت یک ایستگاه کاری با کارایی بالا را در دهه ی 1990 انجام دهد . سه سال بعد Splash 2 ساخته شد که تعداد FPGA های خود را به 16 کاهش داده بود . با این وجود به خاطر رشد سریع تراکم در FPGA ، Splash 2 با شانزده عدد FPGA مدل 4010 از شرکت Xiliمقاله بررسی معماری‌ها و روش‌های طراحی سیستم‌های قابل پیکربندی مجدد در word حاوی 5/1 برابر منطق بیشتر از Splash 1 بود . برای بهبود انعطاف ارتباطات داخلی Splash 2 ارتباط داخلی خطی را به وسیله یک میله عرضی تقویت کرد که اجازه می داد که هر FPGA با هر FPGA دیگر ارتباط برقرار کند

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

این رایانه در LDG یا در طرح شماتیک برنامه نویسی شده بود . سخت افزار فوق العاده و تسریع قابل توجهی داشت. اما با وجود تمام این مزایا برنامه نویسی اش مشکل بود در نتیجه تعداد برنامه های کاربردی آن محدود بود . همین شرکت یعنی SRC در سالهای 1992 تا 1994 مشغول توسعه و تکمیل Splashبود و سرانجام موفق شد تا Splash 2 را طراحی کند . زبان شبیه سازی این رایانه VHDL بود همانند مدل پیشین دارای سخت افزار بسیار خوبی بود . برنامه ریزی اش غیر استاندارد بود اما دارای قابلیت برنامه نویسی خوبی بود . از 1986 تا 1995 حافظه‌های فعال قابل برنامه ریزی (PAMETTe , PAM) توسط شرکت فرانسوی DEC Paris معرفی شدند . برنامه نویسی این نوع حافظه ها در زبان C++ بود اما همان عیب Splash از SRC را داشتند یعنی سخت افزار خوبی داشتند اما برنامه های کاربردی پشتیبانی شده توسط آنان محدود بود

3 مفهوم پیکربندی مجدد

3-1 محاسبات قابل پیکربندی مجدد وسخت افزار قابل پیکربندی مجدد

محاسبات قابل پیکربندی مجدد به سیستم هایی اشاره می کند که شکلی از قابلیت برنامه ریزی سخت افزار با سفارشی کردن اینکه چگونه این سخت افزار استفاده می شود بوسیله کاربرد نقاط کنترلی ، پیاده سازی می کنند . این نقاط کنترلی سپس می‌توانند به طور متناوب برای اجرای کاربردهای متفاوت در سخت افزار یکسان ، تغییر می‌کنند . سخت‌افزار قابل پیکربندی مجدد تعادل خوبی میان کارایی پیاده سازی و انعطاف پذیر همان طور که در شکل 3-1 نشان داده شده است ، ایجاد می‌کند . این بدان خاطر است که سخت افزار قابل پیکربندی مجدد قابلیت برنامه ریزی پس از تولید را با نوع محاسبات فضایی(موازی) IC های با کاربرد خاص ( ASIC ) ترکیب کرده است که در مقایسه با نوع محاسبات زمانی (ترتیبی) پردازنده های مجموعه دستورات ، کارایی بالاتری دارد

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

بخاطر نیازهای فزاینده ی قابلیت انعطاف (برای مثال برای سازگای با استانداردهای مختلف و وضعیت های عملیاتی ) که به وسیله ی کاربردهایی با محاسبات فراوان همچون ارتباطات بی سیم ، دستگاههایی که نیازمند سازگاری بالایی با کاربردهایی در حال اجرا دارند ، تحلیل می شوند . در سوی دیگر درک خوب از چنین کاربردهای مورد نیاز است خصوصا در مورد منابعی که آنها درخلال پیاده سازی استفاده می‌کنند جایی که مصرف توان بایستی در مقابل کیفیت دیده شده از کاربرد موازنه شود . نیازهای متناقض برای قابلیت انعطاف و کارایی پیاده سازی نمی توانند بوسیله ی پردازنده های مجموعه دستورات معمولی و ASIC ها ارضا شوند . سخت افزار قابل پیکربندی مجدد یک پیاده سازی مطلوب را در  چنین مواردی شکل می دهد

 دلایل دیگری نیز برای استفاده از منابع قابل پیکربندی مجدد در طراحی سیستم بر روی تراشه (SOC ) نیز وجود دارد . هزینه های در حال افزایش مهندسی غیربرگشتی (NRE) طراحان را بسمت استفاده از SOC یکسان در چندین کاربرد و محصول برای دستیابی به قیمت تمام شده پایین تر به ازای هر تراشه سوق می دهد . حضور منابع قابل پیکربندی مجدد یک تنظیم مناسب تراشه برای محصولات یا تغییرات محصولات را ممکن می سازد . همچنین پیچیدگی در حال افزایش در طرح های آینده امکان اضافه کردن شارهای طراحی را افزایش می دهد . عناصر قابل پیکربندی مجدد اغلب آرایه های متجانس هستند که می توانند پیش بررسی شوند تا احتمال خطاهای طراحی به حداقل برسد . همچنین قابلیت برنامه ریزی پس از تولید اجازه ی تصحیح یا پیداکردن راه حل برای مشکلات را برای بعد در مقایسه با سخت‌افزار ثابت می دهد

سیستم های محاسباتی قابل پیکربندی مجدد اغلب دارای کارایی بالایی هستند . یک مثال در این باره عملیات ضرب نقطه ای در رمزنگاری یک منحنی بیضی است . برای اندازه کلیه 270 بیت گزارش شده است که یک ضرب نقطه ای می‌تواند در ms36/0 پردازش شود که بوسیله یک طراحی قابل پیکربندی مجدد در یک FPGA مدل xc2v6000  در فرکانس MHZ 66 صورت گرفته است . اما یک پیاده‌سازی بهینه شده ی نرم افزاری نیازمند ms 71/196 بر روی یک کامپیوتر eon × dul در فرکانس Hz 6/2 می باشد . بنابراین طراحی قابل پیکربندی مجدد بیش از 540 مرتبه سریعتر است . در حالیکه نرخ ساعت آن 40 بار آهسته تر از پردازنده های Xeon می باشد این مثال یک طراحی سخت افزاری را که بر روی یک بستر قابل پیکربندی مجدد پیاده سازی شده است را نشان می دهد . ما چنین پیاده سازی هایی را بعنوان زیرمجموعه ای از محاسبات قابل پیکربندی مجدد به حساب می آوریم که به طور کلی می توانند شامل استفاده از پیکربندی مجدد زمان اجرا و پردازنده های نرم باشند

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

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

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

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

دیگر مزایای محاسبات قابل پیکربندی مجدد شامل کاهش اندازه و تعداد اجزا ( و به همین ترتیب کاهش هزینه ها ) و قابلیت انعطاف بالا و قابلیت به روز شدن می باشد . این مزایا خصوصا برای سیستم های تعبیه شده (Embedded Systems ) مهم می باشند . در واقع مدارکی موجود است که توسعه دهندگان سیستم های تعبیه شده یک اشتیاق در حال رشد را به سیستم های قابل پیکربندی مجدد نشان می دهد . مخصوصا با معرفی هسته های نرم (Soft Core ) که می تواند شامل یک یا تعداد بیشتری از پردازنده های دستور باشد

3-1-1 پیش زمینه

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

ارضا کردن تمامی این نیازهای کارایی با وجود محدودیت های مصرف توان ، هزینه و در دسترس بودن بطور زیادی در حال رقابتی شدن می باشد . در ادامه سه راه پشتیبانی از چنین نیازهای  پردازشی بحث خوهد شد : ریزپردازنده هایی با کارایی بالا ، مدارات مجتمع با کاربرد خاص (ASIC) ، و سیستم های محاسباتی با قابلیت پیکربندی مجدد

ریزپردازنده های باکارایی بالا وسیله ای با تولید انبوه برای ارضاء نیازهای توضیح داده شده را ارائه می نمایند

متاسفانه برای بسیاری از کاربردها یک پردازنده ی تنها حتی یک پردازنده گران قیمت و مدرن نیز به اندازه ی کافی سریع نمی باشد . اضافه بر این ، مصرف توان (w100 یا بیشتر) و قیمت چندین هزار دلاری آنها پردازنده های مدرن را در خارج از دسترس بسیاری از سیستم های تعبیه شده قرار می دهد . حتی اگر ریزپردازنده ها همچنان با قانون مور ادامه دهند بطوری که چگالی آنها در ظرف هر 18 ماه دو برابر شود ممکن است که هنوز هم برای پاسخگویی به نیازهای در حال رشد برخی از سیستم های در حال تغییر تعبیه شده ناتوان باشند

مدارات مجتمع با کاربرد خاص ( ASIC ) روشهای دیگری برای ارضای چنین نیازهایی را ارائه می دهند . بر خلاف یک پیاده سازی نرم افزاری یک پیاده سازی ASIC یک مکانیزم طبیعی برای پیاده سازی موازی سازی های بسیار بزرگی که در بسیاری از این کاربردها یافت می شود ارائه می دهد . علاه بر این یک مدار ASIC از واکشی دستور بصورت سریال و اغلب کند و تلف کننده ی توان و چرخه ی دیکود و اجرا که قلب تمام ریزپردازنده ها می باشد رنج نمی برد . از این گذشته ASIC ها توان کمتری نسبت به دستگاههای قابل پیکربندی مجدد مصرف می کنند . نهایتا یک ASIC می‌تواند شامل فقط ترکیب واحدهای عملیاتی برای یک کاربرد خاص باشد . به طور واضح یک ریزپردازنده با تولید انبوه شامل یک مجموعه ثابت واحد های عملیاتی می باشد که باید برای ارضاء محدوده ی وسیعی از کاربردها انتخاب شوند

با وجود چنین مزایایی از ASIC ها آنها غالبا غیر عملی یا غیر مقرون به صرفه برای بسیاری از سیستم های تعبیه شده می باشند . چنین پدیده ای بخاطر وجود دو عامل می باشد : هزینه ی تولید یک ASIC اغلب به خاطر هزینه ماسک (تا یک میلیون دلار) و زمانی که برای توسعه ی یک مدار مجتمع سفارشی مورد نیاز است که هر دو می توانند غیرقابل قبول باشند تنها کاربردهایی با حجم بالا و هزینه واحد کم می تواند هزینه طراحی با مهندسی غیرمعکوس NRE یک ASIC را ضمانت نماید

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

برخلاف یک ASIC لازم نیست برای هر کاربردی یک ساختار جدید  طراحی شود . یک ساختار داده شده می تواند تعداد زیادی از واحدهای عملیاتی را پیاده سازی کند . این بدان معناست که یک سیستم محاسباتی قابل پیکربندی مجدد می تواند بوسیله ی اجزای با تولید انبوه ساخته شود که زمان طراحی طولانی که در ذات یک ASIC بود را کاهش می دهد. همچنین بر خلاف یک ASIC واحدهای عملیاتی که در ساختار قابل پیکربندی مجدد پیاده سازی شده‌اند می توانند در طول زمان تغییر کنند . یعنی اینکه همگام با تغییر محیط یا استفاده ی سیستم تعبیه شده ترکیب واحدهای عملیاتی می توانند برای بهتر هماهنگ شدن با محیط جدید تغییر یابند . ساختار قابل پیکربندی مجدد در یک وسیله ی دستی برای مثال ممکن است عملیات ضرب ماتریس های بزرگ را در یک حالت خاص پیاده ساز یکند و در حالت دیگری توابع پردزاش سیگنال بزرگی را استفاده کند

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

پردازنده های دستور با کاربرد خاص و پردازنده هایی با دستورات انعطاف پذیردو نمونه از چنین تلاشهایی می باشند

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

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

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

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

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

چالش دیگر توسعه ی طراحی ها به کمک رایانه (CAD  ) و ابزار کامپایل که یک کاربرد را به یک سیستم قابل پیکربندی مجدد نگاشت می دهند . این کار شامل تعیین این که کدامیک از قسمت های کاربرد باید به ساختار نگاشت داده شود و کدام بخش باید به پردازنده نگاشت داده شود و تعیین اینکه چه موقع و هر چند وقت ساختار قابل پیکربندی مجدد که باعث تغییردر واحدهای عملیاتی پیاده سازی شده در ساختاری می شود باید پیکربندی شود . همچنین خصوصیات الگوریتم ها برای نگاشت موثر به سیستم قابل پیکربندی مجدد می باشد

3-2 سیستم بدون پیکربندی

 

برای دریافت پروژه اینجا کلیک کنید