Midterm Solution.pdf

‫استاد درس‪ :‬دکتر اجاللی‬
‫کلید سواالت میان ترم مدارمنطقی‪ ،‬بهار ‪2931‬‬
‫‪ .1‬یک نمونه از اعداد ‪ BCD‬که با هر دو عدد متوالی در یک بیت اختالف داشته باشند و مکمل ‪9‬شان نیز در یک‬
‫بیت اختالف دارد‪ ،‬به صورت زیر حاصل می شود‪.‬‬
‫می توانیم از هر کدام از خانه های جدول کارنو که میخواهیم شروع کنیم و آن را معادل با عدد صفر قرار‬
‫دهیم‪ .‬در اینجا فرض کردهایم کد ‪ 0011‬معادل عدد ‪ 0‬است‪ .‬یکی از ‪ 4‬خانهی مجاورش را به مکمل ‪ 9‬آن‬
‫اختصاص می دهیم‪ .‬سپس این کار را برای تمامی اعداد ادامه می دهیم تا همه اعداد ‪ BCD‬محاسبه شوند‪.‬‬
‫‪10‬‬
‫‪11‬‬
‫‪0‬‬
‫‪9‬‬
‫‪8‬‬
‫‪1‬‬
‫‪01‬‬
‫‪7‬‬
‫‪2‬‬
‫‪00‬‬
‫‪4‬‬
‫‪5‬‬
‫‪6‬‬
‫‪3‬‬
‫‪cd‬‬
‫‪ab‬‬
‫‪00‬‬
‫‪01‬‬
‫‪11‬‬
‫‪10‬‬
‫با برهان خلف اثبات میکنیم کدی که دارای چنین خاصیتی است‪ ،‬نمیتواند وزندار باشد‪ .‬زوج اعداد ‪BCD‬‬
‫(‪ )4,5( ،)3,6( ،)2,7( ،)1,8( ،)0,9‬وزن دار هستند‪ .‬از آنجاییکه فاصلهی همینگ هر یک از این زوج اعداد‬
‫یک هست‪ ،‬بنابراین اختالف هر یک از آنها تنها در یک بیت خواهد بود‪ .‬اختالف آنها میتواند مثبت یا منفی‬
‫‪ .‬یعنی حداقل پنج وزن برای نمایش این کد نیاز‬
‫باشد‪ .‬به ترتیب‪:‬‬
‫هست‪ .‬با توجه به اینکه‪ ،‬هر بیت میتواند نشاندهندهی یک وزن باشد‪ ،‬در این حالت‪ ،‬با چهار بیت ‪ BCD‬باید‬
‫پنج وزن را نشان دهیم‪ ،‬که غیرممکن است‪ .‬پس فرض وزندار بودن چنین کدی نادرست است‪.‬‬
‫‪1‬‬
.2
F(a,b,c,d)=∑
cd
00
01
11
10
ab
00
1
01
1
11
1
1
1
1
01
11
1
1
1
1
00
01
11
1
1
1
1
10
1
1
1
1
F=d’ +ab’
10
1
G=bd+b’c’d’
g(a,b,c,d)=∑
cd
00
01
11
10
ab
00
1
ab’‫گیت مشترک‬
h(a,b,c,d)=∑
cd
00
01
11
10
ab
H=a’d+ab’
10
1
1
1
1
2
‫همانطور که در شکل باال مشاهده می کنیم به ‪11‬ورودی گیت نیاز است‪.‬‬
‫‪ .3‬در شکل زیر سیگنال ‪ x‬و ‪ y‬را تعیین میکنیم‪:‬‬
‫‪3‬‬
‫ابتدا سیگنال ‪ x‬و ‪ y‬را بدست آورده و سپس سیگنال ‪ O‬را تعیین میکنیم‪:‬‬
‫{‬
‫{‬
‫{‬
‫‪ .4‬برای مقایسهی ‪ a1a0‬و ‪ b1b0‬ابتدا باید ‪ b1‬و ‪ a1‬را با هم مقایسه کنیم‪ .‬این مقایسه سه حالت خواهد‬
‫داشت که در شکل زیر‪ ،‬با مالتیپلکسر نمایش میدهیم‪:‬‬
‫در مرحلهی بعد‪ ،‬مالتیپلکسر ‪ 4‬در ‪ 1‬را با سه مالتی پلکسر ‪ 2‬در ‪ 1‬به صورت شکل زیر نمایش میدهیم‪:‬‬
‫‪4‬‬
‫هر یک از مالتیپلکسرهای ‪ 2‬در ‪ 1‬را میتوان با دو بافر به صور شکل زیر نشان داد‪:‬‬
‫تابع ’‪ a0b0‬را نیز میتوان با دو بافر به صورت شکل زیر نشان داد‪:‬‬
‫‪5‬‬
‫به این ترتیب‪ ،‬شکل زیر را خواهیم داشت‪:‬‬
‫∑‬
‫‪.1‬‬
‫برای پیادهسازی تابع ‪ NOR-OR‬باید ابتدا مینترمهای تابع را بدست آوریم و تابع را به صورت جمع‬
‫حاصلضربها پیادهسازی کنیم‪.‬‬
‫‪6‬‬
‫مرحلهی اول‪:‬‬
‫وزن ‪1‬‬
‫√‪1‬‬
‫√‪4‬‬
‫وزن ‪3‬‬
‫√‪7‬‬
‫√‪13‬‬
‫√‪14‬‬
‫√‪21‬‬
‫√‪25‬‬
‫√‪28‬‬
‫وزن ‪2‬‬
‫√‪5‬‬
‫√‪6‬‬
‫√‪9‬‬
‫√‪12‬‬
‫√‪17‬‬
‫وزن ‪4‬‬
‫√‪15‬‬
‫√‪29‬‬
‫√‪30‬‬
‫وزن ‪5‬‬
‫√‪31‬‬
‫مرحلهی دوم‪:‬‬
‫وزن ‪1‬‬
‫√‪1,5‬‬
‫√‪1,9‬‬
‫√‪1,17‬‬
‫√‪4,5‬‬
‫√‪4,6‬‬
‫√‪4,12‬‬
‫وزن ‪3‬‬
‫√‪7,15‬‬
‫√‪13,15‬‬
‫√‪13,29‬‬
‫√‪14,15‬‬
‫√‪14,30‬‬
‫√‪21,29‬‬
‫√‪25,29‬‬
‫√‪28,29‬‬
‫√‪28,30‬‬
‫وزن ‪2‬‬
‫√‪5,7‬‬
‫√‪5,13‬‬
‫√‪5,21‬‬
‫√‪6,7‬‬
‫√‪6,14‬‬
‫√‪9,13‬‬
‫√‪9,25‬‬
‫√‪12,13‬‬
‫√‪12,14‬‬
‫√‪12,28‬‬
‫√‪17,21‬‬
‫√‪17,25‬‬
‫وزن ‪4‬‬
‫√‪15,31‬‬
‫√‪29,31‬‬
‫√‪30,31‬‬
‫مرحلهی سوم‪:‬‬
‫وزن ‪1‬‬
‫√‪1,5,9,13‬‬
‫√‪1,5,17,21‬‬
‫√‪1,9,17,25‬‬
‫√‪1,5,17,21‬‬
‫√‪4,5,6,7‬‬
‫√‪4,5,12,13‬‬
‫√‪4,6,12,14‬‬
‫وزن ‪2‬‬
‫√‪5,7,13,15‬‬
‫√‪5,13,21,29‬‬
‫√‪6,7,14,15‬‬
‫√‪9,13,25,29‬‬
‫√‪12,13,14,15‬‬
‫√‪12,13,28,29‬‬
‫√‪12,14,28,29‬‬
‫√‪12,14,28,30‬‬
‫√‪17,21,25,29‬‬
‫وزن ‪3‬‬
‫√‪13,15,29,31‬‬
‫√‪14,15,30,31‬‬
‫√‪28,29,30,31‬‬
‫مرحلهی چهارم‪:‬‬
‫وزن ‪1‬‬
‫‪1,5,9,13,17,21,25,29‬‬
‫‪4,5,6,7,12,13,14,15‬‬
‫وزن ‪2‬‬
‫‪12,13,14,15,28,29,30,31‬‬
‫‪7‬‬
‫در پایان‪ ،‬ترکیب ‪ AND-OR‬را به ‪ NOR-OR‬تبدیل میکنیم‪:‬‬
‫̅̅̅̅̅̅̅̅̅̅̅‬
‫̅̅̅̅̅̅̅̅̅̅‬
‫̅̅̅̅̅̅̅̅̅̅̅‬
‫‪ .6‬ورودیها را مطابق شکل زیر به صورت معکوس به ورودی ‪ PENC‬وصل میکنیم‪ .‬سپس‪ ،‬خروجیها را‬
‫معکوس میکنیم‪.‬‬
‫‪ .7‬اگر ‪ b3b2b1b0‬عدد ‪ BCD‬باشد‪ ،‬اعداد ‪2،3،1‬و‪ 7‬اعداد اول هستند‪ .‬شکل زیر مدار تشخیص دهندهی این‬
‫اعداد اول را نشان میدهد‪.‬‬
‫‪8‬‬