X
تبلیغات
مقالات و جزوه های درسی رشته کامپیوتر - معماری کامپیوتر

طراحی پردازش

- طراحی

 اجزا

آنها چگونه در کنار هم قرار می گیرند

-  تجزیه بالا به پایین بخشهای مختلط

 

- ترکیب پایین به بالای بخشهای ساده

Free Image Hosting

 

......


ادامه مطلب
+ نوشته شده در دوشنبه پانزدهم مهر 1387ساعت 16:26 توسط میلاد |

فصل سوم
نمایش اعداد و محاسباتی کامپیوتر

 

چکیده

- مقدمه

 - نمایش عددی و مکمل دو

- طراحی واحد محاسبه ,منطق

 - ضرب و تقسیم صحیح

 - اعداد اعشاری

 

نمایش عددی

- آنچه پیچیده به نظر می رسد:

اعداد منفی را چگونه نمایش دهیم

دامنه (Range) اعداد چیست؟

.....


ادامه مطلب
+ نوشته شده در شنبه نوزدهم مرداد 1387ساعت 12:55 توسط میلاد |

انشعاب ها

- در بیشترپردازشگرها“شمارنده برنامه“(PC)آدرس دستورالعمل بعدی را نگه می دارد:واکشی ازM[(PC)]

- به طور عادی بعداز اینکه یک دستورالعمل تمام شدCPU  n تا به PC اضافه می کند n  تعداد بایت ها در دستورالعمل است

- انشعاب هابه یک برنامه اجازه می دهند واکشی کنند از مکانهای متفاوت

- انشعابها استفاده میشوند برای به کاربردن همه روند کنترلی فرمانهای زبان های سطح بالا ازقبیل if-then-else, for, switch, etc .

 

طبقه بندی انشعاب ها

- دو نوع اساسی از پرشها:

.....

 


ادامه مطلب
+ نوشته شده در یکشنبه بیست و سوم تیر 1387ساعت 18:10 توسط میلاد |

روشهای آدرس دهی

یک روش آدرس دهی ISA’S این سوال را جواب می دهد :عملوندها کجا میتوانند ذخیره شوند؟

ما دو نوع ذخیره سازی در MIPSداریم( وبیشتر ماشینهای دیگر) :ثباتها و حافظه اصلی.ما می توانیم به هریک از این دو یا هردو عملوندها برویم . یک تک عملوند می تواند با هر یک از این دو بیاید یک ثبات یا یک مکان حافظه ، و روشهای آدرس دهی راه های گوناگون تشخیص این مکانها را ارائه می کند.

 

دراین روشها یک مکان یا داده به طور مستقیم دریک دستورالعمل داده می شود:

Mode name

Example

Meaning

Register

mov $1, $2

R2 R1

Direct (or absolute)

mov $1, (40)

M[40] R1

Immediate

mov $1, #40

40 R1

 

روشهای آدرس دهی غیر مستقیم

در تولید یک آدرس حافظه یکی یا بیشترثباتها استفاده می شوند

....


ادامه مطلب
+ نوشته شده در شنبه هشتم تیر 1387ساعت 21:8 توسط میلاد |

فصل دوم
معماری مجموعه دستورالعملها

مراحل اجرای یک دستورالعمل

واکشی دستورالعمل: برداشت دستورالعمل بعدی از حافظه

کدبرداری از دستورالعمل: بررسی دستورالعمل برای مشخص شدن اینکه:

  چه عملی باید توسط دستورالعمل انجام گیرد (به عنوان مثال جمع)

  چه عملوندهایی مورد نیازند، و نتایج باید کجا قرار گیرند.

واکشی عملوندها: عملوندها برداشت می شوند.

اجرا: اجرای عملیات بر روی عملوندها

بازنویسی نتیجه: نوشتن نتیجه در محل مخصوص

دستورالعمل بعدی: تعیین اینکه دستورالعمل بعدی از کجا گرفته شود.

 

چه چیزی در یک ISA(معماری مجموعه دستورالعمل) مشخص می شود؟

کدبرداری از دستورالعمل: اعمال و عملوندها چگونه تعیین می گردند؟

