JPH0816168A - 圧縮波形データの復調装置 - Google Patents

圧縮波形データの復調装置

Info

Publication number
JPH0816168A
JPH0816168A JP6149615A JP14961594A JPH0816168A JP H0816168 A JPH0816168 A JP H0816168A JP 6149615 A JP6149615 A JP 6149615A JP 14961594 A JP14961594 A JP 14961594A JP H0816168 A JPH0816168 A JP H0816168A
Authority
JP
Japan
Prior art keywords
waveform data
processing
data
demodulated
buffer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
JP6149615A
Other languages
English (en)
Inventor
Yoshinori Yashiro
義徳 矢代
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP6149615A priority Critical patent/JPH0816168A/ja
Publication of JPH0816168A publication Critical patent/JPH0816168A/ja
Abandoned legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Television Receiver Circuits (AREA)

Abstract

(57)【要約】 【目的】 一定の周期でV−RAMに画像データを転送
する処理などに波形データの復調処理を混在させる場合
に、復調波形データのバッファサイズを小さくさせるこ
とを目的とする。 【構成】 CPU101は、垂直ブランキング期間にお
いて、画像データROM104からV−RAM106へ
画像データを転送する。一方、ハードバッファ108
は、D/A変換器109に出力すべき音声波形データが
なくなると、CPU101にインタラプト1をかける。
CPU101は、上述の画像データ転送処理を含む現在
実行中の処理を中断し、最優先で、ソフトバッファ11
3内の最も古い64バイトの音声波形データをハードバ
ッファ108に転送し、続いて、音声波形ROM103
中のACOMP圧縮データに対して復調処理を実行する
ことにより、ソフトバッファ113に、復調された音声
波形データを書き込む。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、一定の周期でV−RA
Mに画像データを転送する処理などと混在させて、波形
データの復調処理を実行する技術に関する。
【0002】
【従来の技術及び発明が解決しようとする課題】近年で
は、マルチメディア技術の発達により、例えば電子楽器
において、楽音の発音機能と画像の表示機能を同時に具
備するシステムが多く存在する。
【0003】この場合に、例えばROMなどから読み出
され又は演算により生成される画像データについて、そ
の表示が行われるために、例えば1/60sec(秒)
の一定周期で1走査線おきの半画面分(これをフィール
ドと呼ぶ)の画像データがビデオRAM(V−RAM)
に転送され、1/30secで全走査線分即ち2フィー
ルド1画面分の画像データがV−RAMに転送される必
要がある。このような1フィールド分の画像データを単
位とする転送動作は、一般に、1/60sec毎に垂直
ブランキング期間に同期して発生するタイマインタラプ
トによって起動され、その垂直ブランキング期間内に完
了する必要がある。ここで、垂直ブランキング期間は、
走査線の数に依存するが、例えば1〜3msec程度で
ある。
【0004】一方、音声波形データは、例えばそのサン
プリング周波数を20kHzとすれば、1/20000
=0.05msecの一定周期(サンプリング周期)に
1サンプルの割合で生成され出力される必要がある。こ
のような処理動作は、一般的に、0.05msec毎に
発生するタイマインタラプトによって起動され、そのサ
ンプリング周期内に完了する必要がある。
【0005】ここで、上述のような一般的なインタラプ
トによる画像データの転送処理と音声波形データの生成
・出力処理とを単純に組み合せて画像の表示と音声の出
力を同時に行わせようとした場合において、両者のイン
タラプトが競合した際には必然的に何れか一方のインタ
ラプトを優先させる必要があるが、その場合に以下のよ
うな問題が発生する。
【0006】まず、画像データのためのインタラプトを
優先させた場合、その転送処理が行われている垂直ブラ
ンキング期間において音声波形データのためのインタラ
プトが禁止されることになり、その期間音声の出力がと
ぎれてしまうという問題が発生する。
【0007】一方、音声波形データのためのインタラプ
トを優先させた場合、画像データの転送処理が行われて
いる垂直ブランキング期間においても0.05msec
毎に音声波形データのためのインタラプトが発生しその
都度画像データの転送処理が中断されてしまう。この結
果、半画面分の画像データの転送を1つの垂直ブランキ
ング期間内に完了できなくなるおそれがあり、そのよう
な事態が発生した場合には画像の表示が乱れてしまうと
いう問題が発生する。
【0008】更に、近年では、ROMなどから音声波形
データを読み出して出力する音声波形データ処理方式が
多く採用されているが、その場合に、ROMなどに記憶
されている音声波形データに対して圧縮処理が施されて
いる場合が多い。そのような場合には、音声波形データ
の処理時に、ROMから圧縮された音声波形データを読
み出した後、その音声波形データを復調することにより
元の音声波形データを再生して出力する必要が生ずる。
このような圧縮・復調方式のうち圧縮度の高いものとし
て、例えばACOMP(Audio COMPress
ion)処理方式、FFT(高速フーリエ変換)やDC
T(離散コサイン変換)を用いた周波数次元での処理方
式などが知られている。このような圧縮・復調方式で
は、複数サンプルを単位として処理を行う場合が多く、
復調処理においては複数サンプリング周期にわたって複
数サンプル分を一度に復調する必要がある場合が多い。
【0009】従って、このような圧縮・復調方式が採用
される音声波形データは、その出力処理時には、0.0
5msecというようなサンプリング周期より長い周期
で処理される必要がある。従って、このような音声波形
データの復調処理を実行するためのインタラプト処理と
前述した画像データの転送を実行するためのインタラプ
ト処理とをどのように調停するかという問題が生ずる。
【0010】この問題の1つの解決方法として、本出願
人は、音声波形データの復調処理において復調される複
数サンプル分の復調音声波形データをストアするための
バッファを用意し、垂直ブランキング期間の開始割り込
みに同期した画像データの転送処理の実行に続いて、複
数サンプル分の音声波形データの復調処理を実行し、復
調された複数サンプル分の音声波形データを順次バッフ
ァに転送してストアするようにした技術を提案している
(特願平5−326886号出願)。
【0011】この技術においては、1回の音声波形デー
タの復調処理において、垂直走査期間中に必要な復調音
声波形データが発生させられてバッファに転送される。
一例として、画像出力方式がNTSC方式で、出力され
る音声波形データのサンプリング周波数が20kHzの
場合、垂直走査期間中に必要な復調音声波形データの数
は、 20(kHz)×16.7(msec)=334(サン
プル) となる。従って、復調音声波形データの1サンプルが8
ビットである場合、前述したバッファの最低サイズは、
334バイトとなる。
【0012】従って、このような容量のバッファを用意
することができるシステムにおいては、上述の画像デー
タ転送と音声波形データ復調処理との混在方式は、非常
に有効な方式である。
【0013】しかし、例えばこのような方式が、画像表
示機能付き電子楽器などに適用される場合には、上述の
ような容量を有するバッファを確保できない場合があ
り、そのような場合には、上述の方式を適用することが
できないという問題点を有していた。
【0014】本発明の課題は、一定の周期でV−RAM
に画像データを転送する処理などに波形データの復調処
理を混在させる場合に、復調波形データのバッファサイ
ズを小さくさせることにある。
【0015】
【課題を解決するための手段】本発明は、まず、ACO
MP圧縮方式などによって圧縮された波形データ(音声
波形データ)である圧縮波形データを記憶する圧縮波形
データ記憶手段(音声波形ROM103)を有する。
【0016】次に、圧縮波形データ記憶手段に記憶され
た圧縮波形データから復調される波形データである復調
波形データを一時的に保持する第1のバッファ手段(ソ
フトバッファ113)を有する。
【0017】また、第1のバッファ手段から転送される
復調波形データを一時的に保持する第2のバッファ手段
(ハードバッファ108)を有する。続いて、所定のサ
ンプリング周期に同期して第2のバッファ手段から復調
波形データを読み出して出力する波形データ出力手段
(D/A変換器109)を有する。
【0018】そして、第2のバッファ手段において復調
波形データが存在しなくなった時点又は復調波形データ
の保持量が所定値以下になった時点において、その時点
において実行されているメインプログラムの処理又は画
像転送処理などの処理に優先する割り込み処理(インタ
ラプトルーチン1)によって、第1のバッファ手段に保
持されている復調波形データを第2のバッファ手段に転
送し、その転送に続いて、少なくともその転送時の復調
波形データの転送量分の圧縮波形データ記憶手段に記憶
されている圧縮波形データに対して復調処理を実行し
て、その結果得られる復調波形データを第1のバッファ
手段にストアする波形データ復調制御手段(インタラプ
トルーチン1を実行するCPU101)を有する。
【0019】
【作用】波形データ復調制御手段は、第2のバッファ手
段において復調波形データが存在しなくなった時点等に
おいて、最優先の割り込み処理によって、第1のバッフ
ァ手段に保持されている復調波形データを第2のバッフ
ァ手段に転送し、その転送に続いて即座に、少なくとも
その転送時の復調波形データの転送量分の圧縮波形デー
タ記憶手段に記憶されている圧縮波形データに対して復
調処理を実行し、その結果得られる復調波形データを第
1のバッファ手段にストアする。
【0020】この結果、第1のバッファ手段の記憶容量
として、第2のバッファ手段の記憶容量と同等からそれ
より少し大きいだけの記憶容量を確保するだけで、波形
データの比較的複雑なリアルタイムの復調処理を、画像
転送表示処理などと混在させて実行することができる。
【0021】
【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。 <実施例の構成と概略動作>図1は、本発明の実施例の
構成図である。この実施例は、例えば電子鍵盤楽器とし
て実現されている。
【0022】CPU101は、それが内蔵するプログラ
ムを実行する。これにより、CPU101は、まず、バ
ス112を介して接続されているスイッチ部102内の
各種機能スイッチと鍵盤スイッチの状態を走査して取り
込み、各状態に応じた処理を実行する。
【0023】また、CPU101は、スイッチ部102
の操作状態に応じて、音声波形データの発音が指示され
ている場合には、1/60sec毎に表示部107での
画像表示における垂直ブランキング期間に同期して発生
するタイマインタラプト2に対応して、後述するメイン
ルーチンにインタラプトをかけ、後述するインタラプト
ルーチン2を起動する。CPU101は、メインルーチ
ンの処理を中断した後に、インタラプトルーチン2にお
いて、垂直ブランキング期間内で、画像データROM1
04に記憶されている画像データのうちスイッチ部10
2内の機能スイッチにより指定された画像データの1フ
ィールド分を、バス112からVDP(ビデオデータプ
ロセッサ)105を介してV−RAM(ビデオRAM)
106に転送する。CPU101は、インタラプトルー
チン2の処理を終了すると、中断していたメインルーチ
ンの処理を再開する。
【0024】一方、ハードバッファ108はCPU10
1内のソフトバッファ113から音声波形データを64
バイトずつ受け取り、それらをサンプリング周期毎に順
次D/A変換器109に出力する。D/A変換器109
から出力されるアナログ音声波形信号は、アンプ110
で増幅された後、スピーカ111から音声(楽音)とし
て放音される。ハードバッファ108は、出力すべき音
声波形データがなくなると、CPU101にデータ転送
要求であるインタラプト1をかける。CPU101は、
ハードバッファ108からインタラプト1がかかると、
現在実行中の処理を中断して、最優先でインタラプトル
ーチン1を起動する。CPU101は、このルーチンに
おいて、まず、ソフトバッファ113内の最も古い64
バイトの音声波形データをハードバッファ108に転送
する。それに続いて、CPU101は、音声波形ROM
103から、スイッチ部102内の機能スイッチにより
音色が選択され鍵盤スイッチにより発音指示された音声
波形データに対応するACOMP(Audio COM
Pression)圧縮データを読み出し、そのデータ
に対してACOMP復調処理を実行することにより、C
PU101が内蔵するRAMであるソフトバッファ11
3に、復調された音声波形データを書き込んでゆく。こ
の場合に、CPU101は、1回のインタラプトルーチ
ン1に対応して、1発音動作分のACOMP圧縮データ
が残っている限り、かつソフトバッファ113に新たな
音声波形データを書き込む余裕がある限り、上述した処
理を実行する。このインタラプトルーチン1は、前述し
たインタラプトルーチン2に対しても優先して実行され
る。従って、CPU101は、インタラプトルーチン2
において画像データの転送を行っている途中でも、それ
を中断してソフトバッファ113からハードバッファ1
08への音声波形データの転送処理を行う。CPU10
1は、インタラプトルーチン1の処理を終了すると、中
断していたメインルーチン又はインタラプトルーチン2
の処理を再開する。
【0025】なお、CPU101は、スイッチ部102
の操作状態に応じて、音声波形データの発音が指示され
ていない場合は、上述の画像データの転送処理と音声波
形データの復調処理、及びハードバッファ108からの
インタラプト1に基づくインタラプトルーチン1の処理
は実行せず、メインルーチンの処理のみを実行する。こ
の場合、CPU101は、以下に説明するVDP105
からのインタラプト要求のみを受け付ける。
【0026】VDP105は、スイッチ部102の操作
状態に応じて、音声波形データの発音が指示されていな
い場合には、1/60sec毎に表示部107での画像
表示における垂直ブランキング期間に同期して発生する
前述したタイマインタラプト2に対応して、CPU10
1にインタラプト要求を発生する。CPU101は、こ
のインタラプト要求を受け取ると、メインルーチンの処
理を中断し、VDP105にインタラプト許可を出力し
た後に、自分自身の動作を停止する。VDP105は、
CPU101からインタラプト許可を受け取ると、画像
データROM104に記憶されている画像データのうち
スイッチ部102内の機能スイッチによって指定された
画像データの1フィールド分を、バス112を介してV
−RAM(ビデオRAM)106にDMA(ダイレクト
メモリアクセス)転送する。その後、VDP105は、
CPU101に転送終了信号である動作停止解除信号を
出力する。この結果、CPU101は、中断していたメ
インルーチンの処理を再開する。
【0027】また、VDP105は、1/60sec毎
に表示部107での画像表示における垂直ブランキング
期間が終了するタイミングに同期して発生するタイマイ
ンタラプト3に対応して、次のタイマインタラプト2の
発生タイミングまでの間に、画像データROM104か
らV−RAM106に転送された1フィールド分の画像
データを順次RGB信号に変換した後、信号線114を
介して表示部107に出力する。 <メインルーチンの説明>図2は、図1のCPU101
において実行されるメインルーチンの動作フローチャー
トである。
【0028】始めに、装置の電源が投入されると、ステ
ップ201において、CPU101に内蔵される特には
図示しないRAM(ソフトバッファ113を含む)及び
レジスタの内容などがイニシャライズされる。
【0029】以後、ステップ202〜206の各処理が
繰り返し実行される。ステップ202の機能スイッチの
スキャン処理では、図1のスイッチ部102内のスイッ
チのうち、音色指定スイッチ、画像指定スイッチなどの
機能キーの設定状態が走査され、その設定状態がCPU
101内の特には図示しないRAMなどに取り込まれ
る。
【0030】ステップ203では、ステップ202での
機能スイッチのスキャン結果に基づいて、音色指定スイ
ッチ、画像指定スイッチなどの各機能キーの設定に対応
する処理が実行される。具体的には、音声波形ROM1
03及び画像データROM104の読出しアドレスを決
定し、CPU101内の特には図示しないレジスタに設
定する処理などが実行される。
【0031】ステップ204の鍵盤スイッチのスキャン
処理では、スイッチ部102内の特には図示しない鍵盤
スイッチの押鍵状態が走査され、その押鍵状態がCPU
101内の特には図示しないRAMなどに取り込まれ
る。
【0032】ステップ205では、ステップ204で検
出された鍵盤スイッチの押鍵状態に対応して、CPU1
01内の特には図示しないRAMに設けられる発音制御
データ領域に必要な発音制御データが設定される。
【0033】ステップ206のその他各種処理では、種
々の音響効果を付加するための処理などが実行される。 <インタラプトルーチン1の説明>ハードバッファ10
8は、一定のサンプリング周期でD/A変換器109に
復調音声波形データを転送し、当該バッファ内に復調音
声波形データが存在しなくなった時点で、CPU101
にデータ転送要求として、インタラプト1を出力する。
CPU101は、ハードバッファ108からのインタラ
プト1を受け付けると、図2のメイン動作フローチャー
トの処理又は後述する図5のインタラプトルーチン2の
処理を中断し、図3の動作フローチャートで示されるイ
ンタラプトルーチン1のプログラムの実行を開始する。
このインタラプトルーチン1は、前述したように、後述
する図5のインタラプトルーチン2に対しても優先して
実行される。従って、CPU101は、後述する図5の
ステップ502で画像データの転送を行っている途中で
も、それを中断してソフトバッファ113からハードバ
ッファ108への音声波形データの転送処理を行う。
【0034】CPU101は、まず図3のステップ30
1で、ソフトバッファ113に最も古くストアされてい
るハードバッファ108のサイズと同じサイズである例
えば64バイト分の復調音声波形データを、ハードバッ
ファ108に転送する。この処理は、1サンプリング周
期内に完了するため、ハードバッファ108は、任意の
サンプリング周期において出力すべき復調音声波形デー
タがなくなったことを認識した後そのサンプリング周期
が終了するまでの間に、ソフトバッファ113から新た
な64バイトの音声波形データを受け取り、そのうちの
最も古い音声波形データのサンプルをD/A変換器10
9に出力することができる。
【0035】次に、ステップ302では、音声波形RO
M103から、スイッチ部102内の機能スイッチによ
り音色が選択され鍵盤スイッチにより発音指示された音
声波形データに対応するACOMP圧縮データが読み出
され、そのデータに対してACOMP復調処理が実行さ
れることにより、CPU101が内蔵するRAMである
ソフトバッファ113に、復調された音声波形データが
書き込まれてゆく。この処理の詳細な動作フローチャー
トを、図4に示す。図4に示されるACOMP復調処理
につき、図8及び図9を用いながら説明する。
【0036】まず、図8は、図1の音声波形ROM10
3に記憶されるACOMP圧縮データの構成図である。
バイト(8ビット)単位で記憶されるデータ列のうち、
まず、先頭バイトのビットb6 〜b0 には、元音声波形
データの先頭のサンプル値の上位7ビットの値が記憶さ
れる。この場合に、最上位ビットb7 には、そのバイト
に元音声波形データが記憶されていることを示すフラグ
1が立てられる。このように元音声波形データが記憶さ
れているバイトデータをRESYNC処理部という。
【0037】2バイト目以降は、本実施例の場合、デル
タ変調部、RESYNC処理部、又はスケルチ処理部の
うちの、何れかのデータ列が続く。図8の例では、1バ
イト目のRESYNC処理部に続いて、デルタ変調部が
配置されている。このデルタ変調部は、元音声波形デー
タをデルタ変調方式によって圧縮した結果得られるデー
タ群である。
【0038】デルタ変調方式とは、現在のサンプル値と
1サンプル前のサンプル値との差分を、所定のデルタ変
調値によって表現する方式である。即ち、復調時には、
1サンプル前のサンプル値に現在のデルタ変調値が加算
されることにより、現在のサンプル値が復調される。
【0039】デルタ変調部は、1バイトのヘッダ部と4
乃至16バイトの圧縮データ部とから構成される。ヘッ
ダ部のビットb5 とb4 の2ビットのデータはビット精
度を表し、ビットb3 〜b0 の4ビットのデータは乗算
値を示している。
【0040】ここで一般的に、データ作成者により予め
設定されたフレームサイズをx、ビット精度をyビット
とすると、圧縮データ部のサイズは、x×y/8(バイ
ト)となる。例えば、フレームサイズを32サンプル、
ビット精度を1ビットとすると圧縮データ部のサイズは
4バイトとなり、フレームサイズを32サンプル、ビッ
ト精度を2ビットとすると圧縮データ部のサイズは8バ
イトとなり、フレームサイズを32サンプル、ビット精
度を4ビットとすると圧縮データ部のサイズは16バイ
トとなる。このように、デルタ変調部内の圧縮データ部
のサイズは、フレームサイズとビット精度に応じて決定
される。
【0041】図9(a) に示されるように、ビット精度の
値が01なら1ビットデルタ変調、ビット精度の値が1
0なら2ビットデルタ変調、ビット精度の値が11なら
4ビットデルタ変調が、それぞれ行われる。そして、こ
のデルタ変調部においてフレームサイズ=32サンプル
のもとで1ビットデルタ変調が行われるなら、圧縮デー
タ部の8ビット×4バイト=32ビットの圧縮データ値
から算出される32個のデルタ変調値により、32サン
プル分のサンプル値が復調される。また、このデルタ変
調部においてフレームサイズ=32サンプルのもとで2
ビットデルタ変調が行われるなら、圧縮データ部の2ビ
ットごと32(8ビット×8バイト/2=32)個の圧
縮データ値から算出される32個のデルタ変調値によ
り、32サンプル分のサンプル値が復調される。更に、
このデルタ変調部においてフレームサイズ=32サンプ
ルのもとで4ビットデルタ変調が行われるなら、圧縮デ
ータ部の4ビットごと32(8ビット×16バイト/4
=32)個の圧縮データ値から算出される32個のデル
タ変調値により、32サンプル分のサンプル値が復調さ
れる。
【0042】次に、ヘッダ部のビットb3 〜b0 の4ビ
ットの乗算値と、ビット精度に応じて圧縮データ部から
抽出される圧縮データ値とから、図9(b) に示される変
換規則によって、デルタ変調値が算出される。
【0043】このようにしてデルタ変調部から算出され
るデルタ変調値が、1サンプル前に得られているサンプ
ル値(初期値はデルタ変調部の手前のブロックに対する
復調処理によって復調される最後の復調音声波形デー
タ)に順次加算されることにより、現在のサンプル値が
復調される。
【0044】ここで、圧縮時においては、32サンプル
からなる1つの元音声波形データフレームに対して、そ
のフレーム内の各サンプルを最適に表現可能なビット精
度、乗算値、及び各圧縮データ値が算出されることにな
る。そして、上述の復調時においては、1つのデルタ変
調部から常に1フレーム分即ち例えば32サンプル分の
音声波形データが復調されることになる。
【0045】また、図8に示されるように、デルタ変調
部のヘッダ部のビットb7 とb6 には、それらのビット
が含まれるバイトと次以降の4バイトがデルタ変調部の
データであることを示す識別フラグ00がセットされ
る。従って、復調時に、図4のステップ401におい
て、ビットb7 とb6 が共に0であるバイトが検出され
た場合は、図4のステップ409に制御が移る。そし
て、後述する図4のステップ409において、更にビッ
トb5 とb4 のビット精度が検出され、そのビット精度
に応じて、後述する図4のステップ410〜412の繰
り返しによって、ヘッダ部のバイトとそのバイト以降の
4乃至16バイトからなる計5乃至17バイトのデルタ
変調部に対し、上述したようにして、1フレーム=32
サンプル分の音声波形データが復調される。
【0046】上述のようにデルタ変調が続けられると、
元音声波形データと復調された音声波形データとの誤差
が所定の範囲を越え、この復調された音声波形データか
ら再生される音声の音質に悪影響を及ぼす場合が発生す
る。そこで、圧縮時に、元音声波形データと復調された
音声波形データとの誤差が所定の範囲を越えた場合に
は、デルタ変調が中止され、先頭の1バイト目と同様
に、1バイトのRESYNC処理部が挿入され、そこに
元音声波形データが記憶される。これにより、誤差の蓄
積を抑制することができる。このとき、前述したよう
に、RESYNC処理部である1バイトの最上位ビット
7 には、そのバイトがRESYNC処理部であること
を示すフラグ1が立てられる。従って、図4のステップ
401で、ビットb7 が1であるバイトが検出された場
合には、ステップ402に制御が移り、後述するステッ
プ403において、そのバイトのビットb6 〜b0 から
抽出されたデータ値が2倍、即ち1ビット左シフトの演
算が実行されることによって、元音声波形データが復調
され、それがCPU101内のソフトバッファ113に
書き込まれる。
【0047】一方、連続する元音声波形データのサンプ
ル値の変化が、復調された音声波形データから再生され
る音声の音質に影響を及ぼさない程度の許容範囲内であ
る場合には、それらの連続する複数のサンプル値が先頭
の1つのサンプル値に置き換えられる。この場合には、
図8に示されるスケルチ処理部が挿入される。このスケ
ルチ処理部のビットb5 〜b0 には、そのスケルチ処理
部の直前に求まっているサンプル値と同じサンプル値を
何回繰り返し復調するかを示すリピート回数が記憶され
る。このリピート回数は、最大で26 −1=63回であ
る。また、スケルチ処理部のビットb7 とb6 には、そ
れらのビットが含まれるバイトがスケルチ処理部のデー
タであることを示す識別フラグ01がセットされる。従
って、図4のステップ401で、ビットb7 が0でビッ
トb6 が1であるバイトが検出された場合には、後述す
るステップ405〜407の繰り返しによって、そのバ
イトから抽出されるリピート回数分だけ、そのバイトの
直前に求まっているサンプル値と同じサンプル値を有す
る音声波形データが繰り返し復調され、それらがCPU
101内のソフトバッファ113に書き込まれる。
【0048】以上のように、ACOMP方式では、元音
声波形データの状態に応じて、RESYNC処理、デル
タ変調処理、又はスケルチ処理の何れかの圧縮処理が選
択されてACOMP圧縮データが作成されているため、
音質が良くかつ非常に効率の高い音声波形データの圧縮
が実現される。
【0049】以下、上述の復調原理に基づく図4の動作
フローチャートの処理について、具体的に説明する。ま
ず、ステップ401では、上述したようにして、復調処
理部分の圧縮方法が判定される。
【0050】図4のステップ401で、ビットb7 が1
であるバイトが検出され、復調処理部分の圧縮方法がR
ESYNC処理によって圧縮されていると判定された場
合には、ステップ402に制御が移り、ここで、ソフト
バッファ113に1バイトの空きがあるかどうかが検査
される。
【0051】そして、ソフトバッファ113に1バイト
の空きがありステップ402の判定がYESの場合に
は、ステップ403で、そのバイトのビットb6 〜b0
から抽出されたデータ値が2倍、即ち1ビット左シフト
の演算が実行されることによって、元音声波形データが
復調され、それがCPU101内のソフトバッファ11
3に書き込まれる。
【0052】ソフトバッファ113に1バイトの空きが
なくステップ402の判定がNOとなった場合には、そ
のまま図4の処理を終了する。図4のステップ401
で、ビットb7 が0でビットb6 が1であるバイトが検
出され、復調処理部分の圧縮方法がスケルチ処理によっ
て圧縮されていると判定された場合には、まず、ステッ
プ404において、必要パラメータがセットされる。通
常は、上述のバイトから抽出されるリピート回数が、残
りリピート回数を示す必要パラメータとしてセットされ
る。また、前回のインタラプトルーチン1の実行時にス
ケルチ処理の途中でソフトバッファ113がフルになり
スケルチ処理が中断した場合には、その中断時点の残り
リピート回数を示す必要パラメータが特には図示しない
RAMからロードされ、上記必要パラメータとしてセッ
トされる。
【0053】その後、ステップ405で、ソフトバッフ
ァ113に1バイトの空きがあるかどうかが検査され
る。そして、ソフトバッファ113に1バイトの空きが
ありステップ405の判定がYESの場合には、ステッ
プ406で、そのバイトの直前に求まっているサンプル
値と同じサンプル値を有する音声波形データが、復調音
声波形データとしてCPU101内のソフトバッファ1
13に書き込まれる。その後、残りリピート回数を示す
必要パラメータの値が−1される。
【0054】続いて、ステップ407で、全リピート回
数分の処理が終了したか否かが判定される。具体的に
は、残りリピート回数を示す必要パラメータの値が0に
なったか否かが判定される。
【0055】全リピート回数分の処理が終了しておらず
ステップ407の判定がNOの場合には、ステップ40
5に制御が戻る。全リピート回数分の処理が終了しステ
ップ407の判定がYESとなった場合には、ステップ
414に進む。
【0056】上述のステップ405〜407の処理の繰
り返しにおいて、ソフトバッファ113に1バイト分の
空きがなくなりステップ405の判定がNOとなった場
合には、スケルチ処理が中断され、ステップ408で、
その時点の残りリピート回数を示す必要パラメータが、
特には図示しないRAMにセーブされて、図4に示され
る動作フローチャートの処理を終了する。
【0057】図4のステップ401において、ビットb
7 とb6 が共に0であるバイトが検出され、復調処理部
分の圧縮方法がデルタ変調処理によって圧縮されている
と判定された場合は、まず、ステップ409において、
必要パラメータがセットされる。ここでは、通常は、デ
ルタ変調部のヘッダ部のバイトのビットb5 とb4 のビ
ット精度が読み出され、これがデルタ変調部内の圧縮デ
ータ部から1回に読み出される圧縮データ値のビット数
を示す必要パラメータとしてセットされる。また、デル
タ変調部のヘッダ部のバイトのビットb3 〜b0 の4ビ
ットの乗算値も読み出され、必要パラメータとしてセッ
トされる。更に、デルタ変調処理によって復調されるべ
き残りサンプル数が32にセットされる。これは、1つ
のデルタ変調部から復調される音声波形データのサンプ
ル数が、前述したように32であるためである。また、
前回のインタラプトルーチン1の実行時にデルタ変調処
理の途中でソフトバッファ113がフルになりデルタ変
調処理が中断した場合は、その中断時点のビット精度、
乗算値、及び残りサンプル数を示す必要パラメータが特
には図示しないRAMからロードされ、上記必要パラメ
ータとしてセットされる。
【0058】その後、ステップ410で、ソフトバッフ
ァ113に1バイトの空きがあるかどうかが検査され
る。そして、空きがある場合は、ステップ411で、ス
テップ409でセットされた必要パラメータを用いて、
前述したデルタ変調の復調原理に基づいて1バイト分の
音声波形データの復調処理が実行される。その後、残り
サンプル数を示す必要パラメータの値が−1される。こ
のようにして復調された1バイトの音声波形データがC
PU101内のソフトバッファ113に書き込まれる。
【0059】続いて、ステップ412で、処理対象のデ
ルタ変調部に対応する全サンプル数分の処理が終了した
か否かが判定される。具体的には、残りサンプル数を示
す必要パラメータの値が0になったか否かが判定され
る。
【0060】全サンプル数分の処理が終了しておらずス
テップ412の判定がNOの場合には、ステップ410
に制御が戻る。全サンプル数分の処理が終了しステップ
412の判定がYESとなった場合には、ステップ41
4に進む。
【0061】上述のステップ410〜412の処理の繰
り返しにおいて、ソフトバッファ113に1バイト分の
空きがなくなりステップ410の判定がNOとなった場
合には、デルタ変調処理が中断され、ステップ413
で、ビット精度、乗算値、及びその時点の残りサンプル
数を示す必要パラメータが、特には図示しないRAMに
セーブされて、図4に示される動作フローチャートの処
理を終了する。
【0062】ステップ403で示されるソフトバッファ
113への転送処理が終了した後、又はスケルチ処理に
対応する復調処理において全リピート回数分の処理が終
了しステップ407の判定がYESとなった後、或い
は、デルタ変調処理に対応する復調処理において全サン
プル数分の処理が終了しステップ412の判定がYES
となった後は、ステップ414において、音声波形RO
M103に記憶されている1発音分のACOMP圧縮デ
ータ群の全てのデータの復調が完了したか否かが判定さ
れる。
【0063】音声波形ROM103に記憶されている1
発音分のACOMP圧縮データ群の全てのデータの復調
が完了しておらずステップ414の判定がNOの場合に
は、ステップ401に制御が戻る。
【0064】音声波形ROM103に記憶されている1
発音分のACOMP圧縮データ群の全てのデータの復調
が完了しステップ414の判定がYESとなった場合に
は、図4の動作フローチャートの処理を終了する。
【0065】ステップ402の判定がNOとなった場
合、又はステップ414の判定がYESとなった場合、
或は、ステップ408、413の処理の後に、図4の動
作フローチャートで示される図3のステップ302の処
理を終了し、図3のインタラプトルーチン1の処理が終
了する。
【0066】CPU101は、インタラプトルーチン1
の処理を終了すると、中断していた図2のメインルーチ
ン又は後述する図5のインタラプトルーチン2の処理を
再開する。
【0067】なお、ハードバッファ108は、CPU1
01からの音声を発音中である旨の制御信号がインアク
ティブになった場合には、出力すべき音声波形データが
なくなっても、CPU101に対してインタラプトは発
生させない。 <インタラプトルーチン2の説明>図5は、CPU10
1が実行するインタラプトルーチン2の動作フローチャ
ートである。
【0068】インタラプトルーチン2は、CPU101
内の特には図示しないタイマによって1/60sec毎
に表示部107での画像表示における垂直ブランキング
期間に同期して発生させられるタイマインタラプト2に
対応して起動される。
【0069】図2のメインルーチンの処理が中断させら
れた後に、図5に示されるインタラプトルーチン2にお
いて、まず、ステップ501で、現在音声(楽音)を発
音中であるか否かが判定される。この動作は、例えば、
CPU101内の特には図示しないRAMに設けられる
発音制御データ領域に、発音中を示すデータが存在する
か否かを判定する動作として実現される。
【0070】現在音声を発音中ではなくステップ501
の判定がNOの場合には、即座にインタラプトルーチン
2が終了し、実質的な処理は何も行われずに、中断させ
られていた図2のメインルーチンの処理が再開される。
この場合には、後述するようにVDP105が実行する
DMA転送インタラプトルーチンによって、画像データ
の転送処理が実行される。
【0071】現在音声を発音中でステップ501の判定
がYESの場合には、ステップ502で、先頭の垂直ブ
ランキング期間において、画像データROM104に記
憶されている画像データのうちスイッチ部102内の機
能スイッチによって指定された画像データの1フィール
ド分が、バス112からVDP105を介してV−RA
M(ビデオRAM)106に転送される。その後、CP
U101は、インタラプトルーチン2を終了する。CP
U101は、インタラプトルーチン2の処理を終了する
と、中断していた図2のメインルーチンの処理を再開す
る。 <DMA転送インタラプトルーチンの説明>図6は、V
DP105が実行するDMA転送インタラプトルーチン
の動作フローチャートである。
【0072】DMA転送インタラプトルーチンは、前述
したインタラプトルーチン2の場合と同様に、1/60
sec毎に垂直ブランキング期間に同期して発生させら
れるタイマインタラプト2に対応して起動される。
【0073】VDP105において今まで実行されてい
た特には図示しない待機ルーチンの処理が中断させられ
た後に、図6に示されるDMA転送インタラプトルーチ
ンにおいて、まず、VDP105は、ステップ601
で、現在音声(楽音)が発音中であるか否かを判定す
る。この判定は、例えばCPU101からセット又はリ
セットされる発音中フラグを判定する動作として実現さ
れる。
【0074】現在音声を発音中でステップ601の判定
がYESの場合には、即座にDMA転送インタラプトル
ーチンが終了し、実質的な処理は何も行われずに、中断
させられていた特には図示しない待機ルーチンの処理が
再開される。この場合には、前述したように、CPU1
01が実行するインタラプトルーチン2によって、画像
データの転送処理が実行される。
【0075】このように、音声を発音中はCPU101
が画像データの転送処理を実行し、音声を発音中でない
場合はVDP105が画像データの転送処理を実行する
ようにしたのは、次のような理由による。まず、VDP
105によるDMA転送中には、他の機器からのインタ
ラプトはいっさい受け付けられない。しかし、音声を発
音中には前述のようにハードバッファ108から最優先
のインタラプト1がかかる。そこで、画像データの転送
中にもそのインタラプトに反応できるようにするため
に、CPU101が画像データの転送処理を行うことと
したのである。
【0076】現在音声を発音中でなくステップ601の
判定がNOの場合には、VDP105は、ステップ60
2で、CPU101にインタラプト要求を発生し、ステ
ップ603で、CPU101からインタラプト許可が出
力されるまで待機する。
【0077】CPU101は、VDP105から上述の
インタラプト要求を受け取ると、図2のメインルーチン
の処理を中断し、VDP105にインタラプト許可を出
力した後に、自分自身の動作を停止する。
【0078】VDP105では、CPU101からイン
タラプト許可を受け取ると、ステップ603の判定がY
ESとなる。この結果、VDP105は、ステップ60
4において、画像データROM104に記憶されている
画像データのうちスイッチ部102内の機能スイッチに
よって指定された画像データの1フィールド分を、バス
112を介してV−RAM(ビデオRAM)106にD
MA転送する。
【0079】その後、VDP105は、ステップ605
で、CPU101に転送終了信号である動作停止解除信
号を出力する。この結果、CPU101は、中断してい
たメインルーチンの処理を再開する。 <画像表示インタラプトルーチンの説明>図7は、VD
P105が実行する画像表示インタラプトルーチンの動
作フローチャートである。
【0080】この画像表示インタラプトルーチンは、前
述した1/60sec毎に垂直ブランキング期間に同期
して発生させられるタイマインタラプト2に対して、垂
直ブランキング期間の分だけ遅れたタイミングで発生す
るタイマインタラプト3に対応して、起動される。
【0081】VDP105において今まで実行されてい
た特には図示しない待機ルーチンの処理が中断させられ
た後、VDP105は、図7に示される画像表示インタ
ラプトルーチンのステップ701において、次のタイマ
インタラプト2の発生タイミングまでの間に、画像デー
タROM104からV−RAM106に転送された1フ
ィールド分の画像データを順次RGB信号に変換した
後、信号線114を介して表示部107に出力する。
【0082】表示部107は、このRGB信号をエンコ
ードした後に表示部107内のCRTディスプレイに出
力する。この結果、CRTは、1/60secから垂直
ブランキング期間を除いた時間内に、1フィールド分の
画像データに対応する1画面の半分の走査線に対応する
画像表示を行う。そして、CRTは、1/60secの
間に、このような処理を2回行うことによって、2フィ
ールド分の画像データに対応する1画面分の走査線に対
応する画像表示を行う。即ち、画面表示は、いわゆるイ
ンタレース方式に基づいて行われることになる。 <ソフトバッファ113の記憶容量の説明>最後に、ソ
フトバッファ113に必要な記憶容量について説明す
る。
【0083】本実施例では、ソフトバッファ113のサ
イズはハードバッファ108のサイズ(本実施例の場
合、64バイト)に近い下限値を設定することができ
る。従って、ソフトバッファ113のサイズは、従来技
術に比較して1/4から1/5に抑えることができる。
【0084】なお、このようにソフトバッファ113の
サイズが小さくて済むため、インタラプトルーチン2の
実行中にインタラプトルーチン1が割り込んでも、イン
タラプトルーチン1の実行の後に実行が再開されるイン
タラプトルーチン2は、垂直ブランキング期間内にその
処理を終了させることができ、表示部107上での表示
画像に影響を及ぼすことはない。 <他の実施例>以上説明した実施例では、音声波形デー
タはACOMP圧縮データから復調されるものであった
が、本発明はこれに限られるものではなく、様々な圧縮
方式によって圧縮されたデータから復調されるものであ
ってもよい。
【0085】また、音声波形データは必ずしも圧縮され
たものである必要はない。更に、本発明は、音声波形デ
ータと画像データの組合せに限定されるものではなく、
音声波形データ処理に周期的に処理される他のメディア
データ処理が混在させられるようなもの全てに適用する
ことができる。
【0086】
【発明の効果】本発明によれば、第2のバッファ手段に
おいて復調波形データが存在しなくなった時点等におい
て、最優先の割り込み処理によって、第1のバッファ手
段に保持されている復調波形データを第2のバッファ手
段に転送し、その転送に続いて即座に、少なくともその
転送時の復調波形データの転送量分の圧縮波形データ記
憶手段に記憶されている圧縮波形データに対して復調処
理を実行し、その結果得られる復調波形データを第1の
バッファ手段にストアすることによって、第1のバッフ
ァ手段の記憶容量として、第2のバッファ手段の記憶容
量と同等からそれより少し大きいだけの記憶容量を確保
するだけで、波形データの比較的複雑なリアルタイムの
復調処理を、画像転送表示処理などと混在させて実行す
ることが可能となる。
【0087】この結果、大容量のバッファ手段を持たな
くても比較的複雑なリアルタイム処理を実現することが
可能となる。
【図面の簡単な説明】
【図1】本発明の実施例の構成図である。
【図2】メインルーチンを示す動作フローチャートであ
る。
【図3】CPUが実行するインタラプトルーチン1(A
COMPデータ処理)を示す動作フローチャートであ
る。
【図4】図3のステップ302のACOMPデータ復調
処理の詳細な動作フローチャートである。
【図5】CPUが実行するインタラプトルーチン2を示
す動作フローチャートである。
【図6】VDPが実行するDMA転送インタラプトルー
チンを示す動作フローチャートである。
【図7】VDPが実行する画像表示インタラプトルーチ
ンを示す動作フローチャートである。
【図8】ACOMP圧縮データの構成図である。
【図9】デルタ変調処理のデータフォーマット図であ
る。
【符号の説明】
101 CPU 102 スイッチ部 103 音声波形ROM 104 画像データROM 105 VDP 106 V−RAM 107 表示部 108 ハードバッファ 109 D/A変換器 110 アンプ 111 スピーカ 112 バス 113 ソフトバッファ 114 信号線
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 5/60 Z

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 圧縮された波形データである圧縮波形デ
    ータを記憶する圧縮波形データ記憶手段と、 該圧縮波形データ記憶手段に記憶された圧縮波形データ
    から復調される波形データである復調波形データを一時
    的に保持する第1のバッファ手段と、 該第1のバッファ手段から転送される前記復調波形デー
    タを一時的に保持する第2のバッファ手段と、 所定のサンプリング周期に同期して前記第2のバッファ
    手段から前記復調波形データを読み出して出力する波形
    データ出力手段と、 前記第2のバッファ手段において前記復調波形データが
    存在しなくなった時点又は前記復調波形データの保持量
    が所定値以下になった時点において、その時点において
    実行されている処理に優先する割り込み処理によって、
    前記第1のバッファ手段に保持されている前記復調波形
    データを前記第2のバッファ手段に転送し、該転送に続
    いて、少なくとも該転送時の前記復調波形データの転送
    量分の前記圧縮波形データ記憶手段に記憶されている前
    記圧縮波形データに対して復調処理を実行し、その結果
    得られる前記復調波形データを前記第1のバッファ手段
    にストアする波形データ復調制御手段とを有することを
    特徴とする圧縮波形データの復調装置。
