وصف موجز لذاكرة الوصول العشوائي (RAM). ما هي الوظائف التي تؤديها ذاكرة الوصول العشوائي؟

02.07.2019

البحث عن النص الكامل:

أين تنظر:

في كل مكان
فقط في العنوان
فقط في النص

ينسحب:

وصف
الكلمات في النص
رأس فقط

الصفحة الرئيسية > الملخص >المعلوماتية


الوكالة الفيدرالية للتعليم
مؤسسة تعليمية حكومية
التعليم المهني العالي
"ولاية سانت بطرسبرغ
جامعة الهندسة والاقتصاد"

خلاصة

"ذاكرة الوصول العشوائي للكمبيوتر الشخصي وأنواعها والغرض منها وخصائصها الرئيسية"
في تخصص "المعلوماتية"

رئيس أ.أ.كانتاروفيتش
المؤدي ف.كالميكوف
المجموعة 2601

سانت بطرسبرغ
2010

1. ذاكرة الوصول العشوائي. 2

2. الأنواع كبشوالغرض منها وخصائصها الرئيسية. 5

2.1 الذاكرة الساكنة 5

3. تصميم مصفوفة الذاكرة الساكنة 6

4. أنواع الذاكرة الساكنة 8

4.2 الذاكرة الديناميكية. 9

5. إجراءات ووظائف العمل مع الذاكرة الديناميكية. 16

المراجع 21


1. ذاكرة الوصول العشوائي.

ذاكرة الوصول العشوائي هي في المصطلحات العلمية المحلية "ذاكرة الوصول العشوائي" أو ذاكرة الوصول العشوائي (RAM)، وفي المصطلحات الغربية هي ذاكرة الوصول العشوائي (RAM)، أي "ذاكرة الوصول العشوائي". ذاكرة الوصول العشوائي (RAM) هي منطقة تخزين مؤقتة تسمح للبرنامج بالعمل. تتكون الذاكرة من خلايا، كل منها مصممة لتخزين كمية معينة من البيانات، عادة ما تكون بت واحدة أو أربع بتات. تعمل شرائح الذاكرة بشكل متزامن مع ناقل النظام. ذاكرة الوصول العشوائي للكمبيوتر ديناميكية (وبالتالي DRAM أو ذاكرة الوصول العشوائي الديناميكية) - يتطلب تخزين البيانات في مثل هذه الذاكرة إمدادًا ثابتًا بالتيار الكهربائي، وفي غيابه يتم إفراغ الخلايا. مثال على الذاكرة غير المتطايرة أو الذاكرة للقراءة فقط (ROM أو ROM - ذاكرة القراءة فقط) هي ذاكرة فلاش، حيث يتم استخدام الكهرباء فقط للكتابة والقراءة، في حين لا حاجة إلى مصدر طاقة لتخزين البيانات نفسها. خلايا الذاكرة في الدوائر الدقيقة عبارة عن مكثفات يتم شحنها عندما يكون من الضروري كتابة مكثف منطقي، ويتم تفريغها عند كتابة صفر. يتم إفراغ الذاكرة في حالة نقص الكهرباء على وجه التحديد بسبب تسرب التيارات من المكثفات.

يمكن تمثيل مبدأ تشغيل ذاكرة الوصول العشوائي على النحو التالي. نظرًا لأن الخلايا منظمة في مصفوفة ثنائية الأبعاد، للوصول إلى خلية معينة، يجب عليك تحديد عنوان الصف والعمود المقابلين. لتحديد عنوان، يتم استخدام نبضات RAS# (مصباح الوصول إلى الصف) وCAS# (ومضاب الوصول إلى العمود)، حيث يتغير مستوى الإشارة (بتعبير أدق، الجهد الكهربي) من الأعلى إلى المنخفض. تتم مزامنة هذه النبضات مع نبض الساعة، ولهذا السبب تسمى ذاكرة الوصول العشوائي أيضًا بالذاكرة المتزامنة (SDRAM). أولاً يتم إرسال إشارة التنشيط للخط المطلوب، تليها نبضة RAS#، ثم نبضة CAS#. أثناء عملية الكتابة، يحدث نفس الشيء، باستثناء أنه في هذه الحالة يتم تطبيق نبض تمكين الكتابة الخاص WE # (تمكين الكتابة)، والذي يجب أيضًا أن يتغير من الأعلى إلى الأدنى. بعد الانتهاء من العمل مع جميع خلايا الصف النشط، يتم تنفيذ أمر الشحن المسبق، مما يسمح لك بالانتقال إلى الصف التالي. وهناك إشارات أخرى، لكن لا يمكن ذكرها في سياق هذا المقال حتى لا تعقد المادة دون داع.

أهم خاصية للذاكرة التي يعتمد عليها الأداء هي عرض النطاق الترددي، والذي يتم التعبير عنه كمنتج لتردد ناقل النظام وكمية البيانات المنقولة في كل دورة على مدار الساعة. في حالة ذاكرة SDRAM، لدينا ناقل بعرض 64 بت أو 8 بايت. لذلك، على سبيل المثال، عرض النطاق الترددي لذاكرة DDR333 هو 333 ميجا هرتز × 8 بايت = 2.7 جيجا بايت في الثانية أو 2700 ميجا بايت في الثانية. ومن هنا، بالمناسبة، اسم آخر للذاكرة - PC2700، بناءً على إنتاجيتها بالميجابايت في الثانية. في مؤخراغالبًا ما يتم استخدام اتصال ذاكرة ثنائي القناة، مما يضاعف عرض النطاق النظري. أي أنه في حالة وحدتي DDR333، سنحصل على أقصى سرعة ممكنة لنقل البيانات تبلغ 5.4 جيجابايت/ثانية.

ومع ذلك، فإن تردد الذاكرة وبالتالي عرض النطاق الترددي النظري ليسا المعلمتين الوحيدتين المسؤولتين عن الأداء. في الواقع، يلعب زمن وصول الذاكرة دورًا لا يقل أهمية، وهو التأخير بين إصدار الأمر وتنفيذه. تسمى هذه القيم عادةً بالتوقيتات، والتي يتم التعبير عنها بالدورات المنقضية بين استلام الأمر وتنفيذه الفعلي. وأهم أربع توقيتات يتم استخدامها دائمًا عند وصف وحدات ذاكرة معينة هي tRCD، وtCL، وtRP، وtRAS (. يُشار إليه أحيانًا بالإضافة إلى معدل الأمر)، وعادةً ما تتم كتابتها بنفس التسلسل في النموذج 4-4-4-12-(1T) (الأرقام في في هذه الحالةاِعتِباطِيّ). يشير الاختصار tRCD إلى الوقت من RAS# إلى CAS# Delay - توقيت التأخير بين نبضات RAS# وCAS#. اختصار tCL يعني وقت استجابة CAS# - توقيت التأخير بالنسبة لنبض CAS# بعد إصدار أمر الكتابة أو القراءة. tRP هو وقت الشحن المسبق للصف: التوقيت بين اكتمال معالجة الصف والانتقال إليه خط جديد. تعتبر قيمة tRAS (وقت النشاط لتأخير الشحن المسبق) إحدى المعلمات الرئيسية، لأنها تصف وقت التأخير بين تنشيط الخط وإصدار أمر الشحن المسبق، الذي ينتهي العمل بهذا الخط. وأخيرًا، تعني معلمة معدل الأوامر التأخير بين الأمر لتحديد شريحة معينة على الوحدة والأمر الخاص بتنشيط الخط؛ عادةً لا يكون هذا التأخير أكثر من دورة أو دورتين على مدار الساعة.

