JPH0997085A - Musical sound information processor - Google Patents
Musical sound information processorInfo
- Publication number
- JPH0997085A JPH0997085A JP8044210A JP4421096A JPH0997085A JP H0997085 A JPH0997085 A JP H0997085A JP 8044210 A JP8044210 A JP 8044210A JP 4421096 A JP4421096 A JP 4421096A JP H0997085 A JPH0997085 A JP H0997085A
- Authority
- JP
- Japan
- Prior art keywords
- data
- read address
- read
- address data
- waveform
- 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.)
- Granted
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、楽音を生成するた
めの情報を処理する楽音情報処理装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a musical tone information processing apparatus for processing information for generating musical tones.
【0002】[0002]
【従来技術】従来、楽音に関する表すデータと、この楽
音を生成または制御するための処理プログラムとは、別
々の記憶装置に記憶して、各々別々の読出装置によって
楽音データと処理プログラムとを読み出していた。この
場合、各読出装置の読出アドレスデータは、各々まった
く独立に制御されていた。2. Description of the Related Art Conventionally, data representing musical tones and a processing program for generating or controlling the musical tones are stored in different storage devices, and the musical tone data and the processing programs are read by different reading devices. It was In this case, the read address data of each reading device is controlled completely independently.
【0003】[0003]
【発明が解決しようとする課題】しかしながら、楽音デ
ータ用の記憶装置と処理プログラム用の記憶装置とを別
々に設けることは、それだけ回路構成が複雑となり、コ
ストアップの原因にもなっていた。また、このように別
々の記憶装置を設けることは、読出アドレスデータを完
全に独立に制御しなくてはならず、情報処理が複雑化し
ていた。However, the separate provision of the storage device for the musical sound data and the storage device for the processing program complicates the circuit structure and causes a cost increase. Further, such provision of separate storage devices complicates information processing because the read address data must be controlled completely independently.
【0004】本発明は、上述した課題を解決するために
なされたものであり、回路構成が簡単で、しかも情報の
読出処理が簡易な楽音情報処理装置を提供することを目
的としている。The present invention has been made to solve the above-mentioned problems, and an object of the present invention is to provide a musical tone information processing apparatus having a simple circuit configuration and a simple information reading process.
【0005】[0005]
【課題を解決するための手段】上記目的を達成するため
に、本発明は、楽音に関する楽音データを記憶するデー
タ記憶手段と、上記楽音を生成または制御するための処
理プログラムを記憶するプログラム記憶手段とを一体に
設け、両記憶手段の読み出しを切り換える切換手段等と
を備えたものである。これにより、楽音データと処理プ
ログラムとを1つの記憶手段に記憶できるし、読出アド
レスデータを楽音データと処理プログラムの記憶されて
いるエリアのアドレスの差だけ切り換えるだけで、楽音
データと処理プログラムの読み出しを切り換えることが
できる。In order to achieve the above object, the present invention provides a data storage means for storing musical tone data relating to musical tones and a program storage means for storing a processing program for generating or controlling the musical tones. Are integrally provided, and switching means for switching the reading of both storage means is provided. As a result, the tone data and the processing program can be stored in one storage means, and the tone data and the processing program can be read by simply switching the read address data by the difference between the addresses of the areas in which the tone data and the processing program are stored. Can be switched.
【0006】この一例が、図4のMMUラッチ310、
セレクタ312、ROM20によるもので、プログラム
読出のときCPUアドレスCA1〜15が選択され、音
色データ読出のとき上記CPUアドレスCA12〜15
のみMMUアドレスに変更され、波形データ読出のとき
全て周波数ナンバ累算値に切り換えられる。An example of this is the MMU latch 310 of FIG.
By the selector 312 and the ROM 20, the CPU addresses CA1 to CA15 are selected at the time of program reading, and the CPU addresses CA12 to CA15 at the time of reading tone data.
Only the MMU address is changed, and when the waveform data is read, all are switched to the frequency number accumulated value.
【0007】[0007]
《全体回路》図1は、本発明の全体回路図を示すもの
で、キーボード1の各キー及び音色スイッチ2の各スイ
ッチは、キーアサイナ回路30によって走査され、操作
キーに応じた音高で、操作音色スイッチに応じた音色の
楽音が16チャンネルの楽音生成系の空チャンネルに割
り当てられる。このチャンネル割り当て内容は、アサイ
ンメントメモリ回路32に記憶される。<< Overall Circuit >> FIG. 1 shows an overall circuit diagram of the present invention. Each key of the keyboard 1 and each switch of the tone color switch 2 are scanned by the key assigner circuit 30 and are operated at a pitch corresponding to the operation key. A tone of a tone color corresponding to the tone color switch is assigned to an empty channel of the tone generation system of 16 channels. The contents of this channel assignment are stored in the assignment memory circuit 32.
【0008】ROM20には、楽音信号を生成するため
の処理プログラムと、波形及びエンベロープに関する音
色データと、波形データRDそのものが記憶されてお
り、ROMアドレス制御回路31によって読出アドレス
が制御され、処理プログラム又は音色データの読み出し
と、波形データRDの読み出しとが切り換えられる。R
OM20より読み出された処理プログラムは、キーアサ
イナ回路30の後述するCPU300に送られて各種処
理が実行され、また同じくROM20より読み出された
波形やエンベロープに関する音色データは、アサインメ
ントメモリ回路32の空チャンネルに応じたエリアに書
き込まれ、さらに同じくROM20より読み出された波
形データRDそのものは波形データ伸長補間回路50へ
と送られる。アサインメントメモリ回路32には、キー
ボード1の操作キーに応じた周波数ナンバスピードデー
タFSも空チャンネルに応じたエリアに書き込まれる。The ROM 20 stores a processing program for generating a tone signal, tone color data relating to waveforms and envelopes, and waveform data RD itself. The ROM address control circuit 31 controls the read address and the processing program. Alternatively, reading of tone color data and reading of waveform data RD are switched. R
The processing program read from the OM 20 is sent to a CPU 300, which will be described later, of the key assigner circuit 30 to execute various kinds of processing, and the tone color data regarding the waveform and the envelope read from the ROM 20 is also stored in the assignment memory circuit 32. The waveform data RD itself written in the area corresponding to the channel and also read from the ROM 20 is sent to the waveform data expansion interpolation circuit 50. In the assignment memory circuit 32, the frequency number speed data FS corresponding to the operation key of the keyboard 1 is also written in the area corresponding to the empty channel.
【0009】この周波数ナンバスピードデータFSは、
周波数ナンバ累算器40で各チャンネルごとに順次累算
され、ROMアドレス制御回路31を介してROM20
に読出アドレスデータとして与えられ、波形データRD
が周波数ナンバスピードデータFSに応じた速度、すな
わち音高に応じた速度で読み出され、波形データ伸長補
間回路50に入力される。読み出される波形データRD
はROM20内に多数記憶されており、これらの選択は
アサインメントメモリ回路32より読み出されるバンク
データによって行われる。This frequency number speed data FS is
The frequency number accumulator 40 sequentially accumulates for each channel, and the ROM 20 is passed through the ROM address control circuit 31.
Waveform data RD
Is read at a speed corresponding to the frequency number speed data FS, that is, a speed corresponding to the pitch, and is input to the waveform data expansion interpolation circuit 50. Waveform data RD to be read
Are stored in the ROM 20 in large numbers, and these selections are made by bank data read from the assignment memory circuit 32.
【0010】上記波形データ伸長補間回路50では、デ
ータ圧縮された状態でROM20より読み出されてきた
差分データが伸長されるとともに、各波形データRDの
サンプルポイント地点の間の補間地点も求められて乗算
回路70に送られる。この補間は周波数ナンバ累算器4
0からの周波数ナンバ累算値FAの一部を使って行われ
る。In the waveform data decompression interpolation circuit 50, the differential data read from the ROM 20 in a data compressed state is decompressed, and an interpolation point between sample point points of each waveform data RD is obtained. The signal is sent to the multiplication circuit 70. This interpolation is performed by the frequency number accumulator 4
This is performed using a part of the frequency number accumulated value FA starting from 0.
【0011】また、アサインメントメモリ回路32から
のエンベロープに関するデータは、エンベロープ発生器
60へ送られてエンベロープ波形が生成され、上記乗算
回路70へ送られる。乗算回路70では、上記伸長補間
波形データIPの各サンプル値とエンベロープ波形の各
サンプル値EAとが乗算され、シフト回路80でデータ
シフトが行われて、系列累算回路90で系列ごとに累算
され、D−A変換器100を介してサウンドシステム1
10より放音出力される。The envelope-related data from the assignment memory circuit 32 is sent to the envelope generator 60 to generate an envelope waveform, which is then sent to the multiplication circuit 70. The multiplication circuit 70 multiplies each sample value of the expanded interpolation waveform data IP by each sample value EA of the envelope waveform, the shift circuit 80 performs data shift, and the series accumulation circuit 90 accumulates each series. And the sound system 1 via the D / A converter 100.
Sound is output from 10.
【0012】上記エンベロープ発生器60より、アサイ
ンメントメモリ回路32には、エンベロープ波形の現在
のフェーズ値PHが送られ、次の新しいフェーズに関す
るエンベロープデータを出力するように働きかける。ま
たエンベロープ発生器60より、周波数ナンバ累算器4
0には、キーオンのタイミングでオンイベント信号が送
られ、周波数ナンバスピードデータFSの累算が開始さ
れる。さらにエンベロープ発生器60より、波形データ
伸長補間回路50にはデータ長信号D816が送られ、
波形データRDの補間を行うか、行わないかの選択が行
われる。データ長信号D816は、波形データRDが8
ビットのサンプル値2つよりなるか、10ビットのサン
プル値と6ビットの差分データよりなるかの区別を示す
もので、10ビットのサンプル値と6ビットの差分デー
タが読み出されたとき、波形データRDの補間が行われ
る。From the envelope generator 60, the current phase value PH of the envelope waveform is sent to the assignment memory circuit 32, which works to output the envelope data for the next new phase. Also, from the envelope generator 60, the frequency number accumulator 4
An on-event signal is sent to 0 at the key-on timing, and the accumulation of the frequency number speed data FS is started. Further, a data length signal D816 is sent from the envelope generator 60 to the waveform data expansion interpolation circuit 50,
A selection is made as to whether or not to interpolate the waveform data RD. The data length signal D816 is 8 in the waveform data RD.
The difference between a 2-bit sample value and a 10-bit sample value and 6-bit difference data is shown. When the 10-bit sample value and 6-bit difference data are read, The data RD is interpolated.
【0013】上記シフト回路80は、乗算後の楽音デー
タをエンベロープ累算値EAの上位ビットであるエンベ
ロープパワーデータEA12〜15の大きさに応じてシ
フトダウンし、ディケイ、リリースの減衰時の立下りを
エクスポーネンシャルな特性にして、自然音に近づける
ためのものである。The shift circuit 80 shifts down the musical tone data after multiplication in accordance with the magnitude of the envelope power data EA12 to 15 which is the upper bit of the envelope accumulated value EA, and falls at the time of decay of decay and release. Is an exponential characteristic to bring it closer to natural sound.
【0014】また上記D−A変換器100には、4つの
楽音生成系が時分割により形成されており、系列累算回
路90において、アサインメントメモリ回路32からの
系列データGRに応じて、いずれの生成系に楽音データ
を送り込むかが決定される。この系列累算回路90に
は、周波数ナンバ累算器40から、波形折返し信号FD
Uも与えられており、この波形折返し信号FDUは波形
データの一波形のうち前半の半波形の生成が終わって、
後半の半波形の生成にはいるときハイレベルとなり、こ
れにより系列累算回路90では、楽音データをプラスマ
イナス反転した値とされる。また、系列累算回路90に
は、キーアサイナ回路30より、D−Aゲート信号も与
えられており、D−A変換器100への楽音データ出力
コントロールが行われる。In the DA converter 100, four tone generation systems are formed by time division, and in the series accumulation circuit 90, depending on the series data GR from the assignment memory circuit 32, any one of them will be generated. It is decided whether to send the musical sound data to the generation system. The sequence accumulator circuit 90 outputs the waveform folding signal FD from the frequency number accumulator 40.
U is also given, and this waveform folding signal FDU is generated after the generation of the first half waveform of one waveform of the waveform data,
It goes to a high level when the generation of the latter half waveform is started, so that the sequence accumulating circuit 90 has a value obtained by inverting the tone data. The sequence accumulator circuit 90 is also supplied with the DA gate signal from the key assigner circuit 30 to control the tone data output to the DA converter 100.
【0015】システムクロック発生器10から、図1の
各回路30、40、50、60、90には、図2に示す
ようなクロック信号等が与えられており、各回路のタイ
ミングコントロールが行われる。The system clock generator 10 supplies a clock signal as shown in FIG. 2 to each of the circuits 30, 40, 50, 60 and 90 of FIG. 1 to control the timing of each circuit. .
【0016】《ROM20》図3はROM20の記憶内
容を示すもので、このROM20には楽音信号を生成す
るため処理プログラムと、波形及びエンベロープの内容
を選択決定するための音色データと、波形の各サンプル
値よりなる波形データRDとが記憶されている。音色デ
ータの記憶エリアは処理プログラムの記憶エリアより、
後述するMMUアドレスデータ分だけずれた位置にあ
る。音色データは、バンクデータ、データ長信号データ
D816、系列データGR、イニシャル周波数ナンバデ
ータ、ループトップデータ、ループエンドデータ、エン
ベロープデータよりなり、エンベロープデータは、さら
にフェーズレベルデータPL、エンベロープ加減信号デ
ータEDU、シンアウトデータTH、エンベロープスピ
ードデータESよりなっている。<ROM 20> FIG. 3 shows the contents stored in the ROM 20. In the ROM 20, a processing program for generating a tone signal, tone color data for selecting and determining the contents of the waveform and the envelope, and each waveform. Waveform data RD including sample values are stored. The tone color data storage area is
It is at a position shifted by the MMU address data described later. The tone color data is composed of bank data, data length signal data D816, series data GR, initial frequency number data, loop top data, loop end data, and envelope data. The envelope data further includes phase level data PL and envelope adjustment signal data EDU. , Thin-out data TH, and envelope speed data ES.
【0017】バンクデータは、複数の波形データRDの
うちの1つを選択指定するためのもので、1つのチャン
ネルに割り当てられる1つの音色につき、(A)(B)
2つの波形が選択され、データ長信号D816は、上述
したように波形データRDが8ビットのサンプル値2つ
よりなるか、10ビットのサンプル値と6ビットの差分
データよりなるかの区別を示すもので、系列データGR
0,1も上述したように、上記乗算後の楽音データST
を4つのいずれの楽音生成系に割り当てるかを示すもの
である。The bank data is for selecting and designating one of the plurality of waveform data RD, and (A) and (B) are assigned to one tone color assigned to one channel.
Two waveforms are selected, and the data length signal D816 indicates whether the waveform data RD has two 8-bit sample values or 10-bit sample values and 6-bit difference data as described above. The series data GR
As for 0 and 1, as described above, the tone data ST after the multiplication
Is assigned to any of the four tone generation systems.
【0018】イニシャル周波数ナンバデータは、図8に
示すように、周波数ナンバスピードデータFSを順次累
算して波形データRDを読み出していくにあたってのス
タート時点の周波数ナンバ累算値を示し、ループエンド
データは、周波数ナンバスピードデータFSの累算を加
算方向から減算方向へ折り返す地点の周波数ナンバ累算
値FAを示し、ループトップデータは、周波数ナンバス
ピードデータFSの累算方向を減算方向から加算方向へ
折り返す地点の周波数ナンバ累算値FAを示し、図8に
示すようにループトップとループエンドとの間で周波数
ナンバ累算値FAをループ変化させることにより、半波
形分の波形データを連続した波形の状態で読み出して行
くことができる。As shown in FIG. 8, the initial frequency number data indicates the accumulated frequency number value at the start point when the frequency number speed data FS is sequentially accumulated and the waveform data RD is read out. Indicates the frequency number accumulated value FA at the point where the accumulation of the frequency number speed data FS is returned from the addition direction to the subtraction direction, and the loop top data is the accumulation direction of the frequency number speed data FS from the subtraction direction to the addition direction. The frequency number accumulated value FA at the turning point is shown, and the frequency number accumulated value FA is changed between the loop top and the loop end as shown in FIG. It can be read in the state of.
【0019】なお図8の波形折返し信号FDUは、周波
数ナンバ累算値FAの最上位ビットデータであり、波形
データの一波長のうち前半の半波長の生成が終わって、
後半の半波長の生成にはいるときハイレベルとなるもの
であって、この信号FDUに基づいて周波数ナンバ累算
値FAの加減演算切換と、波形データ(楽音データ)の
サンプル値(振幅値)のプラスマイナス切換が行われ
る。The waveform folding signal FDU in FIG. 8 is the most significant bit data of the frequency number accumulated value FA, and after the generation of the first half wavelength of one wavelength of the waveform data is completed,
It becomes a high level when the latter half wavelength is generated, and based on this signal FDU, the addition / subtraction calculation switching of the frequency number accumulated value FA and the sample value (amplitude value) of the waveform data (tone data) Is switched between plus and minus.
【0020】エンベロープデータの中のエンベロープレ
ベルデータELは第24図に示すように、エンベロープ
波形のアック、ディケイ、サスティン、リリースの最終
地点におけるエンベロープ累算値を示し、エンベロープ
加減信号データEDUは、エンベロープ累算値EAを加
算していくのか、減算していくのかを示すものである。
またエンベロープデータのエンベロープスピードデータ
ESは、エンベロープ累算値EAの加減速度を示すデー
タで、この値が大きいほどエンベロープ波形の傾きが大
きくなる。エンベロープスピードデータESとエンベロ
ープレベルデータELとは、キーボード1のキーの押鍵
速度、又は押鍵圧力に応じたキータッチデータに応じて
決定される。As shown in FIG. 24, the envelope level data EL in the envelope data indicates the accumulated value of the envelope at the final points of ac, decay, sustain and release, and the envelope adjustment signal data EDU is the envelope It indicates whether the accumulated value EA is added or subtracted.
The envelope speed data ES of the envelope data is data indicating the acceleration / deceleration of the accumulated envelope value EA. The larger this value, the larger the inclination of the envelope waveform. The envelope speed data ES and the envelope level data EL are determined according to the key pressing speed of the keys of the keyboard 1 or the key touch data corresponding to the key pressing pressure.
【0021】エンベロープの中のシンアウトデータTH
は、エンベロープ累算値EAの累算システムへのエンベ
ロープ累算値EAの取り入れラッチの間引き率を示すデ
ータであり、本来のエンベロープ累算値EAの取り入れ
ラッチは、繰り返し行われる全チャンネル分のタイムス
ロットに1回行なわれる。このデータが「11」のとき
間引きはなく、「10」のとき4回に1回取り入れ、
「01」のとき16回に1回取り入れ、「00」のとき
64回に1回取り入れる。0、1は2値論理レベルのl
ow状態、high状態を示すものである。このシンア
ウト(取り入れラッチ間引き)により、同じエンベロー
プスピードデータでもエンベロープのスピードを等倍、
4倍、16倍、64倍に変化させることができる。この
シンアウトデータTHもキーボード1のキーの押鍵速
度、又は押鍵圧力に応じたキータッチデータに応じて変
化させても良い。Thin out data TH in the envelope
Is data indicating the decimation rate of the intake latch of the envelope accumulated value EA to the accumulation system of the envelope accumulated value EA, and the intake latch of the original envelope accumulated value EA is the time for all channels that are repeatedly performed. Once per slot. When this data is "11", there is no thinning, and when it is "10", it is taken in once every four times.
When it is "01", it is taken in once every 16 times, and when it is "00", it is taken in every 64 times. 0 and 1 are binary logic level l
It shows an ow state and a high state. By this thinout (incorporation latch thinning out), the envelope speed is the same size even with the same envelope speed data,
It can be changed to 4 times, 16 times, and 64 times. The thinout data TH may also be changed according to the key pressing speed of the keys of the keyboard 1 or the key touch data corresponding to the key pressing pressure.
【0022】このようにROM20には、楽音を生成放
音するための処理プログラムと、楽音の内容を表わす楽
音データとが記憶されているので、プログラムとデータ
を記憶するメモリが1つで済み、その分回路構成を簡易
なものとすることができる。As described above, since the ROM 20 stores the processing program for generating and emitting the musical tone and the musical tone data representing the content of the musical tone, only one memory for storing the program and the data is required. Therefore, the circuit configuration can be simplified.
【0023】《キーアサイナ回路30》図4は、キーア
サイナ回路30を示すもので、CPU300は与えられ
るマスタクロック信号φ(CK2)が、ハイレベルのと
きのみ動作可能なもので、図2下方に示すように、CP
U300のデータバスライン及びアドレスバスラインに
は、マスタクロック信号CK2がハイレベル「1」のと
き、CPU300に関するデータが流れ、ローレベル
「0」のとき、CPU300に無関係なデータが流れ
る。<< Key Assigner Circuit 30 >> FIG. 4 shows the key assigner circuit 30. The CPU 300 is operable only when the supplied master clock signal φ (CK2) is at a high level. And CP
In the data bus line and the address bus line of U300, data relating to the CPU 300 flows when the master clock signal CK2 is at the high level "1", and data irrelevant to the CPU 300 when the master clock signal CK2 is at the low level "0".
【0024】《ROMアドレス制御回路31》このCP
U300からのROM20や各種メモリのアクセス用の
アドレスデータCA0〜15は16ビットデータである
が、最下位ビットを除く下位11ビットCA1〜11は
セレクタ313に与えられる。また、上位4ビットCA
12〜15は上位に「0000」の4ビットデータが付
加されて、セレクタ312のB入力を通して上記下位1
1ビットCA1〜11とともに19ビットのアドレスデ
ータとしてセレクタ313を介してROM20に与えら
れ、主に処理プログラムの読み出しが行われる。またC
PU300が処理プログラム以外の音色データやその他
データを読み出す時には、CPU300より8ビットの
MMUアドレスデータがデータバスラインを通じて出力
され、これがMMUラッチ310を介して上記セレクタ
312を通じ、上述の下位11ビットCA1〜11に付
加されて、セレクタ313を介しROM20に与えられ
る。<< ROM address control circuit 31 >> This CP
The address data CA0 to CA15 for accessing the ROM 20 and various memories from the U300 is 16-bit data, but the lower 11 bits CA1 to 11 except the least significant bit are given to the selector 313. Also, the upper 4 bits CA
12 to 15 have 4-bit data of "0000" added to the upper order and the lower order 1 through the B input of the selector 312.
It is supplied to the ROM 20 via the selector 313 as 19-bit address data together with 1-bit CA1 to 11, and the processing program is mainly read. Also C
When the PU 300 reads out tone color data other than the processing program or other data, 8-bit MMU address data is output from the CPU 300 through the data bus line, and this is transmitted through the selector 312 through the MMU latch 310 to the above-mentioned lower 11 bits CA1. 11 and is given to the ROM 20 via the selector 313.
【0025】このアドレスデータの切り換え状態を示し
たのが、図5であり、ROM20のアドレスデータは1
9ビットであるにもかかわらず、CPU300のアドレ
スデータは16ビットであるため、「0000」の付加
や、MMUアドレスデータの付加が行われる。FIG. 5 shows the switching state of the address data, and the address data of the ROM 20 is 1
Despite being 9 bits, since the address data of the CPU 300 is 16 bits, "0000" is added or MMU address data is added.
【0026】こうして、MMUアドレスを付加するか、
「0000」を付加するかで、プログラムの読み出しと
音色データの読み出しが簡単に切り換えられる。またC
PU300の読出アドレスデータがROM20の読出ア
ドレスデータより少ないビット数でも、ROM20の全
領域の読み出しを行うことができる。In this way, the MMU address is added or
By adding "0000", the reading of the program and the reading of the tone color data can be easily switched. Also C
Even if the read address data of the PU 300 is smaller than the read address data of the ROM 20, the entire area of the ROM 20 can be read.
【0027】上記上位4ビットデータCA12〜15は
コンパレータ311にも与えられており、このコンパレ
ータ311には4ビットのf(x)データも与えられて
おり、両データが一致しない時、「0000」と上位4
ビットアドレスデータCA12〜15の方が選択され
る。また両データが一致した時、一致信号がコンパレー
タ311から上記セレクタ312に与えられて、MMU
ラッチ310の方が選択される。従って上位4ビットの
アドレスデータCA12〜15がf(x)データに一致
していない時に、CPU300の処理プログラム等の読
み出しが行われ、一致した時は音色データ等が読み出さ
れる。このf(x)データはCPU300によって選択
設定してもよいし、予め固定された値でもよい。The upper 4-bit data CA12 to CA15 are also given to the comparator 311, and 4-bit f (x) data is also given to the comparator 311, and when the both data do not match, "0000". And the top 4
The bit address data CA12 to CA15 are selected. When both data match, a match signal is given from the comparator 311 to the selector 312, and the MMU
Latch 310 is selected. Therefore, when the upper 4-bit address data CA12 to CA15 do not match the f (x) data, the processing program of the CPU 300 is read, and when they match, the tone color data and the like are read. The f (x) data may be selectively set by the CPU 300 or may be a value fixed in advance.
【0028】上記セレクタ313には、後述するアサイ
ンメントメモリ320よりCPU300によって読み出
されたバンクデータと周波数ナンバ累算器40からの周
波数ナンバ累算値FA12〜26も与えられ、このセレ
クタ313を介してROM20に与えられ、対応するバ
ンクの波形データRDが読み出される。セレクタ313
における、データセレクト切換は、上記システムクロッ
ク発生器10からのクロック信号CK2によって行わ
れ、図2下方に示すように、処理プログラムの読み出し
と波形データRDのサンプル値との読み出しが切り換え
られる。このうち、処理プログラムの読み出しのタイミ
ングにおいては、上記f(x)データに基づいて、処理
プログラムの読み出しと音色データの読み出しが切り換
えられる。そして、これらの読出処理が16チャンネル
分繰返し行われて行く。The selector 313 is also supplied with bank data read by the CPU 300 from the assignment memory 320 described later and the frequency number accumulated values FA12 to 26 from the frequency number accumulator 40, and via this selector 313. Is applied to the ROM 20 and the waveform data RD of the corresponding bank is read out. Selector 313
The data selection switching is performed by the clock signal CK2 from the system clock generator 10, and as shown in the lower part of FIG. 2, the reading of the processing program and the reading of the sample value of the waveform data RD are switched. Among these, at the timing of reading the processing program, the reading of the processing program and the reading of the tone color data are switched based on the f (x) data. Then, these reading processes are repeated for 16 channels.
【0029】ROM20より読み出されるデータのう
ち、波形データRDはそのまま波形データ伸長補間回路
50へ送られ、処理プログラムや音色データは、8ビッ
トデータずつに2分割され、セレクタ314を介してC
PU300に送られたり、ゲートバッファ323を介し
てアサインメントメモリ320に送られたりする。セレ
クタ314における、データセレクト切換は、上記CP
U300からのアドレスデータCAの最下位ビットCA
0に基づいて行われる。Of the data read from the ROM 20, the waveform data RD is sent to the waveform data expansion interpolation circuit 50 as it is, and the processing program and the tone color data are divided into two 8-bit data, and the data are divided into C through the selector 314.
It is sent to the PU 300, or sent to the assignment memory 320 via the gate buffer 323. The data selection switching in the selector 314 is performed by the above CP.
The least significant bit CA of the address data CA from U300
It is performed based on 0.
【0030】これにより、CPU300の処理速度に追
随してROM20からのデータ取り込みが行われる。ま
た、CPU300のデータバスラインのビット数に対し
ROM20からの読み出しデータのビット数が多くて
も、スムーズにデータ処理を行うことができる。As a result, data is read from the ROM 20 in accordance with the processing speed of the CPU 300. Further, even if the number of bits of the read data from the ROM 20 is larger than the number of bits of the data bus line of the CPU 300, the data processing can be smoothly performed.
【0031】《アサインメントメモリ回路32》図6
は、アサインメントメモリ回路32のアサインメントメ
モリ320の記憶内容を示すもので、アサインメントメ
モリ320は、16チャンネル分の音色データのメモリ
エリアが形成されており、各チャンネルエリアにROM
20からの音色データがセットされる。この場合、セッ
トされる音色データのうちエンベロープデータはEG0
〜15の各エンベロープグループエリアにセットされ、
それ以外のデータはCH0〜15の各チャンネルエリア
に分けてセットされる。CH0〜15にセットされるデ
ータは、バンクデータ(A)(B)、エンベロープグル
ープデータ(A)(B)、周波数ナンバスピードデータ
FS、キーオン信号データ、データ長信号データD81
6、系列データGR、イニシャル周波数ナンバデータ、
ループトップデータ、ループエンドデータよりなってお
り、このうち周波数ナンバスピードデータFS、キーオ
ン信号データ、エンベロープグループデータ(A)
(B)以外のデータについては、ROM20の記憶内容
のところで説明したとおりである。<< Assignment Memory Circuit 32 >> FIG.
Indicates the storage contents of the assignment memory 320 of the assignment memory circuit 32. The assignment memory 320 has a memory area of 16 channels of tone color data formed therein, and a ROM area is provided in each channel area.
20 is set. In this case, among the tone data to be set, the envelope data is EG0.
~ 15 are set in each envelope group area,
Other data is set separately for each channel area of CH0 to CH15. Data set in CH0 to 15 are bank data (A) and (B), envelope group data (A) and (B), frequency number speed data FS, key-on signal data, data length signal data D81.
6, sequence data GR, initial frequency number data,
It consists of loop top data and loop end data, of which frequency number speed data FS, key-on signal data, envelope group data (A)
The data other than (B) is as described in the storage content of the ROM 20.
【0032】周波数ナンバスピードデータFSは、キー
ボード1の操作キーの音高に応じたデータで波形データ
RDの読出アドレスデータの累算ステップ値として用い
られる。キーオン信号データは、現在キーオン中である
ことを示すデータで、キーオンで「1」、キーオフで
「0」となる。エンベロープグループデータ(A)
(B)は、当該チャンネルエリアの音色に応じたエンベ
ロープデータの記憶されているエンベロープグループエ
リアEG0〜15のアドレスを示すデータであり、1つ
のチャンネルに割り当てられる音色は2つの楽音よりな
るものであるため、(A)(B)と2つ存在することに
なる。これに応じて、波形データRDも2つ存在するた
め、バンクデータも(A)(B)2つの存在することに
なる。EG0〜15にセットされるエンベロープデータ
についても上述ROM20の記憶内容の説明のところで
説明したとおりである。The frequency number speed data FS is data corresponding to the pitch of the operation key of the keyboard 1 and is used as a cumulative step value of the read address data of the waveform data RD. The key-on signal data is data indicating that the key is currently on, and is "1" when the key is on and "0" when the key is off. Envelope group data (A)
(B) is data indicating addresses of envelope group areas EG0 to 15 in which envelope data corresponding to the tone color of the channel area is stored, and the tone color assigned to one channel is composed of two musical tones. Therefore, there are two (A) and (B). Correspondingly, since there are also two pieces of waveform data RD, there are two pieces of bank data (A) and (B). The envelope data set in EG0 to 15 is also as described in the description of the storage content of the ROM 20.
【0033】このアサインメントメモリ320より読み
出されたデータはAM(アサインメントメモリ)バスを
介して周波数ナンバ累算器40やエンベロープ発生器6
0等へ送出されたり、ゲートバッファ322を介してC
PU300に与えられる。また4ビットのエンベロープ
グループデータ(A)(B)については、ラッチ324
を介し、エンベロープ発生器60からのフェーズデータ
PAが2ビット下位に付加され、「1」が1ビット上位
に付加されて計7ビットとなり、セレクタ321を介
し、再びアサインメントメモリ320に与えられ、対応
するエンベロープのエンベロープレベルデータEL、シ
ンアウトデータTH、エンベロープスピードデータES
等が読み出されてエンベロープ発生器60に送られる。
このセレクタ321を介してシステムクロック発生器1
0からのクロック信号CKの集合である読出アドレスデ
ータもアサインメントメモリ320に与えられるほか、
CPU300からのアクセスアドレスデータも与えられ
る。The data read from the assignment memory 320 is sent to the frequency number accumulator 40 and the envelope generator 6 via an AM (assignment memory) bus.
0, etc., or C via the gate buffer 322.
It is given to the PU 300. For 4-bit envelope group data (A) and (B), the latch 324
, The phase data PA from the envelope generator 60 is added to the lower bit by 2 bits, and “1” is added to the upper bit by 1 bit to make a total of 7 bits, which are given to the assignment memory 320 again via the selector 321. Envelope level data EL, thin-out data TH, envelope speed data ES of the corresponding envelope
Etc. are read out and sent to the envelope generator 60.
Through this selector 321, the system clock generator 1
Read address data, which is a set of clock signals CK from 0, is also given to the assignment memory 320.
Access address data from the CPU 300 is also given.
【0034】これらのアドレスデータの切換状態を示し
たのが図2最下段のタイムチャートであり、クロック信
号群CKに基づいたバンクデータ(A)(B)とエンベ
ロープグループデータ(A)(B)、これに続いて周波
数ナンバスピードデータFSの読み出しの後、上記エン
ベロープグループデータ(A)とフェーズデータPAに
基づいたエンベロープスピードデータ(A)ESとエン
ベロープレベルデータ(A)ELの読み出しが行われ、
この後CPU300のアクセスが行われる。そして同じ
くクロック信号群CKに基づいたイニシャル周波数ナン
バ、キーオン、データ長信号データD816、系列デー
タGRの各データと、これに続いてループトップデー
タ、ループエンドデータとが読み出され、上記エンベロ
ープグループデータ(B)とフェーズデータPAに基づ
いたエンベロープスピードデータ(B)ESとエンベロ
ープレベルデータ(B)ELの読み出しが行われ、この
後CPU300のアクセスが行われる。そしてこれらの
アクセス処理が16チャンネル分繰り返し行われてい
く。The switching state of these address data is shown in the time chart at the bottom of FIG. 2, which shows bank data (A) and (B) and envelope group data (A) and (B) based on the clock signal group CK. After that, after reading the frequency number speed data FS, the envelope speed data (A) ES and the envelope level data (A) EL based on the envelope group data (A) and the phase data PA are read.
After this, the CPU 300 is accessed. Similarly, each data of the initial frequency number based on the clock signal group CK, the key-on, the data length signal data D816, the sequence data GR, and subsequently the loop top data and the loop end data are read out, and the envelope group data The envelope speed data (B) ES and the envelope level data (B) EL based on (B) and the phase data PA are read out, and then the CPU 300 makes an access. Then, these access processes are repeated for 16 channels.
【0035】この場合、読出アドレスデータとして用い
られるクロック信号群CKは図2のCK1〜CKなどが
用いられる。セレクタ321における各アドレスデータ
のセレクトはシステムクロック発生器10からのクロッ
ク信号CK1、CK2に基づいて行われ、「00」「0
1」のタイミングで、クロック信号群CKが選択され、
「10」でラッチ324からのエンベロープグループデ
ータとフェーズデータPAが選択され、「11」でCP
U300からのアドレスデータが選択される。In this case, as the clock signal group CK used as the read address data, CK1 to CK shown in FIG. 2 are used. The selection of each address data in the selector 321 is performed based on the clock signals CK1 and CK2 from the system clock generator 10, and "00" and "0" are selected.
At the timing of “1”, the clock signal group CK is selected,
The envelope group data and the phase data PA from the latch 324 are selected by "10", and CP by "11".
The address data from U300 is selected.
【0036】RAM301には、各種中間処理データが
メモリされ、タイマ302は、CPU300が設定した
周期でインタラプト信号をCPU300に与え、リセッ
ト回路303は電源投入時にCPU300とアウトプッ
トラッチ304にリセットをかけるものである。アウト
プットラッチ304、306には音色スイッチ2、キー
ボード1のサンプリングアドレスが一時セットされ、イ
ンプットバッファ305、307には、そのサンプリン
グ結果が入力される。上記アウトプットラッチ304の
サンプリングデータのうち1ビットのみ上記D−A変換
器100のゲート信号として用いられる。Various kinds of intermediate processing data are stored in the RAM 301, a timer 302 gives an interrupt signal to the CPU 300 at a cycle set by the CPU 300, and a reset circuit 303 resets the CPU 300 and the output latch 304 when the power is turned on. Is. The sampling addresses of the tone color switch 2 and the keyboard 1 are temporarily set in the output latches 304 and 306, and the sampling results are input to the input buffers 305 and 307. Only one bit of the sampling data of the output latch 304 is used as the gate signal of the DA converter 100.
【0037】《周波数ナンバ累算器40》図7は、周波
数ナンバ累算器40を示すもので、上記アサインメント
メモリ回路32からの周波数ナンバスピードデータFS
は、ラッチ404を介し、イクスクルシブオアゲート群
405を介して、アダー407で、それまでの周波数ナ
ンバ累算値FAに累算され、上位8ビットFA19〜2
6はセレクタ413を介し、下位19ビットFA0〜1
8はイクスクルシブオアゲート群414を介し、ラッチ
群415、セレクタ416を介して、上記周波数ナンバ
累算値FAとして再びアダー407に与えられる。これ
により、周波数ナンバ累算値FAが周波数ナンバスピー
ドデータFSの大きさに応じた速度で累算され、この累
算値FAはラッチ418を介し、上位の整数部分にあた
る15ビットFA12〜26が上記ROMアドレス制御
回路31に送られ、波形データRDの読み出しが行われ
る。また小数部分の上位3ビットFA9〜11と最上位
ビットの波形折返し信号FDUは、上記波形データ伸長
補間回路50へ送られて、波形データRDのサンプル値
の伸長と補間に用いられる。<< Frequency Number Accumulator 40 >> FIG. 7 shows the frequency number accumulator 40. The frequency number speed data FS from the assignment memory circuit 32 is shown in FIG.
Is accumulated in the frequency number accumulated value FA up to that point in the adder 407 through the latch 404, the exclusive OR gate group 405, and the upper 8 bits FA 19-2.
6 is the lower 19 bits FA0 to 1 via the selector 413
8 is again given to the adder 407 as the frequency number accumulated value FA via the exclusive OR gate group 414, the latch group 415 and the selector 416. As a result, the frequency number accumulated value FA is accumulated at a speed corresponding to the size of the frequency number speed data FS, and the accumulated value FA is passed through the latch 418 and the 15-bit FA 12 to 26 corresponding to the upper integer part is written. It is sent to the ROM address control circuit 31 and the waveform data RD is read. The upper 3 bits FA9 to 11 of the fractional part and the waveform folding signal FDU of the most significant bit are sent to the waveform data decompression / interpolation circuit 50 and used for decompression and interpolation of the sample value of the waveform data RD.
【0038】このような周波数ナンバ累算値FAの内容
を示したのが図9であり、周波数ナンバ累算値FAは全
部で28ビットのデータであり、最上位ビットは波形折
返し信号FDUで、次の8ビットFA19〜26はコン
パレートビットで、後述するループエンド、ループトッ
プに到達したか否かの対比に用いられ、さらに次の7ビ
ットFA12〜18が整数部分、最後の12ビットFA
0〜11が小数部分となっている。このような周波数ナ
ンバスピードデータFSは、CH0〜15の16チャン
ネル分、周波数ナンバ累算器40で累算され、各チャン
ネルの周波数ナンバ累算値FAは上記ラッチ群415に
メモリされている。このラッチ群415は16個のラッ
チよりなり、(A)(B)2つの楽音成分につき、同じ
読み出しアドレス(同じ周波数ナンバ累算値FA12〜
FA26)が使われる。音色の違いは上記バンクデータ
(A)(B)の違いに基づいている。FIG. 9 shows the contents of the frequency number accumulated value FA. The frequency number accumulated value FA is 28-bit data in total, and the most significant bit is the waveform folding signal FDU. The next 8-bit FAs 19 to 26 are comparator bits, which are used for comparing whether or not the loop end and loop top, which will be described later, are reached. Further, the next 7-bit FAs 12 to 18 are the integer part and the last 12-bit FA
0 to 11 is a decimal part. Such frequency number speed data FS for 16 channels of CH0 to 15 are accumulated by the frequency number accumulator 40, and the frequency number accumulated value FA of each channel is stored in the latch group 415. This latch group 415 is composed of 16 latches, and (A) and (B) have the same read address (the same frequency number accumulated value FA12 ...
FA26) is used. The difference in tone color is based on the difference in the bank data (A) and (B).
【0039】また、アサインメントメモリ回路32から
の8ビットイニシャル周波数ナンバは、ラッチ406を
介しセレクタ416にて、上位に1ビットの「0」下位
に19ビットの「00…0」が付加されて、周波数ナン
バ累算値FAと同じ28ビットデータとしてセレクトさ
れる。このセレクタ416におけるセレクト信号は、エ
ンベロープ発生器60からのキーオンタイミングに出力
されるオンイベント信号が用いられ、図8に示すよう
に、キーオンタイミングから、このイニシャル周波数ナ
ンバに対し、順次周波数ナンバスピードデータFSが累
算されていく。The 8-bit initial frequency number from the assignment memory circuit 32 is added through the latch 406 by the selector 416 with 1-bit “0” at the upper side and 19-bit “00 ... 0” at the lower side. , The same 28-bit data as the frequency number accumulated value FA is selected. An on-event signal output from the envelope generator 60 at the key-on timing is used as the select signal in the selector 416. As shown in FIG. 8, from the key-on timing to the initial frequency number, sequential frequency number speed data is obtained. FS is accumulated.
【0040】さらに、アサインメントメモリ回路32か
らのループエンドデータ、ループトップデータは、ラッ
チ402を介し、セレクタ403でループエンド、ルー
プトップいずれかが選択され、コンパレータ409に与
えられるとともに、セレクタ413にも与えられる。コ
ンパレータ409では、周波数ナンバ累算値FAの上位
8ビットコンパレートビットFA19〜26との比較が
行われ、周波数ナンバ累算値FAがループエンドとルー
プトップの間の範囲を越えたとき、セレクタ410より
オーバラン信号FCPが出力され、オアゲート411を
介し、上記イクスクルシブオアゲート群414及びセレ
クタ413に与えられ、ループエンドデータ又はループ
トップデータが周波数ナンバ累算値FAの上位のコンパ
レートビットFA19〜26に代わって、新たなデータ
として取り込まれる。Further, loop end data and loop top data from the assignment memory circuit 32 are selected by the selector 403 through the latch 402, and either loop end data or loop top data is supplied to the comparator 409 and to the selector 413. Is also given. The comparator 409 compares the frequency number accumulated value FA with the upper 8-bit comparator bits FA19 to 26, and when the frequency number accumulated value FA exceeds the range between the loop end and the loop top, the selector 410 The overrun signal FCP is output from the OR gate 411 and is given to the exclusive OR gate group 414 and the selector 413 via the OR gate 411. The loop end data or the loop top data is the higher-order comparison bits FA19 to 26 of the frequency number accumulated value FA. Instead of, it is captured as new data.
【0041】このとき、イクスクルシブオアゲート群4
14では、それまでの周波数ナンバ累算値FAの整数部
分及び小数部分の値がプラスマイナス反転されるが、こ
れは波形データRDの読出方向をループエンド又はルー
プトップで反転させるにあたって、それまでの周波数ナ
ンバ累算値FAの端数をプラスマイナス反転した状態で
そのまま使い、波形データRDの反転読み出しに整合性
をもたせるためのものである。At this time, the exclusive OR gate group 4
At 14, the values of the integer part and the decimal part of the frequency number accumulated value FA up to that point are inverted plus or minus. This is because the reading direction of the waveform data RD is inverted at the loop end or loop top. This is to use the frequency number accumulated value FA as it is in a state where the fraction of the accumulated value FA is plus / minus inverted and to provide consistency in inversion reading of the waveform data RD.
【0042】上記オーバラン信号FCPは、イクスクル
シブオアゲート412にも与えられて、周波数ナンバ累
算値FAの最上位ビットである波形折返し信号FDUを
反転させ、これによりイクスクルシブオアゲート群40
5における周波数ナンバスピードデータFSの値がプラ
スマイナス反転され、アダー407における周波数ナン
バ累算値FAの累算方向が加減切り換えされる。このよ
うな周波数ナンバスピードデータFSの加減切換による
半波形ごとのループ再生の状態を示したのが図8であ
る。The overrun signal FCP is also given to the exclusive OR gate 412 to invert the waveform folding signal FDU which is the most significant bit of the accumulated frequency number FA, whereby the exclusive OR gate group 40 is obtained.
The value of the frequency number speed data FS in No. 5 is inverted, and the accumulation direction of the frequency number accumulated value FA in the adder 407 is switched up or down. FIG. 8 shows the state of loop reproduction for each half-waveform by such increase / decrease switching of the frequency number speed data FS.
【0043】上記波形折返し信号FDUは、セレクタ4
03、410にセレクト信号として与えられ、周波数ナ
ンバスピードデータFSの加算時にはループエンドデー
タとA<B検出信号の方が選択され、減算時にはループ
トップデータとA>B検出信号の方が選択される。また
波形折返し信号FDUは、アダー407のCin端子に
も入力され、周波数ナンバスピードデータFSの減算時
に周波数ナンバ累算値FAの+1処理が行われるほか、
イクスクルシブオアゲート408にも与えられる。この
イクスクルシブオアゲート408には、アダー407の
Cout端子からの出力信号も与えられており、周波数
ナンバ累算値FAがオーバーフロー又はアンダーフロー
したことが検出され、これも上記オーバラン信号FCP
として出力される。The waveform folding signal FDU is sent to the selector 4
03 and 410 as select signals. When the frequency number speed data FS is added, the loop end data and the A <B detection signal are selected, and when the frequency number speed data FS is subtracted, the loop top data and the A> B detection signal are selected. . The waveform folding signal FDU is also input to the Cin terminal of the adder 407, and the frequency number accumulated value FA is incremented by 1 when the frequency number speed data FS is subtracted.
It is also given to the exclusive OR gate 408. The output signal from the Cout terminal of the adder 407 is also given to the exclusive OR gate 408, and it is detected that the frequency number accumulated value FA overflows or underflows, which is also the above-mentioned overrun signal FCP.
Is output as
【0044】さらに、アサインメントメモリ回路32か
らのバンクデータ(A)(B)は、ラッチ400を介し
て、セレクタ401で(A)、(B)いずれか一方のバ
ンクデータが選択され、ラッチ417を介して、上述周
波数ナンバ累算値FAの整数部分とコンパレートビット
とともにROMアドレス制御回路31へ送られ、波形デ
ータRDの読み出しが行われる。Further, for the bank data (A) and (B) from the assignment memory circuit 32, either the bank data (A) or (B) is selected by the selector 401 via the latch 400, and the latch 417 is selected. Is sent to the ROM address control circuit 31 together with the integer part of the frequency number accumulated value FA and the comparator bits, and the waveform data RD is read.
【0045】これにより、1つのチャンネルに割り当て
られる2つの楽音成分(A)(B)は、バンクデータは
異なっているものの、共通の周波数ナンバ累算値FAが
用いられ、楽音生成処理のタイミング同期がとられる。As a result, the two tone components (A) and (B) assigned to one channel use the common frequency number accumulated value FA although the bank data are different, and the timing synchronization of the tone generation processing is performed. Is taken.
【0046】上記セレクタ401のセレクト信号には、
システムクロック発生器10からのクロック信号CK3
が用いられ、このクロック信号CK3の前半で(A)に
ついての楽音生成処理が行われ、後半で(B)について
の楽音生成処理が行われることになる。システムクロッ
ク発生器10からのクロック信号群CKは、上記ラッチ
400、402、404、406、415、417、4
18にもラッチ信号として与えられ、チャンネル周期及
びタイミング同期がとられる。The select signal of the selector 401 includes:
Clock signal CK3 from the system clock generator 10
Is used, the tone generation processing for (A) is performed in the first half of the clock signal CK3, and the tone generation processing for (B) is performed in the second half. The clock signal group CK from the system clock generator 10 is supplied to the above latches 400, 402, 404, 406, 415, 417, 4
18 is also given as a latch signal to synchronize the channel period and timing.
【0047】《波形データ伸長補間回路50》第10図
は、波形データ伸長補間回路50を示すもので、ゲート
500〜510とセレクタ511〜513で第14図に
示すような波形データRDの中の差分データの伸長が行
われ、ゲート514〜517とゲート群518、51
9、アダー520、セレクタ521で第12図に示すよ
うな波形データRDの各サンプル値R0 、R1 、R2 、
R3 …の補間が行われ、ゲート群524、522、ゲー
ト526、セレクタ525、アダー527で波形データ
RDが10ビットのサンプル値と6ビットの差分データ
のとき補間し(D816=0)、8ビットのサンプル値
2つのとき補間しない(D816=1)制御が行われ
る。<< Waveform Data Expansion Interpolation Circuit 50 >> FIG. 10 shows the waveform data expansion interpolation circuit 50. The gates 500 to 510 and the selectors 511 to 513 are included in the waveform data RD shown in FIG. The difference data is expanded, and the gates 514 to 517 and the gate groups 518 and 51 are expanded.
9, the adder 520 and the selector 521 each sample value R 0 , R 1 , R 2 of the waveform data RD as shown in FIG.
Interpolation of R 3 ... Is performed, and when the waveform data RD is a 10-bit sample value and 6-bit difference data in the gate groups 524, 522, the gate 526, the selector 525, and the adder 527 (D816 = 0), 8 When there are two bit sample values, control is performed without interpolation (D816 = 1).
【0048】《波形データ伸長補間回路50のデータ処
理の概要》第13図は、ROM20より読み出された波
形データRDのデータ構成を示すもので、データ長信号
D816がローレベルで10ビットのサンプル値と6ビ
ットの差分データからなるときは、上位10ビットRD
6〜15はサンプル値で、RD5は差分符号データ、R
D2〜4は差分パワーデータ、RD0、1は差分マンテ
ィッサデータとなっている。差分データRD0〜4は圧
縮状態で記憶されており、伸長すると第14図に示すよ
うな10ビットの伸長差分データIE0〜8、IESと
なる。<< Outline of Data Processing of Waveform Data Expansion Interpolation Circuit 50 >> FIG. 13 shows the data structure of the waveform data RD read from the ROM 20. The data length signal D816 is a 10-bit sample at a low level. If it consists of a value and 6-bit difference data, the upper 10 bits RD
6 to 15 are sample values, RD5 is differential code data, R
D2 to D4 are differential power data, and RD0 and 1 are differential mantisser data. The differential data RD0 to RD4 are stored in a compressed state, and when decompressed, they become decompressed differential data IE0 to 8 and IES of 10 bits as shown in FIG.
【0049】すなわち差分パワーデータRD2〜4は、
差分値の何ビット目にはじめて「1」があるかを示すデ
ータであり、差分マンティッサデータRD0、1は、こ
の「1」に続く2ビット分のデータそのものを示してい
る。このように、第14図上段のデータは伸長差分デー
タを加算するときのものであるが、下段のデータは減算
するときのものである。この場合には、差分パワーデー
タRD2〜4は、差分値の何ビット目まで「1」が続く
かを示すデータであり、これに続く変換差分マンティッ
サデータRG0〜2は、差分マンティッサデータRD
0、1を第14図下方の論理式で変換したもので、この
変換内容は第15図に示すとおりであり、プラスマイナ
ス反転した値に変換される。That is, the differential power data RD2-4 are
It is data indicating which bit of the difference value has "1" first, and the difference mantissor data RD0, 1 indicates the data itself for 2 bits following this "1". Thus, the data in the upper part of FIG. 14 is for adding decompression difference data, while the data in the lower part is for subtraction. In this case, the difference power data RD2 to RD4 are data indicating how many bits of the difference value "1" continues, and the conversion difference mantisser data RG0 to RG2 that follow the difference power data RD2 are difference mantissers. Data RD
0 and 1 are converted by the logical expression in the lower part of FIG. 14, and the contents of this conversion are as shown in FIG. 15, and are converted into plus and minus inverted values.
【0050】このような伸長差分データIE0〜8、I
ESは、第12図に大丸で示す波形データRDの各サン
プル値の間の差の1/2であり、各サンプル値と×印で
示す仮想値との差を示すことになる。第12図の仮想値
は補間値と重なって×印に○印が重なった状態となって
いる。Such decompression difference data IE0-8, I
ES is 1/2 of the difference between the respective sample values of the waveform data RD indicated by the large circle in FIG. 12, and indicates the difference between each sample value and the virtual value indicated by the X mark. The virtual value in FIG. 12 overlaps with the interpolated value and is in a state in which the mark “x” and the mark “o” overlap.
【0051】波形データRDの各サンプル値R0 、
R1 、R2 …は、周波数ナンバ累算値FAの小数が1/
2のときにおけるものであるため、第11図(2)と第
12図の×印でつながる波形を実現するためには、サン
プル値G0 、G1 、G2 …の各×印地点の中間点のサン
プル値をメモリすればよいことになる。この中間点のサ
ンプル値は、R0 =(G0 +G1 )/2、R1 =(G1
+G2 )/2、R2 =(G2 +G3 )/2…となる。Each sample value R 0 of the waveform data RD,
In R 1 , R 2, ..., The decimal number of the frequency number accumulated value FA is 1 /
Since it is the case of 2, in order to realize the waveform connected by the X mark in FIG. 11 (2) and FIG. 12, the middle of each X mark point of the sample values G 0 , G 1 , G 2 ... It suffices to memorize the sample values of the points. The sample values at this intermediate point are R 0 = (G 0 + G 1 ) / 2, R 1 = (G 1
+ G 2 ) / 2, R 2 = (G 2 + G 3 ) / 2.
【0052】このように、×印のサンプル値ではなく、
×印の中間点のサンプル値を記憶することにより、第1
2図と第11図(2)に示すように、周波数ナンバ累算
値FAが「00…0」のスタート地点で波形データレベ
ルを正確に「0」にすることができる。すなわち、RO
M20の波形データRDのメモリエリアの先頭番地に
は、通常第1ステップ目の「0」レベルでない波形デー
タRDがメモリされているが、周波数ナンバ累算値FA
が「00…0」のとき、この第1ステップを読み出して
しまわないような処理が行われなくとも、上記中間点の
サンプル値を記憶することにより自動的に位相合わせが
でき、第11図(1)のような位相のずれを生じてしま
うことがなくなる。As described above, not the sample value of X mark,
By storing the sample value at the midpoint of the X mark,
As shown in FIG. 2 and FIG. 11 (2), the waveform data level can be accurately set to “0” at the start point where the frequency number accumulated value FA is “00 ... 0”. That is, RO
At the head address of the memory area of the waveform data RD of M20, the waveform data RD that is not the "0" level in the first step is normally stored, but the frequency number accumulated value FA
Is "00 ... 0", the phase can be automatically adjusted by storing the sample value of the intermediate point even if the process of not reading the first step is not performed. The phase shift as in 1) does not occur.
【0053】また、×印の中間点とこの中間点の前後の
補間点との差分データは前後同じとなり、この結果、記
憶すべき差分データは本来の差分データの1/2で済む
ことになる。従って、通常波形データRDのサンプル値
が10ビットの時、その差分データは10ビットであ
り、上記のような圧縮方式を用いても差分パワーデータ
のビット数が4ビット必要となるため、最大圧縮して7
ビットにしかならないが、上述したように差分データを
1/2にできることにより、差分データを6ビットにで
き、合計16ビットとして、通常のデータアクセスにお
いて1回でアクセスできる。Further, the difference data between the midpoint of the X mark and the interpolation points before and after this midpoint are the same before and after, and as a result, the difference data to be stored is 1/2 of the original difference data. . Therefore, when the sample value of the normal waveform data RD is 10 bits, the difference data is 10 bits, and even if the compression method as described above is used, the number of bits of the difference power data is 4 bits, and therefore the maximum compression is performed. Then 7
Although the number of bits is only one bit, the difference data can be reduced to ½ as described above, so that the difference data can be reduced to 6 bits and a total of 16 bits, which can be accessed once in a normal data access.
【0054】このため、1つのROM20より波形デー
タRDとプログラム(又は音色データ)とを交互に読み
出して、単位時間当りの波形データRDの読み出し機会
が1/2に減っても十分対応できる。なお、記憶す波形
データRDは、×地点が折れ線状につながる波形であっ
てもよい。Therefore, even if the waveform data RD and the program (or the tone color data) are alternately read from one ROM 20 and the chance of reading the waveform data RD per unit time is reduced to half, it is still possible. The waveform data RD to be stored may be a waveform in which x points are connected in a polygonal line shape.
【0055】上述の伸長差分データの1/4、2/4、
3/4、4/4をサンプル値に対し第16図に示すよう
に加減すれば、補間値が求められることになる。この場
合、第12図の各サンプル値R0 、R1 、R2 、R3 …
に対し、E0 、D1 、D2 、D3 …のように、補間値の
方が大きいときは、伸長差分データは第14図上段に示
すように加算値となり、D0 、E1 、E2 、E3 …のよ
うに補間値の方が小さいときは、伸長差分データは第1
4図下段に示すように減算値となる。1/4, 2/4 of the decompression difference data described above,
By adding / subtracting 3/4 and 4/4 to the sample value as shown in FIG. 16, the interpolated value can be obtained. In this case, the sampled values R 0 , R 1 , R 2 , R 3 ...
On the other hand, when the interpolation value is larger as in E 0 , D 1 , D 2 , D 3, ..., The expansion difference data becomes an addition value as shown in the upper part of FIG. 14, and D 0 , E 1 , When the interpolation value is smaller as in E 2 , E 3, ...
It becomes a subtraction value as shown in the lower part of FIG.
【0056】波形データRDのデータ形式に10ビット
のものと、8ビットのものの2種類あるのは、量子化ビ
ット数を減らしても量子化ノイズがそれほど問題となら
ないにぎやかな音は8ビットし、量子化ノイズが目立つ
音は10ビットとして使い分け、メモリ使用量を少なく
したものである。There are two types of waveform data RD, that is, 10-bit data format and 8-bit data format. Even if the number of quantization bits is reduced, quantization noise does not matter so much. The sound in which the quantization noise is conspicuous is properly used as 10 bits, and the amount of memory used is reduced.
【0057】《波形データ伸長補間回路50の回路構
成》第10図において、セレクタ511のA側「0」端
子とB側「1」端子には、差分マンティッサデータRD
0がそのまま入力される。またセレクタ511のA側
「1」端子とB側「2」端子には、伸長差分データの最
上位ビットIESが「0」のとき、差分マンティッサデ
ータRD1がそのまま入力され、最上位ビットIESが
「1」のとき、アンドゲート502が開成されるので、
差分マンティッサデータRD0とRD1との排他的論理
和データRG1が入力される。<< Circuit Configuration of Waveform Data Expansion Interpolation Circuit 50 >> In FIG. 10, the differential mantiser data RD is provided at the A side “0” terminal and the B side “1” terminal of the selector 511.
0 is input as it is. Further, when the most significant bit IES of the decompressed differential data is “0”, the differential mantisser data RD1 is directly input to the A side “1” terminal and the B side “2” terminal of the selector 511, and the most significant bit IES is input. When is "1", the AND gate 502 is opened,
Exclusive OR data RG1 of the difference mantissa data RD0 and RD1 is input.
【0058】さらにセレクタ511のA側「2」端子と
B側「3」端子には、上記最上位ビットIESが「0」
のとき、ナンドゲート505の出力が「1」となってイ
クスクルシブオアゲート506でノアゲート509の出
力が反転されるので、差分パワーデータRD2〜4の論
理和が入力され、最上位ビットIESが「1」のとき、
オアゲート504による差分マンティッサデータRD
0、1の論理和の反転データと差分パワーデータRD2
〜4の論理和の反転データとの排他的論理和データRG
2が入力される。そして、セレクタ511のA側「3」
端子には、上記最上位ビットIESが入力され、B側
「0」端子には、「0」データが入力される。Further, the most significant bit IES is "0" at the A side "2" terminal and the B side "3" terminal of the selector 511.
At this time, the output of the NAND gate 505 becomes "1" and the output of the NOR gate 509 is inverted by the exclusive OR gate 506. Therefore, the logical sum of the differential power data RD2-4 is input and the most significant bit IES becomes "1". "When,
Difference mantissa data RD by OR gate 504
Inverted data of logical sum of 0 and 1 and differential power data RD2
Exclusive OR data RG with inverted data of OR of 4 to 4
2 is input. Then, the A side “3” of the selector 511
The most significant bit IES is input to the terminal, and "0" data is input to the B side "0" terminal.
【0059】これにより、第14図に示すような、差分
マンティッサデータRD0、1と上位1ビット分のデー
タ、又は変換差分マンティッサデータRG0、1、2の
データが作成されることになる。変換差分マンティッサ
データRG0〜2の具体的な内容は第15図に示すとう
りである。As a result, as shown in FIG. 14, the difference mantisser data RD0, 1 and the data of the upper 1 bit, or the converted difference mantisser data RG0, 1, 2 is created. Become. The concrete contents of the conversion difference mantissa data RG0 to RG2 are as shown in FIG.
【0060】このセレクタ511の4ビットデータは、
セレクタ512、513で上位に最上位ビットIESが
2ビット分、4ビット分付加されるか、下位に「0」デ
ータが2ビット分、4ビット分付加されるかが選択さ
れ、10ビットデータとして出力される。各セレクタ5
11、512、513のセレクト状態を適当に選ぶこと
により差分マンティッサデータRD0、1又はRG0〜
2を第14図に示すようにシフトしていくことができ、
このセレクト状態の選択は、差分パワーデータRD2〜
4に基づいて行われる。The 4-bit data of this selector 511 is
The selectors 512 and 513 select whether the most significant bit IES is added to the upper bits by 2 bits and 4 bits or the lower bit "0" data is added by 2 bits and 4 bits, and is selected as 10-bit data. Is output. Each selector 5
By appropriately selecting the selection states of 11, 512, and 513, the difference mantissa data RD0, 1 or RG0 to
2 can be shifted as shown in FIG. 14,
The selection of this selection state is performed by the difference power data RD2.
It is performed based on 4.
【0061】こうして、差分圧縮データが6ビットであ
るにもかかわらず、伸長差分データを10ビットまで拡
大することができ、メモリ使用量を少なくできる。In this way, although the differential compression data is 6 bits, the expansion differential data can be expanded to 10 bits, and the memory usage amount can be reduced.
【0062】上記伸長差分データの最上位ビットIES
は、イクスクルシブオアゲート500の入力の差分符号
データRD5と、ノアゲート501の入力の周波数ナン
バ累算値FAの小数部分の最上位ビットFA11と、ノ
アゲート508からの差分データの各ビットRD0〜4
の論理和の反転データとによって決定される。すなわ
ち、第12図に示すように、D0 のFA11が「0」、
差分符号RD5が「0」(加算方向)のときと、E1 、
E2 …のFA11が「1」、RD5が「1」(減算方
向)のときは、伸長差分データの最上位ビットIESが
「1」となって、サンプル値に対して差分データを減算
しなくてはならないことを示す。上記ノアゲート501
には差分データの各ビットRD0、1、2、3、4、5
の論理和の反転データが入力されて、差分データが「0
0000」のとき、ノアゲート501の出力を「0」と
して、伸長差分データの最上位ビットIESが「1」に
ならないようにコントロールされる。Most significant bit IES of the above expansion difference data
Is the differential code data RD5 of the input of the exclusive OR gate 500, the most significant bit FA11 of the fractional part of the frequency number accumulated value FA of the input of the NOR gate 501, and each bit RD0-4 of the differential data from the NOR gate 508.
And the inverted data of the logical sum of That is, as shown in FIG. 12, FA 11 of D 0 is “0”,
When the difference code RD5 is “0” (addition direction), E 1 ,
When FA11 of E 2 ... Is “1” and RD5 is “1” (subtraction direction), the most significant bit IES of the expansion difference data becomes “1” and the difference data is not subtracted from the sample value. Indicates that it must not be. The NOR gate 501
Each bit of the difference data RD0, 1, 2, 3, 4, 5
The inverted data of the logical sum of the
When it is "0000", the output of the NOR gate 501 is set to "0", and the most significant bit IES of the expansion difference data is controlled so as not to be "1".
【0063】伸長差分データIEは、1ビット下位にシ
フトされて2/4の値となってアンドゲート群519を
介しアダー520の一方の端子に入力されるとともに、
2ビット下位にシフトされて1/4の値となってアンド
ゲート群518を介しアダー520の他方の端子に入力
され、このアダー520の出力はセレクタ521のA側
に与えられる。またセレクタ521のB側には、上記伸
長差分データIEがシフトされず、そのままの倍率で与
えられる。従って、アンドゲート群518、519の開
成信号であるIM0、IM1とセレクタ521のセレク
ト信号であるIM2よりなる掛率データIMを適当に選
ぶことにより、第16図に示すように伸長差分データI
Eを1/4倍、2/4倍、3/4倍、4/4倍、0倍と
することができる。The decompression difference data IE is shifted to the lower bit by 1 bit to become a value of 2/4 and inputted to one terminal of the adder 520 through the AND gate group 519.
The value is shifted to the lower 2 bits and becomes a value of 1/4, which is input to the other terminal of the adder 520 through the AND gate group 518. The output of the adder 520 is given to the A side of the selector 521. On the B side of the selector 521, the decompression difference data IE is not shifted but given at the same magnification. Therefore, by properly selecting the multiplication rate data IM consisting of IM0 and IM1 which are the opening signals of the AND gate groups 518 and 519 and IM2 which is the selection signal of the selector 521, the expansion difference data I as shown in FIG.
E can be set to 1/4 times, 2/4 times, 3/4 times, 4/4 times, and 0 times.
【0064】このような掛率とされた伸長差分データI
Eは、アンドゲート群522を介してアダー527に与
えられ、後述する波形データRDのサンプル値RD6〜
15に加減算され、波形データRDの各サンプル値の補
間が行われることになる。Expansion difference data I with such a multiplication factor
E is given to the adder 527 via the AND gate group 522, and sample values RD6 to RD6 of the waveform data RD to be described later are given.
15 is added / subtracted, and each sample value of the waveform data RD is interpolated.
【0065】こうして、1つのサンプル値RD6〜15
と差分データRD0〜5で、8つの地点の波形データR
Dを作成することができ、なめらかな波形特性を得るこ
とができるとともにメモリ容量も少なくすることができ
ている。またこのような1つのデータで8つの地点を決
定できる波形データRDは1回の読み出しで読み出すこ
とができ、波形データRDの読み出し機会が少なくても
十分なめらかな波形を実現でき、この結果、ROM20
より波形データRDとそれ以外のプログラム等とを交互
に読み出しても、波形生成処理に支障をきたすことがな
くなり、ROM20にプログラムと波形データRDとを
一緒にメモリしても、各情報の読み出し速度を高める必
要もなくなる。Thus, one sample value RD6-15
And difference data RD0-5, waveform data R at 8 points
D can be created, smooth waveform characteristics can be obtained, and the memory capacity can be reduced. Further, the waveform data RD capable of determining eight points with such one data can be read out by one reading, and a sufficiently smooth waveform can be realized even if there are few opportunities to read out the waveform data RD. As a result, the ROM 20
As a result, even if the waveform data RD and other programs are read alternately, the waveform generation processing is not hindered. Even if the program and the waveform data RD are stored in the ROM 20 together, the reading speed of each information There is no need to increase the.
【0066】上記掛率データIM0〜2は、周波数ナン
バ累算値FAの小数部分の上位3ビットFA9〜11に
よって、論理ゲート514〜517によって作成され
る。このゲート群514、517により、第16図に示
すようなデータ変換が行われ、波形データRDの補間値
が求められることになる。この場合、周波数ナンバ累算
値FAの小数部分の最上位ビットFA11のみが「1」
のとき、すなわち周波数ナンバ累算値FAが1/2のと
きは、サンプル値に対する補間は行われず、ここを中心
として、これより前のタイミングでは、補間値が差分デ
ータの1/4、2/4、3/4、4/4の減算値とな
り、後のタイミングでは、補間値が差分データの1/
4、2/4、3/4の加算値となっている。The multiplication data IM0 to IM2 are created by the logic gates 514 to 517 by the high order 3 bits FA9 to 11 of the decimal part of the frequency number accumulated value FA. By the gate groups 514 and 517, data conversion as shown in FIG. 16 is performed, and the interpolated value of the waveform data RD is obtained. In this case, only the most significant bit FA11 of the decimal part of the accumulated frequency number FA is "1".
, That is, when the frequency number cumulative value FA is 1/2, interpolation is not performed on the sample value, and at the timing before this point, the interpolation value is 1/4, 2 / It becomes a subtraction value of 4, 3/4, 4/4, and at a later timing, the interpolation value is 1 / of the difference data.
It is an added value of 4, 2/4, and 3/4.
【0067】上記波形データRD0〜15は、10ビッ
トのサンプル値と6ビットの差分データよりなるとき
は、サンプル値RD6〜15が、セレクタ525のA側
より入力されて、そのまま上記アダー527に与えられ
て、補間値が加減される。このとき、データ長信号D8
16は、「0」となるから、アンドゲート群524、5
22は開成され、アンドゲート526は閉成され、セレ
クタ525はA側が選択される。また波形データRD0
〜15が、8ビットのサンプル値2つよりなるときは、
波形データRD0〜7はセレクタ525のB側より入力
され、上記アダー527に与えられ、波形データRD8
〜15はセレクタ525のA側より入力され、上記アダ
ー527に与えられる。When the waveform data RD0 to 15 are 10-bit sample values and 6-bit difference data, the sample values RD6 to 15 are input from the A side of the selector 525 and given to the adder 527 as they are. Then, the interpolation value is adjusted. At this time, the data length signal D8
Since 16 is "0", AND gate groups 524, 5
22 is opened, the AND gate 526 is closed, and the selector 525 selects the A side. Also, the waveform data RD0
When ~ 15 consists of two 8-bit sample values,
The waveform data RD0 to 7 are input from the B side of the selector 525, given to the adder 527, and the waveform data RD8.
˜15 are input from the A side of the selector 525 and given to the adder 527.
【0068】このとき各データRD0〜7、8〜15の
下位に2ビット「00」が付加されて10ビットデータ
とされる。また、このとき、データ長信号D816は
「1」となるから、アンドゲート群524、522は閉
成され、補間は行われない。さらに、このとき、アンド
ゲート526は開成されるから、周波数ナンバ累算値F
Aの小数部分の最上位ビットFA11の値(1、0)に
応じて、サンプル値(2n=RD0〜7、2n+1=R
D8〜15)が切り換えられる。At this time, 2-bit "00" is added to the lower order of each data RD0-7, 8-15 to make 10-bit data. At this time, since the data length signal D816 becomes "1", the AND gate groups 524 and 522 are closed and no interpolation is performed. Further, at this time, since the AND gate 526 is opened, the frequency number accumulated value F
Depending on the value (1,0) of the most significant bit FA11 of the fractional part of A, sample values (2n = RD0-7, 2n + 1 = R
D8 to 15) are switched.
【0069】本発明は上記実施例に限定されず、本発明
の趣旨を逸脱しない範囲で種々変更可能である。例え
ば、1回の読み出しで読み出されるプログラムは8ビッ
トずつのプログラムでもよく、データとプログラムとを
記憶する手段は、ROMとRAMを一体化したもの、磁
気メモリ、光メモリ等でもよく、データとプログラムと
の読出手段は、CPU300、周波数ナンバ累算器60
以外のものでもよく、データとプログラムとの読み出し
切り換えは、MMUアドレスデータ、クロック信号CK
1〜7以外によるものでもよい。本願明細書に記載され
た実施例の要約は以下のとうりである。The present invention is not limited to the above embodiments, and various modifications can be made without departing from the spirit of the present invention. For example, the program read by one reading may be a program of 8 bits each, and the means for storing the data and the program may be one in which ROM and RAM are integrated, magnetic memory, optical memory, or the like. CPU 300, frequency number accumulator 60
Other than this, read switching between data and program can be performed by switching between MMU address data and clock signal CK.
It may be one other than 1 to 7. A summary of the examples provided herein is as follows.
【0070】[0070]
【1】記憶手段内に設けられた楽音に関する楽音波形デ
ータを記憶するデータ記憶部と、同じくこの記憶手段内
に設けられ、楽音を生成または制御するための処理プロ
グラムを記憶するプログラム記憶部と、上記記憶手段か
ら複数のチャンネルごとに上記楽音波形データを周期的
に読み出すための読出アドレスデータを発生する第一の
読出アドレスデータ発生手段と、この第一の読出アドレ
スデータ発生手段によって読み出された楽音波形データ
を処理する処理手段と、上記第一の読出アドレスデータ
発生手段とは別の手段であって、上記記憶手段から中央
処理装置の処理プログラムを処理の進行にしたがって順
に読み出すための読出アドレスデータを発生する第二の
読出アドレスデータ発生手段と、この第二の読出アドレ
スデータ発生手段によって読み出された処理プログラム
に基づいて処理を行う中央処理装置と、これら第一の読
出アドレスデータ発生手段からの読出アドレスデータと
第二の読出アドレスデータ発生手段からの読出アドレス
データとを所定周期(一定周期)ごとに交互に切り換え
て、いずれか一方の読出アドレスデータだけを上記記憶
手段に供給するアドレス切換手段とを備えたことを特徴
とする楽音情報処理装置。[1] A data storage unit, which is provided in the storage unit, for storing musical tone waveform data relating to musical tones; and a program storage unit, which is also provided in the storage unit and stores a processing program for generating or controlling a musical tone, First read address data generating means for generating read address data for periodically reading the tone waveform data for each of a plurality of channels from the storage means, and the first read address data generating means. The reading means is a means different from the processing means for processing the tone waveform data and the first reading address data generating means, and is for reading the processing programs of the central processing unit from the storage means in order as the processing progresses. Second read address data generating means for generating data and the second read address data generating means Therefore, a central processing unit for performing processing based on the read processing program, read address data from the first read address data generating means, and read address data from the second read address data generating means are provided at predetermined intervals. A musical tone information processing apparatus, comprising: an address switching means for alternately switching every (fixed period) and supplying only one of the read address data to the storage means.
【0071】[0071]
【2】記憶手段内に設けられた楽音に関する楽音データ
を記憶するデータ記憶部と、同じくこの記憶手段内に設
けられ、上記楽音データを処理するプログラムとは異な
るプログラムであって、楽音を生成または制御するため
の処理プログラムを記憶するプログラム記憶部と、上記
記憶手段から楽音データを読み出すための読出アドレス
データを発生する第一の読出アドレスデータ発生手段
と、この第一の読出アドレスデータ発生手段によって読
み出された楽音データを処理する第一の処理手段と、上
記第一の読出アドレスデータ発生手段とは別の手段であ
って、上記記憶手段から処理プログラムを読み出すため
の読出アドレスデータを発生する第二の読出アドレスデ
ータ発生手段と、この第二の読出アドレスデータ発生手
段によって読み出された処理プログラムに基づいて処理
を行う手段であって、上記第一の処理手段とは独立した
異なる第二の処理手段と、これら第一の読出アドレスデ
ータ発生手段からの読出アドレスデータと第二の読出ア
ドレスデータ発生手段からの読出アドレスデータとを所
定周期(一定周期)ごとに交互に切り換えて、いずれか
一方の読出アドレスデータだけを上記記憶手段に供給す
るアドレス切換手段とを備えたことを特徴とする楽音情
報処理装置。[2] A data storage unit for storing musical tone data regarding musical tones provided in the storage unit and a program different from the program for processing the musical tone data, which is also provided in the storage unit, for generating or generating musical tones. A program storage unit for storing a processing program for controlling, a first read address data generation unit for generating read address data for reading tone data from the storage unit, and a first read address data generation unit. The first processing means for processing the read musical sound data and the first read address data generating means are means different from each other, and generate read address data for reading the processing program from the storage means. The second read address data generating means and the second read address data generating means Means for performing processing based on the processing program, which is different from the first processing means, and read address data from the first read address data generating means and the second read data. The read address data from the read address data generating means is alternately switched every predetermined period (constant period), and only one of the read address data is supplied to the storage means. Music information processing device.
【0072】[0072]
【3】上記第二の読出アドレスデータ発生手段及び第二
の処理手段または中央処理装置は、上記プログラム記憶
部から処理プログラムを読み出して、上記楽音をチャン
ネルに割り当てる制御を行うことを特徴とする請求項1
または2記載の楽音情報処理装置。3. The second read address data generating means and the second processing means or the central processing unit read the processing program from the program storage section and perform control to assign the musical tones to the channels. Item 1
Alternatively, the musical sound information processing device described in 2.
【0073】[0073]
【4】上記第一の読出アドレスデータ発生手段及び第一
の処理手段は、上記データ記憶部から楽音波形データを
読み出して楽音を生成処理することを特徴とする請求項
2記載の楽音情報処理装置。4. The musical tone information processing apparatus according to claim 2, wherein the first read address data generating means and the first processing means read musical tone waveform data from the data storage unit to generate musical tones. .
【0074】[0074]
【5】上記アドレス切換手段は、これら第一の読出アド
レスデータ発生手段からの読出アドレスデータと第二の
読出アドレスデータ発生手段からの読出アドレスデータ
とを時分割に切り換える手段であることを特徴とする請
求項1、2、3または4記載の楽音情報処理装置。[5] The address switching means is a means for time-divisionally switching the read address data from the first read address data generating means and the read address data from the second read address data generating means. The musical sound information processing apparatus according to claim 1, 2, 3, or 4.
【0075】[0075]
【6】上記プログラム記憶部からの処理プログラムの読
み出しは、中央処理装置によって読み出され、上記デー
タ記憶部からの楽音データの読み出しは、時分割処理に
よって形成された楽音データを処理するための各チャン
ネルごとに順次読み出されることを特徴とする請求項2
記載の楽音情報処理装置。[6] The processing program is read from the program storage unit by the central processing unit, and the musical tone data is read from the data storage unit for processing the musical tone data formed by the time division processing. 3. The reading is performed sequentially for each channel.
The described musical sound information processing apparatus.
【0076】[0076]
【7】上記データ記憶部からは、1回の読出で、複数ス
テップ分の楽音データまたは楽音波形データが読み出さ
れ、上記プログラム記憶部からは、1回の読出で、複数
ステップ分の処理プログラムが読み出されることを特徴
とする請求項1、2、3、4、5または6記載の楽音情
報処理装置。[7] A plurality of steps of musical tone data or musical tone waveform data are read from the data storage section by one reading, and a plurality of steps of processing programs are read from the program storage section. 7. The musical sound information processing apparatus according to claim 1, 2, 3, 4, 5 or 6, wherein
【0077】[0077]
【8】上記楽音情報処理装置は、1回の読出で読み出し
た楽音データ若しくは楽音波形データまたは処理プログ
ラムを分割して切り換え出力する分割出力手段と、この
分割した楽音データ若しくは楽音波形データまたは処理
プログラムの切り換え出力を、上記両読出アドレスデー
タ発生手段から発生されたいずれかのアドレスデータの
特定ビットの値によって行う切換制御手段とをさらに備
えたことを特徴とする請求項1、2、3、4、5、6ま
たは7記載の楽音情報処理装置。[8] The musical tone information processing apparatus divides and outputs the musical tone data or musical tone waveform data or processing program read by one-time division, and the divided output means, and the divided musical tone data or musical tone waveform data or processing program. Switching control means for performing the switching output according to the value of a specific bit of any of the address data generated from the both read address data generating means. The musical sound information processing apparatus described in 5, 6, or 7.
【0078】[0078]
【9】楽音の内容を表すデータを記憶するデータ記憶手
段と、このデータ記憶手段と一体に設けられ、楽音を生
成放音するための処理プログラムを記憶するプログラム
記憶手段と、上記データ記憶手段からデータを読み出す
データ読出手段と、上記プログラム記憶手段からプログ
ラムを読み出すプログラム読出手段と、これらデータ読
出手段とプログラム読出手段との読み出しを切り換える
切換手段とを備えたことを特徴とする楽音情報記憶装
置。[9] Data storage means for storing data representing the contents of musical tones, program storage means provided integrally with the data storage means for storing processing programs for generating and emitting musical tones, and the data storage means A musical tone information storage device comprising: a data reading means for reading data; a program reading means for reading a program from the program storage means; and a switching means for switching the reading between the data reading means and the program reading means.
【0079】[0079]
【10】上記データ読出手段は、1回の読出で、複数ス
テップ分の波形データを読み出す手段であるを特徴とす
る請求項9記載の楽音情報処理装置。10. The musical tone information processing apparatus according to claim 9, wherein said data reading means is means for reading waveform data for a plurality of steps by one reading.
【0080】[0080]
【11】上記プログラム読出手段は、1回の読出で、複
数ステップ分の処理プログラムを読み出す手段であるを
特徴とする請求項9記載の楽音情報処理装置。11. The musical tone information processing apparatus according to claim 9, wherein said program reading means is means for reading processing programs for a plurality of steps by one reading.
【0081】[0081]
【12】上記請求項9、10又は11において、1回の
読出で読み出したデータ又はプログラムを分割して切り
換え出力する分割出力手段と、この分割したデータ又は
プログラムの切り換え出力を、上記両読出手段のいずれ
かのアドレスデータの最下位ビットの値によって行う切
換制御手段とを設けたことを特徴とする楽音情報処理装
置。12. The above-mentioned reading means for dividing and outputting the data or the program read by one reading by dividing and outputting the divided data or the program. And a switching control means for controlling the value of the least significant bit of any of the address data.
【0082】[0082]
【発明の効果】以上詳述したように本発明によれば、本
発明は、楽音についてのデータとプログラムとを一体の
記憶手段に記憶することにより、記憶装置をコンパクト
にして、回路構成を簡単なものとすることができるほ
か、読出アドレスデータをデータとプログラムの記憶さ
れているエリアのアドレスの差だけ切り換えるだけで、
データとプログラムの読出切り換えを行うことができ、
情報の読出処理が簡易になる等の効果を奏する。As described in detail above, according to the present invention, the present invention stores the data and the program for the musical sound in the integrated storage means, thereby making the storage device compact and simplifying the circuit configuration. Besides, it is possible to change the read address data by the difference between the data and the address of the area where the program is stored.
Data and program read switching can be performed,
This has the effect of simplifying the information reading process.
【図1】電子楽器の全体回路図である。FIG. 1 is an overall circuit diagram of an electronic musical instrument.
【図2】図1及び図4の各部におけるタイムチャート図
である。FIG. 2 is a time chart diagram in each part of FIGS. 1 and 4. FIG.
【図3】ROM20の記憶内容を示す図である。FIG. 3 is a diagram showing stored contents of a ROM 20.
【図4】キーアサイナ回路30の回路図である。FIG. 4 is a circuit diagram of a key assigner circuit 30.
【図5】CPU300のアドレスデータとROM20の
アドレスデータの対応関係を示す図である。5 is a diagram showing a correspondence relationship between address data of a CPU 300 and address data of a ROM 20. FIG.
【図6】アサインメントメモリ320の記憶内容を示す
図である。FIG. 6 is a diagram showing stored contents of an assignment memory 320.
【図7】周波数ナンバ累算器40の回路図である。7 is a circuit diagram of a frequency number accumulator 40. FIG.
【図8】波形データの読み出し状態を示す図である。FIG. 8 is a diagram showing a read state of waveform data.
【図9】周波数ナンバ累算値FA内容を示す図である。FIG. 9 is a diagram showing contents of a frequency number accumulated value FA.
【図10】波形データ伸長補間回路50の回路図であ
る。10 is a circuit diagram of a waveform data expansion interpolation circuit 50. FIG.
【図11】波形データの半波長分のサンプル値と読み出
しタイミングとの対応関係を示す図である。FIG. 11 is a diagram showing a correspondence relationship between a half-wavelength sample value of waveform data and a read timing.
【図12】波形データのサンプル値と補間値を示す図で
ある。FIG. 12 is a diagram showing sample values and interpolated values of waveform data.
【図13】波形データRDの内容を示す図である。FIG. 13 is a diagram showing the content of waveform data RD.
【図14】波形データの差分データRD0〜5を伸長し
た内容を示す図である。FIG. 14 is a diagram showing the contents of expanded difference data RD0 to RD5 of waveform data.
【図15】差分マンティッサデータRDから変換差分マ
ンティッサデータRGへの変換内容を示す図である。FIG. 15 is a diagram showing the contents of conversion from difference mantissa data RD to converted difference mantissa data RG.
【図16】周波数ナンバ累算値の小数部分の上位ビット
FA9〜11と差分データの掛率データIM0〜2と波
形データのサンプル値の補間内容との関係を示す図であ
る。FIG. 16 is a diagram showing the relationship between the upper bits FA9 to 11 of the decimal part of the accumulated frequency number, the multiplication data IM0 to IM2 of the difference data, and the interpolation contents of the sample values of the waveform data.
20…ROM、30…キーアサイナ回路、31…ROM
アドレス制御回路、32…アサインメントメモリ回路、
40…周波数ナンバ累算器、50…波形データ伸長補間
回路、60…エンベロープ発生器、70…乗算回路、8
0…シフト回路、90…系列累算回路、300…CP
U、320…アサインメントメモリ。20 ... ROM, 30 ... Key assigner circuit, 31 ... ROM
Address control circuit, 32 ... Assignment memory circuit,
40 ... Frequency number accumulator, 50 ... Waveform data expansion interpolation circuit, 60 ... Envelope generator, 70 ... Multiplication circuit, 8
0 ... Shift circuit, 90 ... Series accumulation circuit, 300 ... CP
U, 320 ... Assignment memory.
─────────────────────────────────────────────────────
─────────────────────────────────────────────────── ───
【手続補正書】[Procedure amendment]
【提出日】平成8年3月6日[Submission date] March 6, 1996
【手続補正1】[Procedure Amendment 1]
【補正対象書類名】明細書[Document name to be amended] Statement
【補正対象項目名】特許請求の範囲[Correction target item name] Claims
【補正方法】変更[Correction method] Change
【補正内容】[Correction contents]
【特許請求の範囲】[Claims]
【手続補正2】[Procedure amendment 2]
【補正対象書類名】明細書[Document name to be amended] Statement
【補正対象項目名】0081[Correction target item name] 0081
【補正方法】変更[Correction method] Change
【補正内容】[Correction contents]
【0081】[0081]
【12】上記請求項9、10又は11において、1回の
読出で読み出したデータ又はプログラムを分割して切り
換え出力する分割出力手段と、この分割したデータ又は
プログラムの切り換え出力を、上記両読出手段のいずれ
かのアドレスデータの最下位ビットの値によって行う切
換制御手段とを設けたことを特徴とする楽音情報処理装
置。 [13]記憶手段内に設けられた楽音に関する楽音波形
データとこの各楽音波形データの補間に関する補間デー
タを記憶するデータ記憶部と、同じくこの記憶手段内に
設けられ、上記楽音データを処理するプログラムとは異
なるプログラムであって、楽音を生成または制御するた
めの処理プログラムを記憶するプログラム記憶部と、上
記記憶手段から楽音波形データ及び補間データを読み出
すための読出アドレスデータを発生する第一の読出アド
レスデータ発生手段と、この第一の読出アドレスデータ
発生手段によって読み出された各楽音波形データにつ
き、この第一の読出アドレスデータ発生手段によって読
み出された補間データに基づいて楽音波形の補間を行う
補間手段と、この補間手段によって補間された楽音波形
データと、上記第一の読出アドレスデータ発生手段によ
って読み出された各楽音波形データとに基づいて楽音を
発生するを楽音発生手段と、上記第一の読出アドレスデ
ータ発生手段とは別の手段であって、上記記憶手段から
処理プログラムを読み出すための読出アドレスデータを
発生する第二の読出アドレスデータ発生手段と、この第
二の読出アドレスデータ発生手段によって読み出された
処理プログラムに基づいて処理を行う手段であって、上
記第一の処理手段とは独立した第二の処理手段と、これ
ら第一の読出アドレスデータ発生手段からの読出アドレ
スデータと第二の読出アドレスデータ発生手段からの読
出アドレスデータとを所定周期ごとに交互に切り換え
て、いずれか一方の読出アドレスデータだけを上記記憶
手段に供給するアドレス切換手段とを備えたことを特徴
とする楽音情報処理装置。 [14]上記第一の読出アドレスデータ発生手段によっ
て発生される読出アドレスデータは、データ記憶部に記
憶された楽音波形データの先頭アドレスからスタート
し、先頭アドレス以降の所定の区間を繰り返すことを特
徴とする請求項13記載の楽音情報処理装置。 [15]上記上記第一の読出アドレスデータ発生手段に
よって発生される読出アドレスデータは、1つの発音指
示につき、複数の楽音波形データを並行して読み出すこ
とを特徴とする請求項13または14記載の楽音情報処
理装置。12. The above-mentioned reading means for dividing and outputting the data or the program read by one reading by dividing and outputting the divided data or the program. And a switching control means for controlling the value of the least significant bit of any of the address data. [13] A data storage unit for storing musical tone waveform data relating to musical tones and interpolation data relating to the interpolation of each musical tone waveform data, which is provided in the storage unit, and a program which is also provided in this storage unit and processes the musical tone data. And a program storage unit for storing a processing program for generating or controlling a musical sound, and a first reading for generating read address data for reading the musical tone waveform data and the interpolation data from the storage means. With respect to the address data generating means and each tone waveform data read by the first read address data generating means, tone waveform interpolation is performed based on the interpolation data read by the first read address data generating means. The interpolation means to be performed, the musical tone waveform data interpolated by the interpolation means, and the first The tone generating means for generating a tone based on each tone waveform data read by the read address data generating means and the first read address data generating means are means different from the memory means. A second read address data generating means for generating read address data for reading the processing program, and means for performing processing based on the processing program read by the second read address data generating means. Second processing means independent of the first processing means, read address data from the first read address data generating means, and read address data from the second read address data generating means are provided at predetermined intervals. Address switching means for switching alternately and supplying only one of the read address data to the storage means. Tone information processing apparatus, characterized in that the. [14] The read address data generated by the first read address data generating means starts from the start address of the musical tone waveform data stored in the data storage unit and repeats a predetermined section after the start address. The musical sound information processing apparatus according to claim 13. [15] The read address data generated by the first read address data generating means reads a plurality of musical tone waveform data in parallel for one sounding instruction. Music information processing device.
Claims (3)
波形データとこの各楽音波形データの補間に関する補間
データを記憶するデータ記憶部と、 同じくこの記憶手段内に設けられ、上記楽音データを処
理するプログラムとは異なるプログラムであって、楽音
を生成または制御するための処理プログラムを記憶する
プログラム記憶部と、 上記記憶手段から楽音波形データ及び補間データを読み
出すための読出アドレスデータを発生する第一の読出ア
ドレスデータ発生手段と、 この第一の読出アドレスデータ発生手段によって読み出
された各楽音波形データにつき、この第一の読出アドレ
スデータ発生手段によって読み出された補間データに基
づいて楽音波形の補間を行う補間手段と、 この補間手段によって補間された楽音波形データと、上
記第一の読出アドレスデータ発生手段によって読み出さ
れた各楽音波形データとに基づいて楽音を発生するを楽
音発生手段と、 上記第一の読出アドレスデータ発生手段とは別の手段で
あって、上記記憶手段から処理プログラムを読み出すた
めの読出アドレスデータを発生する第二の読出アドレス
データ発生手段と、 この第二の読出アドレスデータ発生手段によって読み出
された処理プログラムに基づいて処理を行う手段であっ
て、上記第一の処理手段とは独立した第二の処理手段
と、 これら第一の読出アドレスデータ発生手段からの読出ア
ドレスデータと第二の読出アドレスデータ発生手段から
の読出アドレスデータとを所定周期ごとに交互に切り換
えて、いずれか一方の読出アドレスデータだけを上記記
憶手段に供給するアドレス切換手段とを備えたことを特
徴とする楽音情報処理装置。1. A data storage unit for storing musical tone waveform data relating to musical tones and interpolation data relating to the interpolation of each musical tone waveform data, which is provided in the storage unit, and also provided in the storage unit for processing the musical tone data. A program storage unit for storing a processing program for generating or controlling a musical sound, and a read address data for reading the musical tone waveform data and the interpolation data from the storage unit. Of the read address data generating means and the tone waveform data read by the first read address data generating means based on the interpolation data read by the first read address data generating means. Interpolation means for performing interpolation, musical tone waveform data interpolated by this interpolation means, A tone generating means for generating a tone based on each tone waveform data read by the first read address data generating means, and a means different from the first read address data generating means, Second read address data generating means for generating read address data for reading the processing program from the storage means, and means for performing processing based on the processing program read by the second read address data generating means. A second processing means independent of the first processing means, and read address data from the first read address data generating means and read address data from the second read address data generating means. An address switching unit that alternately switches to the storage means at every predetermined cycle and supplies only one of the read address data. Tone information processing apparatus characterized by comprising and.
よって発生される読出アドレスデータは、データ記憶部
に記憶された楽音波形データの先頭アドレスからスター
トし、先頭アドレス以降の所定の区間を繰り返すことを
特徴とする請求項1記載の楽音情報処理装置。2. The read address data generated by the first read address data generating means starts from the start address of the tone waveform data stored in the data storage section and repeats a predetermined section after the start address. The musical sound information processing apparatus according to claim 1, wherein
段によって発生される読出アドレスデータは、1つの発
音指示につき、複数の楽音波形データを並行して読み出
すことを特徴とする請求項1または2記載の楽音情報処
理装置。3. The read address data generated by the first read address data generating means reads a plurality of musical tone waveform data in parallel for one sounding instruction. The described musical sound information processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8044210A JP3067630B2 (en) | 1996-02-05 | 1996-02-05 | Music sound information processing apparatus and music sound information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8044210A JP3067630B2 (en) | 1996-02-05 | 1996-02-05 | Music sound information processing apparatus and music sound information processing method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63281099A Division JP2997470B2 (en) | 1988-11-07 | 1988-11-07 | Music information processing device |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19108699A Division JP3176901B2 (en) | 1999-07-05 | 1999-07-05 | Music sound information processing apparatus and music sound information processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0997085A true JPH0997085A (en) | 1997-04-08 |
JP3067630B2 JP3067630B2 (en) | 2000-07-17 |
Family
ID=12685200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8044210A Expired - Fee Related JP3067630B2 (en) | 1996-02-05 | 1996-02-05 | Music sound information processing apparatus and music sound information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3067630B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102365930B1 (en) | 2016-05-31 | 2022-02-22 | 다이니폰 인사츠 가부시키가이샤 | Battery packaging material, manufacturing method thereof, battery, and polyester film |
-
1996
- 1996-02-05 JP JP8044210A patent/JP3067630B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3067630B2 (en) | 2000-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5525748A (en) | Tone data recording and reproducing device | |
US4785702A (en) | Tone signal generation device | |
JP2997470B2 (en) | Music information processing device | |
JPH03180896A (en) | Data generating device of electronic musical instrument | |
JPH0997085A (en) | Musical sound information processor | |
JP3447715B2 (en) | Musical sound generation device and musical sound generation method | |
JP3081530B2 (en) | Electronic musical instrument | |
JP3176901B2 (en) | Music sound information processing apparatus and music sound information processing method | |
JP3344988B2 (en) | Music sound generation apparatus and music sound generation method | |
JP2950461B2 (en) | Tone generator | |
JP2565555B2 (en) | Sequence accumulator for electronic musical instruments | |
JP2798913B2 (en) | Musical tone waveform generating apparatus and musical tone waveform generating method | |
JPH0331273B2 (en) | ||
JP2705042B2 (en) | Envelope waveform generation method | |
JP2790160B2 (en) | Waveform generation device and waveform storage device | |
JP2727931B2 (en) | Waveform memory sound source | |
JPH0769699B2 (en) | Waveform generation method | |
JPH0125079B2 (en) | ||
JPH0769700B2 (en) | Waveform generation method | |
JP2944069B2 (en) | Music signal generator | |
JPH03204695A (en) | Musical sound synthesizing device | |
JP2768204B2 (en) | Music data recording / reproducing device | |
JP2584972B2 (en) | Electronic musical instrument | |
JPH08211876A (en) | Data generating device for electronic musical instrument | |
JPH0230030B2 (en) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |