تالار گفتمان مانشت
سوال ۱۰۳ کنکور مهندسی فناوری اطلاعات ۸۸ - نسخه‌ی قابل چاپ

سوال ۱۰۳ کنکور مهندسی فناوری اطلاعات ۸۸ - amir2930 - 06 بهمن ۱۳۸۹ ۰۸:۴۵ ب.ظ

فرض کنید تاخیر گیت های پایه برابر ۱ واحد باشد و از تاخیر گیت NOT نیز صرفنظر می کنیم . اگر برای پیاده سازی یک ضرب کننده آرایه ۵ بیتی از بلوک های CLA چهاربیتی استفاده کنیم‌، تاخیر این ضرب کننده چقدر است؟
۲۴
۲۶
۲۸
۳۰

RE: [تست] سوال ۱۰۳ آی تی ۸۸ - امیدوار - ۰۷ بهمن ۱۳۸۹ ۰۳:۰۴ ب.ظ

با توجه به شکل که بخشی رو از اون رو می بینی اگه همین طور ادامه میدی به ۵ عدد جمع کننده‌ی CLA نیاز داریم حالا بحث مهم‌تر تاخیر CLA است.
نکته: در یک جمع کننده CLA که دو عدد n بیتی رو با هم جمع میکنه بزرگترین گیت and و OR دارای n+1 ورودی خواهد بود.
با توجه به نکته‌ی بالا بزرگترین گیت دارای ۵ ورودی است ولی ما فقط گیت های پایه(دو ورودی) داریم که اگه بخواهیم گیت ۵ ورودی رو با گیت های دو ورودی پیاده کنیم به چهار طبقه تقسیم میشه، اگه به شکل cLA در کتاب پوران نگاهی بیاندازی متوجه میشی که برای تولید c4 بیشترین تاخیر رو داریم . یک طبقه تاخیر هم مربوط به Pi و Gi پس در کل تاخیر میشه:
۱+۴+۱=۶ نانوثانیه

RE: سوال ۱۰۳ کنکور مهندسی فناوری اطلاعات ۸۸ - arezoo174 - 23 دى ۱۳۹۲ ۰۱:۲۵ ق.ظ

(۰۷ بهمن ۱۳۸۹ ۰۳:۰۴ ب.ظ)امیدوار نوشته شده توسط:  با توجه به شکل که بخشی رو از اون رو می بینی اگه همین طور ادامه میدی به ۵ عدد جمع کننده‌ی CLA نیاز داریم حالا بحث مهم‌تر تاخیر CLA است.
نکته: در یک جمع کننده CLA که دو عدد n بیتی رو با هم جمع میکنه بزرگترین گیت and و OR دارای n+1 ورودی خواهد بود.
با توجه به نکته‌ی بالا بزرگترین گیت دارای ۵ ورودی است ولی ما فقط گیت های پایه(دو ورودی) داریم که اگه بخواهیم گیت ۵ ورودی رو با گیت های دو ورودی پیاده کنیم به چهار طبقه تقسیم میشه، اگه به شکل cLA در کتاب پوران نگاهی بیاندازی متوجه میشی که برای تولید c4 بیشترین تاخیر رو داریم . یک طبقه تاخیر هم مربوط به Pi و Gi پس در کل تاخیر میشه:
۱+۴+۱=۶ نانوثانیه
کاشکی یکی پیدا شه اینو بیشتر توضیح بدهHuh
cLA در موردش هیچی نمیدونم

RE: سوال ۱۰۳ کنکور مهندسی فناوری اطلاعات ۸۸ - hosshah - 23 دى ۱۳۹۲ ۰۳:۳۵ ب.ظ

