ملخص معمارية الحاسوب PDF
Document Details

Uploaded by GrandMint7948
الجامعة الأسمرية
Tags
Related
- Computer Organization and Architecture PDF
- (The Morgan Kaufmann Series in Computer Architecture and Design) David A. Patterson, John L. Hennessy - Computer Organization and Design RISC-V Edition_ The Hardware Software Interface-Morgan Kaufmann-24-101-9-11.pdf
- Computer Organization and Design RISC-V Edition PDF
- (The Morgan Kaufmann Series in Computer Architecture and Design) David A. Patterson, John L. Hennessy - Computer Organization and Design RISC-V Edition_ The Hardware Software Interface-Morgan Kaufmann-102-258.pdf
- (The Morgan Kaufmann Series in Computer Architecture and Design) David A. Patterson, John L. Hennessy - Computer Organization and Design RISC-V Edition_ The Hardware Software Interface-Morgan Kaufmann-102-258-pages-4.pdf
- (The Morgan Kaufmann Series in Computer Architecture and Design) David A. Patterson, John L. Hennessy - Computer Organization and Design RISC-V Edition_ The Hardware Software Interface-Morgan Kaufmann-102-258-pages-5.pdf
Summary
يقدم هذا المستند ملخصًا لممارسة معمارية الحاسوب. يغطي المفهوم الأساسي للعمليات والهندسة في الحاسوب، ويقدم أمثلة مختلفة على أنظمة الحاسوب.
Full Transcript
ملخص معمارية الحاسوب الشيت األول : منهج "الهندسة والتنظيم" (:)Architecture & Organization .1 ###الهندسة ()Arc...
ملخص معمارية الحاسوب الشيت األول : منهج "الهندسة والتنظيم" (:)Architecture & Organization .1 ###الهندسة ()Architecture ** -تعريف** :الهندسة تتعلق بتصميم وبنية النظام الحاسوبي ،بما في ذلك مجموعة التعليمات ( )Instruction Setوعدد البتات ( )number of bitsالمستخدمة. ** -أمثلة**: -مجموعة التعليمات ()Instruction Set -عدد البتات ()number of bits -معالجة البيانات ()Data Processing -تخزين البيانات ()Data Storage -نقل البيانات ()Data Movement -التحكم ()Control .2 ###التنظيم ()Organization ** -تعريف** :التنظيم يتعلق بكيفية تنفيذ وتصميم مكونات النظام الحاسوبي ،بما في ذلك وحدات المعالجة المركزية ( )CPUوالذاكرة واألجهزة الطرفية. ** -أمثلة**: -تنظيم الذاكرة ()Memory Organization -تنظيم وحدات اإلدخال واإلخراج ()I/O Organization -تنظيم وحدات المعالجة المركزية ()CPU Organization .3 ###أمثلة على األنظمة ** -معالجات :**Intel X86مثال على معمارية معروفة. ** -عائلة :**IBM System/370مثال آخر على معمارية معروفة. .4 ###الهيكل والوظيفة ()Structure & Function ** -الهيكل ( :**)Structureيشير إلى كيفية تنظيم مكونات النظام الحاسوبي. ** -الوظيفة ( :**)Functionتشير إلى العمليات التي يمكن للنظام الحاسوبي تنفيذها. .5 ###عرض وظيفي للحاسوب ()Functional View of the Computer ** -معالجة البيانات ( :**)Data Processingالعمليات التي تتعلق بمعالجة البيانات. ** -تخزين البيانات ( :**)Data Storageالعمليات التي تتعلق بتخزين البيانات. ** -نقل البيانات ( :**)Data Movementالعمليات التي تتعلق بنقل البيانات بين مكونات النظام. ** -التحكم ( :**)Controlالعمليات التي تتعلق بالتحكم في مكونات النظام. .6 ###العمليات ()Operations ** -نقل البيانات ( :**)Data Movementيشمل نقل البيانات بين الذاكرة واألجهزة الطرفية. ** -تخزين البيانات ( :**)Storageيشمل تخزين البيانات في الذاكرة. ** -معالجة البيانات ( :**)Processingيشمل معالجة البيانات من وإلى الذاكرة. ** -معالجة البيانات من الذاكرة إلى اإلدخال/اإلخراج ( :**)Processing from storage to I/Oيشمل معالجة البيانات بين الذاكرة ووحدات اإلدخال واإلخراج. .7 ###مستويات الحاسوب ()The Computer Level Hierarchy ** -المستوى :**6يشمل لغات البرمجة عالية المستوى مثل ++Cو.Java ** -المستوى :**5يشمل المترجمات ( )Compilersوالمفسرات (.)Interpreters ** -المستوى :**4يشمل لغات التجميع (.)Assembly Languages ** -المستوى :**3يشمل بنية مجموعة التعليمات (.)ISA ** -المستوى :**2يشمل تنظيم المعالج (.)Processor Organization ** -المستوى :**1يشمل التحكم في المعالج (.)Processor Control ** -المستوى :**0يشمل الدوائر اإللكترونية (.)Electronic Circuits الشيت الثاني : ###تطور الحاسوب وأدائه ####بداية الحاسوب **.1المرحلة األولى**: :**1642** -اختراع أول آلة حاسبة ميكانيكية بواسطة بليز باسكال. :**1835** -تشارلز باباج يصمم أول حاسوب ميكانيكي. **.2المرحلة الثانية**: :**1944** -بناء أول حاسوب إلكتروني رقمي (.)ENIAC :**1948** -تطوير أول حاسوب يستخدم الترانزستورات بدالً من األنابيب المفرغة. ####األجيال األولى للحواسيب **.1الجيل األول :األنابيب المفرغة (:**)1957-1946 -استخدام األنابيب المفرغة في بناء الحواسيب. -مثال.ENIAC : **.2الجيل الثاني :الترانزستورات (:**)1964-1958 -استخدام الترانزستورات بدالً من األنابيب المفرغة. -مثال.IBM 7000 : **.3الجيل الثالث :الدوائر المتكاملة (:**)1971-1965 -استخدام الدوائر المتكاملة في بناء الحواسيب. -مثال.IBM System/360 : **.4الجيل الرابع :المعالجات الدقيقة (-1971اآلن)**: -استخدام المعالجات الدقيقة في بناء الحواسيب. -مثال :معالجات .Intel ####قانون مور :**1965** -جوردون مور يتنبأ بأن عدد الترانزستورات في الشريحة سيزداد بمعدل الضعف كل 18 شهرا. ً ####تحسينات األداء ** -زيادة سعة الذاكرة المؤقتة ( :**)Cacheتحسين أداء الحواسيب من خالل زيادة سعة الذاكرة المؤقتة. ** -تطوير بنية المعالجات** :تحسين بنية المعالجات لزيادة سرعة األداء. ###تقييم األداء ** -معدل تنفيذ التعليمات** :قياس أداء الحاسوب بنا ًء على عدد التعليمات التي يمكن تنفيذها في الثانية. ** -توازن األداء** :تحقيق توازن بين مكونات الحاسوب المختلفة مثل المعالج والذاكرة واألجهزة الطرفية. ###قانون مور ()Moore's Law **قانون مور** هو مالحظة تنبأ بها جوردون مور ،أحد مؤسسي شركة إنتل ،في عام .1965ينص القانون شهرا ،مما يؤدي إلى زيادة كبيرة في ً على أن عدد الترانزستورات في الشريحة يتضاعف تقريبًا كل 18 أداء الحواسيب وتقليل تكاليفها. ####النقاط الرئيسية لقانون مور: شهرا. ً ** -زيادة عدد الترانزستورات** :يتضاعف عدد الترانزستورات في الشريحة كل 18 ** -تحسين األداء** :زيادة عدد الترانزستورات يؤدي إلى تحسين أداء الحواسيب. ** -تقليل التكلفة** :زيادة عدد الترانزستورات يؤدي إلى تقليل تكلفة إنتاج الشرائح. ** -التطور التكنولوجي** :قانون مور يعكس التطور السريع في التكنولوجيا وصناعة الشرائح. ** -التحديات** :مع مرور الوقت ،أصبح من الصعب الحفاظ على نفس معدل الزيادة في عدد الترانزستورات بسبب القيود الفيزيائية والتكنولوجية. قانون مور كان له تأثير كبير على صناعة التكنولوجيا والحواسيب ،وساهم في دفع عجلة االبتكار والتطور في هذا المجال. الشيت الثالث : ###وصف نظام الحاسوب ####مكونات الحاسوب **.1المكونات األساسية**: ** -وحدة المعالجة المركزية ( :**)CPUتشمل وحدة التحكم ( )Control Unitووحدة الحساب والمنطق (.)Arithmetic and Logic Unit ** -الذاكرة الرئيسية ( :**)Main Memoryتخزن التعليمات والبيانات الالزمة لتنفيذ البرامج. ** -وحدات اإلدخال واإلخراج ( :**)I/O Unitsتشمل األجهزة التي تسمح بإدخال البيانات إلى الحاسوب وإخراج النتائج. **.2التفاعل بين المكونات**: ** -التبادل** :يتم تبادل البيانات بين المكونات المختلفة عبر مسارات االتصال. ** -التحكم** :يتم التحكم في العمليات المختلفة بواسطة وحدة التحكم. ####ما هو البرنامج؟ ** -تعريف** :البرنامج هو مجموعة من التعليمات التي تُنفذ بترتيب معين لتحقيق هدف محدد. ** -العمليات** :تشمل العمليات الحسابية والمنطقية والتحكم في تدفق البيانات. ####دورة التعليمات **.1جلب التعليمات (:**)Fetch Instruction -يتم جلب التعليمات من الذاكرة الرئيسية إلى وحدة المعالجة المركزية. -يتم تخزين التعليمات في سجل التعليمات (.)Instruction Register **.2تنفيذ التعليمات (:**)Execute Instruction -يتم تنفيذ التعليمات المخزنة في سجل التعليمات. -تشمل العمليات الحسابية والمنطقية ونقل البيانات والتحكم. ####المقاطعات ()Interrupts ** -تعريف** :المقاطعة هي إشارة تُرسل إلى وحدة المعالجة المركزية إلعالمها بوجود حدث يحتاج إلى معالجة فورية. ** -أنواع المقاطعات**: ** -مقاطعات األجهزة** :تحدث عندما يحتاج جهاز إدخال أو إخراج إلى التفاعل مع وحدة المعالجة المركزية. ** -مقاطعات البرمجيات** :تحدث عندما يحتاج البرنامج إلى تنفيذ عملية معينة. ####تدفق البرنامج ** -التحكم في تدفق البرنامج** :يتم التحكم في تدفق البرنامج بواسطة التعليمات التي تحدد العمليات التي يجب تنفيذها. ###االتصال بين المكونات ** -االتصال بالذاكرة** :يتم تبادل البيانات والعناوين وإشارات التحكم بين وحدة المعالجة المركزية والذاكرة. ** -االتصال بوحدات اإلدخال واإلخراج** :يتم تبادل البيانات وإشارات التحكم بين وحدة المعالجة المركزية ووحدات اإلدخال واإلخراج. الشيت الرابع : ###ملخص حول الحافالت ( )Busesفي أنظمة الحاسوب ####تعريف الحافالت الحافالت هي مسارات اتصال تستخدم لنقل البيانات بين مكونات الحاسوب المختلفة.تتكون الحافالت من ثالثة أنواع رئيسية: **.1حافلة البيانات ( :**)Data Busتنقل البيانات بين المكونات. **.2حافلة العناوين ( :**)Address Busتنقل العناوين التي تحدد مواقع البيانات في الذاكرة. **.3حافلة التحكم ( :**)Control Busتنقل إشارات التحكم لتنظيم العمليات بين المكونات. ####أنواع الحافالت **.1حافلة البيانات (:**)Data Bus -تنقل البيانات بين المكونات. -عرض الحافلة ( )Bus Widthيحدد كمية البيانات التي يمكن نقلها في وقت واحد. -يمكن أن تكون بعرض 128 ،64 ،32 ،16 ،8بت. **.2حافلة العناوين (:**)Address Bus -تنقل العناوين التي تحدد مواقع البيانات في الذاكرة. -عرض الحافلة يحدد عدد المواقع التي يمكن الوصول إليها. -على سبيل المثال ،حافلة بعرض 16بت يمكنها الوصول إلى K64موقع. **.3حافلة التحكم (:**)Control Bus -تنقل إشارات التحكم لتنظيم العمليات بين المكونات. -تشمل إشارات مثل قراءة/كتابة البيانات ،وإشارات المقاطعة ،وإشارات الحالة. ####تصميم الحافالت **.1نوع الحافلة (:**)Type ** -مخصصة ( :**)Dedicatedحافالت مخصصة لنقل نوع معين من البيانات. ** -متعددة االستخدام ( :**)Multiplexedحافالت تستخدم لنقل أنواع متعددة من البيانات. **.2طريقة التحكيم (:**)Method of Arbitration ** -مركزية ( :**)Centralizedيتم التحكم في الوصول إلى الحافلة بواسطة وحدة تحكم مركزية. ** -موزعة ( :**)Distributedيتم التحكم في الوصول إلى الحافلة بواسطة وحدات متعددة. **.3التوقيت (:**)Timing ** -متزامن ( :**)Synchronousيتم نقل البيانات بنا ًء على إشارة ساعة مشتركة. ** -غير متزامن ( :**)Asynchronousيتم نقل البيانات بدون إشارة ساعة مشتركة. ####مشاكل الحافالت األحادية ** -االزدحام** :يمكن أن يحدث ازدحام في الحافلة عندما تحاول مكونات متعددة الوصول إليها في نفس الوقت. ** -األداء** :يمكن أن يكون أداء الحافلة محدودًا بسبب االزدحام والتأخير في نقل البيانات. ####حلول لتحسين األداء ** -استخدام حافالت متعددة ( :**)Multiple Busesيمكن استخدام حافالت متعددة لتقليل االزدحام وتحسين األداء. ** -استخدام ذاكرة مؤقتة ( :**)Cacheيمكن استخدام ذاكرة مؤقتة لتخزين البيانات المؤقتة وتقليل الحاجة للوصول إلى الذاكرة الرئيسية. الشيت الخامس : ###وحدة الحساب والمنطق ()ALU ####تعريف وحدة الحساب والمنطق ( )ALUهي جزء أساسي من وحدة المعالجة المركزية ( )CPUفي الحاسوب.تقوم ALUبتنفيذ العمليات الحسابية (مثل الجمع والطرح) والعمليات المنطقية (مثل ANDو .)OR ####المكونات **.1مدخالت :**ALU -البيانات التي يتم معالجتها. -إشارات التحكم التي تحدد نوع العملية التي سيتم تنفيذها. **.2مخرجات :**ALU -النتائج الحسابية أو المنطقية. -إشارات الحالة ( )Flagsالتي تشير إلى نتائج معينة مثل الصفر أو الفائض. ####العمليات األساسية **.1الجمع (:**)Addition -عملية جمع رقمين ثنائيين. ضا إذا كانت النتيجة أكبر من السعة المتاحة. -يمكن أن تنتج عملية الجمع فائ ً **.2الطرح (:**)Subtraction -عملية طرح رقمين ثنائيين. -يمكن تنفيذ الطرح باستخدام الجمع مع المكمل الثنائي للرقم المطروح. **.3الضرب (:**)Multiplication -عملية ضرب رقمين ثنائيين. -يمكن تنفيذ الضرب باستخدام جمع متكرر. **.4القسمة (:**)Division -عملية قسمة رقمين ثنائيين. -يمكن تنفيذ القسمة باستخدام طرح متكرر. ####تمثيل األعداد **.1األعداد الصحيحة (:**)Integer Representation -يتم تمثيل األعداد باستخدام النظام الثنائي ( 0و .)1 -يمكن تمثيل األعداد الموجبة والسالبة باستخدام المكمل الثنائي (.)Two's Complement **.2األعداد العائمة (:**)Floating Point -يتم تمثيل األعداد العشرية باستخدام النظام العائم. -يتكون العدد العائم من جزء معنوي ( )Significandوأساس ( )Baseوأس (.)Exponent ####فوائد المكمل الثنائي ** -سهولة العمليات الحسابية** :يمكن تنفيذ الجمع والطرح بسهولة باستخدام المكمل الثنائي. ** -تمثيل األعداد السالبة** :يمكن تمثيل األعداد السالبة بشكل بسيط وفعال. الشيت السادس : ###مجموعات التعليمات :الخصائص والوظائف ####تعريف مجموعة التعليمات مجموعة التعليمات هي مجموعة من التعليمات التي يمكن لوحدة المعالجة المركزية ( )CPUتنفيذها.يتم تمثيل هذه التعليمات عادة ً بالكود الثنائي ( )Binaryأو بلغة التجميع (.)Assembly ####مكونات التعليمات **.1كود العملية ( :**)Operation Codeيحدد نوع العملية التي سيتم تنفيذها. **.2مرجع المعامل المصدر ( :**)Source Operand Referenceيحدد مصدر البيانات. **.3مرجع المعامل الناتج ( :**)Result Operand Referenceيحدد مكان تخزين الناتج. **.4مرجع التعليمات التالية ( :**)Next Instruction Referenceيحدد التعليمات التالية التي سيتم تنفيذها. ####أنواع التعليمات **.1معالجة البيانات ( :**)Data Processingتشمل العمليات الحسابية والمنطقية. **.2تخزين البيانات ( :**)Data Storageتشمل عمليات القراءة والكتابة في الذاكرة. **.3نقل البيانات ( :**)Data Movementتشمل عمليات اإلدخال واإلخراج. **.4التحكم في تدفق البرنامج ( :**)Program Flow Controlتشمل التعليمات التي تتحكم في تدفق البرنامج. ####عدد العناوين في التعليمات 3**.1عناوين** :تشمل المعامل األول والمعامل الثاني والناتج. 2**.2عنوانين** :عنوان واحد يستخدم كمعامل وناتج. 1**.3عنوان** :عنوان واحد فقط ،والعنوان الثاني يكون ضمنيًا. 0**.4عنوان** :جميع العناوين تكون ضمنية وتستخدم المكدس (.)Stack ####أمثلة على التعليمات ** -تعليمات بثالثة عناوين**: ```plaintext SUB R1, A, B ; R1 = A - B MUL R2, D, E ; R2 = D * E ``` ** -تعليمات بعنوانين**: ```plaintext MOV R1, A ; R1 = A SUB R1, B ; R1 = R1 - B ``` ** -تعليمات بعنوان واحد**: ```plaintext LOAD A ; AC = A SUB B ; AC = AC - B ``` ** -تعليمات بدون عناوين**: ```plaintext PUSH A PUSH B SUB ``` ####أنواع العمليات **.1نقل البيانات ( :**)Data Transferتشمل عمليات التحميل والتخزين والنقل. **.2العمليات الحسابية ( :**)Arithmeticتشمل الجمع والطرح والضرب والقسمة. **.3العمليات المنطقية ( :**)Logicalتشمل ANDو ORو .NOT **.4التحويل ( :**)Conversionتشمل تحويل البيانات بين أنواع مختلفة. **.5اإلدخال واإلخراج ( :**)I/Oتشمل عمليات اإلدخال واإلخراج. **.6التحكم في النظام ( :**)System Controlتشمل تعليمات التحكم في النظام. **.7نقل التحكم ( :**)Transfer of Controlتشمل تعليمات القفز والنداء والعودة. ###عدد العناوين في التعليمات ####تعريف عدد العناوين في التعليمات يشير إلى عدد المعامالت التي يمكن أن تحتويها التعليمات في وحدة المعالجة المركزية (.)CPUيمكن أن تكون التعليمات ذات عنوان واحد ،عنوانين ،ثالثة عناوين ،أو بدون عناوين. ####أنواع العناوين **.1ثالثة عناوين**: -تشمل المعامل األول ،المعامل الثاني ،والناتج. -مثال`a = b + c` : -غير شائعة ألنها تحتاج إلى كلمات طويلة جدًا لتخزين كل شيء. **.2عنوانين**: -عنوان واحد يستخدم كمعامل وناتج. -مثال`a = a + b` : -تقلل من طول التعليمات ولكنها تتطلب تخزين مؤقت لبعض النتائج. **.3عنوان واحد**: -عنوان واحد فقط ،والعنوان الثاني يكون ضمنيًا. -شائعة في األجهزة القديمة. -عادة ً ما يكون العنوان الضمني هو المسجل (.)Accumulator **.4بدون عناوين**: -جميع العناوين تكون ضمنية وتستخدم المكدس (.)Stack -مثال: ```plaintext PUSH A PUSH B ADD POP C ``` ####قرارات التصميم **.1مجموعة العمليات (:**)Operation Repertoire -ما هي العمليات التي يجب دعمها؟ -ما هي أنواع البيانات التي يجب دعمها؟ **.2أنواع البيانات (:**)Data Types -تشمل العناوين ،األرقام ،األحرف ،والبيانات المنطقية. **.3تنسيقات التعليمات (:**)Instruction Formats -طول كود العملية (.)Opcode Length -عدد العناوين في التعليمات. **.4المسجالت (:**)Registers -عدد المسجالت المتاحة. -أنواع المسجالت المستخدمة. ####أنواع العمليات **.1نقل البيانات (:**)Data Transfer -تشمل عمليات التحميل والتخزين والنقل. -مثال.Load, Store, Push, Pop, Move : **.2العمليات الحسابية (:**)Arithmetic -تشمل الجمع ،الطرح ،الضرب ،والقسمة. -مثال.Add, Subtract, Multiply, Divide : **.3العمليات المنطقية (:**)Logical -تشمل .AND, OR, XOR, NOT ضا عمليات اإلزاحة والدوران. -تشمل أي ً **.4التحويل (:**)Conversion -تحويل البيانات بين أنواع مختلفة. **.5اإلدخال واإلخراج (:**)I/O -تشمل عمليات اإلدخال واإلخراج. **.6التحكم في النظام (:**)System Control -تشمل تعليمات التحكم في النظام. **.7نقل التحكم (:**)Transfer of Control -تشمل تعليمات القفز والنداء والعودة. الشيت السابع : ###أوضاع العنونة وتنسيقات التعليمات ####أوضاع العنونة **.1العنونة الفورية (:**)Immediate Addressing -يتم تضمين المعامل مباشرة في التعليمات. -مثال( `ADD 5` :أضف 5إلى محتويات المسجل). **.2العنونة المباشرة (:**)Direct Addressing -يتم تضمين عنوان المعامل في التعليمات. -مثال( `ADD A` :أضف محتويات الموقع Aإلى المسجل). **.3العنونة غير المباشرة (:**)Indirect Addressing -يتم تضمين عنوان يشير إلى عنوان آخر يحتوي على المعامل. -مثال( `ADD (A)` :أضف محتويات الموقع المشار إليه بواسطة Aإلى المسجل). **.4العنونة بواسطة المسجل (:**)Register Addressing -يتم تضمين المسجل الذي يحتوي على المعامل في التعليمات. -مثال( `ADD R` :أضف محتويات المسجل Rإلى المسجل). **.5العنونة غير المباشرة بواسطة المسجل (:**)Register Indirect Addressing -يتم تضمين مسجل يحتوي على عنوان يشير إلى المعامل. -مثال( `ADD (R)` :أضف محتويات الموقع المشار إليه بواسطة المسجل Rإلى المسجل). **.6العنونة باإلزاحة (:**)Displacement Addressing -يتم حساب العنوان الفعلي بإضافة قيمة اإلزاحة إلى محتويات مسجل. -مثال.`EA = A + (R)` : **.7العنونة النسبية (:**)Relative Addressing -يتم حساب العنوان الفعلي بإضافة قيمة اإلزاحة إلى عداد البرنامج (.)PC -مثال.`EA = A + (PC)` : **.8العنونة بواسطة المكدس (:**)Stack Addressing -يتم استخدام المكدس لتخزين واسترجاع المعامالت. -مثال( `ADD` :أضف أعلى عنصرين في المكدس). ####تنسيقات التعليمات **.1طول التعليمات (:**)Instruction Length -يمكن أن يختلف طول التعليمات بنا ًء على نوع العملية وعدد المعامالت. -يمكن أن تكون التعليمات بطول ثابت أو متغير. **.2تنسيق التعليمات (:**)Instruction Format -يتضمن كود العملية ( )Opcodeوالمعامالت. -يمكن أن يكون هناك تنسيقات مختلفة للتعليمات بنا ًء على نوع العملية وعدد المعامالت. ####أمثلة على التعليمات ** -تعليمات فورية**: ```plaintext ADD 5 ``` ** -تعليمات مباشرة**: ```plaintext ADD A ``` ** -تعليمات غير مباشرة**: ```plaintext )ADD (A ``` ** -تعليمات بواسطة المسجل**: ```plaintext ADD R ``` ** -تعليمات غير مباشرة بواسطة المسجل**: ```plaintext )ADD (R ``` ** -تعليمات باإلزاحة**: ```plaintext )EA = A + (R ``` ** -تعليمات نسبية**: ```plaintext )EA = A + (PC ``` ** -تعليمات بواسطة المكدس**: ```plaintext ADD ``` الشيت التاسع : ###الذاكرة وذاكرة التخزين المؤقت ####الخصائص **.1الموقع (:**)Location :**CPU** -الذاكرة الموجودة داخل وحدة المعالجة المركزية. ** -الذاكرة الداخلية ( :**)Internalمثل ذاكرة الوصول العشوائي ( )RAMوذاكرة التخزين المؤقت (.)Cache ** -الذاكرة الخارجية ( :**)Externalمثل األقراص الصلبة (.)Hard Disk **.2السعة (:**)Capacity -تعتمد سعة الذاكرة على حجم الكلمة ( )Word sizeوعدد العناوين الممكنة. **.3وحدة النقل (:**)Unit of Transfer -تعتمد وحدة النقل على حجم البيانات التي يمكن نقلها في وقت واحد ،مثل البتات ( )Bitsأو الكلمات (.)Words **.4طريقة الوصول (:**)Access Method ** -التسلسلي ( :**)Sequentialيتم الوصول إلى البيانات بترتيب معين. ** -المباشر ( :**)Directيمكن الوصول إلى البيانات مباشرة باستخدام العناوين. ** -العشوائي ( :**)Randomيمكن الوصول إلى أي موقع ذاكرة بشكل عشوائي. ** -الترابطي ( :**)Associativeيتم الوصول إلى البيانات بنا ًء على محتواها. **.5األداء (:**)Performance ** -زمن الوصول ( :**)Access Timeالوقت المستغرق للوصول إلى البيانات. ** -زمن دورة الذاكرة ( :**)Memory Cycle Timeالوقت المستغرق إلتمام دورة كاملة من العمليات. ** -معدل النقل ( :**)Transfer Rateمعدل نقل البيانات بين الذاكرة والمكونات األخرى. **.6النوع الفيزيائي (:**)Physical Type ** -أشباه الموصالت ( :**)Semiconductorمثل ذاكرة الوصول العشوائي (.)RAM ** -المغناطيسية ( :**)Magneticمثل األقراص الصلبة واألشرطة. ** -البصرية ( :**)Opticalمثل األقراص المدمجة ( )CDوأقراص الفيديو الرقمية (.)DVD **.7الخصائص الفيزيائية (:**)Physical Characteristics ** -التآكل ( :**)Decayمدى تحمل الذاكرة للتآكل. ** -التطاير ( :**)Volatilityمدى احتفاظ الذاكرة بالبيانات عند انقطاع التيار الكهربائي. ** -استهالك الطاقة ( :**)Power Consumptionكمية الطاقة المستهلكة. **.8التنظيم (:**)Organisation -كيفية تنظيم البيانات داخل الذاكرة ،مثل تنظيم البيانات في شكل بتات أو كلمات. ####التسلسل الهرمي للذاكرة **.1المسجالت ( :**)Registersأسرع أنواع الذاكرة وأقربها إلى وحدة المعالجة المركزية. **.2ذاكرة التخزين المؤقت ( :**)Cache Memoryذاكرة سريعة تستخدم لتخزين البيانات التي يتم الوصول إليها بشكل متكرر. **.3الذاكرة الرئيسية ( :**)Main Memoryمثل ذاكرة الوصول العشوائي (.)RAM **.4ذاكرة القرص ( :**)Disk Cacheتستخدم لتسريع الوصول إلى البيانات المخزنة على األقراص الصلبة. **.5األقراص الصلبة ( :**)Diskتستخدم لتخزين البيانات بشكل دائم. **.6الذاكرة البصرية ( :**)Optical Memoryمثل األقراص المدمجة وأقراص الفيديو الرقمية. **.7األشرطة ( :**)Tapeتستخدم لتخزين البيانات بشكل دائم ولكنها بطيئة في الوصول. ####األداء ** -زمن الوصول ( :**)Access Timeالوقت المستغرق للوصول إلى البيانات. ** -زمن دورة الذاكرة ( :**)Memory Cycle Timeالوقت المستغرق إلتمام دورة كاملة من العمليات. ** -معدل النقل ( :**)Transfer Rateمعدل نقل البيانات بين الذاكرة والمكونات األخرى. ####أنواع الذاكرة الفيزيائية ** -أشباه الموصالت ( :**)Semiconductorمثل ذاكرة الوصول العشوائي (.)RAM ** -المغناطيسية ( :**)Magneticمثل األقراص الصلبة واألشرطة. ** -البصرية ( :**)Opticalمثل األقراص المدمجة ( )CDوأقراص الفيديو الرقمية (.)DVD ** -أخرى ( :**)Othersمثل الذاكرة الفقاعية ( )Bubble Memoryوالهولوغرام (.)Hologram ###نظرة عامة على عملية ذاكرة التخزين المؤقت ()Cache ####عملية ذاكرة التخزين المؤقت **.1طلب البيانات** :عندما تحتاج وحدة المعالجة المركزية ( )CPUإلى بيانات معينة ،فإنها تبحث أوالً في ذاكرة التخزين المؤقت (.)Cache **. 2التحقق من الذاكرة المؤقتة** :إذا كانت البيانات المطلوبة موجودة في ذاكرة التخزين المؤقت ( ،)Cache Hitيتم استرجاعها بسرعة.إذا لم تكن موجودة ( ،)Cache Missيتم البحث عنها في الذاكرة الرئيسية (.)RAM **. 3جلب البيانات** :إذا كانت البيانات موجودة في الذاكرة الرئيسية ،يتم جلبها وتخزينها في ذاكرة التخزين المؤقت الستخدامها في المستقبل. **. 4تحديث الذاكرة المؤقتة** :يتم تحديث ذاكرة التخزين المؤقت بانتظام لضمان أن البيانات األكثر استخدا ًما متاحة بسرعة. ####هيكل ذاكرة التخزين المؤقت والذاكرة الرئيسية ** -الذاكرة الرئيسية ( :**)Main Memoryتحتوي على البيانات األساسية التي يتم الوصول إليها بشكل تكرارا. ً أقل ** -ذاكرة التخزين المؤقت ( :**)Cache Memoryتحتوي على البيانات التي يتم الوصول إليها بشكل متكرر لتسريع عملية الوصول. ####تصميم ذاكرة التخزين المؤقت **.1العنونة ( :**)Addressingيمكن أن تكون العنونة منطقية أو فيزيائية. **.2الحجم ( :**)Sizeيعتمد حجم ذاكرة التخزين المؤقت على كمية البيانات التي يمكن تخزينها. **.3وظيفة التعيين ( :**)Mapping Functionتحدد كيفية تعيين البيانات من الذاكرة الرئيسية إلى ذاكرة التخزين المؤقت. **.4خوارزمية االستبدال ( :**)Replacement Algorithmتحدد كيفية استبدال البيانات القديمة في ذاكرة التخزين المؤقت بالبيانات الجديدة. **.5سياسة الكتابة ( :**)Write Policyتحدد كيفية كتابة البيانات إلى الذاكرة الرئيسية. **.6حجم الكتلة ( :**)Block Sizeيحدد حجم الكتل التي يتم نقلها بين الذاكرة الرئيسية وذاكرة التخزين المؤقت. **.7عدد ذاكرات التخزين المؤقت ( :**)Number of Cachesيمكن أن يكون هناك مستويات متعددة من ذاكرات التخزين المؤقت (.)L3 ،L2 ،L1 ####سياسات الكتابة **.1الكتابة المباشرة ( :**)Write Throughيتم كتابة البيانات إلى الذاكرة الرئيسية وذاكرة التخزين المؤقت في نفس الوقت. **.2الكتابة الخلفية ( :**)Write Backيتم كتابة البيانات إلى ذاكرة التخزين المؤقت فقط ،ويتم تحديث الذاكرة الرئيسية الحقًا. ####خوارزميات االستبدال مؤخرا ( :**)Least Recently Used - LRUيتم استبدال البيانات التي لم يتم ً **.1األقل استخدا ًما استخدامها لفترة طويلة. دخوال ،األول خرو ًجا ( :**)First In, First Out - FIFOيتم استبدال البيانات التي دخلت ً أوال. ً **.2األول **.3األقل استخدا ًما بشكل متكرر ( :**)Least Frequently Used - LFUيتم استبدال البيانات التي تم استخدامها بشكل أقل. **.4عشوائي ( :**)Randomيتم استبدال البيانات بشكل عشوائي. الشيت العاشر : ###الذاكرة الداخلية ####ذاكرة أشباه الموصالت ** -ذاكرة الوصول العشوائي ( :**)RAMذاكرة متطايرة تستخدم لتخزين البيانات مؤقتًا.يمكن أن تكون ثابتة ( )Staticأو ديناميكية (.)Dynamic ** -ذاكرة القراءة فقط ( :**)ROMذاكرة غير متطايرة تستخدم لتخزين البيانات التي ال تتغير.تشمل أنواعها: :**PROM** -قابلة للبرمجة مرة واحدة. :**EPROM** -قابلة للمسح وإعادة البرمجة باستخدام األشعة فوق البنفسجية. :**EEPROM** -قابلة للمسح وإعادة البرمجة كهربائيًا. ** -ذاكرة فالش** :نوع من EEPROMيمكن مسحه وإعادة برمجته كهربائيًا. ####تشغيل خاليا الذاكرة ** -الكتابة ( :**)Writeيتم كتابة البيانات إلى خلية الذاكرة. ** -القراءة ( :**)Readيتم قراءة البيانات من خلية الذاكرة. ####ذاكرة الوصول العشوائي الديناميكية ()DRAM ** -الهيكل** :تتكون من مكثفات وترانزستورات. ** -التشغيل** :تحتاج إلى تحديث مستمر للحفاظ على البيانات. ** -المزايا** :سعة تخزين عالية وتكلفة منخفضة. ** -العيوب** :بطيئة مقارنة بذاكرة الوصول العشوائي الثابتة (.)SRAM ####ذاكرة الوصول العشوائي الثابتة ()SRAM ** -الهيكل** :تتكون من مفاتيح تشغيل/إيقاف. ** -التشغيل** :ال تحتاج إلى تحديث مستمر. ** -المزايا** :سريعة وموثوقة. ** -العيوب** :تكلفة عالية وسعة تخزين أقل. ####مقارنة بين SRAMو DRAM :**SRAM** -أسرع ،ال تحتاج إلى تحديث ،تستخدم في ذاكرة التخزين المؤقت (.)Cache :**DRAM** -أبطأ ،تحتاج إلى تحديث ،تستخدم في الذاكرة الرئيسية (.)Main Memory ####أنواع ذاكرة القراءة فقط ()ROM :**PROM** -قابلة للبرمجة مرة واحدة. :**EPROM** -قابلة للمسح وإعادة البرمجة باستخدام األشعة فوق البنفسجية. :**EEPROM** -قابلة للمسح وإعادة البرمجة كهربائيًا. ** -ذاكرة فالش** :نوع من EEPROMيمكن مسحه وإعادة برمجته كهربائيًا. ###نموذج DRAMبسعة 16ميجابت ()M x 44 ####التنظيم النموذجي لذاكرة DRAMبسعة 16ميجابت ** -مصفوفة الذاكرة ( :**)Memory Arrayتتكون من 4 × 2048 × 2048بت. ** -دوائر التحديث ( :**)Refresh Circuitryتضمن الحفاظ على البيانات عن طريق تحديث المكثفات بانتظام. ** -تمكين الكتابة ( :**)Write Enable - WEيسمح بكتابة البيانات إلى الذاكرة. ** -تمكين اإلخراج ( :**)Output Enable - OEيسمح بقراءة البيانات من الذاكرة. ** -مخزن البيانات ( :**)Data Bufferيخزن البيانات المدخلة أو المخرجة . ####مكونات نموذج DRAMبسعة 256كيلو بايت ** -تنظيم الوحدة ( :**)Module Organizationيتكون من 256كيلو بت لكل كلمة. ** -الشريحة ( :**)Chipتحتوي على 256كيلو بت من الذاكرة. ** -عنوان النظام ( :**)System Addressيتكون من 18بت. ** -مصفوفة الذاكرة ( :**)Memory Arrayتتكون من 9 × 512 × 512بت. ** -مخزن البيانات ( :**)Data Bufferيخزن البيانات المدخلة أو المخرجة. ####الذاكرة المتداخلة ()Interleaved Memory ** -بنوك الذاكرة ( :**)Memory Banksتتكون من عدة شرائح .DRAM ** -الوصول المتداخل ( :**)Interleaved Accessيسمح بالوصول إلى البيانات بشكل متوازي لتحسين األداء. ####تصحيح األخطاء ()Error Correction ** -األخطاء الصلبة ( :**)Hard Errorsتحدث بسبب عيوب فيزيائية في الذاكرة. ** -األخطاء الناعمة ( :**)Soft Errorsتحدث بسبب تأثيرات خارجية مثل اإلشعاع. ** -رمز هامنج ( :**)Hamming Codeيستخدم لتصحيح األخطاء في البيانات. ####تنظيم DRAMالمتقدم ** -ذاكرة الوصول العشوائي المتزامنة ( :**)Synchronous DRAM – SDRAMتعمل بتزامن مع ساعة النظام لتحسين األداء. ** -ذاكرة رامبوس ( :**)Rambus DRAM – RDRAMتوفر أدا ًء عاليًا وتستخدم في األنظمة المتقدمة. ** -ذاكرة :**DDR SDRAMتوفر ضعف عرض النطاق الترددي مقارنة بـ SDRAMالتقليدية. ** -ذاكرة التخزين المؤقت ) :**DRAM (Cache DRAM – CDRAMتجمع بين ميزات SRAMو DRAMلتحسين األداء. بالتوفيق