والقاعدة العامة هي: كلما قصرت المدة الواحدة تردد الساعة، كلما كانت الذاكرة أسرع. علاوة على ذلك، في عدد من الحالات، تكون الذاكرة ذات التوقيتات الأقل، والتي تعمل حتى بتردد ساعة أقل، أسرع. الشيء هو أنه، كما ذكرنا سابقًا، تعمل ذاكرة الوصول العشوائي (RAM) بشكل متزامن مع ناقل النظام، لذا فإن الذاكرة ذات التردد الذي لا يمثل مضاعفًا لتردد ناقل النظام ومع عرض النطاق الترددي الذي يتجاوز عرض النطاق الترددي لناقل النظام ليس لها أي مزايا مقارنة بالذاكرة الأرخص . على سبيل المثال، يعمل ناقل النظام الخاص بمعالجات Pentium 4 الحديثة بتردد 800 ميجاهرتز، والذي يوفر، مع عرض ناقل 64 بت، أقصى إنتاجية تبلغ 6.4 جيجابايت في الثانية. الخيار الأمثل لمثل هذه الرقائق هو ذاكرة DDR2 400 ثنائية القناة مع عرض نطاق ترددي مماثل يبلغ 6.4 جيجابايت في الثانية. استخدم في وضع ثنائي القناةمن غير المرجح أن توفر الوحدات الأكثر تكلفة مثل DDR2 533/677 زيادة حقيقية في الأداء. علاوة على ذلك، في حالات أخرى، يكون من المنطقي تقليل تردد تشغيل هذه الوحدات، مع تحقيق توقيتات أقل. سيكون لهذا تأثير إيجابي على الأداء - للتحقق من ذلك، ما عليك سوى "تشغيل" برامج الاختبار المختلفة.

2. أنواع ذاكرة الوصول العشوائي والغرض منها وخصائصها الرئيسية.

هناك العديد من أنواع ذاكرة الوصول العشوائي المختلفة، ولكن يمكن تقسيمها جميعًا إلى مجموعتين فرعيتين رئيسيتين - الذاكرة الثابتة (ذاكرة الوصول العشوائي الثابتة) والذاكرة الديناميكية (ذاكرة الوصول العشوائي الديناميكية).

يختلف هذان النوعان من الذاكرة، أولاً وقبل كل شيء، في تطبيقهما التكنولوجي المختلف بشكل أساسي - سوف تقوم SRAM بتخزين البيانات المسجلة حتى تتم كتابة بيانات جديدة أو يتم إيقاف تشغيل الطاقة، ويمكن لـ DRAM تخزين البيانات لفترة قصيرة فقط، وبعد ذلك يتم تخزين البيانات يجب استعادتها (تجديدها)، وإلا سيتم فقدانها.

دعونا نلقي نظرة على مزايا وعيوب SRAM وDRAM:

تتمتع ذاكرة DRAM، بسبب تقنيتها، بكثافة بيانات أعلى من SRAM.

DRAM أرخص بكثير من SRAM، لكن الأخير أكثر إنتاجية وموثوقية لأنه جاهز دائمًا للقراءة.

2.1 الذاكرة الثابتة

الذاكرة الثابتة، أو SRAM (ذاكرة الوصول العشوائي الإحصائية) هي أقوى أنواع الذاكرة. تُستخدم شرائح SRAM للتخزين المؤقت لذاكرة الوصول العشوائي (RAM)، التي تستخدم شرائح الذاكرة الديناميكية، وكذلك للتخزين المؤقت للبيانات في أجهزة التخزين الميكانيكية، وفي وحدات الذاكرة لمحولات الفيديو، وما إلى ذلك. في الواقع، يتم استخدام شرائح SRAM عندما لا يكون مقدار الذاكرة المطلوب كبيرًا كبيرة، ولكن متطلبات الأداء مرتفعة، وإذا كان الأمر كذلك، فإن استخدام الدوائر الدقيقة باهظة الثمن له ما يبرره. في أجهزة الكمبيوتر الشخصيةمع المعالجات التي لا تحتوي على ذاكرة تخزين مؤقت L2 على الشريحة، تم استخدام رقائق SRAM دائمًا ذاكرة التخزين المؤقت الخارجية. لتقليل تكلفة اللوحات الأم وإمكانية ترقيتها، قامت الشركات المصنعة للوحات الأم المزودة بمعالجات 486 والأجيال الأولى من Pentium بتثبيت أسرة خاصة (مآخذ للرقائق مع حزمة DIP)، حيث كان من الممكن تثبيت شرائح SRAM المختلفة، المختلفة سواء من حيث السرعة أو سعة الذاكرة أو عمق البت المختلف. لتكوين الذاكرة، تم توفير مجموعة من وصلات العبور على اللوحة الأم. كمرجع، تم رسم المعلومات الخاصة بتثبيت وصلات العبور مباشرة على لوحة النظام، على سبيل المثال، كما هو موضح في الجدول (يشير العمودان JS1 وJS2 إلى عدد جهات الاتصال التي يجب توصيلها بوصلات العبور).

مثال لجدول تكوين ذاكرة التخزين المؤقت على اللوحة الأم:

لاحظ أنه تم تغيير تكوين ذاكرة التخزين المؤقت فقط عند فشل أي شريحة ذاكرة تخزين مؤقت. وفي حالات أخرى، لم ينصح بتغيير موضع لاعبا. لاحقًا، مع تطوير شرائح SRAM الأكثر تقدمًا، تم لحامها مباشرة على اللوحة الأم بكميات 1 أو 2 أو 4 قطع. على اللوحات الأمتُستخدم شرائح SRAM المتوفرة حاليًا بشكل أساسي فقط للتخزين المؤقت للإدخال/الإخراج ووظائف النظام الأخرى.

3. تصميم مصفوفة الذاكرة الساكنة

مثل الخلايا الديناميكية، يتم دمج المشغلات في مصفوفة واحدة تتكون من صفوف وأعمدة، تسمى الأخيرة أيضًا بالبتات.

