جنرال إنسترومنت AY-3-8910

قالب AY-3-8910

يُعدّ AY -3-8910 مولد صوت قابل للبرمجة (PSG) بثلاثة أصوات، صممته شركة جنرال إنسترومنت (GI) عام 1978، وكان يُستخدم في البداية مع معالج CP1610 ذي 16 بت أو مع أحد معالجات PIC 1650 من سلسلة الحواسيب الصغيرة ذات 8 بت . يحتوي على ثلاث قنوات صوتية ذات استجابة ترددية واسعة، قادرة على إنتاج معظم نغمات البيانو ذي 88 مفتاحًا. ويمكن تعديل هذه القنوات باستخدام مولد غلاف مشترك وقناة ضوضاء عشوائية، يُمكن إضافتها لإنتاج مؤثرات صوتية.

استُخدمت شريحة الصوت AY-3-8910 ومشتقاتها في العديد من ألعاب الفيديو في صالات الألعاب - حيث تحتوي لعبة Gyruss من Konami على خمس شرائح [ 1 ] - وفي آلات لعبة الكرة والدبابيس من Bally، بالإضافة إلى كونها شريحة الصوت في أجهزة ألعاب الفيديو Intellivision و Vectrex ، وأجهزة الكمبيوتر المنزلية Amstrad CPC و Oric-1 و Colour Genie و Elektor TV Games Computer و MSX و Tiki 100، ولاحقًا ZX Spectrum . كما استُخدمت أيضًا في بطاقات الصوت Mockingboard وCricket لجهاز Apple II ، وفي خرطوشة الصوت/الكلام [ 2 ] لجهاز TRS-80 Color Computer .

بعد انفصال شركة GI عن شركة Microchip Technology عام 1987، بيعت الشريحة لعدة سنوات تحت علامة Microchip التجارية. كما تم تصنيعها بترخيص من شركة Yamaha (مع دبوس مقسم تردد قابل للتحديد وجدول غلاف صوت مزدوج الدقة والمعدل) تحت اسم YM2149F ؛ ويستخدم جهاز Atari ST هذا الإصدار. لم تعد هذه الشرائح تُصنع، لكن النسخ المتطابقة وظيفيًا لا تزال قيد الإنتاج. يتوفر وصف غير رسمي بلغة VHDL مبني على YM2149 مجانًا للاستخدام مع FPGAs . [ 3 ]

وصف

نظام الحافلات

تُعدّ AY-3-8910 آلة حالة محدودة بسيطة . تتم برمجة حالة ستة عشر سجلًا من 8 بتات عبر ناقل بيانات من 8 بتات ، يُستخدم لكلٍ من العنونة والبيانات. تتطلب عملية القراءة أو الكتابة دورتين. على سبيل المثال، تقوم دورة الإعداد النموذجية بوضع الناقل في "وضع العنونة" وكتابة القيمة عليه لاختيار سجل، ثم الانتقال إلى "وضع البيانات" لتعيين محتويات ذلك السجل. تم تنفيذ هذا الناقل بشكل أصلي على وحدات المعالجة المركزية الخاصة بشركة GI، ولكن كان لا بد من إعادة إنشائه في منطق الربط أو بمساعدة محول واجهة إضافي مثل MOS Technology 6522 عند استخدام الشريحة مع وحدات المعالجة المركزية الأكثر شيوعًا MOS Technology 6502 أو Zilog Z80 .

يحتوي الجهاز على 16 سجلًا فقط، ولا يتطلب سوى أربعة بتات من القيمة الثمانية بتات المُشار إليها في "وضع العنوان". في معظم الحالات، يجب ضبط البتات الأربعة الأكثر أهمية (MSB) على القيمة الافتراضية للمصنع "0000" عند اختيار سجل. يؤدي ضبط بتات MSB بشكل خاطئ إلى تجاهل الشريحة لتغيير السجل. وقد تلقت شركة GI طلبات لإصدارات مُخصصة تستجيب فقط لقيم MSB غير "0000". تسمح هذه الإصدارات للمعالج نفسه بالتحكم في أكثر من شريحة AY على نفس الناقل (مثل TurboSound لجهاز ZX Spectrum)، باستخدام قيم MSB لاختيار الشريحة . يوجد العديد من الشرائح الجديدة القديمة (NOS) في السوق الثانوية ببتات MSB مضبوطة من المصنع على قيمة غير "0000". قد تُسبب القيمة غير "0000" مشاكل تطويرية كبيرة للمصممين وفنيي الصيانة. يجب كتابة برنامج لتحديد القيمة الصحيحة لبتات MSB على أي شريحة مُعينة. كما يجب تغيير البرامج أو إضافة الأجهزة للسماح باستخدام رقائق MSB المُجهزة مسبقًا من المصنع بدلاً من رقائق "0000" الافتراضية.

