مكون مخصص يُسمى وحدة معالجة الصوت (APU) يوفر هذه الخدمات . تم تضمينها في رقاقة وحدة المعالجة المركزية بواسطة ريكو على الأرجح لتجنب نسخ غير مرخص لكل من وحدة المعالجة المركزية و APU.
الوظيفة
يشار إلى هذه الدائرة الصوتية عمومًا باسم مولد الصوت القابل للبرمجة (PSG)، مما يعني بشكل غامض أنه يمكنه فقط إنتاج مجموعة محددة مسبقًا من الموجات، وهذا غالبًا صحيح في هذه الحالة. يقوم APU بتسلسل البيانات الصوتية عبر خمسة قنوات صوتية - كل واحدة مخصصة لنوع معين من الموجات أو الإشارات. تحتوي كل قناة على خصائص مختلفة تغير نغمة الموجة الصوتية أو الصوت أو الحجم و/أو المدة. يتم خلطها باستمرار وإرسالها عبر إشارة الصوت الصادرة.
تعرض وظائف APU من خلال عناوين الذاكرة، تقوم وحدة المعالجة المركزية بقراءة البيانات المتعلقة بالموسيقى في ذاكرة برنامج القراءة فقط وتبرمج APU وفقًا لذلك.
علاوة على ذلك، يوفر طراز فاميكوم على وجه الخصوص دبابيس خرطوشة ترسل إشارة الصوت المختلطة إلى الخرطوشة، حتى يتمكن الأخير من خلطها مع قنوات إضافية (تتطلب رقاقة إضافية) .
دعونا الآن نتناول القنوات الخمسة التي يوفرها APU :
النبض

(Video) عرض الأوسليسكوب لقناة النبض 1.

(Video) عرض الأوسليسكوب لقناة النبض 2.

(Video) عرض الأوسليسكوب لجميع قنوات الصوت.
القناتان الأوليان تُنتجان موجات النبض . عندما تُسمع، فإنها تعرض صوت بيب متميز للغاية والذي يُستخدم أساسًا لللحن أو تأثيرات صوتية. يمكن للمُركِب المُزَامِن المعني أن يولد ثلاثة أنواع من موجات النبض، عن طريق تغيير عرض النبض (المعروف أيضًا بـ دورة الواجب). الدارات مرتبطة أيضاً بـ وحدة المسح (مما يسمح بثني النغمة) و
تستخدم معظم الألعاب قناة نبضة واحدة للحن والأخرى للمرافقة. ستجد غالبًا أنه عندما تحتاج اللعبة إلى تشغيل تأثير صوتي، يتم تحويل قناة المرافقة لتشغيل التأثير ثم تعود للمرافقة. هذا يتجنب قطع اللحن أثناء اللعب.
أعتقد أنه من العدل أن نقول إن الموجات النبضية هي أحد رموز هذا الجيل من الأجهزة. أفترض أن اعتماده تم فقط لأسباب جديرة بالتكلفة: لا يمكن لوحدة المعالجة المركزية (CPU) (المحدودة) معالجة الكثير من البيانات في وقت واحد، وموجات النبض مثالية من حيث أنها لا تتطلب العديد من المعلمات لتشغيل الألحان البسيطة (مما يساهم في تحرير دورات وحدة المعالجة المركزية لعمليات أخرى).
مثلث

(Video) عرض أوسيلوغرافي لقناة المثلث.

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

(Video) عرض الأوسليسكوب لقناة الضجيج.

(Video) عرض الأوسليسكوب لجميع قنوات الصوت.
يرجع مفهوم 'الضوضاء' إلى سلسلة من الموجات التي لا تتبع أي نمط أو ترتيب. بدورها، تفسر آذاننا ذلك على أنه تموج أبيض. بعد قولي هذا، يخصص APU قناة واحدة تستطيع تشغيل أنواع مختلفة من الضوضاء.
خلف الكواليس، يعتمد مولد الضوضاء على مولد مغلف (مماثل لقناة الدفعة) ويتم إسكاتها عشوائيًا بواسطة بوابة OR . يعتمد شرط الإسكاة على قيمة مسجل إزاحة مكون من 15 بت متصل بدائرة تغذية راجعة. عمومًا، يجعل هذا الدائرة تعمل بشكل شبه غير متوقع، وبالتالي تُحدث ضوضاء.
من حيث التحكم، تقوم 4 بتات بتغيير فترة مولد المغلف وبتة واحدة تغير 'الوضع' لمسجل الإزاحة. يترك ذلك 32 إعداداً مسبقاً للضوضاء متاحة. نصف هذه الإعدادات المسبقة (16) تنتج تموج نظيف، والنصف الآخر ينتج تموج ميكانيكي.
عمومًا، تستخدم الألعاب قناة الضوضاء للقرع أو التأثيرات المحيطية.
عينة