على عكس خلية الذاكرة الديناميكية، التي تحتاج فقط إلى ترانزستور رئيسي واحد للتحكم فيها، يتم التحكم في خلية الذاكرة الثابتة بواسطة اثنين على الأقل. لن يبدو هذا مفاجئًا إذا تذكرنا أن الزناد، على عكس المكثف، له مدخلات منفصلة لكتابة الصفر المنطقي والواحد على التوالي. وبالتالي ، يتم استهلاك ما يصل إلى ثمانية ترانزستورات لكل خلية ذاكرة ثابتة (انظر الشكل 2) - أربعة منها تذهب في الواقع إلى المشغل نفسه واثنان آخران إلى "مزالج" التحكم.


أرز. 2. تصميم خلية ذاكرة SRAM أحادية المنفذ ذات 6 ترانزسترون

علاوة على ذلك، ستة ترانزستورات لكل خلية ليس الحد الأقصى! هناك تصاميم أكثر تعقيدا! العيب الرئيسي للخلية ذات الستة ترانزستورات هو أنه يمكن معالجة صف واحد فقط من مصفوفة الذاكرة في المرة الواحدة. إن القراءة المتوازية للخلايا الموجودة في صفوف مختلفة من نفس البنك أمر مستحيل، تماما كما هو مستحيل قراءة خلية واحدة أثناء كتابة خلية أخرى.

الذاكرة متعددة المنافذ ليس لديها هذا القيد. تحتوي كل خلية ذاكرة متعددة المنافذ على قلاب واحد، ولكنها تحتوي على عدة مجموعات من ترانزستورات التحكم، كل منها متصلة بخطوط ROW وBIT الخاصة بها، بحيث يمكن معالجة خلايا المصفوفة المختلفة بشكل مستقل. هذا النهج أكثر تقدمية بكثير من تقسيم الذاكرة إلى بنوك. في الواقع، في الحالة الأخيرة، لا يتحقق التوازي إلا عند الوصول إلى خلايا البنوك المختلفة، وهو أمر ليس ممكنًا دائمًا، وتسمح الذاكرة متعددة المنافذ بالمعالجة المتزامنة لأي خلايا، مما يخفف على المبرمج الحاجة إلى الخوض في ميزات بنيتها .

الأكثر شيوعًا هي الذاكرة ذات المنفذين، والتي يظهر هيكلها الخلوي في الشكل. 3. (انتبه! هذه ليست نفس الذاكرة التي يتم استخدامها، على وجه الخصوص، في ذاكرة التخزين المؤقت للمستوى الأول لمعالجات Intel Pentium الدقيقة). من السهل حساب أنه لإنشاء خلية واحدة من الذاكرة ذات المنفذين، يتم استهلاك ثمانية ترانزستورات. إذا كانت سعة ذاكرة التخزين المؤقت 32 كيلو بايت، فإن نواة واحدة فقط ستتطلب أكثر من مليوني ترانزستور!

أرز. 3. تصميم خلية ذاكرة SRAM ذات 8 ترانزسترون ومنفذين


أرز. 3. خلية الذاكرة الديناميكية المتجسدة في الكريستال


الوكالة الفيدرالية للتعليم
مؤسسة تعليمية حكومية

التعليم المهني العالي
"ولاية سانت بطرسبرغ
جامعة الهندسة والاقتصاد"

خلاصة
"ذاكرة الوصول العشوائي للكمبيوتر الشخصي وأنواعها والغرض منها وخصائصها الرئيسية"
في تخصص "المعلوماتية"
رئيس أ.أ.كانتاروفيتش
المؤدي ف.كالميكوف
المجموعة 2601
سانت بطرسبرغ
2010

محتوى.
1. ذاكرة الوصول العشوائي. 3
2. أنواع ذاكرة الوصول العشوائي والغرض منها وخصائصها الرئيسية. 5
2.1 الذاكرة الثابتة 6
3. تصميم مصفوفة الذاكرة الساكنة 7
4. أنواع الذاكرة الساكنة 8
4.2 الذاكرة الديناميكية. 9
5. إجراءات ووظائف العمل مع الذاكرة الديناميكية. 17
مراجع 21

1. ذاكرة الوصول العشوائي.

ذاكرة الوصول العشوائي هي في المصطلحات العلمية المحلية "ذاكرة الوصول العشوائي" أو ذاكرة الوصول العشوائي (RAM)، وفي المصطلحات الغربية هي ذاكرة الوصول العشوائي (RAM)، أي "ذاكرة الوصول العشوائي". ذاكرة الوصول العشوائي (RAM) هي منطقة تخزين مؤقتة تسمح للبرنامج بالعمل. تتكون الذاكرة من خلايا، كل منها مصممة لتخزين كمية معينة من البيانات، عادة ما تكون بت واحدة أو أربع بتات. تعمل شرائح الذاكرة بشكل متزامن مع ناقل النظام. ذاكرة الوصول العشوائي للكمبيوتر ديناميكية (وبالتالي DRAM أو ذاكرة الوصول العشوائي الديناميكية) - يتطلب تخزين البيانات في مثل هذه الذاكرة إمدادًا ثابتًا بالتيار الكهربائي، وفي غيابه يتم إفراغ الخلايا. مثال على الذاكرة غير المتطايرة أو الذاكرة للقراءة فقط (ROM أو ROM - ذاكرة القراءة فقط) هي ذاكرة فلاش، حيث يتم استخدام الكهرباء فقط للكتابة والقراءة، في حين لا حاجة إلى مصدر طاقة لتخزين البيانات نفسها. خلايا الذاكرة في الدوائر الدقيقة عبارة عن مكثفات يتم شحنها عندما يكون من الضروري كتابة مكثف منطقي، ويتم تفريغها عند كتابة صفر. يتم إفراغ الذاكرة في حالة نقص الكهرباء على وجه التحديد بسبب تسرب التيارات من المكثفات. (الشكل 1)

الشكل 1

