تالار گفتمان مانشت

نسخه‌ی کامل: تست پایپلاین
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
باسلام
قربونتون برم کسی میتونه تو حل این مساله کمکم کنه کتاب پورانم که تاجاداشته از سروته جواباش زده!!!!!!!!!!
پردازنده ای باساختارخط لوله دارای 4مرحله زیر است:
IF-ID-EX-WB
فرض کنید باهرواکشی میتوان 3دستور راوارد پردازنده کرد ولی به دلیل نبودن واحدهای موازی کافی در مراحل بعدی دستورات فقط دو دستور از 3دستور واکشی شده همزمان قابل اجراست حال اجرای 33دستور دراین پردازنده چند پالس ساعت طول میکشد؟
این تست ایهام داره و میشه به دو صورت حلش کرد: (یک مختصری از این دو روش مینویسم، اگر متوجه نشدید بگید بیشتر توضیح بدم.)

روش اول:
در این روش در کلاک اول ۳دستور را FET میکنیم در کلاک دوم ۲ تا از دستورات رو به مرحله بعد میدهیم و در کلاک سوم یک دستوری که از ۳ دستور مانده را به مرحله بعد میفرستیم و ۳ دستور بعد را FET میکنیم.و الی آخر
WB EXE DEC IF
۳
۱ ۲
۳ ۱ ۲
۱ ۲ ۱ ۲

روش دوم:
در این روش در کلاک اول ۳ دستور را FET میکنیم و در کلاک بعد دو دستور را به مرحله بعد میدهیم و ۲دستور هم FET میکنیم. و الی آخر
۳ ۲
۳ ۲ ۲
۳ ۲ ۲ ۲
آقا من اصلا از این توضیح جناب nomad چیزی سر در نیاوردم. لطفا یکم توضیح بدید که اون عدد ها نوشتین یعنی چه؟ و ترتیبشون چیه و اصلا چی به چیه !!!!!!!!!!!!؟؟؟؟؟؟؟؟؟؟؟؟
اون عددهایی که نوشتم چند کلاک از نحوه واکشی دستورها در این پایپ لاین هست.
روش اول فقط دستورات رو 3 تا 3 تا واکشی میکنه یعنی 3 دستور رو که واکشی میکنه در کلاک بعد 2 دستور به مرحله بعد (یعنی DEC ) میروند و در کلاک بعد ترش :دی یک دستوری که مانده به مرحله DEC میره و در این زمان هست که مرحله FET خالی شده و ما میتونیم 3 دستور دیگه رو واکشی کنیم.
در روش دوم فقط در کلاک اول هست که 3 دستور رو واکشی میکنیم و در بقیه کلاک ها دستورات رو 2 تا 2تا واکشی میکنیم و 2 تا 2تا هم به مرحله های بعد (یعنی DEC وEXE و WB) میفرستیم.
ولی این که جواب نیست.
کلا چند پالس طول می کشه و هر یک از 4 مرحله ها چند پالس هستند؟
بله من جواب آخر رو نگفتم فقط راه حل رو گفتم شما اگر با این دو روش 33 دستور العمل رو واکشی کنید یکی به جواب 20 و دیگری به جواب 25 میرسه که هر دو در گزینه ها هست.

در روش اول اگر حساب کنید از واکشی 3 دستور اول تا اتمام عملیات آخرین دستور (یعنی تا اتمام مرحله WB برای آخرین دستور) 25 پالس طول میکشه.

و در روش دوم 20 پالس طول میکشه.

ببخشید یه کم توضیح دادن به این صورت که باید جمله بندی کنم و کتابی بگم سخته. ولی امیدوارم که تونسته باشم حق مطلب رو ادا کنم.

من اینجا براتون مراحل رو کامل مینویسم:
روش اول (که فکر میکنم جواب سنجش هم هست)
WB EXE DEC FET
3
1 2
3 1 2
1 2 1 2
3 1 2 1
1 2 1 2
3 1 2 1
1 2 1 2
3 1 2 1
1 2 1 2
3 1 2 1
1 2 1 2
3 1 2 1
1 2 1 2
3 1 2 1
1 2 1 2
3 1 2 1
1 2 1 2
3 1 2 1
1 2 1 2
3 1 2 1
1 2 1 2
1 2 1
1 2
1

WB EXE DEC FET
3
3 2
3 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
3 2 2 2
1 2 2 2
1 2 2
1 2
1
خیلی ممنون از اینکه وقت گذاشتید اما من که نفهمیدم
یکی نیست توضیح بده
فقط صرفا نوشتن رو نمی خوام
کاربرایی که میان درک می کنن و تشکر رو می زنن لااقل اگه متوجه شدن یکم هم اونا برای ما توضیح بدن

من رشتم نرم افزاره معماری خوب بلد نیستم
کسی نبود ؟
لینک مرجع