إنتل 8080

إنتل 8080 هو ثاني معالج مصغر 8 بايت قامت إنتل بتصميمه وتصنيعه وتم إطلاقه في أبريل 1974. وقد كان امتدادا ونسخة مدعمة للتصميم السابق 8080، برغم عدم احتواؤه على التوافق الثنائي. وقد كان حد التردد الأولي المحدد للساعة هو 2 ميجاهرتز مع التعليمات الشائعة التي تتم في وقت تنفيذي يبلغ 4 و5 و7 و10 و11 دورة مما يعني مئات الآلاف القليلة من التعليمات في الثانية الواحدة. وقد أطلق على نسخة 8080 في بعض الأحيان "أول معالج مصغر يمكن استخدامه واقعيا" بالرغم من حقيقة أن المعالجات المصغرة الأولى كانت تستخدم في الحاسبات الآلية وبعض تطبيقات البرامج الأخرى.
وقد تم تصنيع طراز 8080 باستخدام NMOS ذو الحمل المعزز الغير مشبع والذي يتطلب +12 فولتا إضافيى ومزود -5 فولت

نموذج البرمجة

إنتل 8080 هو خليفة الطراز 8008، وهو يستعين بنفس مجموعة التعليمات التي تم تحديدها ل8008 (والتي طورتها شركة كمبيوتر تيرمينال) وكانت الشفرة المصدرية متوافقة مع النسخة السابقة إلا أنه قد تم إضافة بعض العمليات السهلة العملية ذات 16 بايت للتعليمات المحددة أيضا. وقد سمحت نلك الباقة الكبرى من 40-pin DIP لطراز 8080 له بتزويد ناقل عناوين 16 بايت وناقل بيانات 8 بايت مما ساعد على سهولة الوصول إلى ذاكرة تسع 64 كيلوبايت.

السجلات

يتمتع هذا المعالج بسبعة سجلات كل منها ذو سعة 8 بايت وهي (A,B,C,D,E,H,L) حيث A هي مراكم 8 بايت أما الستة الأخرى يمكن استخدامها إما كسجلات بايت أو كثلاثة أزواج من السجلات ذات 16 بايت (BC,DE,HL) وذلك بناء على تعليمات محددة. بعض التعليمات تمكن HL من استخدامها كمراكم 16 بايت (محدود) وسجل زائف، ويمكن استخدام السجل M في أي مكان تقريبا يمكن فيه استخدام السجل ويتم الإشارة إلى عنوان الذاكرة المشار إليها ب HL، كما أنه يتضمن أيضا مؤشر مكدسي للذاكرة سعته 16 بايت (ليحل محل مكدس 8008 الداخلي) وعداد برامج سعة 16 بايت.

الأوامر / التعليمات

كما هو الحال مع المعالجات الأخرى سعة 8 بايت تم ترميز كافة التعليمات في بايت واحد (متضمنا أعداد- سجلات، ولكنه يستبعد البيانات الفورية)، من أجل البساطة. بعضها تبعه بايت أو اثنين من البيانات التي يمكن أن تكون معامل فوري، عنوان ذاكرة أو رقم منفذ. وكالمعالجات الكبرى، فهو يتضمن أيضا تعليمات النداء CALL وتعليمات الرجوع RET لاستدعاء أو الرجوع عن الإجراءات متعددة المستويات (والتي يمكن تنفيذها بشروط ،مثل القفزات) وتعليمات حفظ واستعادة أي زوج سجلات سعة 16 بايت في دفتر الآلة. كما كان هناك أيضا ثماني تعليمات نداء سعة 1 بايت (RST) للروتين الثانوي تقع على عنوان ثابت 00h, 08h, 10h,...,38h. وقد كانت تلك تهدف إلى أن يتم توريدها عبر جهاز خارجي من أجل استدعاء روتين متطابق للانقطاع والخدمة، ولكنها كانت توظف غالبا على أنها نداءات سريعة بالنظام. من أكثر الأوامر تعقيدا هو XTHL والذي كان يستخدم لاستبدال زوج السجل HL مع القيمة المخزنة على العنوان المشار إليه باسم مؤشر الدفتر.

تعليمات السعة 8 بايت

معظم العمليات ذات السعة 8 بايت يمكن أن تتم فقط على مراكم سعة 8 بايت (سجل A). أما بالنسبة للعمليات التكاملية الثنائية سعة 8 بايت، يمكن للمعامل الآخر أن يكون إنا قيمة فورية أو سجل آخر سعة 8 بايت أو خلية ذاكرة يتعامل معها زوج السجل HL سعة 16 بايت. أنا النسخ المباشر فيتم دعمه بين أي سجلين سعة 8 بايت وبين أي سجل سعة 8 بايت وخلية ذاكرة تتعامل مع HL. ونظرا للترميز النظامي لتعليمات MOV (باستخدام ربع المساحة المتاحة من الأوبكود Opcode) فقد كان هناك عدة شفرات كثيرة لنسخ السجل داخل نفسه (MOV B,B على سبيل المثال) والتي كانت ذات استخدام قليل، فيما عدا التأخير. ومع ذلك، فما كان عبارة عن نسخة من الخلية المعالجة بHL على نفسها (MOV M,M على سبيل المثال) كانت تستخدم بدلا من ذلك في ترميز تعليمات HTL(وقف التنفيذ حتى إعادة الضبط من الخارج أو الانقطاع).

العمليات التشغيلية سعة 16 بايت

بالرغم من 8080 كان بوجه عام معالج ذو سعة 8 بايت، فقد كان أيضا يتمتع بقدرات محدودة لأداء العمليات سعة 16 بايت: ويمكن تحميل أي من أزواج السجلات الثلاثة ذات السعة 16 بايت (BC, DE, HL) بقيمة 16 بايت فورية (باستخدام LXI) مع الزيادة أو النقصان (باستخدام INX و DCX)، أو إضافتها إلى HL (مستخدما DAD). أما عملية XCHG[1]  فقد استبدلت قيم HL و DE. ومع إضافة HL إلى نفسها، كان من الممكن تحقيق نفس النتيجة كتحول حسابي نحو اليسار سعة 16 بايت. التعليمات الوحيدة ذات السعة 16 بايت التي تؤثر على أي راية هي DAD H/D/B والذي يضع علم (الحمل) CY بحيث يسمح للمعاملات الرياضية المبرمجة سعة 24 بايت و 32 بايت (أو أكثر) والمطلوبة لتنفيذ العمليات الحسابية ذات النقطة العائمة، على سبيل المثال.

منفذ المدخل والمخرج

يدعم 8080 ما يصل إلى 256 منفذ للمخارج والمداخل (I/O) يتم الوصول إليها عبر تعليمات I/O المخصصة - بحيث تستعين بعناوين النافذ كمعاملات. هذا الشكل الخرائطي ل I/O كان يعتبر ميزة حيث أنه حرر مساحة العناوين المحدودة للمعالج. ويستعين العديد من مصممي CPU بدلا من ذلك بما يسمى I/O الخرائطي للذاكرة، والذي تستخدم فيه مساحة عناوين شائعة لكل من RAM والرقائق المحيطية. ويلغي هذا الحاجة إلى تعليمات I/O خاصة بالرغم من أن أحد العيوب التي يمكن أن ترتبط بمثل هذه التصميمات هي أنه يجب استخدام هذا الجهاز الخاص للإدخال حالات انتظار كأسطح هامشية محيطة وتكون غالبا أبطأ من الذاكرة. ومع ذلك ففي بعض أجهزة كمبيوتر 8080 البسيطة، كان يتم التعامل مع I/O فعليا كما لو أنها خلايا ذاكرة" (ذات خريطة للذاكرة"، بحيث تترك أوامر I/O دون استخدام. كما يمكن أن يعمل معالجة I/ O أحيانا على توظيف حقيقة أن المعالج يمكن أن ينتج عنه نفس عنوان المنفذ ذو السعة 8 بايت لكلا من بايت العناوين العليا والسفلى (بمعنى أن IN 05h يمكن أن يضع العنوان 0505h على حافلة عنوان سعة 16 بايت). وتم استخدام مخططات منافذ I/O في الخلفية المتوافقة Zilog Z80 وإنتل 8085 وأيضا مثل عائلات x86 ذات العلاقة الوثيقة بالمعالجات المصغرة.

مساحة الدفتر المنفصلة

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

الكلمة الداخلية الرسمية

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

التنفيذ المادي

تستعين دائرة 8080 المتكاملة المتحدة ببوابات NMOS ذات الحمل المعزز غير المشبعة والتي تحتاج إلى إلى مزيد من الجهد الكهربي (من أجل حيادية بوابة الحمل). وقد تم تصنيعه من عملية بوابة سيليكون تستعين بالحد الأدنى لحجم هذه الميزة وهو 6 ميكرو متر. طبقة مفردة من المعدن كانت تستخدم للربط الداخلي بين حوالي 6000 ترانزستور في التصميم ولكن الطبقة عالية المقاومة من البولي سيليكون والتي تتطلب قوة كهربية عالية لبعض الترابطات الداخلية تم تنفيذها ببوابات ترانزستور. أما مقاس الصبغة فيصل إلى 20 مم2.

التطبيقات والخلفاء

استخدم إنتل 8080 في عدة كمبيوترات مصغرة سابقة مثل mits Altair 8800 وكمبيوتر بروسيسور تكنولوجي SOL-20 jdvldkhg وكمبيوتر IMSAI 8080 المصغر بما يكون أساس الآلات التي تقوم بتشغيل نظام CP/M (الأخير، هو المتوافق تماما تقريبا والأكثر قدرة معالج Zilog Z80، والذي سيستثمر فيه، مع Z80 CP/M ليصبح مركبا من CPU و OS للحقبة التي تبدأ من 1976 حتى 1983، بما تشابه كثيرا مع طرازات x86 & MS-DOS للكمبيوترات التي ظهرت بعد عقد من ذلك). حتى في عام 1979 بعد التعرف على معالجات Z80 و 80885 باع خمسة مصنعين ما يصل إلى 500.000 وحدة شهريا بسعر يتراوح بين 3 إلى 4 دولارات للوحدة. أول كمبيوتر مصغر ذو لوح مفرد (راجع إصدار مايو 1976 من راديو إليكترونيكس) والذي كان يسمى "دينا مايكرو" كان يعتمد على معالج Intel C8080A واستخدم أيضا أول ذاكرة قراءة فقط قابلة للبرمجة والمسح EPROM من إنتاج إنتل وهو C1702A. ثم أعيد تسمية "دينا ميكرو" بواسطة شركة إيه آند إل إنسترومنتس بديربي، عام 1976 ليصبح اسمه "MMD-1" أو " المصمم المصغر الأصغر 1) وقد اشتهر كمثال على الكمبيوترات المصغرة في سلسلة 8080 "باج بوك" الشائعة في هذا الوقت. ومن أحد الاستخدامات الأولى لموديل 8080 تمت في نهاية السبعينات بواسطة شركة كيوبك ويسترن داتا بسان دييجو كاليفورنيا في أنظمتها لمجموعة "أوتوميتد فير" المصممة خصيصا لأنظمة المرور المجمع مثل BART وآخرين حول العالم. من الاستخدامات الصناعية المبكرة ل8080 كان في عقل خط منتجات DataGraphiX Auto-COM (كمبيوتر أوتبت مايكروفيش والذي استعان بمجموعة كبيرة من بيانات المستخدمين من بداية بكرة الشريط إلى نهايته وتصويرها على مايكروفيش. تضمنت أجهزة Auto-COM نظام ثانوي أوتوماتيكي كامل لتقطيع ومعالجة وغسل وتجفيف الأفلام- عمل رائع جدا سواء في هذا الوقت أو في القرن الواحد والعشرين، بحيث تكتمل العملية تماما بنجاح بواسطة معالج مصغر سعة 8 بايت يعمل بسرعة توقيت أقل من 1 ميجا هرتز بحد ذاكرة يبلغ 64 كيلو بايت. بالإضافة إلى ذلك، تم تأسيس عدد من ألعاب الفيديو ذات المتاهات فيما سبق اعتمادا على معالج 8080 المصغر. وربما تكون لعبة سبيس إتفيدرز أكثر الأمثلة شيوعا على ذلك.
وبعد إطلاق معالج 8080 المصغر بفترة قصيرة، تم إطلاق التصميم المنافس موتورولا 6800 ثم جاء بعده إم أو إس تكنولوجي 6502 من نفس طراز 6800. وقد قدم زيلوج طراز Z80، والذي يتضمن مجموعة تعليمات متوافقة للغة الآلة واستخدم في البداية نفس لغة التركيب الخاصة ب8080، ولكن لأسباب قانونية، طورت زيلوج لغة تركيب بديلة مختلفة من حيث تركيبيا (ولكنها متوافقة من حيث الترميز) لطراز Z80، أما في إنتل، فقد تبع طراز 8080 طراز 8085 المتوافق والأكثر تأنقا من الناحية الكهربائية، ثم مؤخرا طراز 8086 التوافق مع لغة التركيب سعة 16 بايت وتلاه طراز 8088 سعة 8 و 16 بايت والذي اختارته شركة IBM لأجهزتها الحديثة من الكمبيوتر والتي كان سيتم إطلاقها عام 1981. بعد ذلك قامت شركة إن أي سي بتصنيع معالج NEC V20 (وهو استنساخ من 8088) والذي دعم طراز المحاكاة 8080. ومن ثم فإن طراز 8080، عبر ISA، أثر تأثيرا مستمرا على تاريخ صناعة الكمبيوتر.
في الاتحاد السوفيتي، قام المصنعون باستنساخ الهندسة التركيبية لمعالج 8080 المصغر وبدأوا في إنتاجها تحت اسم KP580ИK80 (وتم تسميتها بعد ذلك KP580BM80)، والذي تم فيها تثبيت المشابك أيضا بصورة مشابهة. كان هذا المعالج أساس تصنيع Radio86RK (Радио 86РК في روسيا)، وفي الغالب هو الكمبيوتر ذو اللوحة المنفردة الأكثر شعبية في الاتحاد السوفيتي. أما الطراز السابق لRadio86RK فقد كان ميكرو-80 (Микро-80 بالروسية)، وخليفته هو Orion-128 (Орион-128 بالروسية) ذو العرض الجرافيك، وكلاهما تم تصنيعه اعتمادا على معالج KP580. وطبقا لبعض المصادر يتمتع النظير السوفيتي باثنين من التعليمات الغير موثقة، والخاص به هو وحده، ومع ذلك فهي لم تعرف بصورة واسعة النطاق.
من الطرازات الأخرى المتوافقة مع إنتل 8080 إيه هو الطراز المسمى إم إم إن 8080، وتم تصنيعه في ميكرو إليكترونيكا ببوخارست برومانيا. كما كان هناك أيضا وحدة معالجة مركزية بولندية متوافقة مع نفس الطراز تسمى MCY7880  والنسخة التشيكية Tesla MHB 8080A.

التغيرات الصناعية

وقد غير طراز 8080 من الطريقة التي يتم بها تصنيع أجهزة الكمبيوتر. حين ظهر طراز 8080 بالأسواق، كنت أنظمة الكمبيوتر يتم تصنيعها عادة بواسطة مصنعي ومنتجي الكمبيوتر مثل شركات Digital Equipment Corporationو Hewlett Packard و IBM. وكان المصنع ينتج الجهاز بالكامل، بما في ذلك المعالج والوحدات الفرعية وبرمجيات النظام مثل المجمعات وأنظمة التشغيل. وقد تم تصميم 8080 في الواقع ليتماشى مع أي تطبيق تقريبا إلا نظام الكمبيوتر الكامل. قامت شركة Hewlett Packard بتطوير سلسلة HP 2640 للوحدات الفرعية الذكية والتي تعتمد على طراز 8080. وقد كان HP 2647 وحدة فرعية تدير BASIC على 8080. ويمكن أن تقوم مايكروسوفت بتسويق منتجها الأساسي وهو أول لغة برمجة شائعة ل8080 وسوف تستحوذ لاحقا على DOS من أجل كمبيوترات IBM.
وقد أثار الطرازين 8080 و 8085 إصدار طراز 8086 ليكون امتداد للمصدر التوافقي (وليس متوافقا بشكل ثنائي) ل8085. أجهزة الكمبيوتر التي اعتمدت على تصميم 8086 وأتباعه تطور إلى محطات عمل وخوادم ذات سعة 16 و 32 و64 بايت، بحماية متطورة للذاكرة وتقسيم وسمات المعالجة المتعددة بما يوضح الفارق بين أجهزة الكمبيوتر الصغيرة والكبيرة (أنماط حماية الطرازات 80286 و 80386 كانت من أهم الطرازات التي تقوم بذلك). كما ازداد حجم الرقاقات بحيث لا تختلف حجم وطاقة الرقاقات الكبيرة x86 عن الرقاقات المصممة للمستهلك النهائي، وأصبحت الإستراتيجية شائعة لتصنيع أجهزة كمبيوترات أكبر حجما هي ربط مجموعة من معالجات x86 عبر الشبكات.
وقد حل التصميم الرئيسي لمعالج 8080 وخلفاؤه محل العديد من أجهزة الكمبيوتر كبيرة الحجم ومتوسطة المدى الامتلاكية كما أنها نافست كافة التحديات التكنولوجية الأخرى مثل RISC. وقد تخلى معظم مصنعي الكمبيوتر عن إنتاجهم للمعالجات الخاصة بهم والتي يكون أداؤها دون مستوى الأداء العالي المطلوب. وبالرغم من أن معالج x86 ربما لا يكون أكثرها تميزا أو أكثر التصميمات ذات الكفاءة من الناحية النظرية، كما أن القوة السوقية المحضة لعدة دولارات التي تتجه نحو تنقيح تصميم معين جعلت من طراز x86 طرازا عائليا اليوم، وسوف يظل لبعض الوقت التصميم السائد لأي معالج، حتى أنه سيتجاوز محاولات إنتل لاستبداله بتصميم هيكل غير متوافق مثل iAPX 432 و Itanium.

تاريخ

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