COP400

تُعدّ عائلة COP400 أو COP II عائلة من المتحكمات الدقيقة ذات 4 بتات، طرحتها شركة ناشيونال سيميكوندكتور عام 1977 كمنتج لاحق لمتحكمها الدقيق الأصلي PMOS COP. [ 1 ] تُعتبر أفراد عائلة COP400 حواسيب دقيقة متكاملة تحتوي على توقيت داخلي، ومنطق، وذاكرة قراءة فقط (ROM)، وذاكرة وصول عشوائي (RAM)، ووحدات إدخال/إخراج، وهي ضرورية لتنفيذ وحدات تحكم مخصصة. [ 2 ] قامت شركة ويسترن ديجيتال بتوريد بعض أجهزة COP400 كعائلة WD4200. [ 3 ] [ 4 ] في الاتحاد السوفيتي، تم تصنيع العديد من المتحكمات الدقيقة COP400 ضمن سلسلة 1820 (مثل COP402 الذي يحمل التسمية КР1820ВЕ1 ). [ 5 ]

تُصنع وحدة COP400 بتقنية CMOS أو تقنية MOS ذات البوابة السيليكونية من النوع N. وكانت تُعبأ عادةً في حزم DIP ذات 24 أو 28 طرفًا . يبلغ زمن دورة التعليمات للإصدارات الأسرع من هذه العائلة 4 ميكروثانية. وقد وفرت عائلة COP400 خيارات متعددة للذاكرة وتوزيع الأطراف.

ومن بين المنتجات البارزة التي استخدمت رقائق عائلة COP400، نجد Apple Lisa وألعاب Milton Bradley و Mattel الإلكترونية، و Coleco Head to Head Basketball، و Grundy Newbrain ، وغيرها.

ذاكرة

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

صورة لشريحة COP410L من شركة ناشيونال سيميكوندكتور. 512 بايت من ذاكرة القراءة فقط (ROM) في الزاوية العلوية اليسرى، و128 بت من ذاكرة الوصول العشوائي (RAM) في الزاوية العلوية اليمنى. انقر للتكبير.

ذاكرة للقراءة فقط

تتكون ذاكرة البرنامج من ذاكرة قراءة فقط (ROM) بسعة 512 أو 1024 أو 2048 × 8 بت. قد تحتوي بايتات ذاكرة القراءة فقط على تعليمات البرنامج، أو بيانات البرنامج، أو مؤشرات عناوين القفز. ونظرًا للخصائص المميزة المرتبطة بتعليمات JP وJSRP، غالبًا ما تُقسّم ذاكرة القراءة فقط إلى صفحات، كل صفحة منها 64 بايت. كذلك، وبسبب العمليات الفريدة التي تُنفذها تعليمات LQID وJID، تُقسّم صفحات ذاكرة القراءة فقط أحيانًا إلى كتل، كل كتلة منها 256 بايت.

كبش

تتكون ذاكرة البيانات من ذاكرة وصول عشوائي (RAM) بسعة 32 أو 64 أو 128 × 4 بت، مُنظمة في عدة سجلات بيانات، كل منها يحتوي على 16 رقمًا من 4 بت. يتم التحكم في عناوين ذاكرة الوصول العشوائي باستخدام السجل B ذي 6 أو 7 بتات، والذي يُستخدم كمؤشر. تُحدد البتات العليا (Br) من السجل B أحد سجلات البيانات الأربعة أو الثمانية، بينما تُحدد البتات الأربعة السفلى (Bd) أحد الأرقام الستة عشر من 4 بتات في سجل البيانات المُحدد. عادةً ما يتم تحميل محتويات الرقم ذي 4 بتات في ذاكرة الوصول العشوائي، الذي يُشير إليه السجل B، في السجل A، أو تبادلها معه، أو إجراء عمليات عليها.

سجلات وحدة المعالجة المركزية

يُظهر الرسم التخطيطي تكوين السجلات لأفراد عائلة COP400 ذوي سعة ذاكرة القراءة فقط (ROM) القصوى (2048 × 8 بت) وذاكرة الوصول العشوائي (RAM) القصوى (128 × 4 بت). أما أفراد العائلة الذين يمتلكون 512 أو 1024 بايت من ذاكرة القراءة فقط، فسيكون لديهم سجل عداد (PC) من 9 أو 10 بت فقط. بينما الأفراد الذين يمتلكون 64 أو 32 موقعًا لذاكرة الوصول العشوائي (RAM)، فسيكون لديهم سجل Br من 2 بت فقط. [ 6 ]

