رابط إلى الجزء 1في هذا الجزء ، سننظر في كيفية تنظيم AGC من منظور مبرمج. ترد قائمة المراجع والمصادر في نهاية الجزء الأول من المقال. تستند مواد هذا الجزء إلى مواد الكتاب [1].

تمثيل الأرقام في ذكرى AGC
يستخدم AGC كلمات مكونة من 15 بت ، مع إشارة في المركز 15. هناك أيضًا تفريغ مكافئ ، يتم تسجيله والتحكم فيه بواسطة الجهاز وشفاف تمامًا للبرنامج ، مع كل عملية قراءة وكتابة إلى الذاكرة.

يتم تقديم الأعداد الصحيحة في شكل "الجمع 1". كالتالي:
يتم تقديم الأرقام غير السالبة من 0 إلى 16383 في شكل رموز من 000 000 000 000 000 إلى 011 111 111 111 111 على التوالي.
يتم تكوين الأرقام السالبة عن طريق عكس الأرقام الموجبة ، أي -1 يمثل 111 111 111 111 111 ، وحتى -16383 ، ممثلة بالكود الثنائي 100،000،000،000،000.
تتم العمليات الحسابية على النحو التالي:
2: 000 000 000 000 010 -5: 111 111 111 111 010 111 111 111 111 100 (= -3)
تعد إضافة رقمين سالبين أكثر تعقيدًا إلى حد ما.
إذا أضفنا وفقًا للقواعد المعتادة ، فلن ينجح شيء:
-2: 111 111 111 111 101 -5: 111 111 111 111 010 111 111 111 110 111 (= -8)
ومع ذلك ، قد تلاحظ أن إضافة البتات الأكثر أهمية يولد بت حمل. نحتاج فقط إلى إضافة بت حمل للحصول على النتيجة الصحيحة:
-2: 111 111 111 111 101 -5: 111 111 111 111 010 111 111 111 110 111 (= -8) Carry 1 111 111 111 111 000 (= -7)
يمكنك أيضًا ملاحظة أن الصفر الإيجابي والسلبي ممكن في هذا النظام ، مما يخلق صعوبات إضافية للمبرمجين ، على سبيل المثال ، عند مقارنة نتيجة العملية مع الصفر.
يمكن أيضًا مراقبة تدفق البطارية خلال العمليات الحسابية ، والتي ستتم مناقشتها أدناه.
لا تدعم ACG إلا عددًا صحيحًا من العمليات الحسابية ولا يمكنها إجراء عمليات بأرقام حقيقية في الأجهزة ، ولكن يمكنها القيام بذلك في البرامج. يستخدم AGC تمثيل ثنائي عشري من أرقام 28 بت (9 منازل عشرية) ، والتي تشغل خليتي ذاكرة ، 14 بت لكل منهما. يتم استخدام أرقام العلامات أيضًا ، ويمكن أن يكون للكلمة المنخفضة والكلمة العالية علامة مختلفة! بمعنى أنه قد يكون هناك رقم ممثَّل ، على سبيل المثال ، +5 * 10000 + -5 * 100 = 49500. غريب ، لكن ممكن.
يتم تقديم المسافات والسرعات للحسابات في النظام المتري ، ولكن يتم عرض البيانات الخاصة بالطاقم في نظام المقاييس باللغة الإنجليزية (قدم ، إلخ).
شكل التعليماتنموذج الذاكرة
في الجزء السابق ، تم ذكر أن ذاكرة الكمبيوتر تنقسم إلى 2 Kslov RAM و 36 K ROM ROM. نظرًا لأن التعليمات لا تستغرق سوى 12 بتًا لقيمة العنوان ، يتم استخدام مبدأ تقسيم الذاكرة إلى البنوك. يستخدم سجل خاص للإشارة إلى البنك الحالي.
للتبديل إلى بنك ذاكرة جديد ، يتم استخدام الأمر "Transfer to New Bank" (TNB) ، والذي يؤدي ما يلي:
- نسخ السجل المصرفي الحالي ("البنك") إلى السجل "البنك المحفوظ"
- نسخ عنوان 12 بت من موقع الذاكرة التالي لأمر TNB إلى سجل "إرجاع العنوان"
- نقوم بتحميل عنوان البنك الجديد في سجل البنك ، ونقوم بتحميل الإزاحة المشار إليها بواسطة تعليمات TNB في عداد التعليمات.
سجلات
لدى AGC السجلات المعينة إلى مساحة العنوان. يشغلون أول 48 كلمة من الذاكرة الفعلية.
البطارية تحتل عنوان 0
8 .
يتم استخدام البطارية في معظم العمليات الحسابية والمنطقية (OR ، AND ، إلخ). على الرغم من أن AGC يعمل بكلمة مكونة من 15 بت ، إلا أن البطارية لديها سعة 16 بت ، لأنها تخزن تفريغ الفائض. عند تحميل البيانات في البطارية ، تقع في البتات السفلية ، حيث تحتوي البتة 14 على علامة الرقم. بعد إجراء العملية الحسابية ، إذا لم يحدث تجاوز السعة ، فإن البتة 15 ستحتوي ببساطة على نسخة من العلامة ، وهذه البتة غير مرئية للمبرمج. نسمي هذه الأرقام علامة كـ S1 و S2 ، على التوالي. إذا حدث تجاوز ، فلن يكون S1 و S2 متساويين. على الرغم من أن S2 bit لا تزال غير مرئية للمبرمج ، في AGC هناك ما يصل إلى طريقتين لضبط حالة الفائض.
أولاً ، عند حدوث تجاوز سعة ، يتم تعطيل المقاطعات تلقائيًا. إذا تمت معالجته في هذه اللحظة ، فيمكن أن يعيد تعيين هذا البت ، وهو أمر غير مرغوب فيه للغاية. لا يُسمح بالمقاطعات إلا عند مسح علامة تجاوز السعة. يتم إعادة تعيين العلم فقط عندما يتم تنظيف البطارية أو عند تحميل قيمة جديدة. للتحقق من علامة الفائض ، يمكن استخدام الأمر Transfer to Storage (حفظ التخزين) (TS) ، مما يحفظ قيمة البطارية في الذاكرة فقط إذا لم يكن هناك تجاوز ، وإذا حدث تجاوز أو زيادة ، فيمكن استبدال القيمة في البطارية بـ +1 أو -1 على التوالي. يتخطى الأمر TS أيضًا تعليمة البرنامج التالية في حالة حدوث تجاوز سعة. من المفترض أن يقوم المبرمج بكتابة الكود الذي يعالج التدفق الزائد ووضعه من خلال أمر واحد من TS ، وبعد TS مباشرة أدخل الانتقال إلى التعليمات بعد معالج الفائض.
سجل L - العنوان 00001
8يُطلق على السجل L اسم "مُراكم الطلبات ذات الترتيب المنخفض" ويُقصد به توسيع نطاق الأرقام التي تُجرى بها العمليات. يمكن استخدامه أيضًا للتخزين المؤقت للمتغيرات.
سجل Q - العنوان 00002
8سجل Q يهدف إلى تخزين عنوان المرسل. يحتوي السجل Q على عنوان مكون من 12 بت ، والذي يوفر ، مع بنك الذاكرة الحالي ، عنوان الإرجاع الكامل من الروتين الفرعي.
سجل EBANK (بنك التخزين
القابل للمسح) - العنوان 00003
8تحتوي ذاكرة الوصول العشوائي (وتسمى أيضًا "ذاكرة قابلة للمسح" في AGC) على 2048 كلمة ، مقسمة إلى 8 بنوك لكل منها 256 كلمة. عنوان بنك RAM هو 3 بت وهو موجود في سجل EBANK.
تسجيل FBAN K (بنك التخزين الثابت) - العنوان 00004
8ROM لديه بنوك من 1024 كلمة ويحتوي على 36 بنكا. يحتوي سجل FBANK على 5 بت ويسمح لك بمعالجة 32 بنكًا.
بت تمديد ثابت (Superbank بت)
يستخدم لمعالجة آخر 4Kslov ROM.
بنك البحرين والكويت (
سجل كلا البنكين) - العنوان 00006
8عند نقل التحكم إلى برنامج آخر ، يجب تغيير سجلات FBANK و EBANK في نفس الوقت. يحتوي سجل BBANK على كلا العنوانين - أرقام البنك الخاصة بذاكرة الوصول العشوائي وذاكرة القراءة فقط. الكتابة إليه تقوم تلقائيًا بتحديث سجلات FBANK و EBANK.
سجل Z (عداد البرنامج) - 00005
8السجل Z هو عداد البرنامج ، أي أنه يحدد عنوان أمر التنفيذ الحالي. لديها قدرة 12 بت.
Zero Register (مصدر الأصفار) - العنوان 00007
8يحتوي على ثابت 0.
سجلات معالج المقاطعة - العنوان 00008
8 - 00012
8تقع سجلات ZRUPT و BRUPT و ARUPT و LRUPT و QRUPT و BANKRUPT على التوالي في هذه العناوين.
يسجل ZRUPT و BRUPT - احفظ محتويات السجل Z تلقائيًا (عداد التعليمات) ، وسجل B (السجل الداخلي ، والذي يحتوي على عنوان الأمر الذي سيتم تنفيذه بعد ذلك).
السجلات تُستخدم ARUPT و LRUPT و QRUPT و BANKRUPT لحفظ البطارية
وتسجيلات L و Q و BB. يجب حفظ هذه السجلات يدويًا واستعادتها يدويًا حتى يتم تنفيذ عبارة "استئناف" ، والتي تعمل على العودة من المقاطعة.
أثناء معالجة المقاطعة ، AGC تعطيل المقاطعات حتى يتم تنفيذ عبارة استئناف. وبالتالي ، لا يمكن مقاطعة معالج المقاطعة وحدها.
لقد ذكر في وقت سابق أن البطارية ذات سعة 16 بت ، وأن البتة الأكثر أهمية تستخدم للكشف عن التدفق الزائد وغير متوفرة برمجياً. ومع ذلك ، يحتوي سجل ARUPT ، الذي يخزن البطارية أثناء المقاطعة ، على 15 بت. في كل مرة تحدث فيها حالة تجاوز السعة ، يتم تعطيل المقاطعات حتى يتم مسح علامة الفائض.
لا يمكن استخدام سجلات ARUP و LRUPT و QRUPT و BANKRUPT خارج معالج المقاطعة. ماديًا ، تظل قابلة للوصول ، لكن من وجهة نظر البرنامج الرئيسي ، تتغير حالتها عند نقاط عشوائية في الوقت المناسب.
تحرير السجلات - عناوين 00020
8 - 00023
8أول ثلاثة سجلات هي سجلات الإزاحة: Cycle Right ، Shift Right ، Cycle Left ، أي ، إزاحة دوري إلى اليمين ، إزاحة إلى اليمين ، إزاحة دوري إلى اليسار. لا يحتوي نظام تعليمات AGC على عمليات تحويل ، ولكي يتم تحويل الرقم بمقدار واحد ، يجب كتابته إلى أحد هذه السجلات ثم حسابه. يتم تبديل كل تسجيل بمقدار واحد.
سجل EDOP (تحرير EDIT Interpretive OPcode) هو الرابع من سجلات التحرير.
يتم تخزين أوامر المترجم الفوري ، والتي سيتم مناقشتها أدناه ، في كلمتين في كلمة واحدة وتشغل كل منهما 7 بتات. عملية AND باستخدام قناع كافية لقراءة أمر الترتيب المنخفض ، لكن الترتيب العالي سيتطلب تحويلاً من 7 بتات. ينفذ سجل EDOP هذا التحول في عملية واحدة.
لا يمكن استخدام سجلات التحرير في معالجات المقاطعة ، وإليكم السبب. يجب حفظ السجلات العادية في بداية المعالج ، واستعادتها عند الخروج منها. لكن عمليات تحرير السجلات تؤدي عمليات على البيانات عند الكتابة إليها ، وسيؤدي ذلك إلى تشغيل البرنامج الذي تمت مقاطعته بطريقة غير صحيحة.
الموقتات والساعات
الوقت الحقيقي على مدار الساعة
لا يستخدم AGC وقت التقويم والأيام والشهور والسنة. بدلاً من ذلك ، يكون العد التنازلي من نقطة "الصفر" ، والتي تبدأ قبل ساعات قليلة من البداية. يتم عرض الساعة في كلمتين في الذاكرة ، على العناوين 00024
8 (T2) ، 00025
8 (T1). يتم زيادة الكلمة T1 كل 10 مللي ثانية ، وتكون الكلمة T2 تقريبًا كل 164 ثانية ، عندما تكون الكلمة T1 ممتلئة.
توقيت
00026
8 (T3) قائمة الانتظار - زيادة كل 10 مللي ثانية ، تم التحويل بالنسبة إلى T4RUPT بمقدار 5 مللي ثانية
00027
8 (T4) T4RUPT - زيادة كل 10 مللي ثانية.
00030
8 (T5) الطيار الآلي - زيادة كل 100 مللي ثانية.
00031
8 (T6) ساعة عالية الدقة - زيادة كل 1/1600 ثانية = 0.625 مللي ثانية.
يلزم تشغيل المؤقت الأول ، T3 ، حتى تعمل قائمة المهام (قائمة الانتظار). قائمة الانتظار هي قائمة بالمهام القصيرة جدًا ، تستغرق كل منها وقتًا قصيرًا ، ويمكن تنفيذها مباشرة في معالج المقاطعة. تحتوي القائمة على ما يصل إلى سبع مهام ، تبدأ كل منها بفاصل زمني معين. يقتصر تنفيذ المهمة بدقة على 4 مللي ثانية. خلال هذا الوقت ، يتمكن الكمبيوتر من إكمال حوالي 160 تعليمات.
يدير المؤقت T4 مهام دورية حرجة تتراوح من 20 إلى 120 مللي ثانية ، بما في ذلك تبادل البيانات مع DSKY ومفاتيح الاقتراع على لوحات التحكم في السفينة ومهام أخرى.
وحدة القياس بالقصور الذاتي IMU (وحدة القياس بالقصور الذاتي)
IMU هي عبارة عن منصة مثبتة جيروسكوبياً مع مقاييس تسارع ، والتي تعمل على تحديد موقع وتسارع السفينة في الفضاء.