واکشی عملوندها: عملوندها ممکن است کجا باشند؟ چه تعداد؟

اجرا: چه اعمالی می تواند انجام گیرد؟ چه نوع داده و چه اندازه هایی؟

بازنویسی نتایج: نتایج کجا نوشته می شوند؟ چه تعداد؟

دستورالعمل بعدی: دستورالعمل بعدی را چگونه می توان انتخاب نمود؟

 

یک ISA ساده:حافظه به حافظه

چه عملیاتی می تواند اجرا شود؟ عملیات پایه ریاضی (برای این لحظه)

چه نوع داده و چه اندازه ای؟ نوع داده صحیح 32 بیتی (integer 32)

عملوندها و نتایج کجا می توانند قرار گیرند؟ حافظه

چه تعداد عملوند و نتیجه؟ 2 عملوند، 1 نتیجه

اعمال و عملوندها چگونه مشخص می شوند؟

OP DEST,SRC1,SRC2  عمل مقصد,منبع1,منبع2

چگونه می توانیم دستورالعمل بعدی را انتخاب کنیم؟ بعدی به ترتیب

 

مدل حافظه

حافظه را به عنوان یک آرایه بزرگ از n عدد صحیح در نظر بگیرید، که بوسیله اندیس قابل دستیابی است.(حافظه با دستیابی تصادفی موسوم به ram)

به عنوان نمونه ، M[1] شامل مقدار 3 است. ما می توانیم در این مکانها نوشتن و خواندن را انجام دهیم. این مکانها صرفا در دسترس ماست. تمام مکانهای “مجرد” (از قبیل متغیرها در C) باید مکانهایی را در M تعیین کنند.

 

Address    Contents

14

13

99

.

.

.

0

 

0

 

1

 

2

.

.

.

N - 1

 


ترجمه کد ساده

 کد C مفروض

 

  A = B + C;

 

ما می توانیم تصمیم بگیریم که متغیر A مکان 100 ، B مکان 48 و C مکان 76 را

 

 اشغال می کند. کد بالا را به معادل کد اسمبلی آن تبدیل می کنیم:

 

 ADD M[100], M[48], M[76]

 

چگونه می توانیم عبارت زیر را تبدیل کنیم  

 A = (B + C) * (D + E);

 

استفاده از یک مکان موقتی

فرض کنید ما A را در 100، B را در 48 ، C را در 76، D را در 20 و E را

 در32 قرار می دهیم.

 

 اکنون یک مکان بدون استفاده را انتخاب می کنیم (مثلا 84)

 

 

 ADD M[100], M[48], M[76] # A = B + C

 ADD M[84], M[20], M[32] # temp = D + E

 MUL M[100], M[100], M[84] # A = A * temp

 

 

مشکلات در معماری حافظه به حافظه

حافظه اصلی خیلی کندتر از مدارات محاسباتی است

 - این مطلب از سال 1950 تا 2003 درست است!

خانه های زیادی برای مشخص نمودن آدرسهای حافظه گرفته می شوند.

معمولا نتایج یک یا دو دستورالعمل بعد مورد استفاده قرار می گیرند.

 

به خاطر داشته باشید: بخشهای اشتراکی را سریعتر نمائید!

راه حل: نتایج میانی یا موقتی را در حافظه های سریع و نزدیک به واحد محاسبه ذخیره نمائید.

 

ماشینهای مبتنی بر انباشتگر(Accumulator)

یک ماشین انباشتگر، یک بافر پرسرعت واحد (مانند یک مجموعه از D latchها یا فلیپ فلاپها ، هر کدام برای یک بیت داده) را نزدیک واحد محاسبه منطق نگهداری می کند.

در ساده ترین حالت، فقط یک عملوند می تواند مشخص گردد; انباشتگر به صورت مجازی به مفهوم “OP Operand” می باشد یعنی:

   acc. = acc. OP operand

 

 Example:

 LOAD M[48]   # Load B into acc.

 ADD M[76]  # Add C to acc. (now has B+C)

 STORE M[100] # Write acc. To A

 

 LOAD M[20]   # Load D into acc.

