عنوان پایاننامه
ایجاد یک محیط یکپارچه برای مدلسازی و شبیه سازی معماری سیستمهای چند پردازنده ای روی یک تراشه با تمرکز بر روی پردازنده های شبکه
- رشته تحصیلی
- مهندسی کامپیوتر-معماری کامپیوتر
- مقطع تحصیلی
- کارشناسی ارشد
- محل دفاع
- کتابخانه مرکزی -تالار اطلاع رسانی شماره ثبت: 47412;کتابخانه دانشکده برق و کامپیوتر شماره ثبت: E1831
- تاریخ دفاع
- ۱۷ شهریور ۱۳۸۹
- دانشجو
- امیر یزدان بخش
- استاد راهنما
- سعید صفری
- چکیده
- امروزه پردازنده¬ها را می¬توان در هر وسیله¬ی الکتریکی مدرن یافت. در حقیقت پردازنده¬ها به عنصری حیاتی و جدایی ناپذیر از زندگی بشر تبدیل شده¬اند. گستردگی استفاده از پردازنده¬ها موجب شده است که نیاز به طراحی¬های ساده¬ و قابل¬توسعه بیش از پیش احساس شود. سادگی در طراحی منجر به کاهش چشمگیر زمان رسیدن محصولات به بازار و توسعه¬پذیری باعث کاهش قابل توجه در هزینه¬های ثابت می¬گردد. راهکار پردازنده-های عام منظوره اگرچه به دلیل قابلیت برنامه¬نویسی مجدد و سادگی، منجر به کاهش هزینه¬های ثابت می¬گردد ولی توان محاسباتی آنها در مقایسه با راهکار مدارات مجتمع خاص منظوره بسیار پایین¬تر است. بنابراین طراحان معماری به منظور دستیابی به یک راهکار میانی که بتواند از ویژگی¬های هر دو راهکار اشاره شده بهره گیرد، مفهوم پردازنده¬های با مجموعه دستورات خاص را ارائه کرده¬اند. در اینگونه از پردازنده¬ها بدون قربانی کردن قابلیت برنامه¬نویسی مجدد و با افزودن دستورات خاص به مجموعه دستورات پایه یک پردازنده مبنا، توان محاسباتی آنها افزایش می¬¬یابد. در حقیقت پردازنده¬های با مجموعه دستورات خاص از لحاظ توان محاسباتی و قابلیت برنامه¬ریزی مجدد در مکانی بین پردازنده¬های عام منظوره و مدارت مجتمع خاص منظوره قرار می¬گیرند. گونه¬ای از پردازنده¬های با مجموعه دستورات خاص که به شدت مورد توجه قرار گرفته است با نام پردازنده¬های قابل توسعه شناخته می¬شوند. به منظور طراحی پردازنده¬های قابل¬توسعه پس از بررسی برنامه¬های هدف، دستورات خاصی به منظور اجرای بهینه بخش¬هایی از برنامه که زیاد تکرار می¬شوند به مجموعه دستورات پایه پردازنده افزوده می¬شوند. یکی از بخش¬های مهم در طراحی پردازنده¬ وجود ابزارهای مناسب در هر مرحله از طراحی به منظور ارزیابی معماری قبل از پیاده¬سازی نهایی است. امروزه هر چند الگوریتم¬های متفاوتی در زمینه¬ی تشخیص دستورات خاص و همچنین راهکارهایی به منظور رفع مشکلاتی که در طراحی اینگونه از پردازنده¬ها وجود دارد ارائه شده است ولی کمبود وجود یک ابزار یکپارچه که به کمک آن بتوان مراحل ساخت اینگونه از پردازنده¬ها را به صورت ساختاریافته درآورد و همچنین به آسانی به کاوش در فضای پیکربندی¬های گوناگون معماری این پردازنده¬ها پرداخت، احساس می¬شود. در این پایان¬نامه ابتدا یک محیط یکپارچه به منظور مدلسازی و شبیه¬سازی معماری پردازنده¬های قابل توسعه طراحی و پیاده¬سازی می¬گردد. سپس با افزودن بخش¬های الحاقی و گسترش این محیط امکان ارزیابی پردازنده¬های قابل¬توسعه و نیز کاوش فضای طراحی این پردازنده¬ها از جنبه¬های گوناگون از قبیل میزان کارآیی حاصله، توان مصرفی و تأثیر پارامترهای سطح مدار برای طراحان معماری فراهم می¬شود. در انتها با توجه به نتایج استخراج¬شده از محیط پیشنهادی به ارائه¬ی یک مدل معماری جدید به منظور دستیابی به کارآیی بیشتر در حوزه¬ی کاربرد¬های شبکه می¬پردازیم.
- Abstract
- Micro-processors are exploited in many modern electric devices. Actually, processors are transformed into a vital and inseparable part of human life. Increased usage of the processors makes the simplicity and extensibility factors in the processor design more important than before. Simplicity and extensibility leads to reductions in time-to-market and non-recurring costs, respectively. Although, general purpose processors reduce non-recurring costs due to their simplicity of programming, they provide less performance in comparison to application specific integrated circuits (ACISs). So, architecture designers have introduced application-specific instruction-set processors as an intermediate approach which exploits the advantages of both general-purpose processors and ASICs. In this approach the base instruction set of a processor is augmented with some special-purpose instructions aimed to increase the speed-up without scarifying the programmability feature. Simpler to say, ASIPs are located somewhere between GPPs and ASICs in terms of performance and ease of programmability features. Extensible processors are one kind of ASIPs which are widely-used in processor design. In order to design an extensible processor, special instructions are augmented to the base processor aimed to execute computation-intensive parts of the code after analyzing target applications. One of the main parts in designing a processor is existence of CAD tools in each step of design in order to evaluate the final design in terms of variety of parameters which are defined by architecture designer. Today, different algorithms are proposed in the domain of custom instruction selection and variety of approaches aimed to eliminate the obstacles in designing such processors. However, there is the need to an integrated CAD environment to make the flow of designing extensible processor, modular and to explore the space of different configurations for extensible processors. This thesis is aimed at developing an integrated framework for modeling and simulating the architecture of extensible processors. Then, with the help of the developed tool and by augmenting it with some special parts, the possibility of evaluating extensible processors is provided while exploring the space of designing such processors in terms of performance achievement, power consumption, and the effect of circuit-level parameters during selection of custom instruction is provided for architecture designers. Finally, by extracted results from developed tool, an innovative architecture model aimed at high performance processor design in the domain of network applications is proposed.