النغمات

يحتوي النظام على ثلاث قنوات إخراج، A و B و C، والتي يتم إنتاجها عن طريق مزج عدة مدخلات محتملة. [ 4 ]

تتحكم ستة سجلات، من R0 إلى R5، في النغمات المُنتجة في مولدات النغمات الرئيسية الثلاثة. يُخزَّن التردد المطلوب توليده في سجلين من 8 بتات مُخصَّصين لكل قناة، وهما سجلا الضبط الدقيق والضبط الخشن. القناة A كانت تُضبط بدقة في R0 وخشنة في R1، والقناة B في R2 وR3، وهكذا. البتات الأربعة العليا من سجل الضبط الخشن غير مُستخدَمة، مما يترك 12 بتًا لإنتاج قيم من 1 إلى 4095 (يُعامل الصفر كواحد لأسباب تقنية). تُستخدم قيمة الـ 12 بت كمُقسِّم تردد على ساعة الإدخال، مما يُنتج نغمة إخراج في القناة المُقابلة. [ 4 ]

يستطيع جهاز 8910 العمل بتردد ساعة إدخال يبلغ 4  ميجاهرتز، أو 6  ميجاهرتز مع شريحة YM2149F. وهذا يُمكّنه من توليد نغمات بترددات أساسية تصل إلى 125  كيلوهرتز، أي أعلى بكثير من نطاق السمع البشري وتصل إلى نطاق الموجات فوق الصوتية . وجود قيم فوق صوتية هو نتيجة لتصميم مُقسّم التردد؛ فلكي نحصل على دقة كافية عند الترددات المسموعة، من الضروري أن يكون معدل الساعة الإجمالي (وبالتالي خرج التردد عند المُقسّمات الصغيرة) أعلى بكثير من النطاق المسموع. فقط المُقسّمات الأقل من 5 تُعطي ترددات خرج فوق صوتية بالكامل. يمكن تحديد ترددات تُعادل الأوكتاف الأعلى في لوحة مفاتيح البيانو بدقة معقولة مقارنةً بقيم النوتات المقبولة في السلم الموسيقي المُعدّل بالتساوي، بدقة تقارب 1  هرتز في نطاق A440 ، وبدقة أعلى عند النغمات المنخفضة. على الرغم من التردد الأقصى العالي، فإن إمكانية قسمة هذا الرقم على 4096 تعني أن أدنى تردد إخراج يمكن تحديده مباشرةً هو 30.6  هرتز، وهو ما يعادل تقريبًا نغمة B0، ثالث أدنى نغمة على بيانو عادي ذي 88 مفتاحًا، ويُعتبر صوتًا دون صوتي مع أنظمة مكبرات الصوت العادية. باختصار، تستطيع الشريحة إنتاج صوت موسيقي جيد في جميع النغمات المعقولة الموجودة في معظم المقطوعات الموسيقية.

في المقابل، لا يمتلك جهاز Texas Instruments SN76489 المنافس سوى 10 بتات من الدقة لمقسمات التردد. وباعتباره يمتلك نفس التردد الأساسي البالغ 125  كيلوهرتز، فمن المفترض نظريًا أن يفتقر إلى الأوكتافين الأدنى الموجودين في جهاز 8910. ولتجاوز هذه المشكلة، يُشغّل جهاز SN76489 مولدات النغمات الخاصة به بتردد أقل بأوكتاف واحد من ترددها المحسوب، مما يجعله أقل بأوكتاف واحد في نطاق الترددات المنخفضة وأقل بأوكتاف واحد في نطاق الترددات العالية مقارنةً بجهاز 8910.

الآثار

R6 هو مُتحكّم الضوضاء. تُستخدم البتات الخمس السفلى لتخزين قيمة بين 0 و31، تُحدّد دورة الضوضاء، بينما البتات الثلاث العليا غير مُستخدمة. يتم تقسيم إشارة الساعة المُدخلة على 16 ثم على القيمة الموجودة في R6 لإنتاج تردد الضوضاء. [ 4 ] يتحكّم R7 في المُخالِط. تتحكّم البتات 0 و1 و2 في ما إذا كان مُولّد النغمة المُناسب يُغذّي المُخرَج للقنوات A وB وC على التوالي. تتحكّم البتات 3 و4 و5 في ما إذا كان مُولّد الضوضاء يُخرَج على القنوات A وB وC على التوالي. يُمكن لأي قناة مُحدّدة إخراج نغمة نقية، أو ضوضاء نقية، أو مزيج من الاثنين. لاحظ أن جميع هذه البتات الستة معكوسة؛ يتم تمكين الإخراج عندما تكون البتة المُقابلة صفرًا. تتحكّم البتات 6 و7 في ما إذا كان منفذا الإدخال/الإخراج، IOA وIOB، مُهيّئين للإدخال (0) أو الإخراج (1). [ 4 ]

تتحكم المقاومات R10 وR11 وR12 في مستوى الصوت للقنوات الثلاث. تُنتج البتات الأربع السفلى قيمة تتراوح من 0 (إيقاف) إلى 15 (صوت عالٍ). تتحكم البتة الرابعة في "وضع السعة" (M)، الذي يؤدي إلى تعديل مستوى الصوت الناتج بواسطة مولد الغلاف المشترك، متجاهلاً مستوى الصوت المُحدد مسبقًا بأربع بتات. أما البتات الثلاث العليا فهي غير مستخدمة. [ 4 ]

يتحكم المسجلان R13 وR14 في توقيتات وحدة التحكم في الغلاف ، الدقيقة والخشنة على التوالي. تُقسم إشارة الساعة المدخلة أولًا على 16 (أو على 8 في YM2149، لأن مولد الغلاف يحتوي على ضعف عدد الخطوات، وبالتالي يحتاج إلى ضعف عدد إشارات الساعة لإكمال دورة كاملة)، ثم تُقسم على قيمة 16 بت. يتحكم المسجل الأخير، R15، في شكل الغلاف، باستخدام البتات الأربعة السفلى. الغلاف بسيط مقارنةً بالتصاميم اللاحقة التي تضمنت وحدة تحكم ADSR كاملة ، فهو يتحكم فقط فيما إذا كان الغلاف يبدأ من مستوى صوت صفري ويتصاعد تدريجيًا إلى أقصى مستوى صوت (15)، أو يبدأ من أقصى مستوى صوت ويتناقص تدريجيًا. يتم التحكم في ذلك بواسطة البت 2، الخاص بالهجوم؛ إذا تم ضبطه على 1، يتصاعد النظام تدريجيًا، ويتم التحكم في زمن التصاعد نفسه بواسطة R13 وR14. تتحكم البتات الثلاثة الأخرى فيما يحدث بعد هذه الدورة الأولى. إذا تم تشغيل البت 3، الخاص بالاستمرار، فسيتم إعادة ضبط مستوى الصوت ويتصاعد مرة أخرى، ويتكرر ذلك. إذا كانت البتة 1، "التناوب"، مُفعّلة، فإن المنحدرات ستتناوب صعودًا وهبوطًا، مما ينتج عنه نمط مثلثي. أخيرًا، تتجاوز البتة 0، "التثبيت"، البتات الأخرى، مما يؤدي إلى تثبيت مستوى الصوت عند 0 أو 15 بعد الدورة الأولى. [ 4 ]

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

المتغيرات

شريحة AY-3-8912، عبوة DIP ذات 28 طرفًا مع برغي علبة الكمبيوتر للمقارنة
شريحة YM2149F، حزمة DIP ذات 40 طرفًا

تم بيع شريحة السيليكون 8910 في ثلاث عبوات مختلفة.

