˘ˇˆ˙˝ ˛˚˜ !˚# · pdf file2’s complement ˇ2 ˘ / ... ashr aq 00100...

48
Computer Architecture !"# $% &’ ()*% 1389

Upload: phungthuy

Post on 15-Feb-2018

232 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

کامپيوتر معماریComputer Architecture

پانزدھم جلسهکامپيوتری محاسبات

ھمدان صنعتی دانشگاه1389پاييز

Page 2: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

محاسباتی الگوريتمھای

Page 3: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

کامپيوتردراعدادنمايش

2مبنایدراعدادنمايشمختلفنحوه�

signedع6مت-اندازهنمايش1. – magnitude

s’2ھا2متممنمايش2. complement

Floatingاعشارینمايش3. point

BCDنمايش4.

Page 4: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

اصلیعمليات

جمع�تفريق�ضرب�تقسيم�

Page 5: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

دار ع6مت ھای داده تفريق و جمع

Page 6: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

افزاری سخت سازی پياده

Page 7: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001
Page 8: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

مکمل تفريق و 2جمع

Page 9: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001
Page 10: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

ضربالگوريتم

نشانع6مت-اندازهبصورتکهوقتیدارع6متاعدادضرب�:ميشودانجامزيربصورتکاغذوقلمباشندباشدهداده

Multiplicand 1000 = 8Multiplie 1001 = 9

10000000

00001000

Product 01001000 = 72n bits x n bits = 2n bit product

:ميکنيمشروعفيهمضروببيتارزشترينکماز

ميکنيمجايگزينصفربابودصفراگر،ميکنيمکپیرامضروببوديکاگر

ميدھيمشيفتچپسمتبهبيتيکمرحلهھردر

ميکنيمجمعراحاصلاعدادآخردر

ع6متحاصلضرب

باشديکسانعدددوھرع6متاگر+باشدھممخالفشوندهضرباعدادع6متاگر-

Page 11: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

ضربالگوريتمافزاریسختاجرای

خواھدتفاوتقبلیالگوريتمبامواردزيردرافزاریسختاجرای�:داشت

جمعرامقطعیھایحاصلضربکنندهجمعيکازاستفادهباکارسادگیبرای1..مينمائيمذخيرهرجيستريکدرونموده

.ميدھيمشيفترامقطعیحاصلضربمضروبچپبهشيفتبجای2.

.نيستکردنجمعبهنيازیديگرميشودصفرمقطعیحاصلضربکهوقتی3.Aھایجيسترربرع6وهافزارسختدر� ,Bذخيرهرااعدادکه

باتدابادرکهميشوداستفادهSCتوالیشمارندهيکاز،ميکنند.ميشودپرمضروبھایبيتتعدادبابرابرمقداری

شدرفصکهوقتیويافتهکاھشيکواحدشمارندهمقدارمرحلهھردر�.يابدمیخاتمهضربعمل

Page 12: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

دارع6متداعداضربافزارسخت

A=Product Q=Multiplier

B= Multiplicand

n-bit ALU

Shift rightt EAQn bitsn bits

As

Bs

Qs

n bits

E0

As,Bs,Qsميروندبکارع6متبيتنگھداریبرای

Q0

Sequence counter

n-1 bitsParallel Adder

Page 13: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001
Page 14: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

As�Qs XOR BsQs � Qs XOR Bs

A �0, E�0SC � n-1

Q0 EA �A+B

Shr EAQSC �SC-1

SC

=1

=0

خاتمه

درميشودفرضبيتnمضروبھایبيتتعداددربيتn-1تعدادع6متبيتگذاشتنکناربانتيجه.شدخواھندضربھم

A,Eميشوندصفرابتدادر.

=0

=0

ضربالگوريتم

يابدمیخاتمهضربعملSCشدنرفصباداردقرارAQدرضربحاصلخاتمهدر

Bمضروب �Qفيهمضروب �

Page 15: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

Bمضروب �Qفيهمضروب �

As�Qs XOR BsQs � Qs XOR Bs

A �0, E�0SC � n-1

Q0 EA �A+B

Shr EAQSC �SC-1

SC

=1

=0

خاتمه

Multiplicand B= 01000 = 8Multiplier Q= 0 1001 = 9

=0

=0

مثالAs=Qs=0A=0SC=4

SC A Q

4 0000 1001 � A=A+B=1000Shr EAQ

3 0100 0100Shr EAQ

2 0010 0010Shr EAQ

1 0001 0001 � A=A+B=1001Shr EAQ

0 0100 1000

Page 16: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001
Page 17: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