يُعدّ المسجل A ذو الأربع بتات (المُجمِّع) مسجل المصدر والوجهة لمعظم عمليات الحساب والمنطق والوصول إلى ذاكرة البيانات. كما يُمكن استخدامه لتحميل جزئي Br وBd من المسجل B، ولتحميل وإدخال 4 بتات من بيانات المزلاج Q ذي الثماني بتات، ولإدخال 4 بتات من منفذ L ذي الثماني بتات، ولإجراء عمليات تبادل البيانات مع مسجل SIO.

عند نقل البيانات إلى سجل 8 بت (مثل Q أو منفذ إدخال/إخراج 8 بت)، يتم أخذ أقل 4 بت أهمية من RAM(B)، وهو موقع RAM الذي يشير إليه السجل B، ويتم أخذ أكثر 4 بت أهمية من A. عند نقل البيانات من سجل 8 بت، يتم عكس النصفين: يتم كتابة أقل 4 بت أهمية إلى A، ويتم كتابة أكثر 4 بت أهمية إلى RAM(B).

تقوم وحدة الحساب والمنطق ذات 4 بتات بتنفيذ وظائف الحساب والمنطق، وتخزين النتائج في A. تقوم عمليات ASC و CASC بإخراج حمل إلى سجل C ذي 1 بت، والذي يستخدم في أغلب الأحيان للإشارة إلى تجاوز الحساب.

يتمّ عنونة جميع وحدات ذاكرة القراءة فقط (ROM) عبر مسجل عداد البرنامج (PC) ذي 9 أو 10 أو 11 بت. تحدد قيمته الثنائية أحد البايتات الموجودة في ذاكرة القراءة فقط، وعادةً ما يكون بايت تعليمة البرنامج التالية. تُزاد قيمة عداد البرنامج تلقائيًا بمقدار 1 قبل تنفيذ التعليمة الحالية للإشارة إلى موقع ذاكرة القراءة فقط التسلسلي التالي. يضمن هذا أنه عند تنفيذ استدعاء روتين فرعي، يكون عداد البرنامج المحفوظ هو عنوان التعليمة التالية، وعند تنفيذ أي عملية نقل تحكم، يُستخدم عنوان الهدف المكتوب في عداد البرنامج دون تعديل. يعود عداد البرنامج تلقائيًا للإشارة إلى صفحة 64 بايت التالية أو كتلة 256 بايت التالية من ذاكرة البرنامج. تُستخدم البتات العليا من عداد البرنامج أيضًا لإكمال عناوين 8 بت المحددة بواسطة تعليمات JID وLQID.

تُنفَّذ ثلاثة مستويات من الروتينات الفرعية بواسطة سجلات حفظ الروتينات الفرعية، وهي SA وSB وSC، مما يوفر مكدس استدعاءات الأجهزة وفقًا لأسلوب "آخر ما يدخل، أول ما يخرج" (LIFO) . بعض التطبيقات لا تحتوي على سجل SC. من تفاصيل التنفيذ أن تعليمة LQID تستخدم مستوى واحدًا من المكدس. يُنسخ عنوان ROM المراد جلبه إلى سجل PC، ويُستخدم المكدس لحفظ قيمته مؤقتًا، لذا فإن LQID لها تأثير جانبي يتمثل في استبدال SC بنسخة من SB.

سجلات ومنافذ الإدخال/الإخراج

لا توجد أرقام منافذ أو عناوين ذاكرة مرتبطة بأجهزة الإدخال/الإخراج COP400. تتم الإشارة إلى جميع سجلات ومنافذ الإدخال/الإخراج الفعلية بواسطة لغة التجميع COP400 مباشرةً بالاسم.

خط الأساس