بارگذاری D در انباشتگر

 ADD M[32] # Add E to acc. (now has D+E)

جمع E با انباشتگر.(اکنون داریم D+E)

 STORE M[100] # Write acc. To A

نوشتن محتوای انباشتگر در A.

 LOAD M[48]  # Load B into acc.

بارگذاری Bدر انباشتگر.

 ADD M[76]  # Add C to acc. (now has B+C)

جمع نمودن Cبا انباشتگر.(اکنون داریم B+C)

 MUL M[100] # Multiply A to acc.

ضرب کردن A در انباشتگر.

 STORE M[100] # Write (B+C) * (D+E) to A

نوشتن نتیجه در A

 

ضعف ماشینهای مبتنی بر انباشتگر

هنوز نیازمند ذخیره سازی بسیاری مقادیر موقتی و میانی در حافظه می باشیم

 

در واقع انباشتگر فقط برای یک ترتیب از محاسبات که در آن نتیجه یکی، ورودی برای بعدی است، مفید می باشد.

 

ماشینهای مبتنی بر انباشتگر هنوز در کامپیوترهای اولیه معمول بودند

یک طراحی ساده، و بنابراین محبوب ، مخصوص برای

 - کامپیوترهای اولیه

 - میکروپروسسرهای اولیه (4004 ، 8008)

 - مدلهای Low-end (ارزان)

پیشنهادات برای ماشینهای مبتنی بر انباشتگر

اگر منابع سخت افزاری بیشتری در دسترس است، مکانهای ذخیره سازی سریع را در کنار انباشتگر قرار دهید:

ماشینهای مبتنی بر پشته

ماشینهای مبتنی بر ثبات

 - خاص منظوره

 - عام منظوره

 

ماشینهای مبتنی بر پشته

ایده: یک ستون از مکانهای ذخیره سازی سریع دارای یک بالا(top) و یک پایین (bottom)

یک دستورالعمل فقط از مقدار بالای پشته(top) قابلیت برداشت دارد، یا شاید دو یا سه مقدار به عنوان بالای پشته در نظر گرفته شوند.

ما می توانیم مقادیر جدید را در بالای پشته قرار دهیم (“push”) یا از بالای پشته برداریم (“pop”) اما فقط همین. ما نمی توانیم به مکانهایی در زیر پشته دسترسی داشته باشیم مگر اینکه هر چیز بالای آن را خارج کنیم.

  

Address Contents

14

3

99

.

.

.

0

Top

 

2nd from top

 

3rd from top

.

.

.


bottom


 

 

معماری مجموعه دستورالعمل ماشینهای مبتنی بر پشته

اعمال اصلی شامل:

بارگذاری: برداشت مقدار از حافظه و قرار دادن آن بر روی پشته

 

ذخیره سازی: برداشت مقدار از پشته و ذخیره آن در حافظه

 

حسابی: خارج کردن یک یا دو مقدار از پشته؛ قرار دادن نتیجه روی پشته

 

دونسخه ای (Dup): گرفتن مقدار از بالای پشته بدون حذف آن؛ قرار دادن یک کپی جدید از آن در روی پشته (چرا این عمل کاربردی است؟)

 

 

ماشین مبتنی بر پشته که  A=(B+C)*(D+E) را انجام می دهد

Image and video hosting by TinyPic

 

ماشین مبتنی بر پشته

Image and video hosting by TinyPic

کاربرد ماشینهای مبتنی برپشته

بسیاری از کامپیوترهای اولیه

واحد ممیز شناور در 8086 (تقریبا)

ماشین مجازی جاوا

 

ماشینهای مبتنی بر ثبات

ایده:به کار بردن مکانهای ذخیره سازی زیاد(”ثباتها“)نزدیک انباشتگر

 ثبات ها نام / شماره های مشخصی دارند که می توانند به جای حافظه استفاده می شوند

دستیابی نسبت به حافظه اصلی

  خیلی سریعتر است

(1-2 CPU cycles vs. ~ 100 CPU cycles on PC)_ 

 

ثبات ها نسبت به مکان های حافظه خیلی نزدیک ترند

