DSD_HW2.pdf

‫طراحي سيستمهاي ديجيتال (‪)04-223‬‬
‫نيمسال نخست ‪23-22‬‬
‫دانشكدهي مهندسي كامپيوتر‬
‫تمرين ‪ .2‬مدلسازی رفتاری در زبان وريالگ (‪)1‬‬
‫‪.1‬‬
‫یک روش رایج براي كاهش توان مصرفي سيمهاي بلند در سطح تراشه روش ‪ Bus Inverting‬است‪.‬‬
‫اصول كار این روش مبتني بر كاهش تعداد تغييرات یک سيم از صفر به یک و بالعكس بوده تا از شارژ و‬
‫دشارژ شدن بيمورد خازنهاي پارازیت این سيمها جلوگيري شود ‪ .‬در این روش هر دادهي انتقالي با دادهي‬
‫قبلي مقایسه شده و در صورتي كه فاصلهي همينگ این دو داده (تعداد بيت مختلف) از نصف پهناي باس‬
‫بيشتر باشد به جاي خود داده‪ ،‬نقيض آن را ارسال مي كنيم تا تعداد تغييرات را كاهش دهيم‪ ،‬ولي براي آنكه‬
‫به واحد گيرنده اعالم كنيم كه آیا این داده به صورت نقيض ارسال شده یا خير‪ ،‬مجبوریم كه یک خط داده‬
‫به باس خود اضافه كنيم كه به خط ‪ invert‬معروف است ‪.‬در این تمرین شما باید یک واحد كدكننده و یک‬
‫واحد كدگشا به صورت پارامتریک براي این تكنيک كاهش توان مصرفي ارائه دهيد كه به وسيلهي آنها‬
‫امكان اعمال این تكنيک روي باسهاي موجود در سطح تراشه امكانپذیر باشد‪ ،‬بدون آن كه واحد هاي‬
‫منطقي دچار تغيير شوند ‪.‬‬
‫‪.2‬‬
‫ميخواهيم یک سرور براي پاسخگویي به نيازهاي دو كاربر‪ ،‬براي استفاده از یک منبع مشترک‪ ،‬طراحي كنيم‪.‬‬
‫دو كاربر به طور همزمان قابليت استفاده از سيستم را ندارند‪ .‬كاربر اول داراي اولویت باالتري است‪ .‬تمامي‬
‫درخواستها باید در نهایت‪ ،‬سرویسدهي شوند‪ .‬هر كاربر در ابتدا یک پالس به منظور نشان دادن نياز به‬
‫منبع‪ ،‬به سرور مي فرستد‪ .‬سرور در صورت بيكار بودن منبع مورد نظر‪ ،‬یک پالس براي كاربر فرستاده و‬
‫منبع را به آن اختصاص مي دهد و كاربر بالفاصله بعد از دریافت آن‪ ،‬شروع به فعاليت مي كند‪ .‬در انتهاي‬
‫كار‪ ،‬كاربر یک پالس به سرور مي فرستد كه نشان دهندهي پایان كار و آزاد سازي منبع است‪ .‬پس از دریافت‬
‫سيگنال‪ ،‬سرور با توجه به درخواستها در صورتي كه حين سرویسدهي به این كاربر‪ ،‬كاربر دیگر‬
‫درخواست داده است منبع را به كاربر دیگر اختصاص داده و در غير این صورت آن را در حالت بيكار نگه‬
‫ميدارد‪ .‬براي سرور دو درگاه ‪ inout‬براي دو كاربر فرض كنيد‪.‬‬
‫‪.3‬‬
‫توصيف پارامتریک یک حافظهي ‪ FIFO‬با سایز ‪ M×N‬حساس به لبه را بنویسيد كه داراي ویژگي هاي زیر‬
‫باشد ‪:‬‬
‫‪‬‬
‫ریست آسنكرون‬
‫‪‬‬
‫ورودي فعال كنندهي ماژول‬
‫‪‬‬
‫ورودي مشخص كنندهي عمل خواندن یا نوشتن‬
‫‪‬‬
‫پورت دادهي دو جهته‬
‫‪‬‬
‫سيگنالهاي مشخص كنندهي پر و خالي بودن ‪FIFO‬‬
‫براي انجام عمل نوشتن‪ ،‬دادهي شما باید در یک فاصلهي زماني مشخص قبل از لبهي كالک (‪ ) setup time‬و در‬
‫یک بازهي زماني مشخص بعد از آن (‪ )hold time‬ثابت باشد ‪ .‬این مقادیر زماني را نيز به صورت پارامتري در كد‬
‫خود لحاظ كرد و در صورت نقض شدن آنها پيغام خطاي مناسبي را نمایش دهيد ‪.‬‬
‫طراحي سيستمهاي ديجيتال (‪)04-223‬‬
‫نيمسال نخست ‪23-22‬‬
‫‪.4‬‬
‫دانشكدهي مهندسي كامپيوتر‬
‫‪1‬‬
‫توصيف رفتاري سيستمي را بنویسيد كه یک ورودي پالس ساعت با فركانس و نسببت ثاببت را از ورودي‬
‫دریافت كرده و ‪ 4‬خروجي به شرح زیر توليد نماید‪:‬‬
‫‪.0‬‬
‫‪‬‬
‫پالس ساعت با فركانس نصف موج ورودي و نسبت مساوي موج ورودي‬
‫‪‬‬
‫پالس ساعت با فركانس نصف موج ورودي و نسبت‪%05‬‬
‫‪‬‬
‫پالس ساعت با فركانس یک سوم موج ورودي و نسبت مساوي موج ورودي‬
‫‪‬‬
‫پالس ساعت با فركانس یک سوم موج ورودي و نسبت ‪%05‬‬
‫(اختياري) در روش انتقال اطالعات با استفاده از سيگنالهاي پالس (‪ )Pulse‬سه روش مدوالسيون مختلف‬
‫وجود دارد‪ .‬روش اول به اسم ‪ ،)Pulse Width Modulation( PWM‬وابسته به پهناي پالس ارسالي‬
‫است‪ .‬به عبارت دیگر‪ ،‬در هر دوره مدت زمان یک بودن براي فرستنده‪/‬گيرنده مورد اهميت است و‬
‫اطالعات ارسالي بسته به این طول تعيين ميشوند‪ .‬در روش دوم كه با نام ‪Pulse Amplitude ( PAM‬‬
‫‪ )Modulation‬شناخته ميشود‪ ،‬اطالعات ارسالي به دامنهي موج ارسالي وابستهاند‪ .‬به عبارت دیگر‪ ،‬در‬
‫بازههاي مختلف موج ارسال شده داراي دامنهي متغيري است كه معرف اطالعات فرستاده شدهاست‪ .‬در‬
‫نهایت‪ ،‬در روش سوم موسوم به ‪ ،)Pulse Position Modulation( PPM‬محل قرار گيري پالس‬
‫مدنظر است‪ .‬در این روش‪ ،‬ميزان فاصلهي زماني رخ دادن پالس نسبت به شروع دوره معرف اطالعات‬
‫ارسالي است‪.‬‬
‫الف) مداري طراحي كنيد كه در ورودي سيگنالي كه اطالعات به صورت ‪ PWM‬ذخيره شدهاند را دریافت‬
‫كند و در خروجي سيگنال متناظر ‪ PPM‬آن را توليد كند‪ .‬طراحي شما باید در به صورت رفتاري توصيف‬
‫شود‪.‬‬
‫ب) با استفاده از توصيف رفتاري مداري طراحي كنيد كه عكس عمل قسمت قبل را انجام دهد‪ ،‬یعني موج‬
‫‪ PPM‬را دریافت كند و موج متناظر ‪ PWM‬را توليد كند‪.‬‬
‫‪.6‬‬
‫(اختياري) توصيف رفتاري سيستمي را بنویسيد كه با وصل شدن به یک مدار تركيبي تشخيص دهد كه آیا‬
‫این مدار تركيبي هازارد دارد یا خير‪ .‬فرض كنيد كه مدار تركيبي شما یک خروجي یک بيتي دارد و ورودي‬
‫آن نيز یک بردار ‪ M‬بيتي است و در ضمن این مدار تركيبي هيچ تاخيري ندارد یعني بالفاصله پس از اعمال‬
‫ورودي خروجي را توليد مي كند‪.‬‬
‫مدار تركيبي‬
‫تشخيص دهندهي‬
‫هازارد‬
‫‪Duty cycle 1‬‬
‫شروع تست‬
‫آیا این مدار هازارد دارد؟‬
‫طراحي سيستمهاي ديجيتال (‪)04-223‬‬
‫نيمسال نخست ‪23-22‬‬
‫دانشكدهي مهندسي كامپيوتر‬
‫زمان و نحوه ی تحويل‬
‫پنجشنبه ‪ 1312/8/16‬ساعت ‪ 23:00‬روي درس افزار‬
‫يادآوریهای عمومي‬
‫لطفاً توجه داشته باشيد كه‪:‬‬
‫‪ .1‬به ازاي هر روز دیركرد در تحویل تمرینها ‪ %15‬جریمه منظور خواهد شد‪.‬‬
‫‪ .2‬بههيچ عنوان تمریني را از دیگران كپي نكنيد و به دیگران كپي ندهيد‪ .‬درغيراینصورت نمرهي آن تمرین‬
‫براي هر دو طرف (كپيدهنده و كپيگيرنده) ‪ -155‬منظور خواهد شد‪.‬‬
‫موفق باشيد‬