زيلوج زد 80

معالج Zilog Z80 هو معالج دقيق ثماني البتات من تصميم شركة Zilog ، صدر لأول مرة عام 1976؛ وقد لعب دورًا هامًا في تطور الحوسبة الشخصية المبكرة . صُمم ليكون متوافقًا برمجيًا مع معالج Intel 8080 ، مما وفر بديلاً جذابًا بفضل تكامله الأفضل وأدائه المُحسّن. إلى جانب سجلات معالج 8080 السبعة وسجل العلامات، قدم معالج Z80 مجموعة سجلات بديلة، وسجلين للفهرسة سعة 16 بت، وتعليمات إضافية، بما في ذلك معالجة البتات ونسخ/بحث الكتل.

صُمم معالج Z80 في الأصل للاستخدام في الأنظمة المدمجة، كما هو الحال مع معالج 8080، إلا أن مزيج التوافق والسعر المعقول والأداء المتميز لمعالج Z80 أدى إلى انتشاره الواسع في أنظمة ألعاب الفيديو وأجهزة الكمبيوتر المنزلية خلال أواخر السبعينيات وأوائل الثمانينيات، مما ساهم في إشعال ثورة الحوسبة الشخصية . استُخدم معالج Z80 في منتجات شهيرة مثل Osborne 1 و Radio Shack TRS-80 و ColecoVision و ZX Spectrum وSega Master System وجهاز ألعاب Pac-Man . في أوائل التسعينيات، استُخدم في الأجهزة المحمولة، بما في ذلك Game Gear و TI-81 والآلات الحاسبة البيانية اللاحقة. [ 2 ] [ 3 ]

كان معالج Z80 من بنات أفكار فيديريكو فاجين ، الشخصية المحورية وراء ابتكار معالج إنتل 8080. بعد مغادرته شركة إنتل عام 1974، شارك في تأسيس شركة زيلوج مع رالف أونجرمان . ظهر معالج Z80 لأول مرة في يوليو 1976، وسمح نجاحه لشركة زيلوج بإنشاء مصانعها الخاصة لإنتاج الرقائق . [ 4 ] في مرحلة الإنتاج الأولية، منحت زيلوج ترخيصًا لمعالج Z80 لشركتي سينيرتك وموستك الأمريكيتين ، بالإضافة إلى شركة إس جي إس الأوروبية كمُصنِّع ثانوي . كما تم نسخ التصميم من قبل العديد من الشركات المصنعة اليابانية وشرق الأوروبية والسوفيتية، وحظي بقبول واسع في السوق العالمية ، حيث أنتجت شركات كبرى مثل إن إي سي وتوشيبا وشارب وهيتاشي نسخها الخاصة أو نسخًا متوافقة.

استمر استخدام معالج Z80 في الأنظمة المدمجة لسنوات عديدة رغم ظهور معالجات أكثر قوة، وظلّ قيد الإنتاج حتى عام 2024، أي بعد 48 عامًا من إصداره الأصلي. [ 5 ] كما واصلت شركة زيلوج تطوير التصميم الأساسي لمعالج Z80 من خلال عدة إصدارات لاحقة، بما في ذلك Z180 و Z280 و Z380 و eZ80 .

تاريخ

يُبين إعلان صدر في مايو 1976 عن جهاز Z80 مزاياه الرئيسية مقارنة بجهاز 8080.
صورة لتصميم المعالج الدقيق Zilog Z80 الأصلي بتقنية nMOS ذات التحميل الاستنزافي . يبلغ حجم الشريحة الإجمالي 3545 × 3350  ميكرومتر. المربعات الزرقاء المحيطة بالشريحة هي نقاط التوصيل بالأطراف الخارجية. صُنعت هذه الشريحة عام 1990.
معالج Z80 بتقنية CMOS في حزمة رباعية مسطحة ذات 44 طرفًا

التاريخ المبكر

في شركة فيرتشايلد لأشباه الموصلات ، ولاحقًا في شركة إنتل ، عمل الفيزيائي والمهندس فيديريكو فاجين على تقنيات تصنيع الترانزستورات وأشباه الموصلات الأساسية . كما طور منهجية التصميم الأساسية المستخدمة في تصميم الذاكرة والمعالجات الدقيقة في إنتل، وقاد العمل على معالج إنتل 4004 ، ومعالج إنتل 8080، والعديد من الدوائر المتكاملة الأخرى. وكان ماساتوشي شيما المصمم الرئيسي للمنطق والترانزستورات في معالجي 4004 و8080 تحت إشراف فاجين، بينما تولى رالف أونجرمان مسؤولية تصميم الدوائر المتكاملة المخصصة . [ 6 ]

في أوائل عام 1974، لم تنظر شركة إنتل إلى المعالجات الدقيقة كمنتجات تُباع بشكل مستقل، بل كوسيلة لزيادة مبيعات منتجاتها الرئيسية، ذاكرة الوصول العشوائي الثابتة (SRAM ) وذاكرة القراءة فقط (ROM) . أدى إعادة هيكلة الشركة إلى وضع بعض الأقسام المستقلة سابقًا تحت إدارة ليس فاداس، مما قلل من أهمية المعالجات الدقيقة داخل الشركة. في ذلك العام، بلغت أزمة الركود الاقتصادي (1973-1975) ذروتها، وقامت إنتل بتسريح عدد من الموظفين. [ 6 ] أدى كل هذا إلى شعور فاجين بالضيق، فدعا أونجرمان لتناول مشروب وسأله إن كان مهتمًا بتأسيس شركتهما الخاصة. وافق أونجرمان على الفور، ولأنه لم يعد لديه الكثير من العمل في إنتل، غادر في أغسطس أو سبتمبر، وتبعه فاجين، الذي كان آخر يوم عمل له في إنتل هو عيد الهالوين عام 1974. [ 7 ] عندما سمع شيما بالأمر، طلب الانضمام إلى الشركة الجديدة أيضًا، ولكن لعدم امتلاكهم تصميمًا فعليًا للمنتج أو رأس مال، طلبوا منه الانتظار. [ 8 ]

بدأت الشركة حديثة التأسيس، والتي لم يُكشف عن اسمها بعد، بتصميم متحكم دقيق أحادي الشريحة يُسمى 2001. اجتمعت الشركة مع شركة Synertek لمناقشة إمكانية تصنيعه على خطوط إنتاجها، وعندما بدأ فاجين بفهم التكاليف المترتبة، اتضح أن منتجًا منخفض التكلفة كهذا لن يكون قادرًا على منافسة تصميم شركة تمتلك خطوط إنتاج خاصة بها، مثل إنتل. عندها بدأت الشركة بالتفكير في معالج دقيق أكثر تعقيدًا، عُرف في البداية باسم Super 80، وكانت ميزته الرئيسية هي استخدامه  ناقل +5 فولت [ 8 ] بدلًا من ناقلات -5 و+5 و12 فولت الأكثر شيوعًا  المستخدمة في تصميمات مثل 8080. كان التصميم الجديد مُصممًا ليكون متوافقًا مع 8080، مع إضافة عدد من ميزات Motorola 6800 ، بما في ذلك سجلات الفهرسة والمقاطعات المُحسّنة . [ 9 ]

بدء الاستثمار والتطوير التفصيلي لشركة إكسون.

أثناء تأسيسها، علمت النشرة الإخبارية المتخصصة في الصناعة "إلكترونيك نيوز" بالأمر ونشرت تقريرًا عن الشركة الناشئة. لفت هذا انتباه "إكسون إنتربرايزز"، ذراع الاستثمار في التكنولوجيا المتقدمة التابعة لشركة إكسون . في ذلك الوقت، وفي خضمّ الركود الاقتصادي، كان رأس المال الاستثماري المتاح شحيحًا، إذ لم يتجاوز إجمالي الإنفاق على هذا القطاع 10 ملايين دولار أمريكي في عام 1975 (ما يعادل 60  مليون دولار أمريكي في عام 2025 ). تواصل أحد ممثلي إكسون مع الشركة التي لم يُكشف عن اسمها بعد، [ 8 ] ورتب اجتماعًا أسفر في النهاية عن تقديم تمويل أولي بقيمة 500 ألف دولار أمريكي في يونيو 1975 (ما يعادل 3  ملايين دولار أمريكي في عام 2025 ). [ 10 ]

مع مناقشة التمويل ووضع التصميم المطلوب، انضم ماساتوشي شيما في فبراير 1975. [ 9 ] شرع شيما فورًا في إنتاج تصميم عالي المستوى، مضيفًا إليه العديد من المفاهيم الخاصة به. وعلى وجه الخصوص، استخدم خبرته في الحواسيب الصغيرة من شركة NEC لإضافة مفهوم مجموعتين من سجلات المعالج لتمكينها من الاستجابة السريعة للمقاطعات . [ 7 ] [ د ] بدأ أونجرمان بتطوير سلسلة من وحدات التحكم والرقائق الطرفية ذات الصلة التي من شأنها أن تُكمّل التصميم. [ 11 ]

خلال هذه الفترة، اكتسب شيما سمعةً أسطوريةً لقدرته على تحويل المفاهيم المنطقية إلى تصميم مادي فوري؛ فبينما كان يناقش ميزةً مقترحةً، كان غالبًا ما يقاطع ويحدد المساحة التي ستشغلها على الشريحة، ويرفض إضافتها إذا كانت كبيرةً جدًا. [ 12 ] اكتملت المرحلة الأولى من التصميم بحلول أبريل 1975. وكان شيما قد أنجز تخطيطًا منطقيًا بحلول بداية مايو. وصدرت نسخة ثانية من التصميم المنطقي في 7 أغسطس، وتفاصيل ناقل البيانات بحلول 16 سبتمبر. واكتملت عملية تصنيع الشريط في نوفمبر، واستغرق تحويل الشريط إلى قناع إنتاج شهرين إضافيين. [ 13 ]

كان فاجين قد بدأ بالفعل البحث عن شريك إنتاج. في ذلك الوقت، كانت كل من شركتي سينيرتك وموستك قد أنشأتا خطوط إنتاج تعمل بنظام الاستنزاف، والتي يمكن استخدامها لإنتاج التصميم. بعد أن تحدث فاجين مع سينيرتك سابقًا، تواصل معهم أولًا. ومع ذلك، طالب رئيس سينيرتك بمنح الشركة ترخيصًا ثانيًا يسمح لهم ببيع التصميم مباشرةً. اعتقد فاجين أن هذا يعني أنهم لن يتمكنوا من المنافسة أبدًا حتى لو أنشأوا خطوط إنتاج خاصة بهم، وبالتالي لم يتم إبرام الاتفاقية. ثم توجه إلى موستيك، التي وافقت على فترة حصرية ريثما تُجهز زيلوغ خطوط إنتاجها، وحصلت في النهاية على اتفاقية المصدر الثاني. [ 14 ]

بعد التفكير في عدة أسماء للشركة الجديدة، وعجزهما عن تذكرها حتى بعد يوم واحد، كان فاجين وأونجرمان يتبادلان الأفكار حول "المنطق المتكامل" عندما قال أونجرمان: "ما رأيك في زيلوغ؟" وافق فاجين على الفور، قائلاً إنه "الكلمة الفصل في المنطق المتكامل". وعندما التقيا في اليوم التالي، تذكرا الاسم فوراً، وهكذا استقرت الشركة على اسمها. [ 15 ]

في مرحلة الإنتاج

أُعيدت العينات الأولى من شركة موستيك في 9 مارس 1976. [ 11 ] وبحلول نهاية الشهر، كانوا قد أنجزوا أيضًا نظام تطوير قائم على لغة التجميع . في ذلك الوقت، كانت بعض الدوائر المتكاملة الداعمة للمعالج Z80 والدوائر الطرفية قيد التطوير، وتم إطلاق بعضها خلال العام التالي. من بينها: Z80 CTC (العداد/المؤقت)، وZ80 DMA [ 16 ] (الوصول المباشر إلى الذاكرة)، وZ80 DART (جهاز إرسال/استقبال مزدوج غير متزامن)، وZ80 SIO (وحدة تحكم الاتصالات المتزامنة)، وZ80 PIO (وحدة الإدخال/الإخراج المتوازية).

أُطلق معالج Z80 رسميًا في يوليو 1976. [ 17 ] في ذلك الوقت، سادت مخاوف في صناعة أشباه الموصلات بشأن إعادة إنتاج تصاميم الرقائق دون ترخيص من قِبل الشركات المصنعة الأجنبية. ولمنع الهندسة العكسية، أضاف فريق زيلوغ ستة "مصائد"، وهي ترانزستورات عُدّلت بدقة لتتصرف بشكل مختلف عما يوحي به مظهرها. ووفقًا لشيما، أخبره مهندس في شركة NEC لاحقًا أن هذه المصائد أخرت جهودهم في الهندسة العكسية لمدة ستة أشهر. [ 18 ] وفي وقت لاحق، سوّت شركة NEC نزاعًا حول انتهاك براءات الاختراع مع زيلوغ، وحصلت على ترخيص لإنتاج نسخ معتمدة من معالج Z80 ورقائق أخرى. [ 19 ]

بعد الإطلاق الناجح لمعالج Z80، تواصل فاجين وأونجرمان مع شركة إكسون للحصول على تمويل لإنشاء مصنع لتصنيع أشباه الموصلات . وافقت إكسون، وقامت شركة زيلوغ ببناء خط إنتاجها الخاص، مما مكّنها من الاستحواذ على ما يُقدّر بنحو 60 إلى 70 بالمئة من إجمالي سوق مبيعات Z80. [ 20 ] في الوقت نفسه، حصلت شركة موستيك على ترخيص لإنتاج نسخة مرخصة من الشريحة، وهي MK3880، مما وفّر مصدرًا ثانيًا للعملاء، وهو ضمان افتقرت إليه شركة إنتل. في ذلك الوقت، كانت اتفاقيات المصدر الثاني تُعتبر ضرورية، لا سيما للشركات الناشئة مثل زيلوغ، التي كانت تواجه مخاطر أعلى للفشل التجاري وانقطاع الإمداد. [ e ] [ 9 ]

مقارنة مع 8080

صمّم فاجين مجموعة التعليمات لتكون متوافقة ثنائيًا مع معالج 8080 [ 21 ] [ 22 ] ، بحيث تعمل معظم أكواد 8080، ولا سيما نظام التشغيل CP/M ومترجم PL/M من إنتل لمعالج 8080 (بالإضافة إلى الكود المُولّد منه)، دون تعديل على وحدة المعالجة المركزية Z80 الجديدة. صمّم ماساتوشي شيما معظم البنية الدقيقة ، بالإضافة إلى مستويات البوابات والترانزستورات لوحدة المعالجة المركزية Z80، بمساعدة عدد قليل من المهندسين ومصممي التخطيط . [ 23 ] [ 24 ] شارك الرئيس التنفيذي، فيديريكو فاجين، بشكل كبير في أعمال تخطيط الشريحة، إلى جانب اثنين من مصممي التخطيط المتخصصين. ووفقًا لفاجين، فقد كان يعمل 80 ساعة أسبوعيًا للوفاء بالجدول الزمني الضيق الذي حدده المستثمرون الماليون. [ 4 ] 

