JPS6116991B2 - - Google Patents
Info
- Publication number
- JPS6116991B2 JPS6116991B2 JP52149200A JP14920077A JPS6116991B2 JP S6116991 B2 JPS6116991 B2 JP S6116991B2 JP 52149200 A JP52149200 A JP 52149200A JP 14920077 A JP14920077 A JP 14920077A JP S6116991 B2 JPS6116991 B2 JP S6116991B2
- Authority
- JP
- Japan
- Prior art keywords
- waveform
- memory
- memory device
- real number
- fourier transform
- 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
Links
- 230000006870 function Effects 0.000 claims description 12
- 238000001228 spectrum Methods 0.000 claims description 11
- 238000000034 method Methods 0.000 claims description 8
- 239000002131 composite material Substances 0.000 claims description 6
- 238000005070 sampling Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 4
- 230000015572 biosynthetic process Effects 0.000 claims 1
- 230000002194 synthesizing effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の詳細な説明】
この発明は電子楽器における楽音波形の形成方
法に関し、特にデイジタル回路を利用して楽音波
形を形成処理する楽音波形の形成方法に関するも
のである。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a method of forming a musical sound waveform in an electronic musical instrument, and more particularly to a method of forming a musical sound waveform using a digital circuit.
この発明の先行技術としては本願出願人が昭和
50年12月16日付で出願した昭和50年特許願第
149148号(特開昭52−73721号)「電子楽器」(以
下先出願という)がある。先出願においては波形
メモリから読み出した楽音波形を所望の周波数特
性を有するフイルタの入力端子に加え、該フイル
タの出力端子に現われる楽音波形を1周期遅延し
て再び前記フイルタの入力端子に加えるようにし
て楽音波形がフイルタを循環するようにし、フイ
ルタを通過するたびにフイルタの特性によつて順
次変化してゆく楽音波形をとり出すようにしてい
る。そして先出願における前記フイルタの好適な
設計例としてはデイジタルフイルタが用いられ、
楽音波形はデイジタル符号で表現された形でこの
デイジタルフイルタを循環する。したがつてフイ
ルタの伝達特性を決定するパラメータを変更する
ことも容易であつて、このようにして時間の経過
と共に波形が変化する楽音波形を発生し、変化に
富んだ豊かな楽音を得ることができた。 As prior art to this invention, the applicant of the present invention
Patent Application No. 1975 filed on December 16, 1950
No. 149148 (Japanese Unexamined Patent Publication No. 52-73721) "Electronic Musical Instrument" (hereinafter referred to as "earlier application"). In the earlier application, a musical sound waveform read from a waveform memory is applied to the input terminal of a filter having desired frequency characteristics, and the musical sound waveform appearing at the output terminal of the filter is delayed by one cycle and then applied to the input terminal of the filter again. The musical sound waveform is circulated through the filter, and each time it passes through the filter, a musical sound waveform that sequentially changes depending on the characteristics of the filter is extracted. A digital filter is used as a preferable design example of the filter in the earlier application,
The musical sound waveform circulates through this digital filter in the form represented by digital codes. Therefore, it is easy to change the parameters that determine the transmission characteristics of the filter, and in this way it is possible to generate a musical sound waveform whose waveform changes over time and obtain a rich and varied musical tone. did it.
しかし先出願の欠点は高度な特性のデイジタル
フイルタを構成するためには回路が複雑高価にな
ることである。デイジタルフイルタの設計は公知
であり、その詳細な説明は省略するが、一般にデ
イジタルフイルタは遅延回路、減衰回路、加算回
路等の回路から構成され、たとえば尖鋭な遮断特
性などを得るためには上述の回路を多数組み合せ
ることが必要となり、非常に複雑な回路となる。
特に、所望の楽音を発生するには高度な特性のフ
イルタを必要とするので、先出願の電子楽器が一
般に複雑高価になることも容易に理解できるであ
ろう。 However, the drawback of the earlier application is that the circuit becomes complicated and expensive in order to construct a digital filter with advanced characteristics. The design of a digital filter is well known, and a detailed explanation thereof will be omitted, but generally a digital filter is composed of circuits such as a delay circuit, an attenuation circuit, and an addition circuit.For example, in order to obtain sharp cutoff characteristics, the above-mentioned It is necessary to combine many circuits, resulting in a very complex circuit.
In particular, it is easy to understand that the electronic musical instruments of the earlier application are generally complicated and expensive, since they require filters with sophisticated characteristics to generate the desired musical tones.
この発明は上述の欠点を除去することを目的と
し、すなわち、デイジタルフイルタのような複雑
な回路を用いることなく、所望のフイルタ特性が
容易に得られるようにした楽音波形の形成方法を
提供することを目的としている。この目的のた
め、この発明では、時間領域の関数を周波数領域
の関数に変換した上で周波数領域においてデータ
処理することにより、簡単な回路構成で所望のフ
イルタ特性を得るのである。時間領域の関数と周
波数領域の関数との間の相互変換にはそれぞれフ
ーリエ変換と逆フーリエ変換とが用いられ、普通
の場合は高速フーリエ変換および高速逆フーリエ
変換と称せられる方法がそれぞれ用いられている
ことはよく知られている所である。 The object of the present invention is to eliminate the above-mentioned drawbacks, namely, to provide a method of forming a musical sound waveform that allows desired filter characteristics to be easily obtained without using a complicated circuit such as a digital filter. It is an object. For this purpose, the present invention obtains desired filter characteristics with a simple circuit configuration by converting a time domain function into a frequency domain function and then performing data processing in the frequency domain. Fourier transform and inverse Fourier transform are used to mutually transform between time-domain functions and frequency-domain functions, respectively, and in common cases, methods called fast Fourier transform and fast inverse Fourier transform are used, respectively. It is a well known place.
またフーリエ変換、逆フーリエ変換は所定の時
間内のデータに対して行なわれ、時間的に連続し
て発生するデータに対しては、上記所定の時間を
周期として繰り返して行なわれ、普通の場合はこ
の周期は時間領域の関数である波形の基本波の1
周期に等しく選ばれる。しかし波形の1周期をフ
ーリエ変換して周波数スペクトルとして、この周
波数スペクトルにデータ処理を施した上で逆フー
リエ変換してデータ処理後の波形の1周期を発生
すると、処理後の波形の相連続した周期の間が一
般的には不連続となり、この不連続が雑音の原因
となるという欠点がある。 Furthermore, Fourier transform and inverse Fourier transform are performed on data within a predetermined time, and for data that occurs continuously in time, they are repeatedly performed on the above-mentioned predetermined time period. This period is one of the fundamental waves of the waveform, which is a function of the time domain.
chosen equal to the period. However, if one cycle of the waveform is Fourier transformed to produce a frequency spectrum, then data processing is applied to this frequency spectrum, and then inverse Fourier transform is performed to generate one cycle of the waveform after data processing. There is generally a discontinuity between cycles, and this discontinuity causes noise.
この発明の他の目的は上述のような不連続が発
生しない方法を提供することであり、以下図面に
よつてこの発明の実施例について詳細に説明す
る。 Another object of the present invention is to provide a method in which the above-mentioned discontinuity does not occur, and embodiments of the present invention will be described in detail below with reference to the drawings.
なお、この明細書でいう「実数メモリ」とはこ
の発明で用いる複素数を構成する実数部、虚数部
のうち実数部に対応するデータをストアするメモ
リであることを示し、一般に電子計算機の分野で
いう数値に対する実数型、整数型の区別における
実数用のメモリを示すものではない。 Note that "real number memory" as used in this specification refers to a memory that stores data corresponding to the real part of the real part and imaginary part that constitute the complex number used in this invention, and is generally used in the field of electronic computers. It does not indicate the memory for real numbers in the distinction between real number type and integer type for numerical values.
第1図はこの発明の一実施を示すブロツク線図
であつて、1は波形メモリ、2は所定のインパル
ス応答g(n)を有するフイルタ、3は高速フー
リエ変換回路、4は周波数領域内における所定の
伝達関数H(k)を記憶するレジスタ、5は高速逆フ
ーリエ変換回路、6は第1のメモリ装置(以下
RAM6と略記する)、7は第2のメモリ装置(以
下RAM7と略記する)、8は加算回路、9は乗算
回路、10は書き込み順に読み出されるFIFO
(first−in−first−out)メモリ装置(以下FIFO
10と略記する)、11はRAM6への書き込み入
力の転換を等価的に表示するスイツチで110は
その可動接点、111,112,113はそれぞ
れスイツチ11の固定接点、12はRAM6の読
み出し出力の転換を等価的に表示するスイツチで
120はその可動接点、121,122,123
はそれぞれスイツチ12の固定接点、13は数値
零(以下0で表わす)を記憶するレジタスタ、1
4はFIFO10を読み出すサンプリングクロツク
の入力端子である。 FIG. 1 is a block diagram showing one implementation of the present invention, in which 1 is a waveform memory, 2 is a filter having a predetermined impulse response g(n), 3 is a fast Fourier transform circuit, and 4 is a block diagram showing a waveform memory in the frequency domain. A register for storing a predetermined transfer function H(k), 5 a fast inverse Fourier transform circuit, 6 a first memory device (hereinafter referred to as
7 is a second memory device (hereinafter abbreviated as RAM 7), 8 is an addition circuit, 9 is a multiplication circuit, 10 is a FIFO that is read in the order of writing.
(first-in-first-out) memory device (FIFO
11 is a switch that equivalently indicates the conversion of the write input to the RAM 6, 110 is its movable contact, 111, 112, and 113 are fixed contacts of the switch 11, and 12 is the conversion of the read output of the RAM 6. 120 is its movable contact, 121, 122, 123 is a switch that equivalently displays
are fixed contacts of the switch 12, 13 is a register that stores the numerical value zero (hereinafter referred to as 0), and 1 is a fixed contact of the switch 12.
4 is an input terminal of a sampling clock for reading out the FIFO 10.
またxn(n)は波形メモリ1から読み出され
る波形を表わし、nは波形のサンプリング点の順
番で0、1、2、………N−1(1周期内のサン
プリング点の総数をNとする)を表わし、波形の
振幅がnの関数として表わされていることを意味
する。以下他の波形に対してもnは同一の意味に
用いられる。またxn(n)のmはフーリエ変換
及び逆フーリエ変換が行なわれる周期の順番で
0、1、2、3、………と変化する。したがつて
第1図に示す実施例ではxn+1(n)=xn(n)
である。un(n)は第1の波形、un-1(N+
n)は第2の波形、vn(n)は第3の波形、yn
(n)は合成波形を表わす。yn(l)はRAM6から
高速フーリエ変換回路3に入力される波形、Yn
(k)は波形yn(l)がフーリエ変換された周波数スペ
クトルで第1の周波数スペクトルと称することに
し、H(k)は周波数領域における伝達関数、Un(k)
は第2の周波数スペクトルを表わす。Yn(k)、H
(k)、Un(k)のkは周波数軸上でのサンプル点の順
番を表わし、したがつてk=0、1、2、3、…
……k−1(この場合、K=2Nである)であ
り、周波数スペクトルは各高調波の関数として表
わされていることを意味する。Un-1(N+n)
のm−1及びN+nの意味、ならびにyn(l)のl
の意味については後述する。 In addition, x n (n) represents the waveform read from the waveform memory 1, and n is the order of sampling points of the waveform: 0, 1, 2, ......N-1 (the total number of sampling points within one period is N). ), which means that the amplitude of the waveform is expressed as a function of n. Hereinafter, n will be used with the same meaning for other waveforms. Further, m in x n (n) changes as 0, 1, 2, 3, . . . in the order of the cycles in which Fourier transform and inverse Fourier transform are performed. Therefore, in the embodiment shown in FIG. 1, x n+1 (n)=x n (n)
It is. u n (n) is the first waveform, u n-1 (N+
n) is the second waveform, v n (n) is the third waveform, y n
(n) represents a composite waveform. y n (l) is the waveform input from the RAM 6 to the fast Fourier transform circuit 3, Y n
(k) is the frequency spectrum obtained by Fourier transforming the waveform y n (l), which will be referred to as the first frequency spectrum, and H(k) is the transfer function in the frequency domain, U n (k)
represents the second frequency spectrum. Y n (k), H
(k), k in U n (k) represents the order of sample points on the frequency axis, so k = 0, 1, 2, 3,...
...k-1 (in this case K=2N), meaning that the frequency spectrum is expressed as a function of each harmonic. U n-1 (N+n)
The meaning of m-1 and N+n of , and l of y n (l)
The meaning will be explained later.
第2図は第1図の装置の動作を示す動作タイム
チヤートで、同図aはmの値、同図bはキーオン
信号、同図cは第1ロード段階(後節で説明す
る)、同図dはRAM6からRAM7への転送段階
(後節で説明する)、同図eはクリア段階(後節で
説明する)、同図fは第2ロード段階(後節で説
明する)の位相をそれぞれ示している。 FIG. 2 is an operation time chart showing the operation of the device shown in FIG. Figure d shows the phase of the transfer from RAM6 to RAM7 (explained in a later section), e shows the phase of the clear phase (explained in a later section), and f shows the phase of the second load stage (explained in a later section). are shown respectively.
第3図及び第4図は第1図の装置におけるデー
タ処理を示すフローチヤートであり、以下第1図
乃至第4図を参照して第1図に示す実施例の動作
を説明する。 3 and 4 are flowcharts showing data processing in the apparatus shown in FIG. 1, and the operation of the embodiment shown in FIG. 1 will be explained below with reference to FIGS. 1 to 4.
電子楽器の鍵盤で鍵が押下されたことを示すキ
ーオン信号が検出されると(この関係の回路は第
1図には示してない)、第3図の201,202
に示すようにRAM6とRAM7がクリアされ、m
とnは初期値0に設定される。次に波形メモリ1
からxn(n)が読み出されxn(n)とg(n)
とがたたみ込み演算されて第3の波形vn(n)
が
vn(n)=xn(n)○*g(n) ……(1)
として発生される(第3図203)。式(1)の方法
は第3の波形vn(n)を発生する一実施例であ
るが、第3の波形vn(n)を他のどのような方
法で発生してもよいことは申すまでもない。次に
加算回路8により
yn(n)=vn(n)+un(n)
+un-1(N+n) ……(2)
の加算を行なうが(第3図204)m=0の周期
(第2図参照)においてはRAM6もRAM7もク
リアされているのでyn(n)=vn(n)とな
り、これがFIFO10に書き込まれる。その時ス
イツチ11の可動接点110は固定接点111に
接続されていて合成波形yn(n)は同時にRAM
6に書き込まれる。RAM6は4N語の記憶容量を
有しその構成は実数メモリ前半部N語、実数メモ
リ後半部N語、虚数メモリ前半部N語、虚数メモ
リ後半部N語に分かれている。前節で説明したよ
うにyn(n)はN語から構成されており(n=
0、1、………N−1)、RAM6の実数メモリ前
半部に入力される。この段階を仮に第1ロード段
階という(第2図c及び第3図205参照)。 When a key-on signal indicating that a key has been pressed on the keyboard of an electronic musical instrument is detected (this related circuit is not shown in FIG. 1), the signals 201 and 202 in FIG.
RAM6 and RAM7 are cleared as shown in
and n are set to an initial value of 0. Next, waveform memory 1
x n (n) is read from x n (n) and g(n)
is convolved and the third waveform v n (n)
is generated as v n (n)=x n (n)○*g(n)...(1) (Fig. 3, 203). Although the method in equation (1) is one example of generating the third waveform v n (n), it is understood that the third waveform v n (n) may be generated in any other manner. Needless to say. Next, the addition circuit 8 performs the addition of y n (n) = v n (n) + u n (n) + u n -1 (N + n) ... (2) (Fig. 3 204) with a period of m = 0. (See FIG. 2), since both RAM6 and RAM7 are cleared, y n (n)=v n (n), which is written to the FIFO 10. At that time, the movable contact 110 of the switch 11 is connected to the fixed contact 111, and the composite waveform y n (n) is simultaneously generated in the RAM
6 is written. The RAM 6 has a storage capacity of 4N words, and its configuration is divided into a first half of real number memory with N words, a second half of real number memory with N words, an imaginary number memory with first half of N words, and a second half of imaginary number memory with N words. As explained in the previous section, y n (n) is composed of N words (n=
0, 1, ......N-1), are input to the first half of the real number memory of RAM6. This stage is tentatively referred to as a first loading stage (see FIG. 2c and FIG. 3 205).
第1ロード段階に続いて転送段階(第2図d及
び第3図206参照)が行なわれRAM6の実数
メモリ後半部のデータがRAM7に転送される。
このときスイツチ12の可動接点120は固定接
点123に接続されている。RAM7はN語の容
量をもちRAM6の実数メモリ後半部から転送さ
れたデータを次の周期の第1ロード段階まで記憶
する。この意味でRAM7の出力をun-1(N+
n)の形で表わす。m=Oの周期においては
RAM6の実数メモリ後半部はクリアされたまゝ
の状態であるため、m=Oの周期でRAM7に入
力されるデータは0であり、したがつてm=1の
ときRAM7から読み出されるun-1(N+1)は
零となる。 Following the first load stage, a transfer stage (see FIG. 2d and FIG. 3 206) is performed in which the data in the latter half of the real number memory of RAM 6 is transferred to RAM 7.
At this time, the movable contact 120 of the switch 12 is connected to the fixed contact 123. RAM7 has a capacity of N words and stores the data transferred from the second half of the real number memory of RAM6 until the first load stage of the next cycle. In this sense, the output of RAM7 is u n-1 (N+
n). In the period m=O
Since the latter half of the real number memory of RAM6 remains cleared, the data input to RAM7 at the cycle of m=O is 0, so when m=1, the data u n-1 read from RAM7 is (N+1) becomes zero.
次は第2図e及び第3図207に示すクリア段
階が行なわれRAM6の実数メモリ後半部と虚数
メモリ後半部とがクリアされる。 Next, the clearing stage shown in FIG. 2e and FIG. 3 207 is performed, and the real number memory second half and the imaginary number memory second half of the RAM 6 are cleared.
このようなオペレーシヨンがn=0、1、……
…N−1に対して行なわれyn(n)の書き込み
が終る。但しクリア段階においては毎回スイツチ
11の可動接点110を固定接点112に接続す
ると考える。 Such an operation is n=0, 1,...
...The writing of y n (n) is completed for N-1. However, it is assumed that the movable contact 110 of the switch 11 is connected to the fixed contact 112 each time in the clear stage.
yn(n)の書き込みが終るとスイツチ12の
可動接点120を固定接点121と接続しRAM
6の複素数メモリの内容2N語を高速フーリエ変
換回路3に入力して周波数スペクトルYn(k)に変
換する(第3図209参照)。このときRAM6か
ら出力され高速フーリエ変換回路3によつてYn
(k)に変換される信号をyn(l)で表わすことにする
と、RAM6の書き込みについての説明から明ら
かなように、yn(l)はlの値0、1、2、………
2N−1のそれぞれに対応する2N語の複素数で構
成され、0l(N−1)の領域ではyn(l)=
yn(n)+j0でありNl(2N−1)の領域
ではすべて0+j0である波形を表わす。次に乗算
回路9によつてUn(k)=H(k)−Yn(k)………(3)の演
算を行ない(第4図303)、更にUn(k)を高速逆
フーリエ変換回路5に入力して逆フーリエ変換し
波形を表わす信号un(l)とし、スイツチ11の可
動接点110を固定接点113に接続してRAM
6に書込む。(第4図306参照)。RAM6は高
速フーリエ変換、高速逆フーリエ変換におけるメ
モリ装置としても用いられ、このため虚数メモリ
の部分をそなえており、高速フーリエ変換が終了
したときはun(l)が既にRAM6に入力されている
が、説明の便宜上第4図のステツプ305,30
6に分けて示す。第4図306は第2図fの位相
で行なわれ第2ロード段階ということにする。 After writing y n (n), the movable contact 120 of the switch 12 is connected to the fixed contact 121 and the RAM is
The contents 2N words of the complex number memory 6 are input to the fast Fourier transform circuit 3 and converted into a frequency spectrum Y n (k) (see 209 in FIG. 3). At this time, Y n is output from the RAM 6 and processed by the fast Fourier transform circuit 3
Letting the signal converted to (k) be expressed as y n (l), as is clear from the explanation of writing to RAM 6, y n (l) is the value of l, 0, 1, 2, etc.
It is composed of 2N words of complex numbers corresponding to each of 2N-1, and in the region of 0l(N-1), y n (l)=
It represents a waveform in which y n (n)+j0 is all 0+j0 in the region of Nl(2N-1). Next, the multiplication circuit 9 performs the calculation U n (k) = H (k) - Y n (k) (3) (303 in Fig. 4), and then inverts U n (k) at high speed. It is input to the Fourier transform circuit 5 and subjected to inverse Fourier transform to obtain a signal u n (l) representing a waveform.The movable contact 110 of the switch 11 is connected to the fixed contact 113 and the RAM is
Write to 6. (See Figure 4 306). RAM6 is also used as a memory device for fast Fourier transform and fast inverse Fourier transform, and for this reason it has an imaginary number memory part, and when the fast Fourier transform is finished, u n (l) has already been input to RAM6. However, for convenience of explanation, steps 305 and 30 in FIG.
It is divided into 6 parts. FIG. 4 306 is performed in the phase of FIG. 2 f and is referred to as the second loading stage.
第2ロード段階後mに1が加えられて(第4図
307)次の周期に移り(第4図及び第3図の2
11参照)第1ロード段階、転送段落、クリア段
階、第2ロード段階がくりかえされる。 After the second loading stage, 1 is added to m (307 in Figure 4) and the next cycle is entered (2 in Figures 4 and 3).
11) The first loading stage, transfer paragraph, clearing stage, and second loading stage are repeated.
第1の波形un(n)は第3図204のステツ
プでRAM6の実数メモリ前半部から読み出した
波形で、第2の波形un-1(N+n)は同じくス
テツプ204でRAM7から読み出した波形であ
るが、m=OのときはUn(n)もun-1(N+
n)も共に零であり、m=1のときはUn-1(N
+n)が零であり、m≧2になつてvn(n)、U
n(n)、un-1(N+n)の3波形が合成されて
合成波形yn(n)が発生する。このようにして
第4図308のステツプでキーオフ状態が検出さ
れるまで波形yn(n)が合成されてFIFO10
に入力される。端子14から入力されFIFO10
を読出すサンプリングクロツクの周波数を所望の
楽音周波数によつて定められる値としこのサンプ
リングクロツクによつてFIFO10を連続的に読
出しこの周波数より高い周波数でFIFO10の書
き込みが行なわれるよう第1図の回路に対するク
ロツクパルス(図面に示してない)の周波数が定
められる。FIFO10の書き込みは断続的に行な
われるが、この書き込み制御回路は従来よく知ら
れているのでその説明を省略する。 The first waveform un (n) is the waveform read from the first half of the real number memory of RAM 6 in step 204 in FIG. 3, and the second waveform un -1 (N+n) is the waveform read from RAM 7 in step 204. However, when m=O, U n (n) is also u n-1 (N+
n) are both zero, and when m=1, U n-1 (N
+n) is zero, m≧2, and v n (n), U
The three waveforms n (n) and u n-1 (N+n) are combined to generate a composite waveform y n (n). In this way, the waveform y n (n) is synthesized until the key-off state is detected at step 308 in FIG.
is input. Input from terminal 14 and FIFO10
The frequency of the sampling clock for reading out the frequency is set to a value determined by the desired musical tone frequency, and the FIFO 10 is read out continuously by this sampling clock. The frequency of the clock pulses (not shown in the drawing) for the circuit is determined. Writing to the FIFO 10 is performed intermittently, but since this write control circuit is well known in the art, its explanation will be omitted.
第1図に示す回路の動作は上述のとおりであつ
て、逆フーリエ変換によつて形成した波形un(l)
の後半部すなわちl=N、N+1、………2N−
1の部分を1周期後の合成波形yn+1(n)にお
けるn=0、1、………N−1の部分に加えるこ
とによつて波形yn(n)の終端すなわちyn(N
−1)の値と、波形yn+1(n)の始端すなわち
yn+1(0)の値との間の不連続性を除去してお
り、周波数領域における伝達関数H(k)によつて複
雑なフイルタ特性を容易に実現することができま
たなだらかなフイルタ特性は時間領域におけるイ
ンパルス応答g(n)によつて与えられることが
できる。 The operation of the circuit shown in FIG. 1 is as described above, and the waveform u n (l) formed by inverse Fourier transform is
The second half of ie l=N, N+1, ......2N-
By adding the part 1 to the part n=0, 1, ......N-1 in the composite waveform y n+1 (n) after one cycle, the end of the waveform y n (n), that is, y n ( N
The discontinuity between the value of -1) and the starting point of the waveform y n+1 (n), that is, the value of y n+1 (0), is removed, and the transfer function H(k) in the frequency domain is Therefore, complex filter characteristics can be easily realized, and smooth filter characteristics can be given by the impulse response g(n) in the time domain.
以上の記述のうちからRAM6に関する説明を
抽き出してRAM6の構成と動作とを更に明らか
にする。 The explanation regarding the RAM 6 will be extracted from the above description to further clarify the configuration and operation of the RAM 6.
RAM6の書込み読出しの動作は第3図及び第
4図のフローチヤートに示すとおりであるが、第
1ロード段階、転送段階、クリア段階が波形1周
期分のN個の各サンプル点について順次行なわれ
る。まず、n=0のサンプル点について第1ロー
ド段階が行われ、RAM6の実数メモリのアドレ
ス「0」にyn(0)のサンプル値yn(0)が書
込まれると、この書込みの前にアドレス「0」に
記載されていたun(n)のサンプル値un(0)
が読出されて加算回路8に入力済みである。続い
て転送段階においてRAM6の実数メモリのアド
レス「N」(すなわち実数メモリ後半部のアドレ
ス「0」)に記憶されているun(N+h)のサン
プル値un(N)が読出されてRAM7のアドレス
「0」に記憶される。この後、クリア段階でRAM
6の実数メモリのアドレス「N」にデータ「0」
が書込まれる。以後n=1、2、………N−1の
各サンプル点について上記の処理が順次行われ
る。n=0〜N−1の各サンプル点について、上
記の処理が終了した時点では、RAM6の実数メ
モリ後半部(アドレスN〜2N−1)の記憶内容
un(N+n)がRAM7に転送記憶されると共に
該記憶内容がクリアされ、かつRAM6の実数メ
モリ前半部(アドレス0〜N−1)に加算回路8
から得られる新たな波形yn(n)の1周期分が
記憶される。 The write/read operations of the RAM 6 are as shown in the flowcharts of FIGS. 3 and 4, and the first load stage, transfer stage, and clear stage are performed sequentially for each of N sample points for one cycle of the waveform. . First, the first loading stage is performed for the sample point n=0, and when the sample value y n (0) of y n (0) is written to the address “0” of the real number memory of RAM 6, before this write The sample value un(0) of u n (n) that was written at address "0" in
has been read out and input to the adder circuit 8. Subsequently, in the transfer stage, the sample value u n (N) of u n (N+h) stored at address "N" of the real number memory of RAM 6 (that is, address "0" in the latter half of the real number memory ) is read and stored in RAM 7. Stored at address "0". After this, at the clearing stage, the RAM
6 real number memory address “N” has data “0”
is written. Thereafter, the above processing is sequentially performed for each sample point n=1, 2, . . . N-1. For each sample point from n=0 to N-1, when the above processing is completed, the memory contents u n (N+n) of the latter half of the real number memory of RAM6 (addresses N to 2N-1) are transferred to and stored in RAM7. At the same time, the memory contents are cleared, and the adder circuit 8
One cycle of the new waveform y n (n) obtained from y n (n) is stored.
ここで、RAM6の実数メモリ部が前半部と後
半部とからなる2N語(2周期分)の記憶容量を
有するのは、前述したように、加算回路8から得
られる合成波形yn(n)の各周期の不連続性を
除去するために、変換回路3および5におけるフ
ーリエ変換および逆フーリエ変換を2周期分の
2N語を単位として行い、逆フーリエ変換によつ
て得られた2N語(2周期分)の波形un(l)を
RAM6の実数メモリに書込むようにしているた
めである。 Here, the reason why the real number memory part of the RAM 6 has a storage capacity of 2N words (2 cycles) consisting of the first half and the second half is because the composite waveform y n (n) obtained from the adder circuit 8 In order to remove the discontinuity of each cycle, the Fourier transform and inverse Fourier transform in transform circuits 3 and 5 are
The waveform u n (l) of 2N words (2 cycles) obtained by inverse Fourier transform is performed using 2N words as a unit.
This is because the data is written to the real number memory of RAM6.
そして、RAM6の実数メモリ前半部(アドレ
ス0〜N−1)に記憶された波形un(0)〜un
(N−1)は第1ロード段階で読出されて加算回
路8に供給され、また実数メモリ後半部(アドレ
スN〜2N−1)に記憶された波形un(N)〜u
n(2N−1)は転送段階で読出されRAM7を介
して次の周期(m+1)において加算回路に供給
される。 Then, the waveforms u n (0) to u n stored in the first half of the real memory of RAM 6 (addresses 0 to N-1)
(N-1) is read out in the first loading stage and supplied to the adder circuit 8, and the waveforms u n (N) to u stored in the second half of the real number memory (addresses N to 2N-1)
n (2N-1) is read out during the transfer stage and supplied to the adder circuit via the RAM 7 in the next cycle (m+1).
このような動作に関する限りRAM6は実数メ
モリ部に2N語の容量を持つていればよいのであ
るが、RAM6は高速フーリエ変換回路3及び高
速逆フーリエ変換回路5が変換演算を行うための
中間のメモリとしても使用している。これら演算
の中間メモリとして使用するため実数メモリ部
2N語に対し虚数メモリ部2N語を必要とする。高
速フーリエ変換回路3へ接点121を経てRAM
6から入力されるyn(l)はlの値0、1、2、…
……2N−1のそれぞれに対応する2N語の複素数
(すなわち4N語のデータ)で構成され、0l
(N−1)の領域ではyn(l)=yn(n)+j0であり
Nl(2N−1)の領域ではすべてyn(l)=0
+j0である。このようなyn(l)が実際にRAM6か
ら読出されてどこかへ入力されるという訳ではな
くRAM6に記憶されたまま、高速フーリエ変換
回路3で演算されて順次データが変化してゆき最
後にYn(k)の形となつたデータがRAM6から読出
されて乗算回路9に入力されると考えることがで
きる。 As far as this kind of operation is concerned, RAM 6 only needs to have a capacity of 2N words in the real number memory section, but RAM 6 is an intermediate memory for fast Fourier transform circuit 3 and fast inverse Fourier transform circuit 5 to perform transform operations. It is also used as A real number memory section is used as intermediate memory for these operations.
For 2N words, 2N words of imaginary number memory are required. RAM via contact 121 to fast Fourier transform circuit 3
y n (l) input from 6 is the value of l 0, 1, 2,...
...consists of 2N words of complex numbers (i.e. 4N words of data) corresponding to each of 2N-1, and 0l
In the region of (N-1), y n (l) = y n (n) + j0, and in the region of Nl (2N-1), y n (l) = 0 for all
+j0. Such y n (l) is not actually read out from the RAM 6 and input somewhere, but is stored in the RAM 6 and is calculated by the fast Fourier transform circuit 3, and the data changes sequentially until the end. It can be considered that data in the form of Y n (k) is read from the RAM 6 and input to the multiplier circuit 9.
同様な意味において、固定接点113から
RAM6へ入力されるun(l)(4N語)として表し
てあるが、実際は高速逆フーリエ変換が終了した
ときRAM6の内容がun(l)になつていることを意
味するものである。 In the same sense, from the fixed contact 113
Although it is expressed as u n (l) (4N words) input to the RAM 6, it actually means that the content of the RAM 6 is u n (l) when the fast inverse Fourier transform is completed.
更にタツチコントロール信号、音色タブレツト
信号等の信号により又はキーオン信号に関連して
あらかじめ定められたプログラムに従い、上記イ
ンパルス応答g(n)及び(又は)上記伝達関数
H(k)を変調できることは申すまでもない。 It goes without saying that the impulse response g(n) and/or the transfer function H(k) can be further modulated by signals such as touch control signals, tone tablet signals, etc., or according to a predetermined program related to the key-on signal. Nor.
なお、この発明において波形メモリ出力xn
(n)は初期の一波形分(m=0、n=0、1、
2、………N−1)のみを出力しm≧1では後段
の各種波形値例えばyn(n)、un(l)、yn(l)ある
いはUn(n)などを流用するようにしてもよ
い。このようにた場合には波形メモリは極く小規
模ですみ、経済的であり、このように構成しても
時間とともに順次変化する出力波形が得られるこ
とは申すまでもない。 In addition, in this invention, the waveform memory output x n
(n) is the initial waveform (m=0, n=0, 1,
2,......N-1) only, and when m≧1, various waveform values in the subsequent stage, such as y n (n), u n (l), y n (l), or U n (n), are used. You can do it like this. In this case, the waveform memory can be extremely small-scale and economical, and it goes without saying that even with this configuration, an output waveform that changes sequentially over time can be obtained.
以上の説明によつて明らかなように、この発明
によれば、楽音波形の形成のためのデータ処理の
重要な部分を周波数領域で行なうようにしたの
で、所望のフイルタ特性を簡単な回路によつて実
現することができ、また周波数領域の信号から時
間領域の信号への変換に際し時間領域の信号に不
連続性が発生することのない楽音波形を形成する
ことができる。 As is clear from the above description, according to the present invention, the important part of the data processing for forming musical waveforms is performed in the frequency domain, so that desired filter characteristics can be obtained using a simple circuit. Furthermore, it is possible to form a musical sound waveform in which no discontinuity occurs in the time domain signal when converting the frequency domain signal to the time domain signal.
第1図はこの発明の一実施例を示すブロツク線
図、第2図は第1図の装置の動作を示す動作タイ
ムチヤート、第3図、第4図は第1図の装置にお
けるデータ処理を示すフローチヤートである。
1……波形メモリ、2……フイルタ、3……高
速フーリエ変換回路、4……レジスタ、5……高
速逆フーリエ変換回路、6……第1のメモリ装
置、7……第2のメモリ装置、8……加算回路、
9……乗算回路、10……FIFOメモリ装置。
FIG. 1 is a block diagram showing an embodiment of the present invention, FIG. 2 is an operation time chart showing the operation of the device shown in FIG. 1, and FIGS. 3 and 4 show data processing in the device shown in FIG. This is a flowchart. DESCRIPTION OF SYMBOLS 1... Waveform memory, 2... Filter, 3... Fast Fourier transform circuit, 4... Register, 5... Fast inverse Fourier transform circuit, 6... First memory device, 7... Second memory device , 8...addition circuit,
9...Multiplication circuit, 10...FIFO memory device.
Claims (1)
第1のメモリ装置の実数メモリ前半部に書き込む
第1ロード段階と、この第1ロード段階後前記第
1のメモリ装置の実数メモリ後半部のデータを第
2のメモリ装置に転送する転送段階と、この転送
段階後前記第1のメモリ装置の実数メモリ後半部
と虚数メモリ前半部と虚数メモリ後半部とにすべ
て数値零を書き込むクリア段階と、このクリア段
階後前記第1のメモリ装置の実数メモリ前半部及
び実数メモリ後半部のデータを読み出してこれを
フーリエ変換して第1の周波数スペクトルを発生
する段階と、この第1の周波数スペクトルに周波
数領域における所定の伝達関数を演算して第2の
周波数スペクトルを形成する段階と、この第2の
周波数スペクトルを逆フーリエ変換して第2の波
形を発生しこれを前記第1のメモリ装置の実数メ
モリ前半部及び実数メモリ後半部に書き込む第2
ロード段階と、所定の周期で前記第1ロード段
階、前記転送段階、前記クリア段階、前記第2ロ
ード段階を順次循環的に繰り返し、前記第1のメ
モリ装置の実数メモリ前半部から読み出した波形
と前記第2のメモリ装置から読み出した波形とを
合成した合成波形を書き込み順に読み出される第
3のメモリ装置に入力する段階と、この第3のメ
モリ装置を所望の周波数のサンプリングクロツク
に従つて連続的に読み出し前記サンプリングクロ
ツクの周波数に関連する基本周波数を有する楽音
波形を発生する段階とを有することを特徴とする
楽音波形の形成方法。 2 特許請求の範囲第1項記載の楽音波形の形成
方法において、前記第1の波形は、波形メモリか
ら読み出した波形を表わすデイジタル符号と所望
の特性のインパルス応答を表わすデイジタル符号
とのたゝみこみ演算により形成することを特徴と
する楽音波形の形成方法。[Scope of Claims] 1. A first loading step of forming a desired first waveform and writing this first waveform into the first half of the real memory of the first memory device; A transfer step of transferring the data in the second half of the real memory of the memory device to the second memory device, and after this transfer step, all the data is transferred to the second half of the real memory, the first half of the imaginary memory, and the second half of the imaginary memory of the first memory device. a clearing step of writing a numerical value of zero, and a step of reading out data in the first half of the real number memory and the second half of the real number memory of the first memory device after the clearing step, and performing Fourier transform on the data to generate a first frequency spectrum; A step of calculating a predetermined transfer function in the frequency domain on this first frequency spectrum to form a second frequency spectrum, and performing an inverse Fourier transform on this second frequency spectrum to generate a second waveform. A second memory to be written to the first half of the real number memory and the second half of the real number memory of the first memory device.
A waveform read from the first half of the real number memory of the first memory device by sequentially and cyclically repeating the loading stage, the first loading stage, the transferring stage, the clearing stage, and the second loading stage at a predetermined period; inputting a composite waveform obtained by synthesizing the waveform read from the second memory device into a third memory device read out in writing order; generating a musical sound waveform having a fundamental frequency related to the frequency of the sampling clock. 2. In the method of forming a musical sound waveform according to claim 1, the first waveform is a convolution of a digital code representing a waveform read from a waveform memory and a digital code representing an impulse response with desired characteristics. A method for forming a musical sound waveform, characterized in that the formation is performed by calculation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14920077A JPS5482224A (en) | 1977-12-14 | 1977-12-14 | Forming method of musical tone waveforms |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14920077A JPS5482224A (en) | 1977-12-14 | 1977-12-14 | Forming method of musical tone waveforms |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS5482224A JPS5482224A (en) | 1979-06-30 |
JPS6116991B2 true JPS6116991B2 (en) | 1986-05-02 |
Family
ID=15470002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14920077A Granted JPS5482224A (en) | 1977-12-14 | 1977-12-14 | Forming method of musical tone waveforms |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS5482224A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0338481A (en) * | 1989-07-06 | 1991-02-19 | Honda Motor Co Ltd | Centrifugal belt transmission for vehicle |
-
1977
- 1977-12-14 JP JP14920077A patent/JPS5482224A/en active Granted
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0338481A (en) * | 1989-07-06 | 1991-02-19 | Honda Motor Co Ltd | Centrifugal belt transmission for vehicle |
Also Published As
Publication number | Publication date |
---|---|
JPS5482224A (en) | 1979-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0631968B2 (en) | Music signal generator | |
JPS6190514A (en) | Music signal processor | |
KR0150223B1 (en) | Tone signal generating device | |
JPS6146872B2 (en) | ||
US4231277A (en) | Process for forming musical tones | |
EP0143632A2 (en) | A convolution arithmetic circuit | |
JPS6116991B2 (en) | ||
US4638710A (en) | Periodic waveform generation by nonrecyclically reading lower frequency audio samples and recyclically reading higher frequency audio samples | |
US6295547B1 (en) | Fourier transform apparatus | |
JPS61124994A (en) | Musical sound signal generator | |
JP3197648B2 (en) | Digital filter | |
JPH04116598A (en) | Musical sound signal generation device | |
JPS6024960B2 (en) | Musical sound synthesis method | |
KR970060037A (en) | Apparatus and method for producing musical tones electronically | |
JP3362796B2 (en) | Music generator | |
JP2728602B2 (en) | Music signal processing method | |
JPS63245058A (en) | Signal tone generator | |
JP2669073B2 (en) | PCM sound source device | |
JPH0640616B2 (en) | Digital filter-frequency characteristic converter | |
JPH0560118B2 (en) | ||
JPH0221714A (en) | Sampling frequency converter | |
JP2628506B2 (en) | Digital filter | |
JPH02149011A (en) | Sampling frequency converting device | |
JPS583238B2 (en) | electronic musical instruments | |
JP3298152B2 (en) | Music signal generator |