يحتوي AY -3-8910 على منفذي إدخال/إخراج متوازيين للأغراض العامة 8 بت ، A و B، وهما متوفران في حزمة 40 دبوسًا تحمل نفس الاسم.

شريحة AY-3-8912 هي نفسها الشريحة ولكن بحجم 28 طرفًا، مع عدم توصيل منفذ التوازي B بأي طرف. توفر الأحجام الأصغر تكلفة ومساحة على اللوحة. وكانت شريحة 8912 هي الأكثر استخدامًا.

الشريحة AY-3-8913 هي نفس الشريحة ولكن في غلاف ذي 24 طرفًا، مع عدم توصيل منفذي التوصيل المتوازيين. اعتقد بعض المستخدمين أن الانخفاض الطفيف في عدد الأطراف مقارنةً بالشريحة 8912 يجعلها أقل جاذبية؛ ومع ذلك، نادرًا ما يستخدم المصممون سجلات الإدخال/الإخراج، لذا قامت شركة GI بتطوير هذا البديل كامل الوظائف ذي الـ 24 طرفًا وأصدرته بعد حوالي 6 أشهر من إصدار الشريحتين 8910 و8912. كان الهدف هو تبسيط التصميم وتقليل المساحة المطلوبة على لوحة الدوائر المطبوعة. قام العضو fenarinarsa في منتدى French Touch بالتحقيق في مشكلة في الشريحة AY-3-8913 وتوثيقها. [ 5 ]

يحتوي المعالج AY-3-8914 على نفس ترتيب الأطراف ويأتي في نفس غلاف الأربعين طرفًا الخاص بالمعالج 8910، باستثناء أن سجلات التحكم على الشريحة معكوسة، وقد يختلف "المدخل المتوقع" على الطرف A9. وقد استُخدم في جهاز Intellivision من شركة Mattel وجهاز الكمبيوتر Aquarius .

تُعدّ شريحة AY-3-8930 ، المعروفة أيضًا باسم AY8930 ، نسخةً مُحسّنةً من شريحة 8910، مع توافقها مع الإصدارات السابقة في الغالب. تم تغيير وظيفة طرف BC2 (حيث يتم تجاهله ويُفترض أنه 0 بغض النظر عن حالة الطرف)، بينما يبقى ترتيب الأطراف كما هو في شريحة 8910. تُضيف هذه النسخة من الشريحة عددًا من التحسينات الرئيسية، مثل مُغلّفات منفصلة للقنوات الثلاث (بدلاً من مُغلّف واحد مشترك)، ودورات تشغيل متغيرة، ودقة أعلى لتردد النوتات، ومستوى الصوت، وتردد المُغلّف، بالإضافة إلى مُولّد ضوضاء قابل للتخصيص بشكل أكبر. استُخدمت هذه الشريحة في بطاقة الصوت Covox Sound Master لأجهزة IBM-PC. استفادت منها عدد قليل جدًا من الألعاب، بالإضافة إلى ميزات شريحة 8910 العادية. يُرجّح أن شركة Microchip Technology هي الشركة الوحيدة التي أنتجت هذه الشريحة .

تحتوي شريحة Yamaha YM2149F SSG (مولد الصوت المُتحكم به بواسطة البرمجيات) على نفس ترتيب دبابيس شريحة AY-3-8910، مع اختلاف بسيط يتمثل في أن الدبوس 26 قد يُخفض تردد الساعة الرئيسية إلى النصف عند توصيله بمستوى منخفض. أما إذا تُرك غير موصول، كما هو الحال عند استبدال شريحة AY-3-8910، فإن مقاومة داخلية تُرفع مستوى الدبوس إلى مستوى عالٍ، وبالتالي لا يتم خفض تردد الساعة الرئيسية إلى النصف.

يُعد Yamaha YM3439 نسخة CMOS من YM2149F. وهو متوفر في حزمتين: DIP ذو 40 سنًا (YM3439-D) و QFP ذو 44 سنًا (YM3439-F).

يُعدّ جهاز Yamaha YMZ294 أحد أحدث إصدارات YM2149، ولكنه يأتي في غلاف ذي 18 سنًا. لا يحتوي على منافذ متوازية، وله مخرج صوت واحد فقط مع مزج القنوات الثلاث.