يمكن تمثيل مبدأ تشغيل ذاكرة الوصول العشوائي على النحو التالي. نظرًا لأن الخلايا منظمة في مصفوفة ثنائية الأبعاد، للوصول إلى خلية معينة، يجب عليك تحديد عنوان الصف والعمود المقابلين. لتحديد عنوان، يتم استخدام نبضات RAS# (مصباح الوصول إلى الصف) وCAS# (ومضاب الوصول إلى العمود)، حيث يتغير مستوى الإشارة (بتعبير أدق، الجهد الكهربي) من الأعلى إلى المنخفض. تتم مزامنة هذه النبضات مع نبض الساعة، ولهذا السبب تسمى ذاكرة الوصول العشوائي أيضًا بالذاكرة المتزامنة (SDRAM). أولاً يتم إرسال إشارة التنشيط للخط المطلوب، تليها نبضة RAS#، ثم نبضة CAS#. أثناء عملية الكتابة، يحدث نفس الشيء، باستثناء أنه في هذه الحالة يتم تطبيق نبض تمكين الكتابة الخاص WE # (تمكين الكتابة)، والذي يجب أيضًا أن يتغير من الأعلى إلى الأدنى. بعد الانتهاء من العمل مع جميع خلايا الصف النشط، يتم تنفيذ أمر الشحن المسبق، مما يسمح لك بالانتقال إلى الصف التالي. وهناك إشارات أخرى، لكن لا يمكن ذكرها في سياق هذا المقال حتى لا تعقد المادة دون داع.
أهم خاصية للذاكرة التي يعتمد عليها الأداء هي عرض النطاق الترددي، والذي يتم التعبير عنه كمنتج لتردد ناقل النظام وكمية البيانات المنقولة في كل دورة على مدار الساعة. في حالة ذاكرة SDRAM، لدينا ناقل بعرض 64 بت أو 8 بايت. لذلك، على سبيل المثال، عرض النطاق الترددي لذاكرة DDR333 هو 333 ميجا هرتز × 8 بايت = 2.7 جيجا بايت في الثانية أو 2700 ميجا بايت في الثانية. ومن هنا، بالمناسبة، اسم آخر للذاكرة - PC2700، بناءً على إنتاجيتها بالميجابايت في الثانية. في الآونة الأخيرة، غالبا ما يتم استخدام اتصالات الذاكرة ثنائية القناة، حيث يتم مضاعفة عرض النطاق النظري. أي أنه في حالة وحدتي DDR333، سنحصل على أقصى سرعة ممكنة لنقل البيانات تبلغ 5.4 جيجابايت/ثانية.
ومع ذلك، فإن تكرار تشغيل الذاكرة، وبالتالي عرض النطاق النظري الخاص بها، ليسا المعلمتين الوحيدتين المسؤولتين عن الأداء. في الواقع، يلعب زمن وصول الذاكرة دورًا لا يقل أهمية، وهو قيم التأخير بين إصدار الأمر وتنفيذه. تسمى هذه القيم عادةً بالتوقيتات، والتي يتم التعبير عنها بالدورات المنقضية بين استلام الأمر وتنفيذه الفعلي. وأهم أربع توقيتات يتم استخدامها دائمًا عند وصف وحدات ذاكرة معينة هي tRCD، وtCL، وtRP، وtRAS (. يُشار أحيانًا إلى معدل الأمر بالإضافة إلى ذلك)، وعادةً ما تتم كتابتها بنفس التسلسل بالشكل 4-4-4-12-(1T) (الأرقام في هذه الحالة تعسفية). يشير الاختصار tRCD إلى الوقت من RAS# إلى CAS# Delay - توقيت التأخير بين نبضات RAS# وCAS#. اختصار tCL يعني وقت استجابة CAS# - توقيت التأخير بالنسبة لنبض CAS# بعد إصدار أمر الكتابة أو القراءة. tRP هو وقت الشحن المسبق للصف: التوقيت بين اكتمال معالجة الصف والانتقال إلى صف جديد. تعتبر قيمة tRAS (وقت النشاط لتأخير الشحن المسبق) إحدى المعلمات الرئيسية، لأنها تصف وقت التأخير بين تنشيط الخط وإصدار أمر الشحن المسبق، الذي ينتهي العمل بهذا الخط. وأخيرًا، تعني معلمة معدل الأمر التأخير بين الأمر لتحديد شريحة معينة على الوحدة والأمر الخاص بتنشيط الخط؛ عادةً لا يكون هذا التأخير أكثر من دورة أو دورتين على مدار الساعة.
القاعدة العامة هي: كلما قلت التوقيتات عند تردد ساعة واحدة، زادت سرعة الذاكرة. علاوة على ذلك، في عدد من الحالات، تكون الذاكرة ذات التوقيتات الأقل، والتي تعمل حتى بتردد ساعة أقل، أسرع. الشيء هو أنه، كما ذكرنا سابقًا، تعمل ذاكرة الوصول العشوائي (RAM) بشكل متزامن مع ناقل النظام، لذا فإن الذاكرة ذات التردد الذي لا يمثل مضاعفًا لتردد ناقل النظام ومع عرض النطاق الترددي الذي يتجاوز عرض النطاق الترددي لناقل النظام ليس لها أي مزايا مقارنة بالذاكرة الأرخص . على سبيل المثال، يعمل ناقل النظام الخاص بمعالجات Pentium 4 الحديثة بتردد 800 ميجاهرتز، والذي يوفر، مع عرض ناقل 64 بت، أقصى إنتاجية تبلغ 6.4 جيجابايت في الثانية. الخيار الأمثل لمثل هذه الرقائق هو ذاكرة DDR2 400 ثنائية القناة مع عرض نطاق ترددي مماثل يبلغ 6.4 جيجابايت في الثانية. من غير المرجح أن يؤدي استخدام وحدات أكثر تكلفة مثل DDR2 533/677 في الوضع ثنائي القناة إلى زيادة حقيقية في الأداء. علاوة على ذلك، في حالات أخرى، يكون من المنطقي تقليل تردد تشغيل هذه الوحدات، مع تحقيق توقيتات أقل. سيكون لهذا تأثير إيجابي على الأداء - للتحقق من ذلك، ما عليك سوى "تشغيل" برامج الاختبار المختلفة.

2. أنواع ذاكرة الوصول العشوائي والغرض منها وخصائصها الرئيسية.

هناك العديد من أنواع ذاكرة الوصول العشوائي المختلفة، ولكن يمكن تقسيمها جميعًا إلى مجموعتين فرعيتين رئيسيتين - الذاكرة الثابتة (ذاكرة الوصول العشوائي الثابتة) والذاكرة الديناميكية (ذاكرة الوصول العشوائي الديناميكية).
يختلف هذان النوعان من الذاكرة، أولاً وقبل كل شيء، في تطبيقهما التكنولوجي المختلف بشكل أساسي - سوف تقوم SRAM بتخزين البيانات المسجلة حتى تتم كتابة بيانات جديدة أو يتم إيقاف تشغيل الطاقة، ويمكن لـ DRAM تخزين البيانات لفترة قصيرة فقط، وبعد ذلك يتم تخزين البيانات يجب استعادتها (تجديدها)، وإلا سيتم فقدانها.
دعونا نلقي نظرة على مزايا وعيوب SRAM وDRAM:
تتمتع ذاكرة DRAM، بسبب تقنيتها، بكثافة بيانات أعلى من SRAM.
DRAM أرخص بكثير من SRAM، لكن الأخير أكثر إنتاجية وموثوقية لأنه جاهز دائمًا للقراءة.

2.1 الذاكرة الثابتة