تُنفذ جميع أجهزة عائلة COP400 تقريبًا ما يلي: [ 6 ]

  • تتوفر أربعة مداخل للأغراض العامة، من IN 0 إلى IN 3. لا تحتوي العبوات ذات 24 طرفًا على هذه المداخل .
  • يُوفّر السجل D أربعة مخارج للأغراض العامة، وهو سجل الوجهة لمحتويات السجل Bd ذات الأربع بتات. يُفيد السجل D في مزامنة ما يصل إلى 16 جهازًا خارجيًا مرتبطًا بذاكرة الوصول العشوائي (RAM) التي يُشير إليها السجل B.
  • يحتوي سجل G على أربعة منافذ إدخال/إخراج ثنائية الاتجاه للأغراض العامة.
  • يُعدّ سجل Q سجلاً داخلياً مُثبّتاً، ذو 8 بتات، يُستخدم لتخزين البيانات المُحمّلة من وإلى ذاكرة الوصول العشوائي (RAM) (B) وذاكرة الوصول العشوائي (RAM) (A)، بالإضافة إلى بيانات البرنامج ذات 8 بتات من ذاكرة القراءة فقط (ROM). تُخرَج محتوياته إلى منافذ L عند تفعيل مُشغّلات L تحت تحكّم البرنامج. كما يُمكن قراءة محتويات L مباشرةً إلى A وذاكرة الوصول العشوائي (RAM) (B).
  • يعمل سجل SIO كمسجل إزاحة تسلسلي للإدخال/الإخراج ذي 4 بتات، أو كعداد ثنائي، وذلك بحسب محتويات سجل EN. يمكن تبادل بيانات SIO بشكل متزامن مع A، مما يسمح له بإدخال أو إخراج دفق بيانات تسلسلي مستمر. وعندما لا يُستخدم كمسجل إزاحة أو عداد، فإنه يُمكنه تخزين محتويات A.
  • يُعدّ سجل EN سجلاً داخلياً مكوناً من 4 بتات، يتم تحميله تحت سيطرة البرنامج بواسطة تعليمة LEI. وتحدد حالة هذا السجل أو تلغي تحديد ميزة معينة مرتبطة بكل بت.
  • على الرغم من عدم إمكانية الوصول المباشر إليه برمجياً، يقوم عداد قاعدة الوقت ذو العشر بتات بتقسيم تردد دورة التعليمات على 1024، مُفعِّلاً علامة عند حدوث تجاوز. تختبر تعليمة SKT وجود هذه العلامة (وإذا كانت مُفعَّلة، تُعيد ضبطها) مما يسمح للمبرمج بتنفيذ إجراءات المؤقت. بعض أجهزة عائلة COP400 منخفضة التكلفة لا تحتوي على عداد قاعدة الوقت هذا ولا على تعليمة SKT. بينما تستطيع بعض أجهزة COP400 عالية التكلفة قراءة وكتابة البتات الثمانية العليا من المؤقت.

فاخر

توجد بعض الطرازات المتطورة من عائلة COP400، مثل COP440 وCOP2440، والتي تحتوي على 40 طرفًا. وتحتوي هذه الطرازات على سجلات ومنافذ إضافية: [ 7 ]

  • المنفذ R هو منفذ إدخال/إخراج ثنائي الاتجاه إضافي ذو 8 بتات، مشابه للمنفذ Q. يحتوي المنفذ R على دوائر تثبيت ومحركات. تُخزَّن البيانات المراد إخراجها في سجل R. مسار الإدخال من الأطراف إلى المُراكم وذاكرة الوصول العشوائي (RAM). لا تُخزَّن بيانات الإدخال عند أطراف R في سجل R بواسطة أي إشارة خارجية، بل يتم ذلك بشكل غير مباشر بواسطة البرنامج. يمكن وضع محركات R، مثل محركات L، في حالة مقاومة عالية.
  • تحتوي هذه الأجهزة على منفذ إضافي ثنائي الاتجاه رباعي البتات، وهو منفذ H. يُعد منفذ H نسخة طبق الأصل من منفذ G باستثناء أنه لا يمكن اختباره مباشرةً.
  • تم توسيع سجل EN إلى 8 بتات. يحدد EN 4 وEN 5 مصادر المقاطعة. يحدد EN 6 مصدر عداد T. يتحكم EN 7 في مشغلات الإخراج لمنفذ R. تتم كتابة سجل EN ذي 8 بتات باستخدام تعليمة CAME وقراءته باستخدام تعليمة CEMA. يمكن كتابة البتات الأربعة الأدنى باستخدام تعليمة LEI.

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