(Video) عرض راسم الذبذبات لقناة العينة.

(Video) عرض الأوسليسكوب لجميع قنوات الصوت.
العينات هي قطع مسجلة من الموسيقى يمكن إعادة تشغيلها. كما ترى، العينات ليست مقيدة بنوع موجة واحدة، لكنها تستهلك مساحة أكبر بكثير.
لدى APU قناة واحدة مخصصة للعينات. هنا، العينات محدودة بدقة 7 بت (مشفره بقيمه من 0 إلى 127) و بمعدل أخذ عينات ~15.74 كيلو هرتز . لبرمجة هذه القناة، يمكن للألعاب أن تبث قيم 7 بت (والتي تستهلك الكثير من الدورات والتخزين) أو تستخدم تعديل دلتا لترميز الاختلاف فقط بين العينة التالية والسابقة.
تنفيذ تعديل دلتا في APU يستقبل فقط قيم 1 بت، هذا يعني أن الألعاب يمكنها فقط معرفة ما إذا كانت العينة تزداد أو تنقص بمقدار 1 في كل مرة يدخل فيها العداد. لذا، على حساب الوفاء، يمكن لتعديل دلتا أن يوفر على الألعاب الحاجة إلى بث قيم مستمرة إلى APU.
نظرًا لأن برمجة هذه القناة تستغرق مساحة أطول ودورات معالجة، عادةً ما تخزن الألعاب قطعاً صغيرة (مثل عينات الطبول) يمكن تشغيلها بشكل متكرر. كما هو الحال، وخلال فترة حياة NES، توصل العديد من المطورين إلى استخدامات ذكية لهذه القناة.
الأسرار و القيود
بينما لم يكن APU قابلاً للمقارنة بجودة الفينيل أو الكاسيت أو الأقراص المدمجة، وجد المبرمجون طرقًا لتوسيع قدراته، بفضل البنية التماثلية لـ NES.
القنوات الإضافية

(Video) عرض راسم الذبذبات لـ Castlevania III (الولايات المتحدة الأمريكية/أوروبا، 1989).

(Video) عرض راسم الذبذبات لـ Akumajō Densetsu (النسخة اليابانية من Castlevania III، 1989).
هل تتذكر أن Famicom وفرت دبابيس خرطوشة حصرية متاحة لتوسيع الصوت؟ حسنًا، الألعاب مثل Castlevania 3 استفادت من هذا وضمت شريحة إضافية تدعى Konami VRC6، والتي أضافت موجتين دفعتين إضافيتين وموجة سن منشار إلى الخليط.
ألقِ نظرة على المثالين اللذين يوضحان الفرق بين النسختين اليابانية والأمريكية من اللعبة (الأخيرة تعمل على نوع NES، الذي لم يوفر قدرات توسيع الصوت).
ترموللو

Video - عرض راسم الذبذبات لـ Final Fantasy III (1990).
بدلاً من زيادة تكاليف الخرطوشة، أولت بعض الألعاب الأولوية للإبداع على التكنولوجيا لإضافة قنوات أكثر.
في هذا المثال، جاء Final Fantasy III بفكرة استخدام تأثيرات التريمولو لإعطاء الشعور بالقنوات الإضافية.
ملاحظة أكثر دقة
الآن بعد أن حصلت على لمحة عن قدرات APU، دعني أريك طريقة بديلة لمراقبة صوتها. هذا لن يكمل ما تعرفه بالفعل عن APU فحسب، بل سيوفر أيضًا فحصًا أكثر موضوعية، خاصةً لأنه لا يعتمد على آذانك بعد الآن.
أولاً، لنبدأ بمقدمة سريعة لنظرية الصوت.
بفضل مبادئ تحليل فورييه، يمكننا تفكيك كل صوت نسمعه إلى مجموع موجات جيبية بترددات وسعات مختلفة . الموجة الجيبية الأكثر بُعداً (ذات التردد الأدنى) تُسمى الأساسية والباقي يُسمى التوافقيات. إذا قمت بإضافة الموجة الأساسية وتوافقياتها، ستحصل على الصوت الأصلي. بعد قولي هذا، مع الأصوات التي تحتوي على نغمة معترف بها، ستجد أن معظم (إن لم يكن كل) التوافقيات لها ترددات مضاعفة لتردد الأساسي. لذلك، تُسمى هذه التوافقيات بـالتوافقيات .
ستصبح التوافقيات موضوعاً متكرراً في هذا القسم، حيث أن أشكال الموجات مثل النبضات والمثلثات والمشرومبات تتبع صيغة تحدد التوافقيات التي تحتويها. بخلاف ذلك، قد تنحرف هذه الأشكال الموجية عن شكلها 'المثالي'.
مقدمة إلى المخططات الطيفية
نظرًا لأن الموجات الجيبية تُعد الآن المكون الرئيسي الذي يمكن أن يشكل أي صوت، يمكننا الآن تحليل الأصوات التي نسمعها بواسطة موجاتها الجيبية. الآن، لأي نوع من تحليل البيانات، لا يوجد شيء أكثر ملاءمة من رسم بياني لتنظيم كميات ضخمة من المعلومات. حسنًا، في حالة تحليل الصوت، لدينا الطيف الصوتي. تشفّر هذه الرسوم البيانية جميع معلومات عينة الصوت في رسم بياني واحد. يمثل محور X الزمن (بالثواني)، ويمثل محور Y الترددات (بالهرتز) للموجات الجيبية التي تم إنتاجها خلال ذلك الوقت، ويمثل المحور Z (سطوع الألوان لكل نقطة) القدرة/الجهارة (بالديسيبيل) لكل تردد.