الذاكرة الثابتة، أو SRAM (ذاكرة الوصول العشوائي الإحصائية) هي أقوى أنواع الذاكرة. تُستخدم شرائح SRAM للتخزين المؤقت لذاكرة الوصول العشوائي (RAM)، التي تستخدم شرائح الذاكرة الديناميكية، وكذلك للتخزين المؤقت للبيانات في أجهزة التخزين الميكانيكية، وفي وحدات الذاكرة لمحولات الفيديو، وما إلى ذلك. في الواقع، يتم استخدام شرائح SRAM عندما لا يكون مقدار الذاكرة المطلوب كبيرًا كبيرة، ولكن متطلبات الأداء مرتفعة، وإذا كان الأمر كذلك، فإن استخدام الدوائر الدقيقة باهظة الثمن له ما يبرره. تستخدم أجهزة الكمبيوتر الشخصية المزودة بمعالجات لا تحتوي على ذاكرة تخزين مؤقت L2 على الشريحة دائمًا شرائح SRAM لذاكرة التخزين المؤقت الخارجية. لتقليل تكلفة اللوحات الأم وإمكانية ترقيتها، قامت الشركات المصنعة للوحات الأم المزودة بمعالجات 486 والأجيال الأولى من Pentium بتثبيت أسرة خاصة (مآخذ للرقائق مع حزمة DIP)، حيث كان من الممكن تثبيت شرائح SRAM المختلفة، المختلفة سواء من حيث السرعة أو سعة الذاكرة أو عمق البت المختلف. لتكوين الذاكرة، تم توفير مجموعة من وصلات العبور على اللوحة الأم. كمرجع، تم رسم المعلومات الخاصة بتثبيت وصلات العبور مباشرة على لوحة النظام، على سبيل المثال، كما هو موضح في الجدول (يشير العمودان JS1 وJS2 إلى عدد جهات الاتصال التي يجب توصيلها بوصلات العبور).
مثال لجدول تكوين ذاكرة التخزين المؤقت على اللوحة الأم:
    مقاس سرام JS1 شبيبة2
    256 ك 32x8 1-2 1-2
    512 ك 64x8 2-3 1-2
    1 م 128x8 2-3 2-3
لاحظ أنه تم تغيير تكوين ذاكرة التخزين المؤقت فقط عند فشل أي شريحة ذاكرة تخزين مؤقت. وفي حالات أخرى، لم ينصح بتغيير موضع لاعبا. لاحقًا، مع تطوير شرائح SRAM الأكثر تقدمًا، تم لحامها مباشرة على اللوحة الأم بكميات 1 أو 2 أو 4 قطع. في اللوحات الأم الحالية، تُستخدم شرائح SRAM بشكل أساسي فقط للتخزين المؤقت للإدخال/الإخراج ووظائف النظام الأخرى.

3. تصميم مصفوفة الذاكرة الساكنة

مثل الخلايا الديناميكية، يتم دمج المشغلات في مصفوفة واحدة تتكون من صفوف وأعمدة، تسمى الأخيرة أيضًا بالبتات.
على عكس خلية الذاكرة الديناميكية، التي تحتاج فقط إلى ترانزستور رئيسي واحد للتحكم فيها، يتم التحكم في خلية الذاكرة الثابتة بواسطة اثنين على الأقل. لن يبدو هذا مفاجئًا إذا تذكرنا أن الزناد، على عكس المكثف، له مدخلات منفصلة لكتابة الصفر المنطقي والواحد على التوالي. وبالتالي ، يتم استهلاك ما يصل إلى ثمانية ترانزستورات لكل خلية ذاكرة ثابتة (انظر الشكل 2) - أربعة منها تذهب في الواقع إلى المشغل نفسه واثنان آخران إلى "مزالج" التحكم.

أرز. 2. تصميم خلية ذاكرة SRAM أحادية المنفذ ذات 6 ترانزسترون
علاوة على ذلك، ستة ترانزستورات لكل خلية ليس الحد الأقصى! هناك تصاميم أكثر تعقيدا! العيب الرئيسي للخلية ذات الستة ترانزستورات هو أنه يمكن معالجة صف واحد فقط من مصفوفة الذاكرة في المرة الواحدة. إن القراءة المتوازية للخلايا الموجودة في صفوف مختلفة من نفس البنك أمر مستحيل، تماما كما هو مستحيل قراءة خلية واحدة أثناء كتابة خلية أخرى.
الذاكرة متعددة المنافذ ليس لديها هذا القيد. تحتوي كل خلية ذاكرة متعددة المنافذ على قلاب واحد، ولكنها تحتوي على عدة مجموعات من ترانزستورات التحكم، كل منها متصلة بخطوط ROW وBIT الخاصة بها، بحيث يمكن معالجة خلايا المصفوفة المختلفة بشكل مستقل. هذا النهج أكثر تقدمية بكثير من تقسيم الذاكرة إلى بنوك. في الواقع، في الحالة الأخيرة، لا يتحقق التوازي إلا عند الوصول إلى خلايا البنوك المختلفة، وهو أمر ليس ممكنًا دائمًا، وتسمح الذاكرة متعددة المنافذ بالمعالجة المتزامنة لأي خلايا، مما يخفف على المبرمج الحاجة إلى الخوض في ميزات بنيتها .
الأكثر شيوعًا هي الذاكرة ذات المنفذين، والتي يظهر هيكلها الخلوي في الشكل. 3. (انتبه! هذه ليست نفس الذاكرة التي يتم استخدامها، على وجه الخصوص، في ذاكرة التخزين المؤقت للمستوى الأول لمعالجات Intel Pentium الدقيقة). من السهل حساب أنه لإنشاء خلية واحدة من الذاكرة ذات المنفذين، يتم استهلاك ثمانية ترانزستورات. إذا كانت سعة ذاكرة التخزين المؤقت 32 كيلو بايت، فإن نواة واحدة فقط ستتطلب أكثر من مليوني ترانزستور!
أرز. 3. تصميم خلية ذاكرة SRAM ذات 8 ترانزسترون ومنفذين

أرز. 3. خلية الذاكرة الديناميكية المتجسدة في الكريستال

4. أنواع الذاكرة الساكنة