MIPS_  32 تا ثبات 32 بیتی دارد

_ثبات های کمتر آدرس های کوچکتر وتعداد بیتهای کمتر برای نام گذاری آنها

_منابع استفاده کمتر است و باید با دقت ار آنها استفاده شود!

 

ثباتهای عام منظوره_خاص منظوره

یک ثبات خاص_ منظوره برای اهداف مشخص استفاده می شود و ممکن است عملیاتی را که استفاده می شود را محدودکند

طراحی آسانتر سخت افزار: ثبات را در جایی که دقیقا نیازاست قرار بده

به منظور استفاده موثر برای کامپایلر خیلی سخت تر است.

یک ثبات عام منظوره می تواند دربیشتر مسیرهای عملیاتی استفاده شود بنابراین مسیریابی خیلی مشکل است

 

ثبات های خاص منظوره The z_80 cpu 

هفت تا ثبات 8 بیتی: (می توانند جفت شوند A,B,C,D,E,H,LBC,DE,HL).

سه تا ثبات 16 بیتی:62 PC (شمارنده برنامه).

جمع ,تفریق, شیفت تنها با A می تواند انجام شود (شمارنده 8 بیتی ).

افزایش و کاهش می تواند با تمام ثبات ها وجفتهای ثبات انجام شود .

می توانند از حافظه  آدرس (HL)را واکشی کنند و در هر8بیت ثبات قرار دهند.

یک واکشی از آدرس(BC)یا(DE)تنها می تواند به Aبرود.

واکشی ها از (BC),(HL)و (IX) تعداد چرخه های متفاوتی می گیرد

چه کسی می خواهد برای این یک کامپایلر بنویسد؟

 

 

ثبات عام منظوره ماشین های (GPR)

 MIPS(وپردازشگرهای مشابه)32تا ثبات عمومی دارند (GPRs)هر32بیتlongهستند.همه می توانند نوشته یا خوانده شوند به جز ثبات صفر که همیشه صفراست ونمی تواند تغییر کند.زمان دستیابی به ثبات ثابت است.

 

Address Contents

0

3

99

.

.

.

14

$0

 

$1

 

$2

 

 

 

$31


ماشین GPR A=(B+C)*(D+E) راانجام می دهد

ADD  $1 M[48], M[76] #R1 = B + C

 

ADD $2 M[20], M[32] #R2 = D + E

 

MUL  M[100], $1, $2 #A = R1 * R2

 

اندازه های داده های متفاوت

چطورباید با اندازه های داده های متفاوت رفتارکنیم؟

انتخاب یک اندازه برای یک واحد ذخیره شده در یک آدرس تنها

 

ذخیره کردن داده بزرگ در یک مجموعه از مکانهای همجوارحافظه

ذخیره کردن داده کوچک در یک مکان:

use shift & mask ops

امروزه تقریبا همه ماشینها(شاملMIPS)دارای آدرس دهی بایتی

 “Byte_Adressable”هستند هر مکان آدرس دهی ،  در حافظه 8بیتی نگهداری می شود.

 

حافظهMIPS

روی یک ماشین قابل آدرس دهی بایتی ازقبیلMIPS اگرما بگوییم یک کلمه (32بیت) درآدرس80 ذخیره شده به این معنااست که مکانهای 80تا83را اشغال کرده.(کلمه بعدی از84 شروع می شود).

 

به طور نرمال بارگذاری وذخیره چندین بیت باید ”تنظیم“ شود.آدرس nبایتی بارگذاری یا ذخیره باید مضربی ازnباشد.برای نمونه نیم کلمه تنها در آدرسهای زوج ذخیره میشود.

 

MIPS اجازه بارگذاری شدن و ذخیره شدن برای استفاده مخصوص دستورالعمل ها را نمی دهند اما آنها ممکن است کندترشوند(بیشتر پردازشگرها این را برای همیشه اجازه نمی دهند!).

 

Byte-Order (“Endianness”)

برای یک داده چند بایتی کدام قسمت به کدام بایت می رود؟

اگر$1محتوی1000000(F4240H )و ما آن را در آدرس 80 ذخیره کنیم :