صُممت عائلة معالجات COP400 لتكون ذات شفرة مضغوطة للغاية. جميع التعليمات تتكون من بايت واحد أو بايتين. التعليمات الأكثر استخدامًا تتكون من بايت واحد. في بعض الحالات، توجد صيغ خاصة من بايت واحد للتعليمات التي تتكون من بايتين. من بين الميزات التي يمكن استخدامها لجعل شفرة الكائن أكثر ضغطًا ما يلي:

  • تقوم تعليمة LBI بتحميل قيمة فورية في المسجل B ذي السبعة بتات. تأخذ هذه التعليمة، بصيغتها العامة، بايتين. يوجد أيضًا إصدار من LBI ببايت واحد، حيث يمكنه فقط تعيين قيمة Br إلى 0، 1، 2، و3، وقيمة Bd إلى 9، 10، 11، 12، 13، 14، 15، و0 (عشري). يستطيع إصدار LBI ذو البايت الواحد الوصول إلى 32 موقعًا في ذاكرة الوصول العشوائي (RAM).
  • يمكن تكديس تعليمات LBI المتعددة على التوالي. سيتم تنفيذ تعليمة LBI الأولى فقط. أما تعليمات LBI اللاحقة فستُنفذ كتعليمات NOP . يتيح ذلك نقاط دخول متعددة بعناوين بداية مختلفة لروتين مشترك.
  • JSR، في صيغة تفرع الروتين الفرعي العامة، عبارة عن بايتين ويمكنه الوصول إلى أي موقع في الذاكرة مباشرةً. أما JSRP فهو تفرع روتين فرعي أحادي البايت، ولا يمكنه الوصول إلا إلى المواقع الموجودة في الصفحة الثالثة التي تبلغ مساحتها 64 بايت. تُسمى هذه الصفحة صفحة الروتين الفرعي أو الصفحة 2، ويتم ترقيمها من الصفر. لا يمكن كتابة JSRP من داخل الصفحتين 2 أو 3.
  • تُعدّ تعليمة JMP، في شكلها العام للتفرع، تعليمة ثنائية البايت، وتتيح الوصول المباشر إلى أي موقع في الذاكرة. أما تعليمة JP فهي تعليمة أحادية البايت، وتتيح الوصول إلى أي موقع في الصفحة الحالية ذات الـ 64 بايت. تبقى البتات العليا من عداد البرنامج (PC) دون تغيير. إذا نُفّذت تعليمة JP داخل الصفحة 2 أو 3، فإنها تستطيع الوصول إلى أي من العناوين الـ 128 في الصفحتين 2 و3. يُفيد هذا في إنشاء نقطة دخول JSRP أحادية البايت في الصفحة 2، والتي بدورها تُتيح التفرع إلى روتين فرعي في الصفحة 3 باستخدام تعليمة JP أحادية البايت.
  • يمكن استخدام المسجل B للإشارة إلى ما يصل إلى أربع سلاسل من ذاكرة الوصول العشوائي (RAM) مع تكلفة إضافية ضئيلة. تُجري تعليمات الوصول إلى الذاكرة LD وX وXIS وXDS عملية XOR بين البتتين الأدنى من Br وقيمة فورية مكونة من بتين. يسمح هذا بتحويل جزء المسجل B (Br) إلى إحدى سلاسل الأرقام الأخرى التي تشترك في نفس عنوان الرقم (Bd).
  • يمكن استخدام جزء السجل Bd كمؤشر للذاكرة وعداد للحلقة في آنٍ واحد. ستتخطى تعليمة XIS إذا تجاوز Bd، بعد الزيادة، الحد المسموح به إلى الصفر، مما يؤدي إلى الخروج من الحلقة. وبالمثل، ستتخطى تعليمة XDS إذا انخفض Bd، بعد النقصان، إلى 15 (عشري).
مجموعة تعليمات عائلة COP400
رمز العمليةالمعاملذاكريوصفيتخطى
76543210
00000000CLRAأ ← ٠
000ب ٠00ب 11SKMBZ bتجاهل إذا كانت بتة الذاكرة صفرًاRAM(B) b = 0
00000010XORأ ← أ رام (ب)
00010000CASCA ← ~A + RAM(B) + C، C ← Carryيحمل
00010010XABRA ↔ Br, A 3 ← 0
00100000SKCج = 1
00100001SKEأ = رام(ب)
00100010SCج ← 1
001000110rrrddddLDD r,dA ← RAM(r,d)
001000111rrrddddXAD r,dA ↔ RAM(r,d)
00110000مركز الجراحة التلطيفيةA ← A + RAM(B) + C، C ← Carryيحمل
00110001يضيفأ ← أ +رام (ب)
00110010RCج ← ٠
00110011رمز العمليةالبادئة 33Hانظر الجدول أدناه للاطلاع على التعليمات المتعلقة بهذا البادئة
00ر0100XIS rA ↔ RAM(B), Br ← Br r, Bd ← Bd + 1Bd = 0
00ر0101LD rA ← RAM(B), Br ← Br r
00ر0110X rA ↔ RAM(B), Br ← Br r
00ر0111XDS rA ↔ RAM(B), Br ← Br r, Bd ← Bd - 1Bd = 15
00ر1دLBI r,dBr ← r, Bd ← (d+9)∧15 (Br = 0 3, Bd = 9 15, 0)لونغ بيتش التالي
01000000كمبيوترأ ← ~أ
01000001إس كي تيتجاوز عند تجاوز المؤقتمؤقت
0100نرنمينبيRAM(B) n ← 0 (0, 1, 2, 3 encoded 0xC 0x5 0x2 0x3)
0100نSMB nRAM(B) n ← 1 (0, 1, 2, 3 encoded 0xD 0x7 0x6 0xB)
01000100برنامج العمل الوطنيلا توجد عملية
01001000متقاعدالكمبيوتر الشخصي (PC ← SA، SA ← SB، SB ← SC)
01001001ريتسكبوب بي سيدائماً
01001010شركة ADTأ ← أ + ١٠
01001110اتفاقية المفاوضة الجماعيةأ ← ب د
01001111XASأ ↔ إس آي أو، إس كيه ← سي
01010000سيارة أجرةBd ← A
0101yAISC yA ← A + y (1 ≤ y ≤ 15، C دون تغيير)يحمل
01100أدهيأدلوJMP aPC[10:8] ← addhi, PC[7:0] ← addlo
01101أدهيأدلوJSR aدفع الكمبيوتر الشخصي، الكمبيوتر الشخصي [10:8] ← إضافة هـ، الكمبيوتر الشخصي [7:0] ← إضافة لـ
0111ySTII yRAM(B) ← y, Bd ← Bd + 1
1العنوانجي بي أإذا كان PC[10:7] = 0001: PC[6:0] ← العنوان
10العنوانJSRP aإذا كان PC[10:7] ≠ 0001: ادفع PC، PC[10:6] ← 00010، PC[5:0] ← العنوان
10111111LQIDQ ← ROM(PC[10:8], A, RAM(B)), SC ← SB
11العنوانجي بي أإذا كان PC[10:7] ≠ 0001: PC[5:0] ← العنوان
11111111جيدPC[7:0] ← ROM(PC[10:8], A, RAM(B))
76543210المعاملذاكريوصفيتخطى

رموز العمليات المكونة من بايتين والمسبوقة بـ 33H (يعتمد الدعم على نوع وحدة المعالجة المركزية)
رمز العمليةذاكريوصفيتخطىأنواع وحدات المعالجة المركزية
76543210
000ب ٠00ب 11SKGBZ bG b = 0الجميع
00001011زانA[1:0] ↔ N, A[2:3] ← 03
00001111CEMAذاكرة الوصول العشوائي (ب) ← إن[7:4]، أ ← إن[3:0]3
00011001غطاءRAM(B), A ← ROM(PC[10:8], A, RAM(B))3
00011010أوA ← A ∨ RAM(B)3
00011100SKSZSIO = 03
00011111أتىEN[7:4] ← أ، EN[3:0] ← ذاكرة الوصول العشوائي (ب)3
00100001SKGZG = 0الجميع
00101000ININأ ← في2، 3
00101001INILأ ← إيل 3 ، 1، 0، إيل 0 أو أ ← إيل 3 ، ككو، 0، إيل 02، 3
00101010عملأ ← جالجميع
00101011INHأ ← ح3
00101100CQMARAM(B) ← Q[7:4], A ← Q[3:0]2، 3
00101101الروبية الهنديةRAM(B) ← R[7:4], A ← R[3:0]3
00101110INLRAM(B) ← L[7:4], A ← L[3:0]الجميع
00101111CTMARAM(B) ← T[7:4], A ← T[3:0]3
00111000وقفأوقف العمليةCMOS
00111001هو - هيتوقف حتى يفيض المؤقتCMOS
00111010يا إلهيG ← RAM(B)الجميع
00111011OMHH ← RAM(B)3
00111100كامكيوQ[7:4] ← A, Q[3:0] ← RAM(B)الجميع
00111101كامرR[7:4] ← A, R[3:0] ← RAM(B)3
00111110نظام التشخيص على متن المركبة (OBD)D ← Bdالجميع
00111111كامتT[7:4] ← A, T[3:0] ← RAM(B)3
0101yأو جي آي وايG ← y2، 3
0110yلي وايEN ← yالجميع
1ردLBI r,dBr ← r, Bd ← dلونغ بيتش التالي2، 3
76543210ذاكريوصفيتخطىالأنواع

مدعوم

