زيلوج Z80
![]() Z80 صنع في يونيو 1976 حسب طابع التاريخ | |
معلومات عامة | |
---|---|
انطلقت | مارس 1976 |
صمم بواسطة | فيديريكو فاجين وماساتوشي شيما |
الشركة المصنعة المشتركة (ق) | |
أداء | |
الأعلى. معدل ساعة وحدة المعالجة المركزية | 2.5 ، 4 ، 6 ، 8 ميجاهرتز إلى 10 ميجاهرتز مع متغير CMOS يصل إلى 20 ميجاهرتز ومشتقات متوافقة ثنائية (من Zilog) حتى 33 و 50 ميجاهرتز |
عرض البيانات | 8 بت [1] |
عرض العنوان | 16 بت [1] |
المواصفات المادية | |
الترانزستورات |
|
العبوة (العبوات) | |
مقبس (مقابس) |
|
Z80 هو معالج دقيق 8 بت قدمته Zilog كأول منتج للشركة الناشئة . تم تصميم Z80 بواسطة Federico Faggin في أواخر عام 1974 وقام بتطويره هو و 11 موظفًا لديه بدءًا من أوائل عام 1975. تم تسليم عينات العمل الأولى في مارس 1976 ، وتم طرحها رسميًا في السوق في يوليو 1976. مع عائدات من Z80 ، قامت الشركة ببناء مصانع الرقائق الخاصة بها ونمت إلى أكثر من ألف موظف خلال العامين التاليين. [2]
يعد Zilog Z80 امتدادًا متوافقًا مع البرامج وتحسينًا لـ Intel 8080 ، ومثله ، كان يستهدف بشكل أساسي الأنظمة المدمجة . على الرغم من استخدامها في هذا الدور ، أصبحت Z80 أيضًا واحدة من أكثر وحدات المعالجة المركزية استخدامًا في أجهزة الكمبيوتر المكتبية وأجهزة الكمبيوتر المنزلية من السبعينيات إلى منتصف الثمانينيات. [3] [4] كانت شائعة أيضًا في التطبيقات العسكرية ، والمعدات الموسيقية مثل المزج (مثل Roland Jupiter-8 ) ، وألعاب الأركيد التي تعمل بقطع النقود المعدنية في أواخر السبعينيات وأوائل الثمانينيات ، بما في ذلك Pac-Man .
قامت Zilog بترخيص Z80 لشركة Synertek و Mostek ومقرها الولايات المتحدة ، والتي ساعدتها في الإنتاج الأولي ، بالإضافة إلى الشركة المصنعة الأوروبية المصدر الثاني SGS . تم نسخ التصميم أيضًا من قبل العديد من المصنعين اليابانيين وأوروبا الشرقية والسوفيتية. [ii] حاز هذا على قبول Z80 في السوق العالمية حيث بدأت الشركات الكبيرة مثل NEC و Toshiba و Sharp و Hitachi في تصنيع الجهاز (أو النسخ أو التصاميم المتوافقة مع Z80).
في العقود الأخيرة ، أعاد Zilog التركيز على السوق المتنامي للأنظمة المضمنة ، وتم تقديم أحدث عائلة متحكم دقيق متوافقة مع Z80 ، eZ80 24 بت بالكامل مع نطاق عناوين خطي 16 ميجابايت ، بنجاح إلى جانب Z80 الأبسط و منتجات Z180 .
التاريخ