در یک ماشین “Big Endian” “Big End” به آدرس 80 می رود

در یک ماشین “Little Endian” از سوی دیگر است.

Image and video hosting by TinyPic

 

Big-Endian vs. Little-Endian

ماشینهای Big Endian:MIPS,SPARC,68000

ماشینهای :Little Endianبیشتر پردازشگر های intel,Alpha,Vax

سازگاری مشکلات انتقال چندین بایت داده بین ماشینهای Big Endian,Little Endian

 

 


 

+ نوشته شده در پنجشنبه سی ام خرداد 1387ساعت 20:36 توسط میلاد |

Intel 486™ DX CPU

Image and video hosting by TinyPic

Design 1986 – 1989

25 MHz, 33 MHz

1.2 M transistors

1.0 micron

5 stage pipeline

Unified 8 KByte code/data cache (write-through)

First IA-32 processor capable of executing 1 instruction per clock cycle

 

 

 

Pentium® Processor

Image and video hosting by TinyPic

Design 1989 – 1993

60 MHz, 66 MHz

3.1 M transistors

0.8 micron

5 stage pipeline

8 KByte instruction and 8 KByte data caches (writeback)

Branch predictor

Pipelined floating point

First superscalar IA-32: capable of executing 2 instructions per clock

 

 

 

Pentium® II Processor

Image and video hosting by TinyPic

Design 1995 – 1997

233 MHz, 266 MHz, 300 MHz

7.5 M transistors

0.35 micron

16 KByte L1I, 16 KByte L1D, 512 KByte off-die L2

First compaction of P6 microarchitecture

 

Pentium® III Processor (Katmai)

Image and video hosting by TinyPic

Introduced: 1999

450 MHz, 500 MHz, 533 MHz, 600MHz

9.5 M transistors

0.25 micron

16 KByte L1I, 16 KByte L1D, 512 KByte off-chip L2

Addition of SSE instructions.

 

SSE: Intel Streaming SIMD Extensions to the x86 ISA

Pentium® III Processor (Coppermine)

Image and video hosting by TinyPic

 

Introduced: 1999

500MHz … 1133MHz

28 M transistors

0.18 micron

16 KByte L1I, 16 KByte L1D, 256KByte on-chip L2

Integrate L2 cache on chip, It topped out at 1GHz.

 

Pentium® IV Processor

 

Image and video hosting by TinyPic

 

Introduced: 2000

1.3GHz … 2GHz … 3.4GHz

42M … 55M … 125 M transistors

0.18 … 0.13 … 0.09 micron

Latest one: 16 KByte L1I, 16 KByte L1D, 1M on-chip L2

Very high clock speed and SSE performance

 

Intel® Itanium® Processor

 

 Image and video hosting by TinyPic

Design 1993 – 2000

733 MHz, 800 MHz

25 M transistors

0.18 micron

3 levels of cache

16 KByte L1I, 16 KByte L1D

96 KByte L2

4 MByte off-die L3

Superscalar degree 6, in-order machine

First implementation of 64-bit Itanium architecture

 

Intel® Itanium 2® Processor 

Image and video hosting by TinyPic

Introduced: 2002

1GHz

221 M transistors

0.18 micron

3 levels of cache

32 KByte I&D L1

256 KByte L2

integrated 1.5MByte L3

 Based on EPIC architecture

 Enhanced Machine Check Architecture (MCA) with extensive Error Correcting Code (ECC)

 

Image and video hosting by TinyPic

 

Image and video hosting by TinyPic

 

Image and video hosting by TinyPic

 

Image and video hosting by TinyPic

 

یک بازبینی از جریان طراحی پردازنده

 

چگونه یک CPU طراحی می شود

 طراحی معماری مجموعه دستورالعمل (ISA design)

 

 طراحی در سطح وظایف (function-level) RTL design

 

 طراحی در سطح اجزاء ترکیب دهنده

 

 طراحی gate-level/switch-level

 

 طراحی در سطح مدار

 

 