الأنواع المدعومة: النوع 1 منخفض التكلفة للغاية، مثل COP410. النوع 2، مثل COP420، هو الأكثر شيوعًا. النوع 3 عادةً ما يحتوي على موارد لدعم 40 طرفًا حتى لو لم تكن العبوة تحتوي على 40 طرفًا. النوع 4 غير معروض لعدم وجود دليل على إنتاجه. تشمل تقنية CMOS الأنواع التالية: COP424C، COP425C، COP426C، COP444C، COP445C، COP404C.

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

يوضح هذا المثال البرمجي العديد من ميزات توفير المساحة في مجموعة التعليمات:

  • تعليمات LBI أحادية البايت
  • تعليمات LBI متعددة متسلسلة تُنشئ نقاط دخول متعددة
  • يتم إجراء عملية XOR بين LD و Br بحيث يتم قلب B إلى الوجهة، ويتم إجراء عملية XOR بين XIS و B بحيث يتم قلب B مرة أخرى إلى المصدر.
  • يقوم برنامج Bd بمشاركة المؤشر ووظائف عداد الحلقات عبر وظيفة التخطي في XIS
  • قفزة بايت واحد، JP
 040 09 041 19 042 2F 043 15  044 14 045 C3 046 48 
نسخ كتلة من الذاكرة من موقع إلى آخر. توجد ثلاث نقاط دخول: copyA و copyB و copyC. تُعبّر قيم تعليمات LBI كما يلي : LBI Br, Bd. copyA: LBI 0 , 10 ؛ نسخ 6 أنيبلات بدءًا من 0.10 إلى 1.10. copyB: LBI 1 , 10 ؛ نسخ 6 أنيبلات بدءًا من 1.10 إلى 0.10. copyC: LBI 2 , 0 ؛ نسخ 16 أنيبلة بدءًا من 2.0 إلى 3.0.حلقة: LD 1 ; تحميل المصدر في A. XOR Br مع 1 للحصول على الوجهة XIS 1 ; حفظ A في الوجهة. زيادة Bd. XOR Br مع 1 للحصول على المصدر JP loop ; التكرار حتى يتجاوز Bd موقع الرقم الأخير RET

مقاطعة

تدعم أجهزة COP400 المبكرة ذات 28 طرفًا أو أكثر مقاطعة واحدة . يُستخدم خط IN 1 كمدخل للمقاطعة. يتم تفعيل المقاطعة بتعيين البت 1 من سجل EN إلى 1 باستخدام تعليمة LEI. عند تلقي نبضة منخفضة لمدة دورتين تعليميتين على الأقل على IN 1، تُستكمل جميع تعليمات نقل التحكم، مثل JP، وتُنفذ جميع تعليمات LBI المتسلسلة. ثم يُدفع عداد البرنامج (PC) إلى مكدس الروتينات الفرعية، وينتقل التحكم إلى معالج المقاطعة عند العنوان 0xFF. لا يمكن استدعاء أي روتينات فرعية في روتين خدمة المقاطعة على الأجهزة المزودة بمكدس مادي. [ 6 ] ومن المثير للاهتمام أن الأجهزة اللاحقة، مثل COP440، تدعم أربعة مصادر مقاطعة وروتينين للخدمة، ولكن لا يمكن تحديد سوى مصدر مقاطعة واحد في كل مرة. تُدعم الروتينات الفرعية داخل روتينات خدمة المقاطعة على الأجهزة المزودة بمؤشر مكدس.

التوسعات المعمارية

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

معالج مزدوج

أعلنت شركة ناشيونال سيميكوندكتور عام 1981 عن إصدارات "معالجين مركزيين" من معالج COP400. تحتوي هذه المعالجات أحادية الشريحة على معالجين مركزيين مستقلين ظاهريًا، يتشاركان التعليمات والذاكرة ومعظم أجهزة الإدخال/الإخراج. في الواقع، لا يتمتع المعالجان باستقلالية كاملة، بل يتشاركان موارد الأجهزة على غرار معالجات إنتل المزودة بتقنية Hyper-Threading (HTT). وكما هو الحال في HTT، يعمل إصدار المعالجين المركزيين عن طريق تكرار أقسام معينة من المعالج - تلك التي تخزن الحالة المعمارية - دون تكرار موارد التنفيذ الرئيسية مثل وحدة الحساب والمنطق (ALU ) والناقلات والذاكرة. يتم إنشاء حالات معمارية منفصلة لكل من المعالجين الافتراضيين من خلال تكرار A (المراكم)، وB (سجلات المؤشر)، وC (أعلام الحمل)، وN (مؤشرات المكدس)، وPC (عدادات البرنامج). [ 6 ]