قدم المعالج Z80 تحسينات متعددة مقارنة بالمعالج 8080: [ 22 ]

  • مجموعة تعليمات محسّنة تتضمن ما يلي:
    • نظام أكثر منطقية وفهمًا وسهولة في القراءة لرموز تعليمات التجميع
    • تعليمات نقل البيانات (التحميل، أو LD) الأكثر مرونة ذات 16 بت، والتي تتضمن بشكل أساسي مؤشر المكدس SP
    • أنماط عنونة أكثر مرونة للإدخال/الإخراج إلى منافذ الأجهزة الطرفية الخارجية
    • معالجة جميع السجلات والذاكرة باستخدام بت واحد، بما في ذلك اختبار البتات.
    • عمليات الإزاحة/التدوير على الذاكرة والسجلات الأخرى غير المُراكم
    • يدعم الطرح في العمليات الحسابية بنظام BCD
    • تعليمات التدوير لسلاسل أرقام BCD المعبأة في الذاكرة
    • الطرح ذو 16 بت والنفي ذو 8 بت
    • تكرار البرنامج
    • قفزات نسبية لعداد البرنامج (PC)
    • نسخ الكتلة ، وإدخال/إخراج الكتلة (I/O)، وتعليمات البحث عن البايت. [ 25 ]
  • علامة تجاوز السعة مع دعم أفضل للحسابات ذات 8 و 16 بت الموقعة. [ f ]
  • سجلات فهرسة IX و IY جديدة مع نمط عنونة أساسي + إزاحة
  • نظام مقاطعة أفضل :
    • نظام مقاطعة متجهي أكثر تلقائية وعمومية ، الوضع  2 ، مخصص بشكل أساسي لخط عدادات/مؤقتات ووحدات تحكم DMA والاتصالات من شركة زيلوج، بالإضافة إلى نظام مقاطعة متجهي ثابت، الوضع  1 ، للأنظمة البسيطة ذات الحد الأدنى من الأجهزة (مع كون الوضع  0 هو الوضع المتوافق مع 8080). [ 26 ]
    • مقاطعة غير قابلة للإخفاء (NMI)، والتي يمكن استخدامها للاستجابة لحالات انقطاع الطاقة أو الأحداث الأخرى ذات الأولوية العالية (والتي تسمح لنظام Z80 بسيط بتنفيذ مخطط مقاطعة ثنائي المستوى بسهولة في الوضع  1 ).
  • ملف سجلات مكرر بالكامل ، [ 27 ] يمكن تبديله بسرعة، لتسريع الاستجابة للمقاطعات مثل معالجات الأحداث غير المتزامنة السريعة أو موزع المهام المتعددة . على الرغم من أنها لم تكن مصممة كسجلات إضافية للتعليمات البرمجية العامة، إلا أنها استُخدمت بهذه الطريقة في بعض التطبيقات. [ g ]
  • متطلبات أقل من الأجهزة لتوفير الطاقة وتوليد الساعة والربط بالذاكرة ووحدات الإدخال/الإخراج
  • مصدر طاقة واحد بجهد 5 فولت (كان جهاز 8080 يحتاج إلى -5  فولت، +5  فولت، و+12  فولت).
  • ساعة أحادية الطور 5 فولت (كان جهاز 8080 يحتاج إلى ساعة ثنائية الطور عالية السعة (من 9 إلى 12  فولت) غير متداخلة ).
  • تحديث ذاكرة الوصول العشوائي الديناميكية (DRAM) المدمج ، والذي كان سيتطلب دوائر خارجية لولا ذلك. صُمم معالج 8080 قبل أن يصبح استخدام ذاكرة الوصول العشوائي الديناميكية شائعًا، ولم تكن ذاكرة الوصول العشوائي الثابتة (SRAM) الشائعة بحاجة إلى تحديث. بحلول منتصف سبعينيات القرن الماضي ، حلت ذاكرة الوصول العشوائي الديناميكية محل ذاكرة الوصول العشوائي الثابتة إلى حد كبير في معظم الوظائف، ولكن استخدام ذاكرة الوصول العشوائي الديناميكية مع معالج 8080 كان يتطلب دوائر خارجية إضافية. أدى تنفيذ ذلك داخليًا في معالج Z80 إلى تقليل تعقيد وتكلفة النظام الكامل.
  • الحافلات غير المتعددة الإرسال (كانت إشارات الحالة في جهاز 8080 يتم إرسالها بشكل متعدد الإرسال على ناقل البيانات).
  • إعادة ضبط خاصة تقوم بتصفير عداد البرنامج فقط، بحيث يمكن استخدام وحدة معالجة مركزية Z80 واحدة في نظام تطوير مثل محاكي الدائرة . [ 28 ]

النجاح في السوق

حلّ معالج Z80 محلّ معالج 8080 ونسله، 8085 ، في سوق المعالجات [ 29 ] ، وأصبح أحد أكثر وحدات المعالجة المركزية 8 بت شيوعًا واستخدامًا. [ 30 ] [ 31 ] وظلت بعض المؤسسات، مثل شركة بريتيش تيليكوم، مخلصة لمعالج 8085 في التطبيقات المدمجة، نظرًا لمعرفتها به وبواجهة الاتصال التسلسلي المدمجة فيه وبنية المقاطعات. وبالمثل، قامت شركة زينيث داتا سيستمز بدمج معالج 8085 مع معالج إنتل 8088 ذي 16 بت في أول حاسوب لها يعمل بنظام MS-DOS، وهو زينيث Z-100 ، على الرغم من خبرتها السابقة مع منتجاتها الرائدة القائمة على معالج Z80، مثل هيثكيت  H89 وزينيث  Z-89 . ومع ذلك، تم صنع أجهزة كمبيوتر أخرى تدمج معالج Z80 مع وحدات معالجة مركزية أخرى: جهاز Radio Shack TRS-80 Model  16 مع معالج Motorola 68000 ، وجهاز DEC Rainbow مع معالج 8088، وجهاز Commodore 128 مع معالج MOS Technology 8502 .

لاحقًا، أنتجت شركة زيلوج معالج Z80 منخفض الطاقة، مناسبًا لسوق أجهزة الكمبيوتر المحمولة المتنامي في أوائل ثمانينيات القرن العشرين. أنتجت إنتل معالج CMOS 8085 (80C85) المستخدم في أجهزة الكمبيوتر المحمولة التي تعمل بالبطاريات، مثل جهاز الكمبيوتر المحمول الذي صممته شركة كيوسيرا في أبريل 1983، والذي باعته أيضًا شركات تاندي (تحت اسم TRS-80 موديل 100 )، وأوليفيتي، وني إي سي. مع ذلك، في السنوات اللاحقة، هيمنت إصدارات CMOS من معالج Z80 (من زيلوج والشركات المصنعة اليابانية) على هذا السوق أيضًا، في منتجات مثل أمستراد NC100 ، وكامبريدج Z88، وجهاز تاندي WP-2.

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

مع ذلك، يزعم آخرون أن شعبيته تعود إلى السجلات المكررة التي سمحت بتبديل السياق بسرعة أو معالجة أكثر كفاءة لأمور مثل العمليات الحسابية ذات الفاصلة العائمة مقارنةً بوحدات المعالجة المركزية ذات 8 بت التي تحتوي على عدد أقل من السجلات. (يستطيع معالج Z80 الاحتفاظ بالعديد من هذه الأرقام داخليًا، باستخدام HL'HL وDE'DE وBC'BC كسجلات 32 بت، مما يجنب الحاجة إلى الوصول إليها من ذاكرة الوصول العشوائي الأبطأ أثناء الحساب.) [ 32 ]

في تصميم NMOS الأصلي ، ازداد الحد الأقصى لتردد الساعة تدريجيًا من 2.5 ميجاهرتز في البداية، مرورًا بـ 4 ميجاهرتز (Z80A) المعروفة ، وصولًا إلى 6 ميجاهرتز (Z80B) و8 ميجاهرتز (Z80H). [ 33 ] [ 34 ] أُنتج إصدار NMOS بتردد 10 ميجاهرتز بدءًا من أواخر ثمانينيات القرن الماضي. طُوّرت إصدارات CMOS بحدود قصوى للتردد تتراوح من 4 ميجاهرتز إلى 20 ميجاهرتز للإصدار المُباع حاليًا. سمحت إصدارات CMOS بوضع الاستعداد منخفض الطاقة مع الاحتفاظ بالحالة الداخلية، دون حد أدنى للتردد. [ i ] تُحدد حاليًا مشتقات HD64180 / Z180 [ 35 ] [ 36 ] و eZ80 المتوافقة تمامًا بتردد يصل إلى 33 ميجاهرتز و50 ميجاهرتز على التوالي.         

تصميم

نموذج البرمجة ومجموعة السجلات

مخطط كتلي تقريبي لمعالج Z80: لا يوجد جامع مخصص للإزاحات أو مُزيد منفصل للسجل R، ولا حاجة لأكثر من سجل مؤقت واحد WZ ذي 16 بت (مع أن مُثبِّتات الزيادة تُستخدم أيضًا كسجل مؤقت ذي 16 بت في سياقات أخرى). يتم وضع سجلي PC وIR في مجموعة منفصلة، ​​مع جزء ناقل قابل للفصل، للسماح بتحديث هذين السجلين بالتوازي مع بنك السجلات الرئيسي. [ 37 ]

يُعدّ نموذج البرمجة ومجموعة المسجلات في معالج Z80 تقليديين إلى حد كبير، ويستندان في الأساس إلى بنية مسجلات معالج Datapoint 2200. صُمم معالج Z80 كامتداد لمعالج Intel 8080، الذي ابتكره نفس المهندسين، والذي كان بدوره امتدادًا لمعالج 8008. كان معالج 8008 في الأساس تطبيقًا لتقنية PMOS لوحدة المعالجة المركزية (CPU ) القائمة على تقنية TTL في معالج Datapoint 2200 .

سمح تصميم 2200 بدمج مسجلي H وL (عالي ومنخفض) ذوي 8 بتات في مسجل عنوان HL ذي 16 بتًا. [ k ] في معالج 8080، أُضيف هذا الدمج إلى زوجي BC وDE أيضًا، بينما عُمِّم استخدام HL ليُصبح مُجمِّعًا ذا 16 بتًا، وليس مجرد مسجل عنوان. كما قدّم معالج 8080 بيانات فورية ذات 16 بتًا لعمليات تحميل BC وDE وHL وSP. علاوة على ذلك، أصبح من الممكن الآن نسخ البيانات مباشرةً بين HL والذاكرة باستخدام عنوان مباشر.

عزز معالج Z80 هذا المفهوم بجعل جميع أزواج المسجلات ذات 16 بت، بما في ذلك IX وIY، ذات أغراض عامة، بالإضافة إلى السماح بنسخ البيانات من وإلى الذاكرة مباشرةً لجميع هذه الأزواج. تُستخدم مسجلات IX وIY ذات 16 بت في معالج Z80 بشكل أساسي كمسجلات عناوين أساسية، حيث تُضيف تعليمة معينة إزاحة ثابتة إلى القيم السابقة، ولكنها قابلة للاستخدام أيضًا كمراكمات ذات 16 بت، من بين استخدامات أخرى. من القيود أن جميع عمليات الرجوع إلى المعاملات التي تتضمن IX أو IY تتطلب بايت بادئة إضافي للتعليمات، مما يُضيف أربع دورات ساعة على الأقل مقارنةً بتوقيت تعليمة تستخدم HL بدلاً من ذلك؛ وهذا يجعل استخدام IX أو IY أحيانًا أقل كفاءة من طريقة تستخدم مسجلات طراز 8080 فقط. كما قدم معالج Z80 علامة جديدة لتجاوز السعة المُوقّعة ، واستكمل العمليات الحسابية البسيطة نسبيًا ذات 16 بت في معالج 8080 بتعليمات مُخصصة للعمليات الحسابية المُوقّعة ذات 16 بت.

مخطط توصيل دبابيس حزمة رقاقة Z80 الأصلية DIP40

تُكرر سجلات AF وBC وDE وHL المتوافقة مع معالج 8080 كملف سجلات منفصل في معالج Z80، [ 38 ] حيث يمكن للمعالج التبديل بسرعة (في أربع حالات زمنية، وهو أقل وقت تنفيذ ممكن لأي تعليمة Z80) من بنك سجلات إلى آخر؛ [ 39 ] وهي ميزة مفيدة لتسريع الاستجابة للمقاطعات أحادية المستوى ذات الأولوية العالية. تُعد مجموعة السجلات المزدوجة مفيدة في الأنظمة المدمجة، حيث تُحسّن أداء معالجة المقاطعات، ولكنها وجدت استخدامًا واسع النطاق في الحواسيب الشخصية كمجموعة إضافية من السجلات العامة للبرامج المعقدة مثل العمليات الحسابية ذات الفاصلة العائمة أو ألعاب الكمبيوتر المنزلي.

يُشار غالبًا إلى ملف السجلات المكرر باسم "مجموعة السجلات البديلة" (ويُطلق عليه البعض اسم "ملف السجلات المُعَلَّم" نظرًا لاستخدام علامة الفاصلة العليا للدلالة عليه في شفرة المصدر الخاصة بلغة التجميع ووثائق Zilog). يُؤكد هذا على إمكانية الوصول إلى مجموعة واحدة فقط في أي وقت. مع ذلك، يتم فصل المُراكم A ذي 8 بتات، مع سجل العلم F الخاص به، عن أزواج السجلات "العامة" HL وDE وBC. يتم ذلك باستخدام تعليمتين منفصلتين لتبديل إمكانية الوصول إليها: EX AF,AF'تُبدِّل التعليمة الأولى زوج السجلات AF فقط مع AF'، بينما EXXتُبدِّل التعليمة الثانية أزواج السجلات العامة الثلاثة HL وDE وBC مع بدائلها HL' وDE' وBC'. بالتالي، يُمكن للمُراكم A التفاعل بشكل مستقل مع أي من سجلات 8 بتات العامة في ملف السجلات البديل (أو المُعَلَّم)، أو، إذا كان HL' يحتوي على مؤشر إلى الذاكرة، مع بايت مُعين هناك (يُمكن لـ DE' وBC' أيضًا نقل بيانات 8 بتات بين الذاكرة والمُراكم A).

قد يُسبب هذا الأمر ارتباكًا للمبرمجين، لأنه بعد تنفيذ EX AF,AF'تعليمات التبديل EXX، تنتقل محتويات السجلات البديلة (المُهيأة) إلى السجلات الرئيسية، والعكس صحيح. الطريقة الوحيدة لفهم هذه الحالة المُتبادلة وتتبعها هي تتبع مسار البرنامج، مع ملاحظة كل استخدام لتعليمات تبديل السجلات. من الواضح أنه إذا تم استخدام تعليمات القفز والاستدعاء ضمن هذه المقاطع البرمجية، فقد يصعب تحديد ملف السجلات المُستخدم في السياق ما لم يتم شرح ذلك بوضوح. لذا، يُنصح باستخدام تعليمات التبديل مباشرةً وفي مقاطع برمجية قصيرة ومنفصلة. تتضمن مجموعة تعليمات Zilog Z280 JAFتعليمات JARالقفز إلى عنوان الوجهة إذا كانت السجلات البديلة مُستخدمة في السياق (مما يُقر رسميًا بهذا التعقيد البرمجي).

السجلات

مسجلات زيلوج Z80
1 51 41 31 21 11 00 90 80 70 60 50 40 30 20 10 0(موضع البت  )
السجلات الرئيسية
المُراكم  (أ)الأعلام  (F)AF
بجقبل الميلاد
دهـدي
حلHL
سجلات بديلة (ظل)
المُراكم  (أ)الأعلام  (F)AF
بجقبل الميلاد
د'إيدي
ح'ل'HL
سجلات الفهرسة
فهرس X9
مؤشر YIY
مؤشر المكدسإس بي
سجلات أخرى
متجه المقاطعةعداد المرطباتالأشعة تحت الحمراء
عداد البرنامج
عداد البرنامججهاز كمبيوتر
حالة
 SZ-ح-P / Vشمالجأعلام F
 أناIFF1IFF2أنا أقاطع

كما هو الحال في معالج 8080، تُستخدم عادةً سجلات 8 بت في أزواج لتوفير إصدارات 16 بت. السجلات المتوافقة مع معالج 8080 [ 40 ] هي:

  • AF: مُجمِّع 8 بت (A) وبتات علامة (F) للحمل، والصفر، والسالب، والتكافؤ/الفيضان، ونصف الحمل (يُستخدم في BCD )، وعلامة الجمع/الطرح (تُسمى عادةً N) أيضًا لـ BCD
  • BCسجل بيانات/عنوان 16 بت أو سجلان 8 بت
  • DEسجل بيانات/عنوان 16 بت أو سجلان 8 بت
  • HLمسجل عنوان/مجمع 16 بت أو مسجلان 8 بت
  • SPمؤشر المكدس ، 16 بت
  • PCعداد البرنامج، 16 بت

السجلات الجديدة التي تم تقديمها مع Z80 هي:

  • IXمؤشر أو سجل أساسي ذو 16 بت لإزاحات فورية ذات 8 بت
  • IYمؤشر أو سجل أساسي ذو 16 بت لإزاحات فورية ذات 8 بت
  • I: سجل قاعدة متجه المقاطعة، 8 بتات
  • Rعداد تحديث ذاكرة الوصول العشوائي الديناميكية (DRAM)، 8 بتات ( لا يتم احتساب البت الأكثر أهمية ).
  • AF': مُجمِّع بديل (أو ظل) وعلامات ( يتم تبديلها باستخدام EX AF,AF' )
  • BC'و DE': HL'سجلات بديلة (أو ظل) ( يتم تبديلها باستخدام EXX )
  • أربع بتات لحالة المقاطعة: علامتان لتمكين المقاطعة، IFF1و IFF2، بالإضافة إلى وضع المقاطعة المكون من بتين IM.