روش کلاسیک طراحی مرحله ای معماری مجموعه دستورالعمل

 انتخاب یک الگوی ساخت A

 تعریف A برای تطبیق با:

 کارایی مورد تقاضای جدید و تکنولوژی جدید

 ارزیابی (شبیه سازی معماری مجموعه دستورالعمل)

 تکرار تا کسب رضایت

 

کل استراتژی شبیه سازی

1.شبیه ساز در سطح دستورالعمل (ISA): این روش برای ارزیابی کارایی در سطح مجموعه دستورالعمل برای شرح بیشتر مدل سازی استفاده می شود.

 

2.شبیه سازی در سطح سیستم: مدلهای این شبیه ساز جزئیات مربوط به محیط سیستم شامل برخی چیزها مانند وقفه ها و مدیریت حافظه را مدل سازی می کند.

  1. در سطح RTL: مدلهای این شبیه ساز تشریح RTL از طراحی است.

 

 

  1. در سطح سوئیچ همراه با تاخیرها: بیش از همه برای شبیه سازی مولفه های طراحی به کار می رود؛ بردارهای آزمایشی از مرحله RTL تولید شده اند.

 

  1. شبیه سازی در سطح مدار: برای مدل سازی جزئیات مسیر بحرانی به علاوه برای بازبینی مدارها در تغییرات دمایی، توان ارائه شده و غیره به کار می رود.

 

کارایی شبیه سازها

 

Image and video hosting by TinyPic

 

 

کارایی دستورالعمل بر چرخه (IPC)

 ایجاد مدل کارایی که:

- قابل انعطاف

- پذیرای پارامتر(Parameterized ) از طریق دستگیره

- دارای دقت ساعت در مقایسه با RTL برابر با 95% باشد

- به صورت قابل توجهی سریعتر از RTL

 مدلها مرکب از دو بخش هستند.

- شبیه ساز مجموعه دستورالعمل -> اجرا کننده محک(benchmark)

- شبیه ساز خط لوله -> “حسابدار” برای چرخه های ساعت

 سرعت های شبیه سازی

 اجرای محک ها(benchmark)، به روز رسانی ریز معماری بر طبق آن

 چرخۀ : کد -> شبیه ساز -> characterize -> وفق دادن(tune)

 

 

+ نوشته شده در چهارشنبه بیست و دوم خرداد 1387ساعت 23:58 توسط میلاد |

این درس در مورد چیست؟

 این درس در مورد ساختار وچگونگی طراحی کامپیوتر های دیجیتالی است . این مطلب معروف به “معماری کامپیوتر” است (که شامل معماری مجموعه دستورالعمل + سازماندهی سخت افزاری می باشد ) .

 

چرا سازماندهی کامپیوتر را بررسی می کنیم

شاید هیچکدام از شما در شرکتهای Intel و یا AMD کار نکرده اید

اما . . .

 - کامپیوترهای جاسازی شده

 - طراحی کامپایلر

 - حتی طراحان نرم افزار

 

 با محصولات این شرکتها در ارتباطند .

 

 

طرح كلي درس

بازنگری کلی

کارایی

مجموعه دستورالعملها

محاسبات کامپیوتر

ماشینهای تک چرخه ای

خط لوله ای

سیستمهای حافظه (RAM , Caches , Virtual Memory)

سوپر اسکالر (Superscalar/VLIW) و چند پردازنده ها

مباحث دیگر

 

 

سرفصل 1: رئوس مطالب در معماری و سازماندهی کامپیوتر

یافتن توانایی ارائه اطلاعات پایه از معماری و سازماندهی کامپیوتر در جریان طراحی کامل یک کامپیوتر

 

 

 دریافتن مسئولیتهای حرفه ای و اخلاقی یک مهندس کامپیوتر (مخصوصا معمار کامپیوتر)

 

“معماری” به چه معناست؟

“ فن یا دانش یا ساختمان ... فن یا پرداختن به طراحی و پیاده سازی ساختارها ... “

Webster 9th New College Dictionary

 

  “شامل نقشه ، طراحی ، ساخته و دکوراسیون چگونگی عملکرد “

 

American College Dictionary

“معماری کامپیوتر”

- کلمه ای که توسط Fred Brooks ابداع گردید.

