JPH0631989B2 - 電子楽器の波形発生装置 - Google Patents
電子楽器の波形発生装置Info
- Publication number
- JPH0631989B2 JPH0631989B2 JP60256142A JP25614285A JPH0631989B2 JP H0631989 B2 JPH0631989 B2 JP H0631989B2 JP 60256142 A JP60256142 A JP 60256142A JP 25614285 A JP25614285 A JP 25614285A JP H0631989 B2 JPH0631989 B2 JP H0631989B2
- Authority
- JP
- Japan
- Prior art keywords
- interpolation
- value
- waveform
- memory
- address
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H7/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/08—Instruments in which the tones are synthesised from a data store, e.g. computer organs by calculating functions or polynomial approximations to evaluate amplitudes at successive sample points of a tone waveform
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/131—Mathematical functions for musical analysis, processing, synthesis or composition
- G10H2250/261—Window, i.e. apodization function or tapering function amounting to the selection and appropriate weighting of a group of samples in a digital signal within some chosen time interval, outside of which it is zero valued
- G10H2250/281—Hamming window
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/541—Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
- G10H2250/545—Aliasing, i.e. preventing, eliminating or deliberately using aliasing noise, distortions or artifacts in sampled or synthesised waveforms, e.g. by band limiting, oversampling or undersampling, respectively
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/541—Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
- G10H2250/621—Waveform interpolation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/541—Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
- G10H2250/631—Waveform resampling, i.e. sample rate conversion or sample depth conversion
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- General Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、メモリに記憶された波形の標本値を読み出
して、楽音を発生する電子楽器の波形発生装置に関し、
特にメモリに波形の標本値ではなく、各標本値の差分を
記憶したものである。
して、楽音を発生する電子楽器の波形発生装置に関し、
特にメモリに波形の標本値ではなく、各標本値の差分を
記憶したものである。
予め楽音を所定の標本化周波数で標本化し、得られた標
本値をメモリに記憶し、この標本値を読み出し、楽音を
発生する技術は従来公知である。
本値をメモリに記憶し、この標本値を読み出し、楽音を
発生する技術は従来公知である。
このような技術において、発生する楽音のピツチ(周波
数)を制御する方式には、いわゆる固定サンプリング方
式がある。これは、読み出す速度を一定にし、各標本値
を適当な個数づつ間引いて読み出すもので、この間引く
個数を変化させることによつてピツチを変えるものであ
る。
数)を制御する方式には、いわゆる固定サンプリング方
式がある。これは、読み出す速度を一定にし、各標本値
を適当な個数づつ間引いて読み出すもので、この間引く
個数を変化させることによつてピツチを変えるものであ
る。
この固定サンプリング方式によつて楽器において要求
されるわずかに異なる音高で発音させるには、非常に多
くの標本値が必要で、メモリの容量が大きくなる。そこ
で、メモリを節約するため、標本値の数を減らし、標本
点間の振幅が必要な場合には、その振幅を補間によつて
得るものが提案されている(特開昭53−84708号参
照)。また補間法としては、多項式補間、ラグランジユ
補間及びフイルタによる補間が知られている(Digital
Filters 1977 Prentice Hall Inc.参照)。この発明
は、このうちのフイルタによる補間法を応用したもので
ある。このフイルタによる補間法の原理については、こ
の出願の目的でないので、説明を省略する。この原理に
基づくと、第5図に示すような波形が振幅値Y0、Y1、Y2
・・・という値をとり、補間フイルタとして第4図に示
すようなフイルタのインパルスレスポンス波形を上記波
形のサンプリング周波数より高い(この出願では4倍)
周波数でサンプリングした振幅値(f0、f1、f2・・・)
で記憶しておけば、未知の時刻における波形の振幅値を
畳み込み演算によつて求めることができる。
されるわずかに異なる音高で発音させるには、非常に多
くの標本値が必要で、メモリの容量が大きくなる。そこ
で、メモリを節約するため、標本値の数を減らし、標本
点間の振幅が必要な場合には、その振幅を補間によつて
得るものが提案されている(特開昭53−84708号参
照)。また補間法としては、多項式補間、ラグランジユ
補間及びフイルタによる補間が知られている(Digital
Filters 1977 Prentice Hall Inc.参照)。この発明
は、このうちのフイルタによる補間法を応用したもので
ある。このフイルタによる補間法の原理については、こ
の出願の目的でないので、説明を省略する。この原理に
基づくと、第5図に示すような波形が振幅値Y0、Y1、Y2
・・・という値をとり、補間フイルタとして第4図に示
すようなフイルタのインパルスレスポンス波形を上記波
形のサンプリング周波数より高い(この出願では4倍)
周波数でサンプリングした振幅値(f0、f1、f2・・・)
で記憶しておけば、未知の時刻における波形の振幅値を
畳み込み演算によつて求めることができる。
例えば、第5図の振幅P4を補間しようとする場合、P4は P4=Y0・f1+Y1・f5+Y2・f9+Y3・f13+Y4・f17+Y5・
f21+Y6・f25+Y7・f29・・・・・(1) によつて求められる。同様に、振幅P5は、 P5=Y1・f2+Y2・f6+Y3・f10+Y4・f14+Y5・f18+Y6
・f22+Y7・f26+Y8・f30 によつて求められ、振幅P6は、 P6=Y2・f3+Y3・f7+Y4・f11+Y5・f15+Y6・f19+Y7
・f23+Y8・f27+Y9・f31 によつて求められる。各標本点間の他の点の振幅も同様
にして、補間できる。
f21+Y6・f25+Y7・f29・・・・・(1) によつて求められる。同様に、振幅P5は、 P5=Y1・f2+Y2・f6+Y3・f10+Y4・f14+Y5・f18+Y6
・f22+Y7・f26+Y8・f30 によつて求められ、振幅P6は、 P6=Y2・f3+Y3・f7+Y4・f11+Y5・f15+Y6・f19+Y7
・f23+Y8・f27+Y9・f31 によつて求められる。各標本点間の他の点の振幅も同様
にして、補間できる。
なお、ローパスフイルタのインパルスレスポンスの各標
本値は、ここでは説明を簡単にするため第5図に示す波
形の標本化周波数のたかだか4倍の標本化周波数で標本
化したものとしたのであるので、各標本点間は3ケ所し
か補間できないが、実際には標本化周波数をより高くす
ることによつて、より高精度の補間を行なう。また、ロ
ーパスフイルタの各標本値は、時刻が−∞から+∞まで
の無限のインパルスレスポンスを標本化して得るのが理
想であるが、第4図のように有限区間にハミング窓等の
適当なウインドウをかけて限定したものを標本化して得
ても充分に実用になる。
本値は、ここでは説明を簡単にするため第5図に示す波
形の標本化周波数のたかだか4倍の標本化周波数で標本
化したものとしたのであるので、各標本点間は3ケ所し
か補間できないが、実際には標本化周波数をより高くす
ることによつて、より高精度の補間を行なう。また、ロ
ーパスフイルタの各標本値は、時刻が−∞から+∞まで
の無限のインパルスレスポンスを標本化して得るのが理
想であるが、第4図のように有限区間にハミング窓等の
適当なウインドウをかけて限定したものを標本化して得
ても充分に実用になる。
第9図は上記の原理に基づいて補間するための装置のブ
ロツク図で、同図において1は波形メモリで、アドレス
「000」、「001」、「010」・・・・・(2進法、以下
2進法は「 」を付して示す。)に第5図に示す各標本
値Y0、Y1、Y2・・・・・がそれぞれ記憶されている。
ロツク図で、同図において1は波形メモリで、アドレス
「000」、「001」、「010」・・・・・(2進法、以下
2進法は「 」を付して示す。)に第5図に示す各標本
値Y0、Y1、Y2・・・・・がそれぞれ記憶されている。
2は補間テーブルで、第9図に示すようにアドレス「00
00」から「1111」までに各標本値t0乃至t15を記憶して
いる。補間テーブル2は、本来第4図に示したf0乃至f
32を記憶するものであるが、f16を中心にして左右対称
であるので、f0乃至f16だけを各アドレス「0000」から
「10000」まで記憶させ、f17からf32が必要な場合に
は、アドレスを折り返すことが考えられる。しかし、ア
ドレスを折り返すには、アドレスの2の補数をとればよ
いが、それにはアドレスの各ビツトの逆数をとり、これ
に1を加えなければならない。そこで、第9図に示すよ
うに各標本値f0乃至f16から半ビツトだけずらした各標
本値t0乃至t15を記憶している。この場合、アドレスを
折り返すには、アドレスの各ビツトを反転させるだけで
よい。なお、このように半ビツトずらせると、本来必要
な標本値、例えばf0、f4、f8・・・・・より半ビツトず
れたt0、t4、t8・・・・・が読み出されるが、ずれは常
に一定であるので、補間された振幅が歪むことはない。
00」から「1111」までに各標本値t0乃至t15を記憶して
いる。補間テーブル2は、本来第4図に示したf0乃至f
32を記憶するものであるが、f16を中心にして左右対称
であるので、f0乃至f16だけを各アドレス「0000」から
「10000」まで記憶させ、f17からf32が必要な場合に
は、アドレスを折り返すことが考えられる。しかし、ア
ドレスを折り返すには、アドレスの2の補数をとればよ
いが、それにはアドレスの各ビツトの逆数をとり、これ
に1を加えなければならない。そこで、第9図に示すよ
うに各標本値f0乃至f16から半ビツトだけずらした各標
本値t0乃至t15を記憶している。この場合、アドレスを
折り返すには、アドレスの各ビツトを反転させるだけで
よい。なお、このように半ビツトずらせると、本来必要
な標本値、例えばf0、f4、f8・・・・・より半ビツトず
れたt0、t4、t8・・・・・が読み出されるが、ずれは常
に一定であるので、補間された振幅が歪むことはない。
4はアドレス発生器で、3ビツトの整数部と2ビツトの
少数部とからなるアドレスを発生する。
少数部とからなるアドレスを発生する。
5はカウンタで、「000」から「111」まで順にカウント
し、その各カウント値とアドレス発生器4の整数部とが
加算器10で加算され、波形メモリ1に供給されて、各波
形の標本値Y0、Y1・・・・・等を読み出すのに用いられ
る。また、各カウント値とアドレス発生器4の小数部と
は反転器6を介して補間テーブル2に供給され、インパ
ルスレスポンスの各標本値t0、t1・・・・・等を読み出
すのに用いられる。反転器6は、カウンタ5のMSBが
立つていないとき、小数部を反転させて、カウンタ5の
MSB以外の出力をそのまま補間テーブル2に供給し、
MSBが立つと、小数部をそのまま、カウンタ5のMS
B以外のビツトを反転させて、補間テーブル2に供給す
る。反転器6は例えば4台のEX−ORを用いることに
よつて構成できる。
し、その各カウント値とアドレス発生器4の整数部とが
加算器10で加算され、波形メモリ1に供給されて、各波
形の標本値Y0、Y1・・・・・等を読み出すのに用いられ
る。また、各カウント値とアドレス発生器4の小数部と
は反転器6を介して補間テーブル2に供給され、インパ
ルスレスポンスの各標本値t0、t1・・・・・等を読み出
すのに用いられる。反転器6は、カウンタ5のMSBが
立つていないとき、小数部を反転させて、カウンタ5の
MSB以外の出力をそのまま補間テーブル2に供給し、
MSBが立つと、小数部をそのまま、カウンタ5のMS
B以外のビツトを反転させて、補間テーブル2に供給す
る。反転器6は例えば4台のEX−ORを用いることに
よつて構成できる。
波形メモリ1、補間テーブル2から読み出された標本値
は乗算器7で乗算され、その乗算値は加算レジスタ8で
累算される。
は乗算器7で乗算され、その乗算値は加算レジスタ8で
累算される。
次に、この装置の動作を説明する。今、アドレス発生器
4は、「00000」、「00011」、「00110」、「01001」と
いうように増分を「00011」として順にアドレスを発生
しており、今アドレスが「00011」であるとする。カウ
ンタ5はまず「000」を出力し、アドレス発生器4のア
ドレスの整数部「000」と加算され、波形メモリ1から
標本値Y0が読み出される。カウンタ5のMSBが「0」
であるので、アドレスの小数部「11」は反転器6で反転
され、補間テーブル2のLSBに加えられ、カウンタ5
のMSB以外のビツト「00」は、そのまま補間テーブル
2のMSBに加えられる。これによつて補間テーブル2
からt0が読み出される。t0とY0とは乗算器7で乗算さ
れ、加算レジスタ8に供給される。
4は、「00000」、「00011」、「00110」、「01001」と
いうように増分を「00011」として順にアドレスを発生
しており、今アドレスが「00011」であるとする。カウ
ンタ5はまず「000」を出力し、アドレス発生器4のア
ドレスの整数部「000」と加算され、波形メモリ1から
標本値Y0が読み出される。カウンタ5のMSBが「0」
であるので、アドレスの小数部「11」は反転器6で反転
され、補間テーブル2のLSBに加えられ、カウンタ5
のMSB以外のビツト「00」は、そのまま補間テーブル
2のMSBに加えられる。これによつて補間テーブル2
からt0が読み出される。t0とY0とは乗算器7で乗算さ
れ、加算レジスタ8に供給される。
カウンタ5が1増加すると、波形メモリ1には整数「00
1」が供給され、標本値Y1が読み出され、補間テーブル
にはアドレス「0100」が供給され、t4が読み出され、t4
・Y1が乗算器7でなされ、その演算値は加算レジスタ8
に加算される。
1」が供給され、標本値Y1が読み出され、補間テーブル
にはアドレス「0100」が供給され、t4が読み出され、t4
・Y1が乗算器7でなされ、その演算値は加算レジスタ8
に加算される。
カウンタ5が1増加するごとに、カウンタ5のMSBが
立つまで同様に動作し、Y2、Y3、t8、t12がそれぞれ読
み出され、Y2・t8、Y3・t12の演算がなされ、これら乗
算値は加算レジスタ8に加算される。
立つまで同様に動作し、Y2、Y3、t8、t12がそれぞれ読
み出され、Y2・t8、Y3・t12の演算がなされ、これら乗
算値は加算レジスタ8に加算される。
カウンタ5の出力が「100」になると、波形メモリ1か
らは上述したのと同様にY4が読み出されるが、MSBが
立つているので、アドレスの小数部「11」は、そのまま
補間テーブル2のLSBに供給され、カウンタのMSB
以外のビツト「00」は反転され、補間テーブル2のMS
Bに供給される。その結果、補間テーブル2のアドレス
「1111」からt15が出力される。以下、同様にして、補
間テーブル2からはカウンタ5が「111」になるまでにt
11、t7、t3が読み出され、波形メモリ1からはY5、Y6、
Y7が読み出され、Y5・t11、Y6・t7、Y7・t3の乗算がな
され、その各乗算値が加算レジスタ8に加算される。そ
の結果、加算レジスタ8の値は、 Y0・t0+Y1・t4+Y2・t8+Y3・t12+Y4・t15+Y5・t11
+Y6・t7+Y7・t3 となり、これによつて第5図に示す振幅P4が補間され
た。以下、同様にアドレス発生器4のアドレスが変わる
ごとに行なわれ、P5、P6・・・・・が補間される。
らは上述したのと同様にY4が読み出されるが、MSBが
立つているので、アドレスの小数部「11」は、そのまま
補間テーブル2のLSBに供給され、カウンタのMSB
以外のビツト「00」は反転され、補間テーブル2のMS
Bに供給される。その結果、補間テーブル2のアドレス
「1111」からt15が出力される。以下、同様にして、補
間テーブル2からはカウンタ5が「111」になるまでにt
11、t7、t3が読み出され、波形メモリ1からはY5、Y6、
Y7が読み出され、Y5・t11、Y6・t7、Y7・t3の乗算がな
され、その各乗算値が加算レジスタ8に加算される。そ
の結果、加算レジスタ8の値は、 Y0・t0+Y1・t4+Y2・t8+Y3・t12+Y4・t15+Y5・t11
+Y6・t7+Y7・t3 となり、これによつて第5図に示す振幅P4が補間され
た。以下、同様にアドレス発生器4のアドレスが変わる
ごとに行なわれ、P5、P6・・・・・が補間される。
このような従来の技術では、波形メモリ1に記憶されて
いるのは、波形の標本値Y0、Y1、Y2・・・・・である。
メモリの容量を節約するには、波形の標本値そのものを
記憶するのではなく、各標本値間の差分を記憶させれば
よい。しかし、差分を記憶した場合、差分から元の標本
値を復元した後に、インパルスレスポンスの各標本値と
畳み込み演算を行なわなければならず、回路構成が複雑
になつていた。
いるのは、波形の標本値Y0、Y1、Y2・・・・・である。
メモリの容量を節約するには、波形の標本値そのものを
記憶するのではなく、各標本値間の差分を記憶させれば
よい。しかし、差分を記憶した場合、差分から元の標本
値を復元した後に、インパルスレスポンスの各標本値と
畳み込み演算を行なわなければならず、回路構成が複雑
になつていた。
すなわち、振幅P4は(1)式により求まるが、メモリを節
約するために、第5図に示す差分d0、d1・・・・・を記
憶させていると、P4は、 P4=Y0・f1+(Y0+d1)f5+(Y0+d1+d2)f9 +(Y0+d1+d2+d3)f13 +(Y0+d1+d2+d3+d4)f19 +(Y0+d1+d2+d3+d4+d5)f21 +(Y0+d1+d2+d3+d4+d5+d6)f25 +(Y0+d1+d2+d3+d4+d5+d6+d7)f29 ・・・・・(2) で求められるが、各差分を累算して各標本値を算出しな
ければならず、回路構成が複雑になる。
約するために、第5図に示す差分d0、d1・・・・・を記
憶させていると、P4は、 P4=Y0・f1+(Y0+d1)f5+(Y0+d1+d2)f9 +(Y0+d1+d2+d3)f13 +(Y0+d1+d2+d3+d4)f19 +(Y0+d1+d2+d3+d4+d5)f21 +(Y0+d1+d2+d3+d4+d5+d6)f25 +(Y0+d1+d2+d3+d4+d5+d6+d7)f29 ・・・・・(2) で求められるが、各差分を累算して各標本値を算出しな
ければならず、回路構成が複雑になる。
そこで、この発明は次のようにして回路構成が複雑にな
るという問題点を解決している。
るという問題点を解決している。
すなわち、(2)式を変形すると、 P4=(f1+f5+f9+f13+f17+f21+f25+f29)Y0 +(f5+f9+f13+f17+f21+f25+f29)d1 +(f9+f13+f17+f21+f25+f29)d2 +(f13+f17+f21+f25+f29)d3 +(f17+f21+f25+f29)d4 +(f21+f25+f29)d5 +(f25+f29)d6 +f29d7・・・・・(3) となる。ここで、 (f1+f5・・・+f29)は1であるので、(3)式は、 P4=Y0+g5d1+g9d2+g13d3+g17d4+g21d5+g25d6+g
29d7・・・・・(4) となる。ただし、g5乃至g27は、 g5=f5+f9+f13+f17+f21+f25+f29 g9=f9+f13+f17+f21+f25+f29 g13=f13+f17+f21+f25+f29 g17=f17+f21+f25+f29 g21=f21+f25+f29 g25=f25+f29 g29=f29 である。従つて、g5、g9・・・g29を補間メモリに記憶
し、d0、d1、d2・・・・・を波形メモリに記憶し、これ
らを読み出して、g5・d1、g9・d2・・・g29・d7を乗算
して、これら乗算値とY0とを累算すればP4の値が得られ
る。この乗算と累算とを行なうための回路と、各差分値
を累算して標本値を求めてからたたみ込み演算を行なう
ための回路とでは、どちらが簡単であるかは明らかであ
る。
29d7・・・・・(4) となる。ただし、g5乃至g27は、 g5=f5+f9+f13+f17+f21+f25+f29 g9=f9+f13+f17+f21+f25+f29 g13=f13+f17+f21+f25+f29 g17=f17+f21+f25+f29 g21=f21+f25+f29 g25=f25+f29 g29=f29 である。従つて、g5、g9・・・g29を補間メモリに記憶
し、d0、d1、d2・・・・・を波形メモリに記憶し、これ
らを読み出して、g5・d1、g9・d2・・・g29・d7を乗算
して、これら乗算値とY0とを累算すればP4の値が得られ
る。この乗算と累算とを行なうための回路と、各差分値
を累算して標本値を求めてからたたみ込み演算を行なう
ための回路とでは、どちらが簡単であるかは明らかであ
る。
上記の説明は点P4におけるたたみ込み演算について示し
たものであり、点P4は第5図に示すように各標本値及び
補間しようとする振幅に順に「00000」からアドレスを
付し、その上位3ビツトを整数部、下位2ビツトを小数
部とすると、そのアドレスの小数部が「11」の場合であ
る。アドレスの小数部が「11」である他の点(P8・・
・)もg5、g9・・・・g29を用いて補間できる。同様に
アドレスの小数部が「01」である点(P2、P6・・・)は
g7(f7+f11・・・+f31)、g11(f11+・・・+
f31)、g15(f15+・・・+f31)、g19(f19+・・・+
f31)、g23(f23+・・・+f31)、g27(f27+・・・+
f31)、g31(f31)を用いれば補間できる。また小数部
が「10」である点(P1、P5・・・)はg6(f6+f10・・
・+f30)、g10(f10+f14・・・+f30)、g14(f14+f
18・・・+f30)、g18(f18+f22・・・+f30)、g
22(f22+f26・・・+f30)、g26(f26+f30)、g30(f
30)を用いれば補間できる。これらg5乃至g32の値(以
下、これらをインパルスレスポンスの積分値と称す
る。)を第3図に実線で示す。これらg5乃至g32の値を
用いれば各標本値間を4等分した場合の各補間点の振幅
を補間できるので、これらg5乃至g32を補間メモリに記
憶する。
たものであり、点P4は第5図に示すように各標本値及び
補間しようとする振幅に順に「00000」からアドレスを
付し、その上位3ビツトを整数部、下位2ビツトを小数
部とすると、そのアドレスの小数部が「11」の場合であ
る。アドレスの小数部が「11」である他の点(P8・・
・)もg5、g9・・・・g29を用いて補間できる。同様に
アドレスの小数部が「01」である点(P2、P6・・・)は
g7(f7+f11・・・+f31)、g11(f11+・・・+
f31)、g15(f15+・・・+f31)、g19(f19+・・・+
f31)、g23(f23+・・・+f31)、g27(f27+・・・+
f31)、g31(f31)を用いれば補間できる。また小数部
が「10」である点(P1、P5・・・)はg6(f6+f10・・
・+f30)、g10(f10+f14・・・+f30)、g14(f14+f
18・・・+f30)、g18(f18+f22・・・+f30)、g
22(f22+f26・・・+f30)、g26(f26+f30)、g30(f
30)を用いれば補間できる。これらg5乃至g32の値(以
下、これらをインパルスレスポンスの積分値と称す
る。)を第3図に実線で示す。これらg5乃至g32の値を
用いれば各標本値間を4等分した場合の各補間点の振幅
を補間できるので、これらg5乃至g32を補間メモリに記
憶する。
なお、説明を容易にするため、標本点間を4等分した補
間点について述べたが、発生楽音の音質とピツチの正確
さを得るには、標本点間をさらに多くの標本点(例えば
64)で補間する必要がある。
間点について述べたが、発生楽音の音質とピツチの正確
さを得るには、標本点間をさらに多くの標本点(例えば
64)で補間する必要がある。
〔実施例〕 第1図に示すように、この実施例は、波形メモリ12を有
している。この波形メモリ12は第5図に示す各標本値の
差分d0、d1、d2・・・・・をアドレス「000」、「00
1」、「010」・・・・・にそれぞれ記憶している。これ
らアドレスは、第5図のアドレスの整数部に相当するも
のである。
している。この波形メモリ12は第5図に示す各標本値の
差分d0、d1、d2・・・・・をアドレス「000」、「00
1」、「010」・・・・・にそれぞれ記憶している。これ
らアドレスは、第5図のアドレスの整数部に相当するも
のである。
さらに、この実施例は3つの補間メモリ14a、14b、14
cを有している。補間メモリ14aには、補間のみを行な
うためのローパスフイルタ(例えば波形の標本化周波数
が30KHzである場合には、第6図に示すようにカツトオ
フ周波数が15KHzのもの)の第4図に示す各インパルス
レスポンスの積分値(第3図に実線で示したもの)のう
ちg5乃至g32がアドレス「00100」、「00101」・・・・
・「11111」に順に記憶されている。補間メモリ14bに
は、カツトオフ周波数を第6図のローパスフイルタより
低く選択した、例えば第7図(b)に示すような10KHzのも
ののインパルスレスポンスの積分値(第3図に点線で示
したもの)のうちg5乃至g32が、補間メモリ14aと同様
に記憶されている。なお、第7図(a)は同図(b)に示すロ
ーパスフイルタのインパルスレスポンスで、第4図のイ
ンパルスレスポンスと同様に適当なウインドーがかけて
ある。補間メモリ14cには、カツトオフ周波数は15KHz
であるが、少し高域を押えた特性のものの(図示せず)
インパルスレスポンス(これも適当なウインドーがかけ
てある。)の積分値のうちg5乃至g32(図示せず)が補
間メモリ14aと同様に記憶されている。各補間メモリ14
a乃至14cのアドレス「00000」乃至「00011」までには
何も記憶させてない。各インパルスレスポンスの積分値
g1乃至g4は(3)式の第1項に相当して1であるので記憶
させていない。ただし、第7図及び第9図のローパスフ
イルタでは厳密には1にならないが、この程度の誤差は
音質等に影響を与えない。各補間メモリ14a乃至14cの
アドレスの上位3ビツトを整数部、下位2ビツトを小数
部と称する。
cを有している。補間メモリ14aには、補間のみを行な
うためのローパスフイルタ(例えば波形の標本化周波数
が30KHzである場合には、第6図に示すようにカツトオ
フ周波数が15KHzのもの)の第4図に示す各インパルス
レスポンスの積分値(第3図に実線で示したもの)のう
ちg5乃至g32がアドレス「00100」、「00101」・・・・
・「11111」に順に記憶されている。補間メモリ14bに
は、カツトオフ周波数を第6図のローパスフイルタより
低く選択した、例えば第7図(b)に示すような10KHzのも
ののインパルスレスポンスの積分値(第3図に点線で示
したもの)のうちg5乃至g32が、補間メモリ14aと同様
に記憶されている。なお、第7図(a)は同図(b)に示すロ
ーパスフイルタのインパルスレスポンスで、第4図のイ
ンパルスレスポンスと同様に適当なウインドーがかけて
ある。補間メモリ14cには、カツトオフ周波数は15KHz
であるが、少し高域を押えた特性のものの(図示せず)
インパルスレスポンス(これも適当なウインドーがかけ
てある。)の積分値のうちg5乃至g32(図示せず)が補
間メモリ14aと同様に記憶されている。各補間メモリ14
a乃至14cのアドレス「00000」乃至「00011」までには
何も記憶させてない。各インパルスレスポンスの積分値
g1乃至g4は(3)式の第1項に相当して1であるので記憶
させていない。ただし、第7図及び第9図のローパスフ
イルタでは厳密には1にならないが、この程度の誤差は
音質等に影響を与えない。各補間メモリ14a乃至14cの
アドレスの上位3ビツトを整数部、下位2ビツトを小数
部と称する。
これら補間メモリ14a乃至14cのうち1つが、制御回路
16によつて選択される。制御回路16は、例えば鍵盤(図
示せず)の打鍵強度が大きい場合には、補間メモリ14a
を、打鍵強度が中位の場合には、補間メモリ14bを、打
鍵強度が弱い場合には、補間メモリ14cを選択するよう
に構成されている。なお、このような選択するには打鍵
強度を検出する装置が必要であるが、これは公知である
ので、詳細な説明は省略する。
16によつて選択される。制御回路16は、例えば鍵盤(図
示せず)の打鍵強度が大きい場合には、補間メモリ14a
を、打鍵強度が中位の場合には、補間メモリ14bを、打
鍵強度が弱い場合には、補間メモリ14cを選択するよう
に構成されている。なお、このような選択するには打鍵
強度を検出する装置が必要であるが、これは公知である
ので、詳細な説明は省略する。
波形メモリ12から差分値を読み出すためのアドレスは、
カウンタ18、20のカウント値を加算器22で加算して得
る。カウンタ20は波形メモリを読み出すアドレスを指示
するもので、波形がその立上りから減衰までを記憶する
場合には数十ビツトになると考えられる。ここでは説明
を簡単にするため3ビツトとする。読み出された各差分
値は、累算器24、乗算器26に供給される。
カウンタ18、20のカウント値を加算器22で加算して得
る。カウンタ20は波形メモリを読み出すアドレスを指示
するもので、波形がその立上りから減衰までを記憶する
場合には数十ビツトになると考えられる。ここでは説明
を簡単にするため3ビツトとする。読み出された各差分
値は、累算器24、乗算器26に供給される。
また、補間メモリ14a乃至14cのうち制御回路16によつ
て選択されたものからインパルスレスポンスの積分値を
読み出すためのアドレスの小数部は、アドレス累算器28
の出力を反転器30で反転したもので、同アドレスの整数
部はカウンタ18の出力で得る。
て選択されたものからインパルスレスポンスの積分値を
読み出すためのアドレスの小数部は、アドレス累算器28
の出力を反転器30で反転したもので、同アドレスの整数
部はカウンタ18の出力で得る。
32は増分レジスタで、これは整数部32aと小数部32bと
からなり、周波数情報メモリ34から増分値が供給され
る。周波数情報メモリ34は、種々のピツチに対応する種
々の増分値を記憶している。周波数情報メモリ34がどの
増分値を増分レジスタ32に供給するかは鍵盤回路36から
指示される。鍵盤回路36は、各ピツチに対応した鍵を有
する鍵盤部のどれかの鍵が押鍵されると、その鍵に対応
する情報を出力し、これに応じて周波数情報メモリ34が
押鍵された鍵のピツチに対応する増分値を出力する。例
えば、第5図の波形のピツチが800Hzで、再生しようと
する波形のピツチを600Hzとすると、第5図の振幅P0乃
至P8が必要であり、これらのアドレスは「00011」、「0
0110」、「01001」・・・・・で、これら各アドレスの
増分は「00011」である。この増分の下3ビツトが増分
レジスタ32に記載されている。すなわち、増分レジスタ
32の小数部32bには「11」が記憶され、整数部32aには
「0」が記憶されている。なお、整数部32aが1ビツト
だけであるのは、再生しようとする波形のピツチを記憶
している波形のピツチ、ここでは800Hzの2倍、すなわ
ち1600Hz以上にすると、音質が極端に変わるので、2倍
以上にすることはないからである。
からなり、周波数情報メモリ34から増分値が供給され
る。周波数情報メモリ34は、種々のピツチに対応する種
々の増分値を記憶している。周波数情報メモリ34がどの
増分値を増分レジスタ32に供給するかは鍵盤回路36から
指示される。鍵盤回路36は、各ピツチに対応した鍵を有
する鍵盤部のどれかの鍵が押鍵されると、その鍵に対応
する情報を出力し、これに応じて周波数情報メモリ34が
押鍵された鍵のピツチに対応する増分値を出力する。例
えば、第5図の波形のピツチが800Hzで、再生しようと
する波形のピツチを600Hzとすると、第5図の振幅P0乃
至P8が必要であり、これらのアドレスは「00011」、「0
0110」、「01001」・・・・・で、これら各アドレスの
増分は「00011」である。この増分の下3ビツトが増分
レジスタ32に記載されている。すなわち、増分レジスタ
32の小数部32bには「11」が記憶され、整数部32aには
「0」が記憶されている。なお、整数部32aが1ビツト
だけであるのは、再生しようとする波形のピツチを記憶
している波形のピツチ、ここでは800Hzの2倍、すなわ
ち1600Hz以上にすると、音質が極端に変わるので、2倍
以上にすることはないからである。
この実施例は、他にマルチプレクサ38を有している。こ
のマルチプレクサ38は、増分レジスタ32の整数部が
「1」のとき、あるいはアドレス累算器28からキヤリー
信号が入力されたときのいずれかのとき、第2図(b)に
示すように後述するTS信号に遅れて発生するTM1信
号をカウンタ20に送出し、また増分レジスタ32の整数部
32aが「1」でかつアドレス累算器28からキヤリー信号
が入力されたとき、第2図(c)に示すように1発目がT
M1信号と同期し、これに続いて2発目が発生するTM
2信号をカウンタ20に送出する。このマルチプレクサ38
はTTL74151の入力0から7のうち入力1、2にTM
1を入力3にTM2を供給し、3ビツトA、B、Cから
なるDATASELECTのCを「0」に、Aに整数部
32aを、Bにキヤリー信号を接続して構成できる。
のマルチプレクサ38は、増分レジスタ32の整数部が
「1」のとき、あるいはアドレス累算器28からキヤリー
信号が入力されたときのいずれかのとき、第2図(b)に
示すように後述するTS信号に遅れて発生するTM1信
号をカウンタ20に送出し、また増分レジスタ32の整数部
32aが「1」でかつアドレス累算器28からキヤリー信号
が入力されたとき、第2図(c)に示すように1発目がT
M1信号と同期し、これに続いて2発目が発生するTM
2信号をカウンタ20に送出する。このマルチプレクサ38
はTTL74151の入力0から7のうち入力1、2にTM
1を入力3にTM2を供給し、3ビツトA、B、Cから
なるDATASELECTのCを「0」に、Aに整数部
32aを、Bにキヤリー信号を接続して構成できる。
アドレス累算器28は、第2図(a)に示す標本化周波数と
同じ周波数のTS信号が入力されるごとに、増分レジス
タ32の小数部32bの記憶値を累算し、その累算値を送出
する。累算器24は、マルチプレクサ38からTM1信号ま
たはTM2信号が供給されたとき、そのときの波形メモ
リ12から読み出された差分を累算し、第2図(d)に示す
ようにTM2信号より遅れて発生する第1クロツクパル
スCK1が入力されたとき、そのときの累算値を送出す
る。これは、式(4)におけるY0を算出するためのもの
である。第2図(e)に示すように第1のクロツクパルス
CK1に続いて発生する7発の第2クロツクパルスCK
2をカウンタ18がカウントする。スリーステートバツフ
ア52を介して乗算器26の乗算値が累算器50に供給され、
累算器50には累算器24の累算値も供給されている。この
累算器50は、第1及び第2のクロツクパルスCK1、C
K2がオア回路54を介して供給されるごとに累算し、T
S信号が入力されると、累算値を出力すると共に、リセ
ツトする。また、カウンタ18もTS信号によつてリセツ
トされる。なお、バツフア52には、第1クロツクパルス
CK1がインバータ56を介して供給されており、インバ
ータ56にクロツクパルスCK1が供給されたとき、乗算
器26の乗算値が累算器50に送出されることを阻止する。
すなわち、累算器24が累算値を累算器50に送出している
とき、乗算器26の乗算値は、累算器50には送出されな
い。
同じ周波数のTS信号が入力されるごとに、増分レジス
タ32の小数部32bの記憶値を累算し、その累算値を送出
する。累算器24は、マルチプレクサ38からTM1信号ま
たはTM2信号が供給されたとき、そのときの波形メモ
リ12から読み出された差分を累算し、第2図(d)に示す
ようにTM2信号より遅れて発生する第1クロツクパル
スCK1が入力されたとき、そのときの累算値を送出す
る。これは、式(4)におけるY0を算出するためのもの
である。第2図(e)に示すように第1のクロツクパルス
CK1に続いて発生する7発の第2クロツクパルスCK
2をカウンタ18がカウントする。スリーステートバツフ
ア52を介して乗算器26の乗算値が累算器50に供給され、
累算器50には累算器24の累算値も供給されている。この
累算器50は、第1及び第2のクロツクパルスCK1、C
K2がオア回路54を介して供給されるごとに累算し、T
S信号が入力されると、累算値を出力すると共に、リセ
ツトする。また、カウンタ18もTS信号によつてリセツ
トされる。なお、バツフア52には、第1クロツクパルス
CK1がインバータ56を介して供給されており、インバ
ータ56にクロツクパルスCK1が供給されたとき、乗算
器26の乗算値が累算器50に送出されることを阻止する。
すなわち、累算器24が累算値を累算器50に送出している
とき、乗算器26の乗算値は、累算器50には送出されな
い。
次に、この実施例の動作を説明する。今、補間メモリ14
aが制御回路16によつて選択されており、増分レジスタ
32の増分は、上述したように整数部32aが「0」、小数
部32bが「11」であるとする。さらに先に補間された振
幅値はアドレスが「01100」のP3であり、その補間値は
累算器50に記憶されており、累算器24にはY0が記憶され
ているとする。このとき、カウンタ20の値は「000」
で、アドレス累算器28の累算値は「00」である。この状
態において次に補間されるのはP4である。
aが制御回路16によつて選択されており、増分レジスタ
32の増分は、上述したように整数部32aが「0」、小数
部32bが「11」であるとする。さらに先に補間された振
幅値はアドレスが「01100」のP3であり、その補間値は
累算器50に記憶されており、累算器24にはY0が記憶され
ているとする。このとき、カウンタ20の値は「000」
で、アドレス累算器28の累算値は「00」である。この状
態において次に補間されるのはP4である。
TS信号が発生すると、累算器50は先の補間値P3を出力
すると共に、リセツトされ、カウンタ18もリセツトされ
る。そして、アドレス累算器28の累算値は「11」とな
る。このとき、アドレス累算器28はキヤリー信号を発生
せず、かつ増分アドレスレジスタ32の整数部32aは
「0」であるので、マルチプレクサ38はTM1、TM2
信号いずれも送出しない。従つて、カウンタ20のカウン
ト値は「000」であり、カウンタ18のカウント値も「00
0」で、両者は加算器22で加算され、波形メモリ12のア
ドレス「000」から差分データd0が読み出されて、累算
器24に供給されるが、マルチプレクサ38がTM1、TM
2信号のいずれも送出していないので、累算は行なわれ
ず、累算器24の累算値はY0のままである。同時に、アド
レス累算器28の累算値「11」を反転器30で反転させたも
の「00」が小数部として、カウンタ18のカウント値「00
0」が整数部として補間メモリ14aに供給され、アドレ
ス「00000」の記憶値(このアドレスには何も記憶され
ていない)が読み出され、乗算器26で差分データd0と乗
算され、バツフア52を介して累算器50に供給されるが、
オア回路54から累算指令が与えられていないので、累算
器50では累算は行なわれない。
すると共に、リセツトされ、カウンタ18もリセツトされ
る。そして、アドレス累算器28の累算値は「11」とな
る。このとき、アドレス累算器28はキヤリー信号を発生
せず、かつ増分アドレスレジスタ32の整数部32aは
「0」であるので、マルチプレクサ38はTM1、TM2
信号いずれも送出しない。従つて、カウンタ20のカウン
ト値は「000」であり、カウンタ18のカウント値も「00
0」で、両者は加算器22で加算され、波形メモリ12のア
ドレス「000」から差分データd0が読み出されて、累算
器24に供給されるが、マルチプレクサ38がTM1、TM
2信号のいずれも送出していないので、累算は行なわれ
ず、累算器24の累算値はY0のままである。同時に、アド
レス累算器28の累算値「11」を反転器30で反転させたも
の「00」が小数部として、カウンタ18のカウント値「00
0」が整数部として補間メモリ14aに供給され、アドレ
ス「00000」の記憶値(このアドレスには何も記憶され
ていない)が読み出され、乗算器26で差分データd0と乗
算され、バツフア52を介して累算器50に供給されるが、
オア回路54から累算指令が与えられていないので、累算
器50では累算は行なわれない。
やがて、第1のクロツクパルスCK1が発生すると、累
算器24からY0が累算器50に送出され、累算される。この
とき、上述したようにバツフア52が乗算器26からの乗算
値の累算器50への供給を停止する。
算器24からY0が累算器50に送出され、累算される。この
とき、上述したようにバツフア52が乗算器26からの乗算
値の累算器50への供給を停止する。
第2のクロツクパルスCK2の第1発目が発生すると、
カウンタ18のカウント値が「001」となり、このカウン
ト値とカウンタ20のカウント値「000」とが加算器22で
加算され、波形メモリ12に供給される。これによつて、
波形メモリのアドレス「001」からd1が読み出され、乗
算器26に供給される。
カウンタ18のカウント値が「001」となり、このカウン
ト値とカウンタ20のカウント値「000」とが加算器22で
加算され、波形メモリ12に供給される。これによつて、
波形メモリのアドレス「001」からd1が読み出され、乗
算器26に供給される。
同時に補間メモリ14aにはアドレスの整数部としてカウ
ンタ18のカウント値「001」が供給され、小数部として
アドレス累算器28の値「11」を反転器30で反転させた出
力「00」が入力され、補間メモリ14aのアドレス「0010
0」からg5が読み出される。読み出されたd1とg5とは乗
算器26で乗算され、その乗算値はバツフア52を介して累
算器50に供給され、累算される。
ンタ18のカウント値「001」が供給され、小数部として
アドレス累算器28の値「11」を反転器30で反転させた出
力「00」が入力され、補間メモリ14aのアドレス「0010
0」からg5が読み出される。読み出されたd1とg5とは乗
算器26で乗算され、その乗算値はバツフア52を介して累
算器50に供給され、累算される。
以下、同様にカウンタ18のカウント値が変化していくご
とに、補間メモリ14aの小数部が「00」であるアドレス
からg9、g13、g17・・・・・g29が順に読み出され、波
形メモリ12の小数部が「00」であるアドレスからd2、
d3、d4・・・・・d7が読み出され、乗算器26で順にd2・
g9、d3・g13、d4・g17・・・・・d7・g29の乗算がさ
れ、各乗算値は累算器50に供給され、累算される。そし
て、再びTS信号が入力されると、累算器50は、その累
算値を出力し、リセツトされ、カウンタ18もリセツトさ
れる。
とに、補間メモリ14aの小数部が「00」であるアドレス
からg9、g13、g17・・・・・g29が順に読み出され、波
形メモリ12の小数部が「00」であるアドレスからd2、
d3、d4・・・・・d7が読み出され、乗算器26で順にd2・
g9、d3・g13、d4・g17・・・・・d7・g29の乗算がさ
れ、各乗算値は累算器50に供給され、累算される。そし
て、再びTS信号が入力されると、累算器50は、その累
算値を出力し、リセツトされ、カウンタ18もリセツトさ
れる。
また、TS信号が入力されたことにより、アドレス累算
器28の値「11」は増分レジスタ22の値「11」が累算さ
れ、「10」となると共に、キヤリー信号をマルチプレク
サ38に供給する。これによつて、カウンタ20の値は「00
1」となり、波形メモリ12からd1が読み出され、累算器2
4に供給される。累算器24は、これを累算する。従っ
て、累算器24の累算値はY1となる。以下、上述したのと
同様にカウンタ18のカウント値に従って、d2、d3・・・
・・及びP5に対応したg6、g10、g14・・・・・が読み出
され、上述したものと同様に処理される。
器28の値「11」は増分レジスタ22の値「11」が累算さ
れ、「10」となると共に、キヤリー信号をマルチプレク
サ38に供給する。これによつて、カウンタ20の値は「00
1」となり、波形メモリ12からd1が読み出され、累算器2
4に供給される。累算器24は、これを累算する。従っ
て、累算器24の累算値はY1となる。以下、上述したのと
同様にカウンタ18のカウント値に従って、d2、d3・・・
・・及びP5に対応したg6、g10、g14・・・・・が読み出
され、上述したものと同様に処理される。
もし、増分アドレスレジスタ32の増分が整数部を
「1」、小数部を「11」とするもので、先に補間された
値がアドレス「10011」のPxであるとすると、累算器24
の累算値はY1である。この状態で、TS信号が入力され
ると、アドレス累算器28の値は「10」となり、キヤリー
信号を発生する。マルチプレクサ38には、整数部32aか
ら「1」が入力されており、かつキヤリー信号が入力さ
れているので、カウンタ20にはTM2信号が入力され、
カウント値は「001」から「010」を経て「011」にな
る。よつて、波形メモリ12からアドレス「010」のd2と
「011」のd3とが累算器24に入力され、その値はY3とな
る。以下、上述したのと同様にしてPxよりアドレスが
「111」だけ増分したアドレスのPyが補間される。
「1」、小数部を「11」とするもので、先に補間された
値がアドレス「10011」のPxであるとすると、累算器24
の累算値はY1である。この状態で、TS信号が入力され
ると、アドレス累算器28の値は「10」となり、キヤリー
信号を発生する。マルチプレクサ38には、整数部32aか
ら「1」が入力されており、かつキヤリー信号が入力さ
れているので、カウンタ20にはTM2信号が入力され、
カウント値は「001」から「010」を経て「011」にな
る。よつて、波形メモリ12からアドレス「010」のd2と
「011」のd3とが累算器24に入力され、その値はY3とな
る。以下、上述したのと同様にしてPxよりアドレスが
「111」だけ増分したアドレスのPyが補間される。
以上のように、この発明によれば、波形メモリに各標本
値の差分を記憶していても、補間メモリにインパルスレ
スポンスの積分値を記憶することによつて、たたみ込み
演算に用いる回路構成を簡略化できる。
値の差分を記憶していても、補間メモリにインパルスレ
スポンスの積分値を記憶することによつて、たたみ込み
演算に用いる回路構成を簡略化できる。
また、この実施例のように特性の異なるローパスフイル
タのインパルスレスポンスの積分値を記憶している複数
の補間メモリを設けて、これを切換えることによつて次
のような効果が得られる。例えば、鍵盤の押鍵の強度が
大きいときには補間のみのフイルタに対応する補間メモ
リに切換え、強度が中位のときには補間のみのフイルタ
よりカツトオフ周波数が低いローパスフイルタに対応す
る補間メモリに切換え、強度が弱いときには補間のみの
フイルタより高域を押えたフイルタに対応する補間メモ
リに切換えることによつて、自然楽器に近い音が得られ
る。
タのインパルスレスポンスの積分値を記憶している複数
の補間メモリを設けて、これを切換えることによつて次
のような効果が得られる。例えば、鍵盤の押鍵の強度が
大きいときには補間のみのフイルタに対応する補間メモ
リに切換え、強度が中位のときには補間のみのフイルタ
よりカツトオフ周波数が低いローパスフイルタに対応す
る補間メモリに切換え、強度が弱いときには補間のみの
フイルタより高域を押えたフイルタに対応する補間メモ
リに切換えることによつて、自然楽器に近い音が得られ
る。
また、この実施例において再生する波形のピツチに応じ
て補間メモリを切換えると、エイリアスの発生を防止で
きる。すなわち、波形メモリに記憶されている波形のピ
ツチより高いピツチで再生すると、自然楽器音は高次の
倍音を含んでいるため、エイリアスを生ずる。これは、
標本化しようとする音に含まれる周波数成分の最大値が
標本化周波数の1/2より小さくなければならないが、
元のピッチより高いピッチで再生するため、音に含まれ
る周波数成分が広がり、標本化周波数の1/2を超える
ためである。そこで、元の波形のピツチより低いピツチ
で再生する場合には、標本化周波数の半分のカツトオフ
周波数のローパスフイルタに対応する補間メモリに切換
え、ピツチを元のピツチより高いピツチで再生する場合
には、上記のローパスフイルタよりカツトオフ周波数の
低いローパスフイルタに対応する補間メモリに切換える
ことによつて、エイリアスの発生を防止できる。
て補間メモリを切換えると、エイリアスの発生を防止で
きる。すなわち、波形メモリに記憶されている波形のピ
ツチより高いピツチで再生すると、自然楽器音は高次の
倍音を含んでいるため、エイリアスを生ずる。これは、
標本化しようとする音に含まれる周波数成分の最大値が
標本化周波数の1/2より小さくなければならないが、
元のピッチより高いピッチで再生するため、音に含まれ
る周波数成分が広がり、標本化周波数の1/2を超える
ためである。そこで、元の波形のピツチより低いピツチ
で再生する場合には、標本化周波数の半分のカツトオフ
周波数のローパスフイルタに対応する補間メモリに切換
え、ピツチを元のピツチより高いピツチで再生する場合
には、上記のローパスフイルタよりカツトオフ周波数の
低いローパスフイルタに対応する補間メモリに切換える
ことによつて、エイリアスの発生を防止できる。
例えば、上記の実施例では、ピツチを元の波形より下げ
る場合には補間メモリ14aに切換え、ピツチを元の波形
の1.5倍までに上げて再生する場合には、補間メモリ14
bに切換え、2倍までに上げて再生する場合には、カツ
トオフ周波数が7.5KHzのローパスフイルタのインパルス
レスポンスの各積分値を記憶させた補間メモリ(図示せ
ず)に切換えればよい。
る場合には補間メモリ14aに切換え、ピツチを元の波形
の1.5倍までに上げて再生する場合には、補間メモリ14
bに切換え、2倍までに上げて再生する場合には、カツ
トオフ周波数が7.5KHzのローパスフイルタのインパルス
レスポンスの各積分値を記憶させた補間メモリ(図示せ
ず)に切換えればよい。
第1図はこの発明による波形発生装置の1実施例のブロ
ツク図、第2図(a)乃至(e)は同実施例の各部の波形図、
第3図は同実施例の補間メモリ14a、14bの記憶値を示
す図、第4図は同実施例に用いたローパスフイルタのイ
ンパルスレスポンスとその標本値とを示す図、第5図は
同実施例に用いた楽音に波形とその標本値を示す図、第
6図は第4図に示したローパスフイルタの周波数特性
図、第7図(a)は同実施例に用いた他のローパスフイル
タのインパルスレスポンスとその標本値を示す図、同図
(b)はそのローパスフイルタの周波数特性図、第8図は
従来の波形発生装置のブロツク図、第9図はこの従来の
波形発生装置で用いたローパスフイルタのインパルスレ
スポンスとその標本値を示す図である。 12……波形メモリ、14a乃至14c……補間メモリ、24、
26、50……演算手段。
ツク図、第2図(a)乃至(e)は同実施例の各部の波形図、
第3図は同実施例の補間メモリ14a、14bの記憶値を示
す図、第4図は同実施例に用いたローパスフイルタのイ
ンパルスレスポンスとその標本値とを示す図、第5図は
同実施例に用いた楽音に波形とその標本値を示す図、第
6図は第4図に示したローパスフイルタの周波数特性
図、第7図(a)は同実施例に用いた他のローパスフイル
タのインパルスレスポンスとその標本値を示す図、同図
(b)はそのローパスフイルタの周波数特性図、第8図は
従来の波形発生装置のブロツク図、第9図はこの従来の
波形発生装置で用いたローパスフイルタのインパルスレ
スポンスとその標本値を示す図である。 12……波形メモリ、14a乃至14c……補間メモリ、24、
26、50……演算手段。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.5 識別記号 庁内整理番号 FI 技術表示箇所 H03H 17/02 D 7037−5J H03M 3/02 8522−5J
Claims (2)
- 【請求項1】波形を標本化して得た各標本値間の差分値
データを出力する差分値データ出力手段と、 上記波形の標本点間を補間するための補間フィルタのイ
ンパルスレスポンスを標本化して得た各標本値の積分値
を記憶している補間メモリと、 上記差分値データ出力手段と上記補間メモリのそれぞれ
に記憶された値を用いて畳み込み演算を行う演算手段
と、 を具備したことを特徴とする電子楽器の波形発生装置。 - 【請求項2】上記差分値データ出力手段は、波形を標本
化して得た各標本値間の差分値データを記憶している波
形メモリである特許請求項第1項記載の電子楽器の波形
発生装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60256142A JPH0631989B2 (ja) | 1985-11-14 | 1985-11-14 | 電子楽器の波形発生装置 |
US06/889,472 US4715257A (en) | 1985-11-14 | 1986-07-25 | Waveform generating device for electronic musical instruments |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60256142A JPH0631989B2 (ja) | 1985-11-14 | 1985-11-14 | 電子楽器の波形発生装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62115194A JPS62115194A (ja) | 1987-05-26 |
JPH0631989B2 true JPH0631989B2 (ja) | 1994-04-27 |
Family
ID=17288484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60256142A Expired - Lifetime JPH0631989B2 (ja) | 1985-11-14 | 1985-11-14 | 電子楽器の波形発生装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US4715257A (ja) |
JP (1) | JPH0631989B2 (ja) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4907484A (en) * | 1986-11-02 | 1990-03-13 | Yamaha Corporation | Tone signal processing device using a digital filter |
US5548080A (en) * | 1986-11-06 | 1996-08-20 | Casio Computer Co., Ltd. | Apparatus for appoximating envelope data and for extracting envelope data from a signal |
US5200567A (en) * | 1986-11-06 | 1993-04-06 | Casio Computer Co., Ltd. | Envelope generating apparatus |
JPH0754432B2 (ja) * | 1986-12-30 | 1995-06-07 | ヤマハ株式会社 | 楽音信号発生装置 |
JP2970907B2 (ja) * | 1988-04-13 | 1999-11-02 | 株式会社ナムコ | Pcmにおけるアナログ信号合成装置 |
JP2819533B2 (ja) * | 1988-05-10 | 1998-10-30 | ヤマハ株式会社 | 楽音信号発生装置 |
JP2526834B2 (ja) * | 1988-08-12 | 1996-08-21 | カシオ計算機株式会社 | 演奏制御装置 |
US5245126A (en) * | 1988-11-07 | 1993-09-14 | Kawai Musical Inst. Mfg. Co., Ltd. | Waveform generation system with reduced memory requirement, for use in an electronic musical instrument |
US5086475A (en) * | 1988-11-19 | 1992-02-04 | Sony Corporation | Apparatus for generating, recording or reproducing sound source data |
US4953437A (en) * | 1989-01-17 | 1990-09-04 | Gulbransen Incorporated | Method and apparatus for digitally generating musical notes |
US5119712A (en) * | 1989-01-19 | 1992-06-09 | Casio Computer Co., Ltd. | Control apparatus for electronic musical instrument |
US5245127A (en) * | 1989-04-21 | 1993-09-14 | Yamaha Corporation | Signal delay circuit, FIR filter and musical tone synthesizer employing the same |
JP2576647B2 (ja) * | 1989-11-30 | 1997-01-29 | ヤマハ株式会社 | 波形発生装置 |
JP2728756B2 (ja) * | 1989-12-31 | 1998-03-18 | 株式会社河合楽器製作所 | 音楽的波形生成装置及び音楽的波形生成方法 |
US5342990A (en) * | 1990-01-05 | 1994-08-30 | E-Mu Systems, Inc. | Digital sampling instrument employing cache-memory |
US5111727A (en) * | 1990-01-05 | 1992-05-12 | E-Mu Systems, Inc. | Digital sampling instrument for digital audio data |
US5218155A (en) * | 1990-03-30 | 1993-06-08 | Kabushiki Kaisha Kawai Gakki Seisakusho | Tone signal processing apparatus for PCM waveform interpolation and filtering |
JP2623942B2 (ja) * | 1990-09-05 | 1997-06-25 | ヤマハ株式会社 | 楽音信号発生装置 |
JP2958742B2 (ja) * | 1994-10-07 | 1999-10-06 | ローランド株式会社 | 波形データ圧縮装置、波形データ伸長装置、量子化装置および浮動小数点によるデータ作成方法 |
US5814750A (en) * | 1995-11-09 | 1998-09-29 | Chromatic Research, Inc. | Method for varying the pitch of a musical tone produced through playback of a stored waveform |
JP2708037B2 (ja) * | 1996-05-20 | 1998-02-04 | ヤマハ株式会社 | 楽音信号発生装置 |
US5837914A (en) * | 1996-08-22 | 1998-11-17 | Schulmerich Carillons, Inc. | Electronic carillon system utilizing interpolated fractional address DSP algorithm |
JP3384290B2 (ja) * | 1997-07-25 | 2003-03-10 | ヤマハ株式会社 | 音源装置 |
JPH11282684A (ja) * | 1998-03-27 | 1999-10-15 | Canon Inc | 画像処理装置、画像処理装置の制御方法、および記憶媒体 |
WO2002071619A1 (fr) * | 2001-03-01 | 2002-09-12 | Sakai, Yasue | Convertisseur numerique-analogique et procede de conversion; interpolateur de donnees |
US6900381B2 (en) * | 2001-05-16 | 2005-05-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for removing aliasing in wave table based synthesizers |
DE60122296T2 (de) * | 2001-05-28 | 2007-08-30 | Texas Instruments Inc., Dallas | Programmierbarer Melodienerzeuger |
US7107401B1 (en) | 2003-12-19 | 2006-09-12 | Creative Technology Ltd | Method and circuit to combine cache and delay line memory |
TWI252468B (en) * | 2004-02-13 | 2006-04-01 | Mediatek Inc | Wavetable synthesis system with memory management according to data importance and method of the same |
JP4645337B2 (ja) * | 2005-07-19 | 2011-03-09 | カシオ計算機株式会社 | 波形データ補間装置 |
JP4554629B2 (ja) * | 2007-03-07 | 2010-09-29 | 株式会社フェイス | 波形生成装置、音源用シンセサイザ |
JP5623399B2 (ja) | 2008-07-28 | 2014-11-12 | アギア システムズ エルエルシーAgere Systems LLC | 変量補償浮上量測定システムおよび方法 |
US8325432B2 (en) | 2010-08-05 | 2012-12-04 | Lsi Corporation | Systems and methods for servo data based harmonics calculation |
US8300349B2 (en) | 2010-08-05 | 2012-10-30 | Lsi Corporation | Systems and methods for format efficient calibration for servo data based harmonics calculation |
US8345373B2 (en) | 2010-08-16 | 2013-01-01 | Lsi Corporation | Systems and methods for phase offset based spectral aliasing compensation |
US8605381B2 (en) | 2010-09-03 | 2013-12-10 | Lsi Corporation | Systems and methods for phase compensated harmonic sensing in fly height control |
US8526133B2 (en) | 2011-07-19 | 2013-09-03 | Lsi Corporation | Systems and methods for user data based fly height calculation |
US9293164B2 (en) | 2013-05-10 | 2016-03-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for energy based head contact detection |
US8937781B1 (en) | 2013-12-16 | 2015-01-20 | Lsi Corporation | Constant false alarm resonance detector |
US9129632B1 (en) | 2014-10-27 | 2015-09-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Loop pulse estimation-based fly height detector |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5917838B2 (ja) * | 1977-11-01 | 1984-04-24 | ヤマハ株式会社 | 電子楽器の波形発生装置 |
US4205575A (en) * | 1978-05-19 | 1980-06-03 | The Wurlitzer Company | Binary interpolator for electronic musical instrument |
JPS5528072A (en) * | 1978-08-21 | 1980-02-28 | Nippon Musical Instruments Mfg | Electronic musical instrument |
JPS5753796A (ja) * | 1980-09-16 | 1982-03-30 | Casio Computer Co Ltd | |
JPS5865493A (ja) * | 1981-10-15 | 1983-04-19 | 松下電器産業株式会社 | 波形発生装置 |
JPS6029793A (ja) * | 1983-07-28 | 1985-02-15 | ヤマハ株式会社 | 楽音形成装置 |
JPH0795235B2 (ja) * | 1983-10-27 | 1995-10-11 | 株式会社河合楽器製作所 | 電子楽器 |
JPS6095599A (ja) * | 1983-10-31 | 1985-05-28 | ソニー株式会社 | 時間軸圧縮伸張装置 |
US4633749A (en) * | 1984-01-12 | 1987-01-06 | Nippon Gakki Seizo Kabushiki Kaisha | Tone signal generation device for an electronic musical instrument |
US4602545A (en) * | 1985-01-24 | 1986-07-29 | Cbs Inc. | Digital signal generator for musical notes |
-
1985
- 1985-11-14 JP JP60256142A patent/JPH0631989B2/ja not_active Expired - Lifetime
-
1986
- 1986-07-25 US US06/889,472 patent/US4715257A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS62115194A (ja) | 1987-05-26 |
US4715257A (en) | 1987-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0631989B2 (ja) | 電子楽器の波形発生装置 | |
JPS5917838B2 (ja) | 電子楽器の波形発生装置 | |
JPS5919356B2 (ja) | 電子楽器 | |
JP3175179B2 (ja) | デジタルピッチシフター | |
EP0072706B1 (en) | Sound signal processing apparatus | |
JPS5996513A (ja) | 波形の記録及び再生方法 | |
GB2219158A (en) | Digital-analog converter | |
US4811370A (en) | Digital muting circuit | |
JPH05235698A (ja) | サンプリング周波数変換器 | |
JP3252296B2 (ja) | 波形データ出力装置 | |
JP3221041B2 (ja) | サンプリング周波数変換器 | |
JP3435702B2 (ja) | 楽音発生装置 | |
US6483451B1 (en) | Sampling function waveform data generating device | |
JP3362796B2 (ja) | 楽音発生装置 | |
JP3501923B2 (ja) | 半導体試験装置用タイミング発生器 | |
JPH0619797B2 (ja) | たたみ込み演算回路 | |
JP2907051B2 (ja) | 波形発生装置及び方法 | |
JPS6315300A (ja) | 補間方法 | |
JPS583238B2 (ja) | 電子楽器 | |
JP2897680B2 (ja) | 楽音信号発生装置 | |
JPH06195085A (ja) | 波形データ出力装置 | |
JPH09212193A (ja) | 音程変換装置 | |
JPH0879012A (ja) | ディジタルフィルタ | |
JPS62267798A (ja) | 電子楽器 | |
JPH0566779A (ja) | 楽音発生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |