تعاون علمي
لمحة هندسية:
اخترع الفرنسي لوسيان ليفي والأمريكي أدوين أتش آرمسترونغ في آن معاً معدل التوتر وذلك عام 1917م
  • اخر المشاركات

دروس في المعالجات الصغرية وبنية الحاسب

المواضيع والدروس والسلاسل والشروح المرتبطة بالقسم

دروس في المعالجات الصغرية وبنية الحاسب

مشاركةبواسطة Hasan في الجمعة أكتوبر 24, 2008 5:11 pm

بسم الله الرحمن الرحيم

أخواني أعضاء هذا الموقع الغالي كما وعدت سأقوم بتنزيل دروس في هذا المنتدى عن أساسيات المعالجات الدقيقة Microprocessors آملاً من الله عزّ وجل أن يفيدني وإياكم بما سأطرح في هذا الموضوع.
ومن الجدير بالذكر أنّ معظم المعلومات التي سأطرحها في هذا الموضوع هي عبارة عن ترجمة لكتاب أجنبي شهير وأن هذه المرة الأولى التي أقوم بها بترجمة نص علمي لذلك أود من كل من يقرأ موضوعي ويجد به أي خطأ علمي أو لغوي فالرجاء أن لا يتردد بذكر هذا الخطأ في المنتدى.
وللزملاء مشرفي هذا الموقع الحرية الكاملة بإجراء التعديلات التي يروها مناسبة

المصدر:
ترجم بتصرف من كتاب :
Complete Digital Design
A Comprehensive Guide to Digital Electronics and Computer System Architecture
دار النشر:
MCGraw Hill
للكاتب:
Mark Balch

الآن سأبدأ:

مقدمة:
في تشرين الثاني من عام 1971 أطلقت شركة إنتل أول رقاقة سميت المعالج الصغري والتي صممت من قبل المهندسين فيديريكو فاغين,تيد هوف وستان مازور حيث سميت هذه الرقاقة (4004) وكانت قادرة على أداء العديد من الوظائف المنطقية مقارنة مع الرقاقات التي وجدت في ذلك الوقت وكانت تعالج المعطيات بعرض 4 بت وكانت تعمل بتردد 108KHz واحتوت على 2300 ترانزيستور.
المعالجات الصغرية عناصر أساسية في معظم الأنظمة الرقمية حيث يتم في هذه العناصر الجمع بين الدارات الإلكترونية والبرمجيات لحل مشاكل تصميمية.الحاسوب الرقمي يتشكل من الجمع بين معالج صغري والعديد من العناصر الأساسية والدارات المنطقية. أما البرمجيات فهي تشكل الإطار الذي ينظم عمل الدارات المعدة مسبقا لتناسب تنفيذ عمل ما. العديد من الناس يعتقد أن الحاسوب محصور بشكله الشائع ألا وهو الحاسوب الشخصي بينما الحواسيب ممكن أن تأخذ أشكال عديدة وأن توجد في أي مكان حيث أن حواسيب صغيرة تتحكم بأفران المايكروويف والهواتف ومشغلات الأقراصCD Players ....الخ.
في حلقة البحث هذه سوف نتناول البناء الأساسي للحواسيب الرقمية ثم سوف ننتقل لدراسة البنية الداخلية للمعالجات الصغرية بقليل من التفصيل فسندرس العمليات الأساسية التي يقدر المعالج على أدائها ثم سندرس الروتين الفرعي والمكدس وطريقة عمل المقاطعات .....
وفي الختام سوف نتحدث قليلاً عن لغة التجميع Assembly وطرق عنونة الذاكرة.

الحاسوب الرقمي (The Digital Computer):
الحاسوب الرقمي هو مجموعة من العناصر الرقمية التي تستطيع تنفيذ خوارزميات معينة من أجل تنفيذ معالجة المعطيات.يتكون الحاسوب من معالج وذاكرة وبعض عناصر الإدخال والإخراج. أما المعالج الصغري والذي يدعى عادة وحدة المعالجة المركزية (CPU) يحتوي على دارات معينة للانتقال خلال الخوارزمية التي يتم تنفيذها والتي تسمى البرنامج والذي يخزن في جزء من الذاكرة يسمى ذاكرة البرنامج , أما المعطيات التي تعالج من المعالج فتخزن في جزء آخر من الذاكرة يسمى ذاكرة المعطيات. يستطيع المعالج أن يدخل على موقع معين من الذاكرة عن طريق تقديم عنوان (Address) ذلك الموقع لوحدة الذاكرة (Memory Unit). أما وحدات الدخل والخرج فهي الوسيط الذي يمكّن المعالج من التواصل مع العالم الخارجي من طلب معطيات جديدة إلى إظهار نتائج المعالجة, ومن عناصر الدخل والخرج لوحة المفاتيح وشاشة الإظهار.
البرمجيات (software) تتكون من العديد من العمليات البسيطة والتي تدعى تعليمات (Instructions) والتي تحدد بأدق التفاصيل الطريقة التي ينفذ وفقها المعالج خوارزمية معينة. كل نوع من أنواع المعالجات لديه مجموعة خاصة من التعليمات والتي تحدد بشكل تام مجموعة العمليات(operations) الخاصة بهذا المعالج والوظائف التي يقدر على القيام بها. هذه التعليمات تقوم بأداء مهمات بسيطة جدا بحيث قد يظن المرء أنها وحدها لا تكفي ولكن عند تجميع الملايين من هذه التعليمات وفق ترتيب معين قد يؤدي هذا إلى برنامج معقد جدا كالألعاب أو معالجات النصوص.
إن المعالجات الصغرية ليس لديها أية ذكاء أو قدرة على تنفيذ عمل مفيد من تلقاء نفسها ولكن لنجعلها تقوم بمثل هذا العمل يجب أن نزوده بتوجيه واضح وهو ما يسمى بالبرمجة (Software Programming). مهما كان تعقيد المهمة التي ينفذها المعالج فهو يقوم بتقسيمها إلى مجموعة كبيرة من الخطوات الصغيرة لتطبق بالمعالج تتضمن هذه الخطوات العمليات الحسابية البسيطة,العمليات المنطقية ,تحميل المعطيات من الذاكرة وتخزين الخرج في الذاكرة نفسها.
إنّ بنية الذاكرة تعد من أهم أجزاء الحاسب وذلك لأن المعالج يبقى على اتصال دائم معها وذلك للحصول على تعليمات جديدة أو تحميل معطيات لحل المسألة أو تخزين نتائج المعالجة. وكما ذكر مسبقا فإنه تقسم الذاكرة إلى قسمين: ذاكرة البرنامج وذاكرة المعطيات رغم أن كليهما قد يوجدان على نفس الشريحة (Memory Chip).
إن ذاكرة الوصول العشوائية (RAM) هو المصطلح المستخدم لوصف عنصر الذاكرة الذي بالإمكان الدخول إلى مواقعها وعنونتها(addressing) وذلك وفق نظام معين ,كما يمكن القراءة والكتابة على هذه الذاكرة. كلا البرامج والمعطيات يمكن أن تخزن على ال RAM لذلك عند تشغيل برنامج ما فإنه يحمل أولا في ذاكرة ال RAM ثم ينفذ من قبل المعالج. إن ذاكرة ال RAM هي ذاكرة غير دائمة ويمكن أن تخسر جميع محتوياتها بمجرد انقطاع التيار الكهربائي عنها,لكن الحاسب بحاجة لذاكرة غير مؤقتة ,ذاكرة لا تخسر محتوياتها في الظروف العادية لذلك فإن معظم الحواسيب تحتوي على ما يسمى ذاكرة القراءة فقط (ROM) حيث يخزن فيها ما يسمى ب ال(boot code) وهي مجموعة التعليمات الضرورية لفحص التجهيزات الداخلية للحاسوب والأجهزة المتصلة به والتأكد من جاهزيتها للبدء بالعمل.
1.GIF
توضيح لبنية الحاسب
1.GIF (10.07 KiB) شوهد 2619 مرات

إنّ الوسيلة التي يقوم عن طريقها المعالج بالاتصال مع الأجهزة الأخرى كالذاكرة أو أجهزة الدخل والخرج(I/O Devices) تسمى ممرات المعطيات (data buses) وممرات العناوين (address buses). أما الممر فهو مجموعة من الأسلاك المخصصة لغرض ما فممر المعطيات هو مصفوفة من البتات (bit) لها حجم كافي لنقل وحدة معطيات كاملة (Bytes) في نفس الوقت فعلى سبيل المثال معالج 8 بيت (8-bit microprocessor) يعالج بايت واحد في كل خطوة لذلك فهو يحوي في أغلب الحالات على ممر معطيات عرضه 8 بت أما المعالج 32 بت (32-bit Microprocessor) يستطيع أن يعالج 4 بايتات بنفس الوقت فهو يمكن أن يحوي على ممر معطيات ذو عرض 32أو 16أو 8 بت حيث يختلف عرض ممر المعطيات فيه حسب ما يتطلبه التطبيق الذي سيستخدم له المعالج. ومن الجدير بالذكر أنه كلما ضاق عرض ممر المعطيات كلما ازداد الوقت اللازم لتبادل المعطيات والعكس صحيح. يرمز عادة لممر المعطيات بالرمز التالي
CODE: تحديد الكل
D[7:0]

وذلك إذا كان عرضه 8 بت أم إذا كان عرضه 32 بت فيرمز له
CODE: تحديد الكل
D[31:0]

أما ممر المعطيات (address bus) فيستخدم للتعبير عن المساحة المتوفرة ضمن المعالج لتخزين عناوين مواقع الذاكرة ووحدات الدخل والخرج فإذا افترضنا أن لدينا معالج يحتوي على ممر معطيات عرضه 16 بت فتكون مساحة العنونة (address space) له مساوية ل
CODE: تحديد الكل
2^16
والتي تساوي تقريبا 64 Kbyte يرمز لهذا الممر ب
CODE: تحديد الكل
A[15:0]
. كما أنه من الجدير بالذكر أن ممر المعطيات ثنائي الاتجاه (للقراءة والكتابة) أما ممر العناوين فهو وحيد الاتجاه (حيث يكون اتجاه العنونة من المعالج للذاكرة فقط وليس العكس)
2.GIF
(8-bit microprocessor buses)
2.GIF (9.27 KiB) شوهد 2623 مرات

إن مساحة العنونة تقسم بين ال RAM و الROM وأجهزة الدخل والخرج حيث يكون لكل منها منطقة خاصة بها في ذاكرة العنونة ويفعل أحد هذه الأجهزة عندما يقوم المعالج بطلب عنوان معين يقع في منطقة هذا الجهاز. تسمى عملية التقسيم هذه ب فك التشفير (address decoding) حيث تقوم دارات منطقية معينة ضمن المعالج بتقسيم ذاكرة العنونة إلى أجزاء أصغر حيث تحتل الذاكرة وأجهزة الدخل والخرج مكان خاص بها. كما وتقوم هذه الدارات بتوليد إشارات مستقلة لتفعيل الجهاز المناسب وفقا لحالة ممر العناوين (address bus) وكنتيجة لذلك لا تحتاج هذه الأجهزة (Memory and I/O)إلى معرفة نظام فك التشفير الخاص بالحاسب حيث يقوم المعالج باستدعائها وإيقافها وفقا لخوارزمية البرنامج المنفذة.


انتهى الدرس الأول
انشاء الله في الأيام القليلة القادمة سأتابع في هذه السلسلة حيث سندخل إلى قلب المعالج ونتعرف على الطريقة التي يقوم بها بمعالجة البيانات
In Your HEART.....Can't You Feel The GLORY!
صورة العضو الشخصيه
Hasan
عضو شرف
 
مشاركات: 792
اشترك في: الجمعة نوفمبر 09, 2007 8:35 pm
مكان: Damascus
الاختصاص: electronics&communications
النشاط في الموقع: ترجمة المقالات العلمية

Re: دروس في المعالجات الصغرية وبنية الحاسب

مشاركةبواسطة Eng.Geco في الجمعة أكتوبر 24, 2008 9:23 pm

مشكور اخي

موضوع مشيق


اشكر جهودك
لكي نكون واقعيين .....يجب أن نطلب المستحيل
صورة العضو الشخصيه
Eng.Geco
عضو شرف
 
مشاركات: 271
اشترك في: الجمعة أكتوبر 26, 2007 5:02 pm
الاختصاص: Computer science

Re: دروس في المعالجات الصغرية وبنية الحاسب

مشاركةبواسطة مازن في السبت أكتوبر 25, 2008 1:02 am

الموضوع رائع والمعلومات قيّمة جدا كمقدمة لهذه السلسلة ...

بانتظار التتمة

أخوك

سنبني معاً أكبر موقع علمي تخصصي عربي ومجاني ... عالم الإلكترون


يا الله ... مالنا غيرك يا الله



وأســـعدُ الناسِ بين الورى رَجُلٌ ------ تُقضَى على يده للناسِ حاجــــاتُ
قد ماتَ قومٌ وما ماتَتْ مكارِمُهم ------- وعاشَ قومٌ وهم بين الناسِ أمواتُ
صورة العضو الشخصيه
مازن
عضو شرف
 
مشاركات: 3180
اشترك في: الخميس سبتمبر 13, 2007 12:58 am
مكان: ســـوريـــا العديــّـــة
الاختصاص: الهندسة
النشاط في الموقع: تحرير المواضيع العلمية

Re: دروس في المعالجات الصغرية وبنية الحاسب

مشاركةبواسطة LORD في السبت أكتوبر 25, 2008 10:09 am

موضوع قيم
بانتظار التتمة
يعطيك العافية
العلم ليس سوى إعادة ترتيبٍ لتفكيرك اليومي
من لم يخطئ، لم يجرب شيئاً جديداً
صورة العضو الشخصيه
LORD
مشرف علمي
 
مشاركات: 321
اشترك في: السبت نوفمبر 03, 2007 2:04 pm
مكان: Damascus
الاختصاص: اتصالات برمجة الكترونيات
النشاط في الموقع: اشراف علمي

Re: دروس في المعالجات الصغرية وبنية الحاسب

مشاركةبواسطة Eng.JirJis في السبت نوفمبر 01, 2008 6:33 pm

شـــــــــــــكر اااا على هذااا الموضوع المفيد و الجيد و اتمنى وجود تتـــــــــــمى لهذا الموضــــــــــوع
صورة
صورة العضو الشخصيه
Eng.JirJis
عضو مميز
 
مشاركات: 550
اشترك في: الأحد فبراير 24, 2008 4:26 pm
مكان: الحســـ HASAKAH ــــــكة
الاختصاص: Computer Technology Student
النشاط في الموقع: Pc - Programming - Des

Re: دروس في المعالجات الصغرية وبنية الحاسب

مشاركةبواسطة رورو في الأربعاء نوفمبر 26, 2008 10:26 am

شــــــــــــــــــــــــــــــــــــــــــــــــكرا جزيلا على الموضوع المفيد جدا
صورة العضو الشخصيه
رورو
 
مشاركات: 2
اشترك في: الثلاثاء نوفمبر 25, 2008 1:44 pm
الاختصاص: طالبة
النشاط في الموقع: التعليم

Re: دروس في المعالجات الصغرية وبنية الحاسب

مشاركةبواسطة MAS في الجمعة ديسمبر 05, 2008 11:35 pm

مشكور على هذا الموضوع المفيد والمعلومات الهامة والأساسية للطلاب
صورة العضو الشخصيه
MAS
 
مشاركات: 11
اشترك في: الأربعاء ديسمبر 03, 2008 11:49 pm
الاختصاص: electronic engneering
النشاط في الموقع: elctronic subject


العودة إلى القسم العلمي

المتواجدون الآن

المستخدمون المتصفحون لهذا المنتدى: لا يوجد أعضاء مسجلين متصلين و 15 زائر/زوار

منتديات بورصات    


cron