هناك ثلاثة أنواع على الأقل من الذاكرة الثابتة: غير المتزامنة، والمتزامنة، والمتصلة عبر الأنابيب. كلهم لا يختلفون عمليا عن أنواع الذاكرة الديناميكية المقابلة لهم.
ذاكرة ثابتة غير متزامنة
تعمل الذاكرة الساكنة غير المتزامنة بشكل مستقل عن وحدة التحكم، وبالتالي لا يمكن لوحدة التحكم التأكد من أن نهاية دورة التبادل ستتزامن مع بداية نبضة الساعة التالية. ونتيجة لذلك، يتم تمديد دورة الاتصال بدورة ساعة واحدة على الأقل، وبالتالي تقليل الأداء الفعال. "بفضل" الظرف الأخير ، لا يتم استخدام الذاكرة غير المتزامنة حاليًا في أي مكان تقريبًا (آخر أجهزة الكمبيوتر التي كانت لا تزال تستخدم عليها كذاكرة تخزين مؤقت من المستوى الثاني كانت "ثلاثة روبل" - آلات مبنية على هذا الأساس معالج إنتل 80386).
ذاكرة ثابتة متزامنة
تقوم الذاكرة الساكنة المتزامنة بتنفيذ جميع العمليات في وقت واحد باستخدام إشارات الساعة، مما يؤدي إلى وقت وصول لخلية واحدة خلال دورة ساعة واحدة. يتم تنفيذ ذاكرة التخزين المؤقت للمستوى الأول للمعالجات الحديثة على الذاكرة الثابتة المتزامنة.
الذاكرة الثابتة لخط الأنابيب
الذاكرة الثابتة لخط الأنابيب متزامنة ذاكرة ثابتة، مزودة بـ "مزالج" خاصة تحمل خطوط البيانات، مما يسمح لك بقراءة (كتابة) محتويات خلية واحدة بالتوازي مع إرسال العنوان إلى أخرى.
كما يمكن لذاكرة خط الأنابيب معالجة عدة خلايا متجاورة في دورة عمل واحدة. يكفي إرسال عنوان الخلية الأولى من الحزمة فقط، وستقوم الدائرة الدقيقة بحساب عناوين الباقي من تلقاء نفسها - فقط لديك الوقت لإرسال (استقبال) كتابة (قراءة) البيانات!
نظرًا للتعقيد الأكبر لذاكرة خط الأنابيب، فإن وقت الوصول إلى الخلية الأولى من الحزمة يزيد بمقدار دورة ساعة واحدة، ومع ذلك، فإن هذا لا يقلل من الأداء عمليًا، لأن تتم معالجة كافة الخلايا اللاحقة في الحزمة دون تأخير.
يتم استخدام الذاكرة الثابتة لخط الأنابيب بشكل خاص في ذاكرة التخزين المؤقت للمستوى الثاني لمعالجات Pentium-II الدقيقة وتكون صيغتها كما يلي: 2-1-1-1.

4.2 الذاكرة الديناميكية.