التاريخ المبكر
عمل الفيزيائي والمهندس Federico Faggin في Intel على تصميم المعالجات الدقيقة . في Fairchild Semiconductor ، ولاحقًا في Intel ، كان Faggin يعمل على تكنولوجيا تصنيع الترانزستور وأشباه الموصلات الأساسية. كما طور منهجية التصميم الأساسية المستخدمة للذاكرة والمعالجات الدقيقة في Intel وقاد العمل على Intel 4004 و Intel 8080 والعديد من الدوائر المتكاملة الأخرى. كان Masatoshi Shima هو المصمم الرئيسي للمنطق والمستوى الترانزستور للطرازين 4004 و 8080 تحت إشراف Faggin ، بينما كان رالف Ungermann مسؤولاً عن الجماركتصميم الدوائر المتكاملة . [5]
في أوائل عام 1974 ، لم تنظر إنتل إلى معالجاتها الدقيقة على أنها منتجات تُباع بمفردها بقدر ما كانت وسيلة لبيع المزيد من منتجاتها الرئيسية ، مثل ذاكرة الوصول العشوائي الثابتة وذاكرة القراءة فقط . وضعت إعادة التنظيم العديد من الأقسام المستقلة سابقًا تحت إشراف Les Vadasz ، وتم إنشاء مجموعة جديدة لتسويق المعالجات الدقيقة مباشرةً. في ذلك العام ، بلغ الركود 1973-1975 ذروته وقام Intel بتسريح عدد من الموظفين. [5] كل هذا أدى إلى أن يصبح فاجين مضطربًا ، ودعا Ungermann للخروج لتناول المشروبات وسأله عما إذا كان مهتمًا بتأسيس شركته الخاصة. وافق Ungermann على الفور ، وكما لم يكن لديه ما يفعله في Intel ، غادر في أغسطس أو سبتمبر ، تلاه Faggin ، الذي كان آخر يوم له في Intel كان Halloween 1974.[6] عندما سمع شيما ، طلب القدوم إلى الشركة الجديدة أيضًا ، لكن لم يكن لديه تصميم حقيقي للمنتج أو مال ، طلبوا منه الانتظار. [7]
بدأت الشركة المشكلة حديثًا وغير المسماة في البداية في تصميم متحكم دقيق أحادي الشريحة يسمى 2001. التقوا مع Synertek لمناقشة التصنيع على خطوطهم ، وعندما بدأ Faggin في فهم التكاليف المتضمنة ، أصبح من الواضح أن منتجًا منخفض التكلفة مثل هذا لن تكون قادرة على التنافس مع تصميم من شركة لديها خطوط إنتاج خاصة بها ، مثل Intel. ثم بدأوا في التفكير في استخدام معالج دقيق أكثر تعقيدًا ، عُرف في البداية باسم Super 80 ، مع الميزة الرئيسية هي استخدامه ناقل +5 V [7] بدلاً من المعالجات الأكثر شيوعًا -5 و +5 و 12 V المستخدمة في تصميمات مثل 8080. كان المقصود من التصميم الجديد أن يكون متوافقًا مع 8080 ، ولكنه أضاف العديد من الميزات الرائعة لهاتف Motorola 6800 ، بما في ذلكتسجيلات الفهرس والمقاطعات المحسنة. [8]
استثمار إكسون ، يبدأ التطوير التفصيلي
بينما كان لا يزال قيد الإنشاء ، سمعت النشرة الإخبارية للصناعة Electronic News عنهم ونشرت قصة عن الشركة التي تم تشكيلها حديثًا. وقد جذب ذلك انتباه شركة Exxon Enterprises ، الذراع الاستثمارية للتكنولوجيا الفائقة لشركة Exxon . في ذلك الوقت ، في خضم الركود ، كان هناك القليل جدًا من رأس المال الاستثماري المتاح ، حيث تم إنفاق إجمالي 10 ملايين دولار للصناعة بأكملها في عام 1975. اتصل شخص من Exxon بالشركة التي لم تذكر اسمها بعد ، [7] و رتبت اجتماعًا أدى في النهاية إلى تقديم تمويل مبدئي قدره 500000 دولار في يونيو 1975. [9]
مع مناقشة التمويل والتصميم الذي سيتم بناؤه ، انضم شيما في فبراير 1975. [8] شرع شيما على الفور في إنتاج تصميم عالي المستوى ، مضيفًا عدة مفاهيم خاصة به. على وجه الخصوص ، استخدم خبرته في أجهزة الكمبيوتر الصغيرة من NEC لإضافة مفهوم مجموعتين من سجلات المعالجات حتى يتمكنوا من الاستجابة بسرعة للمقاطعات . [6] [iii] بدأ Ungerman في تطوير سلسلة من وحدات التحكم ذات الصلة والرقائق الطرفية التي من شأنها أن تكمل التصميم. [10]
خلال هذه الفترة ، طورت شيما سمعة أسطورية لكونها قادرة على تحويل المفاهيم المنطقية إلى تصميم مادي في الوقت الفعلي ؛ أثناء مناقشة ميزة مقترحة ، غالبًا ما كان يقاطعها ويوضح مقدار المساحة التي ستشغلها الشريحة ويعترض على إضافتها إذا كانت كبيرة جدًا. [11] اكتمل المرور الأول في التصميم بحلول أبريل 1975. أكملت شيما تخطيطها المنطقي في بداية مايو. تم إصدار نسخة ثانية من التصميم المنطقي في 7 أغسطس وتفاصيل الحافلة بحلول 16 سبتمبر. اكتمل الشريط اللاصق في نوفمبر ، وتطلب تحويل الشريط إلى قناع إنتاج شهرين آخرين. [12]
بدأ Faggin بالفعل في البحث عن شريك إنتاج. بحلول هذا الوقت ، قام كل من Synertek و Mostek بإعداد خطوط إنتاج وضع النضوب التي يمكن استخدامها لإنتاج التصميم. بعد أن تحدثت إلى Synertek سابقًا ، اقترب منها Faggin أولاً. ومع ذلك ، طالب رئيس Synertek بمنح الشركة ترخيص مصدر ثان ، مما يسمح لها ببيع التصميم مباشرة. اعتقد فاجن أن هذا قد يعني أنه لا يمكنهم التنافس حتى لو أقاموا خطوطهم الخاصة ، وانتهى الاتفاق. ثم التفت إلى Mostek ، الذي وافق على شرط الحصرية بينما قامت Zilog بإعداد خطوطها ، وتم منحها في النهاية اتفاقية المصدر الثاني. [13]
بعد التفكير في العديد من الأسماء للشركة الجديدة ، والعثور عليها بشكل لا يُنسى لدرجة أنه لم يستطع تذكرها حتى بعد يوم واحد ، كان فاجين وأونغرمان يتجولان حول الأفكار القائمة على "المنطق المتكامل" عندما قال Ungermann "ماذا عن Zilog؟" وافق فاجين على الفور ، مشيرًا إلى أنه يمكنهم القول إنها "الكلمة الأخيرة في المنطق المتكامل". عندما التقيا في اليوم التالي واستدعاهما على الفور ، كان للشركة اسمها. [14]
في الإنتاج
تم إرجاع العينات الأولى من موستيك في 9 مارس 1976. [10] بحلول نهاية الشهر ، كانوا قد أكملوا أيضًا نظام التطوير القائم على المجمع . كان بعض دعم Z80 و ICs الطرفية قيد التطوير في هذه المرحلة ، وتم إطلاق العديد منها خلال العام التالي. من بينها Z80 CTC (عداد / مؤقت) ، Z80 DMA (وصول مباشر للذاكرة) ، Z80 DART (جهاز استقبال - مرسل غير متزامن مزدوج) ، Z80 SIO (وحدة تحكم في الاتصال المتزامن) ، و Z80 PIO (إدخال / إخراج متوازي).
تم إطلاق Z80 رسميًا في يوليو 1976. [15] كان أحد العملاء الأوائل مشتريًا ، غير معروف لشركة Zilog ، وعمل لصالح شركة NEC. في ذلك الوقت ، اشتهرت شركات الإلكترونيات اليابانية بأخذ تصاميم الرقائق الأمريكية وإنتاجها بدون ترخيص. كان فريق Zilog قلقًا بشأن هذا الأمر ، وقد توصل Faggin إلى فكرة إضافة ترانزستورات يمكن تعديلها بدقة لتعمل بشكل مختلف عما قد يوحي به الفحص البصري. أضافت شيما ستة من هذه "الفخاخ" حول التصميم. في وقت لاحق ، أخبر مهندس داخل شركة NEC شيما أن المصائد أخرت جهود النسخ لمدة ستة أشهر. [16]
سمح الإطلاق الناجح لـ Faggin و Ungermann بالاقتراب من Exxon بحثًا عن تمويل لبناء مصنعهم الخاص. وافقت الشركة ، وبنت Zilog خط إنتاج بسرعة كبيرة. سمح لهم ذلك بالاستيلاء على حوالي 60 إلى 70٪ من إجمالي السوق لمبيعات Z80. [17] مع تشغيل خطهم الخاص ، تم منح Mostek الضوء الأخضر لبدء مبيعات إصداراتهم الخاصة ، MK3880 ، والتي قدمت مصدرًا ثانيًا للعملاء تفتقر إليه Intel. في ذلك الوقت ، كان المصدر الثاني يعتبر مهمًا للغاية لأن شركة ناشئة مثل Zilog قد تخرج عن العمل وتترك العملاء المحتملين عالقين. [8] [4]
مقارنة مع 8080
صمم Faggin مجموعة التعليمات لتكون ثنائية متوافقة مع 8080 [18] [19] بحيث يتم تشغيل معظم كود 8080 ، ولا سيما نظام التشغيل CP / M ومجمع Intel PL / M لـ 8080 (بالإضافة إلى الكود الذي تم إنشاؤه) غير معدل على وحدة المعالجة المركزية Z80 الجديدة. صمم Masatoshi Shima معظم الهندسة المعمارية الدقيقة بالإضافة إلى مستويات البوابة والترانزستور لوحدة المعالجة المركزية Z80 ، بمساعدة عدد صغير من المهندسين وأفراد التخطيط . [20] [21]شارك الرئيس التنفيذي Federico Faggin بشكل كبير في عمل تخطيط الرقاقة ، جنبًا إلى جنب مع شخصين متخصصين في التخطيط. وفقًا لـ Faggin ، كان يعمل 80 ساعة في الأسبوع من أجل تلبية الجدول الزمني الضيق الذي قدمه المستثمرون الماليون. [2]
قدمت Z80 العديد من التحسينات على 8080: [19]
- مجموعة تعليمات محسّنة تشمل:
- نظام أكثر منطقية وفهمًا وقابلية للقراءة من فن الإستذكار لتعليمات المجمّع
- تعليمات حركة بيانات 16 بت أكثر مرونة (تحميل ، أو LD) ، بما في ذلك بشكل حاسم مؤشر المكدس SP
- أوضاع عنونة أكثر مرونة للإدخال / الإخراج إلى المنافذ الطرفية الخارجية
- عنونة بت واحد لجميع السجلات والذاكرة ، بما في ذلك اختبار البت
- ينقل / يدور على الذاكرة ويسجل بخلاف المجمع
- محسّن وأكثر دقة (من 8080 السابقة) حساب BCD
- قم بتدوير التعليمات لسلاسل رقم BCD في الذاكرة
- طرح 16 بت ونفي 8 بت
- حلقات البرنامج
- عداد البرامج (PC) النسبي يقفز
- نسخ الحظر ، وحظر الإدخال / الإخراج (I / O) ، وإرشادات البحث عن البايت. [22]
- علامة تجاوز مع دعم أفضل للمعاملات الحسابية ذات 8 و 16 بت الموقعة. [الخامس]
- يسجل فهرس IX و IY الجديد مع تعليمات عنونة القاعدة + الإزاحة المباشرة
- نظام مقاطعة أفضل :
- نظام مقاطعة متجه أكثر تلقائية وعمومية ، الوضع 2 ، مخصص بشكل أساسي لخط عداد / مؤقتات Zilog ، DMA ووحدات التحكم في الاتصالات ، بالإضافة إلى نظام مقاطعة متجه ثابت ، الوضع 1 ، للأنظمة البسيطة مع الحد الأدنى من الأجهزة (مع وضع 0 الوضع المتوافق 8080). [23]
- مقاطعة غير قابلة للقناع (NMI) ، والتي يمكن استخدامها للاستجابة لحالات انقطاع الطاقة أو غيرها من الأحداث ذات الأولوية العالية (والسماح لنظام Z80 البسيط بتنفيذ مخطط مقاطعة من مستويين بسهولة في الوضع 1 ).
- ملف تسجيل مكرر كامل ، [24] يمكن تبديله بسرعة ، لتسريع الاستجابة للمقاطعات مثل معالجات الأحداث غير المتزامنة السريعة أو المرسل متعدد المهام . على الرغم من أنها لم تكن مخصصة لسجلات إضافية للكود العام ، إلا أنها استخدمت بهذه الطريقة في بعض التطبيقات. [السادس]
- أجهزة أقل مطلوبة لإمداد الطاقة وتوليد الساعة وواجهة للذاكرة والإدخال / الإخراج
- مزود طاقة أحادي بجهد 5 فولت (8080 مطلوب −5 فولت ، +5 فولت ، +12 فولت).
- ساعة أحادية الطور 5 فولت (يحتاج 8080 إلى ساعة ذات سعة عالية (9 إلى 12 فولت) غير متداخلة ثنائية الطور ).
- تحديث DRAM المدمج ، والذي سيتطلب خلاف ذلك دوائر خارجية ، ما لم يتم استخدام SRAM ، وهو أكثر تكلفة وأقل كثافة (ولكن أسرع). [السابع]
- حافلات غير متعددة الإرسال (كان لدى 8080 إشارات حالة مضاعفة في ناقل البيانات).
- وظيفة إعادة الضبط الخاصة التي تمسح عداد البرنامج فقط ، بحيث يمكن استخدام وحدة معالجة مركزية واحدة Z80 في نظام تطوير مثل المحاكي داخل الدائرة . [25]
النجاح في السوق
استحوذت Z80 على 8080 ونسلها 8085 في سوق المعالجات [26] وأصبحت واحدة من أكثر وحدات المعالجة المركزية 8 بت شيوعًا والأكثر استخدامًا. [3] [4] ظلت بعض المنظمات مثل شركة بريتيش تيليكوم موالية لـ 8085 للتطبيقات المضمنة ، نظرًا لمعرفتها به وواجهة تسلسلية على الرقاقة وبنية المقاطعة. وبالمثل ، قامت شركة Zenith Data Systems بإقران 8085 مع 16 بت Intel 8088 في أول كمبيوتر MS-DOS ، Zenith Z-100 ، على الرغم من خبرتها السابقة مع Heathkit H89 و Z-89 الرائدين في Z80.منتجات. ومع ذلك ، تم تصنيع أجهزة كمبيوتر أخرى تدمج Z80 مع وحدات المعالجة المركزية الأخرى: راديو شاك TRS-80 موديل 16 مع Motorola 68000 ، و DEC Rainbow مع 8088 ، و Commodore 128 مع MOS 8502 .
كانت Zilog تنتج لاحقًا Z80 منخفضة الطاقة مناسبة لسوق الكمبيوتر المحمول المتنامي في أوائل الثمانينيات. أنتجت Intel CMOS 8085 (80C85) المستخدم في أجهزة الكمبيوتر المحمولة التي تعمل بالبطاريات ، مثل الكمبيوتر المحمول المصمم من قبل Kyocera منذ أبريل 1983 ، والذي تم بيعه أيضًا بواسطة Tandy (مثل TRS-80 Model 100 ) و Olivetti و NEC. ومع ذلك ، في السنوات التالية ، ستهيمن إصدارات CMOS من Z80 (من كل من Zilog والشركات المصنعة اليابانية) على هذا السوق أيضًا ، في منتجات مثل Amstrad NC100 و Cambridge Z88 و Tandy's الخاصة WP-2.
ربما كان مفتاح النجاح الأولي لـ Z80 هو تحديث الذاكرة الحيوية المدمجة ، على الأقل في أسواق مثل CP / M وأجهزة الكمبيوتر المكتبية والمنزلية الأخرى. ( تستخدم معظم أنظمة Z80 المضمنة ذاكرة وصول عشوائي ثابتة لا تحتاج إلى تحديث.) قد يكون أيضًا نظام المقاطعة ذي المستويين البسيط ، أو على العكس من ذلك ، نظام المقاطعة العام متعدد المستويات المتسلسل مفيدًا في خدمة شرائح Z80 IO المتعددة. سمحت هذه الميزات ببناء الأنظمة باستخدام أجهزة دعم أقل وتخطيطات أبسط للوحة الدائرة.
ومع ذلك ، يدعي آخرون أن شعبيتها كانت بسبب السجلات المكررة التي سمحت بتبديل سريع للسياق أو معالجة أكثر كفاءة لأشياء مثل الرياضيات ذات الفاصلة العائمة مقارنة بوحدات المعالجة المركزية 8 بت مع عدد أقل من السجلات. (يمكن لـ Z80 الاحتفاظ بالعديد من هذه الأرقام داخليًا ، باستخدام HL'HL و DE'DE و BC'BC كسجلات 32 بت ، مع تجنب الاضطرار إلى الوصول إليها من ذاكرة الوصول العشوائي البطيئة أثناء الحساب.) [27]
بالنسبة لتصميم NMOS الأصلي ، زاد حد التردد العلوي المحدد على التوالي من 2.5 ميجا هرتز التمهيدية ، عبر 4 ميجا هرتز (Z80A) ، حتى 6 (Z80B) و 8 ميجا هرتز (Z80H). [28] [29] تم إنتاج إصدار NMOS كجزء 10 ميجاهرتز منذ أواخر الثمانينيات. تم تطوير إصدارات CMOS بحدود أعلى للتردد تتراوح من 4 ميجاهرتز إلى 20 ميجاهرتز للإصدار المباع اليوم. سمحت إصدارات CMOS بوضع استعداد منخفض الطاقة مع الاحتفاظ بالحالة الداخلية ، وليس لها حد تردد أقل . [viii] المشتقات المتوافقة تمامًا HD64180 / Z180 [30] [31] و eZ80محددة حاليًا لما يصل إلى 33 و 50 ميجا هرتز على التوالي.
تصميم
نموذج البرمجة ومجموعة التسجيل

يعد نموذج البرمجة ومجموعة التسجيل الخاصة بـ Z80 تقليديًا إلى حد ما ، ويعتمدان في النهاية على بنية التسجيل الخاصة بـ Datapoint 2200 . تم تصميم Z80 كامتداد لـ Intel 8080 ، تم إنشاؤه بواسطة نفس المهندسين ، والذي كان بدوره امتدادًا لـ 8008 . كان 8008 أساسًا تطبيق PMOS لوحدة المعالجة المركزية المستندة إلى TTL لنقطة البيانات 2200. [ix]
سمح التصميم 2200 بإقران سجلات 8 بت H و L (عالية ومنخفضة) في سجل عنوان 16 بت HL. [x] في 8080 ، تمت إضافة هذا الاقتران إلى أزواج BC و DE أيضًا ، بينما تم تعميم HL للسماح بالاستخدام كمجمع 16 بت ، وليس مجرد سجل عناوين. قدم 8080 أيضًا وضع البيانات الفوري المهم 8 بت لعمليات التجميع ، وبيانات 16 بت الفورية لأحمال HL و BC و DE. علاوة على ذلك ، أصبح النسخ المباشر 16 بت بين HL والذاكرة ممكنًا الآن ، باستخدام عنوان مباشر.
لقد عمدت Z80 إلى زيادة هذا الأمر عن طريق جعل جميع أزواج التسجيل ذات 16 بت ، بما في ذلك IX و IY ، ذات أغراض أكثر عمومية ، فضلاً عن السماح بنسخ 16 بت مباشرةً من وإلى الذاكرة لجميع هذه الأزواج. تم تصميم سجلات 16 بت IX و IY في Z80 بشكل أساسي كسجلات عناوين أساسية ، حيث توفر تعليمات معينة إزاحة ثابتة تتم إضافتها إلى القيم السابقة ، ولكنها أيضًا قابلة للاستخدام كمركمات 16 بت ، من بين أشياء أخرى . يتمثل أحد القيود في أن جميع مراجع المعامل التي تتضمن IX أو IY تتطلب بايت بادئة تعليمات إضافي ، مع إضافة أربع دورات على مدار الساعة على مدار توقيت تعليمة باستخدام HL بدلاً من ذلك ؛ يؤدي هذا أحيانًا إلى جعل استخدام IX أو IY أقل كفاءة من طريقة تستخدم فقط مسجلات النموذج 8080. قدمت Z80 أيضًا علامة تجاوز موقعة جديدةواستكملت المعادلات الحسابية البسيطة إلى حد ما ذات 16 بت من 8080 بتعليمات مخصصة للمعاملات الحسابية 16 بت الموقعة .
يتم تكرار السجلات المتوافقة مع 8080 AF ، BC ، DE ، HL كملف تسجيل منفصل في Z80 ، [33] حيث يمكن للمعالج التبديل بسرعة (أربع حالات t ، أقل وقت تنفيذ ممكن لأي تعليمات Z80) من واحد بنك للآخر ؛ [34] ميزة مفيدة لتسريع الاستجابات للمقاطعات أحادية المستوى وذات الأولوية العالية. كانت هناك ميزة مماثلة موجودة في 2200 ، ولكن لم يتم تنفيذها مطلقًا في Intel. تعد مجموعة التسجيل المزدوجة مفيدة جدًا في الدور المضمن ، حيث إنها تحسن أداء معالجة المقاطعة ، ولكنها وجدت استخدامًا واسع النطاق في دور الكمبيوتر الشخصي كمجموعة إضافية من السجلات العامة للكود المعقد مثل حساب الفاصلة العائمة أو ألعاب الكمبيوتر المنزلي.
غالبًا ما يُشار إلى ملف السجل المكرر باسم "مجموعة السجل البديل" (من قبل البعض ، ملف التسجيل "المُجهز" نظرًا لاستخدام الحرف الفاصلة العليا للإشارة إليها في التعليمات البرمجية المصدر للمجمع ووثائق Zilog). وهذا يؤكد أن مجموعة واحدة فقط يمكن معالجتها في أي وقت. ومع ذلك ، فإن المجمع A ذو 8 بتات مع سجل العلم الخاص به هو متفرع من أزواج تسجيل "الأغراض العامة" HL و DE و BC. يتم تحقيق ذلك من خلال تعليمتين منفصلتين تستخدمان لمبادلة إمكانيات الوصول الخاصة بهم: EX AF,AF'
التبادلات تسجل فقط زوج AF مع AF '، بينماEXX
تقوم التعليمات بتبادل أزواج سجل الأغراض العامة الثلاثة HL و DE و BC مع بدائلها HL 'و DE' و BC '. وبالتالي ، يمكن للمجمع A أن يتفاعل بشكل مستقل مع أي من سجلات 8 بت للأغراض العامة في ملف التسجيل البديل (أو الجاهز) ، أو إذا كان HL 'يحتوي على مؤشر إلى الذاكرة ، فبعض البايت هناك (DE' و BC 'يمكن أيضًا نقل بيانات 8 بت بين الذاكرة والمجمع أ).
يمكن أن يكون هذا مربكًا للمبرمجين لأنه بعد التنفيذ EX AF,AF'
أو EXX
ما كان سابقًا ، أصبحت السجلات البديلة (معدة) الآن هي السجلات الرئيسية ، والعكس صحيح. الطريقة الوحيدة للمبرمج لمعرفة أي مجموعة (مجموعات) موجودة في السياق (أثناء "تشغيل الكمبيوتر" أثناء فحص نص المصدر للمجمع ، أو الأسوأ من ذلك ، التأمل في التعليمات البرمجية باستخدام مصحح الأخطاء) هي تتبع مكان إجراء كل عملية تبادل سجل في كل أشر في البرنامج. من الواضح أنه إذا تم إجراء العديد من القفزات والمكالمات داخل مقاطع الكود هذه ، فقد يصبح من الصعب بسرعة تحديد ملف التسجيل الموجود في السياق ما لم يتم التعليق بعناية. وبالتالي فمن المستحسن استخدام تعليمات التبادل بشكل مباشر وفي مقاطع كود منفصلة قصيرة. تتضمن مجموعة تعليمات Zilog Z280 JAF
وJAR
التعليمات التي تقفز إلى عنوان الوجهة إذا كانت السجلات البديلة في سياقها (وبالتالي التعرف رسميًا على تعقيد البرمجة هذا).
تسجيلات
|
كما هو الحال في 8080 ، عادةً ما يتم إقران سجلات 8 بت لتوفير إصدارات 16 بت. السجلات المتوافقة 8080 [35] هي:
AF
: تراكم 8 بت (A) وبتات العلم (F) تحمل ، صفر ، ناقص ، تكافؤ / تجاوز ، نصف حمل (تستخدم لـ BCD ) ، وعلامة إضافة / طرح (تسمى عادةً N) أيضًا لـ BCDBC
: سجل بيانات / عنوان 16 بت أو سجلين 8 بتDE
: سجل بيانات / عنوان 16 بت أو سجلين 8 بتHL
: مجمع / سجل عناوين 16 بت أو سجلين 8 بتSP
: مؤشر كومة ، 16 بتPC
: عداد البرامج ، 16 بت
السجلات الجديدة التي تم تقديمها مع Z80 هي:
IX
: فهرس 16 بت أو تسجيل أساسي للإزاحات الفورية 8 بتIY
: فهرس 16 بت أو تسجيل أساسي للإزاحات الفورية 8 بتI
: سجل قاعدة متجه المقاطعة ، 8 بتاتR
: عداد تحديث الذاكرة الحيوية ، 8 بت ( لا يتم احتساب msb )AF'
: تراكم بديل (أو ظل) وأعلام ( تبديل للداخل والخارج باستخدام التركيز البؤري التلقائي والتركيز البؤري التلقائي )BC'
و : سجلاتDE'
بديلةHL'
(أو ظل) ( تم التبديل إلى الداخل والخارج باستخدام EXX )- أربع بتات من حالة المقاطعة وحالة وضع المقاطعة
يزداد سجل التحديث في R
كل مرة تقوم فيها وحدة المعالجة المركزية بجلب كود التشغيل (أو بادئة كود التشغيل ، والتي يتم تنفيذها داخليًا مثل تعليمة 1 بايت) وليس لها علاقة بسيطة بتنفيذ البرنامج. تم استخدام هذا أحيانًا لإنشاء أرقام شبه عشوائية في الألعاب ، وكذلك في أنظمة حماية البرامج. [ بحاجة لمصدر ] وقد تم استخدامه أيضًا كعداد "أجهزة" في بعض التصميمات ؛ مثال على ذلك هو ZX81 ، والذي يتيح له تتبع مواضع الشخصيات على شاشة التلفزيون عن طريق تشغيل مقاطعة عند الالتفاف (عن طريق توصيل INT بـ A6).
يتم استخدام سجل متجه المقاطعة ، I
لمقاطعات Z80 الخاصة بالوضع 2 (يتم تحديدها بواسطة IM 2
التعليمات). يوفر البايت العالي للعنوان الأساسي لجدول 128 إدخالًا لعناوين الخدمة الروتينية التي يتم تحديدها عبر فهرس يتم إرساله إلى وحدة المعالجة المركزية أثناء دورة استلام المقاطعة ؛ هذا الفهرس هو ببساطة جزء البايت المنخفض من المؤشر إلى العنوان المجدول غير المباشر الذي يشير إلى روتين الخدمة. [23] يحدد المؤشر شريحة محيطية معينة أو وظيفة أو حدثًا طرفيًا ، حيث يتم توصيل الرقائق عادة فيما يسمى بسلسلة ديزيلحل الأولوية. مثل سجل التحديث ، تم استخدام هذا السجل أيضًا في بعض الأحيان بشكل إبداعي ؛ في أوضاع المقاطعة 0 و 1 (أو في نظام لا يستخدم المقاطعات) يمكن استخدامه ببساطة كسجل بيانات 8 بت آخر.
التعليمات LD A,R
وتؤثر LD A,I
على سجل أعلام Z80 ، على عكس جميع LD
تعليمات (التحميل) الأخرى. يتم تعيين علامتي التوقيع (بت 7) وصفر (بت 6) وفقًا للبيانات التي تم تحميلها من سجلات مصدر التحديث أو المقاطعة. لكل من التعليمات ، تم تعيين علامة Parity / Overflow (بت 2) وفقًا للحالة الحالية لـ IFF2 flip-flop. [36]
العمارة الدقيقة
على الرغم من أن Z80 تعتبر بشكل عام وحدة معالجة مركزية من ثماني بتات ، إلا أنها تحتوي على وحدة ALU من أربع بتات ، لذلك تم إجراء الحسابات في دورتين. [37]
لغة التجميع Z80
Datapoint 2200 و Intel 8008
كانت أول لغة تجميع Intel 8008 مبنية على بناء جملة بسيط للغاية (لكن منهجي) موروث من تصميم Datapoint 2200. تم تحويل هذا التركيب الأصلي لاحقًا إلى نموذج لغة تجميع جديد أكثر تقليدية إلى حد ما لنفس شريحة 8008 الأصلية هذه. في نفس الوقت تقريبًا ، تم أيضًا توسيع لغة التجميع الجديدة لاستيعاب أوضاع العنونة الإضافية في شريحة Intel 8080 الأكثر تقدمًا (تشترك 8008 و 8080 في مجموعة فرعية من اللغات دون التوافق الثنائي ؛ ومع ذلك ، كان 8008 متوافقًا مع Datapoint. 2200).
في هذه العملية ، تم استبدال ذاكري L
، لـ LOAD ، باختصارات مختلفة للكلمات LOAD و STORE و MOVE ، مختلطة مع أحرف رمزية أخرى. تم رفع الحرف ذاكري M
، للذاكرة (المشار إليها بواسطة HL) ، من داخل التعليمات ذاكري ليصبح معاملًا قائمًا بذاته نحويًا ، بينما أصبحت السجلات ومجموعات السجلات غير متسقة للغاية ؛ إما عن طريق المعامِلات المختصرة (MVI D و LXI H وما إلى ذلك) ، ضمن تعليمات ذاكري نفسها (LDA و LHLD وما إلى ذلك) ، أو كليهما في نفس الوقت (LDAX B و STAX D وما إلى ذلك).
إنتل 8008 داتابوينت 2200 |
إنتل 8080 إنتل 8085 |
زيلوج Z80 | إنتل 8086 / إنتل 8088 |
---|---|---|---|
قبل كاليفورنيا. 1973 | كاليفورنيا. 1974 | 1976 | 1978 |
LBC
|
MOV B,C
|
LD B,C
|
MOV CH,CL
|
--
|
LDAX B
|
LD A,(BC)
|
--
|
LAM
|
MOV A,M
|
LD A,(HL)
|
MOV AL,[BX]
|
LBM
|
MOV B,M
|
LD B,(HL)
|
MOV CH,[BX]
|
--
|
STAX D
|
LD (DE),A
|
--
|
LMA
|
MOV M,A
|
LD (HL),A
|
MOV [BX],AL
|
LMC
|
MOV M,C
|
LD (HL),C
|
MOV [BX],CL
|
LDI 56
|
MVI D,56
|
LD D,56
|
MOV DL,56
|
LMI 56
|
MVI M,56
|
LD (HL),56
|
MOV byte ptr [BX],56
|
--
|
LDA 1234
|
LD A,(1234)
|
MOV AL,[1234]
|
--
|
STA 1234
|
LD (1234),A
|
MOV [1234],AL
|
--
|
--
|
LD B,(IX+56)
|
MOV CH,[SI+56]
|
--
|
--
|
LD (IX+56),C
|
MOV [SI+56],CL
|
--
|
--
|
LD (IY+56),78
|
MOV byte ptr [DI+56],78
|
--
|
LXI B,1234
|
LD BC,1234
|
MOV CX,1234
|
--
|
LXI H,1234
|
LD HL,1234
|
MOV BX,1234
|
--
|
SHLD 1234
|
LD (1234),HL
|
MOV [1234],BX
|
--
|
LHLD 1234
|
LD HL,(1234)
|
MOV BX,[1234]
|
--
|
--
|
LD BC,(1234)
|
MOV CX,[1234]
|
--
|
--
|
LD IX,(1234)
|
MOV SI,[1234]
|
رسم توضيحي لأربعة تراكيب ، باستخدام عينات مكافئة ، أو (لـ 8086) تعليمات تحميل وتخزين مشابهة جدًا. [38] يستخدم بناء الجملة Z80 أقواسًا حول تعبير للإشارة إلى أنه يجب استخدام القيمة كعنوان ذاكرة (كما هو مذكور أدناه) ، بينما يستخدم بناء الجملة 8086 أقواسًا بدلاً من الأقواس العادية لهذا الغرض. يستخدم كل من Z80 و 8086 علامة + للإشارة إلى إضافة ثابت إلى السجل الأساسي لتكوين عنوان. لاحظ أن 8086 ليس مجموعة شاملة كاملة من Z80. BX هو زوج التسجيل الوحيد 8086 الذي يمكن استخدامه كمؤشر.
بناء جملة جديد
نظرًا لأن شركة Intel ادعت حقوق النشر الخاصة بذكريات التجميع الخاصة بهم ، فقد كان لابد من تطوير صيغة تجميع جديدة لـ Z80. هذه المرة تم استخدام نهج أكثر منهجية:
- يتم الإشارة صراحة إلى جميع السجلات وأزواج التسجيل بأسمائهم الكاملة
- يتم استخدام الأقواس باستمرار للإشارة إلى "محتويات الذاكرة في" (العنوان الثابت أو إلغاء مرجع المؤشر المتغير) باستثناء تعليمة قفزة واحدة JP (HL). JP (XY) هو مجرد نسخة مختلفة من JP (HL) لتحميل عنوان الكمبيوتر الجديد. [xi]
- تستخدم جميع تعليمات التحميل والتخزين نفس الاسم ذاكري ، LD ، لـ LOAD (عودة إلى مفردات Datapoint 2200 المبسطة) ؛ التعليمات الشائعة الأخرى ، مثل ADD و INC ، تستخدم نفس الذاكرة بغض النظر عن وضع العنونة أو حجم المعامل. هذا ممكن لأن المعاملات نفسها تحمل معلومات كافية.
جعلت هذه المبادئ من السهل العثور على أسماء ونماذج لجميع تعليمات Z80 الجديدة ، بالإضافة إلى عمليات تعامد القديمة ، مثل LD BC,(1234)
.
بصرف النظر عن اختلافات التسمية ، وعلى الرغم من وجود تناقض معين في بنية السجل الأساسية ، فإن بناء الجملة Z80 و 8086 يكاد يكون متشابهًا لجزء كبير من التعليمات. توجد فقط أوجه تشابه سطحية تمامًا (مثل كلمة MOV ، أو الحرف X ، للتسجيل الموسع) بين لغتي التجميع 8080 و 8086 ، على الرغم من أنه يمكن ترجمة 8080 برنامجًا إلى 8086 لغة تجميع بواسطة برامج المترجمين . [41] [42]
مجموعة التعليمات والتشفير
يستخدم Z80 252 من أصل 256 رمزًا متاحًا كرموز تشغيل أحادية البايت ("تعليمات الجذر" الموروثة جميعها من 8080) ؛ يتم استخدام الرموز الأربعة المتبقية على نطاق واسع كبادئات شفرة التشغيل : [43] تتيح CB و ED تعليمات إضافية ، و DD أو FD حدد IX + d أو IY + d على التوالي (في بعض الحالات بدون إزاحة د) بدلاً من HL. يعطي هذا المخطط لـ Z80 عددًا كبيرًا من التغييرات في التعليمات والسجلات ؛ صنف Zilog هذه الأنواع إلى 158 نوعًا مختلفًا من التعليمات ، 78 منها مماثلة لتلك الخاصة بمعالج Intel 8080 [43] (مما يسمح بتشغيل جميع برامج 8080 على Z80). وثائق Zilog [44]مجموعات أخرى من التعليمات في الفئات التالية (معظمها من 8080 ، والبعض الآخر جديد تمامًا مثل تعليمات الكتلة والبت ، وأخرى 8080 تعليمات مع أوضاع عنونة أكثر تنوعًا ، مثل أحمال 16 بت ، الإدخال / الإخراج ، التدوير / التحولات والقفزات النسبية ):
- التحميل والصرف
- كتلة النقل والبحث
- حسابي ومنطقي
- استدارة وتحويل
- معالجة البت (ضبط ، إعادة تعيين ، اختبار)
- القفز والاتصال والعودة
- الإدخال / الإخراج
- التحكم الأساسي في وحدة المعالجة المركزية
لا توجد تعليمات صريحة للمضاعفة متوفرة في Z80 الأصلي ، [45] على الرغم من أن السجلات A و HL يمكن مضاعفتها بقوى اثنين مع تعليمات ADD A و A و ADD HL و HL (وبالمثل IX و IY أيضًا). يمكن أيضًا أن تتضاعف تعليمات التحول أو تقسم على قوى اثنين.
الأحجام والمتغيرات المختلفة للإضافات والتحولات والتدوير لها تأثيرات مختلفة إلى حد ما على الأعلام لأن معظم خصائص تغيير العلم في 8080 قد تم نسخها. ومع ذلك ، فإن بتة علم التكافؤ P من 8080 (بت 2) تسمى P / V (تكافؤ / تجاوز) في Z80 لأنها تخدم غرضًا إضافيًا لمؤشر تجاوز ثنائي مكمل ، وهي ميزة تفتقر إلى 8080. تعليمات حسابية حول قامت Z80 بتعيينها للإشارة إلى تجاوز السعة بدلاً من التكافؤ ، بينما لا تزال تعليمات البت تستخدمه كعلامة تماثل. (يقدم هذا عدم توافق دقيق مع Z80 مع الرمز المكتوب لـ 8080 ، حيث يشير Z80 أحيانًا إلى تجاوز التوقيع حيث يشير 8080 إلى التكافؤ ، مما قد يتسبب في فشل منطق بعض برامج 8080 العملية في Z80. [xii]) تُستخدم علامة تجاوز السعة الجديدة هذه لجميع عمليات 16 بت الجديدة الخاصة بـ Z80 ( ADC
، SBC
) وكذلك للعمليات الحسابية 8 بت ، في حين أن عمليات 16 بت الموروثة من 8080 ( ADD
، INC
) DEC
لا تؤثر عليها. أيضًا ، يتم استخدام البتة 1 من سجل الأعلام (بت احتياطي في 8080) كعلامة N تشير إلى ما إذا كانت آخر تعليمات حسابية تم تنفيذها عبارة عن طرح أم إضافة. يتحقق الإصدار Z80 من DAA
التعليمات (مجمع الضبط العشري لحساب BCD) من علامة N ويتصرف وفقًا لذلك ، لذا فإن الطرح (الافتراضي) الذي يتبعه لاحقًا DAA
سيؤدي إلى نتيجة مختلفة على 8080 قديمة عن Z80. ومع ذلك ، من المحتمل أن يكون هذا رمزًا خاطئًا في 8080 ، كما DAA
تم تعريفه للإضافة فقط على هذا المعالج.
يحتوي Z80 على ستة LD
تعليمات جديدة يمكنها تحميل أزواج تسجيل DE و BC و SP من الذاكرة ، وتحميل الذاكرة من أزواج التسجيل الثلاثة - على عكس 8080. [46] كما في 8080 ، لا تؤثر تعليمات التحميل على العلامات ( باستثناء أحمال تسجيل I و R للأغراض الخاصة). نتيجة الترميز العادي (الشائع مع 8080) هو أنه يمكن تحميل كل من التسجيلات ذات 8 بت من نفسها (على سبيل المثال LD A,A
). هذا هو بشكل فعال NOP
.
يمكن أن تنتقل تعليمات نقل الكتلة الجديدة حتى 64 كيلو بايت من الذاكرة إلى الذاكرة أو بين الذاكرة ومنافذ الإدخال / الإخراج الطرفية. تعليمات الحظر LDIR
و LDDR
( l oa d ، i ncrement / d ecrement ، r epeat) تستخدم HL للإشارة إلى عنوان المصدر ، DE إلى عنوان الوجهة ، و BC كمقياس بايت. يتم نسخ البايت من المصدر إلى الوجهة ، ويتم زيادة المؤشرات أو إنقاصها ، ويتم إنقاص عداد البايت حتى يصل BC إلى الصفر. إصدارات غير متكررة LDI
وتحريك LDD
بايت واحد وإخراج المؤشرات وعداد البايت ، والذي إذا أصبح صفرًا يعيد تعيين علامة P / V. مطابقة تعليمات الذاكرة إلى الإدخال / الإخراج INIR
، INDR
، OTIR
،OTDR
، INI
، IND
، OUTI
وتعمل OUTD
بشكل مشابه. يمكن لـ Z80 إدخال وإخراج أي سجل إلى منفذ الإدخال / الإخراج باستخدام السجل C لتعيين المنفذ. (لا يقوم جهاز 8080 إلا بتنفيذ عمليات الإدخال / الإخراج من خلال المجمع A ، باستخدام عنوان منفذ مباشر محدد في التعليمات ؛ يلزم استخدام تقنية رمز ذاتي التعديل لاستخدام عنوان منفذ متغير 8080.)
تقوم المجموعة الأخيرة من تعليمات الكتلة بإجراء عملية CP
مقارنة بين البايت عند (HL) والمجمع A. لا يتم استخدام زوج التسجيل DE. النسخ المكررة وتنتهي فقط إذا ذهب BC إلى الصفر أو تم العثور على تطابق CPIR
. CPDR
يتم ترك HL للإشارة إلى البايت بعد ( CPIR
) أو قبل ( CPDR
) البايت المطابق. إذا لم يتم العثور على تطابق ، فسيتم إعادة تعيين علامة Z. هناك إصدارات غير مكررة CPI
و CPD
.
على عكس 8080 ، يمكن لـ Z80 القفز إلى عنوان نسبي ( JR
بدلاً من JP
) باستخدام إزاحة موقعة 8 بت. يمكن اختبار أعلام الصفر وحمل فقط لهذه JR
التعليمات الجديدة ثنائية البايت. (جميع القفزات والمكالمات 8080 ، مشروطة أو غير مشروطة ، هي تعليمات ثلاثية البايت.) التعليمات ثنائية البايت المتخصصة في حلقات البرنامج هي أيضًا جديدة على Z80: DJNZ
( d ecrement jump if n on - z ero) يأخذ 8 موقعة -bit الإزاحة كمعامل فوري. يتناقص السجل B ، وإذا كانت النتيجة غير صفرية ، فإن تنفيذ البرنامج يقفز بالنسبة إلى الكمبيوتر الشخصي ؛ تبقى الأعلام دون تغيير. يتطلب أداء حلقة مكافئة على 8080 منفصلةDEC
والقفز الشرطي (إلى عنوان مطلق ثنائي البايت) (بإجمالي أربعة بايت) ، DEC
ويغير سجل العلم.
يمكن أن تكون تعليمات سجل الفهرس (IX / IY ، اختصارًا XY غالبًا) مفيدة للوصول إلى البيانات المنظمة في هياكل غير متجانسة ثابتة (مثل السجلات ) أو عند الإزاحات الثابتة المتعلقة بعنوان أساسي متغير (كما هو الحال في إطارات المكدس العودية ) ويمكن أيضًا تقليل الكود الحجم عن طريق إزالة الحاجة إلى تعليمات قصيرة متعددة باستخدام سجلات غير مفهرسة. ومع ذلك ، على الرغم من أنها قد توفر السرعة في بعض السياقات عند مقارنتها بالتسلسلات الطويلة / المعقدة "المكافئة" لعمليات أبسط ، فإنها تتطلب الكثير من وقت وحدة المعالجة المركزية (على سبيل المثال ، 19 حالة T للوصول إلى موقع ذاكرة مفهرس مقابل أقل من 11 للوصول إلى نفس الذاكرة باستخدام HL وINC
للإشارة إلى التالي). وبالتالي ، من أجل الوصول البسيط أو الخطي للبيانات ، يميل استخدام IX و IY إلى أن يكون أبطأ ويشغل ذاكرة أكبر. ومع ذلك ، قد تكون مفيدة في الحالات التي تكون فيها جميع السجلات "الرئيسية" مشغولة ، عن طريق إزالة الحاجة إلى حفظ / استعادة السجلات. يمكن أن تكون أنصاف 8 بت غير الموثقة رسميًا (انظر أدناه) مفيدة بشكل خاص في هذا السياق ، لأنها تتحمل تباطؤًا أقل من آبائهم 16 بت. وبالمثل ، فإن التعليمات الخاصة بإضافات 16 بت ليست سريعة بشكل خاص (11 ساعة) في Z80 الأصلي (كونها ساعة واحدة أبطأ مما كانت عليه في 8080/8085) ؛ ومع ذلك ، فهي أسرع بنحو ضعف سرعة إجراء نفس العمليات الحسابية باستخدام عمليات 8 بت ، وعلى نفس القدر من الأهمية ، فإنها تقلل استخدام التسجيل. لم يكن من غير المألوف بالنسبة للمبرمجين "النقر" مختلف بايتات إزاحة الإزاحة (التي كانت تُحسب عادةً ديناميكيًا) في تعليمات مفهرسة ؛ هذا مثال علىكود التعديل الذاتي ، والذي كان ممارسة منتظمة على جميع معالجات 8 بت المبكرة تقريبًا مع وحدات تنفيذ
غير موصلة بالأنابيب .
تحتوي سجلات الفهرس على تعليمات موازية لـ JP (HL)
، وهي JP (XY)
. غالبًا ما يُرى هذا في اللغات ذات التوجه المكدس مثل Forth ، والتي في نهاية كل كلمة رابعة (الإجراءات الفرعية الذرية التي تشتمل على اللغة) يجب أن تقفز دون قيد أو شرط إلى إجراءات مترجم الخيط. عادةً ما تظهر تعليمات الانتقال هذه عدة مئات من المرات في أحد التطبيقات ، وتستخدم JP (XY)
بدلاً من JP THREAD
حفظ بايت وحالتين T لكل تكرار. هذا بطبيعة الحال يجعل سجل الفهرس غير متاح لأي استخدام آخر ، وإلا فإن الحاجة إلى إعادة التحميل باستمرار ستبطل كفاءته.
يمكن أن يوفر تصميم Z180 الأحدث ذو الشفرة الدقيقة والذي يبلغ مدته 10 سنوات في البداية المزيد من "منطقة الرقاقة" ، مما يسمح بتنفيذ أكثر كفاءة قليلاً (باستخدام ALU أوسع ، من بين أشياء أخرى) ؛ يمكن قول أشياء مماثلة عن Z800 و Z280 و Z380 . ومع ذلك ، لم يكن الأمر كذلك حتى تم إطلاق eZ80 بالكامل في عام 2001 حيث أصبحت هذه التعليمات أخيرًا ذات كفاءة دورة تقريبًا كما يمكن إجراؤها تقنيًا ، أي بالنظر إلى ترميزات Z80 جنبًا إلى جنب مع القدرة على القيام بقراءة 8 بت أو اكتب كل دورة على مدار الساعة. [ بحاجة لمصدر ]
تعليمات غير موثقة
تم تصميم مسجلات الفهرس ، IX و IY ، لتكون بمثابة مؤشرات مرنة ذات 16 بت ، مما يعزز القدرة على معالجة الذاكرة وإطارات المكدس وهياكل البيانات. رسميًا ، تم معاملتهم على أنهم 16 بت فقط. في الواقع تم تنفيذها كزوج من مسجلات 8 بت ، [47] بنفس طريقة تسجيل HL ، والذي يمكن الوصول إليه إما 16 بت أو بشكل منفصل مثل سجلات H igh و L ow. كانت أكواد التشغيل الثنائية (لغة الآلة) متطابقة ، ولكنها مسبوقة ببادئة كود تشغيل جديدة. [48]نشر Zilog أكواد التشغيل والاستذكار ذات الصلة للوظائف المقصودة ، لكنه لم يوثق حقيقة أن كل كود تشغيل يسمح بالتلاعب في سجلات H و L كان صالحًا بشكل متساوٍ للأجزاء 8 بت من سجلات IX و IY. على سبيل المثال ، رمز التشغيل 26 س متبوعًا بقيمة البايت الفوري (LD H,n)
سوف يقوم بتحميل هذه القيمة في السجل H. قبل هذه التعليمات ثنائية البايت مع بادئة كود التشغيل لسجل IX ، DD ، سيؤدي بدلاً من ذلك إلى تحميل أهم 8 بتات من سجل IX بنفس القيمة. الاستثناء الملحوظ لذلك هو التعليمات المشابهة LD H,(IX+d)
التي تستخدم كلا من سجلات HL و IX أو IY في نفس التعليمات ؛ [48]في هذه الحالة ، يتم تطبيق بادئة DD فقط على الجزء (IX + d) من التعليمات. يمكن أن تحتوي أنصاف سجلات XY أيضًا على معاملات من أجل تعليمات حسابية ومنطقية ومقارنة 8 بتات ، مع توفير سجلات 8 بت العادية للاستخدامات الأخرى. جعلت القدرة غير الموثقة على زيادة وتقليل النصف العلوي من سجل الفهرس من السهل توسيع نطاق التعليمات المفهرسة العادية ، دون الحاجة إلى اللجوء إلى الموثق ADD/SBC XY,DE
أو ADD/SBC XY,BC
.
هناك أيضًا العديد من التعليمات الأخرى غير الموثقة. [49] لا يتم الكشف عن أكواد التشغيل غير الموثقة أو غير القانونية بواسطة Z80 ولها تأثيرات مختلفة ، بعضها مفيد. ومع ذلك ، نظرًا لأنها ليست جزءًا من التعريف الرسمي لمجموعة التعليمات ، فإن التطبيقات المختلفة لـ Z80 ليست مضمونة (أو من المحتمل بشكل خاص) للعمل بنفس الطريقة لكل كود تشغيل غير موثق.
البق
التعليمات OTDR
لا تتوافق مع وثائق Z80. من المفترض أن تترك كل من التعليمات OTDR
والتعليمات OTIR
علامة الحمل (C) بدون تعديل. OTIR
التعليمات تعمل بشكل صحيح . ومع ذلك ، أثناء تنفيذ OTDR
التعليمات ، تأخذ علامة الحمل نتائج المقارنة الزائفة بين المجمع (A) والإخراج الأخير OTDR
للتعليمات. [50]
مثال على كود
مثال 1: كود مصدر المجمّع Z80 التالي هو لروتين فرعي اسمه HELLO_WORLD. هذا برنامج تمهيدي يقوم بطباعة رسالة على شاشة الفيديو ثم الخروج. على الرغم من بساطته ، إلا أنه يوضح كيفية تنسيق التعليمات البرمجية المصدر للمجمع وتفاعلها مع أجهزة العرض من خلال نظام تشغيل الكمبيوتر. هذا بالضرورة خاص بأجهزة كمبيوتر ونظام تشغيل وبرامج مُجمِّع معينة. المثال المستخدم هو
TRS-80 Model 4 الذي يعمل بنظام TRSDOS / LS-DOS 6.x ، الذي أنتجته Tandy / Radio Shack and Logical Systems ، مع بيع معظم المجمعات بواسطة Radio Shack أو Misosys Inc. (Series I / EDTASM ، ALDS ، EDAS أو MRAS مع مفتاح -GC). الميزات الرئيسية لهذا التكوين عامة لمجمعات Z80 ، حتى في ظل CP / M.
3000 3E 69
3002 إي أف
3003 21 14 30
3006 3E 0A
3008 إي أف
3009 0E 0D
300B 3E 02
300D إي أف
300E 21 00 00
3011 3E16
3013 إي أف
3014 48 65 6 ج 6 ج
3018 6F 2C 20 77
301C 6F 72 6C 64
3020 21 0D 0D
3023
|
؛ hello_world_TRS-80 موديل 4
؛ اطبع "Hello، world!" ثم الخروج إلى TRSDOS Ready
؛
؛ سجلات الدخول: لا يوجد
؛ سجلات الإرجاع: لا يوجد
؛
؛ القيم أدناه عشرية ما لم تلحق بـ H.
؛ المصطلح "pseudo-op" يعني نفس "توجيه المجمع" ، وليس رمز Z80
؛
@ CLS EQU 105 ؛ مجموعات EQU pseudo-op @ CLS text label = TRSDOS Supervisor Code
@ DSP EQU 2 ؛ اضبطDSP text label = TRSDOS SVC لإرسال الحرف لعرضه
@ DSPLY EQU 10 ؛ تعيينDSPLY text label = SVC لعرض سلسلة النص
@ EXIT EQU 22 ؛ قم بتعيينEXIT text label = SVC للعودة إلى TRSDOS Ready
؛
ORG 3000H ؛ يعين ORG pseudo-op عنوان البداية القياسي ضمن TRSDOS 6.x
START LD A ، CLS ؛ CLS = مسح الشاشة ومحو العرض ومؤشر الصفحة الرئيسية
40 RST ؛ Z80 إعادة تشغيل التعليمات لمعالج النظام SVC ، وتنفيذCLS
LD HL ، MSG ؛ أشر إلى سلسلة الرسائل باستخدام HL (مطلوب بواسطةDSPLY SVC)
LD A ، DSPLY ؛ إرسال سلسلة نصية إلى * DO Display Output device (شاشة فيديو)
40 RST ؛ تنفيذDSPLY SVC (يلزم 13d بايت لإنهاء السلسلة)
LD C ، 13 ؛ الآن أرسل حرف إرجاع آخر ، مطلوب في reg C
LD A ، @ DSP ؛ لبدء رسالة الترحيب من موجه TRSDOS Ready
40 RST ؛ بمجرد الخروج من النظام
LD HL ، 0 ؛ تشير إلى عدم وجود حالة خطأ لمترجم الأوامر
LD A ، @ EXIT ؛ العودة إلى TRSDOS جاهز
40 RST ؛ (تم الحفاظ على تكامل المكدس ، ويمكن أيضًا استخدام RET!)
MSG DB "مرحبًا ، أيها العالم!" ، 13 ؛ DB = Define Byte pseudo-op يقوم بتجميع سلسلة ASCII إلى ذاكرة Z80
CR DB 13 ؛ 13d بايت هو حرف إرجاع ASCII حرف إرجاع ، يتحرك المؤشر لأسفل
نهاية البداية ؛ النهاية الزائفة المطلوبة من قبل المجمع
؛ لإنتاج سجل التحويل إلى نقطة دخول البرنامج
|
مثال 2: الكود المصدري لتجميع Z80 التالي مخصص لإجراء فرعي مسمى memcpy
يقوم بنسخ كتلة من بايتات البيانات ذات الحجم المحدد من موقع إلى آخر. هام: رمز المثال لا يتعامل مع الحالة التي تتداخل فيها كتلة الوجهة مع المصدر ؛ قيد خطير ، لكنه غير ذي صلة ببعض التطبيقات - على سبيل المثال ، على وجه الخصوص ، عندما يكون المصدر في ROM والوجهة في ذاكرة الوصول العشوائي ، لذلك لا يمكن أن يتداخلوا أبدًا. رمز العينة غير فعال للغاية ، ويهدف إلى توضيح أنواع التعليمات المختلفة ، بدلاً من أفضل الممارسات للسرعة. يتم نسخ كتلة البيانات بمقدار بايت واحد في كل مرة ، ويستخدم منطق حركة البيانات والتكرار عمليات 16 بت. علاوة على ذلك ، يحتوي Z80 على تعليمات واحدة ستنفذ الحلقة بأكملها (LDIR
). لاحظ أن الكود المُجمَّع متوافق مع النظام الثنائي مع وحدات المعالجة المركزية Intel 8080 و 8085.
1000
1000
1000 78
1001 ب 1
1002 ج 8
1003 1 أ
1004 77
1005 13
1006 23
1007 0 ب
1008 ك 3 00 10
100 ب
|
؛ memcpy -
؛ انسخ كتلة من الذاكرة من مكان إلى آخر.
؛
؛ سجلات الدخول
؛ BC - عدد البايت المطلوب نسخه
؛ DE - عنوان كتلة بيانات المصدر
؛ HL - عنوان كتلة البيانات الهدف
؛
؛ عودة السجلات
؛ BC - صفر
org 1000h ؛ الأصل عند 1000 ساعة
memcpy العامة
حلقة ld a ، b ؛ اختبار BC ،
أو c ؛ إذا كان BC = 0 ،
ret z ؛ العودة
ld a ، ( de ) ؛ تحميل A من (DE)
ld ( hl )، a ؛ المخزن A في (HL)
inc دي ؛ زيادة DE
increment HL _
ديسمبر قبل الميلاد ؛ التناقص قبل الميلاد
حلقة jp ؛ كرر الحلقة
نهاية
|
تنفيذ التعليمات
يتم تنفيذ كل تعليمات في خطوات تسمى عادةً دورات الآلة (دورات M) ، والتي يمكن أن تستغرق كل منها ما بين ثلاث إلى ست فترات زمنية (حالات T). [51] كل دورة M تتوافق تقريبًا مع وصول واحد للذاكرة أو عملية داخلية. تنتهي العديد من التعليمات فعليًا أثناء M1 من التعليمات التالية والتي تُعرف باسم تداخل الجلب / التنفيذ .
مجموع
دورات M. |
دول تي | تعليمات | م 1 | م 2 | م 3 | م 4 | م 5 | م 6 |
---|---|---|---|---|---|---|---|---|
1 [52] | 4 [1] | INC B
|
كود التشغيل | |||||
2 [53] | 7 | ADD A,n
|
كود التشغيل | ن | ||||
3 [54] | 11 | ADD HL,DE
|
كود التشغيل | داخلي | داخلي | |||
4 [55] | 15 | SET b,(HL)
|
بادئة | كود التشغيل | R (HL) ، مجموعة | W (HL) | ||
5 [56] | 19 | LD (IX+d),n
|
بادئة | كود التشغيل | د | ن ، أضف | W (IX + d) | |
6 [57] | 23 | INC (IY+d)
|
بادئة | كود التشغيل | د | يضيف | R (IY + d) ، المؤتمر الوطني العراقي | W (IY + d) |
يتم ترتيب دورات الآلة Z80 بواسطة آلة الحالة الداخلية التي تبني كل دورة M من 3 أو 4 أو 5 أو 6 حالات T حسب السياق. هذا يتجنب المنطق غير المتزامن المرهق ويجعل إشارات التحكم تتصرف باستمرار على نطاق واسع من ترددات الساعة. وهذا يعني أيضًا أنه يجب استخدام بلورة ذات تردد أعلى من دون هذا التقسيم الفرعي لدورات الآلة (حوالي 2-3 مرات أعلى). لا يتضمن ذلك متطلبات أكثر صرامة فيما يتعلق بأوقات الوصول إلى الذاكرة ، نظرًا لأن الساعة عالية الدقة تتيح تحكمًا أكثر دقة في توقيتات الذاكرة وبالتالي يمكن أن تكون الذاكرة نشطة بالتوازي مع وحدة المعالجة المركزية إلى حد أكبر ، مما يسمح باستخدام أكثر كفاءة لعرض النطاق الترددي للذاكرة المتاح. [ بحاجة لمصدر ]
أحد الأمثلة المركزية على ذلك هو أنه ، لجلب كود التشغيل ، يجمع Z80 بين دورتين كاملتين على مدار الساعة في فترة وصول للذاكرة (إشارة M1). في Z80 ، تستمر هذه الإشارة لجزء أكبر نسبيًا من وقت تنفيذ التعليمات النموذجي مقارنةً بتصميم مثل 6800 أو 6502 أو ما شابه ، حيث تستمر هذه الفترة عادةً بنسبة 30-40٪ من دورة الساعة. [ بحاجة لمصدر ] مع القدرة على تحمل تكلفة شريحة الذاكرة (أي أوقات الوصول حوالي 450-250 نانوثانية في الثمانينيات [ بحاجة لمصدر ] ) تحديد أسرع وقت وصول ممكن ، وهذا يعني أن مثل هذه التصاميم كانت مقفلة لدورة ساعة أطول بكثير (أي أقل داخليًا على مدار الساعة) من Z80.
كانت الذاكرة بشكل عام بطيئة مقارنة بالدورات الفرعية لآلة الحالة (دورات الساعة) المستخدمة في المعالجات الدقيقة المعاصرة. لذلك غالبًا ما كانت أقصر دورة للماكينة يمكن استخدامها بأمان في التصميمات المضمنة مقيدة بأوقات الوصول إلى الذاكرة ، وليس بالحد الأقصى لتردد وحدة المعالجة المركزية (خاصة خلال عصر الكمبيوتر المنزلي). ومع ذلك ، فقد تغيرت هذه العلاقة ببطء خلال العقود الماضية ، لا سيما فيما يتعلق SRAM ؛ أصبحت تصميمات cacheless أحادية الدورة مثل eZ80 أكثر أهمية مؤخرًا.
يتم إرسال محتوى سجل التحديث R في النصف السفلي من ناقل العنوان جنبًا إلى جنب مع إشارة التحكم في التحديث أثناء قيام وحدة المعالجة المركزية بفك تشفير التعليمات التي تم جلبها وتنفيذها. أثناء التحديث ، يتم إرسال محتويات سجل المقاطعة إلى النصف العلوي من ناقل العنوان. [58]
الأجهزة الطرفية المتوافقة
قدمت Zilog عددًا من الأجزاء الطرفية لـ Z80 ، والتي تدعم جميعها نظام معالجة المقاطعة في Z80 ومساحة عنوان الإدخال / الإخراج. وتشمل هذه قناة العداد / المؤقت (CTC) ، [59] SIO (الإدخال / الإخراج التسلسلي) ، DMA (الوصول المباشر للذاكرة) ، PIO (الإدخال / الإخراج المتوازي) و DART (جهاز استقبال - مرسل غير متزامن مزدوج). مع تطور خط الإنتاج ، تم تقديم إصدارات منخفضة الطاقة وعالية السرعة و CMOS من هذه الرقائق.
مثل المعالجات 8080 و 8085 و 8086 ، ولكن على عكس المعالجات مثل Motorola 6800 و MOS Technology 6502 ، فإن Z80 و 8080 بهما خط تحكم منفصل ومساحة عنوان لإرشادات الإدخال / الإخراج. في حين أن بعض أجهزة الكمبيوتر المستندة إلى Z80 مثل Osborne 1 تستخدم أجهزة الإدخال / الإخراج المعينة للذاكرة "على غرار Motorola" ، عادةً ما يتم استخدام مساحة الإدخال / الإخراج لمعالجة واحدة من العديد من شرائح Zilog الطرفية المتوافقة مع Z80. دعمت رقائق Zilog I / O المقاطعات الجديدة للوضع 2 في Z80 والتي سهّلت معالجة المقاطعة لعدد كبير من الأجهزة الطرفية.
تم وصف Z80 رسميًا على أنه يدعم معالجة ذاكرة 16 بت (64 كيلوبايت) ، و 8 بت (256 منفذًا) I / O- عنونة. تؤكد جميع إرشادات الإدخال / الإخراج بالفعل ناقل العنوان 16 بت بالكامل. يضع OUT (C) و reg و IN reg و (C) محتويات سجل 16 بت كامل BC في ناقل العنوان ؛ [50] يضع OUT (n) و A و IN A ، (n) محتويات السجل A على b8 – b15 من ناقل العنوان و n على b0 – b7 من ناقل العنوان. يمكن للمصمم أن يختار فك شفرة ناقل العنوان 16 بت بأكمله في عمليات الإدخال / الإخراج للاستفادة من هذه الميزة ، أو استخدام النصف الأعلى من ناقل العنوان لتحديد الميزات الفرعية لجهاز الإدخال / الإخراج. تم استخدام هذه الميزة أيضًا لتقليل متطلبات أجهزة فك التشفير ، كما هو الحال في Amstrad CPC / PCW و ZX81 .
المصادر والمشتقات الثانية
المصادر الثانية
Mostek ، التي أنتجت أول Z80 لشركة Zilog ، عرضتها كمصدر ثانٍ مثل MK3880. كانت SGS-Thomson (الآن STMicroelectronics ) هي المصدر الثاني أيضًا مع Z8400. طورت Sharp و NEC مصادر ثانية لـ NMOS Z80 و LH0080 و μPD780C على التوالي. تم استخدام LH0080 في العديد من أجهزة الكمبيوتر المنزلية وأجهزة الكمبيوتر الشخصية التي تصنعها Sharp ومصنعون يابانيون آخرون ، بما في ذلك أجهزة كمبيوتر Sony MSX ، وعدد من أجهزة الكمبيوتر في سلسلة Sharp MZ . [60]
صنعت Toshiba نسخة CMOS ، TMPZ84C00 ، والتي يعتقد [ من قبل من؟ ] (لكن لم يتم التحقق منه) ليكون هو نفس التصميم الذي استخدمته Zilog أيضًا في CMOS Z84C00 الخاص بها. كانت هناك أيضًا رقائق Z80 من إنتاج GoldStar (الآن LG ) وسلسلة BU18400 من استنساخ Z80 (بما في ذلك DMA و PIO و CTC و DART و SIO) في NMOS و CMOS من إنتاج ROHM Electronics .
في ألمانيا الشرقية ، تم تصنيع نسخة غير مرخصة من Z80 ، والمعروفة باسم U880 . تم استخدامه على نطاق واسع في أنظمة الكمبيوتر الخاصة بشركة Robotron و VEB Mikroelektronik Mühlhausen (مثل سلسلة KC85 ) وأيضًا في العديد من أنظمة الكمبيوتر ذاتية الصنع. في رومانيا ، يمكن العثور على نسخة أخرى غير مرخصة ، تسمى MMN80CPU وتنتجها Microelectronica ، وتستخدم في أجهزة الكمبيوتر المنزلية مثل TIM-S و HC و COBRA.
أيضًا ، تم إنشاء العديد من الحيوانات المستنسخة من Z80 في الاتحاد السوفيتي ، ومن أبرزها T34BM1 ، وتسمى أيضًا КР1858ВМ1 (يوازي الطراز السوفيتي 8080 المستنسخ KR580VM80A ). تم استخدام العلامة الأولى في سلسلة ما قبل الإنتاج ، بينما تم استخدام العلامة الثانية لإنتاج أكبر. رغم ذلك ، نظرًا لانهيار الإلكترونيات الدقيقة السوفييتية في أواخر الثمانينيات ، يوجد عدد أكبر من T34BM1s من طراز КР1858ВМ1s. [ بحاجة لمصدر ]
المشتقات
- متوافق مع Z80 الأصلي
- قامت شركة هيتاشي بتطوير HD64180 ، وهو Z80 ذو تشفير دقيق وديناميكي جزئيًا في CMOS ، مع الأجهزة الطرفية للرقاقة ووحدة MMU البسيطة التي توفر مساحة عنوان 1 ميجابايت . تم الحصول عليها لاحقًا من قبل Zilog ، في البداية باسم Z64180 ، ثم في شكل Z180 المعدل قليلاً [61] والذي يحتوي على بروتوكول ناقل وتوقيتات تتكيف بشكل أفضل مع رقائق Z80 الطرفية. تمت صيانة Z180 وتطويره بشكل أكبر تحت اسم Zilog ، حيث تعتمد أحدث الإصدارات على نواة S180 / L180 الثابتة تمامًا مع سحب طاقة منخفض للغاية و EMI (ضوضاء).
- طورت توشيبا 84 دبوسًا Z84013 / Z84C13 وسلسلة 100 دبوس Z84015 / Z84C15 من "وحدات التحكم الطرفية الذكية" ، نوى NMOS و CMOS Z80 العادية مع الأجهزة الطرفية Z80 ، وموقت المراقبة ، وإعادة التشغيل ، ومولد حالة الانتظار على نفس الشريحة. تم تصنيعها بواسطة Sharp وكذلك Toshiba. هذه المنتجات هي اليوم مصدر ثانٍ من Zilog. [62]
- تم استخدام Zilog Z380 المتوافق مع 32 بت Z80 ، والذي تم تقديمه عام 1994 ، بشكل أساسي في معدات الاتصالات. [ بحاجة لمصدر ]
- تم تقديم eZ80 المتوافقة مع Z80 بالكامل من Zilog [63] بطول كلمة 8/16/24 بت ومساحة عنوان خطية 16 ميغابايت في عام 2001. وهي موجودة في الإصدارات التي تحتوي على شريحة SRAM أو ذاكرة فلاش ، وكذلك مع الأجهزة الطرفية المدمجة . يوجد متغير واحد على شريحة MAC (وحدة التحكم في الوصول إلى الوسائط) ، وتتضمن البرامج المتاحة مكدس TCP / IP . على عكس Z800 و Z280 ، لا يوجد سوى عدد قليل من الإرشادات المضافة (في المقام الأول LEAs ، PEAs، وتحميلات ذات عنوان متغير 16/24 بت) ، ولكن يتم تنفيذ التعليمات بدلاً من ذلك بين 2 و 11 مرة كدورة ساعة فعالة كما في Z80 الأصلي (بمتوسط قيمة حوالي 3-5 مرات). تم تحديده حاليًا لترددات الساعة التي تصل إلى 50 ميجاهرتز.
- قامت Kawasaki بتطوير KL5C8400 المتوافق الثنائي والذي يبلغ تقريبًا 1.2-1.3 مرة كدورة ساعة فعالة مثل Z80 الأصلي ويمكن تسجيله بسرعة تصل إلى 33 ميجاهرتز. تنتج Kawasaki أيضًا عائلة KL5C80A1x ، التي تحتوي على ملحقات بالإضافة إلى ذاكرة وصول عشوائي صغيرة على الرقاقة ؛ إنها تقريبًا فعالة مثل دورة الساعة مثل eZ80 ويمكن تسجيلها بسرعة تصل إلى 10 ميجاهرتز (2006). [64]
- كانت NEC μPD9002 عبارة عن وحدة معالجة مركزية هجينة متوافقة مع عائلات Z80 و x86 .
- تحتوي عائلة المعالجات الصوتية لأشباه الموصلات الصينية (ATJ2085 وغيرها) على وحدات MCU متوافقة مع Z80 مع معالج DSP مخصص 24 بت. [٦٥] تُستخدم هذه الرقائق في العديد من منتجات MP3 ومشغلات الوسائط.
- تتوفر النوى الناعمة القابلة للتركيب T80 (VHDL) و TV80 (Verilog) من OpenCores.org. [66]
- تم استخدام National Semiconductor NSC800 التي تم الإعلان عنها في عام 1980 [67] في العديد من أجهزة التشفير الإلكترونية TeleSecurity Timmann (TST) [68] و Canon X-07 . NSC800 متوافق تمامًا مع مجموعة تعليمات Z-80. [69] يستخدم NSC800 ناقل متعدد الإرسال مثل 8085 ولكن لديه pinout مختلف عن Z80. [70]
- غير متوافق
- تعتمد سلسلة Toshiba TLCS 900 من وحدات التحكم الدقيقة ذات الحجم الكبير (معظمها OTP ) على Z80 ؛ يشتركون في نفس بنية التسجيل الأساسية BC ، و DE ، و HL ، و IX ، و IY ، وإلى حد كبير نفس التعليمات ، ولكنها ليست متوافقة مع النظام الثنائي ، في حين أن TLCS 90 السابق متوافق مع Z80. [71]
- تعتمد سلسلة المتحكمات الدقيقة NEC 78K على Z80 ؛ يشتركون في نفس بنية التسجيل الأساسية BC ، و DE ، و HL ، ولديهم تعليمات متشابهة (لكن تحمل أسماء مختلفة) ؛ لا ثنائي متوافق.
- متوافق جزئيًا
- تعتمد المعالجات الدقيقة / المتحكمات الدقيقة من Rabbit Semiconductor 's Rabbit 2000/3000/4000 [72] على بنية HD64180 / Z180 ، على الرغم من أنها ليست متوافقة تمامًا مع النظام الثنائي. [73]
- لم تعد تنتج
- كان ASCII Corporation R800 عبارة عن معالج سريع 16 بت يستخدم في أجهزة كمبيوتر MSX TurboR . لقد كان برنامجًا ، ولكن ليس جهازًا متوافقًا مع Z80 (يختلف توقيت الإشارة والتوصيل ووظيفة المسامير عن Z80).
- كان NMOS Z800 و CMOS Z280 من Zilog عبارة عن تطبيقات Z80 ذات 16 بت (قبل HD64180 / Z180 ) مع مساحة عنوان MMU مقسمة إلى صفحات تبلغ 16 ميجابايت ؛ أضافوا العديد من عمليات التعامد وأنماط العنونة لمجموعة تعليمات Z80. ميزات الحواسيب الصغيرة - مثل أوضاع المستخدم والنظام ، ودعم المعالجات المتعددة ، على رقاقة MMU ، وتعليمات الرقاقة وذاكرة التخزين المؤقت للبيانات وما إلى ذلك - كان يُنظر إليها على أنها أكثر تعقيدًا من كونها وظيفة ودعم لمصمم الأنظمة المضمنة (الموجه عادة نحو الإلكترونيات) ، كما أنه جعل من الصعب للغاية التنبؤ بأوقات تنفيذ التعليمات. [ بحاجة لمصدر ]
- تستخدم بعض ألعاب الآركيد مثل Pang / Buster Bros وحدة المعالجة المركزية "Kabuki" Z80 المشفرة المصنعة بواسطة VLSI Technology ، حيث يتم تخزين مفاتيح فك التشفير في الذاكرة الداخلية المدعومة بالبطارية ، لتجنب القرصنة والألعاب غير القانونية غير القانونية. [74]
استخدامات بارزة
أجهزة كمبيوتر سطح المكتب
خلال أواخر السبعينيات وأوائل الثمانينيات ، تم استخدام Z80 في عدد كبير من الآلات الموجهة للأعمال مجهولة الهوية إلى حد ما مع نظام التشغيل CP / M ، وهو مزيج سيطر على السوق في ذلك الوقت. [75] [76] أربعة أمثلة معروفة لأجهزة الكمبيوتر التجارية Z80 التي تعمل بنظام CP / M هي Heathkit H89 و Osborne 1 المحمولة وسلسلة Kaypro و Epson QX-10 . أقل شهرة هو Otrona Attache الراقية الباهظة الثمن. [77] تستخدم بعض الأنظمة برنامج نظام تشغيل متعدد المهام (مثل MP / M أو Morrow 's Micronix) لمشاركة المعالج الواحد بين عدةالمستخدمين المتزامنين .
تم تقديم أجهزة كمبيوتر منزلية متعددة تستخدم Z80 باعتباره المعالج الرئيسي أو كخيار إضافي للسماح بالوصول إلى البرامج المكتوبة لـ Z80. وتجدر الإشارة إلى سلسلة TRS-80 ، بما في ذلك الطراز الأصلي (الذي أعيد تصميمه لاحقًا "طراز I") ، والطراز II ، والطراز III ، والطراز 4 ، والتي تم تجهيزها بـ Z80 كمعالج رئيسي ، وبعضها (ولكن ليس جميعها) الأخرى طرازات TRS-80 التي استخدمت Z80 كمعالج رئيسي أو ثانوي. ومن الآلات البارزة الأخرى DEC Rainbow 100 ، و Seequa Chameleon ، وكلاهما يتميز بمعالج Intel 8088ووحدة المعالجة المركزية Z80 ، لدعم تطبيقات 8 بت CP / M-80 التي تعمل على Z80 ، أو MS-DOS المخصص الذي لم يكن متوافقًا تمامًا مع تطبيقات PC DOS التي تعمل على 8088.
في عام 1981 ، قدمت شركة Multitech (التي أصبحت فيما بعد شركة Acer ) المعالج الدقيق الأول ، وهو نظام تدريب بسيط وغير مكلف للمعالج الدقيق Z80. حاليًا ، لا تزال شركة Flite Electronics International Limited تصنعها وتباع في ساوثهامبتون بإنجلترا .
في عام 1984 ، قدمت توشيبا Toshiba MSX HX-10 في اليابان وأستراليا.
في عام 1985 ، قدمت Sharp جهاز Hotbit و Gradiente قدمت Expert ، والتي أصبحت أجهزة الكمبيوتر المنزلية 8 بت المهيمنة في البرازيل حتى أواخر الثمانينيات.
أجهزة الكمبيوتر المحمولة والمحمولة
أصبح استخدام Z80 في الأجهزة الأخف وزنًا التي تعمل بالبطاريات أكثر انتشارًا مع توفر إصدارات CMOS من المعالج. كما أنها ألهمت تطوير معالجات أخرى قائمة على CMOS ، مثل LH5801 [78] من Sharp. تم إصدار جهاز Sharp PC-1500 ، وهو كمبيوتر جيب أساسي قابل للبرمجة في عام 1981 ، تلاه جهاز Sharp PC-1600 المحسن في عام 1986 و Sharp PC-E220 في عام 1991. كما أن النماذج اللاحقة من سلسلة Sharp Wizard للمنظمين الشخصيين كانت تعتمد على Z80 . أجهزة الكمبيوتر المحمولة التي يمكنها تشغيل نظام التشغيل CP / M تمامًا مثل أجهزة سطح المكتب التي تم اتباعها مع Epson PX-8 Geneva في عام 1984 ، وفي عام 1985إبسون PX-4 و Bondwell-2 . بينما انتقل سوق الكمبيوتر المحمول في السنوات اللاحقة إلى معالجات Intel 8086 الأكثر قوة ونظام التشغيل MS-DOS ، لا يزال يتم تقديم أنظمة خفيفة الوزن تعتمد على Z80 مع عمر بطارية أطول ، مثل Cambridge Z88 في عام 1988 و Amstrad NC100 في عام 1992. وجدت Z8S180 المستمدة من Z80 طريقها أيضًا إلى مساعد رقمي شخصي يعمل بالقلم ، وهو Amstrad PenPad PDA600 في عام 1993. أنتجت VTech ومقرها هونج كونج مجموعة من أجهزة الكمبيوتر المحمولة الصغيرة تسمى "الليزر" على أساس Z80. [79] [80] آخر اثنين كانا Laser PC5[81] و PC6. [٨٢] Cidco MailStation Mivo 100 ، الذي تم إصداره لأول مرة في عام 1999 ، كان عبارة عن جهاز بريد إلكتروني محمول قائم بذاته ، مع متحكم يعتمد على Z80. [83] أنتجت شركة Texas Instruments سلسلة من أجهزة تنظيم الجيب (انتهت في عام 2000) باستخدام معالجات توشيبا المبنية حول نواة Z80. أولها كان TI PS-6200 [84] وبعد فترة إنتاج مطولة لعشرات الطرازات بلغت ذروتها في سلسلة PocketMate الخاصة بهم. [85]
الأنظمة المضمنة والالكترونيات الاستهلاكية

لطالما كان Zilog Z80 معالجًا دقيقًا شائعًا في الأنظمة المدمجة وأنوية المتحكم الدقيق ، [35] حيث لا يزال قيد الاستخدام على نطاق واسع حتى يومنا هذا. [3] [86] تشمل تطبيقات Z80 الاستخدامات في الإلكترونيات الاستهلاكية والمنتجات الصناعية والآلات الموسيقية الإلكترونية. على سبيل المثال ، تم استخدام Z80 في المزج الموسيقي الرائد Prophet-5 ، [87] وكذلك في أول آلة توليف MIDI نبي 600 . [88] استخدمت Casio Z80A في وحدة تحكم ألعاب الفيديو PV-1000 .
يحتوي عدد كبير من ألعاب الفيديو في أوائل الثمانينيات ، بما في ذلك لعبة الأركيد Pac-Man ، على وحدات المعالجة المركزية Z80.
تم استخدام Z80 في نظام Sega Master System ووحدات تحكم Sega Game Gear . يحتوي Sega Genesis على Z80 ، مع 8 كيلوبايت من ذاكرة الوصول العشوائي الخاصة به ، والتي تعمل بالتوازي مع وحدة المعالجة المركزية MC68000 الرئيسية ، ولها وصول مباشر إلى شرائح الصوت في النظام ومنافذ الإدخال / الإخراج (وحدة التحكم) ، ولها مسار بيانات محول إلى ناقل الذاكرة الرئيسي لـ 68000 (يوفر الوصول إلى ذاكرة الوصول العشوائي الرئيسية بسعة 64 كيلوبايت وخرطوشة البرنامج وشريحة الفيديو بأكملها) ؛ بالإضافة إلى توفير التوافق مع الإصدارات السابقة مع ألعاب Master System ، غالبًا ما يتم استخدام Z80 للتحكم في الصوت وتشغيله في برنامج Genesis. [xiii]
تم استخدام وحدات المعالجة المركزية Z80 أيضًا في سلسلة TI-8x الرائدة والشهيرة من الآلات الحاسبة الرسومية من Texas Instruments ، بدءًا من عام 1990 مع TI-81 ، والتي تتميز بـ Z80 مسجّلة بسرعة 2 ميجاهرتز. معظم الآلات الحاسبة عالية الخط في السلسلة ، بدءًا من TI-82 و TI-85 ، تسجل وحدات المعالجة المركزية Z80 الخاصة بها بسرعة 6 ميجاهرتز أو أعلى. (تستخدم بعض الطرز التي تحمل أسماء TI-8x وحدات معالجة مركزية أخرى ، مثل M68000 ، ولكن الغالبية العظمى منها تعتمد على Z80. ومن الممكن تشغيل برامج مستخدم مُجمَّعة أو مُجمَّعة في شكل رمز لغة الآلة Z80. ) سلسلة TI-84 Plus ، التي تم تقديمها في عام 2004 ، لا تزال قيد الإنتاج اعتبارًا من عام 2020. سلسلة TI-84 Plus CE، الذي تم طرحه في عام 2015 ، يستخدم معالج Zilog eZ80 المشتق من Z80 ولا يزال أيضًا قيد الإنتاج اعتبارًا من عام 2020.
في أواخر الثمانينيات ، ظهرت سلسلة من الهواتف الأرضية السوفيتية تسمى "AON" Z80 ؛ قامت هذه الهواتف بتوسيع مجموعة ميزات الخط الأرضي بمعرف المتصل ونغمات رنين مختلفة بناءً على المتصل والاتصال السريع وما إلى ذلك. [89] في النصف الثاني من التسعينيات ، تحول مصنعو هذه الهواتف إلى 8051 وحدة MCU متوافقة لتقليل استهلاك الطاقة ومنع ارتفاع درجة حرارة ثآليل الجدران المدمجة.
انظر أيضا
الحواشي
- ^ فقط في CMOS ، لم تصدر National إصدار NMOS ، وفقًا للتاريخ الشفوي مع Federico Faggin
- ^ قام Zilog بتضمين العديد من "الفخاخ" في تخطيط الشريحة لمحاولة تأخير هذا النسخ. وفقًا لـ Faggin ، أخبره أحد مهندسي NEC في وقت لاحق أنها كلفتهم عدة أشهر من العمل ، قبل أن يتمكنوا من تشغيل μPD780.
- ^ كانت هذه سمة شائعة إلى حد ما لتصميمات الحواسيب الصغيرة في العصر ، ووجدت طريقها إلى عدد من المعالجات الدقيقة المبكرة.
- ^ قامت Zilog بتصنيع Z80 بالإضافة إلى معظم منتجاتها الأخرى لسنوات عديدة حتى باعت مصانعها وأصبحت شركة " fabless " كما هي اليوم.
- ^ على الرغم من أن 8080 يحتوي على إضافة 16 بت وتعليمات زيادة وإنقاص 16 بت ، إلا أنه لا يحتوي على طرح 16 بت واضح ، ولا يوجد علامة تجاوز. استكملت Z80 ذلك بتعليمات ADC HL و rr و SBC HL و rr ، والتي تحدد علامة الفائض الجديدة وفقًا لذلك. (لا يتوافق ADD HL، rr المتوافق مع 8080.)
- ^ على وجه الخصوص للتعامل في وقت واحد مع mantissas 32 بت من معاملين في تنسيق40 بت الفاصلة العائمة المستخدمة في أجهزة الكمبيوتر المنزلية Sinclair . تم استخدامها أيضًا بطريقة مماثلة في بعض أجهزة الكمبيوتر السابقة ولكن الأقل شهرة القائمة على Z80 ، مثل السويدية ABC 80 و ABC 800 .
- ^ نظرًا لأن هذا التحديث لا يحتاج إلى نقل أي بيانات ، فقط قم بإخراج عناوين الصفوف المتسلسلة ، فهي تشغل أقل من 1.5 حالة T. يمكن استخدام إشارة M1 المخصصة ( دورة الآلة الأولى ) في Z80 للسماح لرقائق الذاكرة بنفس مقدار وقت الوصول لجلب التعليمات كما هو الحال بالنسبة للوصول إلى البيانات ، أي ما يقرب من حالتين T كاملتين من دورة الجلب 4T (أيضًا خارج دورة قراءة البيانات 3T). يمكن أن تستخدم Z80 ذاكرة مع نفس نطاق أوقات الوصول مثل 8080 (أو 8086) في نفس تردد الساعة. تعني إشارة M1 الطويلة (بالنسبة إلى الساعة) أيضًا أن Z80 يمكن أن تستخدم حوالي 4-5 أضعاف التردد الداخلي لـ 6800 أو 6502 أو ما شابه باستخدام نفس النوع من الذاكرة.
- ^ على عكس إصدار nMOS الأصلي ، الذي استخدم المزالج الديناميكية ولا يمكن إيقافه لأكثر من بضعة آلاف من دورات الساعة.
- ^ ورثت عائلة 8086 ذات الصلة
- ^ كان مؤشر HL المتغير هذا في الواقع هو الطريقة الوحيدة للوصول إلى الذاكرة (للبيانات) في Datapoint 2200 ، وبالتالي أيضًا في Intel 8008. لا يمكن استخدام أي عناوين مباشرة للوصول إلى البيانات.
- ^ تعليمات Jump (
JP
) ، التي تقوم بتحميل عداد البرنامج بعنوان تعليمات جديد ، لا تصل نفسها إلى الذاكرة. تعكس الأشكال المطلقة والنسبية للقفزة هذا عن طريق حذف الأقواس المستديرة من معاملاتها. تسجيل تعليمات القفز القائمة مثل "JP (HL)
" تضمين الأقواس المستديرة في انحراف واضح عن هذه الاتفاقية. [40] - ^ على سبيل المثال ، في 8080 ، قد يختبر المبرمج تكافؤ بايت عن طريق إدخال
ADD
صفر إليه ، أو عن طريقSUB
تتبع الصفر منه ، أو عن طريقOR
إدخاله أوXOR
إدخاله بصفر ؛ كل هذه عمليات ذات تعليمات فردية بنفس السرعة والحجم ، في كل من 8080 و Z80. إذا اختار المبرمج اختبار التكافؤ من خلالOR
ing أوXOR
ing مع الصفر ، فسيقوم Z80 بتنفيذ البرنامج بشكل صحيح ، ولكن إذا اختار المبرمج اختبار التكافؤ عن طريقADD
ing أوSUB
تتبع الصفر ، عندئذٍ سيعيد Z80 دائمًا إعادة تعيين علامة P / V إلى الصفر (نظرًا لأن إضافة الصفر أو طرحه لا يؤدي أبدًا إلى حدوث تجاوز أو انخفاض) بدلاً من تعيين P للإشارة بشكل صحيح إلى تكافؤ البايت (مثل 8080 - أو 8085 - ) ، وقد يفشل البرنامج. لا يوجد شيء في أدلة برمجة Intel أو الوثائق الأخرى لـ 8080 استخدام محبط للتعليمات الحسابية ، أو موصوفة باستخدام تعليمات منطقية ، لاختبار التكافؤ ، لذلك لا يوجد سبب يدعو إلى أن يكون مبرمج 8080 يمارس ممارسة البرمجة الجيدة الموصى بها قد اختار واحدًا من الطرق التي ستعمل على Z80 بإحدى الطرق التي لن تعمل. - ^ هذا الاستخدام الشائع ، ولكنه اختياري وغير مقيد ، يؤدي إلى الوصف المتكرر ولكن غير الصحيح لـ Z80 في Genesis على أنه "معالج صوت".
المراجع
- ^ أ ب ج زيلوج (2005). دليل مستخدم Z80 Family CPU (PDF) . زيلوج. ص. 5.
- ^ أ ب فاجين ، شيما وأنجرمان 2007 .
- ^ أ ب ج بالش ، مارك (18 يونيو 2003). "الأساسيات الرقمية". التصميم الرقمي الكامل: دليل شامل للإلكترونيات الرقمية وهندسة أنظمة الكمبيوتر . هندسة احترافية. نيويورك ، نيويورك : McGraw-Hill Professional . ص. 122. ISBN 0-07-140927-0.
- ^ أ ب تقرير سيبولد عن الحوسبة الاحترافية . منشورات سيبولد. 1983.
في عالم 8 بت ، أكثر الحواسيب الصغيرة شيوعًا هما Z80 و 6502 رقائق الكمبيوتر.
- ^ أ ب فاجين ، شيما وأنجرمان 2007 ، ص. 1.
- ^ أ ب فاجين ، شيما وأنجرمان 2007 ، ص. 2.
- ^ أ ب ج فاجين ، شيما وأنجرمان 2007 ، ص. 3.
- ^ أ ب ج فاجين ، شيما وأنجرمان 2007 ، ص. 4.
- ^ فاجين ، شيما و أنجرمان 2007 ، ص. 8.
- ^ أ ب فاجين ، شيما وأنجرمان 2007 ، ص. 5.
- ^ فاجين ، شيما و أنجرمان 2007 ، ص. 19.
- ^ فاجين ، شيما و أنجرمان 2007 ، ص. 6.
- ^ فاجين ، شيما و أنجرمان 2007 ، ص. 7.
- ^ فاجين ، شيما و أنجرمان 2007 ، ص. 17.
- ^ أندرسون (1994) ، ص. 51.
- ^ فاجين ، شيما و أنجرمان 2007 ، ص. 13.
- ^ فاجين ، شيما و أنجرمان 2007 ، ص. 9.
- ^ أندرسون (1994) ، ص. 57.
- ^ أ ب بروك ، جيرالد و. (2003). ثورة المعلومات الثانية . مطبعة جامعة هارفارد. رقم ISBN 978-0-674-01178-6.
- ^ "تاريخ 8 بت: السفر بعيدًا في وقت قصير" . إنفوورلد . المجلد. 4 ، لا. 47. بالو ألتو ، كاليفورنيا: Popular Computing Inc. 1982-11-29. ص 58-60. ISSN 0199-6649 .
- ^ فاجين ، فيديريكو ؛ شيما ، ماساتوشي ؛ أنجرمان ، رالف (1976-08-19). "مجموعة شرائح Z-80 تنذر بالجيل الثالث من المعالجات الدقيقة". إلكترونيات . نيويورك. 49 (17): 32–33 ماكجرو هيل.
- ^ سيارسيا (1981) ، ص 31 ، 32.
- ^ أ ب واي كاي تشين (2002). كتيب الدوائر والمرشحات . اضغط CRC . ص. 1943. ISBN 978-0-8493-0912-0.
تبدأ معالجة المقاطعة وفقًا لطريقة المقاطعة المنصوص عليها في تعليمات IM i أو i = 0 أو 1 أو 2. إذا كانت i = 1 ، للطريقة المباشرة ، يتم تحميل الكمبيوتر بـ 0038H. إذا كانت i = 0 ، للطريقة المتجهية ، فإن جهاز المقاطعة لديه الفرصة لوضع كود المرجع لبايت واحد. إذا كانت i = 2 ، لطريقة المتجه غير المباشرة ، يجب أن يضع جهاز المقاطعة بايتًا. ثم يستخدم Z80 هذا البايت حيث يمكن تحديد واحد من 128 متجهًا للمقاطعة بواسطة البايت.
- ^ ماثور (1989). مقدمة في المعالجات الدقيقة . ص. 111. رقم ISBN 978-0-07-460222-5.
تعتبر بنية التسجيل في Z80 أكثر إبداعًا من 8085
- ^ "Z80 Special Reset" .
- ^ أدريان ، أندريه. "Z80 ، 8-bit Number Cruncher" .
- ^ "Z80 ، محطم الأرقام 8 بت" .
- ^ الحوسبة الشعبية . ماكجرو هيل . 1983. ص. 15.
- ^ ماركوف ، جون (1982-10-18). "حساء Z80 السريع Z80 يصل أداء 8 بت إلى 16 بت". إنفوورلد . مجموعة InfoWorld Media. ص. 1. ISSN 0199-6649 .
- ^ تصميم الكتروني . هايدن. 1988. ص. 142-
بالإضافة إلى دعم مجموعة تعليمات Z80 بأكملها ، Z180
- ^ غانسيل ، جاك ج. (1992). "Z80 يعيش!" .
اختار المصممون بنية متوافقة مع Z80 ، مما يمنح مستخدمي Z80 مسار ترقية متوافق تمامًا مع البرامج.
يعمل المعالج 64180 على تشغيل كل تعليمات Z80 تمامًا كما يفعل Z80
- ^ "وصولاً إلى السيليكون: كيف يتم تنفيذ مسجلات Z80" .
- ^ كيلوبود . 1001001. 1977. ص. 22.
- ^ رودني زاكس (1982). برمجة Z80 (الطبعة الثالثة). SYBEX. ص. 62. رقم ISBN 978-0-89588-069-7.
- ^ أ ب ستيف هيث. (2003). تصميم الأنظمة المدمجة . أكسفورد: نيونس. ص. 21. ISBN 978-0-7506-5546-0.
- ^ "Z80 Flag Affection" . z80.info . توماس شيرير . تم الاسترجاع 2016/06/14 .
- ^ شريف ، كين. "تحتوي Z-80 على وحدة ALU 4 بت. وإليك كيفية عملها" . مؤرشفة من الأصلي في 09 سبتمبر 2013 . تم الاسترجاع 2021-11-16 .
- ^ فرانك دوردا الرابع. "مجموعة تعليمات 8080 / Z80" . مؤرشفة من الأصلي في 11 فبراير 2016 . تم الاسترجاع 2009-07-22 .
- ^ "8080A / 8-Bit N-Channel Microprocessor". كتالوج بيانات مكونات إنتل 1978 . سانتا كلارا ، كاليفورنيا: شركة إنتل. 1978. ص 11 - 17.
جميع فن الإستذكار حقوق النشر لشركة إنتل 1977
- ^ "Z80 Relocating Macro Assembler دليل مستخدم" (PDF) . ص. ب –2. مؤرشف من الأصل (PDF) في 20 يوليو 2011 . تم الاسترجاع 2009-06-04 .
- ^ سكانلون ، ليو ج. (1988). 8086/8088/80286 لغة التجميع . كتب برادي . ص. 12 . رقم ISBN 978-0-13-246919-7.
[...] 8086 متوافق مع البرامج 8080 على مستوى لغة التجميع. [...]
- ^ نيلسون ، روس ب. (يناير 1989) [1988]. كتاب 80386: دليل مبرمج لغة التجميع لـ 80386 . سلسلة برمجة Microsoft (1 ed.). مايكروسوفت برس . ص. 2. ISBN 978-1-55615-138-5.
[...] يمكن لبرنامج مترجم إنتل تحويل 8080 برنامج المجمع إلى 8086 برامج المجمّع [...]
- ^ أ ب "مقدمة عن وحدة المعالجة المركزية Z80" . زيلوج. 1995.
بلغة 252 تعليمات جذر ومع 4 بايتات محجوزة كبادئات ، تصل إلى 308 تعليمات إضافية.
- ^ "الدليل الفني لـ Z80-CPU ، القسم 5.0 ، الصفحة 19" . زيلوج ، إنك . تم الاسترجاع 2021/07/20 .
- ^ سانشيز ، خوليو ؛ كانتون ، ماريا ب. (2008). حلول برمجية للمهندسين والعلماء . تايلور وفرانسيس. ص. 65. ردمك 978-1-4200-4302-0.
لم تتضمن المعالجات الدقيقة 8 بت التي سبقت عائلة 80x86 (مثل Intel 8080 و Zilog Z80 و Motorola) المضاعفة.
- ^ "مجموعات تعليمات 8080 / Z80" . مجمع 8080 السريع والقذر . فرانك دوردا. مؤرشفة من الأصلي في 11 فبراير 2016 . تم الاسترجاع 2016/07/25 .
- ^ فروليش ، روبرت أ. (1984). كتالوج البرامج المجانية والدليل . ولي العهد للنشر. ص. 133. ISBN 978-0-517-55448-7.
تسمح رموز Z80 غير الموثقة بعمليات 8 بت مع سجلات IX و IY.
- ^ a b Bot ، Jacco JT "تعليمات Z80 غير الموثقة" . موطن وحدة المعالجة المركزية Z80 .
إذا كان كود التشغيل يعمل مع السجلات HL أو H أو L ، إذا كان كود التشغيل مسبوقًا بـ #DD (أو #FD) فإنه يعمل على IX أو IXH أو IXL (أو IY أو IYH أو IYL) ، مع بعض الاستثناءات.
الاستثناءات هي تعليمات مثل LD H و IXH و LD L و IYH.
- ^ Robin Nixon The Amstrad Notepad Advanced User Guide ، Robin Nixon ، 1993 ، ISBN 1-85058-515-6 ، الصفحات 219-223.
- ^ أ ب يونغ ، شون (1998). "ميزات غير موثقة لـ Z80 (في سلوك البرنامج)" .
تعليمات الإدخال / الإخراج تستخدم ناقل العنوان بالكامل ، وليس فقط 8 بتات السفلية.
في الواقع ، يمكن أن يكون لديك 65536 منفذ إدخال / إخراج في نظام Z80 (يستخدم الطيف هذا).
IN r و (C) و OUT (C) و r وجميع تعليمات مجموعة الإدخال / الإخراج تضع كل BC على ناقل العنوان.
في A و (n) و OUT (n) ، ضع A * 256 + n على ناقل العنوان.
- ^ زيلوج (2005). دليل مستخدم Z80 Family CPU (PDF) . زيلوج. ص. 11.
- ^ سيارسيا (1981) ، ص. 65.
- ^ زاكس ، رودني (1989). برمجة Z80 . سايبكس. ص. 200. رقم ISBN 978-0-89588-069-7.
إضافة A ، n إضافة مجمع ببيانات فورية n. توقيت الذاكرة: 2 M دورات ؛ دول 7 تي.
- ^ سيارسيا (1981) ، ص. 63.
- ^ سيارسيا (1981) ، ص. 77.
- ^ سيارسيا (1981) ، ص. 36.
- ^ سيارسيا (1981) ، ص. 58.
- ^ "دليل مستخدم Z80 ، سجلات خاصة ، الصفحة 3" . zilog.com . زيلوج . تم الاسترجاع 2016/06/14 .
- ^ "دليل مستخدم Z80 Family CPU Peripherals" (PDF) . ورقة بيانات EEWORLD . ZiLOG. 2001. مؤرشفة من الأصلي (PDF) في 02 مايو 2014 . تم الاسترجاع 2014/04/30 .
- ^ "نظرة عامة على سلسلة SHARP MZ" . SharpMZ.org . مؤرشفة من الأصلي في 2008-03-27 . تم الاسترجاع 2011-07-28 .
تستخدم معظم أجهزة MZ وحدة المعالجة المركزية 8 بت LH0080 / Z80 [...]
- ^ غانسيل ، جاك ج. (1992). "Z80 يعيش!" .
64180 هو نواة Z80 التي توفرها هيتاشي مع العديد من "الإضافات" على الرقاقة.
نسخة Zilog هي Z180 ، والتي هي في الأساس نفس الجزء.
- ^ غانسيل ، جاك ج. (1992). "Z80 يعيش!" .
تبيع كل من Toshiba و Zilog 84013 و 84015 ، وهما عبارة عن نوى Z80 مزودة بأجهزة طرفية تقليدية مدمجة في Z80.
- ^ "مجموعة منتجات EZ80 ACCLAIM" . زيلوج.
- ^ الأعمال الإلكترونية في آسيا . كاهنرز آسيا المحدودة. 1997. ص. 5. KL5C80A12 و KL5C80A16 و KL5C8400 من Kawasaki هي وحدات
MCU
ووحدة معالجة مركزية عالية السرعة 8 بت
.
رمز وحدة المعالجة المركزية الخاص بهم ، KC80 متوافق مع Zilog's Z80 على المستوى الثنائي.
ينفذ KC80 التعليمات أسرع بنحو أربع مرات من Z80 بنفس معدل الساعة
- ^ "مواصفات الأجهزة" . S1mp3.org . 2005.
- ^ "مشاريع :: OpenCores" .
- ^ "NSC800 - عائلة معالجات دقيقة منخفضة الطاقة وعالية الأداء" .
- ^ "TST-4043: مشفر البيانات بمودم HF و FEC"
- ^ "NSC800 معالج دقيق CMOS منخفض الطاقة وعالي الأداء" .
- ^ "MCS-85 و Zilog Z80 ولوحات التوسيع الوطنية NSC800" .
- ^ "القسم 6 MOS MPU و MCU و Peripherals Market Trends" (PDF) . ص. 16.
- ^ أكسلسون ، يناير (2003). تم تضمين إيثرنت وإنترنت . بحث ليكفيو. ص. 93. رقم ISBN 978-1-931448-00-0.
المعالج الدقيق Rabbit 3000 لأشباه الموصلات ، وهو مشتق محسّن ومحسّن كثيرًا من المعالجات الدقيقة Z80 المحترمة لشركة ZiLOG، Inc.
- ^ حيدر كمال. بيرين ، بوب (2004). تصميم الأنظمة المدمجة باستخدام المعالج الدقيق Rabbit 3000 . نيونس. ص. 32. ردمك 978-0-7506-7872-8.
تعتمد أجزاء Rabbit بشكل وثيق على بنية Zilog Z180 ، على الرغم من أنها غير متوافقة مع أجزاء Zilog.
- ^ كروز ، إدواردو (23 نوفمبر 2014). "Arcade Hacker: Capcom Kabuki CPU - مقدمة" .
- ^ هولتز ، هيرمان (1985). محطات عمل الكمبيوتر . تشابمان وهال. ص. 223. ISBN 978-0-412-00491-9.
واستمر CP / M في السيطرة على عالم 8 بت من الحواسيب الصغيرة.
- ^ دفوراك ، جون سي (1982-05-10). "بعد CP / M ، قد تقود أنظمة التشغيل الموجهة للكائنات المجال". إنفوورلد . المجلد. 4 ، لا. 18. مجموعة InfoWorld Media. ص. 20. ISSN 0199-6649 .
لا تزال فكرة نظام التشغيل العام في مهدها.
من نواحٍ عديدة ، يبدأ الأمر بـ CP / M و Mishmash لأوائل أجهزة الكمبيوتر 8080 و Z80.
- ^ "Otrona Attache" . متحف Steve's Old Computer . ستيفن ستينجل . تم الاسترجاع 2019/03/05 .
- ^ "Sharp PC-1500 Technical Reference Manual" (PDF) .
- ^ "كمبيوتر محمول فقير مان" . كتب جوجل . الميكانيكا الشعبية ، أبريل 1991 ، صفحة 120. أبريل 1991 . تم الاسترجاع 2018/04/11 .
- ^ "Laser PC4" . متحف الكمبيوتر القديم . تم الاسترجاع 2018/04/11 .
- ^ "Laser PC5 من VTech" . Larwe دوت كوم . تم الاسترجاع 2018/04/11 .
- ^ "Laser PC6" . حلول مثالية دوت كوم . حلول مثالية. مؤرشفة من الأصلي في 2018-05-21 . تم الاسترجاع 2018/04/11 .
- ^ "Fybertech.net - Mailstation" . تم الاسترجاع 2021-04-18 .
- ^ "Texas Instruments PS-6200" . متحف داتاما للحاسبة . يورج فورنر . تم الاسترجاع 2019/06/18 .
- ^ "Texas Instruments PocketMate 100" . متحف داتاما للحاسبة . يورج فورنر . تم الاسترجاع 2019/06/18 .
- ^ إيان ر.سنكلير (2000). كتيب الإلكترونيات العملي . أكسفورد ، أنجليتير: نيونس. ص. 204. ISBN 978-0-7506-4585-0.
- ^ "توليفات غوردون ريد القديمة - الدوائر المتتابعة النبي 5 والنبي 10" . gordonreid.co.uk .
- ^ "النبي 600: مُركِّب كلاسيكي يحصل على ترقية للمعالج" . 2014/03/19.
- ^ "عمل عرض توضيحي لهاتف قديم - AONDEMO" . habr.com .
مصادر
- أندرسون ، أ.جون (1994). أسس تكنولوجيا الكمبيوتر (الطبعة الأولى). لندن: تشابمان آند هول. رقم ISBN 0-412-59810-8.
- سيارسيا ، ستيف (1981). قم ببناء جهاز الكمبيوتر الخاص بك Z80 - إرشادات التصميم وملاحظات التطبيق (الطبعة الأولى). كتب بايت. رقم ISBN 978-0070109629.
- فاجين ، فيديريكو بيتو ، برنارد ؛ شيما ، ماساتوشي ؛ أنجرمان ، رالف (27 أبريل 2007). "لوحة التاريخ الشفوي حول تطوير وتعزيز المعالج الدقيق Z8000 Zilog" (PDF) (مقابلة).
قراءات إضافية
- أوراق البيانات والكتيبات
- ورقة بيانات Z80 (NMOS) ؛ زيلوج. 10 صفحات 1978.
- كتاب بيانات Z80 (NMOS) ؛ زيلوج. 131 صفحة 1978.
- ورقة بيانات Z80 (NMOS و CMOS) ؛ زيلوج. 36 صفحة 2002. Errata
- دليل مستخدم Z80 (NMOS و CMOS) ؛ زيلوج. 332 صفحة 2016.
- دليل المستخدم للأجهزة الطرفية Z80 (NMOS و CMOS) ؛ زيلوج. 330 صفحة 2001.
- كتب الأجهزة
- قم ببناء جهاز الكمبيوتر الخاص بك Z80 - إرشادات التصميم وملاحظات التطبيق ؛ الطبعة الأولى ؛ ستيف سيارسيا كتب بايت 332 صفحة 1981 ؛ ردمك 978-0070109629 . (أرشيف)
- المعالج الدقيق Z80 - الهندسة المعمارية والتواصل والبرمجة والتصميم ؛ الطبعة الأولى ؛ راميش جاونكار ماكميلان. 674 صفحة 1988 ؛ ردمك 978-0675205405 . (أرشيف)
- دليل مستخدمي Z80 - تعريفات الدبوس وإشارات التحكم والأجهزة الطرفية والمزيد ؛ الطبعة الأولى ؛ جوزيف كار راحة على؛ 338 صفحة 1980 ؛ ردمك 978-0835995177 . (أرشيف)
- تقنيات ربط المعالجات الدقيقة ؛ 3rd إد ؛ رودني زاكس وأوستن ليسيا ؛ سايبكس. 466 صفحة 1979 ؛ ردمك 978-0-89588-029-1 . (أرشيف)
- كتب البرمجيات
- برمجة Z80 ؛ 3rd إد ؛ رودني زاكس سايبكس. 630 صفحة 1980 ؛ ردمك 978-0895880949 . (أرشيف)
- برمجة لغة التجميع Z80 ؛ الطبعة الأولى ؛ لانس ليفينثال أوزبورن / ماكجرو هيل ؛ 642 صفحة 1979 ؛ ردمك 978-0931988219 . (أرشيف)
- 8080 / Z80 لغة التجميع - تقنيات البرمجة المحسنة ؛ الطبعة الأولى ؛ آلان ميلر جون وايلي وأولاده ؛ 332 صفحة 1981 ؛ ردمك 978-0471081241 . (أرشيف)
- Z80 و 8080 برمجة لغة التجميع ؛ الطبعة الأولى ؛ كاتي سبراكلين هايدن. 180 صفحة 1979 ؛ ردمك 978-0810451674 . (أرشيف)
- برمجة الكمبيوتر المصغرة العملية - Z80 - بما في ذلك المصدر للمجمع المقيم ومراقب التصحيح ؛ الطبعة الأولى ؛ والتر ويلر التقنية الشمالية؛ 501 صفحة 1978 ؛ ردمك 978-0930594053 . (أرشيف)
- Z80 إجراءات فرعية للغة التجميع ؛ الطبعة الأولى ؛ لانس ليفينثال ووينثروب سافيل ؛ أوزبورن / ماكجرو هيل ؛ 512 صفحة 1983 ؛ ردمك 978-0931988912 . (أرشيف)
- Z80 موثقة ؛ شون يونغ الإصدار 0.91 ؛ 52 صفحة 2005. (الأرشيف)
- بطاقات مرجعية
- بطاقة مرجعية للمعالج الدقيق Z80 ؛ شيرلي ونانو ؛ أنظمة النانو 16 صفحة 1981. (أرشيف)
- بطاقة مرجعية فورية للمعالج الدقيق Z80 ؛ جيمس لويس مايكرو لوجيك 2 صفحات 1981. (أرشيف)