(۲۳ دى ۱۳۹۲ ۰۱:۲۵ ق.ظ)arezoo174 نوشته شده توسط:  کاشکی یکی پیدا شه اینو بیشتر توضیح بدهHuh
cLA در موردش هیچی نمیدونم
مخففه Carry Lookahead Adder
به این معنی که میخواد Carry هر مرحله رو بدون وابستگی به Carry ها و جمع های مرحله قبل انجام بده. یعنی مثلا Carry مرحله پنجم به جمع و Carry مرحله چهارم بستگی نداشته باشه تا جمع ها بتونه به صورت موازی انجام بشه
حالا ما میایم دو تا متغیر به نام های P و G که معرف Propagation یا انتشار و Generation یا تولید هست تعریف میکنیم.
متغیر P0 به این معناست که جمع دو بیت اول، رقم نقلی رو انتقال میدن. مثلا اگر رقم نقلی ورودی ۱ باشه در چه صورتی جمع اول اون یک رو انتقال میده؟ در صورتی که حداقل یکیشون یک باشه
متغیر G0 هم به این معناست که جمع دو بیت اول رقم نقلی تولید کنه
حالا ما میایم رقم نقلی خروجی رو حساب میکنیم (دو عدد ۳ بیتی فرض کن که محاسبات راحت تر شه)
[tex]Carry_{(out)}=C_{0}P_{0}P_{1}P_{2} G_{0}P_{1}P_{2} G_{1}P_{2} G_{2}[/tex]
همونطور که میبینی دو عدد سه بیتی داشتیم (n=3) و برای محاسبه رقم نقلی خروجی یک AND و یک OR چهار ورودی (n+1) داریم
عبارت اول یعنی رقم نقلی ورودی ۱ باشه و جمع اول و دوم وسوم این رقم نقلی رو انتقال بدن
عبارت دوم یعنی جمع اول Carry تولید کنه و جمع دوم و سوم انتقالش بدن
عبارت سوم یعنی جمع دوم Carry تولید کنه و جمع سوم انتقالش بده
و در نهایت عبارت آخر میگه که خود جمع آخر رقم نقلی تولید کنه

RE: سوال ۱۰۳ کنکور مهندسی فناوری اطلاعات ۸۸ - arezoo174 - 23 دى ۱۳۹۲ ۰۴:۲۲ ب.ظ

(۲۳ دى ۱۳۹۲ ۰۳:۳۵ ب.ظ)hosshah نوشته شده توسط:  
(23 دى ۱۳۹۲ ۰۱:۲۵ ق.ظ)arezoo174 نوشته شده توسط:  کاشکی یکی پیدا شه اینو بیشتر توضیح بدهHuh
cLA در موردش هیچی نمیدونم
مخففه Carry Lookahead Adder
به این معنی که میخواد Carry هر مرحله رو بدون وابستگی به Carry ها و جمع های مرحله قبل انجام بده. یعنی مثلا Carry مرحله پنجم به جمع و Carry مرحله چهارم بستگی نداشته باشه تا جمع ها بتونه به صورت موازی انجام بشه
حالا ما میایم دو تا متغیر به نام های P و G که معرف Propagation یا انتشار و Generation یا تولید هست تعریف میکنیم.
متغیر P0 به این معناست که جمع دو بیت اول، رقم نقلی رو انتقال میدن. مثلا اگر رقم نقلی ورودی ۱ باشه در چه صورتی جمع اول اون یک رو انتقال میده؟ در صورتی که هردوشون یک باشه
متغیر G0 هم به این معناست که جمع دو بیت اول رقم نقلی تولید کنه
حالا ما میایم رقم نقلی خروجی رو حساب میکنیم (دو عدد ۳ بیتی فرض کن که محاسبات راحت تر شه)
[tex]Carry_{(out)}=C_{0}P_{0}P_{1}P_{2} G_{0}P_{1}P_{2} G_{1}P_{2} G_{2}[/tex]
همونطور که میبینی دو عدد سه بیتی داشتیم (n=3) و برای محاسبه رقم نقلی خروجی یک AND و یک OR چهار ورودی (n+1) داریم
عبارت اول یعنی رقم نقلی ورودی ۱ باشه و جمع اول و دوم وسوم این رقم نقلی رو انتقال بدن
عبارت دوم یعنی جمع اول Carry تولید کنه و جمع دوم و سوم انتقالش بدن
عبارت سوم یعنی جمع دوم Carry تولید کنه و جمع سوم انتقالش بده
و در نهایت عبارت آخر میگه که خود جمع آخر رقم نقلی تولید کنه
ممنون لطف کردین