يُعدّ Yamaha YMZ284 نسخةً أصغر من YM2149، ويأتي في غلاف ذي 16 طرفًا. وهو في الأساس YMZ294 بدون  طرف اختيار التردد 4/6 ميجاهرتز وطرف الاختبار.

يأتي جهاز Yamaha YMZ285 بحزمة ذات 28 سنًا ويحتوي على وحدة PCM مدمجة. لا يحتوي على منافذ متوازية ومخرجين للصوت: أحدهما يحتوي على قنوات SSG الثلاث مختلطة، والآخر يحتوي على مخرج PCM.

تُعد شريحة Toshiba T7766A شريحة متوافقة لها نفس ترتيب الدبابيس مثل AY-3-8910 وقد تم استخدامها في بعض طرازات MSX .

تتشابه وحدات Winbond WF19054 و JFC 95101 وFile KC89C72 في ترتيب دبابيسها مع وحدة AY-3-8910، وهي متوافقة معها برمجياً بنسبة 100%. ولا تزال هذه الوحدات قيد الإنتاج وتُستخدم في العديد من ماكينات القمار .

استخدمت ياماها نواة YM2149 لإنتاج عائلة كاملة من رقائق الموسيقى المستخدمة في الهواتف المحمولة، وأجهزة الكمبيوتر المنزلية، وأنظمة ألعاب الفيديو المنزلية والإلكترونية، وغيرها. وتُعد سلسلة OPN من رقائق توليف التردد FM رباعية المشغلات من ياماها مثالًا بارزًا على هذا النهج، حيث تتضمن نواة YM2149 كجزء لا يتجزأ من الرقاقة نفسها. وكانت YM2203 (المعروفة أيضًا باسم OPN) أول رقاقة في السلسلة تتضمن نواة YM2149، مع وجود مولدات الغلاف الخاصة بـ YM2149 مباشرةً على النواة. أما الرقاقات اللاحقة الأكثر تطورًا، YM2608 (المعروفة أيضًا باسم OPNA) و YM2610 (المعروفة أيضًا باسم OPNB)، فقد تضمنت أيضًا نواة YM2149 واحتفظت بجميع الميزات السابقة مع توسيعها بشكل كبير، حيث استثنت YM2610 منافذ الإدخال/الإخراج من بين تغييرات طفيفة أخرى. قام جهاز YM2612 (المعروف أيضًا باسم OPN2)، وهو نفسه مشتق مطور من YM2203، بإزالة جزء YM2149 بالكامل من بين تغييرات أخرى، بما في ذلك إزالة جميع قنوات الصوت ومنافذ الإدخال/الإخراج الخاصة بـ YM2149، ولكنه احتفظ بمولدات الغلاف الخاصة بـ YM2149 الموجودة على نواة الشريحة.

الاستخدام

ألعاب الفيديو الأركيد

هوم هاردوير

لعبة البينبول

  • فلاش جوردون
  • الحدود
  • هوت دوغين
  • صوفي
  • نيترو جراوند شيكر
  • رولينج ستونز (بالي)
  • كرة التزلج
  • جنون الكرة الفضية
  • غزاة الفضاء
  • الفايكنج
  • زينون
  • شركة Jeutel الفرنسية  : Papillon، Le King، الألعاب الأولمبية

انظر أيضاً

  • VGM – تنسيق ملف صوتي لمنصات ألعاب الفيديو المتعددة
  • تكساس إنسترومنتس SN76477 - تصميم مشابه تم استخدامه أيضًا، ولكنه لم يكن شائعًا مثل AY-3-8910

مراجع

  1. "جيروس" . تاريخ ألعاب الأركيد .
  2. "دليل مرجعي تقني لخرطوشة الصوت/الكلام من راديو شاك" . archive.org .
  3. "YM-2149 / AY-3-8910 Complex Sound Generator FPGA core" . Github .
  4. 1 2 3 4 5 6 دليل 1978 ، صفحة 5.21. خطأ في sfn: لا يوجد هدف: CITEREFManual1978 ( مساعدة )
  5. "هناك خلل كبير في AY-3-8913" . www.fenarinarsa.com . ١٩ مايو ٢٠٢٤. تاريخ الاطلاع: ١٦ ديسمبر ٢٠٢٤ .