VLSI-HW3-Synthesize.pdf

‫طراحی ‪)04- 353( VLSI‬‬
‫مدرس‪ :‬ارجمند‬
‫نيمسال دوم ‪09- 04‬‬
‫دانشکده مهندسی کامپيوتر‬
‫تمرین سری سوم ‪ – Synthesis -‬مهلت تحویل ‪91/2/8‬‬
‫اهداف تمرین‬
‫‪‬‬
‫یادآوری طراحی مدار و نوشتن ‪ Testbench‬به زبان ‪ Verilog‬یا ‪VHDL‬‬
‫‪ ‬آشنایی با‪:‬‬
‫‪ o‬شبيهسازی به کمک ‪ TCL‬در محيط ‪Modelsim‬‬
‫‪ o‬محتوای فایلهای کتابخانه )‪(.lib‬‬
‫‪ o‬محيط و خروجیهای ‪ Design Compiler‬و سنتز به کمک اسکریپت در محيط آن‬
‫‪ o‬شبيهسازی پس از سنتز در محيط ‪Modelsim‬‬
‫‪ o‬اندازهگيری توان مصرفی به کمک ابزار ‪ Power Compiler‬و یا ‪PrimePower‬‬
‫مراحل کلی انجام تمرین‪:‬‬
‫‪.I‬‬
‫کد ‪ HDL‬قابل سنتز یک ضربکنندهی ‪ Shift and Add‬شانزده بيتی را نوشته و با دادن ورودیهای کافی از درستی‬
‫عملکرد طرح خود مطمئن شوید‪ .‬مدار باید دارای ورودی ‪ Start‬و خروجی ‪ Ready‬باشد‪.‬‬
‫‪.II‬‬
‫فایل ‪ .lib‬کتابخانهای که برای سنتز انتخاب کردهاید را باز کنيد و مشخصههای ذکر شده در آن برای یک گيت چند‬
‫ورودی و یک عنصر دارای کالک (مثل ‪ DFF‬و ‪ )Latch‬را توضيح دهيد‪.‬‬
‫‪.III‬‬
‫طرح خود را با تعيين ‪ constraint‬های الزم سنتز کنيد و خروجیهای ‪ .DB, .V, .SDF, .SPEF‬را ذخيره کنيد‪ .‬توضيح‬
‫دهيد هر خروجی دارای چه اطالعاتی است‪.‬‬
‫‪.IV‬‬
‫‪.V‬‬
‫با دادن ورودیهای مرحلهی ‪ I‬از درستی عملکرد طرح سنتز شدهی خود اطمينان حاصل کنيد‪.‬‬
‫توان مدار را با دادن ‪ Testbench‬ایی با حداقل هزار جفت دادهی ورودی در نرمافزار ‪ Power Compiler‬اندازه‬
‫بگيرید‪.‬‬
‫قسمتهای امتیازی‪:‬‬
‫‪ ‬مدار خود را به گونهای طراحی کنيد که هر زمان ‪( Multiplier‬عددی که شيفت داده میشود) صفر شد خروجی ‪ Ready‬فعال‬
‫شود (لزوماً شانزده کالک منتظر نماند)‪ .‬در این صورت با دو نوع تست توان مدار خود را اندازه بگيرید‪ .‬در حالت اول پس از هر‬
‫شانزده (یا هفده) کالک‪ ،‬ورودی جدید ‪ Load‬میشود ولی در حالت دوم باید ورودیها را طوری بدهيد که بالفاصله (کالک‬
‫بعدی) پس از آماده شدن خروجی‪ ،‬ورودیهای جدید ‪ Load‬شوند‪ .‬به ‪ Glitch‬های خروجی نيز دقت داشته باشيد‪.‬‬
‫‪ ‬به هنگام توليد فایل ‪ ،VCD‬فایل ‪ SDF‬بدست آمده در مرحلهی قبل را ‪ Back-annotate‬کنيد‪.‬‬
‫‪ ‬توان مصرفی مدار را با استفاده از نرمافزار ‪ PrimePower‬و خوراندن فایل ‪ SPEF‬نيز بدست آورید‪.‬‬
‫طراحی ‪)04- 353( VLSI‬‬
‫مدرس‪ :‬ارجمند‬
‫نيمسال دوم ‪09- 04‬‬
‫دانشکده مهندسی کامپيوتر‬
‫تذکر‪:‬‬
‫‪ ‬برای نوشتن مستندات این تمرین دقت و زمان کافی بگذارید‪ .‬زیبایی مستندات مهم نيست ولی بایستی خوانا و کامل باشد‪.‬‬
‫‪ ‬برای نشان دادن درستی مدار قبل و بعد از سنتز‪ ،‬از شکلهای واضح استفاده کنيد‪.‬‬
‫‪ ‬در صورتی که نياز به توضيح بخشی از کد باشد‪ ،‬آن قسمت از کد را در متن مستندات خود نيز بياورید‪.‬‬
‫‪ ‬فایلهای غير ضروری و باالخص فایلهایی که به صورت ‪ Draft‬و موقت در پوشهها انباشته میشوند (مثل فایلهای حاصل از‬
‫شبيهسازی توسط ‪ Modelsim‬مخصوصاً پوشهی ‪ work‬یا کد ‪ HDL‬کتابخانهها) را ضميمه نکنيد‪.‬‬
‫‪ ‬در نام گذاری فایلهای خود ترجيحاً از اسامی مرتبط با عملکرد فایل استفاده کنيد و در مستندات خود فایلهای ضميمه شده را‬
‫توضيح دهيد‪.‬‬
‫‪ ‬منابع و مراجعی که برای تمرین استفاده کردهاید را ذکر کنيد‪.‬‬
‫‪ ‬آخرین فایلی (به همراه تاریخ ارسال) که فرستادید به عنوان فایل ارسالی تمرین در نظر گرفته میشود‪.‬‬
‫‪ ‬در صورت هر گونه تقلب اعم از کد یا اسکریپت‪ ،‬نمرهی طرفين در منفی یک ضرب خواهد شد‪.‬‬
‫‪ ‬در صورت رعایت نکردن موارد فوق با کسر نمره مواجه خواهيد شد‪.‬‬
‫توجه!‬
‫‪ .1‬در صورت وجود ایراد یا ابهام در مورد تمرین‪ ،‬میتوانيد در کالس حل تمرین یا از طریق گروه درسی اشکاالت‬
‫خود را مطرح کنيد‪.‬‬
‫‪ .2‬به ازای هر روز دیر کرد ‪ %11‬تأخير دریافت خواهيد کرد‪.‬‬
‫‪ .3‬تمرینهای خود به آدرس ‪ [email protected]‬ارسال کنيد‪.‬‬
‫موفق باشيد‬
‫خالقی – ایزدیراد‬