2متممضرببرایBoothضربالگوريتمدادهنمايش2متممبصورتاعدادکهميشوداستفادهھنگامیضربالگوريتماين�

:استزيرقراربهالگوريتمايناصلیايده.باشندشدهموقعيت2kموقعيتازکهباشديکبيترشتهيکدارایفيهمضروباگر� 2mتا

.بااستبرابررشتهاينارزشعددیلحاظازباشد،داشتهطول 2k+1 – 2m

(001110)باينریمعادلدرمثالبرای� تا21موقعيتازھايکرشته142k+1گرفتنظردرزيربصورتميتوانرا14عدد.دارندوجود24موقعيت –

2m =24 – 21

دانستزيرعبارتمعادلميتوانرا14درMمثلعددیضرباينبربنا�Mx 24 – Mx21

ميايدبدستmراستبهشيفتبار4باقسمتاين ميايدبدستmراستبهشيفتبار1باقسمتاين

آيدمیبدستقسمتايندوتفريقباحاصلضرب

Page 18: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

2متممضرببرایBoothضربالگوريتم

:الگوريتم�،ھمسرپشت1ھایبيتازایرشتهاز1بيناولينديدنبا–

ميشودکممقطعیحاصلضربازمضروبحاصلضرببامضروب؛1رشتهازيکپسصفراولينديدنبا–

.ميشودجمعمقطعیآنقبلیارزشکمبيتبايهفمضروبارزشکمبيتکهوقتی–

نميکندتغييرمقطعیحاصلضربباشديکسان.ميکندکارمنفیومثبتاعدادبرایالگوريتم�

Page 19: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

Q-1 � 0A �0

SC � n

Q0 Q-1 A �A+B

AShr AQSC �SC-1

SC

=01

=00

خاتمه

A, Q-1ميشوندصفرابتدادر.

=0

=0

Boothضربالگوريتم

يابدمیخاتمهضربعملSCشدنصقرباداردقرارAQدرضربحاصلخاتمهدر

=10

A �A-B

نحوهمورددرQ-1وQ0بيتھایمشاھدهبا.ميشودگرفتهتصمصمعمل

Bمضروب �Qفيهمضروب �

Page 20: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

Bمضروب �Qفيهمضروب �

Q-1 � 0A �0

SC � n

Q0 Q-1 A �A+B

aShr AQSC �SC-1

SC

=01

=00

خاتمه

=0

=0

مثال

=10

A �A-B

Multiplicand B= 10111 = -9Multiplier Q= 10011 = -13

Q-1 =0A=0SC=5

SC Q0Q-1 A Q5 10 00000 10011 � A=A-B=01001aShr AQ 00100 110014 11 00100 11001aShr AQ 00010 011003 01 00010 01100 � A=A+B=11001AShr EAQ 11100 101102 00 11100 10110aShr AQ 11110 010111 10 11110 01011 � A=A-B=00111aShr AQ 00011 10101

Page 21: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001
Page 22: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001
Page 23: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001
Page 24: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

ایآرايهکنندهضرب

بصورتھمگیکرديمبررسیکهایکنندهضربمدارات�tدادهبيتھررویراضربعملقسمتیوکردهکارس.ميکردندتکرار

دروميکرواپريشنيکباراضربعمملبتواناينکهبرای�انجامبرایترکيبیمداريکازميبايستدادانجامسيکليک.نموداستفادهضربعمل

نيازگيتزيادیبسيارتعدادبهاينکاربرایuزمترکيبیمدار�.ندارداقتصادیصرقهزيادیموارددرکهدارد

Page 25: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

بيتی2عدددوضرب

استفادهباميتوانراایآرايهکنندهربضترکيبیمدارساختار�:دادنشانبيتیدوعدددوکنندهضربمداراز

b1 b0a1 a0

a0 b1 a0b0a1b1 a1b0

c3 c2 c1 c0

راعملاينبهمربوطمدار�جمعنيمدوازاستفادهباميتوان:ساختگيتتعدادیوکنندهb0a0 b1

b0

HAC S

HAC S

C3 C2 C1 C0

a1

b1

Page 26: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

بيتیnعدددوضرب

:ميشودانجاممشابھیشيوهبهھمبيتیnعدددوضرب�nxnتعدادکلدر.داشتخواھيمANDگيتسطحnتعداد�

.بودخواھدuزمANDگيتمقطعیحاصلضربباANDگيتازسطحھرخروجی�

.شدخواھدجمعقبلیسطح�n-1کنندهجمعnبودخواھدنيازبيتی.

Page 27: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

تقسيمالگوريتم

ع6مت-اندازهروشبهکهصحيحباينریعدددوتقسيمعمل�انجامتفريقوشيفت،مقايسهطريقاز،باشندشدهدادهنشانميشود

