Complex Sound Generator SN76477は、効果音発生用のICです。バイポーラプロセスでアナログ・デジタル複合回路を集積しています。そのため、デジタル部はバイポーラアナログプロセスと集積しやすいI2L (IIL)回路になっています。
このICは、CPUとのインターフェースといえるようなものを持っていません。アナログミュージックシンセサイザを思いっきり簡略化したような構成になっていて、コンピュータのI/Oポート経由でトリガして音を発生させるような仕組みです。ヒュルヒュルとかピーポーとかゴシューンとかいうような数種類の効果音を発生させるのがやっとでしたね。インベーダーゲームなどのビデオゲームに組み込まれて、その効果音発生に使われることが多かったかな。これ以前の音源といえば、俗にいうビープ音、簡単な発振器かコンピュータの出力ポートの1本を用いて方形波を出力するだけのものが主流でしたから、これでも確かに複雑で高度な効果音発生用ICです。
左は端子が2.54 mmピッチの通常のDIPで、右は小型の25 mm×10 mmくらいの大きさのシュリンクDIPタイプのパッケージ。共に28ピンでピン配置も共通ですがSN76477はシュリンクDIPの方が一般的に使用されていました。
内部の機能ブロックはこのような構成になっています。
Super Low Frequency Oscilator (SLF)は音源用の発振器としても使用できますが、メインの音源となるVoltage Controlled Oscilator (VCO)の周波数を変調するのにも使用できます。VCOは外部から与えられる電圧か、SLF出力の三角波によって、周波数変調を行なうことができます。外部から与えることにして、I/Oポート出力をD/A変換したものを入力すれば、電子オルガン的な動作もできないことはありませんが、周波数設定精度や直線性の問題があって、うまくいかないでしょう。Noise Generatorは擬似乱数発生回路を用いてノイズを発生します。Noise FilterはおそらくCRワンショットを用いて細いノイズパルスを除去する回路だと思われますが、ノイズ発生回路の発振周波数制御と組み合わせてノイズの音色を変えられますね。
Mixerは以上の3種類の音源を組み合わせることができますが、なんとアナログ回路ではありません。論理回路のOR回路だと思えば間違いありません。SLF, VCO, NFからMixerに入力される信号はHレベルとLレベルの2値しかとらないロジックレベルの信号です。SLFやVCOは方形波ですし、NF出力は一定周期でないだけのロジック的な交流信号です。この3本の入力のどれをORするかだけは外部入力によって決められますから、VCO出力だけ、あるいはVCOとノイズを重ねあわせただけというような信号を、次のエンベロープジェネレータに出力できます。ロジックレベルでの混合ですから、VCOを1に対し、ノイズ分を1/3だけ混ぜるなどということはできません。
One Shot回路、Envelope Select回路、Envelope Generator & Modulator回路で、はじめて音の立ち上がりや立ち下がりにアナログ的な強弱を付けられるようになります。最後にAmpブロックがあって、多少の外付け部品でスピーカを駆動できるようになっています。また、7.5 Vから10 Vの非安定化電源を接続しても、内部で使用する安定した5 V電源を生成するRegulator回路も内蔵しています。
この後、端子の役割を表にして、音作りの様子が具体的にわかるようにしようと思ってます。
端子 | 名称 | 所属Block | 設定法 | 意味 |
1 | Envelope-Select-1 | ES | デジタル | エンベロープ機能選択端子 |
2 | GROUND | Regulator | 電源 | 電圧の基準端子 |
3 | External-Noise-Clock | NG | デジタル | ノイズ用クロックの外部入力 |
4 | Noise-Clock-Control | NG | R (GND) | ノイズ用クロック発振回路の制御入力で抵抗値によってクロック周波数が決まる Hレベルを与えると外部入力が有効 |
5 | RNF | NF | R (GND) | ノイズフィルタのカットオフ周波数決定用抵抗接続端子 |
6 | CNF | NF | C (GND) | RNFと組み合わせてノイズフィルタのカットオフ周波数決定 |
7 | RD | EG&M | R (GND) | ディケイ時間設定用抵抗接続端子 |
8 | CA/D | EG&M | C (GND) | アタック・ディケイ時間設定用コンデンサ接続端子 |
9 | System-Inhibit | OS | デジタル | サウンド出力禁止ないしワンショットのトリガ |
10 | RA | EG&M | R (GND) | アタック時間設定用抵抗接続端子 |
11 | RG | Amp. | R (GND) | アンプリチュード・コントロール抵抗接続端子 |
12 | RF | Amp. | R (13) | フィードバック抵抗接続端子 |
13 | Audio-Output | Amp. | -- | オーディオ出力 |
14 | Vcc | Regulator | 電源 | 7.5 Vから10 Vまでの電源電圧を入力することができる 5 Vの安定化電源があり、Vregに直接給電する場合には不要 |
15 | Vreg | Regulator | 電源 | 基準電圧入出力端子 安定化された5 Vを供給する端子でもありVccに与えた電源から安定化した5 Vを出力する端子でもある |
16 | External-VCO-Control | VCO | アナログ | VCOの発振周波数を決める制御電圧入力 およそ10倍の発振周波数可変能力がある |
17 | CVCO | VCO | C (GND) | VCOの発振用コンデンサ接続端子 |
18 | RVCO | VCO | R (GND) | VCOの発振用抵抗接続端子 |
19 | Pitch-Control | VCO | アナログ | VCOのデューティ比設定電圧入力 音色を多少変えられる |
20 | RSLF | SLF | R (GND) | SLF発振周波数設定用抵抗接続端子 |
21 | CSLF | SLF | C (GND) | SLF発振周波数設定用コンデンサ接続端子 |
22 | VCO-Select | VCO | デジタル | VCOの制御電圧をSLFの三角波出力とするか外部入力とするか決定する |
23 | Cos | OS | C (GND) | ワンショット時間設定用コンデンサ接続端子 |
24 | Ros | OS | R (GND) | ワンショット時間設定用抵抗接続端子 |
25 | Mixer-Select-B | Mixer | デジタル | ミキサー入力選択端子 |
26 | Mixer-Select-A | Mixer | デジタル | ミキサー入力選択端子 |
27 | Mixer-Select-C | Mixer | デジタル | ミキサー入力選択端子 |
28 | Envelope-Select-2 | ES | デジタル | エンベロープ機能選択端子 |
設定法の項目からわかるように、音の性質を決定する大半の設定要素はCPUから与えられるデータではなく、回路製作時に固定されてしまう抵抗やコンデンサの値になっています。アナログスイッチなどを使用して抵抗を切り替えたり、特殊な可変抵抗を使用することも可能ではありますが、普通は音作りは回路の設計製作時に決められてしまい、プログラムしだいで自由な音を作り出すことはできません。I/Oポートから簡単に操作できる機能はミキサー入力切り替えとエンベロープ機能選択とワンショットのトリガくらいですね。D/A変換を通して制御可能なのはVCOの発振周波数とデューティ比調整だけ。ただ、ミキサー入力の選択は制御しやすいですから、爆発音やエンジン音などに使用するノイズジェネレータ出力と、楽音的なVCO出力を切り替えて2通りの音を出力するくらいなら簡単なんですが。
結局、最初に触れたようにヒュルヒュルとかピュンピュンといった効果音を作るためのICであって、いくつかの音色の異なる楽器を組み合わせた音楽を鳴らすような用途には使えません。
Return to IC Collection