“معماری کامپیوتر، یعنی کامپیوتر از دید کاربر”

 

 - Amdhal et al, (64)

 

“ما بوسیله معماری، ساختارواحدهای تشکیل دهنده یک سیستم کامپیوتری را هدفمند می نمائیم .”

 - Stone, H. (1987)

  

“معماری یک کامپیوتر عبارتست ازمحیط یا فضای بین ماشین و نرم افزار”

 - Andris Padges

  IBM 360/370 Architect

ساختار:  نظم و ترتیب دادن به بخشهای ثابت (نقشه)

 

سازماندهی:  فعل و انفعال پویای این بخشها و مدیریت آنها

 

پیاده سازی: طراحی کردن بلوک بخشهای دارای هدف خاص

 

ارزیابی کارایی:  مطالعه رفتار سیستم (decorative treatment)

معماری (از دیدگاه معمار)

پیاده سازی

سازماندهی: منظر سطح بالا

سیستم حافظه

ساختار گذرگاه (bus)

طراحی داخلی CPU

سخت افزار

طراحی منطقی

تکنولوژی بسته بندی(packaging)

 معماری مجموعه دستورالعمل

نکات مهم

به خاطر بسپارید: نکته اینست که بیاموزید چگونه معماری به مفهوم تکنولوژی موجود را ارزیابی کنید.

 

شناختن روش خیلی مهم است، اما پایان کار نیست.

به خاطر بسپارید: نکته اینست که بیاموزید چگونه معماری به مفهوم تکنولوژی موجود را ارزیابی کنید.

 

شناختن روش خیلی مهم است، اما پایان کار نیست.

 

مراحل در سازماندهی کامپیوتر

مفهوم ماشینهای چند سطحی

 

مفاهیم ماشین مجازی

انضباط در معماری

ساختار سخت افزار / نرم افزار

الگوریتم ها و پیاده سازی آنها

انتشار زبان

 

 

تصویر بزرگ

 هر دوی سخت افزار و نرم افزار مرکب از لایه های سلسله مراتبی هستند، با هر لایه سطح پائینتر جزئیاتی از دید سطح بالاتر مخفی می شوند. این اصل تجرید، روشی است که طراحان سخت افزار و طراحان نرم افزار از عهده پیچیدگی سیستم های کامپیوتری بر آمدند.

 یک محیط کلیدی بین لایه های انتزاعی معماری مجموعه دستورالعمل است: فضای بین سخت افزار و نرم افزار سطح پائین . این محیط مجازی توان بسیاری در پیاده سازی برای دگرگونی هزینه و کارایی در اجرای یک نرم افزار یکسان است. 

 John L. Hennessy 

 David A. Patterson

عوامل در معماری کامپیوتر

 

Image and video hosting by TinyPic

 

 

مجموعه دستورالعملها یک محیط بحرانی


Image and video hosting by TinyPic

مهندسی و معماری کامپیوتر کجاست؟

 

Image and video hosting by TinyPic

هماهنگی بسیاری از لایه های انتزاعی

 

 

تشریح: پنج جزء ترکیب شده کامپیوتر

Image and video hosting by TinyPic

 

تکنولوژی کامپیوتر: تغییری مهیج

پردازنده

هر یکسال و نیم، 2 برابر در سرعت(از سال 1985).
کارایی 100 برابر، در دهه گذشته

حافظه

ظرفیت DRAM: 2برابر در هر دو سال(از سال 96)
بهبود اندازه 64x در دهه گذشته

 دیسک

ظرفیت: 2برابر در هر سال(از سال 97)

بهبود اندازه 250x در دهه گذشته

 

گرایش تکنولوژی: پیچیدگی ریزپردازنده

Image and video hosting by TinyPic

 

2X transistors/Chip Every 1.5 to 2.0 years

2برابر ترانزیستور/تراشه هر 1.5 تا 2 سال موسوم به قانون مور”

 

 

 

به کجا می رویم؟

Image and video hosting by TinyPic

 

 

+ نوشته شده در شنبه هجدهم خرداد 1387ساعت 15:33 توسط میلاد |