جميع المتغيرات المعلنة في البرنامج تقع في منطقة واحدة متجاورة من ذاكرة الوصول العشوائي (RAM) تسمى شريحة البيانات. يتم تحديد طول مقطع البيانات من خلال بنية المعالجات الدقيقة 8086 ويبلغ 65.536 بايت، مما قد يسبب صعوبات معروفة عند معالجة كميات كبيرة من البيانات.
ومن ناحية أخرى، فإن مقدار ذاكرة الكمبيوتر (عادةً ما لا يقل عن 640 كيلو بايت) يكفي لحل المشكلات ذات أبعاد البيانات الكبيرة بنجاح. يمكن أن يكون المخرج هو استخدام ما يسمى بالذاكرة الديناميكية.
الذاكرة الديناميكية هي ذاكرة الوصول العشوائي للكمبيوتر الشخصي التي يتم توفيرها للبرنامج عند تشغيله، مطروحًا منها مقطع البيانات F4 كيلو بايت)، والمكدس (عادةً 16 كيلو بايت) وجسم البرنامج نفسه.
يمكن أن يختلف حجم الذاكرة الديناميكية ضمن حدود واسعة (انظر الملحق 1). افتراضيًا، يتم تحديد هذا الحجم من خلال ذاكرة الكمبيوتر المتوفرة بالكامل، وعادةً ما يكون 200-300 كيلو بايت على الأقل. الذاكرة الديناميكية هي في الواقع الطريقة الوحيدة لمعالجة صفائف البيانات واسعة النطاق. بدون الذاكرة الديناميكية يكون من الصعب أو المستحيل حل العديد من المشاكل العملية.
تنشأ مثل هذه الحاجة، على سبيل المثال، عند تطوير أنظمة التصميم بمساعدة الكمبيوتر (CAD): يمكن أن يختلف أبعاد النماذج الرياضية المستخدمة في التصميم بمساعدة الكمبيوتر بشكل كبير في المشاريع المختلفة؛ عادةً ما يكون تخصيص الذاكرة الثابتة (أي في مرحلة تطوير CAD) مستحيلًا في هذه الحالة. أخيرًا، تُستخدم الذاكرة الديناميكية على نطاق واسع للتخزين المؤقت للبيانات عند العمل مع رسومات الكمبيوتر وأدوات الصوت.
يعني وضع البيانات الديناميكية استخدام الذاكرة الديناميكية مباشرة أثناء تشغيل البرنامج. في المقابل، يتم تنفيذ التخصيص الثابت بواسطة مترجم Turbo Pascal أثناء تجميع البرنامج. في الوضع الديناميكي، لا يُعرف نوع البيانات التي سيتم وضعها ولا مقدارها مسبقًا؛ ولا يمكن الوصول إليها بالاسم، مثل المتغيرات الثابتة.
PC RAM عبارة عن مجموعة من الخلايا الأولية لتخزين المعلومات - بايت، كل منها لديه الرقم الخاص. تسمى هذه الأرقام بالعناوين، فهي تسمح لك بالوصول إلى أي بايت من الذاكرة.
يوفر Turbo Pascal للمبرمج وسيلة مرنة لإدارة الذاكرة الديناميكية - ما يسمى بالمؤشرات. المؤشر هو متغير يحتوي على عنوان بايت من الذاكرة كقيمة له.
في جهاز الكمبيوتر، يتم تحديد العناوين من خلال مزيج من كلمتين مكونة من ستة عشر بت، والتي تسمى قطعة وإزاحة. المقطع عبارة عن قطعة من الذاكرة يبلغ طولها 65.536 بايت (F4 كيلو بايت) وتبدأ عند عنوان فعلي يكون مضاعفًا للرقم 16 (أي 0، 16، 32، 48، وما إلى ذلك). تحدد الإزاحة عدد البايتات التي يجب تخطيها من بداية المقطع للوصول إلى العنوان المطلوب. تبلغ مساحة عنوان الكمبيوتر 1 ميجابايت (نحن نتحدث عن ما يسمى بذاكرة الكمبيوتر القياسية؛ على أجهزة الكمبيوتر الحديثة التي تحتوي على معالجات 80386 وما فوق، تبلغ مساحة العنوان 4 جيجابايت، لكن Turbo Pascal لا يحتوي على أدوات تدعم العمل بذاكرة إضافية؛ عند استخدام Borland Pascal مع بيئة الكائنات 7.0 يكون هذا الخيار متاحًا).
لمعالجة ضمن 1 ميغابايت، هناك حاجة إلى 20 بتة ثنائية، والتي يتم الحصول عليها من كلمتين من ستة عشر بت (مقطع وإزاحة) على النحو التالي (الشكل 6.1): يتم إزاحة محتويات المقطع إلى اليسار بمقدار 4 بتات، ويتم إخلاؤها تمتلئ البتات الصحيحة بالأصفار، وتتم إضافة النتيجة إلى محتويات الإزاحة. تسمى قطعة الذاكرة المكونة من 16 بايت فقرة، لذلك يمكننا القول أن القطعة تعالج الذاكرة بدقة الفقرة، والإزاحة بدقة البايت. يتوافق كل جزء مع منطقة ذاكرة متجاورة ويمكن معالجتها بشكل منفصل. يمكن أن تتبع المقاطع بعضها البعض في الذاكرة دون فجوات أو بفاصل زمني، أو في النهاية، تتداخل مع بعضها البعض. وبالتالي، فإن أي مؤشر، في بنيته الداخلية، عبارة عن مجموعة من كلمتين (بيانات WORD)، يتم تفسيرها على أنها الجزء 154.
باستخدام المؤشرات، يمكنك وضع أي من أنواع البيانات المعروفة في Turbo Pascal في الذاكرة الديناميكية. بعضها فقط (BYTE، CHAR، SHORTINT، BOOLEAN) يشغل بايتًا واحدًا في التمثيل الداخلي، والباقي - عدة بايتات مجاورة. لذلك، يعالج المؤشر فعليًا البايت الأول فقط من البيانات. 6.3. إعلان المؤشرات.
عادةً، في Turbo Pascal، يرتبط المؤشر ببعض أنواع البيانات. سوف نسمي هذه المؤشرات المكتوبة. للإعلان عن مؤشر مكتوب، يتم استخدام الرمز l، الذي يتم وضعه أمام النوع المقابل، على سبيل المثال: var pi AInteger; p2: "حقيقي؛ اكتب PerconPomter = "PcrconRecord؛ PerconRecord = اسم السجل: سلسلة؛ الوظيفة: سلسلة؛ التالي: نهاية PerconPomter؛ يرجى ملاحظة: عند التصريح عن نوع PerconPointer، أشرنا إلى نوع PerconRecord، والذي لم يتم الإعلان عنه مسبقًا في البرنامج. كما أشرنا سابقًا، يفرض Turbo Pascal باستمرار مبدأ أنه قبل استخدام أي معرف، يجب وصفه. يتم إجراء استثناء فقط للمؤشرات التي يمكن أن تشير إلى نوع بيانات لم يتم الإعلان عنه بعد. ولم يتم ذلك عن طريق الصدفة.
تتيح الذاكرة الديناميكية تنفيذ تنظيم البيانات في شكل قوائم، والتي تستخدم على نطاق واسع في بعض البرامج. يحتوي كل عنصر في القائمة على مؤشر إلى عنصر مجاور (الشكل 6.2)، مما يجعل من الممكن عرض القائمة وتصحيحها. إذا لم يكن لدى Turbo Pascal هذا الاستثناء، فسيكون تنفيذ القوائم أكثر صعوبة بكثير. في Turbo Pascal، يمكنك الإعلان عن المؤشر دون ربطه بأي نوع بيانات محدد. يتم استخدام النوع القياسي POINTER لهذا، على سبيل المثال: var p: pointer.
العنصر الأول في القائمة الفهرس - العنصر الثاني في القائمة العنصر الأخير في القائمة NIL Fig. 6.2. قائمة بنية البيانات سوف نسمي المؤشرات من هذا النوع غير المتصاعدة. نظرًا لأن المؤشرات غير المكتوبة غير مرتبطة بنوع معين، فيمكن استخدامها لتخصيص البيانات ديناميكيًا والتي يتغير هيكلها ونوعها أثناء تشغيل البرنامج.
كما ذكرنا سابقًا، فإن قيم المؤشرات هي عناوين المتغيرات في الذاكرة، لذلك تتوقع إمكانية تمرير قيمة مؤشر إلى آخر. في الواقع، هذا ليس صحيحا تماما. في Turbo Pascal، يمكنك فقط تمرير القيم بين المؤشرات المرتبطة بنفس نوع البيانات. إذا، على سبيل المثال، المتغيرات pl,p2; "Integer; p3: lYaoa1; pp: المؤشر؛ فإن التعيين pl:= p2; قانوني تمامًا، في حين أن التعيين pl:= p3; محظور، نظرًا لأن P1 وp3 يشيران إلى pa أنواع مختلفةبيانات. ومع ذلك، لا ينطبق هذا القيد على المؤشرات غير المكتوبة، لذا يمكننا كتابة pp:- p3, pl:= pp; وبالتالي تحقيق النتيجة المرجوة.
يحق للقارئ أن يتساءل عما إذا كان الأمر يستحق فرض القيود وتوفير الوسائل على الفور للتحايل عليها. الشيء هو أن أي تقييد، من ناحية، يتم إدخاله لزيادة موثوقية البرامج، ومن ناحية أخرى، فهو يقلل من قوة اللغة ويجعلها أقل ملاءمة لبعض التطبيقات.
في Turbo Pascal، تمنح الاستثناءات القليلة لأنواع البيانات اللغة بعض المرونة اللازمة، لكن استخدامها يتطلب جهدًا إضافيًا من جانب المبرمج، وبالتالي يشير إلى إجراء واعٍ للغاية.
تخصيص وتحرير الذاكرة الديناميكية يتم التعامل مع كافة الذاكرة الديناميكية في Turbo Pascal على أنها مجموعة مستمرة من البايتات، والتي تسمى الكومة. فعليًا، توجد الكومة في العناوين العليا مباشرة بعد منطقة الذاكرة التي يشغلها نص البرنامج. يتم تخزين بداية الكومة في متغير HeapOrg القياسي (الشكل 6.3)، ويتم تخزين النهاية في متغير HeapEnd. الحد الحالي للذاكرة الديناميكية غير المخصصة موجود في متغير Heapptr. يتم تخصيص الذاكرة لأي متغير مخصص ديناميكيًا بواسطة الإجراء الجديد. المعلمة الخاصة باستدعاء هذا الإجراء هي مؤشر مكتوب. نتيجة الوصول، يكتسب المؤشر قيمة تتوافق مع عنوان ديناميكي، بدءًا من يمكن وضع البيانات، على سبيل المثال: var i, j: "Integer; r: AReal; begin New(i); end.
بعد تنفيذ هذا الجزء، سيكتسب المؤشر 1 القيمة التي كان يمتلكها مؤشر الكومة HEAPPTR سابقًا، وسيزيد HEAPPTR نفسه من قيمته بمقدار 2، نظرًا لأن طول التمثيل الداخلي لنوع INTEGER، الذي يرتبط به المؤشر I، هو 2 بايت (في الواقع، هذا ليس صحيحًا تمامًا: يتم تخصيص ذاكرة أي متغير في أجزاء تكون مضاعفات 8 بايت - راجع القسم 6.7). عامل التشغيل الجديد (ز)؛ سيؤدي إلى إزاحة مؤشر HEAPPTR مرة أخرى، ولكن الآن بمقدار 6 بايت، لأن هذا هو طول التمثيل الداخلي للنوع الحقيقي المخصص بشكل مماثل لمتغير من أي نوع آخر. بعد أن يكتسب المؤشر قيمة معينة، أي أنه يبدأ في الإشارة إلى بايت فعلي معين من الذاكرة، يمكن وضع أي قيمة من النوع المقابل على هذا العنوان. للقيام بذلك، مباشرة بعد المؤشر دون أي مسافات يتم وضع الرمز l، على سبيل المثال: i = 2، (يتم وضع القيمة 2 في منطقة الذاكرة i) i = 2*pi; (يتم وضع القيمة 6.28 في منطقة الذاكرة g)\
موقع الكومة في ذاكرة الكمبيوتر الشخصي، وبالتالي، تتم الإشارة إلى القيمة التي يشير إليها المؤشر، أي البيانات الفعلية الموجودة في الكومة، بواسطة الرمز L، الذي يتم وضعه مباشرة بعد المؤشر. إذا لم يكن هناك رمز خلف المؤشر، فهذا يعني العنوان الذي توجد به البيانات. من المنطقي التفكير مرة أخرى فيما قيل للتو: قيمة أي مؤشر هي عنوان، وللإشارة إلى أننا لا نتحدث عن العنوان، ولكن عن البيانات الموجودة في هذا العنوان، يتم وضع حرف L بعد إذا فهمت هذا بوضوح، فلن تواجه مشاكل عند العمل مع الذاكرة الديناميكية. يمكن استخدام البيانات المخصصة ديناميكيًا في أي مكان في البرنامج حيث يُسمح بالثوابت والمتغيرات من النوع المناسب، على سبيل المثال:<* sqr (rA) + \Л - 17; Разумеется, совершенно недопустим оператор г:= sqr(rA) + iA - 17; т. к. указателю r нельзя присвоить значение вещественного выражения. Точно так же недопустим оператор гл:= sqr (г) ; поскольку значением указателя r является адрес, и его (в отличие от того значения, которое размещено по этому адресу) нельзя возводить в квадрат. Ошибочным будет и такое присваивание: =х; 158 Ядро Турбо Паскаля т. к. вещественным данным, на которые указывает R, нельзя присвоить значение указателя (адрес).
لا يمكن أخذ الذاكرة الديناميكية من الكومة فحسب، بل يمكن إعادتها أيضًا. للقيام بذلك، استخدم إجراء التخلص. على سبيل المثال، تم التخلص من المشغلين)؛ التخلص (ط)؛ سيعيد 8 بايت إلى الكومة التي تم تخصيصها مسبقًا للمؤشرين 1 و R (انظر أعلاه). لاحظ أن الإجراء dtspose (PTR) لا يغير قيمة مؤشر PTR، ولكنه يقوم فقط بإرجاع الذاكرة المرتبطة مسبقًا بهذا المؤشر إلى الكومة. ومع ذلك، فإن إعادة تطبيق الإجراء على مؤشر مجاني سيؤدي إلى حدوث خطأ في وقت التشغيل. يمكن للمبرمج وضع علامة على المؤشر المحرر بالكلمة المحجوزة NIL. يمكن التحقق من تحديد أي مؤشر أم لا على النحو التالي: const p: 4lGal = NIL; ابدأ إذا كان p = NIL ثم new(p); التخلص(ع) ؛ ص: لا شيء؛ نهاية. لا يُسمح بأي عمليات مقارنة أخرى على المؤشرات. يوضح المقتطف أعلاه الطريقة المفضلة للإعلان عن المؤشر كثابت مكتوب (انظر الفصل 7) وتعيين القيمة NIL له في نفس الوقت. يرجى ملاحظة أن القيمة الأولية للمؤشر (عند الإعلان عنها في قسم المتغيرات) يمكن أن تكون عشوائية. إن استخدام المؤشرات التي لم يتم تعيين قيمة لها بواسطة الإجراء الجديد أو بطريقة أخرى لا يتحكم فيها النظام وقد يؤدي إلى نتائج غير متوقعة.
إلخ.............