JP6149615A 1994-06-30 1994-06-30 圧縮波形データの復調装置 Abandoned JPH0816168A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6149615A JPH0816168A (ja) 1994-06-30 1994-06-30 圧縮波形データの復調装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6149615A JPH0816168A (ja) 1994-06-30 1994-06-30 圧縮波形データの復調装置

Publications (1)

Publication Number Publication Date
JPH0816168A true JPH0816168A (ja) 1996-01-19

Family

ID=15479089

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6149615A Abandoned JPH0816168A (ja) 1994-06-30 1994-06-30 圧縮波形データの復調装置

Country Status (1)

Country Link
JP (1) JPH0816168A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010110915A (ko) * 2000-06-09 2001-12-15 김달수 데이터 변복조 회로
JP2020124631A (ja) * 2020-05-28 2020-08-20 株式会社三洋物産 遊技機

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010110915A (ko) * 2000-06-09 2001-12-15 김달수 데이터 변복조 회로
JP2020124631A (ja) * 2020-05-28 2020-08-20 株式会社三洋物産 遊技機

Similar Documents

Publication Publication Date Title
US5499922A (en) Backing chorus reproducing device in a karaoke device
US6453286B1 (en) Computer system for processing image and sound data using ADPCM stereo coding
EP1217604B1 (en) Musical sound generator
JPH0816168A (ja) 圧縮波形データの復調装置
US20060179180A1 (en) Signal processing apparatus, signal processing system and signal processing method
JPH09198089A (ja) 再生速度変換装置
JP3521461B2 (ja) 複数の周期的なメディアデータの処理装置
JPH03192400A (ja) 波形情報処理装置
JP3152156B2 (ja) 楽音発生システム、楽音発生装置および楽音発生方法
JPH1173188A (ja) データ処理装置
JP3278857B2 (ja) 楽音形成装置
JP2774493B2 (ja) データ処理方法
JP5229993B2 (ja) 1チップ電子楽音発生器
JP2006171626A (ja) 楽曲再生装置
US6826435B1 (en) Tone data processing device and method
JPH11103429A (ja) 画像データ復号化装置及びオン・スクリーン・ディスプレイ・データ更新方法
JP2003174627A (ja) ディスク再生装置及びosd画像の生成方法
JP3092239B2 (ja) 情報処理方法及び装置
JP3410134B2 (ja) 電子楽器
JP3658661B2 (ja) データ受信装置、及びデータ送信装置
JPS6365498A (ja) 音声合成装置
JPS61179500A (ja) 音声メモリ装置
JPH09282000A (ja) データ処理回路
JPH06180597A (ja) Adpcm再生制御装置
JPS63240188A (ja) 文字放送受信装置

Legal Events

Date Code Title Description
A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20040226