يزيد سجل التحديثR في كل مرة يجلب فيها المعالج رمز عملية (أو بادئة رمز عملية، والتي تُنفذ داخليًا كتعليمة من بايت واحد)، ولا توجد علاقة مباشرة بينه وبين تنفيذ البرنامج. وقد استُخدم هذا السجل أحيانًا لتوليد أرقام شبه عشوائية في الألعاب، وكذلك في أنظمة حماية البرامج. [ 41 ] كما استُخدم أيضًا كعداد "مادي" في بعض التصاميم؛ ومن الأمثلة على ذلك جهاز ZX81 ، الذي يسمح له بتتبع مواقع الأحرف على شاشة التلفزيون عن طريق تشغيل مقاطعة عند الالتفاف (عن طريق توصيل INT بـ A6).

يُستخدم سجل متجه المقاطعة (interrupt vector register) لمقاطعات الوضع 2 الخاصة بمعالج Z80 (التي يتم تحديدها بواسطة التعليمة ) . يوفر هذا السجل البايت الأعلى من عنوان القاعدة لجدول عناوين روتينات الخدمة المكون من 128 مدخلاً ، والذي يتم اختياره عبر فهرس يُرسل إلى وحدة المعالجة المركزية أثناء دورة تأكيد المقاطعة . هذا الفهرس هو ببساطة جزء البايت الأدنى من مؤشر العنوان غير المباشر المُجدول الذي يشير إلى روتين الخدمة. [ 26 ] يُحدد المؤشر شريحة طرفية معينة أو وظيفة طرفية أو حدثًا معينًا، حيث يتم توصيل الشرائح عادةً في ما يُسمى بسلسلة ديزي لتحديد الأولويات. ومثل سجل التحديث (refresh register)، يُستخدم هذا السجل أحيانًا بطرق مبتكرة؛ ففي وضعي المقاطعة 0 و1 (أو في نظام لا يستخدم المقاطعات)، يمكن استخدامه ببساطة كسجل بيانات آخر بحجم 8 بت.IIM 2

LD A,Rتؤثر هذه التعليمات LD A,Iعلى سجل علامات Z80، على عكس جميع LDتعليمات التحميل الأخرى. يتم ضبط علامتي الإشارة (البت 7) والصفر (البت 6) وفقًا للبيانات المحملة من سجلات مصدر التحديث أو المقاطعة. بالنسبة لكلا التعليمات، يتم ضبط علامة التكافؤ/الفيضان (البت 2) وفقًا للحالة الحالية لقلاب IFF2. [ 42 ]

البنية الدقيقة

على الرغم من أن معالج Z80 يعتبر عمومًا معالجًا ثماني البتات، إلا أنه يحتوي على وحدة حساب ومنطق رباعية البتات ، لذا تتم العمليات الحسابية على مرحلتين. [ 43 ]

لغة التجميع Z80

Datapoint 2200 و Intel 8008

استندت لغة التجميع الأولى لمعالج إنتل 8008 إلى بنية بسيطة (لكنها منهجية) موروثة من تصميم داتابوينت 2200. ثم جرى تحويل هذه البنية الأصلية إلى شكل جديد، أكثر تقليدية إلى حد ما، للغة التجميع الخاصة بشريحة 8008 الأصلية نفسها. وفي الوقت نفسه تقريبًا، جرى توسيع لغة التجميع الجديدة لتشمل أنماط العنونة الإضافية في شريحة إنتل 8080 الأكثر تطورًا (كانت الشريحتان 8008 و8080 تشتركان في مجموعة فرعية من اللغة دون أن تكونا متوافقتين ثنائيًا ؛ ومع ذلك، كانت الشريحة 8008 متوافقة ثنائيًا مع داتابوينت 2200).

في هذه العملية، استُبدل الرمز المختصر Lلـ LOAD باختصارات مختلفة للكلمات LOAD و STORE و MOVE ، ممزوجة بأحرف رمزية أخرى. أُخرج الحرف المختصر للذاكرة (المشار إليه بـ HL) من داخل الرمز المختصر للتعليمات ليصبح مُعاملًا مستقلًا نحويًا M، بينما أصبحت السجلات ومجموعات السجلات تُشار إليها بشكل غير متسق؛ إما بمعاملات مختصرة (MVI D، LXI H ، وما إلى ذلك)، أو داخل الرمز المختصر للتعليمات نفسه (LDA، LHLD، وما إلى ذلك)، أو كليهما معًا (LDAX B، STAX D، وما إلى ذلك).

إنتل  8008 داتا بوينت  2200إنتل  8080 إنتل  8085زيلوج  زد 80إنتل  8086/ إنتل  8088
قبل عام 1973 تقريباًحوالي عام 197419761978
LBCMOVB,CLDB,CMOVCH,CL
--LDAXBLDA,(BC)--
LAMMOVA,MLDA,(HL)MOVAL,[BX]
LBMMOVB,MLDB,(HL)MOVCH,[BX]
--STAXDLD(DE),A--
LMAMOVM,ALD(HL),AMOV[BX],AL
LMCMOVM,CLD(HL),CMOV[BX],CL
LDI56MVID,56LDD,56MOVDL,56
LMI56[ ل ]MVIM,56LD(HL),56MOVbyteptr[BX],56
--LDA1234LDA,(1234)MOVAL,[1234]
--STA1234LD(1234),AMOV[1234],AL
----LDB,(IX+56)MOVCH,[SI+56]
----LD(IX+56),CMOV[SI+56],CL
----LD(IY+56),78MOVbyteptr[DI+56],78
--LXIB,1234LDBC,1234MOVCX,1234
--LXIH,1234LDHL,1234MOVBX,1234
--SHLD1234LD(1234),HLMOV[1234],BX
--LHLD1234LDHL,(1234)MOVBX,[1234]
----LDBC,(1234)MOVCX,[1234]
----LDIX,(1234)MOVSI,[1234]

توضيح لأربعة صيغ، باستخدام أمثلة لتعليمات تحميل وتخزين مكافئة، أو (بالنسبة لـ 8086) متشابهة جدًا. [ 44 ] تستخدم صيغة Z80 أقواسًا حول التعبير للإشارة إلى أنه يجب استخدام القيمة كعنوان ذاكرة (كما هو مذكور أدناه)، بينما تستخدم صيغة 8086 أقواسًا معقوفة بدلًا من الأقواس العادية لهذا الغرض. يستخدم كل من Z80 و8086 علامة الجمع (+) للإشارة إلى إضافة ثابت إلى سجل أساسي لتكوين عنوان. تجدر الإشارة إلى أن 8086 ليس مجموعة شاملة كاملة لـ Z80. يُعد BX زوج السجلات الوحيد في 8086 الذي يمكن استخدامه كمؤشر.

بناء جملة جديد

بسبب ادعاء شركة إنتل بحقوق الطبع والنشر على رموز التجميع الخاصة بها، [ 45 ] كان لا بد من تطوير صيغة تجميع جديدة لمعالج Z80. هذه المرة تم استخدام نهج أكثر منهجية:

  • يتم الإشارة صراحةً إلى جميع السجلات وأزواج السجلات بأسمائها الكاملة
  • تُستخدم الأقواس باستمرار للإشارة إلى "محتويات الذاكرة عند" (عنوان ثابت أو فك مرجعية مؤشر متغير) ، باستثناء تعليمات القفز JP (HL)التي تُشير إلى عنوان فعلي. تقوم هذه التعليمات بتحميل عنوان عداد البرنامج الجديد من السجل المعني مباشرةً، دون المرور عبر الذاكرة.JP (IX)JP (IY)
  • تستخدم جميع تعليمات التحميل والتخزين نفس الاسم المختصر، LD، لعملية التحميل (عودة إلى مفردات Datapoint 2200 المبسطة)؛ وتستخدم التعليمات الشائعة الأخرى، مثل الجمع والزيادة، نفس الاسم المختصر بغض النظر عن نمط العنونة أو حجم المعامل. وهذا ممكن لأن المعاملات نفسها تحمل معلومات كافية لتحديد رمز العملية المحدد.

هذه المبادئ جعلت من السهل العثور على أسماء وأشكال لجميع تعليمات Z80 الجديدة، بالإضافة إلى عمليات التعامد للتعليمات القديمة، مثل LD BC,1234.

تم إدخال تناقض واحد على الأقل. فعلى الرغم من أن عملية الطرح مع الحمل يتم ترميزها على أنها SBC A,r، فإن عملية الطرح بدون حمل يتم ترميزها على أنها SUB rبدلاً من SUB A,r. [ 46 ]

بغض النظر عن اختلافات التسمية، وعلى الرغم من وجود تباين طفيف في بنية السجلات الأساسية، فإنّ بناء جملة Z80 و 8086 متطابق تقريبًا في جزء كبير من التعليمات. ولا توجد سوى أوجه تشابه سطحية (مثل كلمة MOV، أو الحرف X للدلالة على السجل الموسّع) بين لغتي التجميع 8080 و8086، مع العلم أنه يمكن ترجمة برامج 8080 إلى لغة التجميع 8086 بواسطة برامج الترجمة . [ 47 ] [ 48 ]

مجموعة التعليمات والترميز

يستخدم معالج Z80 ما مجموعه 252 رمزًا من أصل 256 رمزًا متاحًا كرموز عمليات أحادية البايت ("تعليمات أساسية"، معظمها موروث من معالج 8080)؛ أما الرموز الأربعة المتبقية فتُستخدم على نطاق واسع كبادئات لرموز العمليات : [ 49 ] يُمكّن الرمزان CB وED تعليمات إضافية، بينما يختار الرمزان DD وFD على التوالي IX+d أو IY+d (في بعض الحالات بدون إزاحة d) بدلًا من HL. يمنح هذا النظام معالج Z80 عددًا كبيرًا من تباديل التعليمات والسجلات؛ حيث تُصنّف شركة Zilog هذه التباديل إلى 158 "نوعًا مختلفًا من التعليمات"، 78 منها مطابقة لتلك الموجودة في معالج Intel 8080 [ 49 ] (مما يسمح بتشغيل جميع برامج 8080 على معالج Z80). تقوم وثائق Zilog [ 50 ] بتصنيف التعليمات إلى الفئات التالية (معظمها من 8080، والبعض الآخر جديد تمامًا مثل تعليمات الكتلة والبت، والبعض الآخر تعليمات 8080 مع أوضاع عنونة أكثر تنوعًا، مثل عمليات التحميل 16 بت، والإدخال/الإخراج، والتدوير/الإزاحة، والقفزات النسبية):

  • شحن وتبادل
  • حظر النقل والبحث
  • الحساب والمنطق
  • قم بالتدوير والتحريك
  • معالجة البتات (ضبط، إعادة ضبط، اختبار)
  • اقفز، اتصل، ثم عد
  • المدخلات/المخرجات
  • التحكم الأساسي في وحدة المعالجة المركزية

لا توجد تعليمات ضرب صريحة في معالج Z80 الأصلي، [ 51 ] مع ذلك، يمكن ضرب المسجلين 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. [ م ] ) تُستخدم علامة تجاوز الإشارة الجديدة هذه لجميع عمليات 16 بت الجديدة الخاصة بمعالج Z80 ( ADC، ) بالإضافة إلى عمليات 8 بت الحسابية، بينما لا تؤثر عليها SBCعمليات 16 بت الموروثة من 8080 ( ADD،، INC) . كما تُستخدم البتة 1 من سجل العلامات (بتة احتياطية في 8080) كعلامة N تُشير إلى ما إذا كانت آخر تعليمة حسابية مُنفذة هي طرح أم جمع. تتحقق نسخة Z80 من التعليمات (المُجمِّع لضبط الفاصلة العشرية في حسابات BCD) من علامة N وتتصرف وفقًا لذلك، لذا فإن عملية طرح (افتراضية) متبوعةً بها ستُعطي نتيجة مختلفة على معالج 8080 القديم عنها على معالج Z80. مع ذلك، من المرجح أن يكون هذا رمزًا خاطئًا على معالج 8080، لأنه مُعرَّف للجمع فقط على هذا المعالج.DEC  DAA DAADAA

يحتوي معالج Z80 على ست LDتعليمات جديدة تُتيح تحميل أزواج سجلات DE وBC وSP من الذاكرة، وتحميل الذاكرة من هذه الأزواج الثلاثة، على عكس معالج 8080. [ 44 ] وكما هو الحال في معالج 8080، لا تؤثر تعليمات التحميل على الرايات (باستثناء عمليات تحميل السجلين I وR المُخصصة). ومن نتائج التشفير المنتظم (المشترك مع معالج 8080) إمكانية تحميل كل سجل من السجلات الثمانية بتات من نفسه (على سبيل المثال LD A,A). وهذا يُعدّ فعليًا NOP...

تستطيع تعليمات نقل الكتل الجديدة نقل ما يصل إلى 64  كيلوبايت من الذاكرة إلى الذاكرة أو بين الذاكرة ومنافذ الإدخال/الإخراج الطرفية. تستخدم تعليمات الكتل LDIR( LDDRالتحميل ، الزيادة / الإنقاص ، التكرار ) المؤشر HL للإشارة إلى عنوان المصدر، والمؤشر DE للإشارة إلى عنوان الوجهة، والمؤشر BC كعداد للبايتات. تُنسخ البايتات من المصدر إلى الوجهة، وتُزاد المؤشرات أو تُنقص، ويُنقص عداد البايتات حتى يصل BC إلى الصفر. تنقل الإصدارات غير المتكررة LDIبايتًا LDDواحدًا وتُزيد المؤشرات وعداد البايتات، وإذا أصبح صفرًا، يُعاد ضبط علامة P/V . تعمل تعليمات نقل البيانات من الذاكرة إلى  الإدخال/الإخراج المقابلة بشكل مشابه ، باستثناء استخدام B، وليس BC، كعداد للبايتات. [ 52 ] [ 53 ] يستطيع معالج Z80 إدخال وإخراج أي سجل إلى منفذ إدخال/إخراج باستخدام السجل C لتحديد المنفذ. (لا يقوم المعالج 8080 إلا بتنفيذ عمليات الإدخال/الإخراج من خلال المُراكم A، باستخدام عنوان منفذ مباشر محدد في التعليمات؛ يلزم استخدام تقنية رمز ذاتي التعديل لاستخدام عنوان منفذ متغير للمعالج 8080.)INIRINDROTIROTDRINIINDOUTIOUTD  

تُجري المجموعة الأخيرة من تعليمات الكتلة CPعملية مقارنة بين البايت الموجود في (HL) والمُراكم  A. لا يُستخدم زوج المسجلات DE. تنتهي الإصدارات المتكررة CPIRفقط CPDRإذا أصبحت قيمة BC صفرًا أو تم العثور على تطابق. يبقى HL مُشيرًا إلى البايت الذي يلي ( CPIR) أو الذي يسبق ( CPDR) البايت المُطابق. إذا لم يتم العثور على تطابق، تتم إعادة ضبط علامة Z. توجد  إصدارات غير متكررة CPI.CPD

على عكس معالج 8080، يستطيع معالج Z80 الانتقال إلى عنوان نسبي ( JRبدلاً من JP) باستخدام تعليمة أقصر بإزاحة 8 بتات مُوقّعة. توجد صيغتان لهذه التعليمة: غير مشروطة ومشروطة. لا يمكن اختبار سوى شرطي الصفر والحمل. (جميع عمليات الانتقال والاستدعاء في معالج 8080، سواء كانت مشروطة أم لا، هي تعليمات من ثلاثة بايتات). إذا تم تنفيذ الانتقال، JRتكون التعليمات ذات البايتين أبطأ من تعليمات 8080 ذات الثلاثة بايتات JP؛ أما إذا لم يتم تنفيذه، JRفتكون التعليمات أسرع.

تُعدّ تعليمة ثنائية البايت مُخصصة لتكرار البرنامج جديدةً أيضًا في معالج Z80: DJNZ( decrement jump if n on- zero ) تأخذ إزاحةً مُوقّعةً من 8 بت كمعامل. يتم إنقاص قيمة المُسجّل B، وإذا كانت النتيجة غير صفرية، فإن تنفيذ البرنامج يقفز بالنسبة إلى عدّاد البرنامج (PC)؛ وتبقى الرايات دون تغيير. يتطلب تنفيذ حلقة مُكافئة على معالج 8080 تعليمات قفز مُنفصلة وشرطية (إلى عنوان مُطلق ثنائي البايت) (بإجمالي أربعة بايتات)، وتُغيّر هذه التعليمات مُسجّل الرايات. DECDEC

تُعدّ تعليمات سجل الفهرسة (IX/IY، ويُختصر غالبًا إلى XY) مفيدةً للوصول إلى البيانات المُنظّمة في هياكل غير متجانسة ثابتة (مثل السجلات ) أو عند إزاحات ثابتة بالنسبة إلى عنوان أساسي متغير (كما في إطارات المكدس المتكررة )، كما تُقلّل من حجم الشيفرة البرمجية عن طريق الاستغناء عن الحاجة إلى تعليمات قصيرة متعددة باستخدام سجلات غير مفهرسة. مع ذلك، ورغم أنها قد تُوفّر السرعة في بعض السياقات مقارنةً بتسلسلات "مكافئة" طويلة/معقدة من العمليات الأبسط، إلا أنها تستهلك وقتًا إضافيًا كبيرًا من وحدة المعالجة المركزية (على سبيل المثال، 19 دورة زمنية للوصول إلى موقع ذاكرة مفهرس واحد مقابل 11 دورة فقط للوصول إلى نفس الذاكرة باستخدام HL والإشارة إلى الموقع التالي). لذا، بالنسبة للوصول البسيط أو الخطي إلى البيانات، يميل استخدام IX وIY إلى أن يكون أبطأ ويستهلك مساحة أكبر من الذاكرة. مع ذلك، قد تكون مفيدة في الحالات التي تكون فيها السجلات "الرئيسية" مشغولة بالكامل، وذلك عن طريق الاستغناء عن الحاجة إلى حفظ/استعادة السجلات. يمكن أن تكون أنصاف البتات الثمانية غير الموثقة رسميًا (انظر أدناه) مفيدة بشكل خاص في هذا السياق، لأنها تُسبب تباطؤًا أقل من نظيراتها ذات الـ 16 بت. وبالمثل، فإن تعليمات جمع الـ 16 بت ليست سريعة بشكل خاص (11 دورة ساعة) في معالج Z80 الأصلي ( أبطأ بدورة ساعة واحدة من معالجي 8080/8085)؛ ومع ذلك، فهي أسرع بمرتين تقريبًا من إجراء نفس العمليات الحسابية باستخدام عمليات 8 بت، والأهم من ذلك، أنها تُقلل من استخدام المسجلات. لم يكن من غير المألوف أن يقوم المبرمجون بإدخال بايتات إزاحة مختلفة (والتي كانت تُحسب عادةً ديناميكيًا) في التعليمات المفهرسة؛ وهذا مثال على التعليمات البرمجية ذاتية التعديل ، والتي كانت ممارسة شائعة في جميع معالجات 8 بت المبكرة تقريبًا ذات وحدات التنفيذ غير المترابطة .INC  

تحتوي سجلات الفهرس على تعليمة موازية لـ JP (HL)`<input>`، وهي `<input>` JP (IX)و `<input> JP (IY)`. يُلاحظ هذا غالبًا في لغات البرمجة الموجهة نحو المكدس مثل فورث ، حيث يجب على هذه اللغات، في نهاية كل كلمة فورث (الروتينات الفرعية الذرية التي تُشكل اللغة)، القفز بشكل غير مشروط إلى روتينات مُفسر الخيوط الخاصة بها. عادةً ما تظهر تعليمة القفز هذه مئات المرات في التطبيق، واستخدام `<input>` JP (IX)بدلًا من JP THREAD`<input>` يوفر بايتًا وحالتين T لكل ظهور. هذا يجعل سجل الفهرس غير متاح لأي استخدام آخر، وإلا فإن الحاجة إلى إعادة تحميله باستمرار ستُفقده كفاءته.

كان تصميم Z180 المُبرمج بدقة، والذي طُوّر قبل عشر سنوات، يسمح في البداية بمساحة أكبر على الشريحة، مما أتاح تنفيذًا أكثر كفاءة (باستخدام وحدة حساب ومنطق أوسع ، من بين أمور أخرى)؛ وينطبق الأمر نفسه على Z800 و Z280 و Z380 . مع ذلك، لم تُصبح هذه التعليمات فعّالة من حيث عدد الدورات إلى أقصى حد ممكن تقنيًا إلا بعد إطلاق معالج eZ80 ذي البنية الأنبوبية الكاملة في عام 2001، أي بالنظر إلى ترميزات Z80 بالإضافة إلى القدرة على إجراء عملية قراءة أو كتابة 8 بت في كل دورة ساعة.

تعليمات غير موثقة

صُممت سجلات الفهرسة، IX وIY، لتكون مؤشرات مرنة ذات 16 بت، مما يُعزز القدرة على معالجة الذاكرة وإطارات المكدس وهياكل البيانات. رسميًا، تم التعامل معها على أنها 16 بت فقط. في الواقع، تم تنفيذها كزوج من السجلات ذات 8 بت، [ 54 ] بنفس طريقة السجل HL، الذي يُمكن الوصول إليه إما كـ 16 بت أو بشكل منفصل كسجلين عالي ومنخفض . كانت رموز العمليات الثنائية (لغة الآلة) متطابقة، ولكنها مسبوقة ببادئة رمز عملية جديدة. [ 55 ] نشرت شركة زيلوج رموز العمليات والرموز المختصرة ذات الصلة بالوظائف المقصودة، لكنها لم تُوثق حقيقة أن كل رمز عملية يسمح بمعالجة السجلين H وL كان صالحًا بنفس القدر لأجزاء 8 بت من السجلين IX وIY. على سبيل المثال، سيؤدي رمز العملية 26h متبوعًا بقيمة بايت فورية إلى تحميل تلك القيمة في السجل H. إن إضافة البادئة DD، وهي بادئة رمز العملية للمسجل IX، قبل هذه التعليمة المكونة من بايتين، سيؤدي إلى تحميل البتات الثمانية الأكثر أهمية في المسجل IX بنفس القيمة. ويُستثنى من ذلك التعليمات المشابهة التي تستخدم كلاً من المسجلين HL وIX أو IY في نفس التعليمة؛ [ 55 ] في هذه الحالة، تُطبق البادئة DD فقط على الجزء (IX+d) من التعليمة. كما يمكن أن تحتوي أنصاف المسجلين XY على معاملات لتعليمات حسابية ومنطقية ومقارنة من 8 بت، مما يُتيح استخدام المسجلات العادية من 8 بت لأغراض أخرى. وقد سهّلت إمكانية زيادة أو إنقاص النصف العلوي من مسجل الفهرس، غير الموثقة، توسيع نطاق التعليمات المفهرسة العادية، دون الحاجة إلى اللجوء إلى التعليمات الموثقة .(LD H,n)LD H,(IX+d)ADD/SBC XY,DEADD/SBC XY,BC

توجد أيضًا العديد من التعليمات غير الموثقة. [ 56 ] لا يكتشف معالج Z80 التعليمات البرمجية غير الموثقة أو غير القانونية ، ولها تأثيرات متنوعة، بعضها مفيد. مع ذلك، ولأنها ليست جزءًا من التعريف الرسمي لمجموعة التعليمات، فليس من المؤكد (أو من المرجح جدًا) أن تعمل تطبيقات Z80 المختلفة بنفس الطريقة مع كل تعليمة برمجية غير موثقة.

الأخطاء

OTDRلا تتوافق هذه التعليمات مع وثائق Z80. من المفترض أن تُبقي OTDRكلتا OTIRالتعليمات (و) علامة الحمل (C) دون تغيير. OTIRتعمل التعليمات بشكل صحيح؛ ومع ذلك، أثناء تنفيذها OTDR، تأخذ علامة الحمل نتائج مقارنة زائفة بين المُراكم (A) وآخر مُخرَج من التعليمات OTDR. [ 57 ]

مثال على التعليمات البرمجية

يُظهر كود التجميع التالي لمعالج Z80 روتينًا فرعيًا باسم `f` memcpyيقوم بنسخ كتلة من بايتات البيانات بحجم مُحدد من موقع إلى آخر. يتم نسخ كتلة البيانات بايتًا واحدًا في كل مرة، وتستخدم عملية نقل البيانات ومنطق التكرار عمليات 16 بت. يُوضح الكود مجموعة متنوعة من التعليمات، ولكن عمليًا، لن تتم برمجته بهذه الطريقة لأن معالج Z80 يحتوي على تعليمة واحدة يُمكنها استبدال هذا الروتين الفرعي بالكامل: `f` LDIR. سينقل الكود النموذجي بايتًا واحدًا كل 46 دورة زمنية (T-states). بينما سيؤدي استبدال LDIRالتعليمة `f` إلى نقل كل بايت في 21 دورة زمنية فقط. تجدر الإشارة إلى أن الكود المُجمّع متوافق ثنائيًا مع معالجات Intel 8080 و8085.

1000  1000 1000 F5 1001 7E 1002 12 1003 23 1004 13 1005 0B 1006 78 1007 ب1 1008 C2 01 10 100B F1 100 درجة مئوية C9 100D 
; memcpy -- ; نسخ كتلة من الذاكرة من موقع إلى آخر. ; هذا الروتين مكافئ لـ LDIR ; ; سجلات الإدخال ; HL - عنوان كتلة بيانات المصدر ; DE - عنوان كتلة بيانات الوجهة ; BC - عدد البايتات المراد نسخها ; ; سجلات الإرجاع ; HL - البايت الأول بعد كتلة بيانات المصدر ; DE - البايت الأول بعد كتلة بيانات الوجهة ; BC - صفر ; (لا يحفظ LDIR قيمة AF بالكامل. يتم إعادة ضبط H و P/V و N.)org 1000h ; الأصل عند 1000h memcpy public push af ; حفظ AF مثل LDIR loop ld a ,( hl ) ; نسخ بايت واحد من المصدر ld ( de ), a ; إلى وجهته inc hl ; زيادة مؤشر المصدر inc de ; زيادة مؤشر الوجهة dec bc ; عد البايتات المنسوخة ld a , b ; اختبار BC بحثًا عن صفر أو c ; إذا كان BC != 0، jp nz , loop ; تكرار الحلقة pop af ; استعادة AF ret ; العودة end

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

تُنفَّذ كل تعليمة على مراحل تُعرف عادةً بدورات الآلة (دورات M)، وتستغرق كل دورة منها ما بين ثلاث إلى ست دورات ساعة (حالات T). [ 58 ] تُقابل كل دورة M تقريبًا عملية وصول واحدة إلى الذاكرة أو عملية داخلية واحدة. تنتهي عدة تعليمات فعليًا خلال دورة M1 للتعليمة التالية ، وهو ما يُعرف بتداخل جلب/تنفيذ التعليمات .

أمثلة على التعليمات النموذجية (R=قراءة، W=كتابة)
المجموع

دورات M

حالات TتعليماتM1M2M3M4M5M6
1 [ 59 ]4 [ 1 ]INCBرمز العملية
2 [ 60 ]7ADDA,nرمز العمليةن
3 [ 61 ]11ADDHL,DEرمز العمليةداخليداخلي
4 [ 62 ]15SETb,(HL)بادئةرمز العمليةR(HL)، مجموعةW(HL)
5 [ 63 ]19LD(IX+d),nبادئةرمز العمليةدن، أضفW(IX+d)
6 [ 64 ]23INC(IY+d)بادئةرمز العمليةديضيفR(IY+d),incW(IY+d)