لن نصف هنا مبدأ تشغيل الجيروسكوب ، نلاحظ فقط أن موضع محاور الجيروسكوب يقاس بجهاز CDU (وحدة بيانات الاقتران). يولد هذا الجهاز نبضات عندما تدور الجيروسكوبات ، وتنتج 32768 نبضة لكل ثورة ، وهو ما يتوافق مع دقة 39.55 ثانية قوسية لكل نبضة.
ينقل CDU أيضًا إلى AGC موضع محاور السيكستانت ورادار الاقتراب. نظرًا لأن السدس موجود في وحدة الأوامر فقط ، والرادار موجود في الوحدة القمرية فقط ، فإنهم يستخدمون نفس منفذ AGC.
لدى IMU أيضًا ثلاثة مقاييس تسارع بندول (مقاييس التسارع النابضة المدمجة ، PIPA). ولكن هناك دقة طفيفة. على الرغم من حقيقة أن الوحدة القمرية ووحدة الأوامر لديها نفس وحدة IMU ، إلا أن نطاقات قياس سرعتها مختلفة. يتراوح نطاق سرعة IMU لوحدة الأوامر من 0 إلى 11000 م / ث ، وللوحدة القمرية - ما يصل إلى 1700 م / ث. دقة IMU لوحدة الأوامر هي 5.85 سم / ثانية ، للوحدة القمرية - 1 سم / ثانية.
عدادات CDUS (X ، Y ، Z ، OPTIS ، OPTT) و PIPAS (X ، Y ، Z)
نقل البيانات من CDU إلى AGC كما يلي: يمكن للنبضات من أجهزة الاستشعار زيادة وتقليل العدادات. الرقم في العداد لديه إشارة تشير إلى اتجاه الحركة. توجد العدادات في عناوين محددة في الذاكرة ، ويمكن قراءتها برمجيًا. يتم استخدام ما مجموعه 8 عدادات ، منها ست سرعات عرض وزوايا ، واثنان يُستخدمان لعرض الموضع الزاوي للرسالة في وحدة القيادة أو رادار الاقتراب في الوحدة القمرية.
إدارة الجهاز من خلال العدادات
لقد عمل CDU في كلا الاتجاهين ، على سبيل المثال ، لم يتمكن من تحديد موضع رادار القرب فحسب ، بل يمكنه أيضًا قراءة محتويات السجل من ذاكرة الكمبيوتر وتطبيق الجهد على محركات محرك الرادار حتى يتم تثبيت الرادار في الزاوية المطلوبة.
واجهات الكمبيوتر الأخرى
تحتوي الوحدة القمرية على مقبض (Attitude Controller Assembly، ACA) يمكن قراءة موضعه برمجيًا. أرسل كل محور من وحدة التحكم هذه القيم إلى المتغيرات P_RHCCTR و Q_RHCCTR و R_RHCCTR.
تحكم ACA
ACA تحكم المظهروحدة تحكم ACA مثبتة فقط في الوحدة القمرية
INLINK (قناة إرسال القياس عن بُعد)
يوفر جهاز INLINK اتصالًا ثنائي الاتجاه مع Earth ، ويعمل على إرسال معلومات القياس عن بُعد واستقبال البيانات من مركز التحكم في الطيران. يمكن لرواد الفضاء إدخال البيانات اللازمة للرحلة خلال DSKY ، لكن هذه العملية بطيئة ومحفوفة بالأخطاء. من خلال سجل INLINK ، يمكن إدخال البيانات مباشرة من الأرض إلى الكمبيوتر.
إدارة المحرك
أثناء عملية الهبوط لوحدة القمر ، يحسب AGC القيم الضرورية لقوة الجر بشكل مستمر ويرسل إشارات التحكم إلى المحركات. خلال الـ 12 دقيقة التي يستمر فيها الهبوط ، يحرق المحرك حوالي نصف الوقود ، وينبغي للبرنامج مراعاة انخفاض الكتلة. تتراوح قوة دفع المحرك من 92.5٪ ، والتي تصل إلى 46،700 نيوتن ، وتصل إلى 10٪ من قوة الدفع الكاملة. لكن الدفع أعلى من 65٪ يسبب تآكلًا شديدًا في غرفة الاحتراق والفوهة ، لذلك ينبغي لبرنامج AGC تقليل الوقت الذي يكون فيه المحرك في هذا الوضع.
الكمبيوتر متصل بمحركات منصات الهبوط من خلال مجموعة التحكم في محرك الهبوط (DECA). تتم الإدارة عبر سجل THRUST. يمكن للطاقم ضبط قيمة الدفع يدويًا من خلال وحدة التحكم في اليد / الحركية (TTHC).
اقتحام / تحكم اليد متعدية (TTHC).
اقتحام / تحكم اليد متعدية (TTHC). المظهر.يتم توصيل مقبض التحكم مباشرة بـ DECA ، لا يرى الكمبيوتر القيم المدخلة يدويًا.
الأجهزة التناظرية
تستخدم المؤشرات التناظرية ، ALTM (شاشات تمثيلية: مقياس الارتفاع ومقياس المعدل) ، للإشارة إلى الارتفاع ومعدل التغير في الارتفاع الذي يتحكم به AGC من خلال سجل ALTM. يتم إجراء مؤشرات التناظرية في شكل جداول عمودية (tapemeters).
مؤشرات الارتفاع والسرعة العموديةمعالجة وذاكرة البنوك
كما ذكرنا سابقًا ، لدى AGC نوعان من الذاكرة ، ذاكرة الوصول العشوائي ، وتسمى أيضًا "ذاكرة قابلة للمسح" ، و ROM (ذاكرة ثابتة). سعة الذاكرة هي 38 Kslov ، والتي لا تسمح بمعالجة الذاكرة بالكامل مباشرة ، لأن طول العنوان في كلمة الأمر هو 12 بت.
لفصل الذاكرة في البنوك ، يتم استخدام سجلات EBANK و FBANK ، والتي تحدد بنك RAM و ROM ، على التوالي. يؤدي هذا إلى توسيع مساحة عنوان 32Kwords ، ولمزيد من توسيع مساحة عنوان ROM ، يتم استخدام Bit Extension Extension Bit ، والذي يسمح بالوصول إلى 36Kwords.
البنوك RAM
تحتوي ذاكرة الوصول العشوائي (RAM) على حجم 2 كيلو بايت ، وتنقسم إلى 8 بنوك من 256 كلمة.
ذاكرة الوصول العشوائي فك التشفيرلمعالجة كلمة في بنك RAM ، هناك حاجة إلى 8 بت. هناك حاجة إلى وحدتين أخريين لتحديد نوع البنك: غير قابل للتحويل (غير قابل للتحويل) أو قابل للتحويل (محوَّل). البتات 9 و 10 في الشكل أعلاه هي المسؤولة عن هذا (لاحظ أن البتات مرقمة من 1). إذا كانت هذه البتات تحتوي على 00 و 01 و 10 ، فلن يتم استخدام سجل EBANK ، إذا تم استخدام 11 ، ثم يتم دمج محتويات EBANK مع عنوان 8 بت المسجل في كلمة الأمر ، كما هو موضح في الشكل أدناه. إذا لم يتم استخدام سجل EBANK ، فسيتم استدعاء أول ثلاثة بنوك من الذاكرة ، والتي يطلق عليها مصطلح مضلل بعض الشيء "ثابت قابل للمسح". للوصول إلى ذاكرة الوصول العشوائي ، يجب ضبط البتات 11 و 12 على 0.
فك تشفير عنوان RAM باستخدام سجل EBANKROM
للوصول إلى ROM ، يتم استخدام نهج مماثل. تحدد البتات 11 و 12 من كلمة التحكم البنوك التي يتم استخدامها ، وإذا كانت هذه البتات تحتوي على 00 ، ثم يتم استخدام ذاكرة الوصول العشوائي ، كما هو موضح في القسم السابق ، إذا كانت 10 أو 11 ، ثم يتم استخدام جميع البتات الـ 12 كعنوان في ROM ، ولا يتم استخدام سجل FBANK ، إذا كانت 01 ، فسيتم استخدام العنوان الذي يتكون من 10 بتات أقل من كلمة التحكم ومحتويات سجل FBANK.
فك تشفير عنوان ROM
فك تشفير عنوان ROM باستخدام سجل FBANKالبنوك المشتركة
تتمثل إحدى النتائج الجانبية الهامة لنظام فصل الذاكرة للبنوك في القدرة على توصيل بنوك ROM وذاكرة الوصول العشوائي بمساحة العنوان نفسها ، واستخدام ذاكرة الوصول العشوائي دون الحاجة إلى تبديل سجلات البنوك. يوضح الشكل كيف يعمل هذا المخطط.
مخطط استخدام RAM و ROM في نفس مساحة العنوانذاكرة تتجاوز 32 كلمة
للوصول إلى الذاكرة التي تزيد عن 32 كلمة ، يتم استخدام بت امتداد ROM ، بت ثابت الإمتداد ، باعتباره بت سوبر بانك. يوجد بت superbank super bit 7 في قناة الإدخال / الإخراج 7. تختلف القناة 7 عن القنوات الأخرى حيث إنها تدعم القراءة والكتابة. بالطبع ، يجب حفظ بت توسيع ROM على حد سواء أثناء معالجة المقاطعة وعند التبديل المهام.
نقل السيطرة بين البنوك
لاحظ الترتيب الذي توجد به سجلات FBANK و Z و BB في الذاكرة السفلى. يبدو ، لماذا لا الجمع بينهما في كلمة واحدة؟ ولكن يتم ذلك عن قصد لإنشاء آلية نقل السيطرة. عند التبديل إلى بنك آخر ، يجب تعيين القيم الجديدة على FBANK و EBANK أو BBANK. ومع ذلك ، هذا يثير مشكلة. لنفترض ، على سبيل المثال ، أن البرنامج يعمل على العنوان 01033
8 في بنك ROM 07 ، وأنك بحاجة للذهاب إلى العنوان 02371
8 في بنك ROM 13. إذا قمت بتغيير السجل Z ، فإنه ينقل التحكم إلى العنوان 02371
8 في البنك الحالي ، والذي لا نحتاج إليه. إذا قمنا بتبديل البنك الحالي أولاً ، فسيظهر موقف مماثل. التبديل في وقت واحد من السجل Z وبنك الذاكرة ضروري. للقيام بذلك ، استخدم تعليمات DXCH ، التي تقرأ البطارية وتسجيل L ، وتبادل محتوياتها مع موقعين متتاليين في الذاكرة. وبالتالي ، من الممكن استبدال البطارية وتسجيل L إما مع زوج من FBANK أو Z أو مع زوج من Z أو BB. يتم تشفير هذه الخيارات من قبل اثنين من فن الإستذكار: التحكم في التحويل المزدوج - تبديل كلا البنكين (DTCB) والبنك الثابت للتحويل المزدوج للتحويل (DTCF). لا يسمح لك الأمر DTCB بالانتقال إلى عنوان آخر فحسب ، بل يمكنك أيضًا تغيير بنك RAM ، والتحكم في أمر DTCF ، مما يترك بنك RAM نفسه. العائد من الوظيفة كما يلي. تتم كتابة القيم الأولية لـ Z و BBANK (أو FBANK) إلى المُراكم وتسجيل L. يجب أن تقوم الدالة المطلوبة بحفظ هذه القيم ثم القيام بالعملية العكسية عن طريق تبادل القيم مع سجلات البنوك و Z.
بعض عيوب الهندسة المعمارية AGC
تحتوي معظم هياكل الكمبيوتر على مؤشر مكدس و / أو سجلات فهرس (واحد على الأقل). ولكن ليس في AGC. يتطلب دعم مؤشر المكدس أجهزة إضافية. لا توجد سجلات فهرس تسمح بتنظيم الوصول إلى هياكل البيانات على العنوان (مؤشر + إزاحة) ، ولكن هناك أمر INDEX يلغي الحاجة لمثل هذا السجل.
أيضًا ، على الرغم من عدم وجود سجلات فهرس أجهزة ، يتم محاكاتها بواسطة جهاز Virtual Interpreter ، الذي سيتم مناقشته أدناه.واحدة من ميزات AGC هو استخدام نظام التشغيل في الوقت الحقيقي متعدد الخيوط. لكي يعمل مثل هذا النظام ، كقاعدة عامة ، تكون هناك حاجة إلى آلية لتأمين البيانات المشتركة (mutexes). ولكن في AGC لا توجد آلية من هذا القبيل ، لذلك يجب على مطوري البرمجيات التحقق بعناية من جميع حالات الوصول المشترك إلى البيانات من عمليات مختلفة لاستبعاد إمكانية الوصول المتزامن إلى هذه البيانات.المقاطعات
4000 8عنوان بدء التشغيل بعد تنشيط AGC4004 8 T6RUPTTIME6 يصل إلى 0. يتم استخدام المؤقت بواسطة الطيار الآلي.وصل 4010 8 T5RUPTTIME5 فيضان. يتم استخدام الموقت من قبل الطيار الآلي.بلغ 4014 8 T3RUPTTIME3 تجاوز السعة. المستخدمة من قبل جدولة المهام WAITLIST.وصل 4020 8 T4RUPTTIME4 فيضان. مسح وتحديث وعرض DSKY4024 8 KEYRUPT1الضغط على زر DSKY. رمز المفتاح من DSKY الرئيسي متاح في القناة 154030 8 KEYRUPT2اضغط على الزر DSKY الثاني. يتوفر رمز مفتاح التنقل DSKY في القناة 16 (وحدة الأوامر فقط)4034 8 UPRUPTالبيانات في سجل INLINKالمستخدمة في DSKY4040 8 DOWNRUPTيحتوي سجل Downlink على بيانات. يستخدم للقياس عن بعد AGC4044 8 RADARUPTData في سجل RNRAD. نهج بيانات الرادار4050 8 RUPT10LM P64نظام القيادة
, Order Code, , , , . . , Q-Code.
000 , 011, 100 111 , 001, 010, 101 110 Q-.
Q-. , , . , TC (transfer control), , , (Enable Interrupts).
, . 00006
8 , , 00006
8 . , , , . , .
AGC 41 . 6 :
AGC. [1].
: -
لا يحتوي AGC على محركات أقراص ثابتة أو محركات أشرطة ، وجميع الاتصالات مع العالم الخارجي تنطلق من وضع وحدات البت والقراءة في منافذ الإدخال / الإخراج. تتضمن الأجهزة الطرفية AGC النظام الأساسي بالقصور الذاتي والمحركات والرادار و DSKY ومفاتيح لوحة التحكم. تبادل البيانات عالي السرعة غير مطلوب ، وسرعة التبادل ليست عاملاً هامًا في الحد.للمدخلات والمخرجات هي ما يسمى القنوات. تشبه قراءة وقراءة قناة ما قراءة وكتابة خلية ذاكرة الوصول العشوائي ، ولكن على عكس ذاكرة الوصول العشوائي ، فإن معظم القنوات أحادية الاتجاه. هناك أيضا منافذ العد ، والتي تستخدم لقراءة مواقع محاور IMU والرادار والسكستات. نبضات من أجهزة استشعار زاوية الزيادة وعدادات التناقص ، والتي يمكن بعد ذلك قراءتها من قبل AGC.
AGC الأجهزة الطرفية- EXTEND . 000, PCode. PCode , PCode . 9 — . AGC, , 512 , 16. 15- , , - AND, OR Exclusive OR. -. WOR (Write with OR), WAND (Write with AND), ROR (Read and OR) RXOR (Read and XOR).
- . L (low-order accumulator), , , , . AND, OR XOR.
- . , DSKY 5 . DSKY KEYRUPT, .
, , uplink downlink, 51 /c 1900 / ( ).
البرمجيات
يعتمد برنامج AGC على نظام التشغيل التنفيذي في الوقت الفعلي وجهاز Interpreter الظاهري. سننظر فيها بالتفصيل في الجزء التالي.