=B=10001عليهمقسوم011100000001110011100-10001-010110--10001--001010---010100----10001----000110-----00110

5 bits of A<B, quotient has 5 bits6 bits of A>=Bshift right B and subtract ; enter 1 in Q7 bits of remainder >=Bshift right B and subtract ; enter 1 in Qremainder <B; enter 0 in Q; shift right BRemainder >=Bshift right B and subtract ; enter 1 in Qremainder <B; enter 0 in Q;final remainder

Q=11010A= مقسوم

Page 28: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

تقسيمالگوريتمافزاریسختاجرای

ترراحتتقسيمالگوريتمافزاریسختاجرایھنگامدر�باقيماندهيامقسومعليهمقسومشيفتبجایازاگربودخواھد.ميشوددادهشيفتچپسمتبهمقطعی

باھادادهاندازهوشدهانجام2متتممعجطريقازتفريقعمل�ميشودمقايسهنقلیرقمازاستفاده

.استضربمدارافزارسختمشابهuزمافزارسخت�

Page 29: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

دارع6متداعداتقسيمافزارسخت

A=remainder Q=quotient

B= Divisor

n-bit ALU

Shift left EAQn bitsn bits

As

Bs

Qs

n bits

E 0

As,Bs,Qsميروندبکارع6متبيتنگھداریبرای

Q0

Sequence counter

n-1 bitsSubtract

ميگيردقرارEدراندازهبهمربوطاط6عات E=0 A<BE=1 A>=B

Page 30: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

Divide Overflow

عملافزاریسختانجامھنگامدرسرريزوقوعتشخيص�اعدادنگھداریظرفيتھارجيسترزيرااستمھمبسيارتقسيم

ندارندراخودگنجايشازبزرگترباuيینيمهھایبيت:کهافتدمیاتفاقوقتیتقسيمعملسرريز�

.باشدعليهمقسوممساویيابزرگترعددیمقسومدادهتشخيصنيزصفربرتقسيمعملوقوعبايدآنبرع6وه�

.شودوشدهستDVFمثلف6پیفليپافتدمیاتفاقسرريزوقتی�

ميسازدمتوجهراکاربرخطاپيغامارسالباکامپيوتر

Page 31: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

Qs � Qs XOR BsSC � n-1

EA �A+BDVF�0

Shl EAQ

=0

خاتمهافتادهاتفاقسرريز

=0

تقسيمالگوريتم

EA �A+BDVF�1

EA �A-B A �A-B

E

EA �A+B Q0 �1

SC �SC-1

SC

E

خاتمهAدرباقيماندهوQدرقسمتخارج

EA �A-B

E

Bعليهمقسوم �Aمقسوم Q �

A<BA>=B =1

=1

=1

=0

=0 A<B A>=B

=0

Page 32: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

اعشاریمحاسبات

:ميشوددادهنمايشزيربصورتاعشاریعدديک�

M x re

:ميشودهدادنشانزيربصورت537.25عددمثال�.53725 x 10 3

راپايهواعشارینقطهموقعيتميتوانکامپيوتردرذخيرهبرای.نموداکتفاeوMذخيرهبهوکردهفرضثابت

Mantissaيااعشارradixياپايه

exponentياتوان

Page 33: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

اعشارینمايش

ترينارزشباآندرکهاستعددینرماليزهاعشاریعدد�.باشدصفرغيرMantissaمقدار

باقرارونبودهکردننرماليزهقابلصفرعددروشايندر�.ميشودساختهتوانواعشاریجزءمقداربازا0دادن

Page 34: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

ایآرايهکنندهضرب

سtبصورتھمگیکرديمبررسیکهایکنندهضربمدارات�.کردندمیتکراردادهبيتھررویراضربعملوکردهکار

عمليکباراضربعملبتواناينکهبرای� سيکليکدروريزضربعملانجامبرایترکيبیمداريکازبايستمیدادانجام

.نموداستفاده

داردنيازگيتزيادیبسيارتعدادبهاينکاربرایuزمترکيبیمدار�.ندارداقتصادیهفصرزيادیموارددرکه

Page 35: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

بيتی2عدددوضرب

استفادهباميتوانراایآرايهکنندهربضترکيبیمدارساختار�:دادنشانبيتیدوعدددوکنندهضربمداراز

b1 b0a1 a0

a0 b1 a0b0a1b1 a1b0

c3 c2 c1 c0

راعملاينبهمربوطمدار�جمعنيمدوازاستفادهباميتوان:ساختگيتتعدادیوکنندهb0a0 b1

b0

HAC S

HAC S