تُرتّب دورات معالج Z80 بواسطة آلة حالة داخلية تُنشئ كل دورة M من 3 أو 4 أو 5 أو 6 حالات T، حسب السياق. هذا يُجنّبنا منطقًا غير متزامن مُعقّدًا، ويجعل إشارات التحكم تعمل بثبات ضمن نطاق واسع من ترددات الساعة. كما يعني هذا ضرورة استخدام بلورة بتردد أعلى (حوالي 2-3 أضعاف) مقارنةً بالترددات التي لا تتطلب هذا التقسيم لدورات المعالج. ولا يعني هذا بالضرورة متطلبات أكثر صرامة على أوقات الوصول إلى الذاكرة ، إذ تسمح الساعة عالية الدقة بتحكم أدق في توقيتات الذاكرة، وبالتالي يمكن للذاكرة أن تعمل بالتوازي مع وحدة المعالجة المركزية بشكل أكبر، مما يُتيح استخدامًا أكثر كفاءة لعرض نطاق الذاكرة المتاح.

أحد الأمثلة الرئيسية على ذلك هو أنه في عملية جلب رمز العملية ، يجمع معالج Z80 دورتين كاملتين من دورات الساعة في فترة وصول واحدة إلى الذاكرة (إشارة M1). في معالج Z80، تستمر هذه الإشارة لفترة أطول نسبيًا من وقت تنفيذ التعليمات المعتاد مقارنةً بتصميمات مثل 6800 أو 6502 أو ما شابهها، حيث تستغرق هذه الفترة عادةً ما بين 30 و40% من دورة الساعة. ونظرًا لأن انخفاض تكلفة رقائق الذاكرة (أي أوقات الوصول التي تتراوح بين 450 و250 نانوثانية في ثمانينيات القرن الماضي ) كان يُحدد عادةً أسرع وقت وصول ممكن، فقد كان هذا يعني أن هذه التصميمات كانت مقيدة بدورة ساعة أطول بكثير (أي سرعة ساعة داخلية أقل) من معالج Z80. 

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

يُرسل محتوى سجل التحديث R عبر النصف السفلي من ناقل العناوين مصحوبًا بإشارة تحكم التحديث أثناء قيام وحدة المعالجة المركزية بفك تشفير التعليمات المُستجلبة وتنفيذها. أثناء التحديث، يُرسل محتوى سجل المقاطعة I عبر النصف العلوي من ناقل العناوين. [ 65 ]

الأجهزة الطرفية المتوافقة

قدمت شركة زيلوج عددًا من المكونات الطرفية لمعالج Z80، والتي تدعم جميعها نظام معالجة المقاطعات ومساحة عناوين الإدخال/الإخراج الخاصة به. وتشمل هذه المكونات قناة العداد/المؤقت (CTC)، [ 66 ] وSIO (الإدخال/الإخراج التسلسلي)، وDMA (الوصول المباشر إلى الذاكرة)، وPIO (الإدخال/الإخراج المتوازي)، وDART (جهاز الإرسال/الاستقبال غير المتزامن المزدوج). ومع تطور خط الإنتاج، تم طرح إصدارات منخفضة الطاقة وعالية السرعة وإصدارات CMOS من هذه الرقاقات.

على غرار معالجات 8080 و8085 و8086، ولكن على عكس معالجات مثل موتورولا 6800 وموس تكنولوجي 6502، يمتلك معالج Z80 خط تحكم منفصل ومساحة عناوين خاصة بتعليمات الإدخال/الإخراج. وبينما استخدمت بعض الحواسيب المبنية على Z80، مثل أوزبورن 1، أجهزة إدخال/إخراج مُرتبطة بالذاكرة على غرار موتورولا ، كان يُستخدم عادةً نطاق الإدخال/الإخراج لعنونة إحدى رقاقات زيلوج الطرفية المتوافقة مع Z80. أثناء عملية قراءة أو كتابة الإدخال/الإخراج، يُدرج Z80 دورة انتظار واحدة تلقائيًا. [ 67 ] دعمت رقاقات زيلوج للإدخال/الإخراج مقاطعات الوضع 2 الجديدة في Z80، مما سهّل معالجة المقاطعات لعدد كبير من الأجهزة الطرفية.

وُصِفَ معالج Z80 رسميًا بأنه يدعم  عنونة الذاكرة 16 بت (64 كيلوبايت) وعنونة الإدخال/الإخراج 8 بت (256 منفذًا). في الواقع، تُفعِّل جميع تعليمات الإدخال/الإخراج ناقل العناوين بالكامل ذي الـ 16 بت. على سبيل المثال، تضع التعليمات OUT  (C),reg و IN  reg,(C) محتويات سجل BC بالكامل ذي الـ 16 بت على ناقل العناوين؛ [ 57 ] بينما تضع التعليمات OUT  (n),A و IN  A,(n) محتويات السجل A  على b8–b15 من ناقل العناوين، وعنوان المنفذ n على b0–b7 من ناقل العناوين. يمكن للمصمم اختيار فك تشفير ناقل العناوين بالكامل ذي الـ 16 بت في عمليات الإدخال/الإخراج للاستفادة من هذه الميزة، أو استخدام النصف العلوي من ناقل العناوين لاختيار ميزات فرعية لجهاز الإدخال/الإخراج. كما استُخدمت هذه الميزة لتقليل متطلبات أجهزة فك التشفير، كما هو الحال في Amstrad CPC / PCW و ZX81 .

المصادر الثانوية والمشتقات

مصادر ثانوية

قدمت شركة موستيك، التي أنتجت أول معالج Z80 لشركة زيلوج، هذا المعالج كمصدر ثانٍ تحت اسم MK3880. كما كانت شركة إس جي إس-تومسون (التي تُعرف الآن باسم إس تي ميكروإلكترونيكس ) مصدرًا ثانيًا أيضًا، من خلال معالجها Z8400. وطورت شركتا شارب وإن إي سي مصادر ثانية لمعالج NMOS Z80، وهما LH0080 وμPD780C على التوالي. استُخدم معالج LH0080 في العديد من أجهزة الكمبيوتر المنزلية والشخصية التي صنعتها شارب وغيرها من الشركات المصنعة اليابانية، بما في ذلك أجهزة كمبيوتر سوني MSX ، ​​وعدد من أجهزة الكمبيوتر من سلسلة شارب MZ . [ 68 ] طورت شارب معالجي LH0080A وLH0080B للعمل بترددات 4  ميجاهرتز و6  ميجاهرتز على التوالي. [ 69 ] كما طورت شارب معالج LH0083 [ 70 ] المتوافق مع تقنية DMA الخاصة بمعالج Z80.

أنتجت توشيبا نسخة CMOS، وهي TMPZ84C00، والتي يُعتقد (وإن لم يُؤكد ذلك) أنها نفس التصميم الذي استخدمته زيلوج في معالجها CMOS Z84C00. كما أنتجت غولدستار (الآن إل جي ) معالجات Z8400 وZ80، بالإضافة إلى سلسلة BU18400 من معالجات Z80 المُقلدة (بما في ذلك DMA وPIO وCTC وDART وSIO) بتقنيتي NMOS و CMOS من إنتاج روهم إلكترونيكس . أما معالجات LH5080 [ 71 ] و LH5081 [ 72 ] وLH5082 [ 73 ] ، وهي نسخ CMOS من Z80 وPIO وCTC على التوالي، فتُصنّعها شارب.

في ألمانيا الشرقية ، تم تصنيع نسخة مقلدة غير مرخصة من معالج Z80، تُعرف باسم U880 . وقد استُخدمت على نطاق واسع في أنظمة حاسوب شركتي روبوترون وفي إي بي ميكروإلكترونيك مولهاوزن (مثل سلسلة KC85 )، وكذلك في العديد من أنظمة الحاسوب المصنعة محليًا. وفي رومانيا ، وُجدت نسخة مقلدة أخرى غير مرخصة، تُسمى MMN80CPU ، من إنتاج شركة مايكروإلكترونيكا ، واستُخدمت في أجهزة حاسوب منزلية مثل TIM-S وHC وCOBRA.

كما تم إنتاج العديد من النسخ المقلدة من معالج Z80 في الاتحاد السوفيتي ، ومن أبرزها T34BM1 ، المعروف أيضًا باسم КР1858ВМ1 (الموازي للنسخة السوفيتية من معالج 8080، KR580VM80A ). استُخدمت العلامة الأولى في سلسلة ما قبل الإنتاج، بينما استُخدمت الثانية للإنتاج على نطاق أوسع. مع ذلك، ونظرًا لانهيار قطاع الإلكترونيات الدقيقة السوفيتي في أواخر ثمانينيات القرن العشرين، فإن عدد معالجات T34BM1 يفوق عدد معالجات КР1858ВМ1.

المشتقات