Video - مثال على الطيف الصوتي الذي يصور ست ثوانٍ من قناة نبضية.
كما يمكنك أن تلاحظ من هذا المثال، كل خط أفقي (يُعرف أيضاً باسم تسلسل النقاط) يتوافق مع موجة جيبية (أقلها هو الأساسي، بينما الباقي هي التوافقيات) ويدل سطوعها على السعة. وبهذا الاعتبار، يمكننا استخراج المعلومات التالية:
- بمرور الوقت، تميل الخطوط الأفقية إلى التغيير بشكل كبير. ذلك هو تغير نغمة قناة النبضة.
- بداية كل نغمة عالية (النقاط ساطعة) يليها زوال سريع. هذا هو تحكم الغلاف في وحدة معالجة الصوت يعمل.
- علاوة على ذلك، في نهاية فترة التلاشي، تظهر خط عمودي ساطع. إنه قصير جداً لذلك فهو غير مسموع بسهولة ولكن، على أي حال، هذا ضوضاء (صوت طقطقة قصير) وأشك في أنها نتيجة لعيب في وحدة معالجة الصوت.
- حفظ نغمة لأكثر من 0.25 ثانية يُظهر فيبراتو (تقلبات مستمرة في المحور Y). لست متأكدًا مما إذا كان ذلك مقصودًا (باستخدام وظيفة المسح) أو تأثيرًا سلبيًا لوحدة معالجة الصوت.
لاحظ كيف أن معظم هذه الملاحظات ليس من السهل استنتاجها بمجرد سماع عينة صوت، هذا هو السبب في كتابة هذا القسم.
رسم وحدة معالجة الصوت
لدراسة وحدة معالجة الصوت NES'، قمت بتجميع خمس طيفات صوتية، كل منها يتوافق مع قناة من وحدة معالجة الصوت باستخدام الأمثلة السابقة. بالإضافة إليها، ستجد محاولتي لكشف ما تعرضه البيانات.
قبل أن نبدأ، يجب أن أعترف أنه لكي أتمكن من جمع البيانات بدون تحريفات (مثل الضجيج الإضافي)، كان هناك بعض التنازلات. تم الحصول على التسجيلات باستخدام برنامج Windows يسمى 'towave'، والذي يستخدم التوليف المحدود النطاق لحل مشكلة أساسية مع محاكاة رقائق الصوت القائمة على PSG. ببساطة، النبضات والمثلثات والمشرومبات مكونة من توافقيات لا نهائية. ومع ذلك، هذا لا يتوافق جيدًا مع بطاقات الصوت الحديثة المحدودة بـ 44.1 كيلوهيرتز للعينة. لذلك، تُستخدم تقنية تسمى 'التوليف المحدود النطاق' لاختيار التوافقيات الصحيحة ضمن حدود بطاقة الصوت. بشكل عام، توفر هذه التقنية توازنًا ممكنًا بين الأداء والدقة ومنع الناتج المشوّه. ومع ذلك، قد لا تكون البيانات متطابقة بنسبة 100% مع نظيرها التماثلي (الذي، بالمقابل، سيقدم أيضًا مشكلات أخرى، مثل الضوضاء من معدات التسجيل)، لكنني أعتقد أنها مقبولة إلى درجة معقولة، والأهم من ذلك، أنها تؤدي الوظيفة المطلوبة لهذا القسم من المقال.
وقيل ذلك، دعونا نبدأ التحليل.
النبض
تقول النظرية أن نغمة النبضة تحتوي فقط على توافقيات فردية. بمعنى آخر، يتم دمج الأساسي مع توافقه الثالث والخامس وما إلى ذلك. علاوة على ذلك، تقل سعة كل توافق مع ابتعادها عن الأساسي. صيغة السعة هي السعة = 1 ÷ رقم التوافق .
لذا، لاحظ كيف أن سطوع كل توافق في الطيف يخف كلما ارتفعت في محور Y. ومع ذلك، يبدو أن موجات نبض وحدة معالجة الصوت تعرض أيضًا تأثير التوافق المذكور سابقاً والذي يزداد مع كل رقم توافق. علاوة على ذلك، تحتوي مناطق في مخطط الطيف التي من المفترض أن تكون خالية من أي صوت على ترددات خافتة (ربما نتيجة الضجيج وعيوب أخرى).
مثلث
الموجة المثلثة تتكون أيضاً من توافقيات فردية ولكن مع انخفاض أسرع في سعتها (حيث السعة = 1 ÷ رقم التوافق² ).
ومع ذلك، هذا ليس ما يظهر هنا، فالمثلث على شكل سلم الذي تنتجه وحدة معالجة الصوت يؤدي إلى توافقيات إضافية وزيادة في السعات.
الضجيج
بطبيعة الحال، لا تلتزم الضوضاء بقواعد التوافقيات وقد تملأ الفضاء الترددي بالكامل عشوائيًا، وبالتالي الافتقار إلى درجة يمكن التعرف عليها بسهولة.
على الرغم من ذلك، من خلال متابعة الجدول الزمني يمكنك التمييز بين مختلف الإعدادات المسبقة للضوضاء التي توفرها وحدة APU، وكل منها يعرض مجموعة مميزة من التوافقيات.
عينة
على عكس القنوات السالفة، تشغل قناة العينة فقط أي تسجيل منخفض الدقة يقودها المطور إلى وحدة APU. باعتبار المثال الذي يلعب مجموعة الطبول، لا أستطيع رؤية أي ميزات قابلة للتحديد على المخطط الطيفي (باستثناء أوجه التشابه مع الضوضاء البيضاء).
سن منشار

