ca2all2024 (1).pdf
Document Details
Uploaded by PreciseMagnolia
Tags
Full Transcript
كليت هنذست الحاسوب و الوعلوهاتيت واالتصاالث مدرش المقرر دٟ.ب٧ش هجبط مدخل إلى أنظمة الحاسب آلة فىن نيى مان The von newman machine اٟ ١شٜ٘خ ثشٟغخ اٛؾبعت ( ENIACا٠ٛشبٗ...
كليت هنذست الحاسوب و الوعلوهاتيت واالتصاالث مدرش المقرر دٟ.ب٧ش هجبط مدخل إلى أنظمة الحاسب آلة فىن نيى مان The von newman machine اٟ ١شٜ٘خ ثشٟغخ اٛؾبعت ( ENIACا٠ٛشبٗ ٚا٠ٛزؤٜخ ثبٵدخب ٩ ٙروذٯٚ اٛجشاٟظ) دُوذ ٟظ ٩ ٦ٰ٠٠خبطخ von Neumannا ٬ٛاثز٘بس ُ٘شح اٛجش٣بٟظ ا٠ٛخضُ٩. ١ٮ هب 1946 ٝثذأ ٩ Neumannصٟٸئُ ٦ٮ ٟو٨ذ ثش٣غز ١٪ثزظ ٰٞ٠اٛؾبعت ر ٩اٛجش٣بٟظ ا٠ٛخض ٩ ١اٛز٭ هشٍ ثؾبعت IAS ٓ٩ذ ر ٞا٣غبصُ ٥ٮ هب ٪٧٩ 1952 ٝٯوزجش ا٪٠٤ٛرط اٳة ٛغٰ٠ن اٛؾ٪اعٰت اٛزبٰٛخ ٟزوذدح اٳًشاع.ٯجٰ ٢اٛش٘ ٚا٣٪٘٠ٛبد اٳعبعٰخ ٜٛؾبعت IASأ ٩آٛخ ُٟ٪ٰ٣ ١٪ب٧٩ ١ٮ راٗشح سئٰغٰخ Main memoryرخض ١اٛزو٠ٰٜبد ٩ا٠ٛوـٰبد. .1 ٩ؽذح اٛؾغبة ٩ا٤٠ٛـْ ٓ (ALU) Arithmetic and Logic Unitبدسح ه٬ٜ .2 اٛوُ ٚ٠ٮ ا٤ٛلب ٝاٛض٤بئٮ. ٩ؽذح رؾ٘٩ control unit C.U ٞاٛزٮ رِغش اٛزو٠ٰٜبد ٩رئد٭ ا ٬ٛرِٰ٤ز٧ب. .3 ٩ؽذح دخInput unit ٚ .4 ٩ؽذح خشط Output unit .5 Structure of von Neumann machine ا ١عٰ٠ن ؽ٪اعٰت ٓ٩ز٤ب اٛؾبٛٮ – ٟن ثوغ اٷعزض٤بءاد ا٤ٛبدسح – رِ٣ ٖٜ٠ظ اٛجٰ٤خ اٛوبٟخ ٪٠٤ٛرط ٛ ٩ von Neumannزٖٛ روش ٍ هبدح ٟ.von Neumann machineن ٧زا عش٫ روذٯ ٚثٰ٤خ آٛخ ُٟ٪ٰ٣ ١٪ب von Neumann machine ١ثبدخبٙ ٣ ٝ٪٨ِٟبٓ ٚا٤ٛلب ٝا٠ٛشزشٕ ٠ٗ Common System Busب ٪٧ ٪ٟػؼ ُٮ اٛشُ٘ ٚٮ ٧زا ا٪٠٤ٛرط ٯز٘٣ ١٪لب ٝاٛؾبعت ٢ٟصٸس ٣٪ٟ٘بد أعبعٰخ ٩ :ؽذح ا٠ٛوبٛغخ ا٠ٛشٗضٯخ ٩( CPUاٛزٮ رؼٞ ٩ؽذح اٛؾغبة ٩ا٤٠ٛـْ ٩٩ؽذح اٛزؾ٘٩ ) ٞاٛزاٗشح ٩٩ؽذاد ادخبٙ /اخشاط ٩ ،رزظ٧ ٚز ٥ا٣٪٘٠ٛبد اٛضٸصخ ث٤بٟٓ ٚشزشٕ ٯز٘٢ٟ ١٪ صٸصخ أ٪٣ام ٢ٟا٪٤ٛآ٣: ٚبٓ ٚاٛو٤ب٩ٯ٣٩ ٢بٓ ٚا٠ٛوـٰبد ٣٩بٓٚ اٛزؾ٘ ٞاػبُخ ا٣ ٬ٛبٓ ٚاٛزٌزٯخ ثبٛـبٓخ ا٨٘ٛشثبئٰخ (ًٰش ٟجٰ٢ ثبٛش٘. )ٚ -وظيفة الحاسب ا ١ا٪ٛكِٰخ اٳعبعٰخ ٜٛؾبعت ٧ٮ رِٰ٤ز اٛجش٣بٟظ ٩اٛز٭ ٪٧ ٟغ٪٠هخ رو٠ٰٜبد ٟخض٣خ ُٮ اٛزاٗشح٘ٛ٩.ٮ ٯٔ ٝ٪ث٨ز٥ ا٪ٛكِٰخ ٯغت أ ١ٯ٘ ١٪اٛؾبعت ٓبدساً هٟ ٬ٜوبٛغخ ٩رخضٯ٢ ٚٔ٣٩ا٠ٛوـٰبد ٗ٩ز ٖٛاٛزؾ٘ ٞث٨ز ٥اٛوٰٜ٠بد ٩ر٤غْٰ اٛوٚ٠ ثٰٟ ٢خز َٜأعضاء اٛؾبعت. ٯٔ ٝ٪ا٠ٛوبٛظ ه٤ذ رِٰ٤ز اٛجش٣بٟظ ثغٜت fetchرو٠ٰٜبد ٧زا اٛجش٣بٟظ ٢ٟ اٛزاٗشح (رو٠ٰٜخ ر٨ٰٜب رو٠ٰٜخ) ٩ٯٔ ٝ٪ثزِٰ٤ز٧ب.ا ١هٰٜ٠خ اٛغٜت ٩اٛزِٰ٤ز رش٘ٸ١ د٩سح اٛزو٠ٰٜخ ٩اٛزٮ عٰغش٭ ششؽ٨ب ثبٛزِظٰ ٚه٤ذ ثؾش رظ٩ ٰٞ٠ر٤لٰ٩ ٞؽذح ا٠ٛوبٛغخ ا٠ٛشٗضٯخ .رجذأ د٩سح اٛزو٠ٰٜخ ثزؾ ٰٚ٠ه٪٤ا ١اٛزو٠ٰٜخ ُٮ ا٠ٛغغPC ٚ (هذاد اٛجش٣بٟظ) ٩اٛز٭ ٯ٤زٔ ٚا ٬ٛاٛغغٟ٩ MAR ٚن رِوٰ ٚاشبسح رؤٓ ٰٚ٧شاءح اٛزاٗشح رغٜت اٛزو٠ٰٜخ ا٠ٛؾذدح ثبٛو٪٤ا ١ا٠ٛزٗ٪س ا ٬ٛعغٟ ٚوـٰبد اٛزاٗشح ( MDRأ ٦٤ٟ٩ ) MBR ٩ا ٬ٛعغ ٚاٛزو٠ٰٜخ ٰٛ IRظبس ا ٬ٛرِغٰش٧ب ٩ه٤ذئزٍ ٯضٯذ ا٠ٛوبٛظ ٟؾز PC ٫٪ثٔ٠ذاس ٰٛ 1شٰش ا ٬ٛه٪٤ا ١اٛزو٠ٰٜخ اٛزبٰٛخ ٰٛظبس ا٬ٛ عٜج٨ب اٷ ارا أُخجش ا٠ٛوبٛظ ثٌٰش ر( ٖٛؽبٛخ اٛزِشٯن أ ٩اعزذهبء س٩رٰ ٢عضئٮ أ ٩رِٰ٤ز ٟٔبؿوخ . )...رجذأ ٟشؽٜخ اٛزِٰ٤ز ثغٜت(ٓشاءح) ا٠ٛوبٟٸد اٛزٮ رشزشٕ ُٮ اٛوٰٜ٠خ اٛزٮ ر٤ض ه٨ٰٜب اٛزو٠ٰٜخ ٢ٟاٛزاٗشح ص ٞرـجٰٔ٨ب ه٩ ٬ٜؽذح اٛؾغبة ٩ا٤٠ٛـْ ٛزِٰ٤ز اٛوٰٜ٠خ ا٠ٛـ٪ٜثخ ص ٞأخٰشاً ؽِق ا٤ٛبرظ ُٮ آ٪٠ٛن أ٩ اٛغغ ٚا٤٠ٛظ٪ص هُ ٦ٰٜٮ اٛزو٠ٰٜخ .ٯِ٤ز ا٠ٛوبٛظ اٛوٰٜ٠خ ا٠ٛـ٪ٜثخ ٩اٛزٮ رزؼ٨٤٠ب اٛزو٠ٰٜخ ٩رظ٧ َ٤ز ٥اٛوٰٜ٠بد ػُ ٢٠ئبد أسثن : هٰٜ٠خ ٟوبٛظ – راٗشح :ٯ٠ٜٛ ٢٘٠وـٰبد ث٪٠عت ٧ز ٥اٛوٰٜ٠خ أ ١ر٤زٔ ٢ٟ ٚاٛزاٗشح ا ٬ٛا٠ٛوبٛظ ٩ثبٛو٘ظ . هٰٜ٠خ ٟوبٛظ I/O-ٯ٠ٜٛ ٢٘٠وـٰبد ث٪٠عت ٧ز ٥اٛوٰٜ٠خ أ١ ر٤زٔ٩ ٢ٟ ٚؽذح I/Oا ٬ٛا٠ٛوبٛظ ٩ثبٛو٘ظ . ٟوبٛغخ ٟوـٰبد :ٯ٤غض ا٠ٛوبٛظ هٰٜ٠خ ؽغبثٰخ أ٤ٟ ٩ـٰٔخ . رؾٟ٘ : ٞضب ٙر ٖٛهٰٜ٠خ رئد٭ ٛزٌٰٰش رغٜغ ٚعٜت اٛزو٠ٰٜبد ِ٣زشع أٛ ١ؾبعت رو٠ٰٜبد ٯ ٢٘٠ؽِل٨ب ُٮ ٗ٠ٜخ ٩اؽذح ُٮ اٛزاٗشح ٩أ ١ؿ ٙ٪ا٠ٜ٘ٛخ ٩ ، 16 bitثِشع أٟ ١ؾزPC ٫٪ 300 ٪٧أ٭ أ ١ا٠ٛوبٛظ عٰٔ ٝ٪ثغٜت اٛزو٠ٰٜبد اثزذاءً ٢ٟ آ٪٠ٛن . 300ثِشع أ ١اٛزو٠ٰٜخ رزؼ ٢٠ؽٔٸً ٛزشٰٟض اٛوٰٜ٠خ ٩ؽٔٸً ٛو٣٪٤خ ٟوب ٟٚٯشزشٕ ُٮ اٛوٰٜ٠خ ٩أ ١ا٠ٛوب ٟٚاٛضب٣ٮ ٪ٟع٪د ُٮ عغٟ( AC ٚشاٗ٠ٗ. )ٞب ِ٣زشع أ ١اٳهذاد ر٠ضٚ ٗـ٪ٯٜخ ٩اشبسح ٣.جٰ٠ُٰ ٢ب ٯٜٮ طٌٰخ رو٠ٰٜخ اٛؾبعت اِ٠ٛزشػخ ٗ٩ز ٖٛطٌٰخ اٛوذد اٛظؾٰؼ ا٠ٛئشش ٩عغٸد ٜٛزو٠ٰٜبد اٛوٰٜ٠خ ا٠ٛوبٛظ اػبُخ ٛزشٰٟض Add،Store،Loadاٛزٮ عزِ٤ز . Integer format هثال Internal CPU registers Program Counter (PC) = Address of instruction Instruction Register (IR) = Instruction being executed Accumulator (AC) = Temporary storage Partial list of opcodes 0001 = Load AC from Memory 0101 = Add to AC from Memory 0010 = Store AC to Memory هثال ٸ ٠ٛشؽٜزٮ اٛغٜت ٩اٛزِٰ٤ز ٚ٘ٛرو٠ٰٜخ ؽٰش .ٯجٰ ٢اٛش٘ ٚر٠ضٰ ً اعزخذٜٛ ٝزوجٰش هٟ ٢ؾز٪ٯبد اٛزاٗشح ٩عغٸد ا٠ٛوبٛظ اٛزشٰٟض اٛغذ هشش٭ ( ٩. )hexadecimalث٤بء ه ٬ٜرُ ٖٛبٟ ١ؾز٫٪ آ٪٠ٛن ٪٧٩ 300ا٠ٰٔٛخ 1940HEXٯخض ١اٛزو٠ٰٜخ Load 940اٛزٮ رو٤ٮ رؾ ٰٚ٠ا٠ٛشاٗ ٞث٠ؾز ٫٪آ٪٠ٛن 940 ؽٰش اُزشػ٤ب ٟغجٔبً أ ١رشٰٟض اٛوٰٜ٠خ ٨ٛز ٥اٛزو٠ٰٜخ ٪٧ ٘٧٩ 00012=1HEXزا رِ ٞ٨ثٰٔخ اٛزو٠ٰٜبد ٠ُ ،ؾز ٫٪آ٪٠ٛن 5941HEX ٪٧301أ٭ اٛزو٠ٰٜخ Add 941أ٭ اع٠ن ٟؾز٫٪ آ٪٠ٛن 941اٟ ٬ٛؾز ٫٪ا٠ٛشاٗ٩ ٞاؽِق ا٤ٛبرظ ُٮ ا٠ٛشاٗ. ٞ مجمىعة تعليما ت الحاسب وصيغها : -المقاطعات Interrupts رئ ٢ٟعٰ٠ن اٛؾ٪اعٰت ُٮ ا٪ٛآن آٰٛبد رغ٠ؼ ٪ٜٛؽذاد اٳخش، I/O( ٫ اٛزاٗشح) ثٔ٠بؿوخ اٛزِٰ٤ز اٛـجٰوٮ ٜٛجش٣بٟظ ٓ ٢ٟج ٚا٠ٛوبٛظ .ا ١اٳ٪٣ام اٳٗضش شٰ٪هب ٔ٠ٜٛبؿوبد ؽغت ٟظذس٧ب ٧ٮ: ٟٔبؿوخ اٛجش٣بٟظ :ر٤زظ ثغجت ثوغ اٛؾبٷد ا٤ٛبرغخ ه ٢رِٰ٤ز رو٠ٰٜخ ٟب ُٮ اٛجش٣بٟظ ٟ ،ض ٚؽبٛخ ٩ع٪د ؿِؼ ؽغبثٮ أ ٩ؽبٛخ اٛزٔغٰ ٞه٬ٜ طِش أ ٩ه٤ذ ٟؾبٛ٩خ رِٰ٤ز رو٠ٰٜخ آٛخ ًٰش طؾٰؾخ ٗ٩ز ٖٛه٤ذ ٟؾبٛ٩خ ِ٣بر ا٠ٛغزخذ ٝا ٬ٛخبسط ُؼبء اٛزاٗشح ا٠ٛغ٪٠ػ ث. ٦ ٟٔبؿوخ ٣برغخ ه ٢ا٠ٛئٓذ ػ ٢٠ا٠ٛوبٛظ ٧٩ ،ز ٥رزٰؼ ٤ٛلب ٝاٛزشٌٰٚ أٰٛب ٝث٪كبئَ ٟؾذدح ؽغت ٓ٪اهذ ٟغجٔخ . ٟٔبؿوخ ٣برغخ ه٩ ٢ؽذاد : I/Oرشٰش ا ٬ٛا٣غبص أ ٩ؿٜت اٛجذء ثوٰٜ٠خ دخ/ ٚخشط أ ٩رشٰش ا ٬ٛؽذ٩س خـؤ ٟب . ٟٔبؿوخ ٣برغخ هُ ٢شُ ٚٮ اٛوزبد. ٟخـؾ اٛؾبٛخ ٛذ٩سح اٛزو٠ٰٜخ ٩ٯزؼ ٢٠د٩سح ٟٔبؿوخ رؼبٍ د٩سح ٟٔبؿوخ ا ٬ٛد٩سح اٛزو٠ٰٜخ ٗ٠ب ٯ٪ػؼ اٛش٘.ٚ ُِٮ د٩سح أ٠ٛبؿوخ ٯخزجش ا٠ٛوبٛظ ٩ع٪د اشبسح ٟٔبؿوخ ٩ه٤ذ اٗزشبٍ ٩ع٪د اشبسح ٟٔبؿوخ ٯٔ ٝ٪ا٠ٛوبٛظ ث٠بٯٜٮ : ٯو ْٜرِٰ٤ز اٛجش٣بٟظ اٛشا٩ ٢٧ٯؾِق ه٪٤ا ١اٛزو٠ٰٜخ اٛزبٰٛخ ٩أٯخ ٟوٟ٪ٜبد ٷصٟخ ٷعزئ٤بٍ ثش٣بٟظ ثوذ رِٰ٤ز ؿٜت أ٠ٛبؿوخ. ٯؾ ٚ٠هذاد اٛجش٣بٟظ ثو٪٤ا ١اٛجذاٯخ ٛجش٣بٟظ خذٟخ أ٠ٛبؿوخ .Interrupt handler اٛزـ٪ٯشاد اٛشئٰغٰخ ٤ٟز ٩ٷدح اٛؾبع٪ة ٝ٪٨ِٟاٛوبئٜخ :The Family Concept ٓذ٧ ٝزا آ ٢ٟ ٝ٪٨ِ٠ٛج ٚششٗخ ٢ٟ IBMخٸ ٙؽبع٪ث٨ب System/360هبٝ ٓ ٩ ،1964ذ رجوز ٦ششٗخ DECثؾبع٪ث٨ب .PDP-8 ٯِظ ٝ٪٨ِٟ ٚاٛوبئٜخ ثٰ٤ب ١اٱٛخ ه ٢ر٤غٰض٧ب. ٔٛذ ٓذٟذ ٟغ٪٠هخ ٢ٟاٛؾ٪اعٰت اٛزٮ رزِب٩د ُٮ ٣غت اٛغوش ا ٬ٛاٳداء ٩ ،رٔذٝ اٛجٰ٤ب ١رار ٦ا ٬ٛا٠ٛغزخذ.ٝ ٩ٯو٪د اٛخٸٍ ُٮ ٣غت اٛغوش ا ٬ٛاٳداء ،ا ٬ٛاٛز٤غٰضاد ا٠ٛخزِٜخ ِ٤ٛظ اٛجٰ٤ب.١ ٩ؽذح اٛزؾ٘ ٞا٠ٛجشٟغخ طٌشٯب :Microprogrammed Control Unit اٛزٮ أٓزشؽذ ٓ ٢ٟج Wilkes ٚهب ٩ ،1951 ٝأدخٜز٨ب ششٗخ ُ IBMٮ اٛغٜغٜخ S/360هب.1960 ٝ رغ ٚ٨اٛجشٟغخ اٛظٌشٯخ ٠٨ٟخ رظ٩ ٰٞ٠ؽذح اٛزؾ٘ ٩ ٞر٤غٰض٧ب ٩رذهٝ٪٨ِٟ ٞ اٛوبئٜخ. اٛزاٗشح اٛخبثٰخ :Cache Memory ٓ ٩ذ أدخٜذ رغبسٯب أٟ ٙ٩شح ُٮ اٛغٜغٜخ S/360ؿشاص 85هب.1968 ٝ ا ١ادخب٧ ٙزا اٛو٤ظش ُٮ رشارجٰخ اٛزاٗشح ٯؾغّ ٢اٳداء ثش٘ٗ ٚجٰش. اٛز٪اسد :Pipelining ٩ ٪٧ ٩عٰٜخ ٵدخب ٙا٠ٛوبٛغخ ا٠ٛز٪اصٯخ ا ٬ٛاٛـجٰوخ اٛززبثوٰخ أعبعب ٛجش٣بٟظ ٟ٘ز٪ة ثٌٜخ اٱٛخٟ ٩.ضب ٙه ٬ٜر ٪٧ ٖٛر٪اسد اٛزو٠ٰٜبد ٩ا٠ٛوبٛغخ ا٠ٛزغٰ٨خ. ا٠ٛوبٛغبد ا٠ٛزوذدح :Multiple Processors رٌـٮ ٧ز ٥اِٛئخ هذدا ٢ٟاٛز٤لٰ٠بد ٩اٳ٧ذاٍ ا٠ٛخزِٜخ. ؽ٪اعٰت ٟغ٪٠هخ اٛزو٠ٰٜبد ا٠ٛخِؼخ RISC ٯ ٢٘٠أ٣ ١ؼَٰ اٟ ٬ٛب عجْ اثذاهب آخش ٪٧ ٩ثٰ٤ب ١اٛؾبع٪ة ا٪٠ٛعض اٛزو٠ٰٜبد .RISC ا ١اٛجٰ٤ب RISC ١ٯوزجش خش٩ط عزس٭ ٢ٟاٛز٪ع ٦اٛزبسٯخٮ ُٮ ثٰ٤ب ١اٛؾبع٪ة. ٩ٯجشص رؾ٧ ٰٜٚزا اٛجٰ٤ب ١اٛوذٯذ ٢ٟأٛؼبٯب ا٨ٛبٟخ ُٮ ر٤لٰ ٞاٛؾبع٪ة ٩ثٰ٤ب.٦٣ َٰٗ رـ٪سد اٛؾ٪اعٰت ثبرغب ٥ؽ٪اعٰت راد ٟغ٪٠هخ رو٠ٰٜبد ٟؤذح CISC روذ ٌٛبد اٛجشٟغخ ٢ٟأٗضش ا٠ٛلب٧ش ا٠ٛوجشح ه ٢اٛزـ٪س ا٠ٛزشاُْ ٟن اٛؾ٪اعٰت. ٟ ٩ن رُ ٖٛبِٜٗ ١خ اٛوزبد ا٠ٛبد٭ ٓذ ا٣خِؼذ ،اٷ اِٜ٘ٛخ ا٤ٛغجٰخ ٜٛجشٟغٰبد ٓذ اسرِوذ ٩.رشاُْ رٟ ٖٛن ٔ٣ض ٟضُ ٢ٟٮ ا٠ٛجشٟغٰ٧ ٩ ٢زا ٟب أد ٫ا ٬ٛصٯبدح ِٜٗخ اٛجشٟغٰبد صٯبدح ٟـٜٔخٛ ٩.زاُ ،ب ١اِٜ٘ٛخ اٛشئٰغٰخ ُٮ اٛذ٩سح اٛؾٰبرٰخ ٤ٛلبٝ ٟب٧ ،ٮ اٛجشٟغٰبد ٰٛ ٩غذ اٛوزبد ا٠ٛبد٭٣.ؼَٰ ا ٬ٛاِٜ٘ٛخ ٩ا ٬ٛاٛؤجبد ه٤ظش هذ ٝا٪٠ٛصٰٓ٪خ ٪٨ُ.أٟش شبئن ُٮ اٛجشاٟظ ع٪اء أٗب٣ذ ٣ل ٞرشٌٰ ٚأٝ ثشاٟظ رـجٰٰٔخ ٩رجٔ ٬هشػخ ٛوضشاد عذٯذح ثوذ ع٪٤اد ٢ٟاٛو.ٚ٠ ٩اع ٦اٛجبؽض ٩ ١٪اٛظ٤بهٰ ١٪ر ٖٛثزـ٪ٯش ٌٛبد ثشٟغخ هبٰٛخ ا٠ٛغز ٫٪أٓ٩ ٫٪ أهٔذ. ٛٴعَٔٛ ،ذ ٣زظ ه٧ ٢زا اٛؾٟ ٚشٜ٘خ أخش ،٫هشُذ ثبع ٞاٛضٌشح اٛذٷٰٛخ ٧ ٩ ، Semantic Gapٮ اٷخزٸٍ ثٰ ٢اٛوٰٜ٠بد أ٠ٛذٟخ ُٮ اٌٜٛبد هبٰٛخ ا٠ٛغز ٩ HLL ٫٪ر ٖٜأ٠ٛذٟخ ُٮ ثٰ٤ب ١اٛؾبع٪ة. ٢ٟهٸٟبد ٧ز ٥اٛضٌشح هذِٗ ٝبءح اٛزِٰ٤ز ٩ ،صٯبدح ؽغ ٞثش٣بٟظ اٱٛخ ٩ ،رؤٰذ ا٠ٛظشٍّ ٔٛ.Compilerذ اعزغبة ا٠ٛظٛ ١٪٠٠ز ٖٛثـشػ ثٰ٤ب ١ٯ٨ذٍ ا ٬ٛسدٝ ٧ز ٥اٛضٌشح.رزؼٟ٪ٟٔ ٢٠بر ٦اٛشئٰغٰخ ٟغ٪٠هبد رو٠ٰٜبد ٗجٰشح ٩اعزخذا ٝاٛوذٯذ ٢ٟأ٠٣بؽ اٛو٣٪٤خ ٩ر٤غٰض هجبساد ٟخزِٜخ ٌٜٛبد اٛوبٰٛخ ا٠ٛغز.٫٪ ٟ ٩ضب ٙه ٬ٜر :ٖٛرِٰ٤ز رو٠ٰٜخ اٱٛخ ) )ُ CASE((switchٮ اٛؾبع٪ة . VAX ر٨ذٍ ٟغ٪٠هخ اٛزو٠ٰٜبد ا٠ٛؤذح ٧ز ٥اٟ ٬ٛب ٯٜٮ: -عو٠٨ٟ ٚخ ٗزبثخ ا٠ٛظشٍّ Compilerأع.ٚ٨ -سُن ِٗبءح اٛزِٰ٤ز ٳٟٔ ١بؿن اٛجش٣بٟظ اٛؾب٩ٯخ ه ٬ٜهٰٜ٠بد ٟؤذح ٯ ٢٘٠أ١ رِ٤ز ثشٟبص طٌش٭ .Microcode -رٔذٯ ٞدهٌٜٛ ٞبد هبٰٛخ ا٠ٛغز ٫٪اٳٗضش رؤٰذا ٩رـ٪سا. ٰٟضاد رِٰ٤ز اٛزو٠ٰٜبد Instruction Execution Characteristics ٔٛذ أعشٯذ دساعبد ٟز٪٤هخ ٛزؾ ٰٜٚع ٕ٪ٜاٛجشاٟظ اٛوبٰٛخ ا٠ٛغز.HLL ٫٪ ٢ٟؽٰش اٛوٰٜ٠بد ا٤٠ٛغضح ٩اٛو٪ا٩ ٟٚرزبثن اٛزِٰ٤ز: -اٛوٰٜ٠بد ا٤٠ٛغضح Operations Performed ٧ ٩ٮ رؾذد ا٪ٛكبئَ اٛزٮ ٯغت ه ٬ٜا٠ٛوبٛظ ا٣غبص٧ب ٗ٠ب رؾذد ؿشٯٔخ رِبهٟ ٦ٜن اٛزاٗشح. -اٛو٪ا ٟٚا٠ٛغزوٜ٠خ Operands Used ا ١أ٪٣ام اٛو٪ا ٩ ٟٚر٘شس اعزو٠ب٨ٛب رؾذدا ١ر٤لٰ ٞاٛزاٗشح اٛٸصٟخ ٛزخضٯ٨٤ب ٩أ٠٣بؽ اٛو٣٪٤خ اٛؼش٩سٯخ ِ٤ٜٛبر ا٨ٰٛب. -رزبثن اٛزِٰ٤ز Execution Sequencing ٩ٯؾذد ر٤لٰ ٞاٛزؾ٘ ٩ ٞاٛز٪اسد. اٛوٰٜ٠بد Operations ر ٢٠ٰ٨ه٧ ٬ٜز ٥اٛجشاٟظ هجبساد اٷع٤بد ٧ ٩زا ٟب ٯ٪ؽٮ ثؤ ١اٛؾشٗخ اٛجغٰـخ ٠ٜٛوـٰبد ٧ٮ راد أٰ٠٧خ ٗجٰشح ٩ ،أٯؼب رِ ّ٪اٛوجبساد اٛششؿٰخ (.)If, Loopر٤غّض ٧ز ٥اٛوجبساد ثٌٜخ اٱٛخ ٢ٟ خٸ ٙرو٠ٰٜخ ٟٔبس٣خ ٩رو٠ٰٜخ رِشٯن ٩ ،ا٧ ١زا ٯ٪ؽٮ ثؤٰ٠٧خ اٛزؾ٘ ٞاٛززبثوٮ ٠ٛغ٪٠هخ اٛزو٠ٰٜبد. ا ١اعشاء اعزذهبء /ه٪دح ٪٧اٛوٰٜ٠خ اٳٗضش اعز٨ٸٗب ٜٛضُ ٢ٟٮ ثشاٟظ ٪٠٣رعٰخ ٟ٘ز٪ثخ ثٌٜخ هبٰٛخ ا٠ٛغز.٫٪ اٛو٪اOperands ٟٚ رجٰ ٢ا٤ٛزبئظ ،ا٠ٛز٪أُخ ثٰ ٢ثشاٟظ ٩ Pascalثشاٟظ ،Cثؤً ١بٛجٰخ ا٠ٛذا٧ ٰٜٚٛٮ ٟزٌٰشاد عٰ٠ٜخ ثغٰـخ٠ٗ.ب أ ١أٗضش ٢ٟ 80% ٢ٟاٛغٰ٠ٜبد شٟ ٚ٠زٌٰشاد ٟؾٰٜخ (ثب٤ٛغجخ ٛٶعشاءاد). ٣غز٤زظ ثؤ ٢ٟ ١اٛؼش٩س٭ أ ١ٯغ٠ؼ اٛجٰ٤ب ١ثبِ٤ٛبر اٛغشٯن ا ٬ٛاٛوب ٟٚٳ٧ ١ز ٥اٛوٰٜ٠خ ر٤غض ه٬ٜ ٣ؾٟ ٪ز٘شس ٩.رجٰ ٢اٛذساعخ ثؤ ١ا ١٪٘٠ٛاٳ ٙ٩ا٠ٛششؼ ٛٸعز٠ضب ٪٧ ٙآٰٛخ اٛزخضٯ ٩ ٢اِ٤ٛبر ا٬ٛ ا٠ٛزٌٰشاد اٛغٰ٠ٜخ ا٠ٛؾٰٜخ. :اعزخذا ٝهذد ٗجٰش ٢ٟاٛغغٸد اٛوبٟخ ُٮ ا٠ٛوبٛظ أ ٩اعزخذا َٜٟ ٝعغٸد اٛؾٚ اعزذهبءاد اٵعشاء Procedure Calls ا ١اعزذهبءاد اٵعشاء ٩اٛو٪دح ٯش٘ ٚعب٣ت ٧بٜٛ ٝجشاٟظ ا٘٠ٛز٪ثخ ثٌٜبد هبٰٛخ ا٠ٛغز.HLL ٫٪ ٩ا٨٣ب اٛوٰٜ٠بد اٳٗضش اعز٨ٸٗب ٓ٪ٜٛذ ُٮ اٛجشاٟظ ا٘٠ٛز٪ثخ ثٌٜبد هبٰٛخ ا٠ٛغز٫٪ ا٠ٛظشُخٛ.زا ٢ٟاِٰ٠ٛذ دساعخ ؿشائْ ر٤غٰض ٧ز ٥اٛوٰٜ٠بد ر٤غٰضا ُوبٷ٤٧ ٩.بٕ ٟل٨شاٟ ١ئصشا:١ -هذد ا٪٠ٛعـبد ٩ا٠ٛزٌٰشاد اٛزٮ ٯزوبٟ ٟٚو٨ب اٵعشاء. -ه ْ٠اٛزذاخٸد. ا٤ٛزبئظ Implication ٯ٪عذ صٸس ه٤بطش رٰ٠ض هٟ٪٠ب ث ٬٤اٛؾ٪اعٰت ا٪٠ٛعضح اٛزو٠ٰٜبد :RISC -1اعزو٠ب ٙهذد ٗجٰش ٢ٟاٛغغٸد أ ٩اعزو٠بٟ ٙظشٍّ ٷعز٠ضب ٙاعزخذاٝ اٛغغٸد. -2ٯغت اٷ٣زجب ٥ثو٤بٯخ ا٪٤ٓ ٬ٛاد ر٪اسد اٛزو٠ٰٜبد. -3ٯ٤ظؼ ث٠غ٪٠هخ رو٠ٰٜبد ٟجغـخ (٪ٟعضح ). ممُساخ تىً مجمىعح التعلُماخ المىجسج Characteristics of Reduced Instruction Set Architectures ه ٬ٜاٛشً ٢ٟ ٞاهز٠بد ٟٔبسثبد ٟخزِٜخ ٛجٟ ٬٤غ٪٠هخ اٛزو٠ٰٜبد ا٪٠ٛعضحُ ،ب٤٧ ١بٕ ثوغ اٰ٠ٛضاد ا٠ٛشزشٗخ ثٰ ٢عٰ٠ن ٧ز ٥اٛج:٬٤ -رو٠ٰٜخ ٩اؽذح ُٮ ٗ ٚد٩سح. -هٰٜ٠بد ٢ٟعغ ٚا ٬ٛعغ.ٚ -أ٠٣بؽ ه٣٪٤خ ثغٰـخ. -طٌٰخ ثغٰـخ ٜٛزو٠ٰٜخ. ا ١اٰ٠ٛضح اٳ ٬ٛ٩ا٠ٛزٗ٪سح ٧ٮ ر٤غٰض رو٠ٰٜخ ٩اؽذح ٛٲٛخ ُٮ ٗ ٚد٩سح آٛخ. روشٍ د٩سح اٱٛخ Machine Cycleثؤ٨٣ب اٛض ٢ٟاٛز٭ رغزٌشٓ ٦اٱٛخ ٛزغٜت هب٢ٟ ٢ٰٜٟ اٛغغٸد ٩ ،ر٤غض هٰٜ٠خ ٢ٟهٰٜ٠بد ٩ؽذح اٛؾغبة ٩ا٤٠ٛـْ ٩ ، ALUرخض ١ا٤ٛزٰغخ ُٮ عغ.ٚ ٛزا ،ٯغت أٷ ر٘ ١٪رو٠ٰٜبد اٛؾبع٪ة RISCأهٔذ ٢ٟاٛزو٠ٰٜبد اٛظٌشٯخ ُٮ اٛؾبع٪ة CISC ٩أ ١رِ٤ز رٔشٯجب ثِ٤ظ اٛغشهخ. ٤٧بٕ ٰٟضح صبٰ٣خ ٧٩ٮ أٟ ١ول ٞاٛوٰٜ٠بد ٯغت أ ١ر٘« ١٪عغ ٚا ٬ٛعغٚ ٩ ،»Register-to-Registerأ ١رزبػ هٰٜ٠زب ١ثغٰـزب٠٧٩ ،١ب اٛزؾٰٚ٠ ٩ ،LOADاٛزخضٯِ٤ٜٛ ،STORE ٢بر ٜٛزاٗشح ٩.رغ٠ؼ ٧ز ٥اٰ٠ٛضح ثزجغٰؾ ٟغ٪٠هخ اٛزو٠ٰٜبد ٢ٟ ٩ص٩ ٞؽذح اٛزؾُ٘.ٞو ٬ٜعجٰ ٚا٠ٛضب ،ٙٯ ٢٘٠أ١ رزؼ ٢٠رو٠ٰٜخ RISCرو٠ٰٜخ ٩ ADDاؽذح أ ٩اصُٔ ٢ٰ٤ؾ (ٟضٸ ،ع٠ن أهذاد طؾٰؾخ ٩ ،ع٠ن ٟن ؽُ ) ٚ٠ٮ ؽٰ ٢ٯزؼ ٢٠اٛؾبع٪ة 25 VAXرو٠ٰٜخ ٟ ADDخزِٜخٛ ٩.زُ ٖٛبئذح أخش٧ ٩ ٫ٮ أٟ ١ض٧ ٚزا اٛجٰ٤ب ١ٯذُن ا٬ٛ اعز٠ضب ٙاعزو٠ب ٙاٛغغٸد ،ثٌٰخ اٛؾِبف ه ٬ٜاٛو٪ا ٟٚا٘ٛضٰشح اٷعزخذاُ ٝٮ ٩ؽذح اٛزخضٯ ٢اٛوبٰٛخ اٛغشهخ. ٤٧٩بٕ ٰٟضح صبٛضخ ٧ ٩ٮ اعزو٠ب ٙأ٠٣بؽ ه٣٪٤خ ثغٰـخ.رغزو ٚ٠عٰ٠ن رو٠ٰٜبد RISCرٔشٯجب ٠٣ؾ اٛو٣٪٤خ اٛجغٰـخ ثبٛغغ ٩.ٚٯ ٢٘٠أ ١رزؼ ٢٠ر ٖٜاٛزو٠ٰٜبد ثوغ اٳ٠٣بؽ اٵػبُٰخ ٗبٵصاؽخ ٩اٛو٣٪٤خ ا٤٠ٛغ٪ثخ ا ٬ٛهذاد اٛجش٣بٟظ٩. ا٨ٛذٍ ٪٧رجغٰؾ ٟغ٪٠هخ اٛزو٠ٰٜبد ٩٩ؽذح اٛزؾ٘.ٞ ٩اٰ٠ٛضح اٳخٰشح ٧ٮ اعزو٠ب ٙطٰي رو٠ٰٜبد ثغٰـخ ٩.ٯز ٞاعزو٠ب ٙهٟ٪٠ب طٌٰخ ٩اؽذح ُٔؾ أ ٩طٰي ٰٜٜٓخ ٩.ٯضت ؿ ٙ٪اٛزو٠ٰٜخ ٩ٯؾذد ث٘٠ٜخ ٩اؽذح٩. رضجذ ٪ٟآن اٛؾُٔ ٙ٪ٮ اٛزو٠ٰٜخ ٩ ،خظ٪طب سٟبص اٛوٰٜ٠خ.ا ١اٛظٰي ا٠ٛجغـخ رغ ٚ٨ثٰ٤خ ٩ؽذح اٛزؾ٘.ٞ تىارد التعلُماخ Instruction Pipelining ٯغ٠ؼ رـ٪س ا٤ٛل ٞاٛؾبع٪ثٰخ ثزؾْٰٔ أداء أه ٬ٜثبٷعزِبدح ٢ٟرؾغ ٢اٛزٔب٣خ، ٗبعزخذا ٝداساد أعشم.اػبُخ ا ٬ٛر ،ٖٛٯٜٛ ٢٘٠زؾغٰ٤بد اٛز٤لٰٰ٠خ ُٮ ٩ؽذح ا٠ٛوبٛغخ ا٠ٛشٗضٯخ CPUروضٯض اٳداءٔٛ ٩.ذ سأٯ٤ب ثوغ اٳٟضٜخ ه ٬ٜرٖٛ عبثٔبٗ ،بعزخذا ٝعغٸد ٟزوذدح ثذٷ ٟ ٢ٟشاٗ٩ ٞؽٰذ ٩ ،اعزخذا ٝاٛزاٗشح اٛخبثٰخ ٩.ص٠خ ٨٣ظ ر٤لٰ٠ٮ آخش٩ ،اعن اٷ٣زشبس ٪٧ ٩ ،ر٪اسد اٛزو٠ٰٜبد. استراتُجُح التىارد Pipelining Strategy ٯ٠بص ٚر٪اسد اٛزو٠ٰٜبد اعزخذا ٝخؾ رغٰ٠ن ُٮ ٟو ٚ٠رظٰ٤وٮ.ٯغزِٰذ خؾ اٛزغٰ٠ن ٢ٟؽٰٔٔخ أ ١ا٤٠ٛزظ ٯ٠ش هجش ٟشاؽ ٚا٣زبط ٟز٪٤هخ ٩.ثز٤لٰٞ عٰش٩سح اٛزظٰ٤ن ُٮ خـ٪ؽ اٛزغٰ٠ن ،ٯ ٢٘٠اٛو ٚ٠ثآ٩ ١اؽذ ه ٬ٜا٤٠ٛزغبد ُٮ ٟشاؽ ٚرظٰ٤ن ٟخزِٜخ.رغ٧ ٬٠ز ٥اٵعشائٰخ ثبٛز٪اسد ،ٳ ١ا٠ٛذخٸد اٛغذٯذح رٔجُ ٚٮ ثذاٯخ اٛخؾ٠ٗ ،ب ٪٧اٛؾبُ ٙٮ خؾ ر٪اسدٓ ،ج ٚخش٩ط ا٠ٛذخٸد اٛغبثٔخ ٨٣ ٢ٟبٯز.٦ الجلة المسثق أو تراكة الجلة: ٢ٟشؤ٧ ١ز ٥اٵعشائٰخ رغشٯن رِٰ٤ز اٛزو٠ٰٜبدُ.برا ٗب٠ٛ ١شؽٜزٮ اٛغٜت ٩اٛزِٰ٤ز ا٠ٛذح رار٨بٔ٣ ،ظذ ٟذح د٩سح اٛزو٠ٰٜخ ا ٬ٛا٤ٛظَ ،٢٘ٛ ٩.ارا ٣لش٣ب ا ٬ٛاٛز٪اسد ٣لشح أهُ ْ٠غ٤ش ٫اعزجوبد ٟؼبهِخ ص ٢ٟاٛزِٰ٤ز ٛغججٰ ٢أعبعٰ:٢ -1اٟ ١ذح اٛزِٰ٤ز هٟ٪٠ب أؿٟ ٢ٟ ٙ٪ذح اٛغٜت.ٯزـٜت اٛزِٰ٤ز ٓشاءح اٛو٪ا٩ ٟٚ رخضٯ٨٤ب ٩ ،رِٰ٤ز اٛزو٠ٰٜخ ا٠ٛـ٪ٜثخٛ ٩.زأُ ،ذ رؼـش ٟشؽٜخ اٛغٜت ا٣زلبس ٟذح ٟوٰ٤خ ٓج ٚأ ١رغزـٰن اُشاى ط٪ا٨٣ب. -2رغو ٚرو٠ٰٜخ اٛزِشٯن اٛششؿٮ ه٪٤ا ١اٛزو٠ٰٜخ اٛزبٰٛخ ا٪ٛاعت رِٰ٤ز٧ب ًٰش ٟوشٛ ٩.ٍ٩زا ،ٯ٤جٌٮ أ ١ر٤زلش ٟشؽٜخ اٛغٜت ا ٬ٛأ ١رؾظ ٚه ٬ٜه٪٤ا١ اٛزو٠ٰٜخ اٛزبٰٛخ ٟ ٢ٟشؽٜخ اٛزِٰ٤ز ٩.رؼـش ٟشؽٜخ اٛزِٰ٤ز ه٤ذئز ا ٬ٛاٷ٣زلبس ،ا٬ٛ أ ١ٯز ٞعٜت اٛزو٠ٰٜخ اٛزبٰٛخ. ٩ه ٬ٜاٛشً ٢ٟ ٞرٰٜٔض ٧ز ٥اٛو٪اُ ٟٚوبٰٛخ اٛز٪اسد ا٠ٛئٟ ٢ٟ َٛشؽٜزٰ ،٢اٷ أ٨٣ب رغُ ٞ٨ٮ رغشٯن اٛو٘ٛ ٩.ٚ٠غت ا٠ٛضٯذ ٢ٟاٛغشهخ ،ٯ٤جٌٮ أ ١ٯؾ٪٭ اٛز٪اسد ٟشاؽ ٚأٗضش٤٤ٛ.لش ُٮ اٛزٔغٰ ٞاٛزبٛٮ ٠ٛوبٛغخ اٛزو٠ٰٜبد: -عٜت اٛزو٠ٰٜخ :FIرٔشأ ٧ز ٥ا٠ٛشؽٜخ اٛزو٠ٰٜخ اٛزبٰٛخ ٩رخض٨٣ب ُٮ ط٪ا.١ -رِٰٖ٘ اٛزوٰ٠ٜخ :DIروٰ٧ ٢ز ٥ا٠ٛشؽٜخ سٟبص اٛوٰٜ٠خ ٟ ٩ؾذداد اٛو٪ا.ٟٚ -ؽغبة اٛو٪ا :CO ٟٚرؾغت ٧ز ٥ا٠ٛشؽٜخ اٛو٪٤ا ١اِٛوٜٮ ٚ٘ٛهبٟ ٟٚظذسٓ ٩.ذ ٯزؼ٢٠ ر٠٣ ٖٛؾ اٵصاؽخ أ ٩اٛو٣٪٤خ ًٰش ا٠ٛجبششح ثبٛغغ ،ٚأًٰ ٩ش ا٠ٛجبششح ،أ ٩أ٭ ش٘ ٢ٟ ٚأش٘بٙ اٛو٣٪٤خ. -عٜت اٛو٪ا :FO ٟٚٯز ٞعٜت ُٮ ٧ز ٥ا٠ٛشؽٜخ ٗبُخ اٛو٪ا ٢ٟ ٟٚاٛزاٗشح ٩.ٷ داهٮ ٛغٜت اٛو٪ا ٟٚا٠ٛخض٣خ ُٮ اٛغغٸد. -رِٰ٤ز اٛزو٠ٰٜخ :EIرئد٭ ٧ز ٥ا٠ٛشؽٜخ اٛوٰٜ٠خ ا٠ٛـ٪ٜثخ ٩ ،رخض ١ا٤ٛزٰغخ ،ا٩ ١عذدُ ،ٮ ٓ٪ٟن اٛوب ٟٚا٪ٛع٨خ ا٠ٛؾذد. ٗ -زبثخ اٛو٪ا :WO ٟٚرخض ١ا٤ٛزٰغخ ُٮ اٛزاٗشح. ٢ٟاٛش٘ ٚثبٟ٘ب ١خؾ اٛز٪اسد ،ر٭ ٟ 6شاؽ ،ٚرٰٜٔض ص ٢ٟرِٰ٤ز 9 رو٠ٰٜبد ٩ 54 ٢ٟؽذح صٰ٤ٟخ ا٩ 14 ٬ٛؽذح صٰ٤ٟخ. ٟٸؽلبد: ٯِزشع ا٠ٛخـؾ أ ٚٗ ١رو٠ٰٜخ ر٠ش هجش ا٠ٛشاؽ ٚاٛغذ ٛخؾ اٛز٪اسد. ٩ٷ ٯ٤ـجْ ر ٖٛدٟ٩ب هٗ ٬ٜبُخ اٛزو٠ٰٜبد٠ُ.ضٸ ،ٷ رؾزبط رو٠ٰٜخ رؾ ٰٚ٠ا ٬ٛا٠ٛشؽٜخ ٛ ٢٘ٛ ٩.WOزجغٰؾ اٛوزبدٯبد٩ ،ػن اٛزٰٓ٪ذ ثِشع أ ٚ٘ٛ ١رو٠ٰٜخ ٟ 6شاؽ٠ٗ.ٚب ٯِزشع ا٠ٛخـؾ أ ٢ٟ ١ا٢٘٠٠ٛ أ ١رو ٚ٠ا٠ٛشؽ ٚاٛغذ ه ٬ٜاٛز٪اص٭ ٩.ٯِزشع خظ٪طب أ ٦٣ٷ رؼبسة ه ٬ٜاٛزاٗشح٠ُ.ضٸ ،رزؼ ٢٠ا٠ٛشاؽWO ٩ FO ٩ FI ٚ اِ٤ٛبر ا ٬ٛاٛزاٗشح ٩.ٯِزشع ا٠ٛخـؾ أ ١هٰٜ٠بد اِ٤ٛبر اٛغبثٔخ رغش٭ ُٮ آ٩ ١اؽذ ٩.ٷ رغ٠ؼ ٟول ٞا٤ٛل ٞثؾذ٩س رٓ ،٢٘ٛ ٩.ٖٛذ ر٘١٪ ا٠ٰٔٛخ ا٠ٛـ٪ٜثخ ُٮ اٛزاٗشح اٛخبثٰخ ،أٓ ٩ذ ٷ رؾزبط اٛزو٠ٰٜخ ا٬ٛ ا٠ٛشؽٜخ FOأ ٩ا٠ٛشؽٜخ ٛ ٩.WOزا ،ٷ ٯئد٭ رؼبسة اٛزاٗشحُ ،ٮ أًٜت اٳؽٰب ،١ا ٬ٛاثـبء خؾ اٛز٪اسد. رئد٭ ه٪ا ٟٚأخش ٫ا ٬ٛرٰٰٔذ رؾغ ٢اٳداءُ.برا ٞٛٯ٘٠ٜٛ ٢شاؽ ٚاٛغذ ا٠ٛذح ِ٣غ٨ب ر٪عت ؽذ٩س ا٣زلبس ُٮ ثوغ ٟشاؽ ٚخؾ اٛز٪اسد٠ٗ ،ب ٓ٪٣ش عبثٔب ُٮ خؾ اٛز٪اسد ر ٩ا٠ٛشؽٜزٰ ٩.٢ر٘ ٢٠اٛظو٪ثخ اٳخشُ ٫ٮ رو٠ٰٜخ اٛزِشٯن اٛششؿٮ ،اٛزٮ ٓذ رٌٜٮ طٸؽٰخ هذح هٰٜ٠بد عٜت ٜٛزو٠ٰٜبد ٩.ص٠خ ؽذس أخش ٷ ٯ ٢٘٠اٛز٤جئ ث ٦أٯؼب ٪٧ ٩ ،أ٠ٛبؿوخ.ٯ٪ػؼ اٛش٘ ٚرؤصٰش اٛزِشٯن اٛششؿٮ، ثبعزخذا ٝاٛجش٣بٟظ رار ٦ا٠ٛزٗ٪س ُٮ اٛش٘ ٚاٛغبثِْ٤ٛ.زشع أ ١اٛزو٠ٰٜخ ٧ 3ٮ رو٠ٰٜخ رِشٯن ششؿٮ ٜٛزو٠ٰٜخ ٟ ٩.15بداٟذ اٛزو٠ٰٜخ ًٰش ِ٤ٟزح ،ٷ ٯٟ ٢٘٠وشُخ اٛزو٠ٰٜخ اٛزبٰٛخ.ٯؾ ٚ٠ه٤ذئز خؾ اٛز٪اسد ثجغبؿخ اٛزو٠ٰٜخ اٛزبٰٛخ رزبثوٰب (اٛزو٠ٰٜخ ٩ ، )4ٯٔ ٝ٪ث٠وبٛغز٨ب٣.غذ ٢ٟاٛش٘ ٚاٳ ٙ٩اٛؾبٛخ اٛزٮ ٷ ٯؾذس ُٰ٨ب رِشٯن، ُٰزؾغ ٢اٳداء رؾغ٤ب ٗبٟٸ.أٟب ُٮ اٛش٘ ٚاٛضب٣ٮ ُٰؾذس رِشٯن٧ ٢٘ٛ٩ ،زا ٷ ٯزٔشس ؽز٨٣ ٬بٯخ ا٪ٛؽذح اٛضٰ٤ٟخ سٓ. 7 ٞٯ٤جٌٮ ه٤ذئز ٟؾ ٪اٛزو٠ٰٜبد ا٠ٛخض٣خ ُٮ خؾ اٛز٪اسد اٛزٮ ٞٛروذ ِٰٟذح ٩.رذخُ ٚٮ ا٪ٛؽذح اٛضٰ٤ٟخ ،8اٛزو٠ٰٜخ 15خؾ اٛز٪اسد ٩.ٷ ٯ٘ز ٚ٠رِٰ٤ز أ٭ رو٠ٰٜخ ا ٩.12 ٬ٛٯ٠ض ٚرً ٖٛشاٟخ اٳداء Performance Penaltyا٤ٛبرغخ ه ٢هذ ٝرخ ٢ٰ٠اٛزِشٯن ٩.ٯشٰش اٛش٘ ٚا٬ٛ ا٤٠ٛـْ اٛٸصٛ ٝخؾ اٛز٪اسد٘ٛ ،ٮ ٯؤخز ُٮ اٛؾغجب ١اٛزِشم ٩أ٠ٛبؿوبد. ٯجٰ ٢اٛش٘ ٚهب ٟٚاٛزغشٯن ٗزبثن ٛوذد ا٠ٛشاؽُ ٚٮ خؾ ر٪اسد اٛزو٠ٰٜبدُ.ٮ ٧ز ٥اٛؾبٛخ ،ٯٔزشة هبٟٚ اٛزغشٯن ٢ٟهذد اٛزو٠ٰٜبد ا ٢٘٠٠ٛأ ١رذخ ٚخؾ اٛز٪اسد ثذ ١٩رو٠ٰٜبد اٛزِشٯن، ٛ ٩زا٠ٜٗ ،ب اصداد هذد ا٠ٛشاؽُ ٚٮ خؾ اٛز٪اسد ،اصداد اؽز٠ب ٙاٛزغشٯن،٢٘ٛ ٩. ُٮ ا٪ٛآن ،ٯظـذ ٝا٘ٛغت ا٠ٛؾز ٢ٟ ٚ٠اػبُخ ٟشاؽ ٚا ٬ٛخؾ اٛز٪اسد ثضٯبدح اِٜ٘ٛخ ٩ ،اسرِبم ٰٓ٠خ اٛزؤخٰش ثٰ ٢ا٠ٛشاؽ.ٚأػَ ا ٬ٛر ،ٖٛرزـٜت رو٠ٰٜبد اٛزِشٯن اٛزٮ رظبدٍ ُٮ اٛجشاٟظ رِشٯي خؾ اٛز٪اسد ثغشهخ ٩.روذ أ٭ صٯبدح اػبُٰخ ُٮ هذد ا٠ٛشاؽ ٚه ٢ا٠ٰٔٛخ ٟ 9-6شاؽ ٚراد رؤصٰش عٜجٮ ه ٬ٜاٳداء. )3(هثال ٢ٰٜغغ٠ٛٯبد ا٪ؾزٟ ب٤ٰجٟ غبثٔخٛؾبػشح ا٠ٛ ُٮ اٙضب٠ٛ أهذ ا.MBR, MAR 0001 = Load AC from Memory 0101 = Add to AC from Memory 0010 = Store AC to Memory هثال()3 هثال()3 هثال ()4 ؽبع٪ة رٟ ٩وبٛظ ٩ 32 bitٯذه ٞرو٠ٰٜبد أؽبدٯخ اٛو٪٤ا١ ثوشع ( 32 bitؽٰش ٩ )opcode 8ا٠ٛـ٪ٜة: ٟ -1ب ؽغ ٞاٛزاٗشح اٛشئٰغٰخ اٳهل٠ٮ ا ٢٘٠٠ٛه٣٪٤ز٨ب ٟجبششح. ٣ -2بٓش اٛزؤصٰش ه ٬ٜعشهخ ا٤ٛلبُ ٝٮ اٛؾبٛزٰ ٢اٛزبٰٛزٰ:٢ -هشع ٣بٓ ٚاٛو٤ب٩ٯ ٩ 32 bit ٢هشع ٣بٓ ٚاٛجٰب٣بد 16 bit -هشع ٣بٓ ٚاٛو٤ب٩ٯ ٩ 16 bit ٢هشع ٣بٓ ٚاٛجٰب٣بد 32 bit هثال ()4 الوثال ()5 َدعم حاسىب تعلُماخ ثىائُح العىىان و مجمىعح تعلُماخ عددها 128تعلُمح و ذاكرج تحجم 2 GBو المطلىب: - 1ارسم صُغح التعلُمح مثُىا علُها عرض كل حقل. – 2ما هى عرض كل مه المسجالخMDR , PC ,MAR, – 3ما هى عرض كل مه ممر المعطُاخ و ممر العىاوَه تحُث َكىن األداء أفضل. )5( الوثال 7 31 31 opcode address1 address2 )5( الوثال MAR=PC=31 bit MDR=69 bit Address Bus=31 bit Data Bus=69 bit الوثال()6 1 2 3 4 5 6 7 8 9 10 11 12 13 Instruction-1 F D E W Instruction-2 F D E W Instruction-3 F D E W Instruction-4 F D E W Instruction-5 F D E W Instruction-6 F D E W Instruction-7 F D E W Instruction-8 F D E W 1 2 3 4 5 6 7 8 9 10 11 12 13 Instruction-1 F D E W Instruction-2 F D E W Instruction-3 F D E W Instruction-4 F D E W Instruction-5 F D Instruction-6 F Instruction-7 F D E W Instruction-8 F D E W ِْبئٛٮ ا٠ٜغٛظ اٛوب٠ٛا Superscalar processor روشٯَ: ا٠ٛوبٛظ اٛغ٠ٜٮ اِٛبئْ ٟ ٪٧وبٛظ رغزو ٦ُٰ ٚ٠خـ٪ؽ ر٪اسد ٟزوذدح ٟغزٜٔخ ٜٛزو٠ٰٜخ ٩.ٯزؤ ٚٗ َٛخؾ ر٪اسد ٟ ٢ٟشاؽٟ ٚزوذدح ،ثؾٰش ٯغزـٰن ٗ ٚخؾ ر٪اسد أ ١ٯز ٬ٛ٪هذح رو٠ٰٜبد ُٮ آ٩ ١اؽذ. ٩رٔذ ٝخـ٪ؽ اٛز٪اسد ا٠ٛزوذدح ٟغز ٫٪عذٯذ ٢ٟاٛزِشم ٠ٟب ٯٟ ٢ٟ ٢٘٠وبٛغخ دُٔبد ٟزوذدح ٢ٟاٛزو٠ٰٜبد دُوخ ٩اؽذح. ٩ٯغزخذ ٝا٠ٛوبٛظ اٛغ٠ٜٮ اِٛبئْ ٟب ٟ ٪٧وش ٍ٩ثبٛزِشم (ا٪٠ٛاصاح)هٟ ٬ٜغز ٫٪اٛزو٠ٰٜخ ،اٛز٭ ٯشٰش ا ٬ٛاٛذسعخ اٛزٮ ٯ٢٘٠ ٛزو٠ٰٜبد ثش٣بٟظ ٟب أ ١رِ٤ز ه ٬ٜاٛزِشم (اٛز٪اص٭) . ٯز٠ض ٚع٧٪ش اٛـشٯٔخ اٛغٰ٠ٜخ اِٛبئٔخ ُ superscalarٮ أٛذسح ه ٬ٜرِٰ٤ز اٛزو٠ٰٜبد ثشٟ٘ ٚغزٟٔ٩ ٚزضاُ ٢ٟٮ خـ٪ؽ ر٪اسد ٟخزِٜخ.ٯ ٢٘٠اعزٌٸ ٙا ٝ٪٨ِ٠ٛثش٘ ٚأٗجش ٢ٟخٸ ٙاٛغ٠بػ ثزِٰ٤ز اٛزو٠ٰٜبد ثزشرٰت ٯخز َٜه ٢رشرٰت اٛجش٣بٟظ.ٯجٰ ٢اٛش٘ ،ٚا٨٤ٛظ اٛغ٠ٜٮ اِٛبئْ ثش٘ ٚهب.ٝر٪عذ ٩ؽذاد ٩كِٰٰخ ٟزوذدح ٯز ٞا٣غبص ٗ٨٤ٟ ٚب ٗخؾ ر٪اسد ٯذه ٞاٛزِٰ٤ز ا٠ٛز٪اص٭ ٛوذح رو٠ٰٜبد.ٯ٢٘٠ ُٮ ٧زا ا٠ٛضب ،ٙرِٰ٤ز هٰٜ٠زٰ ٢ه ٬ٜهذد طؾٰؼ ٩ ،هٰٜ٠زٰ ٢ه٬ٜ أهذاد راد ُبطٜخ هبئ٠خ ٩ ،هٰٜ٠خ راٗشح (اٟب رؾ ٰٚ٠أ ٩رخضٯ)٢ ثِ٤ظ آ٪ٛذ. الثىُان السلمٍ الفائق مقاتل الثىُان التىاردٌ الفائق Superscalar versus Super pipelined ٯغزض٠ش اٛز٪اسد اِٛبئْ ؽٰٔٔخ أٟ ١شاؽ ٚر٪اسد هذٯذح ر٤غض ٨ٟبٟب رزـٜت أٓ٢ٟ ٚ ٣ظَ د٩سح ٰٟٔبرٰخ٘٧ ٩.زا رغ٠ؼ عشهخ ٰٟٔبرٰخ داخٰٜخ ٟؼبهِخ ثؤداء ٠٨ٟزٰ٢ ثذ٩سح ٰٟٔبرٰخ خبسعٰخ ٩اؽذح. ٯٔبس ١اٛش٘ ٚا٨٤ٛغٰ.٢ٯ٪ػؼ اٛغضء اٳه ٢ٟ ٬ٜا٠ٛخـؾ خؾ ر٪اسد هبدٯب ،ٯزٞ اعزو٠بٗ ٦ٛؤعبط ٔ٠ٜٛبس٣خ.ٯظذس خؾ اٛز٪اسد اٳعبط رو٠ٰٜخ ٩اؽذح ُٮ ٗٚ د٩سح ٰٟٔبرٰخ ٩ ،ٯ ٢٘٠أ ١ٯ٤غض ٟشؽٜخ ر٪اسدٯخ ٩اؽذح ُٮ ٗ ٚد٩سح ٰٟٔبرٰخٛ.خؾ اٛز٪اسد أسثن ٟشاؽ٧ ٚٮ عٜت اٛزو٠ٰٜخ ُٖ ٩ ،رشٰٟض اٛوٰٜ٠خ ٩ ،رِٰ٤ز اٛوٰٜ٠خ٩ ، اهبدح ٗزبثخ ا٤ٛزٰغخٓ ٩.ذ كٜٜذ ٟشؽٜخ اٛزِٰ٤ز ٛٶٯؼبػ.ٷؽق أ ٦٣ثبٛشً ٢ٟ ٞأ١ هذح رو٠ٰٜبد رِ٤ز ثآ٩ ١اؽذُ ،ٸ رؾ٪٭ ٟشؽٜخ اٛزِٰ٤ز أٗضش ٢ٟرو٠ٰٜخ ٩اؽذح ُٮ ٓ٩ذ ٟوٰ.٢ الثىُان السلمٍ الفائق مقاتل الثىُان التىاردٌ الفائق Superscalar versus Super pipelined ٯجٰ ٢اٛغضء اٛزبٛٮ ٢ٟا٠ٛخـؾ ر٤غٰضا ر٪اسدٯب ُبئٔب ٓبدسا ه ٬ٜأداء ٟشؽٜزٮ خؾ ر٪اسد ُٮ ٗ ٚد٩سح ٰٟٔبرٰخ.ؿشٯٔخ ثذٯٜخ ٤ٜٛلش ا ٬ٛر ٖٛر٤ض ه ٬ٜاٟ٘ب ١شـش ٟٗ ٚشؽٜخ ا ٬ٛعضأٯًٰ ٢ش ٟزشاٗجٰ ٢ٯ ٢٘٠أ ١ٯز ٞرِٰ٤ز ٗ٨٤ٟ ٚب ُٮ ٣ظَ د٩سح ٰٟٔبرٰخ ٩.ٯـ ْٜه ٬ٜاٛز٤غٰض اٛز٪اسد٭ اِٛبئْ اٛز٭ ٯزظشٍ ث٨ز ٥اٛـشٯٔخ أ٦٣ ٢ٟاٛذسعخ ٩.2أخٰشا ،ٯجٰ ٢اٛغضء اٳد ٢ٟ ٬٣ا٠ٛخـؾ ر٤غٰضا عٰ٠ٜب ُبئٔب ٓبدسا ه ٬ٜرِٰ٤ز ٟضٰٟ ٚ٘ٛ Instances ٢ٰٜشؽٜخ ه ٬ٜاٛز٪اص٭ (اٛزِشم)٠ٗ.ب ا١ ر٤غٰض ٟشارت أهٜٛ ٬ٜز٪اسد اِٛبئْ ٜٛ ٩غ٠ٜٮ اِٛبئْ ٪٧أٟش .٢٘٠ٟ ٢ٟ ٚ٘ٛاٛز٤غٰضٯٜٛ ٢ز٪اسد اِٛبئْ ٜٛ ٩غ٠ٜٮ اِٛبئْ (اٛشِ٘٣ )ٚظ اٛوذد ٢ٟ اٛزو٠ٰٜبد اٛزٮ رِ٤ز ُٮ آ٩ ١اؽذ ُٮ اٛؾبٛخ ا٠ٛغزٔشح٩.ٯزخ َٜا٠ٛوبٛظ اٛز٪اسد٭ اِٛبئْ ه ٢ا٠ٛوبٛظ اٛغ٠ٜٮ اِٛبئْ ه٤ذ آٸم اٛجش٣بٟظ ٩ه٤ذ ٗ٩ ٚع٨خ رِشٯن. رِشهٰخ اٱٛخ ٩رِشهٰخ اٛزو٠ٰٜبد دسعخ اٛزِشهٰخ ٩اٛو٪ا ٟٚا٠ٛئصشح ه٨ٰٜب ٯوز٠ذ ا٨٤ٛظ اٛغ٠ٜٮ اِٛبئْ ه ٬ٜأٛذسح ُٮ رِٰ٤ز رو٠ٰٜبد ٟزوذدح ه ٬ٜاٛز٪اص٭٩. رشٰش اٛوجبسح ٪ٟاصاح هٟ ٬ٜغز ٫٪اٛزو٠ٰٜخ Instruction-Level Parallelism ا ٬ٛاٛذسعخ اٛزٮ ٯ٨ُٰ ٢٘٠ب رِٰ٤ز رو٠ٰٜبد ثش٣بٟظ ٟب ٩عـٰب ه ٬ٜاٛز٪اص٭٩. ٯ ٢٘٠أ ١ٯز ٞاعزو٠بٟ ٙغ٪٠هخ ٢ٟرٰٔ٤بد هزبدٯخ ٢ٟ ٩اعز٠ضب ٙٯوز٠ذ ه٬ٜ ا٠ٛظشٍ (ا٠ٛزشعٛ )ٞضٯبدح ا٪٠ٛاصاح هٟ ٬ٜغز ٫٪اٛزو٠ٰٜخ ا ٬ٛؽذ٧ب اٳٓظ٩.٬ ٓجٟ ٚوبٯ٤خ رٰٔ٤بد اٛزظ ٰٞ٠ا٠ٛغزوٜ٠خ ُٮ اٛؾ٪اعٰت اٛغٰ٠ٜخ اِٛبئٔخ ٛضٯبدح ا٪٠ٛاصاح هٟ ٬ٜغز ٫٪اٛزو٠ٰٜخ٣ ،ؾزبط ا ٬ٛا٤ٛلش ُٮ ا٠ٛؾذداد اٳعبعٰخ ٪٠ٜٛاصاح اٛزٮ ٯغت أ ١ٯزٌٜت ه٨ٰٜب ا٤ٛلب ٩ ٝعززٗش ٨٤ٟب خ٠ظ ٟؾذداد ٧ ٩ٮ: -1اٛزجوٰخ اٛؾٰٰٔٔخ ٠ٜٛوـٰبد True data dependency -2اٛزجوٰخ اٵعشائٰخ Procedural dependency ٣ -3ضام ا٪٠ٛاسد Resource conflicts -4رجوٰخ اٛخشط Output dependency ٰٔ٣ -5غ اٛزجوٰخ Antidependency التثعُح الحقُقُح للمعطُاخ True data dependency اُزشع اٛززبثن اٛزبٛٮ: ADD EAX, ECX ;load register EAX with the contents of ECX plus the contents of EAX. MOV EBX, EAX ;load EBX with the contents of EAX. ٯ ٢٘٠أ ١ٯز ٞعٜت اٛزو٠ٰٜخ اٛضبٰ٣خ ُٖ ٩رشٰٟض٧ب٨٤٘ٛ ،ب ٷ رِ٤ز ؽز ٬ٯز ٞرِٰ٤ز اٛزو٠ٰٜخ اٳ ٩.٬ٛ٩اٛغجت ُٮ ر ٖٛٯو٪د ا ٬ٛأ ١اٛزو٠ٰٜخ اٛضبٰ٣خ رؾزبط اٟ ٬ٛوـٰبد ر٤زغ٨ب اٛزو٠ٰٜخ اٳ ٩.٬ٛ٩ٯشبس ا٧ ٬ٛز ٥اٛؾبٛخ ثزجوٰخ ؽٰٰٔٔخ ٠ٜٛوـٰبد. ٩ٯ٪ػؼ اٛش٘٧ ٚز ٥اٛزجوٰخ ُٮ ؽبع٪ة ع٠ٜٮ ُبئْ ٢ٟاٛذسعخ .2ٯُ ٢٘٠ٮ ؽبٛخ هذ ٝاٛزجوٰخ أ ١ٯز ٞعٜت رو٠ٰٜزٰ ٩ ٢رِٰ٤ز٠٧ب ه ٬ٜاٛز٪اص٭.أٟب ارا ٗب٤٧ ١بٕ رجوٰخ ٟوـٰبد ثٰ ٢اٛزو٠ٰٜزٰ ٢اٳ ٩ ٬ٛ٩اٛضبٰ٣خ ،ٯز ٞرؤخٰش اٛزو٠ٰٜخ اٛضبٰ٣خ ثبٛوذد ا٠ٛـ٪ٜة ٢ٟد٩ساد أٰ٠ٛبرٰخ ٵٌٛبء اٛزجوٰخ ٩.ه ٬ٜاٛو ٝ٪٠ٯغت رؤخٰش ٗ ٚرو٠ٰٜخ ا ٬ٛأ ١ٯزٞ ا٣زبط عٰ٠ن ٟذخٸر٨ب. ٢ٛٯغجت رزبثن اٛزو٠ٰٜبد ا٠ٛزٗ٪سح عبثٔب أ٭ رؤخٰش ه ٬ٜخؾ ر٪اسد ع٠ٜٮ ثغٰؾ. اُزشع أ ١أؽذ اٛو٪ا ٟٚٯز ٞرؾ ٢ٟ ٦ٰٜ٠اٛزاٗشح ثذٷ ٢ٟعغ:ٚ MOV EAX, eff ;load register EAX with the contents of effective memory address eff. MOV EBX, EAX ;load EBX with the contents of EAX. ٯغزٌشّ ٟوبٛظ ٪٠٣ RISCرعٮ د٩سرٰ ٢أ ٩أٗضش ٰٜٔٛب ٝثبٛزؾ ٢ٟ ٰٚ٠اٛزاٗشح ثغجت اٛزؤخٰش ُٮ اِ٤ٛبر ا ٬ٛراٗشح خبسط اٛششٯؾخ أٛ ٩زاٗشح خبثٰخ.. Procedural dependency التثعُح اإلجرائُح ٗ٠ب رٗش عبثٔب ُب٩ ١ع٪د رِشٯوبد ُٮ رزبٛٮ رو٠ٰٜبد ٯؤذ ه ٚ٠خؾ اٛز٪اسد. اٛزو٠ٰٜبد اٛزٮ رزجن ُشم ٨ٛب رجوٰخ اعشائٰخ ه ٬ٜاِٛشم ٩ٷ ٯ ٢٘٠رِٰ٤ز٧ب ؽز ٬ٯزٞ رِٰ٤ز اِٛشم.ٯ٪ػؼ اٛش٘ ٚرؤصٰش اٛزِشٯن ه ٬ٜخؾ ر٪اسد ع٠ٜٮ ُبئْ ٢ٟاٛذسعخ .2 ٗ٠ب سأٯ٤ب ،ٯئصش ٧زا ا٪٤ٛم ٢ٟاٛزجوٰخ اٵعشائٰخ أٯؼًب ه ٬ٜخؾ اٛز٪اسد اٛغ٠ٜٮ. ر٘٣ ١٪زبئظ اٛزجوٰخ ه ٬ٜخؾ ر٪اسد ع٠ٜٮ ُبئْ أٗضش خـ٪سح ،ٳ ١ؽغً٠ب أٗجش ٢ٟ اِٛشص ٯؼٰن ٟن ٗ ٚرؤخٰش. ارا ر ٞاعزخذا ٝاٛزو٠ٰٜبد راد اٛـ ٙ٪ا٠ٛزٌٰشُ ،غٰل٨ش ٪٣م آخش ٢ٟاٛزجوٰخ اٵعشائٰخ٠ٛ.ب ٗب ١ؿ ٙ٪أ٭ رو٠ٰٜخ ٟؾذدح ًٰش ٟوش ،ٍ٩ٯغت ُٖ رشٰٟض٧ب عضئًٰب ه ٬ٜاٳٓٓ ٚج ٚأ ١ٯز ٞعٜت اٛزو٠ٰٜبد اٛزبٰٛخ٧.زا ٯ٤٠ن اٛغٜت ا٠ٛزضا٢ٟ ا٠ٛـ٪ٜة ُٮ خؾ ر٪اسد ع٠ٜٮ ُبئْ٧.زا ٪٧أؽذ اٳعجبة اٛزٮ رغو ٚاٛزٰٔ٤بد اٛغٰ٠ٜخ اِٛبئٔخ superscalarأٗضش ٓبثٰٜخ ٜٛزـجْٰ ُٮ اٛجٰ٤ب RISC ١أُ ٩ٮ اٛجٰ٤ب١ ا٠ٛشبثٜٛ ٦جٰ٤بٟ ، RISC ١ن ؿ ٙ٪رو٠ٰٜبد صبثذ. Resource conflicts وساع المىارد ٤ٟ ٪٧بُغخ ثٰ ٢رو٠ٰٜزٰ ٢أ ٩أٗضش هِ٣ ٬ٜظ ا٪٠ٛسد ُٮ آ٪ٛذ رار.٦رزؼ ٢٠أٟضٜخ ا٪٠ٛاسد اٛز٩اٗش ٩اٛزاٗشح اٛخبثئخ ٩ا٠٠ٛشاد ٤ٟ٩بُز ِٜٟبد اٛغغٸد ٩ا٪ٛؽذاد ا٪ٛكِٰٰخ (ه ٬ٜعجٰ ٚا٠ٛضب ، ٙعبٟن ٩ؽذح اٛؾغبة ٩ا٤٠ٛـْ .)ALU adder ُٰ٠ب ٯزو ْٜثخؾ اٛز٪اسد ،ٯُل٨ش ٣ضام ا٪٠ٛاسد عًٗ٪ٜب ٠ٟبصٸ ٛزجوٰخ ا٠ٛوـٰبد ( ٗ٠ب ُٮ اٛش٘٤٧.)ٚبٕ ثوغ اٷخزٸُبدُ.ٮ ؽٰ ٢ٯ ٢٘٠اٛزٌٜت ه٣ ٬ٜضام ا٪٠ٛاسد ث٠ؼبهِخ ا٪٠ٛاسد ،ثبٔ٠ٛبث ٚٷ ٯ ٢٘٠اٌٛبء رجوٰخ ا٠ٛوـٰبد اٛؾٰٰٔٔخ.أٯؼًب ،ه٤ذٟب رغزٌشّ هٰٜ٠خ ٟب ٓ٩زًب ؿ٪ٯٸً ؽز ٬ر٘ز ،ٚ٠ٯ ٢٘٠رٔ٣ ٰٜٚضام ا٪٠ٛاسد ا ٬ٛاٛؾذ اٳد ٬٣ه ٢ؿشٯْ ر٪اسد ا٪ٛؽذح ا٪ٛكِٰٰخ ا٤٠ٛبعجخ. اهزجبساد رظٰ٠ٰ٠خ المىازاج علً مستىي التعلُمح ومىازاج اِلح Instruction-Level Parallelism and Machine Parallelism ٯتز ٞاٛزٰٰ٠تض ثتٰ٨ِٟ ٢تتٟ٪ٮ ا٠ٛت٪اصاح هٜتٟ ٬غتز ٫٪اٛزو٠ٰٜتتخ ٟ ٩ت٪اصاح اٱٛتخ.ٯ٪عتتذ اٛزت٪اص٭ هٜتٟ ٬غتتز٫٪ اٛزو٠ٰٜخ ه٤ذٟب ر٘ ١٪اٛزو٠ٰٜبد ُٮ اٛزغٜغٟ ٚغزٜٔخ٩.ثبٛزبٛٮ ٯ ٢٘٠رِٰ٤ز٧ب ثبٛز٪اص٭ ٢ٟخٸ ٙاٛزشاٗت. ٗ٠ضب ٙه ٝ٪٨ِٟ ٬ٜاٛز٪اص٭ هٟ ٬ٜغز ٫٪اٛزو٠ٰٜخِ٣ ،زشع عضأ٭ ا٪٘ٛد اٛزب: ٢ٰٰٛ Load R1 R2 ”Add R3 R3, “1 ”Add R3 R3, “1 Add R4 R3, R2 Add R4 R4, R2 Store [R4] R0 ا ١اٛزو٠ٰٜبد اٛزٮ ه ٬ٜاٰٛغبس ٟغزٜٔخ ٩ ،ٯ٣ ٢٘٠لشٯب رِٰ٤ز اٛزو٠ٰٜبد عٰ٠و٨ب ه ٬ٜاٛز٪اص٭ ٩.ثبٔ٠ٛبثُ ٚب٦٣ ٷ ٯ ٢٘٠رِٰ٤ز اٛزو٠ٰٜبد اٛزٮ ه ٬ٜا ٢ٰ٠ٰٛه ٬ٜاٛز٪اص٭ ٳ ١اٛزو٠ٰٜخ اٛضبٰ٣خ رغزو٣ ٚ٠زٰغخ اٛزو٠ٰٜخ اٳ٩ ٬ٛ٩ رغزو ٚ٠اٛزو٠ٰٜخ اٛضبٛضخ ٣زٰغخ اٛزو٠ٰٜخ اٛضبٰ٣خ. اهزجبساد رظٰ٠ٰ٠خ المىازاج علً مستىي التعلُمح ومىازاج اِلح Instruction-Level Parallelism and Machine Parallelism ٯتتز ٞرؾذٯتتذ دسعتتخ اٛزتت٪اص٭ هٜتتٟ ٬غتتز ٫٪اٛزو٠ٰٜتتخ ٟتت ٢ختتٸ ٙر٘تتشاس رجوٰتتبد اٛجٰب٣تتبد اٛؾٰٰٔٔتتخ ٩اٛزجوٰبد اٵعشائٰخ ُٮ ا٪٘ٛد٧.ز ٥اٛو٪ا ،ٟٚثذ٩س٧ب ،روز٠ذ ه ٬ٜثٰ٤خ ٟغ٪٠هتخ اٛزو٠ٰٜتبد ٩هٜت٬ اٛزـجٰتتْ.ٯتتز ٞأٯؼًتتتب رؾذٯتتذ اٛزتتت٪اص٭ هٜتتٟ ٬غتتتز ٫٪اٛزو٠ٰٜتتخ ٟتتت ٢ختتٸ ٙصٟتتت ٢اعتتزغبثخ اٛوٰٜ٠تتتخ :operation latencyاٛض ٢ٟؽز ٬رظجؼ ٣زٰغخ اٛزو٠ٰٜخ ٟزبؽخ ٛٸعزخذا ٝثبهزجبس٧ب ٟوبُ ٟٚتٮ رو٠ٰٜتتبد ٷؽٔتتخ.ٯؾتتذد صٟتت ٢اٷعتتزغبثخ ٟٔتتذاس اٛزتتؤخٰش اٛتتز٭ عتتزؾذص ٦رجوٰتتخ اٛجٰب٣تتبد أ ٩اٛزجوٰتتخ اٵعشائٰخ. اهزجبساد رظٰ٠ٰ٠خ المىازاج علً مستىي التعلُمح ومىازاج اِلح Instruction-Level Parallelism and Machine Parallelism Machine Parallelism مىازاج اِلح ٰٟٔ ٪٧بط ٔٛذسح ا٠ٛوبٛظ ه ٬ٜاٷعزِبدح ٢ٟاٛز٪اص٭ هٟ ٬ٜغز ٫٪اٛزو٠ٰٜخ.ٯتز ٞرؾذٯتذ ٟت٪اصاح اٱٛتخ ٟت٢ ختتٸ ٙهتتذد اٛزو٠ٰٜتتبد اٛزتتٮ ٯ٘٠تت ٢عٜج٨تتب ٩رِٰ٤تتز٧ب ُتتٮ ِ٣تتظ آ٪ٛتتذ (هتتذد خـتت٪ؽ اٛزتت٪اسد ا٠ٛز٪اصٯتتخ) ٩ثغشهخ ٩رؤٰذ اٱٰٛبد اٛزٮ ٯغزخذ٨ٟب ا٠ٛوبٛظ ٜٛوض٪س ه ٬ٜاٛزو٠ٰٜبد ا٠ٛغزٜٔخ. ٯوذ ٗ ٢ٟ ٚاٛز٪اص٭ هٟ ٬ٜغز ٫٪اٛزو٠ٰٜخ ٩ر٪اص٭ اٱٛخ هبُ ٢ٰ٠٨ٟ ٢ٰٜٟٮ رؾغٰ ٢اٳداءٓ.تذ ٷ ٯ٘ت١٪ ٜٛجش٣تتبٟظ ٟتت٪اصاح هٜتتٟ ٬غتتز ٫٪اٛزو٠ٰٜتتخ ٗبُٰتتخ ٛٸعتتزِبدح ا٘ٛبٜٟتتخ ٟتت ٢رتت٪اص٭ اٱٛتتخ.ا ١اعتتزخذا ٝثٰ٤تتخ ٟغ٪٠هخ اٛزو٠ٰٜبد راد اٛـ ٙ٪اٛضبثذ٠ٗ ،ب ٪٧اٛؾبُ ٙٮ ،RISCٯوضص اٛز٪اص٭ هٟ ٬ٜغز ٫٪اٛزو٠ٰٜتخ. ٣ ٢ٟبؽٰخ أخشُ ، ٫ب ١اٛز٪اص٭ ا٠ٛؾذ٩د ٛٲٛخ عٰؾذ ٢ٟاٳداء ثٌغ ا٤ٛلش ه ٢ؿجٰوخ اٛجش٣بٟظ. اهزجبساد رظٰ٠ٰ٠خ ر٤شؤ رجوٰخ عذٯذح ٩ ،اٛزٮ أشش٣ب ا٨ٰٛب عبثًٔب ثبع ٞرجوٰخ خشط output dependency (رغ ٬٠أٯؼًب رجوٰخ ٗزبثخٗ-زبثخ .)write after write [WAW]dependencyٯ٪ػؼ عضء ا٪٘ٛد اٛزبٛٮ ٧ز ٥اٛزجوٰخ ( opٯ٠ض ٚأ٭ هٰٜ٠خ): I1: R3R3 OP R5 I2: R4R3 +1 I3: R3R5+1 I4: R7R3 OP R4 I1: R3R3 OP R5 I2: R4R3 +1 I3: R3R5+1 I4: R7R3 OP R4 ٷ ٯ ٢٘٠رِٰ٤ز اٛزو٠ٰٜخ ٓ I2ج ٚاٛزو٠ٰٜخ ،I1ٳ٨٣ب رؾزبط ا ٬ٛا٤ٛزٰغخ ُٮ اٛغغ R3 ٚا٤٠ٛزغخ ُٮI1؛ ٧زا ٟضب ٙه ٬ٜرجوٰخ اٛجٰب٣بد اٛؾٰٰٔٔخ٠ٗ ،ب رٗش عبثٔب٩.ثب٠ٛض ،ٚٯغت ه I4 ٬ٜا٣زلبس ،I3ٳ٨٣ب رغزخذٝ ٣زٰغخ ر ٞا٣زبع٨ب ث٪اعـخ ٟ.I3برا ه ٢اٛوٸٓخ ثٰI3٩ I1 ٢؟ ٷ ر٪عذ رجوٰخ ثٰب٣بد ٤٧ب٠ٗ ،ب ؽذد٣ب٧ب عبثٔبٟ٩.ن ر ،ٖٛارا ر ٞرِٰ٤ز I3ؽز ٬اٷر٠بٓ ٝجُ ،I1 ٚغٰز ٞعٜت ا٠ٰٔٛخ اٛخبؿئخ ٠ٛؾز٪ٯبد R3 ٛزِٰ٤ز ٩.I4ثبٛزبٛٮ ،ٯغت اٗ٠ب I3 ٙثوذ I1ٵ٣زبط ٰٓ ٞاٛخشط اٛظؾٰؾخٛ.ؼ٠ب ١ر ،ٖٛٯغت اٯٔبٍ اطذاس اٛزو٠ٰٜخ اٛضبٛضخ ارا ٗب ٢ٟ ١ا ٢٘٠٠ٛاعزجذا٣ ٙزٰغز٨ب ٷؽًٔب ثزو٠ٰٜخ ٓذٯ٠خ رغزٌشّ ٓ٩زًب أؿٙ٪ ٵٗ٠ب٨ٛب. اهزجبساد رظٰ٠ٰ٠خ I1: R3R3 OP R5 I2: R4R3 +1 I3: R3R5+1 I4: R7R3 OP R4 ٷ ٯٜٛ ٢٘٠زو٠ٰٜخ I3اٗ٠ب ٙاٛزِٰ٤ز ٓج ٚأ ١رجذأ اٛزو٠ٰٜخ I2ثبٛزِٰ٤ز ٩ثوذ عٜت ٟوبٟٸر٨ب٧.زا ٳI3 ١ رؾذّس اٛغغ ٪٧٩ ،R3 ٚهبٟ ٟٚظذس ٜٛزو٠ٰٜخ .I2ٯُغزخذٟ ٝظـٜؼ ٰٔ٣غ اٛزجوٰخ ٳ ١أٰٛذ ٟشبث٦ ٪ٰٔٛد اٛزجوٰخ اٛؾٰٰٔٔخ ٜٛجٰب٣بدٟ ٦٤٘ٛ٩ ،و٘٪ط :أ٭ ثذٷً ٢ٟأ ١ر٤زظ اٛزو٠ٰٜخ اٳ٠ٰٓ ٬ٛ٩خ رغزخذ٨ٟب اٛزو٠ٰٜخ اٛضبٰ٣خُ ،ب ١اٛزو٠ٰٜخ اٛضبٰ٣خ رخشة ا٠ٰٔٛخ اٛزٮ رغزخذ٨ٟب اٛزو٠ٰٜخ اٳ.٬ٛ٩ التنظين الوتوازي ُٮ اٛز٤لٰ ٞا٠ٛز٪اص٭ رزوب ١٩هذح ٩ؽذاد ٟوبٛغخ ٟوب ٛزِٰ٤ز اٛزـجٰٔبدُ.ٮ ؽٰ ٢أ ١ا٠ٛوبٛظ اٛغ٠ٜٮ اِٛبئْ ٯغزض٠ش ُشص اٛزِٰ٤ز ا٠ٛز٪اص٭ هٟ ٬ٜغز ٫٪اٛزو٠ٰٜبد.ٯجؾش اٛز٤لٰٞ ا٠ٛز٪اص٭ ُٮ ٟغز ٫٪أه ٢ٟ ٞاٛز٪اص٭ ثؾٰش ٯغ٠ؼ ُٰ٦ ثبعشاء اٛو ٚ٠ه ٬ٜاٛز٪اص٭ ٩ث٠شبسٗخ هذح ٟوبٛغبد ٟوب. ُو ٬ٜعجٰ ٚا٠ٛضب ،ٙارا رٔبع٠ذ هذح ٟوبٛغبد اِ٤ٛبر ا٬ٛ اٛزاٗشح رار٨ب ،ثؾٰش ٯ٘٨٤ٟ ٚ٘ٛ ١٪ب راٗشر ٦اٛخبثٰخ اٛخبطخ ث ،٦ٯ٤جٌٮ ر٪كَٰ آٰٛبد ثشٟغٰخ ٩هزبدٯخ ٛؼ٠ب ١أ١ ا٠ٛوبٛغبد رزوبٟ ٟٚن ط٪سح طبٛؾخ ٜٛزاٗشح اٛشئٰغخ ،رغ٬٠ ٧ز ٥ا٠ٛغؤٛخ ثبرغبّ اٛخبثٰبد. رٰٜٔذٯبٗ ،ب ١ٯ٤لش ا ٬ٛا٠٘ٛجٰ٪رش ه ٬ٜأ ٦٣آٛخ رزبثوٰخ.رزـٜت ٟولٌٛ ٞبد ثشٟغخ ا٠٘ٛجٰ٪رش ٢ٟا٠ٛجشٟظ ر٪طَٰ اٛخ٪اسصٰٟبد ٗ٠ززبٰٛخ ٢ٟاٛزو٠ٰٜبد.رٔ ٝ٪ا٠ٛوبٛغبد ثزِٰ٤ز اٛجشاٟظ ه ٢ؿشٯْ رِٰ٤ز رو٠ٰٜبد اٛغ٨بص ثبٛززبثن ار ٯز ٞرِٰ٤ز رو٠ٰٜخ ٩اؽذح ُٮ ٛؾلخ ٟوٰ٤خ.ٯز ٞرِٰ٤ز ٗ ٚأٟش ُٮ عٜغٜخ ٢ٟاٛوٰٜ٠بد (عٜت اٛزو٠ٰٜخ ،عٜت اٛو٪ا ،ٟٚرِٰ٤ز اٛوٰٜ٠خ ٩رخضٯ ٢ا٤ٛزبئظ )٩.ه٤ذ ٟغز ٫٪اٛزشٌٰ ٚٯز ٞرٰٛ٪ذ اشبساد رؾٟ٘ ٞزوذدح ثِ٤ظ آ٪ٛذ. ٯز ٞارجبم ٧ز ٥اٛـشٯٔخ ه٣ ٬ٜؾ ٪أ٩عن ُٮ اٛز٤لٰ ٞاٛغ٠ٜٮ اِٛبئْ؛ اٛز٭ ٯغزخذ ٝاٛز٪اص٭ هٟ ٬ٜغز ٫٪اٛزو٠ٰٜبد. ٢ٟ٩أٗضش اٛـشّ ش٨شح ُٮ اٛز٤لٰ ٞا٠ٛز٪اص٭: -1ا٠ٛوبٛغبد ا٠ٛزوذدح ا٠ٛز٤بكشح )Symmetric Multiprocessor (SMP رغزوٟ ٚ٠وبٛغبد ٟزوذدح رزشبسٕ ثزاٗشح هبٟخ ٩ ،ٯضٰش اٛز٤لٰSMP ٞ ٓؼٰخ ارغبّ اٛخبثٰبد. -2اٛو٤بٰٓذ ٩ :Clustersاٛزٮ رزؤ ٢ٟ َٛهذح ؽ٪اعٰت ٟغزٜٔخ ٤ٟل٠خ ثؤع٪ٜة روب٣٩ٮ ٩ ،رزٰ٠ض ثٔذسر٨ب ه ٬ٜرؾ ٚ٠اٳهجبء اٛؾغبثٰخ اٛزٮ ٯ٪٤ء SMPه ٢ؽ٨ٜ٠ب. -3اٛؾ٪اعٰت راد اِ٤ٛبر اٛٸ٤ٟزل ٞا ٬ٛاٛزاٗشح Non-Uniform Memory .)NUMA( Access -4ؿشّ ر٤لٰ ٞاٛوزبد ُٮ اٛؾ٪عجخ ا٠ٛزغٰ٨خ ٩ :رغز٠ض٧ ٚز ٥اٛـشّ ٩ؽذح اٛؾغبة ٩ا٤٠ٛـْ ٢ٟ ALUأعٟ ٚوبٛغخ ٟزغ٨بد أ ٩طِِٰبد اٳهذاد اٛوبئ٠خٓ ٩.ذ اعزوٜ٠ذ ٛزِٰ٤ز ط َ٤اٳ٣ل٠خ ا٠ٛوشٍ٩ ثبٛؾ٪اعٰت اِٛبئٔخ .Super Computers التنظيواث الوتعذدة الوعالجاث Multiple Processor Organization هب٪ٰـشٯٔخ اٳٗضش شٛ اFlynn ٦ػو٩ ز٭َٰٛ ا٤زظٛ اٙب ٯضاٟ ،ب٨ُٰ زبؽخ٠ٛاصٯخ ا٪ز٠ٛغخ اٛوب٠ٛبد ا٣٘بُْٟ ا٩ خ٠ل٣َٰ اٳ٤زظٛ :ة٪ؾبعٛخ ا٠ل٣ٰخ ٳٛزبِٰٛبد ا٤زظٛ اٝ ٓذ ٓذ٩ 1- Single instruction, single data stream - SISD 2- Single instruction, multiple data stream - SIMD 3- Multiple instruction, single data stream - MISD 4-Multiple instruction, multiple data stream- MIMD Single Instruction, Single Data Stream - SISD Single processor ِشدٟ ظٛوبٟ -1 Single instruction stream ِشدح٠ٛبد ا٠ٰٜزوٛ ا٢ٟ ِٰٚز ع٤ ٯ-2 ِشدحٟ خ ُٮ راٗشح٣خضٟ وـٰبدٟ ٬ٜب ه٨ٔ ٯـج-3 Data stored in single memory Uni-processor ِئخٛ ا٥ز٧ غبد اٳؽبدٯخ ُٮٛوب٠ٛ رٔن ا-4 IBM 360/91 Single Instruction, Multiple Data Stream - SIMD Single machine instruction خٛٲٛ ِشدحٟ خ٠ٰٜ رو-1 Controls simultaneous execution ٢ٟزضا٠ِٰٛز ا٤زٛ ُٮ اٞ٘ رزؾ-2 Number of processing elements غخٛوب٠ٛبطش ا٤ ه٢ٟ وذدٛ -3 Lockstep basis زشبث٘خ٠ٛؽ ا٪خـُْٛ ا٩ -4.شُٔخٟ وـٰبدٟ غخ راٗشحٛوبٟ ظش٤ هٚ٘ٛ -5 Each processing element has associated data memory.ِخٜخزٟ غبدٛوبٟ ٚ ٓج٢ٟ وـٰبد٠ٛ ا٢ٟ ِخٜخزٟ هخ٪٠غٟ ٬ِٜز ه٤خ ر٠ٰٜ روٚٗ -6 Each instruction executed on different set of data by different processors Vector and array processors ِئخٛ ا٥ز٧ ٬ٛظِِٰٰخ اٛ ا٩ ٰخ٨زغ٠ٛغبد اٛوب٠ٛٮ ا٠ز٤ ر-7 Multiple Instruction, Single Data Stream - MISD Sequence of data بد٣جٰبٛ ا٢ٟ خٜغٜ عٙ اسعبٞٯز-1 Transmitted to set of processors غبدٛوب٠ٛ ا٢ٟ هخ٪٠غٟ ٬ٛا-2 َٜخزٟ بد٠ٰٜ روٚغٜب رغ٨٤ٟ ٚٗ ِز٤ٯ-3 Each processor executes different instruction sequence Never been implemented رغبسٯبٰٚ٘٨ٛزا ا٧ ِٰز٤ رٞٷ ٯز-4 Multiple Instruction, Multiple Data Stream- MIMD Set of processors غبدٛوب٠ٛ ا٢ٟ هخ٪٠غٟ ٝ٪ٔ ر-1 ِخٜخز٠ٛبد ا٠ٰٜزوٛ ا٢ٟ ٰبدٛززبٟ ِٰز٤ٓذ ثز٪ِٛظ ا٣ ُٮ-2 Simultaneously execute different instruction sequences Different sets of data ِخٜخزٟ بد٣هبد ثٰب٪٠غٟ ٬ٜه-3.ِئخٛ ا٥ز٧ ٢٠ػNUMA ٩ clusters ٩ SMPs خ٠ل٣ رٔن أ-4 Taxonomy of Parallel Processor Architectures (Flynn) ا٠ٛوبٛغبد ُٮ اٛز٤لٰ٧ ،MIMD ٞٮ ٛٴًشاع اٛوبٟخ ؛ ٗٓ ٞ٨٤ٟ ٚبدس هٟ ٬ٜوبٛغخ عٰ٠ن اٛزو٠ٰٜبد اٛٸصٟخ ٵعشاء اٛزؾ٪ٯ ٚا٤٠ٛبعت ٜٛجٰب٣بد.ٯ ٢٘٠رٔغٰ ٞاٛز٤لٰ٠بد MIMDsاُ ٬ٛش٩م ُْ٩ ا٪ٛعبئ ٚاٛزٮ ٯزظ ٚث٨ب ا٠ٛوبٛغبد. -1ارا ٗب٣ذ ا٠ٛوبٛغبد رشزشٕ ُٮ راٗشح ٟشزشٗخُ ،بٟ ٚٗ ١وبٛظ ٯغزـٰن ا٪ٛط ٙ٪ا ٬ٛاٛجشاٟظ ٩اٛجٰب٣بد ا٠ٛخض٣خ ُٮ اٛزاٗشح ا٠ٛشزشٗخ٩ ،رز٪اط ٚا٠ٛوبٛغبد ٟن ثوؼ٨ب اٛجوغ هجش ر ٖٜاٛزاٗشح. اٛش٘ ٚاٳٗضش شٰ٪هًب ٠ٛض٧ ٚزا ا٤ٛلب ٝٯُوشٍ ثبع ٞثب٠ٛوبٛغبد ا٠ٛزوذدح ا٠ٛز٠بصٜخ ( .) SMP ُٮ :SMP -Aرشزشٕ ٟوبٛغبد ٟزوذدح ُٮ راٗشح ٩اؽذح أٟ ٩غ٪٠هخ ٢ٟاٛز٩اٗش ه ٢ؿشٯْ ٣بٟٓ ٚشزشٕ أ٩ آٰٛخ سثؾ أخش٫؛ -Bاٛغ٠خ اٰ٠٠ٛضح ٨ٛزا ا٤ٛلب٧ ٝٮ أ ١ص ٢ٟا٪ٛط ٙ٪ا ٬ٛأ٭ ٤ٟـٔخ ٢ٟاٛزاٗشح رٔشٯجًب ِ٣غٚ٘ٛ ٦ ٟوبٛظ. اٛزـ٪س اٳؽذس ٨ٛزا اٛجٰ٤ب ٪٧ ١ر٤لٰ ٞا٪ٛط ٙ٪اٛٸ٤ٟزل ٞا ٬ٛاٛزاٗشح (٠ٗ.)NUMAب ٯ٪ؽٮ اٷعٞ ،ا ١ص ٢ٟا٪ٛط ٙ٪ا٤ٟ ٬ٛبؿْ ٟخزِٜخ ٢ٟاٛزاٗشح ٓذ ٯخز ٢ٟ َٜأعٟ ٚوبٛظ ٯزجن اٛز٤لٰ.NUMA ٞ ٩ -2ٯ ٢٘٠أ ١ٯز ٞر٪طٰٟ ٚغ٪٠هخ ٢ٟا٠ٛوبٛغبد اٳؽبدٯخ ا٠ٛغزٜٔخ أ ٩ا٠ٛوبٛغبد ا٠ٛزوذدح ا٠ٛز٤بكشح SMPثٰٰ٤ب ٛزش٘ ٚه٪ٔ٤دا ٩ ،ٯ٘ ١٪اٷرظب ٙثٰ ٢اٛؾ٪اعٰت هجش ٠ٟشاد صبثزخ أ ٩ث٪اعـخ شج٘خ ٟب. Parallel Organizations - SISD Parallel Organizations - SIMD Parallel Organizations - MIMD Shared Memory QUESTION What about cache Consistency? Parallel Organizations - MIMD Distributed Memory رو ٚ٠ا٪ٛؽذح ه ٬ٜدُْ ثٰب٣بد ٩اؽذ )٩ ٢ٟ )DSؽذح راٗشح ) ٟ.) MUن ،SIMDٷ رضا٤٧ ٙبٕ ٩ؽذح رؾ٘٩ ٞاؽذح ،رٔٝ٪ اٱ ١ثزٌزٯخ رذُْ رو٠ٰٜبد ٩اؽذ ا ٬ٛهذح ٓ.PUsذ ٯ٘١٪ PU ٚ٘ٛراٗشح ٟخظظخ خبطخ ث ،٦أٓ ٩ذ ر٘٤٧ ١٪بٕ راٗشح ٟشزشٗخ.أخٰشًاٟ ،ن ،MIMDر٪عذ ٩ؽذاد رؾٟ٘ ٞزوذدح، ٗ٨٤ٟ ٚب ٯٌز٭ رٰبس رو٠ٰٜبد ِ٤ٟظ ٚا PU ٬ٛاٛخبص ث.٦ ٓذ ٯ٘ ١٪ا٤ٛلب MIMD ٝهجبسح هٟ ٢وبٛغبد ٟزوذدح ثزاٗشح ٟشزشٗخ أ ٩ؽ٪اعٰت ٟزوذدح ثزاٗشح ٪ٟصهخ. Symmetric Multiprocessors الوعالجاث الوتعذدة الوناظرة ٯشٰش ا٤ٛلب SMP ٝا ٬ٛاٛجٰ٤ب ١ا٠ٛبد٭ ٳع٨ضح اٛؾبع٪ة ٩ا ٬ٛع٣ ٕ٪ٜلب ٝاٛزشٌٰ ٚاٛز٭ – ٯز٪اُْ ٟن ر ٖٛاٛجٰ٤ب.١ٯ ٢٘٠روشٯَ SMPه ٬ٜأ٣ ٦٣لب ٝؽبعت ٟغزٔ ٚثزار ٦ٛ ٦اٛخظبئض اٛزبٰٛخ: .1ٯؼ٪٣ ٞهب ١أ ٩أٗضش ٢ٟا٠ٛوبٛغبد ا٠ٛز٠بصٜخ راد اٵٟ٘ب٣بد ا٠ٛزٔبسثخ. – .2رشزشٕ ٧ز ٥ا٠ٛوبٛغبد ثِ٤ظ اٛزاٗشح اٛشئٰغٰخ ٩٩عبئ ٚاٵدخب / ٙاٵخشاط ٧٩ٮ ٟزظٜخ – ثجوؼ٨ب ث٪اعـخ ٣بٓ ٚأ ٩أ٭ ٣لب ٝارظب ٙداخٜٮ آخش ،ثؾٰش ٯ٘ ١٪ص ٢ٟا٪ٛط ٙ٪ا٬ٛ اٛزاٗشح ٟز٠بصًٜب رٔشٯجًب ٟ ٚ٘ٛوبٛظ. .3رشزشٕ عٰ٠ن ا٠ٛوبٛغبد ُٮ ا٪ٛط ٙ٪ا ٬ٛأع٨ضح اٵدخب / ٙاٵخشاط ،اٟب ٢ٟخٸِ٣ ٙظ – ا٪٤ٔٛاد أ ٢ٟ ٩خٸ٪٤ٓ ٙاد ٟخزِٜخ رُ٪ش ٟغبساد اِ٣ ٬ٛظ اٛغ٨بص. .4ٯٛ ٢٘٠غٰ٠ن ا٠ٛوبٛغبد أ ١رئد٭ ِ٣ظ ا٪ٛكبئَ (٤٧ ٢ٟ٩ب عبء ٟظـٜؼ ٟز٠بص.)ٚ – .5ٯز ٞاٛزؾُ٘ ٞٮ ا٤ٛلب ٢ٟ ٝخٸ٣ ٙلب ٝرشٌٰٟ ٚز٘ب ٟٚٯُ٪ش اٛزِبه ٚثٰ ٢ا٠ٛوبٛغبد ٩ثشاٟغ٨ب – هٟ ٬ٜغز٪ٯبد ا٪ٛكِٰخ ٩ا٠٨٠ٛخ ٩ا٩ َٜ٠ٛه٤بطش اٛجٰب٣بد. Symmetric Multiprocessors الوعالجاث الوتعذدة الوناظرة ا ١أ٤ٛبؽ 1 ٢ٟا٩ 4 ٬ٛاػؾخ.أٟب أ٤ٛـخ ُ 5زجٰ ٢أؽذ اٛز٤بٓؼبد ٟن ٣لبٟ ٝوبٛغخ ٟزوذد ػوَٰ اٛزشاثؾٗ ،و٪ٔ٤د ٟضٸُِ.ٮ ؽبٛخ اٛو٪ٔ٤د هبدح ٟب ر٘ ١٪ا٪ٛؽذح ا٠ٛبدٯخ ٜٛزِبه ٚهجبسح ه٢ سعبٛخ أٗ َٜٟ ٩بُ.ٟٚٮ ا٤ٛلب ،SMP ٝٯ ٢٘٠أ ١ٯ٘ ١٪اٛزِبه ٚهٟ ٬ٜغز ٫٪ه٤بطش اٛجٰب٣بد اِٛشدٯخ٩ ،ٯ ٢٘٠أ ١ٯ٘٤٧ ١٪بٕ دسعخ هبٰٛخ ٢ٟا٠ٛشبسٗخ ثٰ ٢اٛوٰٜ٠بد. ٯٔ٣ ٝ٪لب ٝرشٌٰ SMP ٚثغذٛ٩خ اٛوٰٜ٠بد أ ٩اٰ٤ٛبعت Threadsهجش عٰ٠ن ا٠ٛوبٛغبد.ٯ٠زٖٜ ا٤ٛلب SMP ٝهذدًا ٢ٟا٠ٛضاٯب ٟٔبس٣خ ثجٰ٤ب ١أؽبد٭ ا٠ٛوبٛظ ٣ ،زٗش ٨٤ٟب: SMP Advantages اٳداء :Performance ارا ٗب ٢ٟ ١ا ٢٘٠٠ٛر٤لٰ ٞاٛو ٚ٠اٛز٭ ٯزوٰ ٢ه ٬ٜاٛؾبعت أٰٛب ٝث ٦ثؾٰش ٯ ٢٘٠ا٣غبص ثوغ أعضاء اٛو ٚ٠ثبٛز٪اص٭ُ ،ب ١ا٤ٛلب ٝاٛز٭ ٯؾز?