متوافق مع Z80 الأصلي
  • طوّرت هيتاشي معالج HD64180 ، وهو معالج Z80 مُبرمج بدقة عالية وديناميكي جزئيًا بتقنية CMOS، مزود بوحدات طرفية مدمجة ووحدة إدارة ذاكرة بسيطة، مما يوفر مساحة عناوين تبلغ 1 ميجابايت . لاحقًا، أعادت شركة زيلوج إنتاجه، بدايةً باسم Z64180، ثم في صورة معالج زيلوج Z180 المُعدّل قليلاً [ 74 ] والذي يتميز ببروتوكول ناقل وتوقيتات مُحسّنة لتتوافق مع رقاقات Z80 الطرفية. استمر تطوير Z180 تحت اسم زيلوج، وتعتمد أحدث إصداراته على نواة S180/L180 الثابتة بالكامل، والتي تتميز باستهلاك منخفض للطاقة وضوضاء كهرومغناطيسية منخفضة. 
  • طوّرت شركة توشيبا سلسلتي Z84013 / Z84C13 ذات 84 طرفًا وZ84015 / Z84C15 ذات 100 طرفًا من "وحدات التحكم الطرفية الذكية"، وهما في الأساس عبارة عن نوى Z80 عادية من نوع NMOS وCMOS مزودة بوحدات طرفية Z80، ومؤقت مراقبة ، ووظيفة إعادة ضبط عند التشغيل ، ومولد حالة انتظار على نفس الشريحة. وقد تم تصنيع هذه المنتجات من قبل كل من شارب وتوشيبا. وتُعد شركة زيلوج اليوم المورد الثاني لهذه المنتجات. [ 75 ]
  • يُستخدم معالج Zilog Z380 المتوافق مع Z80 ذو 32 بت، والذي تم طرحه عام 1994، في معدات الاتصالات. [ 76 ]
  • تم طرح معالج eZ80 المتوافق مع Z80 من شركة Zilog [ 77 والذي يتميز بتقنية خطوط الأنابيب الكاملة وطول كلمة 8/16/24 بت  ومساحة عناوين خطية 16 ميجابايت، في عام 2001. يتوفر هذا المعالج بإصدارات مزودة بذاكرة SRAM أو Flash مدمجة، بالإضافة إلى إصدارات مزودة بوحدات طرفية مدمجة. يحتوي أحد هذه الإصدارات على وحدة تحكم وصول للوسائط (MAC) مدمجة، ويتضمن البرنامج المتاح حزمة بروتوكولات TCP/IP . على عكس معالجي Z800 وZ280، يحتوي eZ80 على عدد قليل من التعليمات الإضافية (بشكل أساسي تحميل العنوان الفعال (LEA) ودفع العنوان الفعال (PEA) وتحميل عناوين متغيرة 16/24 بت)، ولكن يتم تنفيذ التعليمات بكفاءة تتراوح بين 2 و11 مرة لكل دورة ساعة مقارنةً بمعالج Z80 الأصلي، بمتوسط ​​يتراوح بين 3 و5 مرات. يدعم المعالج حاليًا ترددات ساعة تصل إلى 50  ميجاهرتز.
  • طوّرت كاواساكي معالج KL5C8400 المتوافق مع النظام الثنائي، والذي يتميز بكفاءة دورة ساعة أعلى بنحو 1.2 إلى 1.3 مرة من معالج Z80 الأصلي، ويمكن تشغيله بتردد يصل إلى 33  ميجاهرتز. كما تُنتج كاواساكي عائلة معالجات KL5C80A1x، التي تحتوي على وحدات طرفية بالإضافة إلى ذاكرة وصول عشوائي صغيرة مدمجة؛ وهي تتميز بكفاءة دورة ساعة مماثلة تقريبًا لمعالج eZ80، ويمكن تشغيلها بتردد يصل إلى 10  ميجاهرتز (2006). [ 78 ]
  • كان جهاز NEC μPD9002 وحدة معالجة مركزية هجينة متوافقة مع كل من عائلتي Z80 و x86 .
  • تتضمن عائلة معالجات الصوت من شركة Actions Semiconductor الصينية (ATJ2085 وغيرها) وحدات تحكم دقيقة متوافقة مع Z80 بالإضافة إلى معالج إشارة رقمية مخصص 24 بت. [ 79 ] تُستخدم هذه الرقائق في عدد من منتجات مشغلات MP3 والوسائط المتعددة.
  • تتوفر النوى البرمجية القابلة للتصنيع T80 (VHDL) و TV80 (Verilog) من OpenCores.org. [ 80 ]
  • يُستخدم معالج NSC800 من شركة ناشيونال سيميكوندكتور ، الذي أُعلن عنه عام 1980 [ 81 ] ، في العديد من أجهزة التشفير الإلكترونية من شركة تيلي سيكيوريتي تيمان (TST) [ 82 ] وفي كاميرا كانون X-07 . يتوافق معالج NSC800 تمامًا مع مجموعة تعليمات Z80 [ 83 ] . يستخدم NSC800 ناقلًا متعدد الإرسال مثل معالج 8085، ولكنه يختلف في ترتيب دبابيسه عن Z80 [ 84 ] .
غير متوافق
متوافق جزئياً
لم يعد يُنتج
  • كان معالج ASCII Corporation R800 معالجًا سريعًا 16 بت يستخدم في أجهزة الكمبيوتر MSX TurboR ؛ وكان متوافقًا برمجيًا، ولكن ليس ماديًا، مع Z80 (يختلف توقيت الإشارة وتوزيع الدبابيس ووظيفة الدبابيس عن Z80).
  • كانت معالجات Z800 و Z280 من نوع NMOS من شركة زيلوج عبارة عن تطبيقات 16 بت لمعالج Z80 (قبل معالج HD64180/Z180) مع  مساحة عناوين MMU مُقسّمة إلى صفحات بحجم 16 ميجابايت؛ وقد أضافت هذه المعالجات أنماط عنونة وأنماط تعامد متعددة إلى مجموعة تعليمات Z80. كانت ميزات الحواسيب الصغيرة  - مثل أوضاع المستخدم والنظام، ودعم المعالجات المتعددة، ووحدة MMU مدمجة، وذاكرة تخزين مؤقتة للتعليمات والبيانات مدمجة، وما إلى ذلك  - تُعتبر في الغالب تعقيدًا أكثر من كونها وظائف ودعمًا لمصممي الأنظمة المدمجة (ذوي التوجه الإلكتروني عادةً)؛ كما جعل ذلك من الصعب التنبؤ بأوقات تنفيذ التعليمات.
  • تستخدم بعض ألعاب الأركيد ، مثل بانغ / باستر بروس ، معالجًا مركزيًا مشفرًا من نوع "كابوكي" Z80 من إنتاج شركة VLSI Technology ، حيث يتم تخزين مفاتيح فك التشفير في ذاكرته الداخلية المدعومة ببطارية ، وذلك لتجنب القرصنة والألعاب المقرصنة غير القانونية. [ 88 ]

الاستخدامات البارزة

أجهزة الكمبيوتر المكتبية

استُخدم معالج Z80A كوحدة معالجة مركزية في عدد من أجهزة ألعاب الفيديو، مثل جهاز ColecoVision هذا . يقع معالج Z80 بالقرب من موصل الحافة.

خلال أواخر السبعينيات وأوائل الثمانينيات، استُخدم معالج Z80 في عدد كبير من أجهزة الأعمال ذات التصميم البسيط، والتي كانت تعمل بنظام التشغيل CP/M ، وهو نظام سيطر على السوق آنذاك. [ 89 ] [ 90 ] ومن الأمثلة المعروفة لأجهزة الكمبيوتر المكتبية التي تعمل بنظام CP/M ومعالج Z80: جهاز Heathkit H89 ، وجهاز Osborne 1 المحمول ، وسلسلة Kaypro ، وجهاز Epson QX-10 . أما جهاز Otrona Attache، وهو جهاز متطور وباهظ الثمن، فكان أقل شهرة . [ 91 ] استخدمت بعض الأنظمة برامج أنظمة تشغيل متعددة المهام (مثل MP/M أو Micronix من Morrow ) لتقاسم المعالج الواحد بين عدة مستخدمين في وقت واحد .

جهاز سينكلير زد إكس سبكتروم الذي يستخدم معالج زد 80 بتردد 3.5  ميجاهرتز

طُرحت العديد من أجهزة الكمبيوتر المنزلية التي استخدمت معالج Z80 كمعالج رئيسي أو كخيار إضافي للوصول إلى البرامج المصممة خصيصًا له. ومن أبرزها سلسلة TRS-80 ، بما في ذلك الطراز الأصلي (الذي أُعيد تسميته لاحقًا بـ "الطراز الأول")، والطراز الثاني ، والطراز الثالث ، والطراز الرابع ، والتي زُوّدت جميعها بمعالج Z80 كمعالج رئيسي، بالإضافة إلى بعض طرازات TRS-80 الأخرى (وليس جميعها) التي استخدمت معالج Z80 كمعالج رئيسي أو ثانوي. ومن الأجهزة البارزة الأخرى جهاز DEC Rainbow 100 وجهاز Seequa Chameleon ، وكلاهما يضم معالج Intel 8088 ومعالج Z80، لدعم تطبيقات CP/M-80 ذات 8 بت التي تعمل على معالج Z80، أو نظام MS-DOS مُخصّص لم يكن متوافقًا تمامًا مع تطبيقات PC DOS التي تعمل على معالج 8088.

في عام 1981، طرحت شركة مولتيتك (التي أصبحت فيما بعد شركة أيسر ) جهاز مايكروبروفيسور 1 ، وهو نظام تدريب بسيط وغير مكلف لمعالج Z80. ولا يزال هذا الجهاز يُصنّع ويُباع حتى الآن من قبل شركة فلايت إلكترونيكس إنترناشونال المحدودة في ساوثهامبتون، إنجلترا .

في عام 1984، قدمت شركة توشيبا جهاز توشيبا MSX HX-10 في اليابان وأستراليا.

في عام 1985، قدمت شركة شارب جهاز Hotbit وقدمت شركة Gradiente جهاز Expert ، الذي أصبح جهاز الكمبيوتر المنزلي ذو 8 بت المهيمن في البرازيل حتى أواخر الثمانينيات.

أجهزة الكمبيوتر المحمولة واليدوية

ازداد استخدام معالج Z80 في الأجهزة الأخف وزنًا التي تعمل بالبطارية مع توفر إصدارات CMOS منه. كما ألهم تطوير معالجات أخرى تعتمد على CMOS، مثل LH5801 [ 92 ] من شركة شارب. أُصدر جهاز شارب PC-1500 ، وهو حاسوب جيب قابل للبرمجة بلغة BASIC ، عام 1981، تبعه جهاز شارب PC-1600 المُحسّن عام 1986، ثم جهاز شارب PC-E220 عام 1991. واعتمدت الطرازات اللاحقة من سلسلة شارب ويزارد لمنظمات الملفات الشخصية أيضًا على معالج Z80. ثم ظهرت أجهزة الكمبيوتر المحمولة التي تعمل بنظام التشغيل CP/M، تمامًا مثل أجهزة الكمبيوتر المكتبية، مع جهاز إبسون PX-8 جنيف عام 1984، وجهاز إبسون PX-4 وجهاز بوندويل-2 عام 1985 . بينما اتجه سوق أجهزة الكمبيوتر المحمولة في السنوات اللاحقة نحو معالجات إنتل 8086 الأكثر قوة ونظام التشغيل MS-DOS، استمر طرح أنظمة خفيفة الوزن تعتمد على معالج Z80 مع عمر بطارية أطول، مثل Cambridge Z88 في عام 1988 و Amstrad NC100 في عام 1992. كما شقّ معالج Z8S180 المشتق من Z80 طريقه إلى جهاز مساعد رقمي شخصي مبكر يعمل بالقلم ، وهو Amstrad PenPad PDA600 في عام 1993. أنتجت شركة VTech التي تتخذ من هونغ كونغ مقرًا لها سلسلة من أجهزة الكمبيوتر المحمولة الصغيرة تُسمى "Lasers" تعتمد على معالج Z80. [ 93 ] [ 94 ] وكان آخر جهازين منها هما Laser PC5 [ 95 ] وPC6. [ 96 ] أما جهاز Cidco MailStation Mivo 100، الذي صدر لأول مرة في عام 1999، فكان جهاز بريد إلكتروني محمولًا مستقلًا، مزودًا بوحدة تحكم دقيقة تعتمد على معالج Z80. [ 97 ] أنتجت شركة تكساس إنسترومنتس سلسلة من منظمات الجيب (انتهى إنتاجها عام 2000) باستخدام معالجات توشيبا المبنية على نواة Z80؛ وكان أولها TI PS-6200 [ 98 ] ، وبعد فترة إنتاج طويلة شملت حوالي اثني عشر نموذجًا، توجت بسلسلة PocketMate. [ 99 ]

الأنظمة المدمجة والإلكترونيات الاستهلاكية

نظام مقسم فرعي خاص (PABX) قائم على معالج Z80 . يوجد معالج Z80 على يمين الشريحة التي تحمل ملصقًا أبيض مكتوبًا بخط اليد.

لطالما كان معالج Zilog Z80 معالجًا دقيقًا شائعًا في الأنظمة المدمجة ووحدات التحكم الدقيقة ، [ 40 ] حيث لا يزال يُستخدم على نطاق واسع حتى اليوم. [ 30 ] [ 100 ] تشمل تطبيقات Z80 الإلكترونيات الاستهلاكية والمنتجات الصناعية والآلات الموسيقية الإلكترونية. على سبيل المثال، استُخدم Z80 في جهاز توليف الموسيقى الرائد Prophet-5 ، [ 101 ] وكذلك في أول جهاز توليف موسيقي مزود بتقنية MIDI ، وهو Prophet 600. [ 102 ] كان Z80 أساسًا لجميع آلات E-mu Systems من عام 1976 إلى عام 1986. [ 103 ] استخدمت شركة Casio معالج Z80A في جهاز ألعاب الفيديو PV-1000 .

تحتوي العديد من ألعاب الفيديو التي صدرت في أوائل الثمانينيات، بما في ذلك لعبة باك مان ، على معالجات Z80.

استُخدم معالج Z80 في أجهزة سيجا ماستر سيستم وجيم جير . يحتوي جهاز سيجا جينيسيس على معالج Z80، مزود  بذاكرة وصول عشوائي (RAM) خاصة به سعتها 8 كيلوبايت، يعمل بالتوازي مع وحدة المعالجة المركزية الرئيسية MC68000، ويتمتع بوصول مباشر إلى رقائق الصوت ومنافذ الإدخال/الإخراج (وحدة التحكم) في النظام، بالإضافة إلى مسار بيانات مُبدَّل إلى ناقل الذاكرة الرئيسي لوحدة 68000 (مما يوفر الوصول إلى ذاكرة الوصول العشوائي الرئيسية سعتها 64 كيلوبايت، وخرطوشة البرامج، وشريحة الفيديو بالكامل ) ؛ بالإضافة  إلى توفير التوافق مع ألعاب ماستر سيستم، يُستخدم معالج Z80 غالبًا للتحكم في الصوت وتشغيله في برامج جينيسيس.

استُخدمت معالجات Z80 أيضًا في سلسلة آلات حاسبة الرسم البياني الشهيرة TI-8x من شركة Texas Instruments ، بدءًا من عام 1990 مع TI-81 ، التي تتميز بمعالج Z80 بتردد 2  ميجاهرتز. معظم الآلات الحاسبة المتطورة في السلسلة، بدءًا من TI-82 و TI-85 ، تعمل بمعالجات Z80 بتردد 6  ميجاهرتز أو أعلى. (تستخدم بعض الطرازات التي تحمل اسم TI-8x معالجات أخرى، مثل M68000، لكن الغالبية العظمى منها تعتمد على معالج Z80. في هذه الآلات، يُمكن تشغيل برامج المستخدم المُجمّعة أو المُترجمة بلغة الآلة Z80).

تستخدم آلات الحاسبة البيانية من طراز TI-83 و TI-84 Plus معالج Z80 بينما تستخدم سلسلة TI-84 Plus CE معالج eZ80 ؛ ولا تزال جميع سلاسل الآلات الحاسبة الثلاث تُباع من قبل شركة Texas Instruments حتى عام 2025.

في أواخر ثمانينيات القرن العشرين، تميزت سلسلة من الهواتف الأرضية السوفيتية تُدعى "AON" بمعالج Z80؛ وقد وسّعت هذه الهواتف نطاق ميزات الهاتف الأرضي لتشمل خاصية معرفة هوية المتصل ، ونغمات رنين مختلفة بحسب المتصل، والاتصال السريع ، وما إلى ذلك. [ 104 ] إلا أنه في النصف الثاني من تسعينيات القرن العشرين، تحوّل مصنّعو هذه الهواتف إلى استخدام وحدات تحكم دقيقة متوافقة مع معالج 8051 لتقليل استهلاك الطاقة، ومنع ارتفاع درجة حرارة محولات الطاقة الجدارية الصغيرة.

استخدمت الروبوتات المتنقلة ذاتية التشغيل من طراز Micromouse، والمخصصة لحل المتاهات، معالج Z80، مثل روبوت Moonlight Special (1978)، الذي اعتمد على معالج Z80A بتردد 4 ميجاهرتز لتقليل المكونات الداخلية، وذلك بالاستفادة من متطلبات مصدر الطاقة الوحيد +5 فولت. واعتمد التصميم على تعليمات نقل الكتل الجديدة للمعالج لإدارة جداول عقد المتاهة، وعلى المقاطعات الموجهة للتعامل مع أخذ عينات المستشعرات في الوقت الفعلي والتحكم في محرك الخطوة ضمن دورة مقاطعة ضيقة تبلغ 4 كيلوهرتز (250 ميكروثانية).

إيقاف التشغيل

في 15 أبريل 2024، أعلنت شركة زيلوغ عن إيقاف إنتاج معالج Z80، مع قبول الطلبات حتى 14 يونيو 2024. وشمل الإعلان 13 إصدارًا مختلفًا من معالج Z80، بما في ذلك إصدارات DIP40 ، وذكر أنها ستواصل إنتاج خليفته المطور، وهو معالج eZ80 . [ 5 ]

انظر أيضاً

الحواشي

  1. وفقًا للتاريخ الشفوي مع فيديريكو فاجين، لم تُصدر شركة ناشيونال أي نسخة من جهاز NMOS إلا بتقنية CMOS.
  2. وصلت ترددات إصدارات CMOS إلى 20 ميجاهرتز، ووصلت ترددات المشتقات المتوافقة مع النظام الثنائي إلى 50 ميجاهرتز
  3. متوافق مع الإصدارات السابقة من إنتل 8080
  4. كانت هذه سمة شائعة إلى حد ما في تصميمات الحواسيب الصغيرة في تلك الحقبة، ووجدت طريقها إلى عدد من المعالجات الدقيقة المبكرة.
  5. قامت شركة زيلوج بتصنيع جهاز Z80 بالإضافة إلى معظم منتجاتها الأخرى لسنوات عديدة حتى باعت مصانعها وأصبحت الشركة " التي لا تمتلك مصانع " كما هي اليوم.
  6. على الرغم من أن معالج 8080 كان يدعم عمليات الجمع والزيادة والنقصان على مستوى 16 بت، إلا أنه لم يكن يحتوي على تعليمات صريحة للطرح على مستوى 16 بت، ولا على علامة تجاوز السعة. وقد عوض معالج Z80 هذا النقص بتعليمات ADCHL,rr وSBCلا تقومتعليمة ADD HL,rr المتوافقة مع معالج 8080 بذلك   
  7. ومن الجدير بالذكر أنها كانت تُستخدم لمعالجة أجزاء المانتسا ذات32 بت لمعاملين في آنٍ واحد، وذلك باستخدام تنسيق الفاصلة العائمة ذي 40 بتالمستخدم في الحاسوب المنزلي ZX81 . كما استُخدمت بطريقة مماثلة في بعض الحواسيب السابقة الأقل شهرة التي تعتمد على معالج Z80، مثل الحاسوبين السويديين ABC 80 و ABC 800 .
  8. بما أن عملية التحديث هذه لا تتطلب نقل أي بيانات، بل مجرد إخراج عناوين الصفوف المتسلسلة، فإنها تشغل أقل من 1.5 دورة T. دورة قراءة M1 أقصر بنصف دورة من قراءة الذاكرة العادية. يمكن استخدام إشارة M1 المخصصة ( دورة الآلة الأولى ) في معالج Z80 لمنح رقائق الذاكرة نفس مقدار وقت القراءة لجلب التعليمات كما هو الحال للوصول إلى البيانات، أي ما يقارب دورتين T كاملتين من دورة الجلب 4T (وكذلك من دورة قراءة البيانات 3T ). يظل العنوان الصالح حتى الحافة الخلفية للقراءة (أو M1) أقصر بنصف دورة من القراءة العادية. يمكن لمعالج Z80 استخدام ذاكرة بنفس نطاق أوقات الوصول لمعالج 8080 (أو 8086) بنفس تردد الساعة. تعني هذه القراءة متعددة الدورات أيضًا أن معالج Z80 يمكنه استخدام تردد داخلي أعلى بأربع مرات تقريبًا من معالج 6800 أو 6502 أو ما شابه ذلك باستخدام نفس سرعة الذاكرة.
  9. على عكس إصدار nMOS الأصلي، الذي كان يستخدم مزاليج ديناميكية ولا يمكن إيقافه لأكثر من بضعة آلاف من دورات الساعة.
  10. كما ورثت عائلة 8086 ذات الصلةتصميم السجل هذا.
  11. كان مؤشر HL المتغير هذا في الواقع هو الطريقة الوحيدة للوصول إلى الذاكرة (للبيانات) في Datapoint 2200، وبالتالي أيضًا في Intel 8008. لم يكن من الممكن استخدام عناوين مباشرة للوصول إلى البيانات.
  12. خاصية تحميل الذاكرة الفورية غير متاحة على جهاز Datapoint 2200.
  13. على سبيل المثال، في معالج 8080، قد يختبر المبرمج تكافؤ المُراكم بإضافةصفر إليه، أوطرح صفر منه، أوإضافته أوطرحه منه؛ جميع هذه العمليات عبارة عن تعليمات فردية بنفس السرعة والحجم، سواء في معالج 8080 أو Z80. إذا اختار المبرمج اختبار التكافؤ بإضافة صفر أوطرحه منه، فسينفذ Z80 البرنامج بشكل صحيح، ولكن إذا اختار اختبار التكافؤ بإضافةأوطرحه منه، فسيعيد Z80 ضبط علامة P/V دائمًا (لأن إضافة أو طرح الصفر لا يُسبب تجاوزًا أو نقصًا في القيمة) بدلًا من تعيين P للإشارة بشكل صحيح إلى تكافؤ البايت - كما يفعل معالج 8080 أو 8085 - وقد يفشل البرنامج. لم تُشر أيٌّ من أدلة برمجة معالجات إنتل 8080 إلى تثبيط استخدام التعليمات الحسابية، أو توصي باستخدام التعليمات المنطقية، لاختبار التكافؤ، لذا لا يوجد سبب وجيه يدفع مبرمج 8080 إلى تفضيل أحدهما على الآخر. في التطبيقات العملية، من غير المرجح أن تُختار التعليمات الحسابية المذكورة في هذا المثال لاختبار التكافؤ، لأن التعليمات المنطقيةأسرعوأقصر بمقدار بايت واحد.ADDSUBORXORORXORADDSUBAND AOR A
  14. يؤدي هذا الاستخدام الشائع، ولكنه اختياري فقط وليس مقيدًا، إلى الوصف المتكرر وغير الصحيح لـ Z80 في Genesis على أنه "معالج صوت".

مراجع

  1. 1 2 3 زيلوج (2005). دليل مستخدم وحدة المعالجة المركزية من عائلة Z80 (ملف PDF) . زيلوج. صفحة  5. مؤرشف (ملف PDF) من الأصل في 19 يونيو 2009. تم الاطلاع عليه في 18 يوليو 2009 .
  2. "قاعة مشاهير الرقائق: معالج زيلوج Z80 الدقيق - IEEE Spectrum" . spectrum.ieee.org . تم الاطلاع عليه بتاريخ 22 نوفمبر 2024 .
  3. إدواردز، بنج (22 أبريل 2024). "بعد 48 عامًا، تُنهي شركة زيلوج إنتاج شريحة المعالج الدقيق Z80 الكلاسيكية المستقلة" . آرس تكنيكا . تاريخ الاسترجاع: 22 نوفمبر 2024 .
  4. 1 2 فاجين وشيما وأونجرمان 2007 .
  5. 1 2 إدواردز، بنج (22 أبريل 2024). "بعد 48 عامًا، تُنهي شركة زيلوج إنتاج شريحة المعالج الدقيق Z80 الكلاسيكية المستقلة" . آرس تكنيكا . مؤرشف من الأصل في 12 مايو 2024. تم الاطلاع عليه في 23 مايو 2024 .
  6. 1 2 فاجين، شيما وأونجرمان 2007 ، ص. 1.
  7. 1 2 فاجين، شيما وأونجرمان 2007 ، ص. 2.
  8. 1 2 3 فاجين، شيما وأونجرمان 2007 ، ص. 3.
  9. 1 2 3 فاجين، شيما وأونجرمان 2007 ، ص. 4.
  10. فاجين، شيما وأونجرمان 2007 ، ص. 8.
  11. 1 2 فاجين، شيما وأونجرمان 2007 ، ص. 5.
  12. فاجين، شيما وأونجرمان 2007 ، ص. 19.
  13. فاجين، شيما وأونجرمان 2007 ، ص. 6.
  14. فاجين، شيما وأونجرمان 2007 ، ص. 7.
  15. فاجين، شيما وأونجرمان 2007 ، ص. 17.
  16. "وحدة تحكم الوصول المباشر للذاكرة Z80® DMA" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 5 فبراير 2024. تم الاطلاع عليه بتاريخ 8 يناير 2024 .
  17. أندرسون (1994) ، ص 51.
  18. فاجين، شيما وأونجرمان 2007 ، ص 13.
  19. هولدر، كيث (16 فبراير 1984). "إكسون وزيلوغ تتوصلان إلى تسوية مع شركة إن إي سي" . مجلة الكمبيوتر الأسبوعية . ص 9. تم الاطلاع عليه في 15 يونيو 2025 . 
  20. فاجين، شيما وأونجرمان 2007 ، ص. 9.
  21. أندرسون (1994) ، ص 57.
  22. 1 2 بروك، جيرالد و. (2003). ثورة المعلومات الثانية . مطبعة جامعة هارفارد. ISBN 978-0-674-01178-6.
  23. "تاريخ 8 بت: رحلة طويلة في وقت قصير" . إنفوورلد . المجلد 4، العدد 47. بالو ألتو، كاليفورنيا: شركة بوبولار كومبيوتينغ. 29 نوفمبر 1982. الصفحات 58-60 . الرقم الدولي الموحد للدوريات 0199-6649 . مؤرشف من الأصل في 5 يناير 2024.    
  24. فاجين، فيديريكو؛ شيما، ماساتوشي ؛ أونجرمان، رالف (19 أغسطس 1976). "مجموعة رقائق Z-80 تبشر بالجيل الثالث من المعالجات الدقيقة" (ملف PDF) . مجلة الإلكترونيات . المجلد 49، العدد 17. نيويورك: ماكجرو هيل . الصفحات 89-93 . مؤرشف (ملف PDF) من الأصل في 31 يناير 2023.   
  25. ^ سيارسيا (1981) ، ص 31، 32.
  26. 1 2 تشين، واي كاي (2002). دليل الدوائر والمرشحات . مطبعة سي آر سي . ص 1943. ISBN  978-0-8493-0912-0تبدأ معالجة المقاطعة وفقًا لطريقة المقاطعة المحددة في تعليمة IM i ، حيث i = 0 أو 1 أو 2. إذا كانت i = 1، في حالة الطريقة المباشرة، يتم تحميل عداد البرنامج (PC) بالقيمة 0038H. إذا كانت i = 0، في حالة الطريقة الموجهة، يُتاح للجهاز المُقاطع وضع رمز العملية (op-code) لبايت واحد. إذا كانت i = 2، في حالة الطريقة الموجهة غير المباشرة، يجب على الجهاز المُقاطع وضع بايت واحد. يستخدم معالج Z80 هذا البايت لاختيار أحد متجهات المقاطعة البالغ عددها 128.     
  27. ماثور (1989). مقدمة في المعالجات الدقيقة . شركة تاتا ماكجرو هيل للنشر. ص 111. ISBN  978-0-07-460222-5تتميز بنية المسجلات في معالج Z80 بأنها أكثر ابتكارًا من تلك الموجودة في معالج 8085
  28. بروير، توني. "إعادة ضبط خاصة لمعالج Z80" . جيت هاب . مؤرشف من الأصل في 27 أبريل 2024. تم الاطلاع عليه في 27 أبريل 2024 .
  29. أدريان، أندريه (4 يونيو 2011). "Z80، معالج الأرقام ذو 8 بت" . مؤرشف من الأصل في 26 نوفمبر 2023.
  30. 1 2 بالتش، مارك (18 يونيو 2003). "أساسيات الرقمية". التصميم الرقمي الكامل: دليل شامل للإلكترونيات الرقمية وهندسة أنظمة الحاسوب . الهندسة الاحترافية. نيويورك، نيويورك : ماكجرو هيل بروفيشنال . ص 122. ISBN  0-07-140927-0.
  31. تقرير سيبولد عن الحوسبة الاحترافية . منشورات سيبولد. 1983. في عالم 8 بت، تعد رقائق الكمبيوتر Z80 و 6502 الأكثر شيوعًا.
  32. أدريان، أندريه (4 يونيو 2011). "Z80، معالج الأرقام ذو 8 بت: عملية الجمع (الطويلة) لـ Z80 ذو 32 بت" . مؤرشف من الأصل في 26 نوفمبر 2023.
  33. الحوسبة الشعبية . ماكجرو هيل . 1983. ص 15. 
  34. ماركوف، جون (18 أكتوبر 1982). "معالج Z80 السريع من زيلوج يُحسّن الأداء من 8 بت إلى 16 بت" . إنفوورلد . المجلد 4، العدد 41. بالو ألتو، كاليفورنيا: بوبولار كومبيوتينج، ص 1. الرقم الدولي الموحد للدوريات 0199-6649 . مؤرشف من الأصل في 5 يناير 2024.    
  35. التصميم الإلكتروني . هايدن. 1988. ص 142. بالإضافة إلى دعم مجموعة تعليمات Z80 بالكامل، فإن Z180 
  36. جانسل، جاك ج. (1992). "لا يزال Z80 حيًا!" . مؤرشف من الأصل في 20 ديسمبر 2023. اختار المصممون بنية متوافقة مع Z80، مما يمنح مستخدمي Z80 مسار ترقية متوافقًا تمامًا مع البرامج. يُنفذ معالج 64180 كل تعليمات Z80 تمامًا كما يفعل Z80.
  37. شريف، كين. "الوصول إلى السيليكون: كيف يتم تنفيذ سجلات Z80" . مؤرشف من الأصل في 5 نوفمبر 2023.
  38. ^ كيلوبود . 1001001. 1977. ص. 22. 
  39. ^ زاكس ، رودناي (1982). برمجة Z80 ( الطبعة الثالثة). سيبكس. ص. 62. ردمك   978-0-89588-069-7.
  40. 1 2 هيث، ستيف (2003). تصميم الأنظمة المدمجة . أكسفورد: نيونس. ص 21. ISBN  978-0-7506-5546-0.
  41. نورث، جون (مارس 1991). "كيفية الاختراق" . يور سنكلير . العدد 63. ص 77.  
  42. ريسون، مارك. يونغ، شون (محرران). "عاطفة علم Z80" . z80.info . توماس شيرر. مؤرشف من الأصل في 23 ديسمبر 2023. تم الاطلاع عليه في 14 يونيو 2016 .
  43. شريف، كين. "يحتوي معالج Z-80 على وحدة حسابية ومنطقية 4 بت. إليك كيفية عملها" . مؤرشف من الأصل في 9 سبتمبر 2013. تم الاطلاع عليه في 16 نوفمبر 2021 .
  44. 1 2 دوردا الرابع، فرانك (2012). "مجموعة تعليمات 8080/Z80" . مؤرشف من الأصل في 11 فبراير 2016. تم الاسترجاع في 22 يوليو 2009 .
  45. "معالج دقيق 8080A/ ذو 8 بتات من النوع N". كتالوج بيانات مكونات إنتل 1978. سانتا كلارا، كاليفورنيا: شركة إنتل. 1978. الصفحات 11-17 . جميع الرموز التذكيرية محفوظة لشركة إنتل 1977. 
  46. "دليل مستخدم مُجمِّع الماكرو لنقل Z80" (ملف PDF) . صفحة 2-2. مؤرشف من الأصل (ملف PDF) في 20 يوليو 2011. تم الاطلاع عليه في 4 يونيو 2009 . 
  47. ↑ سكانلون ، ليو ج. (1988). لغة التجميع 8086/8088/80286 . دار برادي للنشر . ص 12. ISBN  978-0-13-246919-7[ ...] يُعدّ المعالج 8086 متوافقًا برمجيًا مع المعالج 8080 على مستوى لغة التجميع. [...]
  48. نيلسون، روس ب. (يناير 1989) [1988]. كتاب 80386: دليل مبرمج لغة التجميع لمعالج 80386. سلسلة برمجة مايكروسوفت ( الطبعة الأولى). مطبعة مايكروسوفت . ص 2. ISBN   978-1-55615-138-5[ ...] يمكن لبرنامج ترجمة Intel تحويل برامج التجميع 8080 إلى برامج التجميع 8086 [...]
  49. 1 2 "مقدمة عن معالج Z80" . زيلوج . 1995. مؤرشف من الأصل في 20 ديسمبر 2023. يحتوي على لغة من 252 تعليمة أساسية، ومع استخدام 4 بايتات محجوزة كبادئات، فإنه يصل إلى 308 تعليمة إضافية.
  50. "مجموعة تعليمات معالج Z80" (ملف PDF). زيلوج . 1976. ص 19. مؤرشف من الأصل في 5 نوفمبر 2023. تم الاطلاع عليه في 20 يوليو 2021 . 
  51. سانشيز، خوليو؛ كانتون، ماريا ب. (2008). حلول برمجية للمهندسين والعلماء . تايلور وفرانسيس. ص 65. ISBN  978-1-4200-4302-0. لم تتضمن المعالجات الدقيقة ذات 8 بت التي سبقت عائلة 80x86 (مثل Intel 8080 و Zilog Z80 و Motorola) عملية الضرب.
  52. سيارسيا (1981) ، ص 86.
  53. هايز، جون ب. (1978). هندسة الحاسوب وتنظيمه . ماكجرو هيل. ص 423. ISBN  0-07-027363-4.
  54. فروهليش، روبرت أ. (1984). فهرس ودليل البرمجيات الحرة . دار نشر كراون. ص 133. ISBN  978-0-517-55448-7تسمح أكواد Z80 غير الموثقة بعمليات 8 بت مع سجلات IX و IY .
  55. 1 2 بوت، جاكو جيه تي "تعليمات Z80 غير الموثقة" . موطن معالج Z80 . مؤرشف من الأصل في 23 ديسمبر 2023. إذا كان رمز العملية يعمل مع المسجلات HL أو H أو L، فإنه إذا سُبق بـ #DD (أو #FD) فإنه يعمل على IX أو IXH أو IXL (أو IY أو IYH أو IYL)، مع بعض الاستثناءات. الاستثناءات هي تعليمات مثل LD H,IXH وLD L,IYH.
  56. روبن نيكسون، دليل المستخدم المتقدم لجهاز أمستراد نوت باد ، روبن نيكسون، 1993، رقم ISBN 1-85058-515-6، الصفحات 219–223.
  57. 1 2 يونغ، شون (أكتوبر 1998). "ميزات Z80 غير الموثقة (في سلوك البرمجيات)" . مؤرشف من الأصل في 25 ديسمبر 2023. تستخدم تعليمات الإدخال/الإخراج كامل ناقل العناوين، وليس فقط البتات الثمانية السفلى. لذا، في الواقع، يمكنك الحصول على 65536 منفذ إدخال/إخراج في نظام Z80 (يستخدم Spectrum هذا). تضع تعليمات IN r,(C) وOUT (C),r وجميع تعليمات كتلة الإدخال/الإخراج الأخرى كامل BC على ناقل العناوين. بينما تضع تعليمات IN A,(n) وOUT (n),A قيمة A*256+n على ناقل العناوين.
  58. "التوقيت". دليل مستخدم وحدة المعالجة المركزية لعائلة Z80 (ملف PDF) . زيلوج . 2016. ص 7. UM008011-0816. مؤرشف (ملف PDF) من الأصل في 26 ديسمبر 2023. تم الاطلاع عليه في 5 يناير 2024 . 
  59. سيارسيا (1981) ، ص 65.
  60. ^ زاكس ، رودناي (1989). برمجة Z80 . سايبكس. ص. 200. ردمك  978-0-89588-069-7. أضف A، n أضف المُجمِّع مع البيانات الفورية n. توقيت الذاكرة: 2 دورة M؛ 7 حالات T.
  61. سيارسيا (1981) ، ص 63.
  62. سيارسيا (1981) ، ص 77.
  63. سيارسيا (1981) ، ص 36.
  64. سيارسيا (1981) ، ص 58.
  65. "سجلات الأغراض الخاصة". دليل مستخدم وحدة المعالجة المركزية لعائلة Z80 (ملف PDF) . زيلوج . 2016. ص 3. UM008011-0816. مؤرشف (ملف PDF) من الأصل في 26 ديسمبر 2023. تم الاطلاع عليه في 5 يناير 2024 . 
  66. "دليل مستخدم ملحقات وحدة المعالجة المركزية لعائلة Z80" (ملف PDF) . ورقة بيانات EEWORLD . ZiLOG. 2001. مؤرشف من الأصل (ملف PDF) في 2 مايو 2014. تم الاطلاع عليه في 30 أبريل 2014 .
  67. "كتاب بيانات أشباه الموصلات من شارب لعام 1986" (ملف PDF) . صفحة 218. مؤرشف (ملف PDF) من الأصل في 1 يناير 2024. تم الاطلاع عليه في 1 يناير 2024 . 
  68. "نظرة عامة على سلسلة SHARP MZ" . SharpMZ.org . مؤرشف من الأصل في 27 مارس 2008. تم الاطلاع عليه في 28 يوليو 2011. تستخدم معظم أجهزة MZ وحدة المعالجة المركزية 8 بت LH0080 / Z80 [...]
  69. "LH0080/LH0080A/LH0080B". كتاب بيانات أشباه الموصلات لعام 1986 (ملف PDF) . شركة شارب . 1986. صفحة 210. مؤرشف (ملف PDF) من الأصل في 1 يناير 2024. تم الاطلاع عليه في 1 يناير 2024 . 
  70. "كتاب بيانات أشباه الموصلات من شارب لعام 1986" (ملف PDF) . الصفحات 255-269 . مؤرشف (ملف PDF) من الأصل في 20 يناير 2024. تم الاطلاع عليه في 13 يناير 2024 . 
  71. "كتاب بيانات أشباه الموصلات من شارب لعام 1986" (ملف PDF) . الصفحات 296-301 . مؤرشف (ملف PDF) من الأصل في 20 يناير 2024. تم الاطلاع عليه في 20 يناير 2024 . 
  72. "كتاب بيانات أشباه الموصلات من شارب لعام 1986" (ملف PDF) . الصفحات 302-306 . مؤرشف (ملف PDF) من الأصل في 28 يناير 2024. تم الاطلاع عليه في 28 يناير 2024 . 
  73. "كتاب بيانات أشباه الموصلات من شارب لعام 1986" (ملف PDF) . الصفحات 307-311 . مؤرشف (ملف PDF) من الأصل في 28 يناير 2024. تم الاطلاع عليه في 28 يناير 2024 . 
  74. جانسل، جاك ج. (1992). "لا يزال Z80 حيًا!" . مؤرشف من الأصل في 1 مايو 2009. تم الاطلاع عليه في 17 يوليو 2009. يُعدّ 64180 نواة Z80 من إنتاج هيتاشي مع العديد من "الإضافات" المدمجة. أما نسخة زيلوج فهي Z180، وهي في الأساس نفس الجزء.
  75. جانسل، جاك ج. (1992). "لا يزال معالج Z80 حيًا!" . مؤرشف من الأصل في 1 مايو 2009. تم الاسترجاع في 17 يوليو 2009. تبيع كل من توشيبا وزيلوغ المعالجين 84013 و84015، وهما عبارة عن نوى Z80 مع ملحقات Z80 تقليدية مدمجة على اللوحة.
  76. جرانفيل، فران (1 أغسطس 1996). "EDN Access — 08.01.96 Z80 يحتفل بمرور 20 عامًا" . EDN . مؤرشف من الأصل في 7 أغسطس 2023. تم الاسترجاع في 7 أغسطس 2023 .
  77. "عائلة منتجات EZ80 ACCLAIM" . زيلوج. مؤرشف من الأصل في 20 ديسمبر 2008.
  78. مجلة الأعمال الإلكترونية في آسيا . شركة كاهنرز آسيا المحدودة. ١٩٩٧. ص ٥. تُعدّ معالجات كاواساكي KL5C80A12 وKL5C80A16 وKL5C8400 وحدات تحكم دقيقة ووحدات معالجة مركزية عالية السرعة ذات ٨ بت. يتوافق رمز وحدة المعالجة المركزية الخاص بها، KC80، مع Z80 من شركة زيلوج على المستوى الثنائي. يُنفّذ KC80 التعليمات أسرع بأربع مرات تقريبًا من Z80 عند نفس تردد الساعة. 
  79. "مواصفات الأجهزة" . S1mp3.org . 19 أكتوبر 2005. مؤرشف من الأصل في 8 ديسمبر 2005.
  80. "نظرة عامة :: معالج T80 :: OpenCores" . opencores.org . مؤرشف من الأصل في 1 أبريل 2024. تم الاطلاع عليه في 1 يوليو 2024 .  
  81. رادا، كول (مارس 1981). "NSC800 - عائلة معالجات دقيقة منخفضة الطاقة وعالية الأداء" . الإلكترونيات والطاقة . 27 (3). مؤسسة الهندسة والتكنولوجيا : 222. doi : 10.1049/ep.1981.0107 . مؤرشف من الأصل في 16 أكتوبر 2021. تم الاسترجاع في 1 يونيو 2021 .
  82. "TST-4043: جهاز تشفير بيانات مزود بمودم عالي التردد وتصحيح الأخطاء الأمامية" . متحف التشفير . 27 فبراير 2018. مؤرشف من الأصل في 5 نوفمبر 2023.
  83. "معالج CMOS عالي الأداء ومنخفض الطاقة NSC800" (ملف PDF) . شركة ناشيونال سيميكوندكتور . يونيو 1992. مؤرشف (ملف PDF) من الأصل في 19 نوفمبر 2023.
  84. "لوحات توسعة MCS-85 وZilog Z80 وNational NSC800" . CPU Shack . 15 فبراير 2015. مؤرشف من الأصل في 30 سبتمبر 2023.
  85. "القسم 6: اتجاهات سوق وحدات المعالجة الدقيقة MOS، ووحدات التحكم الدقيقة، والملحقات" (ملف PDF) . شركة هندسة الدوائر المتكاملة. صفحة 16. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 14 يونيو 2011. 
  86. أكسلسون، جان (2003). إيثرنت المدمج والإنترنت الكامل . أبحاث ليكفيو. ص 93. ISBN  978-1-931448-00-0. معالج Rabbit 3000 الدقيق من شركة Rabbit Semiconductor، وهو مشتق محسن ومطور بشكل كبير من معالج Z80 الدقيق العريق من شركة ZiLOG, Inc.
  87. حيدر، كمال؛ بيرين، بوب (2004). تصميم الأنظمة المدمجة باستخدام المعالج الدقيق Rabbit 3000. نيونس. ص 32. ISBN  978-0-7506-7872-8تعتمد أجزاء Rabbit بشكل وثيق على بنية Zilog Z180، على الرغم من أنها غير متوافقة ثنائياً مع أجزاء Zilog .
  88. كروز، إدواردو (23 نوفمبر 2014). "معالج كابكوم كابوكي - مقدمة" . أركيد هاكر . مؤرشف من الأصل في 5 نوفمبر 2023.
  89. هولتز، هيرمان (1985). محطات عمل الحاسوب . تشابمان وهول. ص 223. ISBN  978-0-412-00491-9واستمر نظام CP/M في الهيمنة على عالم الحواسيب الصغيرة ذات 8 بت .
  90. دفوراك، جون سي. (10 مايو 1982). "بعد نظام التشغيل CP/M، قد تقود أنظمة التشغيل الموجهة للكائنات المجال" . إنفوورلد . المجلد 4، العدد 18. مجموعة إنفوورلد الإعلامية. ص 20. الرقم الدولي الموحد للدوريات 0199-6649 . مؤرشف من الأصل في 6 يناير 2024. لا تزال فكرة نظام التشغيل العام في مهدها. وقد بدأت في نواحٍ عديدة مع نظام التشغيل CP/M ومجموعة أجهزة الكمبيوتر المبكرة من طراز 8080 وZ80.    
  91. ستينجل، ستيفن. "أوترونا أتاشي" . متحف ستيف للحواسيب القديمة . مؤرشف من الأصل في 27 ديسمبر 2023. تم الاطلاع عليه في 5 مارس 2019 .
  92. "دليل شارب PC-1500 المرجعي التقني" (ملف PDF) . مؤرشف (ملف PDF) من الأصل في 5 نوفمبر 2023.
  93. "حاسوب الفقراء المحمول" . كتب جوجل . مجلة Popular Mechanics، أبريل 1991، صفحة 120. أبريل 1991. تم الاطلاع عليه في 11 أبريل 2018 .
  94. "ليزر بي سي 4" . متحف الحواسيب القديمة . مؤرشف من الأصل في 5 نوفمبر 2023. تم الاطلاع عليه في 11 أبريل 2018 .
  95. "جهاز الليزر PC5 من VTech" . larwe.com . مؤرشف من الأصل في 5 نوفمبر 2023. تم الاطلاع عليه في 11 أبريل 2018 .
  96. "Laser PC6" . Perfect Solutions.com . Perfect Solutions. مؤرشف من الأصل بتاريخ 21 مايو 2018. تم الاطلاع عليه بتاريخ 11 أبريل 2018 .
  97. "تطوير محطة البريد" . Fybertech.net . مؤرشف من الأصل في 6 يناير 2024. تم الاطلاع عليه في 18 أبريل 2021 .
  98. وورنر، يورغ. "آلة حاسبة تكساس إنسترومنتس PS-6200" . متحف داتاماث للحاسبات . مؤرشف من الأصل في 5 نوفمبر 2023. تم الاطلاع عليه في 18 يونيو 2019 .
  99. وورنر، يورغ. "تكساس إنسترومنتس بوكيت ميت 100" . متحف داتاماث للحاسبات . مؤرشف من الأصل في 5 نوفمبر 2023. تم الاطلاع عليه في 18 يونيو 2019 .
  100. إيان ر. سنكلير (2000). دليل عملي للإلكترونيات ( الطبعة الخامسة). أكسفورد، إنجلترا: نيونس. ص 204. ISBN   978-0-7506-4585-0LCCN 00502236 . OCLC 42701044 .​  
  101. "أجهزة توليف الصوت الكلاسيكية من غوردون ريد - سيكوينشال سيركتس بروفيت 5 وبروفيت 10" . gordonreid.co.uk . 1999. مؤرشف من الأصل في 5 نوفمبر 2023.
  102. فابيو، آدم (19 مارس 2014). "بروفيت 600: جهاز توليف موسيقي كلاسيكي يحصل على ترقية للمعالج" . مؤرشف من الأصل في 5 نوفمبر 2023.
  103. كيبل، روب (سبتمبر 2002). "30 عامًا من إيمو" . ساوند أون ساوند . مجموعة منشورات SOS . تم الاسترجاع في 10 يناير 2025 .
  104. "إنشاء عرض توضيحي لهاتف قديم - AONDEMO" . habr.com . 29 يناير 2020. مؤرشف من الأصل في 5 نوفمبر 2023.

مصادر

للمزيد من القراءة

أوراق البيانات والكتيبات
كتب الأجهزة
  • بناء حاسوبك الخاص بمعالج Z80 - إرشادات التصميم وملاحظات التطبيق ؛ الطبعة الأولى؛ ستيف سيارسيا ؛ بايت بوكس؛ 332 صفحة؛ 1981؛ رقم ISBN 978-0070109629. (أرشيف)
  • المعالج الدقيق Z80 - البنية، والربط البيني، والبرمجة، والتصميم ؛ الطبعة الأولى؛ راميش غاونكار؛ ماكميلان؛ 674 صفحة؛ 1988؛ رقم ISBN 978-0675205405. (أرشيف)
  • دليل مستخدم Z80 - تعريفات الدبابيس، إشارات التحكم، الأجهزة الطرفية، والمزيد ؛ الطبعة الأولى؛ جوزيف كار؛ ريستون؛ 338 صفحة؛ 1980؛ ISBN 978-0835995177. (أرشيف)
  • تقنيات الربط البيني للمعالجات الدقيقة ؛ الطبعة الثالثة؛ رودناي زاكس وأوستن ليسيا؛ سيبكس؛ 466 صفحة؛ 1979؛ رقم ISBN 978-0-89588-029-1. (أرشيف)
كتب البرمجيات
  • برمجة Z80 ; الطبعة الثالثة؛ رودناي زاكس؛ سايبكس. 630 صفحة؛ 1980; رقم ISBN 978-0895880949. (أرشيف)
  • برمجة لغة التجميع Z80 ؛ الطبعة الأولى؛ لانس ليفينثال؛ أوزبورن/ماكجرو هيل؛ 642 صفحة؛ 1979؛ رقم ISBN 978-0931988219. (أرشيف)
  • لغة التجميع 8080/Z80 - تقنيات لتحسين البرمجة ؛ الطبعة الأولى؛ آلان ميلر؛ جون وايلي وأولاده؛ 332 صفحة؛ 1981؛ رقم ISBN 978-0471081241. (أرشيف)
  • برمجة لغة التجميع Z80 و8080 ؛ الطبعة الأولى؛ كاثي سبراكلين؛ هايدن؛ 180 صفحة؛ 1979؛ رقم ISBN 978-0810451674. (أرشيف)
  • البرمجة العملية للحواسيب الصغيرة - Z80 - بما في ذلك مصدر المُجمِّع المُقيم وشاشة تصحيح الأخطاء ؛ الطبعة الأولى؛ والتر ويلر؛ نورثرن تكنولوجي؛ 501 صفحة؛ 1978؛ ISBN 978-0930594053. (أرشيف)
  • إجراءات لغة التجميع Z80 الفرعية ؛ الطبعة الأولى؛ لانس ليفينثال ووينثروب سافيل؛ أوزبورن/ماكجرو هيل؛ 512 صفحة؛ 1983؛ رقم ISBN 978-0931988912. (أرشيف)
  • Z80 غير الموثق موثق ؛ شون يونغ؛ الإصدار 0.91؛ 52 صفحة؛ 2005. (أرشيف)
بطاقات مرجعية
  • بطاقة مرجعية للمعالج الدقيق Z80 ؛ شيرلي ونانوس؛ أنظمة نانوس؛ 16 صفحة؛ 1981. (أرشيف)
  • بطاقة مرجعية فورية للمعالج الدقيق Z80 ؛ جيمس لويس؛ مايكرو لوجيك؛ صفحتان؛ 1981. (أرشيف)

المحاكيات / أجهزة المحاكاة:

المجالس