ما هي الوظائف التي تؤديها ذاكرة الوصول العشوائي؟

جواب الماجستير:

تؤدي ذاكرة الوصول العشوائي (RAM) وظيفة التخزين المؤقت للبيانات والأوامر اللازمة للمعالج لإجراء عمليات معينة. تدخل البيانات إلى ذاكرة الوصول العشوائي مباشرة أو من خلال ذاكرة فائقة السرعة. يتم تخزين جميع المعلومات فقط عند تشغيل الكمبيوتر، وبعد إيقاف تشغيله، يتم مسح جميع البيانات.

أثناء تشغيل البرنامج، يتم تحميل بعض ملفاته الأكثر أهمية في ذاكرة الوصول العشوائي (RAM)، ويستمر ذلك حتى يتم إغلاق التطبيق. ويقوم المعالج نفسه مباشرة بتنفيذ هذه الملفات وحفظ النتائج. يتم تخزين كافة رموز المفاتيح التي تم الضغط عليها وقيم العمليات الحسابية المنفذة في الذاكرة. بعد تنفيذ أمر "حفظ"، يتم حفظ كل ما هو موجود في ذاكرة الوصول العشوائي (RAM) على القرص الصلب.

يسعى معظم مستخدمي أجهزة الكمبيوتر إلى زيادة حجم ذاكرة الوصول العشوائي، حيث أن سرعة جميع العمليات المحملة تعتمد عليها. وهذا له قيمة خاصة عند تشغيل برامج كثيفة الاستخدام للموارد، مثل الألعاب أو برامج تحرير الرسومات المختلفة. وبناء على ذلك، كلما زاد حجم ذاكرة الوصول العشوائي (RAM)، زادت سرعة اللعب والتحرير.

هناك أنواع عديدة من ذاكرة الوصول العشوائي. الأكثر شيوعا هي DDR، DDRII وDDRIII، والفرق عن بعضها البعض هو في وتيرة نقل البيانات. كلما زاد التردد، كلما كان العمل أسرع. أبطأها هو DDR، والأسرع هو DDR3. كل هذه الشرائط لها موصلات مختلفة.

تحتوي كل وحدة على شرائح تتصل بلوحة النظام. تتميز هذه الوحدات بخصائص مختلفة ويجب أن تكون متوافقة مع النظام الذي تُستخدم فيه.

ROM هو جهاز ذاكرة للقراءة فقط، لذلك ليس لدى المستخدم القدرة على إجراء عمليات الكتابة. DRAM هو جهاز ذاكرة وصول عشوائي ديناميكي. وSRAM هي ذاكرة الوصول العشوائي الثابتة. يدعم ROM وDRAM تخزين البيانات ولكن لا يمكن تعديلهما. ولهذا السبب، فهي محملة بالبرامج التي تقوم بتشغيل النظام نفسه. يمكن اعتبار ذاكرة القراءة فقط (ROM) جزءًا من ذاكرة الوصول العشوائي (RAM) للنظام، كما أن جزءًا من أي شريحة يحتوي على مساحة عنوان لتحميل البرامج الأساسية.

بشكل منفصل عن كل شيء آخر، ذاكرة الوصول العشوائي هي دائرة كهربائية صغيرة. توجد شرائح أحادية الجانب ومزدوجة الجوانب مع وحدات موجودة على أحد الجانبين أو كلاهما.