عند إلغاء تأكيد إعادة الضبط، يبدأ كلا المعالجين من الموقع 0 الذي يحتوي على تعليمة CLRA، ثم يقفز أحد المعالجين إلى الموقع 401 (سداسي عشري) متبوعًا بدورة تعليمات لاحقة يقوم فيها المعالج الثاني بتنفيذ الموقع 1. بعد ذلك، يقوم المعالجان بتنفيذ بايت واحد من التعليمات البرمجية بالتناوب.

عند أقصى تردد للساعة، يكون وقت تنفيذ التعليمات (تعليمات بايت واحد) لكل معالج 4 ميكروثانية، وبالتالي فإن وقت دورة التعليمات لأي من المعالجين هو ضعف هذا المقدار، أي 8 ميكروثانية.

تتضمن بعض إصدارات المعالجات المزدوجة COP2440N ذو 40 سنًا، وCOP2441N ذو 28 سنًا، وCOP2442N ذو 24 سنًا.

مكدس الإرجاع في ذاكرة الوصول العشوائي

تضمنت أجهزة COP400 السابقة مكدس إرجاع مخصصًا للأجهزة من مستويين أو ثلاثة. أما الأجهزة اللاحقة، مثل COP440، فتتميز بمكدس إرجاع من أربعة مستويات مُنفذ باستخدام مؤشر مكدس ثنائي البت وذاكرة وصول عشوائي (RAM). وتحتوي الإصدارات ثنائية المعالج على مكدسَي إرجاع منفصلين من أربعة مستويات، مُنفذين باستخدام مؤشرَي مكدس ثنائيي البت ومنطقتين مختلفتين من ذاكرة الوصول العشوائي (RAM).

مساحة عناوين أكبر

تدعم مجموعة تعليمات COP400 الأساسية عناوين ذاكرة القراءة فقط (ROM) تصل إلى 11 بت (2048 بايت)، بينما يبلغ الحد الأقصى لعناوين البيانات 7 بت (128 موقعًا). وقد وسّعت أجهزة المجموعة الرابعة (Group 4) حد الذاكرة بإضافة تعليمات JMP وJSR وLBI ثلاثية البايت ذات عدد أكبر من بتات العناوين. تدعم هذه الأجهزة عناوين ذاكرة القراءة فقط (ROM) تصل إلى 15 بت (32768 بايت)، بينما يبلغ الحد الأقصى لعناوين البيانات 9 بت (512 موقعًا). تشمل الأجهزة التي تدعم هذه التعليمات COP408 وCOP484 وCOP485 وCOP409. من غير الواضح ما إذا كان قد تم إنتاج أي من أجهزة المجموعة الرابعة هذه.

التطبيقات

تم استخدام COP420C في مودم DBT-03 بسرعة 1200 باود
لوحة الإدخال/الإخراج لجهاز Apple Lisa . شريحة COP421 هي الشريحة ذات 24 طرفًا في الأسفل. انقر للتكبير.
  • استخدمت Apple Lisa شريحة COP421 للتحكم في لوحة المفاتيح والماوس وساعة الوقت الحقيقي ومفتاح الطاقة الناعم. وتتحكم شريحة COP421 ثانية في محرك دوران القرص الصلب الخاص بجهاز Widget. [ 8 ]
  • استخدم العديد من المصنّعين تقنية COP400 في ألعابهم الإلكترونية المبكرة: [ 9 ]
    • COP410 و COP411، ذاكرة قراءة فقط 512 بايت، ذاكرة وصول عشوائي 32 × 4: مقابس Funtronics من Mattel ، ضوء أحمر ضوء أخضر، علامة، و Plus One.
    • COP420 وCOP421، ذاكرة قراءة فقط (ROM) سعة 1024 بايت، ذاكرة وصول عشوائي (RAM) سعة 64 × 4: لعبة ميلتون برادلي لايت فايت ولعبة السفينة الحربية الإلكترونية 1982. لعبة آينشتاين من شركة كاسل توي. لعبة كوليكو هيد تو هيد لكرة السلة. لعبة ناشونال سيميكوندكتور كويز كيد ريسر. لعبة إل جيه إن تويز المحدودة "لقد تلقيت ضربة من دجاجة".
    • COP444، ذاكرة قراءة فقط (ROM) سعة 2048 بايت، ذاكرة وصول عشوائي (RAM) سعة 128 × 4: Entex Space Invader. Mattel Dalla$، Texas Instruments My Little Computer. [ 10 ]
  • استخدمت شركة ويسترن ديجيتال جهاز WD4200 (COP420) كأساس لساعة الوقت WD2412 الخاصة بها. [ 11 ]
  • يستخدم جهاز الكمبيوتر Grundy Newbrain وحدة COP420 لإدارة لوحة المفاتيح، ووحدة الإدخال/الإخراج للشريط، وشاشة العرض الأبجدية الرقمية المدمجة ذات 16 حرفًا . [ 12 ]