C3 C2 C1 C0

a1

b1

Page 36: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

بيتیnعدددوضرب

:ميشودانجاممشابھیشيوهبهھمبيتیnعدددوضرب

nxnتعدادکلدر.داشتخواھيمANDگيتسطحnتعداد�.بودخواھدuزمANDگيت

مقطعیحاصلضربباANDگيتازسطحھرخروجی�.شدخواھدجمعقبلیسطح

�n-1کنندهجمعnبودخواھدنيازبيتی.

Page 37: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001
Page 38: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

تقسيمالگوريتم

ع6مت-اندازهروشبهکهصحيحباينریعدددوتقسيمعمل�انجامتفريقوشيفت،مقايسهطريقاز،باشندشدهدادهنشانميشود

=B=10001عليهمقسوم011100000001110011100-10001-010110--10001--001010---010100----10001----000110-----00110

5 bits of A<B, quotient has 5 bits6 bits of A>=Bshift right B and subtract ; enter 1 in Q7 bits of remainder >=Bshift right B and subtract ; enter 1 in Qremainder <B; enter 0 in Q; shift right BRemainder >=Bshift right B and subtract ; enter 1 in Qremainder <B; enter 0 in Q;final remainder

Q=11010A= مقسوم

Page 39: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

تقسيمالگوريتمافزاریسختاجرای

ترراحتتقسيمالگوريتمافزاریسختاجرایھنگامدر�باقيماندهيامقسومعليهمقسومشيفتبجایاگربودخواھد.ميشوددادهشيفتچپسمتبهمقطعی

باھادادهاندازهوشدهانجام2متتممعجطريقازتفريقعمل�ميشودمقايسهنقلیرقمازاستفاده

.استضربمدارافزارسختمشابهuزمافزارسخت�

Page 40: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

دارع6متداعداتقسيمافزارسخت

A=remainder Q=quotient

B= Divisor

n-bit ALU

Shift left EAQn bitsn bits

As

Bs

Qs

n bits

E 0

As,Bs,Qsميروندبکارع6متبيتنگھداریبرای

Q0

Sequence counter

n-1 bitsSubtract

ميگيردقرارEدراندازهبهمربوطاط6عات E=0 A<BE=1 A>=B

Page 41: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

Divide Overflow

عملافزاریسختانجامھنگامدرسرريزوقوعتشخيص�اعدادنگھداریظرفيتھارجيسترزيرااستمھمبسيارتقسيم

ندارندراخودگنجايشازبزرگترباuيینيمهھایبيت:کهافتدمیاتفاقوقتیتقسيمعملسرريز�

.باشدعليهمقسوممساویيابزرگترعددیمقسومدادهتشخيصنيزصفربرتقسيمعملوقوعبايدآنبرع6وه�

.شودوشدهستDVFمثلف6پیفليپافتدمیاتفاقسرريزوقتی�

ميسازدمتوجهراکاربرخطاپيغامارسالباکامپيوتر

Page 42: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

Qs � Qs XOR BsSC � n-1

EA �A+BDVF�0

Shl EAQ

=0

خاتمهافتادهاتفاقسرريز

=0

تقسيمالگوريتم

EA �A+BDVF�1

EA �A-B A �A-B

E

EA �A+B Q0 �1

SC �SC-1

SC

E

خاتمهAدرباقيماندهوQدرقسمتخارج

EA �A-B

E

Bعليهمقسوم �Aمقسوم Q �

A<BA>=B =1

=1

=1

=0

=0 A<B A>=B

=0

Page 43: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

اعشاریمحاسبات

:ميشوددادهنمايشزيربصورتاعشاریعدديک�

M x re

:ميشودهدادنشانزيربصورت537.25عددمثال�.53725 x 10 3

راپايهواعشارینقطهموقعيتميتوانکامپيوتردرذخيرهبرای.نموداکتفاeوMذخيرهبهوکردهفرضثابت

Mantissaيااعشار

radixياپايه

exponentياتوان

Page 44: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

اعشارینمايش

ترينارزشباآندرکهاستعددینرماليزهاعشاریعدد�.باشدصفرغيرMantissaمقدار

باقرارونبودهکردننرماليزهقابلصفرعددروشايندر�.ميشودساختهتوانواعشاریجزءمقداربازا0دادن

Page 45: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

45

شناور مميز وتفريق جمع

Page 46: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

46

شناور مميز وتفريق جمع

Page 47: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

47

شناور مميز ضرب

Page 48: ˘ˇˆ˙˝ ˛˚˜ !˚# · PDF file2’s complement ˇ2 ˘ / ... aShr AQ 00100 11001

48

شناور مميز تقسيم