انتشار رقم نقلي

Download Report

Transcript انتشار رقم نقلي

‫فصل چهارم‬
‫مدارات ترکيبي‪ -‬جمع کننده‪ ،‬ضرب کننده‪،‬‬
‫مقايسه کننده‬
‫انتشار رقم نقلي‬
‫‪ ‬جمع موازي بدين معناست که تمام بيتها بطور همزمان براي محاسبه نتيجه آماده هستند‪.‬‬
‫‪ ‬اما‪ ،‬ورودي رقم نقلي هر مرحله به مرحله قبل وابسته است‪.‬‬
‫‪ ‬بطور کلي تاخير انتشار از فرمول زير پيروي مي کند‪:‬‬
‫تاخير انتشار = تاخير انتشار يک گيت ‪ x‬تعداد سطحهاي مدار‬
‫انتشار رقم نقلي‬
‫‪‬‬
‫تاخير انتشار ‪ C‬در يک جمع کننده کامل ‪ 4‬بيتي چقدر است؟ (هر گيت‬
‫‪ 10ns‬تاخير انتشار دارد)‬
‫انتشار رقم نقلي‬
‫‪‬‬
‫‪‬‬
‫در مدار قبلي تاخير انتشار يک عامل محدود کننده براي سرعت مدار‬
‫بود‪.‬‬
‫متداولترين شيوه براي کاهش تاخير انتشار رقم نقلي‪ ،‬استفاده از يک‬
‫جمع کننده موازي به اسم ‪ carry lookahead‬است‪.‬‬
carry lookahead ‫مولد‬
‫جمع کننده چهار بيتي با ‪carry lookahead‬‬
‫تفريق کننده دودويي‬
‫‪‬‬
‫با استفاده از تکنيک مکمل گيري مي توان عمل تفريق را انجام داد‪.‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫محاسبه مکمل ‪:1‬‬
‫‪‬‬
‫‪‬‬
‫محاسبه مکمل ‪ 2‬مفروق منه‬
‫انجام جمع باينري‬
‫تمام ارقام را معکوس مي کنيم يعني ‪ 0‬ها را به ‪ 1‬و ‪ 1‬ها را به ‪ 0‬تبديل‬
‫مي کنيم‬
‫محاسبه مکمل ‪:2‬‬
‫‪‬‬
‫‪‬‬
‫محاسبه مکمل ‪1‬‬
‫جمع با ‪1‬‬
‫جمع و تفريق کننده با ورودي کنترل‬
‫‪‬‬
‫ورودي ‪ M‬کار مدار را کنترل مي کند‪.‬‬
‫سرريز‬
‫‪‬‬
‫سرريز وقتي اتفاق مي افتد که دو عدد ‪ n‬بيتي را جمع (تفريق) کنيم و‬
‫نتيجه به ‪ n+1‬بيت نياز داشته باشد‪.‬‬
‫‪‬‬
‫‪‬‬
‫اگر ‪ v=0‬يعني سرريز نداريم و نتيجه درست است‪.‬‬
‫اگر ‪ v=1‬يعني سرريز داريم و بيت ‪ n+1‬بيت عالمت است‪.‬‬
BCD ‫جمع کنند‬
Corrector
‫ضرب دودويي‬
‫‪‬‬
‫ضرب باينري را مي شود مثل ضرب اعداد دهدهي انجام داد‪.‬‬
‫ضرب کننده ‪ 4‬بيت در ‪ 3‬بيت‬
‫مقايسه کننده‬
‫‪‬‬
‫يک مقايسه کننده سه خروجی زير را توليد می کند‬
‫‪.1‬‬
‫‪.2‬‬
‫‪.3‬‬
‫‪‬‬
‫خروجی يک می شود اگر ‪A > B‬‬
‫خروجی يک می شود اگر ‪A = B‬‬
‫خروجی يک می شود اگر ‪A < B‬‬
‫فرض کنيد ‪A  A3 A2 A1 A0 :‬‬
‫‪B  B3 B2 B1B0‬‬
‫‪for i  0,1, 2, 3‬‬
‫‪‬‬
‫' ‪xi  Ai xnor Bi  Ai Bi  Ai ' Bi‬‬
‫اگر تمام ‪ xi‬ها “‪ ”1‬باشند ‪ A‬و‪ B‬با هم برابر هستند‪ .‬پس‬
‫‪ AND operation‬‬
‫‪( A  B)  x3 x2 x1 x0‬‬
‫مقايسه کننده‬
‫‪‬‬
‫‪‬‬
‫براي اينکه بفهميم کداميک بزرگتر است‪ ،‬از با ارزشترين بيت شروع مي‬
‫کنيم و با هم مقايسه مي کنيم‪ .‬هر کدام بزرگتر بود عدد مربوطه بزرگتر‬
‫است‪.‬‬
‫اگر مساوي بودند‪ ،‬بيت با ارزش بعدي را امتحان مي کنيم‪.‬‬
‫'‪( A  B)  A3 B3'  x3 A2 B2'  x3 x2 A1B1'  x3 x2 x1 A0 B0‬‬
‫‪( A  B)  A3' B3  x3 A2' B2  x3 x2 A1' B1  x3 x2 x1 A0' B0‬‬
‫مثال‪:‬‬
‫‪A  1010and B  0101 ( A  B)  1‬‬
‫‪A  0101and B  1010 ( A  B)  1‬‬
‫ بيتي‬4 ‫مقايسه کننده‬
XNOR
 A3' B3  x3 A2' B2  x3 x2 A1' B1  x3 x2 x1 A0' B0
 A3 B3'  x3 A2 B2'  x3 x2 A1B1'  x3 x2 x1 A0 B0'
 x3 x2 x1 x0
‫تمرين های فصل ‪4‬‬
‫‪‬‬
‫‪‬‬
‫شماره های ‪10 9 8 7 6 4 1‬‬
‫تحويل تا ‪ 4‬ارديبهشت‬