الملكية الفكرية

وحدة التحكم الدقيقة T400 هي تطبيق مفتوح المصدر لوحدة التحكم الدقيقة COP400، مكتوب بلغة VHDL . تدعم هذه الوحدة أجهزة COP420/421 وCOP410L/411L. صُممت T400 لتكون بديلاً للشريحة الأصلية في أنظمة SoC لإعادة إنشاء الأنظمة القديمة. تم تطبيق T400 في العديد من عائلات FPGA . تتوفر T400 بموجب رخصة جنو العمومية العامة . [ 13 ]

منافس

يوجد برنامج محاكاة MAME مفتوح المصدر لعائلة COP400، بالإضافة إلى العديد من الألعاب المحمولة والآلات الحاسبة المتخصصة. [ 14 ] [ 15 ]

انظر أيضاً

  • مؤتمر الأطراف الثامن لشركة ناشيونال سيمي داكتور

مراجع

  1. "ناشيونال سيميكوندكتور: COP قبل COPS" . متحف CPUSHACK . 27 سبتمبر 2014. تم الاطلاع عليه بتاريخ 23 ديسمبر 2021 .
  2. دليل مستخدم عائلة المتحكمات الدقيقة COP400 COPS . شركة ناشيونال سيميكوندكتور . تم الاطلاع عليه بتاريخ 23 يونيو 2025 .
  3. "ويسترن ديجيتال ومؤتمر الأطراف" . متحف CPUSHACK . 2 أكتوبر 2015. تم الاطلاع عليه بتاريخ 22 ديسمبر 2021 .
  4. "وحدات التحكم الدقيقة أحادية الشريحة من نوع N-Channel WD4200/WD4210" . تم الاطلاع عليه بتاريخ 23 ديسمبر 2021 .
  5. "المعالجات الدقيقة، ووحدات التحكم الدقيقة، ورقائق وحدة الفاصلة العائمة السوفيتية، ونظائرها الغربية" . www.cpu-world.com . تاريخ الاطلاع: 15 نوفمبر 2022 .
  6. 1 2 3 4 "كتاب بيانات وحدات التحكم الدقيقة COPS" . شركة ناشيونال سيميكوندكتور . تم الاطلاع عليه بتاريخ 19 يناير 2022 .
  7. 1 2 "دليل برمجة COPS (1985)" (ملف PDF) . الأرشيف الرقمي للتكنولوجيا القديمة . شركة ناشيونال سيميكوندكتور . تم الاطلاع عليه بتاريخ 23 ديسمبر 2021 .
  8. "Apple Lisa 341-0064A (COP421)" . Visual6502 . تم الاطلاع عليه بتاريخ 24 ديسمبر 2021 .
  9. "ناشيونال سيميكوندكتور COP400" . شون ريدل . تم الاطلاع عليه بتاريخ 24 ديسمبر 2021 .
  10. ويرنر، يورغ. "جهاز الكمبيوتر الصغير من تكساس إنسترومنتس" . متحف داتاماث للحاسبات . تم الاطلاع عليه بتاريخ 19 يونيو 2024 .
  11. "كتالوج المكونات لعام 1983" (ملف PDF) . ويسترن ديجيتال. صفحة 621. تم الاطلاع عليه بتاريخ 24 ديسمبر 2021 . 
  12. "معالج COP420 ذو 4 بت - نيوبرين" . تم الاطلاع عليه بتاريخ 30 ديسمبر 2021 .
  13. "وحدة التحكم الدقيقة T400 - تطبيق وحدة التحكم الدقيقة COP400 ذات 4 بت من شركة ناشيونال" . موقع All About Circuits . تاريخ الاسترجاع: 21 يونيو 2024 .
  14. "مستودع مكتبة COP400" . جيت هاب . تم الاطلاع عليه بتاريخ 23 أبريل 2022 .
  15. "Funjacks (مثال على لعبة محاكاة)" . قاعدة بيانات الألعاب . تم الاسترجاع في 23 أبريل 2022 .