المخطط الطيفي لقناة المنشار في VRC6.
كمكافأة، دعونا نتحقق أيضًا من قناة المنشار من توسعة VRC6. في البداية، يتم تكوين موجة سن المنشار المثالية من جميع التوافقيات وكل واحدة منها تظهر مع انخفاض في السعة (حيث السعة = 1 ÷ رقم التوافقي ).
هذا مطلب كبير بالنسبة للمعدات الرقمية وهو مكلف بطبيعة الحال على خرطوشة الألعاب (قد لا يحتاج ذلك إلى مثل هذا الكمال!). لذلك، وبالمثل لموجات المثلث في وحدة APU، تسلسل VRC6 موجات المنشار في 7 دورات (وبالتالي ينتج عن ذلك تأثيرات سلمية مشابهة).
وبالتالي، فإن المخطط الطيفي المقابل فوضوي جدًا، تملأ تقنيات التقريب في VRC6 الموجة بتوافقيات إضافية في العديد من الأماكن.
الخاتمة
حسناً، يبدو أن الأشكال الموجية الاصطناعية لنظام NES لا تتطابق بأي حال مع ما تمليه النظرية. هل يعني ذلك أن وحدة APU بها عيوب؟ لا! انتهى تصميم وحدة APU بمنح هذه الوحدة أصواتًا فريدة ويمكن التعرف عليها - وهذه الخصائص، سواء كانت مقصودة أم لا، جعلت المخططات الطيفية تعرض نتائج غير اعتيادية.
كملاحظة جانبية، قد تكون الجغرافيا المثالية ممتعة للنظر بأعيننا، لكن الفضول يكاد يوصل إلى نتيجة أن آذاننا ليست مولعة بشكل خاص بالموجات ذات الحواف المثالية! (قد تبدأ في سماع ضوضاء النقر).
بالنظر إلى المستقبل، سيكون تحليل الصوت باستخدام المخططات الطيفية مفيدًا في مقالات أخرى، سواء كان ذلك لتحليل بسيط أو لإجراء مقارنات مع أنظمة أخرى. يرجى ملاحظة أن هذه الرسوم البيانية ليست الأداة الشاملة بأي حال من الأحوال، خاصة مع العينات الصوتية التي تم خلطها بالعديد من القنوات/الأدوات (مما يصعب تفكيكها بشكل كبير). لكنني أعتقد أنها ستوفر بداية قوية لأي نوع من الدراسات الموضوعية.



