JPS592037B2 - Denshigatsuki - Google Patents
DenshigatsukiInfo
- Publication number
- JPS592037B2 JPS592037B2 JP50144808A JP14480875A JPS592037B2 JP S592037 B2 JPS592037 B2 JP S592037B2 JP 50144808 A JP50144808 A JP 50144808A JP 14480875 A JP14480875 A JP 14480875A JP S592037 B2 JPS592037 B2 JP S592037B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- address
- note
- waveform
- output
- 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
- 230000015654 memory Effects 0.000 claims description 159
- 230000006870 function Effects 0.000 claims description 7
- 238000000034 method Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 4
- 102100030551 Protein MEMO1 Human genes 0.000 description 2
- 101710176845 Protein MEMO1 Proteins 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 239000013256 coordination polymer Substances 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 an electronic musical instrument, and more particularly to an improvement in a method for addressing a waveform memory in an electronic musical instrument that reads musical sound waveforms from a waveform memory.
従来、楽音を形成する方式の1つとして発音すべき楽音
波形をメモリに記憶させておき、これを所定の速度で読
み出す波形読み出し方式が知られている(たとえば、米
国特許第3515792号)。この波形読み出し方式に
おいて、読み出すべき波形を記憶させたメモリ(以下、
波形メモリとする)をアドレスするには、(イ)クロッ
クパルス選択方式、(口)周波数ナンバ加算方式などが
ある。すなわち、(イ)クロックパルス選択方式は、第
1図に示すように、鍵10の操作に従いセレクタ11を
介して、操作した鍵に対応する周波数のクロックパルス
をクロックパルス発生器12から選択導出してカウンタ
13を駆動し、このカウンタ13の出力によつて波形メ
モリ14をアドレスし時系列に従つた標本値出力15を
得るものである。しかし、この方式においては、パルス
発生器12のクロックパルスの周期の種類を鍵の数と同
じ数だけ必要とし、クロックパルス発生器12が大規模
となり従つてカウンタ13も大規模となるばかりでなく
、時分割動作をさせる場合には更に膨大な規模を必要と
し言いかえれば複音発生を実現させるのは極めて困難で
ある。尚、この方式は前掲米国特許第3515792号
などに記載の楽器に採用されている。また、(口)周波
数ナンバ加算方式は、第2図に示すように、鍵20の操
作に従いセレクタ21を介して、操作した鍵に対応する
周波数を表わす数値(周波数ナンバ)を周波数ナンバメ
モリ22から読み出して、演算器23でこの周波数ナン
バを繰返して加算し、この演算器23の出力によつて波
形メモリ24をアドレス時系列に従つた標本値出力25
を得るものである。Conventionally, as one method for forming musical tones, a waveform readout method is known in which a musical waveform to be generated is stored in a memory and read out at a predetermined speed (for example, US Pat. No. 3,515,792). In this waveform readout method, a memory (hereinafter referred to as
To address the waveform memory (waveform memory), there are two methods: (a) clock pulse selection method, and (b) frequency number addition method. In other words, (a) the clock pulse selection method, as shown in FIG. 1, selects and derives a clock pulse of a frequency corresponding to the operated key from the clock pulse generator 12 via the selector 11 according to the operation of the key 10. The waveform memory 14 is addressed by the output of the counter 13 to obtain a sample value output 15 according to the time series. However, in this method, the number of types of cycles of the clock pulses of the pulse generator 12 is required to be the same as the number of keys, and the clock pulse generator 12 not only becomes large-scale, but also the counter 13 becomes large-scale. However, in the case of time-division operation, an even larger scale is required, and in other words, it is extremely difficult to generate multiple tones. Incidentally, this method is employed in musical instruments described in the above-mentioned US Pat. No. 3,515,792 and others. In the frequency number addition method, as shown in FIG. The frequency number is read out and added repeatedly in the arithmetic unit 23, and the output of the arithmetic unit 23 is used to store the waveform memory 24 as a sample value output 25 according to the address time series.
This is what you get.
しかし、この方式においては、周波数ナンバを繰返して
加算する演算器23の構成は通常16ビット〜20ビッ
トを必要とし、規模が大きくなるば゛かりでなく複雑化
の度合も増す。また、特に充分な周波数精度を得るため
に、周波数ナンバメモリ22や演算器23における加算
器、レジスタなどのビット数を大きくとる必要があり前
述の傾向を助長する。尚、この方式は米国特許第374
3755号に記載されている。この発明は、上記従来技
術の欠点を除去しようとして成されたものであり、簡単
な構成で繰返し周期の異なる周期波形を単一の波形メモ
リから読み出すことのできる電子楽器を提供することを
目的とする。However, in this method, the configuration of the arithmetic unit 23 that repeatedly adds frequency numbers usually requires 16 to 20 bits, and not only does the scale increase, but the degree of complexity also increases. Furthermore, in order to obtain particularly sufficient frequency accuracy, it is necessary to increase the number of bits in the frequency number memory 22 and the adders, registers, etc. in the arithmetic unit 23, which aggravates the above-mentioned tendency. This method is described in U.S. Patent No. 374.
No. 3755. The present invention was made in an attempt to eliminate the drawbacks of the above-mentioned prior art, and an object of the present invention is to provide an electronic musical instrument that can read out periodic waveforms with different repetition periods from a single waveform memory with a simple configuration. do.
この目的を達成するために、この発明では楽音波形とな
る関数の各関数値を各アドレスに記憶する波形メモリと
、この波形メモリの各アドレスに対応して当該アドレス
と次回に読み出すべきアドレスとの差分すなわちアドレ
ス変化分に関する値を各音名毎にそれぞれ記憶するデイ
レクトリメモリ(DirectOrymemOry)と
)アトゝI//<′信号の現在値に対応して前記波形メ
モリの記憶内容を読み出すとともに、このアドレス信号
の現在値および発生すべき楽音の音名に対応して前記デ
イレクトリメモリを読み出す読み出し手段と、前記アド
レス信号の現在値とこの現在値に対応して前記デイレク
トリメモリから読み出された前記差分に関する値とから
前記アドレス信号の次の現在値を演算して求め、これを
前記読み出し手段に供給するアドレス信号演算手段とを
具えて前記波形メモリから読出された関数値に基づいて
楽音を発生するようにしている。In order to achieve this object, the present invention includes a waveform memory that stores each function value of a function that becomes a musical sound waveform at each address, and a corresponding address and an address to be read next time corresponding to each address of this waveform memory. A directory memory (DirectOrymemOry) that stores values related to differences, that is, address changes for each pitch name, and a directory memory (DirectOrymemOry) that stores values related to differences, that is, address changes, for each note name. reading means for reading out the directory memory in accordance with the current value of the signal and the note name of the musical tone to be generated; and address signal calculation means for calculating the next current value of the address signal from the value and supplying the same to the reading means, and generating a musical tone based on the function value read from the waveform memory. I have to.
以下、添付図面に従つてこの発明の実施例を説明する。Embodiments of the present invention will be described below with reference to the accompanying drawings.
※※実施例 1第
3図はこの発明の実施例を示すものであり、単音のみを
発生し得る電子楽器の楽音波形発生部分の構成100を
示したもので、その他の構成要素(DA変換器、音色回
路、増幅器など)は従米知られている全てのものを適用
することができる。※※Embodiment 1 Fig. 3 shows an embodiment of the present invention, and shows the configuration 100 of the musical waveform generation section of an electronic musical instrument that can generate only a single note, and other components (DA converter). , timbre circuit, amplifier, etc.) can be applied to all known methods.
この実施例の概略を述べると、鍵盤101を操作するこ
とによりキーアドレスデコーダ102の出力が、マスタ
発振器105で作動するオクターブクロック発生器10
4のセレクタ103を駆動するとともに、またデイレク
トリメモリ107のセレクタ106を駆動する。セレク
タ106を介して出力されるデイレクトリメモリ107
の内容は加算器108、ゲート109、アドレスレジス
タ110を介して波形メモリ112をアドレスする一方
、アドレスレジスタ110の内容はゲート111を介し
て加算器108及びテイレクトリメモリ107に帰還さ
れる。尚、ゲート109,111を1駆動するのがセレ
クタ103の出力である。次に、主要な構成要素につい
て説明しつつこの実施例の構成及び動作の詳細を明らか
にする。To outline this embodiment, when the keyboard 101 is operated, the output of the key address decoder 102 is output to the octave clock generator 10 which is operated by the master oscillator 105.
4 and also drives the selector 106 of the directory memory 107. Directory memory 107 output via selector 106
The contents of address register 112 are fed back through adder 108, gate 109, and address register 110 to waveform memory 112, while the contents of address register 110 are fed back to adder 108 and directory memory 107 through gate 111. Note that it is the output of the selector 103 that drives the gates 109 and 111 by 1. Next, the details of the configuration and operation of this embodiment will be clarified while explaining the main components.
先づ、デイレクトリメモリ107について説明するが、
これに先立ち音階の各音名間の周波数比並びに周期など
の関係をF音を基準とした場合について考察する。ここ
で、第1表の目欄に示される各音名の相対的近似周期の
うち最大値1024(F音)に対応して1024のアド
レスを有する波形メモリを構成して、このうち同表目欄
に示すような各音名の相対的近似周期に対応した個数の
アドレスだけを読むようにすれば、すなわち各音名のF
音に対する周期差(第1表…欄)の数だけのアドレスを
読まずにとばすようにすれば、所定の各音名に対応した
周期をもつ楽音を得ることができる。First, the directory memory 107 will be explained.
Prior to this, a case will be considered in which the relationship between the frequency ratio and period between each note name of the scale is based on the F note. Here, a waveform memory having 1024 addresses corresponding to the maximum value 1024 (F note) of the relative approximation periods of each note name shown in the column of Table 1 is configured, and If you read only the number of addresses corresponding to the relative approximation period of each note name as shown in the column, that is, the F of each note name.
By skipping as many addresses as the number of period differences for notes (column . . . in Table 1) without reading, it is possible to obtain a musical tone having a period corresponding to each predetermined note name.
以上のような考えに基づいて構成されたのが、この発明
に係るデイレクトリメモ1月OTであり、第2表に示す
ような内容を有する。The directory memo January OT according to the present invention is constructed based on the above idea, and has the contents as shown in Table 2.
すなわち、12音平均律に対応して0〜11の12の音
名系列を有し、音名系列番号11番のF音(第2表)に
おける音名系列番号及び音名の関係は第1表のものと同
様である)に関しては、o1番から1023番までの1
024個のアドレスについてのビツトは全でo″を記憶
させる。In other words, there are 12 pitch name series from 0 to 11 corresponding to the 12-tone equal temperament, and the relationship between the pitch name series number and pitch name for the F note (Table 2) with pitch name series number 11 is as follows. (same as those in the table), 1 from o1 to 1023
The bits for 024 addresses store a total of o''.
ここで、ビツドo’’はアドレスを1つ進めるべき旨を
知らせる情報(指標)である。また、音名系列番号10
番のF#音に関しては、アドレス番号順にゞ 0000
10・・・・・・・・・・・・・・・01002と10
24個のビツトを記憶させる。ここで、この系列にはF
#音のF音に対する周期差57(第1表(ホ)欄)に対
応して57個のビツトS1″を含む。すなわち、ビツP
11″は次のアドレスを読みとばす(すなわちアドレス
を2つ進める)べき旨を知らせる情報(指標)である。
同様にして、12番目の音名系列番号0番のE音に至る
まで相対周期差(第1表((1)欄)で示された数のビ
ッPl7を記憶させてテイレクトリメモリが構成される
。尚、ビットS1″は次のアドレスを読みとばすべき旨
を知らせる情報であるから、デイレクトリメモリの中で
ビツP1″が連続して記憶されていることはない。実際
には、デイレクトリメモリ107は例えばMOS素子等
によるリードオンリメモリ(ROM)によつて構成する
ことができる。Here, bit o'' is information (indicator) informing that the address should be advanced by one. Also, note name series number 10
Regarding the number F# sound, in order of address number ゞ 0000
10・・・・・・・・・・・・01002 and 10
Store 24 bits. Here, this series has F
Contains 57 bits S1'' corresponding to the period difference 57 between the # note and the F note (column (e) in Table 1). In other words, the bit P
11'' is information (indicator) informing that the next address should be skipped (that is, advance two addresses).
In the same way, the directory memory is configured by storing the relative period difference (the number of bits Pl7 shown in Table 1 (column (1)) up to the E note of the 12th note sequence number 0. Note that bit S1'' is information that informs that the next address should be skipped, so bit P1'' is not stored consecutively in the directory memory.In reality, the bit P1'' is not stored consecutively in the directory memory For example, it can be configured by a read-only memory (ROM) using a MOS device or the like.
このように構成したテイレクトリメモリ107は、鍵盤
101の操作した鍵に対するノートコードNC(キーア
ドレス)をキーアドレスデコーダ102で読み出してセ
レクタ106を駆動し、デイレクトリメモリ107の各
音名系列別の出力のうち前記操作した鍵に対応する音名
系列の出力を選択して取り出す。In the directory memory 107 configured in this way, the key address decoder 102 reads the note code NC (key address) corresponding to the operated key on the keyboard 101 and drives the selector 106, so that the directory memory 107 outputs each note name series separately. Among them, the output of the pitch name series corresponding to the operated key is selected and extracted.
ここで、セレクタ106を駆動するキーアドレスデコー
ダ102は、音名を示すノートコードNCと、オクター
ブを示すオクターブコード0Cとの2種のコードを出力
し、オクターブコード0Cはセレクタ103を駆動して
後に説明するオクターブクロツク発生器104を作動さ
せる。Here, the key address decoder 102 that drives the selector 106 outputs two types of codes: a note code NC indicating the note name and an octave code 0C indicating the octave. The octave clock generator 104, which will be described, is activated.
また、このデコーダ102は押鍵の瞬間においてアドレ
スレジスタ110を全て「O」にクリアするためのクリ
ア信号CSを出力する(図中デコーダ102とレジスタ
110の(※)は結線される)。尚、オクターブコード
0C及びノートコードNCは、それぞれ3ビツト及び4
ビツトの情報をもつて、それぞれのオクターブ及び音名
に対応させておけばよい。例えば、第3表に示すように
、オクターブ数を順次(000)、(001)、(01
0)、・・・・・・・・・・・・・・・、(110)の
ように表示し、音名を′F″音からSE″音までの12
音を順次、第4表に示すように、(1011)、(10
10)、(1001)、・・・・・・・・・・・・・・
・、(0000)のように表示する。Further, the decoder 102 outputs a clear signal CS for clearing all the address registers 110 to "O" at the moment the key is pressed (the (*) of the decoder 102 and the register 110 in the figure are connected). Note that the octave code 0C and note code NC are 3 bits and 4 bits, respectively.
It is sufficient to have bit information to correspond to each octave and pitch name. For example, as shown in Table 3, the number of octaves is sequentially (000), (001), (01
0), ......, (110), and the note name is 12 from 'F' to SE'.
As shown in Table 4, the sounds are sequentially (1011), (10
10), (1001), ・・・・・・・・・・・・・・・
, (0000).
ここで、例えばF6音は、上記のオクターブコード(0
00)及びノートコード(1011)で決定される。加
算器108は、セレクタ106を介して伝送されるデイ
レクトリメモリ107の内容と、ゲート111を介して
伝送されるアドレスレジスタ110の内容(アドレス番
号)とを加え合わせ、更にアドレスを1つ進めるための
情報「1」を加えたものを、ゲート109を介してアド
レスレジスタ110に送出する。Here, for example, the F6 note is the octave code (0
00) and note code (1011). The adder 108 adds the contents of the directory memory 107 transmitted via the selector 106 and the contents (address number) of the address register 110 transmitted via the gate 111, and adds the contents of the directory memory 107 transmitted via the selector 106 to the contents (address number) of the address register 110 transmitted via the gate 111. The information to which "1" is added is sent to the address register 110 via the gate 109.
ここで、加算器108が自動的に情報「1」を加えるの
は、デイレクトリメモリ107からの信号がゞ0″であ
る場合にアドレスを1つ進めるためである。アドレスレ
ジスタ110は、10ビットで入力を構成してデイレク
トリメモリ107の1024個のアドレスの内容を読み
出し、下位の7ビツトを波形メモリ112のアドレス信
号として出力する。Here, the reason why the adder 108 automatically adds the information "1" is to advance the address by one when the signal from the directory memory 107 is "0".The address register 110 has 10 bits. It constitutes an input, reads out the contents of 1024 addresses in the directory memory 107, and outputs the lower 7 bits as an address signal for the waveform memory 112.
波形メモリ112は、O番から127番まで128個の
アドレスを有するメモリで、そのアドレス指定は、アド
レスレジスタ110によるアドレス指定(10ビツト)
の下位7ビツトによつて行なわれる。従つてアドレスデ
ータがO〜1023まで変化する場合に波形メモリ11
2の内容は8回繰返して読み出されることになる。すな
わち、外部からみればO〜1023のアドレスを持ち、
内部で同じ波形が8回繰返して記憶されているメモリと
等価である。この波形メモl月12の形式はデイジタル
メモリとしてもよい。ゲート109,111は、セレク
タ103を介して送出されるオクターブクロック発生器
104のクロツクパルスによつて駆動され、クロツクパ
ルスがゞオン7のときゲート111を開き、クロックパ
ルスがゞオフ2のときゲート109を開くようにし、ゲ
ート109とゲート111は交互に開閉する。The waveform memory 112 is a memory having 128 addresses from number O to number 127, and its address is specified by the address register 110 (10 bits).
This is done using the lower 7 bits of the bit. Therefore, when the address data changes from 0 to 1023, the waveform memory 11
The contents of 2 will be read out repeatedly 8 times. In other words, from the outside, it has an address of 0 to 1023,
This is equivalent to a memory in which the same waveform is stored repeatedly eight times. The format of this waveform memory 12 may be a digital memory. Gates 109 and 111 are driven by clock pulses from octave clock generator 104 sent through selector 103, opening gate 111 when the clock pulse is on 7 and opening gate 109 when the clock pulse is off 2. The gate 109 and the gate 111 are opened and closed alternately.
オクターブクロツク発生器104は、例えば73鍵の鍵
盤楽器において、6オクターブ+1音のそれぞれに対応
するオクターブ系列番号0番から6番までの7種のクロ
ツクパルスCPO−CP6を出力する。The octave clock generator 104 outputs seven types of clock pulses CPO-CP6 with octave sequence numbers 0 to 6 corresponding to each of 6 octaves + 1 note in a 73-key keyboard instrument, for example.
これら7種のクロツクパルスCPO〜CP6の周波数F
。−F6は互いに2n倍の関係にあり、マスタ発振器1
05の周波数を基に適宜一分周器によつて所定の周波数
を得るようにする。すなわち、F6(−2f5)〉F5
(−2f4)〉F4(=2f3)〉F3(2f2)〉F
2(−2f1)〉f1(=2f0)〉FOであり、周波
数F。−F6に対応する周期をT。−T6と表示すれば
大小関係はT。>T1〉T2〉T3〉T4〉T5〉T6
である。従つて、例えば、第3表及び第4表に示すよう
に、オクタープ系列番号0番はF。−F1音までに対応
して必要なクロツクパルスCPOを出力し、系列番号1
番はF1〜F2音までに対応して必要なクロツクパルス
CPlを出力し、以下同様にして、オクターブ系列番号
6番はF6〜E7音までに対応して必要なクロツクパル
スCP6を出力するように構成する。尚、オクターブク
ロツクの系列の選択Gζ操作した鍵に対応してキーアド
レスデコーダ102から出力されるオクターブコード0
Cによつて行なう。Frequency F of these seven types of clock pulses CPO to CP6
. −F6 are 2n times larger than each other, and the master oscillator 1
Based on the frequency of 05, a predetermined frequency is obtained by an appropriate one-frequency divider. That is, F6(-2f5)>F5
(-2f4)〉F4(=2f3)〉F3(2f2)〉F
2(-2f1)>f1(=2f0)>FO, and the frequency F. −T is the period corresponding to F6. If you display -T6, the size relationship is T. >T1>T2>T3>T4>T5>T6
It is. Therefore, for example, as shown in Tables 3 and 4, octave series number 0 is F. - Outputs the necessary clock pulse CPO corresponding to the F1 sound, and outputs the sequence number 1.
The octave sequence number 6 outputs the necessary clock pulse CPl corresponding to F1 to F2 notes, and in the same way, the octave sequence number 6 outputs the necessary clock pulse CP6 corresponding to F6 to E7 notes. . Note that the octave code 0 output from the key address decoder 102 corresponds to the key operated by the selected octave clock series Gζ.
Do it by C.
以上において、この発明の実施例の構成及び動作の概要
を説明したが、次に具体例としてF6音、F5音、及び
E7音を鍵盤101で押鍵し、これらの楽音を波形メモ
リ112から読み出す様子を説明する。Above, an overview of the configuration and operation of the embodiment of the present invention has been explained.Next, as a specific example, note F6, note F5, and note E7 are pressed on the keyboard 101, and these musical tones are read from the waveform memory 112. Explain the situation.
(イ) F6音を押鍵した場合
セレクタ103,106によつて、オクターブクロツク
発生器104の6番目の系列のクロツクパルスCP6.
及びデイレクトリメモリ107の音名系列番号11番が
選択される。(b) When the F6 note is pressed, the selectors 103 and 106 select the sixth series of clock pulses CP6. of the octave clock generator 104.
And pitch name series number 11 in directory memory 107 is selected.
アドレスレジスタ110の内容は押鍵の瞬間においてキ
ーアドレスデコーダ102のクリア信号CSによつて全
て「O」にされるから、先ず波形メモリ112のアドレ
スOの内容が出力される。次に、クロツクパルスCP6
がオンになるとゲート111が開きアドレスレジスタ1
10の内容であるアドレスOが加算器108に転送され
ると共に、アドレスOの信号の到来でデイレクトリメモ
リ107の音名系列11番のアドレスOの内容が加算器
108に送出される。ここで、デイレクトリメモリ10
7のアドレスOの内容はゞ0″であるから加算器108
の出力は「1」になる。続いて、クロックパルスCP6
がオフになるとゲート109が開き加算器108の出力
「1」がアドレスレジスタ110に入力されて、波形メ
モリ112のアドレス1の内容が出力される。更に、ク
ロツクパルスCP6の次の周期のゞオン7でアドレスレ
ジスタ110の内容であるアドレス1が加算器108に
転送されると共に、アドレス1の信号の到来でデイレク
トリメモリ107のアドレス1の内容が加算器108に
送出される。ここで、デイレクトリメモリのアドレス1
の内容は′O″であるから、加算器108の出力は「2
」となる。次に、クロツクパルスCP6のゞオフ2で加
算器108の出力「2」がアドレスレジスタ110に入
力されて波形メモリ112のアドレス2の内?が出力さ
れる。こうして、クロツクパルスCP6によつて波形メ
モI川12は順次アドレスされるが、ディレクトリメモ
1川07の1024個のアドレスの内容は全てSO″で
あるため、波形メモリ112のアドレスの内容は全て読
み出される。このため、デイレクトリメモリ107の1
024個のアドレスを読む間に8波(=?)が形成され
出力される。この様子を示すのが第4図イであり、同図
ハはピツトタイムのスケールである。Since the contents of the address register 110 are all set to "O" by the clear signal CS of the key address decoder 102 at the moment of key depression, the contents of the address O of the waveform memory 112 are first output. Next, clock pulse CP6
When turned on, gate 111 opens and address register 1
10 is transferred to the adder 108, and upon arrival of the address O signal, the contents of the address O of the pitch name series No. 11 in the directory memory 107 are sent to the adder 108. Here, directory memory 10
Since the content of address O of 7 is ゞ0'', adder 108
The output of will be "1". Subsequently, clock pulse CP6
When the adder 108 is turned off, the gate 109 is opened, the output "1" of the adder 108 is inputted to the address register 110, and the contents of the address 1 of the waveform memory 112 are outputted. Further, at turn 7 of the next cycle of the clock pulse CP6, address 1, which is the content of the address register 110, is transferred to the adder 108, and upon arrival of the address 1 signal, the content of address 1 of the directory memory 107 is transferred to the adder 108. 108. Here, directory memory address 1
Since the content of is 'O'', the output of adder 108 is '2
”. Next, when the clock pulse CP6 turns off 2, the output "2" of the adder 108 is input to the address register 110, and the output "2" of the adder 108 is inputted to the address register 110, so that the output "2" of the adder 108 is inputted into the address register 110. is output. In this way, the waveform memo I river 12 is sequentially addressed by the clock pulse CP6, but since the contents of the 1024 addresses in the directory memo 1 river 07 are all SO'', all the contents of the addresses in the waveform memory 112 are read out. .For this reason, 1 of the directory memory 107
Eight waves (=?) are formed and output while reading 024 addresses. Figure 4A shows this situation, and Figure 4C shows the pit time scale.
また、この場合の周期T(F6)は、T(F6)=?T
6一128T6となる。(ロ)F5音を押鍵した場合
クロツクパルスはオクターブ系列の5番目のパルスCP
5が選択され、デイレクトリメモリ107は同じく音名
系列番号11番が選択される。Also, the period T(F6) in this case is T(F6)=? T
6-128T6. (b) If you press the F5 note, the clock pulse is the 5th pulse CP in the octave series.
5 is selected, and pitch name series number 11 is also selected in the directory memory 107.
このことからも分かるように、クロツクパルスの周期が
異なる以外は、前述(イ)項で説明したと同様に動作す
る。As can be seen from this, the operation is the same as that described in section (a) above, except that the period of the clock pulse is different.
ここで、クロツクパルスCP5の周期T3は、T5=2
T6であるから、F5音について得られる出力波形の周
期T(F5)は、T(F5)=128T5=2T(F6
)となる。すなわち、F6音の2倍の周期の波形が得ら
れる。(ハ)E7音を押鍵した場合
セレクタ103,106によつて、オクターブクロック
発生器104の6番目の系列のクロツクパルスCP6、
及びデイレクトリメモリ107の音名系列番号0番が選
択される。Here, the period T3 of the clock pulse CP5 is T5=2
T6, the period T(F5) of the output waveform obtained for the F5 sound is T(F5)=128T5=2T(F6
). That is, a waveform with a period twice that of the F6 tone is obtained. (c) When the E7 note is pressed, the selectors 103 and 106 select the clock pulse CP6 of the sixth series of the octave clock generator 104,
Then, pitch name series number 0 in the directory memory 107 is selected.
先づ、波形メモリ112のアドレスOの内容が出力され
る様子については前遭イ)項で説明したと同様である。First, the manner in which the contents of address O of the waveform memory 112 are output is the same as described in the previous section (a).
また、デイレクトリメモリ107のアドレスの内容が′
0″である場合についても同様である。しかし、ディレ
クトリメモリ107の音名系列0番はアドレスの内容と
して481個のゞ 1″を含んでいる。ここで、波形メ
モリ112のアドレスがアドレスレジスタ110によつ
て行なわれ、このレジスタ110の内容がmとなり、デ
イレクトリメモリ107のアドレスmの内容がS11″
である場合について説明する。Also, the contents of the address in the directory memory 107 are '
The same applies to the case where the number is 0''. However, the pitch name series No. 0 in the directory memory 107 includes 481 ゞ1'' as the contents of the address. Here, the address of the waveform memory 112 is performed by the address register 110, the contents of this register 110 become m, and the contents of the address m of the directory memory 107 become S11''.
A case will be explained below.
アドレスレジスタ110の出力によつて波形メモl川1
2のアドレスmの内容が出力されると共に、このアドレ
スmの信号は加算器108に転送され、更にこの信号で
デイレクトリメモリ107の音名系列0番のアドレスm
の内容が加算器108に送出される。ここで、デイレク
トリメモリ107のアドレスmの内容は″′ 1″であ
るから加算器108の出力は、アドレスmにメモリ10
7の内容ゞ1″を加え更に加算器108の動作で「1」
を加えて、結局[m+2」となる。従つて、クロツクパ
ルスCPOがオフになつてゲート109が開き加算器1
08の出力「m+2」がアドレスレジスタ110に入力
されて、波形メモリ112のアドレスm+2の内容が出
力される。これからも分かるように、デイレクトリメモ
リ107のアドレスmの内容がS1″であつたことで波
形メモリ112のアドレスm+1は読みとばされ、次の
アドレスm+2が読まれることとなる。以下同様にして
、テイレクトリメモリ107のアドレスの内容によつて
、波形メモリ112の或るアドレスを読み、また或るア
ドレスを読みとばして楽音波形を得る。The output of the address register 110 allows the waveform memory 1
At the same time, the contents of the address m of No. 2 are output, and the signal of this address m is transferred to the adder 108, and furthermore, this signal is used to output the address m of the pitch name series No. 0 of the directory memory 107.
The contents of are sent to adder 108. Here, since the content of the address m of the directory memory 107 is "'1", the output of the adder 108 is stored in the memory 10 at the address m.
Add 1'' to the contents of 7 and further add 1 to 1 by the operation of adder 108.
In the end, it becomes [m+2]. Therefore, the clock pulse CPO is turned off and the gate 109 is opened.
The output "m+2" of 08 is input to the address register 110, and the contents of address m+2 of the waveform memory 112 are output. As can be seen from this, since the content of address m in the directory memory 107 is S1'', address m+1 in the waveform memory 112 is skipped and the next address m+2 is read. In the same manner, Depending on the content of the address in the directory memory 107, a certain address in the waveform memory 112 is read or a certain address is skipped to obtain a musical tone waveform.
すなわち、デイレクトリ107の音名系列番号0番は内
容が′1″のアドレスが481個あるから実質的には5
43個の有効アドレスを有することになる。In other words, note name series number 0 in directory 107 has 481 addresses with the content '1', so there are actually 5 addresses.
It will have 43 valid addresses.
従つて、このとき得られる波形の周期T(E7)は、T
(E7)=?T6=?T(F6)となる(第4図口)。Therefore, the period T(E7) of the waveform obtained at this time is T
(E7)=? T6=? It becomes T (F6) (Figure 4 exit).
この値は、12音平均律でF6音を基準としたときより
−1.77セントずれた音となる。また、もしE6音を
押鍵すれば、E7音の場合のクロツクパルスCP6のか
わりにクロツクパルスCP5が選択されるから1オクタ
ーブ下がつた周期の波形が生成される。同様にして、他
の音名についてもデイレクトリメモ1川07の各音名系
列の中の′1 ″の数に応じて平均律に近似した周期の
波形が生成され、オクターブ関係についても所定のクロ
ツクパルスの選択によつて周期が2倍、4倍、8倍と変
化することにより全ての音階音が得られる。尚、第1表
(へ)欄に示されているように、各音(F音〜E音)の
平均率音階からのピツチずれはすべて±2セント以内で
あるが、各音(F音〜E音)のピツチをこの状態から+
0.5セント高く設定するようにすれば、各音(F音〜
E音)の平均率音階からのピッチずれは、第1表(ト)
欄に示すようにほぼ±1セント以内となる。これはマス
タ発振器105の周波数を変化させることにより容易に
実現できる。また、F音では波形の標本点数が1周期1
28点であるのに対して、E音では1周期で約68点に
しかならない。しかし、68点の標本数は楽音波形を形
成するに充分な数であり楽音としての聴感上の差は問題
とならない。実施例
第5図はこの発明の他の実施例を示すものであり、実施
例1の単音電子楽器と異なり複音を発音し得る電子楽器
の構成を示している。This value is a tone that is -1.77 cents off from the F6 note in 12-tone equal temperament. Furthermore, if the E6 note is pressed, the clock pulse CP5 is selected instead of the clock pulse CP6 for the E7 note, so a waveform with a cycle one octave lower is generated. Similarly, for other note names, waveforms with a period approximating equal temperament are generated according to the number of ``1'' in each note name series in directory memo 1 river 07, and for octave relationships, a predetermined clock pulse is generated. By selecting , all scale tones can be obtained by changing the period to 2 times, 4 times, and 8 times.As shown in the column (f) of Table 1, each note (F note) All pitch deviations from the average rate scale for notes (from notes F to E) are within ±2 cents, but if the pitch of each note (from notes F to E) is changed from this state to +
If you set it 0.5 cent higher, each note (F note ~
The pitch deviation of the E note) from the average rate scale is shown in Table 1 (G).
As shown in the column, it is approximately within ±1 cent. This can be easily achieved by changing the frequency of master oscillator 105. In addition, for F sound, the number of sample points of the waveform is 1 period 1
While the number of points is 28, the number of points for the E note is only about 68 in one cycle. However, the number of samples of 68 points is sufficient to form a musical sound waveform, and the difference in audibility as a musical sound is not a problem. Embodiment FIG. 5 shows another embodiment of the present invention, and shows the configuration of an electronic musical instrument that can produce multiple tones, unlike the single-tone electronic musical instrument of Embodiment 1.
この実施例においても、実施例1で説明したと同様のデ
イレクトリメモリ505と波形メモリ507とを具えて
いる。This embodiment also includes a directory memory 505 and a waveform memory 507 similar to those described in the first embodiment.
しかし、更に、これらのデイレクトリメモリ505や波
形メモリ507を時分割で多重動作を行なわせるため、
最大同時発音数分(例えば、12音分)のステージを有
するシストレジスタ502と、時分割でアドレスの制御
を行うメモリ・アクセス・コントローラ504を具えて
いる。以下、主要な構成要素について説明しつつこの実
施例の構成及び動作の概要を明らかにする。However, in order to perform multiple operations on the directory memory 505 and waveform memory 507 in a time-division manner,
It includes a register 502 having stages for the maximum number of simultaneous sounds (for example, 12 notes), and a memory access controller 504 that controls addresses in a time-sharing manner. The outline of the configuration and operation of this embodiment will be clarified below while explaining the main components.
シフトレジスタ502は、最大発音数分のステージを有
し、各ステージはビジービツトメモリ(Busybit
memOry)、オクターブ コードメモリ(0cta
vec0demem0ry)、ノートコードメモリ(N
OtecOdememOry)、タイムカウントメモリ
(TimecOuntmemOry)、及びアドレスメ
モリ(AddressmemOry)の5つのメモリか
ら構成されている。このようなレジスタ502の各メモ
リについては、例えば特願昭5080308号明細書、
特願昭50−84205号明細書において音源レジスタ
として類似のものが説明されているが、以下簡単に説明
する。尚、第5図においては、説明の簡単のためにシフ
トレジスタ502の最終段を符号503をもつてメモリ
アクセスコントローラ504の内部に図示してあるが、
これは本質的な問題ではない。要は、上記各種のメモリ
からのデータがコントローラ504に送出されればよい
。ビジービットBSは、1ビツトをもつて表示され、当
該ステージが発音中の鍵に割り当てられているか否かを
示す。The shift register 502 has stages for the maximum number of sounds, and each stage has a busy bit memory (Busybit memory).
memOry), octave code memory (0cta
vec0demem0ry), note code memory (N
It consists of five memories: OtecOdememOry), time count memory (TimecOuntmemOry), and address memory (AddressmemOry). Regarding each memory of such register 502, for example, Japanese Patent Application No. 5080308,
A similar sound source register is described in Japanese Patent Application No. 50-84205, and will be briefly described below. In addition, in FIG. 5, the final stage of the shift register 502 is shown with reference numeral 503 inside the memory access controller 504 for ease of explanation.
This is not an essential problem. In short, data from the various types of memories mentioned above need only be sent to the controller 504. The busy bit BS is displayed as 1 bit and indicates whether the relevant stage is assigned to the key that is currently being sounded.
また、この出力をもつて波形メモリ507に後続するゲ
ート508を制御し、ビジービツトBSがS1″(0N
1すなわち発音中の鍵が割り当てられている)であれば
、波形メモリ507のデータを送出し、ビジービツトB
Sが′O″(0FF、すなわち当該ステージに割り当て
がない)であればデータを送出しないようにする。オク
ターブコード0C及びノートコードNCは、それぞれ3
ビツト及び4ビツトをもつて表示され、割り当てられた
鍵のコードを示す。このうち、ノートコードNCがセレ
クタ506を介してデイレクトメモリ505からの読み
出しを行う。タイムカウントビツトTCは、7ビツトを
もつて表示され第3図の実施例で説明したオクターブク
ロック発生器104と等価な機能を有し、当該メモリの
アドレスを更新するか否かを判断するために用いる。こ
のタイムカウントビツトTCは後述するように、メモリ
アクセスコントローラ504内においてメモリアクセス
コントローラ504を駆動するクロツクパルスの1周期
で1カウントずつカウントアツプし、オクターブコード
をデコードした信号Q1とタイムカウント出力に1を加
えた信号Q2とが一致したときにクリアされる。アドレ
スメモリAMは、10ビツトをもつて構成され、次回に
読み出すべきメモリアドレスを示す。このアドレスビツ
トは、タイムカウントビツトTC及びオクターブコード
0Cの内容に従つてコントローラ504を通過する際に
更新されるかされないかが決定される。以上に説明した
ような内容を持つシフトレジスタ502は、キーアサイ
ナ501によつて各ステージへの発音中の鍵の割り当て
及び送出が制御される。This output also controls the gate 508 following the waveform memory 507, so that the busy bit BS is set to S1'' (0N
1 (that is, the currently sounding key is assigned), the data in the waveform memory 507 is sent and the busy bit B is
If S is 'O'' (0FF, that is, there is no assignment to the relevant stage), data will not be sent.Octave code 0C and note code NC are each 3.
It is displayed in bits and 4 bits and indicates the code of the assigned key. Among these, the note code NC is read from the direct memory 505 via the selector 506. The time count bit TC is displayed as 7 bits and has a function equivalent to the octave clock generator 104 described in the embodiment of FIG. 3, and is used to determine whether or not to update the address of the memory. use As will be described later, this time count bit TC counts up by 1 in each cycle of the clock pulse that drives the memory access controller 504 in the memory access controller 504, and sets 1 to the signal Q1 obtained by decoding the octave code and the time count output. It is cleared when the added signal Q2 matches. Address memory AM consists of 10 bits and indicates the memory address to be read next time. Whether or not this address bit is updated as it passes through controller 504 is determined according to the contents of time count bit TC and octave code 0C. The shift register 502 having the contents as described above is controlled by the key assigner 501 to assign and send keys to each stage during sound generation.
メモリアクセスコントローラ504において主要な働き
をするのは、デコーダ510、比較器512、及び2っ
のセレクタ513,514である。The main functions in the memory access controller 504 are a decoder 510, a comparator 512, and two selectors 513 and 514.
デコーダ510は、オクターブコード0Cを、例えば第
5表に示す2進化10進信号として読み出す。デコーダ
510から読み出された信号Q1は比較器512で、タ
イムカウント出力に「1」を加えた加算器511の出力
Q2と比較される。The decoder 510 reads out the octave code 0C as a binary coded decimal signal shown in Table 5, for example. The signal Q1 read from the decoder 510 is compared in the comparator 512 with the output Q2 of the adder 511, which is the time count output plus "1".
この比較器512は、出力信号Q1及び出力信号Q2の
値が一致すればセレクタ513,514を駆動信号Q3
によつて駆動し、セレクタ513,514の入力のうち
図面中右側のデータ信号S2,T2をキーアサイナ50
1に転送し、信号Ql,Q2の値が一致しないときは各
セレクタ513,514の入力のうち図面中左側のデー
タ信号Sl,Tlをキーアサイナ501に転送する。こ
こで、データ信号S1は、キーアサイナ501、シフト
レジスタ502、メモリアクセスコントローラ504を
駆動するクロツクパルス(図示せず)の1周期で1カウ
ントづつ増加するタイムカウントメモリTCの内容に、
加算器511で[1」を加えた内容を有し、データ信号
S2は、データを更新するために別途与えられる内容が
全て「0」の信号(以下、オールゼロ信号とする)で、
タイムカウントメモリTCをクリアする。また、データ
信号T1は波形メモリ507をアドレスするためのアド
レス信号Q4であり、データ信号T2は波形メモリ50
7を読み出すための現在のアドレスQ4でデイレクトリ
メモリ505をアドレスし、セレクタ506を介して得
られるデイレクトリメモリ505の内容Q5と現在のア
ドレスQ4とを加算器515で加算し、更に「1」を加
えた内容を有する。すなわち;加算器515は、実施例
1(第3図)において説明した加算器108と同様の動
作によつてデータ信号T2を出力する。今までの説明か
らも明らかであるが、比較器512の入力Ql,Q2が
一致した場合には、セレクタ513の側からはオールゼ
ロ信号S2がクロツク各周期毎に出力され、タイムカウ
ントメモリTCの内容も「O」である。一方、この場合
、セレクタ514の側からは加算器515の出力が、キ
ーアサイナ501を介してシフトレジスタ502の最終
段503のアドレスメモリーAMにフイードバツクされ
て記憶される。このようなフイードバツクはクロツクの
各周期毎に行なわれるから、実施例1で説明したと同様
にディレクトリメモリ505がアドレスされ、また波形
メモリ507のデータが出力されることになる。また、
比較器512の入力Q,,Q2が一致しない場合には、
クロツクの各周期毎に加算器511の出力Q2が1づつ
増加し、デコーダ510の出力Q1と一致するまで出力
信号Q2がレジスタ502の最終段503のタイムカウ
ントメモリTCにフイードバツクされる。この間、セレ
クタ514はアドレスメモリAMの同一のアドレス値を
出力し続ける。従つて、第5表に示すオクターブコード
が(001)である場合には、オクターブコードが(0
00)である場合に2倍のタイムカウントを必要とし、
波形メモリ507から読み出す波形は2倍の周期となり
1オクターブ下の楽音が発音される。同様にして、第5
表のオクターブコードが(010)→(110)と進む
につれて、発音される楽音は1オクターブづつ下がる。
以上の動作の様子を第6図のパラレルフローチャートで
示した。以上において、この発明の第2の実施例の構成
及び動作を説明したが、次に具体例としてゞF6″音、
′F5″音、″E7″音を鍵盤500で押鍵し、これら
の楽音を波形メモリ507から読み出す様子を説明する
。This comparator 512 controls the selectors 513 and 514 by driving the drive signal Q3 if the values of the output signal Q1 and the output signal Q2 match.
of the inputs of the selectors 513 and 514, the data signals S2 and T2 on the right side in the drawing are sent to the key assigner 50.
1, and when the values of the signals Ql and Q2 do not match, the data signals Sl and Tl on the left side in the drawing among the inputs of the respective selectors 513 and 514 are transferred to the key assigner 501. Here, the data signal S1 corresponds to the contents of the time count memory TC, which increases by one count per cycle of a clock pulse (not shown) that drives the key assigner 501, shift register 502, and memory access controller 504.
The data signal S2 has a content in which [1] is added by the adder 511, and the data signal S2 is a signal in which the content separately given to update the data is all "0" (hereinafter referred to as an all-zero signal).
Clear time count memory TC. Further, the data signal T1 is an address signal Q4 for addressing the waveform memory 507, and the data signal T2 is an address signal Q4 for addressing the waveform memory 507.
The directory memory 505 is addressed with the current address Q4 for reading 7, the content Q5 of the directory memory 505 obtained via the selector 506 and the current address Q4 are added by the adder 515, and "1" is added. It has the following content. That is, the adder 515 outputs the data signal T2 by the same operation as the adder 108 described in the first embodiment (FIG. 3). As is clear from the above explanation, when the inputs Ql and Q2 of the comparator 512 match, the selector 513 outputs an all-zero signal S2 for each clock cycle, and the contents of the time count memory TC are output from the selector 513. is also "O". On the other hand, in this case, the output of the adder 515 is fed back from the selector 514 side via the key assigner 501 to the address memory AM of the final stage 503 of the shift register 502 and is stored therein. Since such feedback is performed every clock cycle, the directory memory 505 is addressed and the data in the waveform memory 507 is output in the same manner as described in the first embodiment. Also,
If the inputs Q, , Q2 of the comparator 512 do not match,
The output Q2 of the adder 511 increases by 1 every cycle of the clock, and the output signal Q2 is fed back to the time count memory TC in the final stage 503 of the register 502 until it matches the output Q1 of the decoder 510. During this time, selector 514 continues to output the same address value of address memory AM. Therefore, when the octave code shown in Table 5 is (001), the octave code is (001).
00), double the time count is required,
The waveform read from the waveform memory 507 has twice the period, and a tone one octave lower is produced. Similarly, the fifth
As the octave code in the table progresses from (010) to (110), the musical tones produced go down one octave at a time.
The above operation is shown in the parallel flowchart of FIG. The configuration and operation of the second embodiment of the present invention have been explained above, and next, as a specific example,
The manner in which the 'F5' and 'E7' tones are pressed on the keyboard 500 and these musical tones are read from the waveform memory 507 will be described.
尚、オクターブコード、ノートコード、及び楽音周波数
についての相互の関係は実施例1で説明したと同様の符
号で対応関係をつけるものとする(例えば、第3表及び
第4表を参照)。(イ) F6音を押鍵した場合
押鍵によつてキーアサイナ501がシフトレジスタ50
2中の空いているステージ(ビジービツトBSがゞ0f
のステージを探し、当該ステージの各メモリに以下の第
6表のデータを書き込む。Note that the mutual relationships among octave chords, note chords, and musical tone frequencies are indicated by the same symbols as explained in Example 1 (for example, see Tables 3 and 4). (b) When the F6 sound is pressed, the key assigner 501 changes to the shift register 50 depending on the key pressed.
Empty stage in 2 (busy bit BS is 0f)
, and write the data in Table 6 below into each memory of the stage.
第6表のデータが順次シフトされて最終段503に到達
すると、アドレスメモリAMの出力Q4によつて波形メ
モリ507のアドレスOの内容が出力される。When the data in Table 6 is sequentially shifted and reaches the final stage 503, the contents of the address O of the waveform memory 507 are outputted by the output Q4 of the address memory AM.
このとき、デコーダ510出力Q1は(0000001
)であり、また加算器511の出力Q2は(00000
01)であり、比較器512の入力は一致している。At this time, the decoder 510 output Q1 is (0000001
), and the output Q2 of the adder 511 is (00000
01), and the inputs of the comparator 512 match.
このため、セレクタ513はオールゼロ信号S2をタイ
ムカウントメモリTCへ送る。一方、ノートコードNC
の出力によつてセレクタ506が駆動されデイレクトリ
メモリ505の音名系列番号11番が選択されている。Therefore, the selector 513 sends the all zero signal S2 to the time count memory TC. On the other hand, note code NC
The selector 506 is driven by the output, and note name series number 11 in the directory memory 505 is selected.
従つて、セレクタ514は、比較器512の出力Q2に
より加算器515の出力T2(現存のアドレス+デイレ
クトリ値+1)をアドレスメモリAMにフイールドバツ
クして新アドレスとする。このときの最終段503の内
容は次の第7表のよようである。従つて、アドレスメモ
リAMの出力Q4(=1)によつて波形メモリ507の
アドレス1の内容が出力される。Therefore, the selector 514 uses the output Q2 of the comparator 512 to field back the output T2 (existing address+directory value+1) of the adder 515 to the address memory AM, and uses it as a new address. The contents of the final stage 503 at this time are as shown in Table 7 below. Therefore, the contents of address 1 of waveform memory 507 are output by output Q4 (=1) of address memory AM.
このようにして、デイレクトリ、メモリ505の音名系
列番号11番の1024個のアドレスの内容は全てゞ0
″であるから、クロツク毎にアドレスメモリの出力は[
1」づつ増加し、波形メモリ507の全てのアドレスの
内容を順次全て読み出す。In this way, the contents of the 1024 addresses of note series number 11 in the directory memory 505 are all set to 0.
'', the address memory output for each clock is [
1'' at a time, and the contents of all addresses in the waveform memory 507 are sequentially read out.
このようにして、実施例1で述べたと同様のF6音の楽
音波形を形成することができる。1) F5音を押鍵し
た場合
押鍵によつて先づ空のステージに記憶される内容は次の
第8表のようである。In this way, the musical sound waveform of the F6 note similar to that described in the first embodiment can be formed. 1) When the F5 note is pressed, the contents stored in the empty stage according to the key press are as shown in Table 8 below.
従つて、第8表のデータが順次シフトされて最終段に到
達すると、アドレスメモリAMの出力Q4によつて波形
メモリ507のアドレスOの内容が出力される。Therefore, when the data in Table 8 is sequentially shifted and reaches the final stage, the contents of address O of waveform memory 507 are outputted by output Q4 of address memory AM.
このとき、デコーダ510の出力Q1は(000001
0)であり、また加算器511の出力は(000000
1)であり、比較器512の入力は一致しない。At this time, the output Q1 of the decoder 510 is (000001
0), and the output of the adder 511 is (000000
1), and the inputs of comparator 512 do not match.
このため、セレクタ513は加算器511の出力S1(
=Q2)をタイムカウントメモリTCヘフィードバック
する。一方、セレクタ514はアドレスメモリAMの出
力T1(=Q4:アドレス0)をアドレスメモリAMに
フイードバツクする。尚、セレクタ514は入力信号T
2を選択しないので加算器515の内容は出力されない
。このときの最終段503の内容は次の第9表のようで
ある。これらのデータがメモリアクセスコントローラ5
04に転送されると、デコーダ510の出力Q1は(0
000010)であり、また加算器511の出力も(0
000010)であり、比較器512の入力は一致する
。Therefore, the selector 513 outputs the output S1 of the adder 511 (
=Q2) is fed back to the time count memory TC. On the other hand, the selector 514 feeds back the output T1 (=Q4: address 0) of the address memory AM to the address memory AM. Note that the selector 514 receives the input signal T
2 is not selected, the contents of adder 515 are not output. The contents of the final stage 503 at this time are as shown in Table 9 below. These data are sent to the memory access controller 5.
04, the output Q1 of the decoder 510 is (0
000010), and the output of adder 511 is also (0
000010), and the inputs of comparator 512 match.
このためセレクタ513はオールゼロ信号S2をタイム
カウントメモリTCへ送る。以下、同様にして最終段5
03のデータがメモリアクセスコントローラ504、キ
ーアサイナ501の間を2回通過する度毎にアドレスメ
モリAMの内容がS11″づつ増加し、波形メモリ50
7は同一のアドレスの内容を2度づつ出力していく。Therefore, the selector 513 sends the all zero signal S2 to the time count memory TC. Below, in the same way, the final stage 5
Each time the data of 03 passes between the memory access controller 504 and the key assigner 501 twice, the contents of the address memory AM increase by S11'', and the contents of the waveform memory 50
7 outputs the contents of the same address twice.
このため、F5音の場合にはF6音に比べて2倍の周期
を有する波形が形成される。ヒう E7音を押鍵した場
合押鍵によつて先づ空のステージに記憶される内容は次
の第10表のようである。Therefore, in the case of the F5 note, a waveform having a period twice as long as that of the F6 note is formed. When the E7 note is pressed, the contents that are first stored in the empty stage by pressing the key are as shown in Table 10 below.
この場合は、F6音の場合と同様にメモリアクセスコン
トローラ504をデータ7が通過する度毎にアドレスメ
モリAMの内容を更新する。In this case, as in the case of the F6 sound, the contents of the address memory AM are updated every time data 7 passes through the memory access controller 504.
しかし、E音に対応するデイレクトリメモリ505の音
名系列番号0番には481個のS1′!を含むため、デ
イレクトリメモリ505のアドレスの内容がSO″のと
きはアドレスメモリAMの内容がゞ 1″増加し、ディ
レクトリメモリ505のアドレスの内容がゞ1″のとき
はアドレスメモリAMの内容を′2 ″増加させる。こ
のように更新されるアドレスメモリAMをもつて波形メ
モリ507をアドレスしてE7音の波形が読み出される
。ちなみに、E1音を押鍵した場合には、E1音のオク
ターブコードは(110)であるから、シフトレジスタ
502のデータがメモリアクセスコントローラ504を
32回通過する度毎に、アドレスメモリAMの内容が更
新される。However, the note name series number 0 in the directory memory 505 corresponding to the E note contains 481 S1'! Therefore, when the contents of the address in the directory memory 505 are SO'', the contents of the address memory AM are increased by 1'', and when the contents of the address in the directory memory 505 are 1'', the contents of the address memory AM are increased by 1''. Increase by 2″. The waveform memory 507 is addressed using the address memory AM updated in this manner, and the waveform of the E7 sound is read out. By the way, when the E1 note is pressed, the octave code of the E1 note is (110), so every time the data in the shift register 502 passes through the memory access controller 504 32 times, the contents of the address memory AM are changed. Updated.
こうして得られる波形は、E6音の場合の32倍(−2
6)の周期を有する。同様にして、この実施例によれば
、他の音階についてもデイレクトリメモリ505及びメ
モリアクセスコントローラ504の動作によつて平均律
に近似した周期の楽音波形を生成することができる。The waveform obtained in this way is 32 times (-2
6). Similarly, according to this embodiment, musical sound waveforms with a period approximating equal temperament can be generated for other scales by operating the directory memory 505 and memory access controller 504.
従つて、キーアサイナ501、シフトレジスタ502、
メモリアクセスコントローラ504などを駆動するクロ
ツクの周期を適当に選ぷことにより複音の同時発音を達
成することができる。尚、以上の実施例1及び実施例に
おいて、デイレクトリメモリの内容は、各メモリ素子を
1ビツトとしてゞ 0″及びゞ1″を記入数値としたが
、他の記入方法によつてもかまわない。Therefore, the key assigner 501, the shift register 502,
By appropriately selecting the cycle of the clock that drives the memory access controller 504, etc., it is possible to simultaneously produce multiple tones. In the first and second embodiments described above, the contents of the directory memory are written using 0'' and 1'', with each memory element being 1 bit, but other writing methods may be used.
例えば、各2ビットとしてゞO″ ゞ1〃、S2″、S
3〃を記入数値として、ゞ2″の場合2個のアドレスを
読みとばし、S3″の場合3個のアドレスを読みとばす
ようにしてもよい。要するに、各音名の間において波形
メモリの有効アドレスの数が第1表(ニ)欄の相対的近
似周期と一致していれば同じ結果が得られる。また、上
記各実施例においては波形メモリに必要な楽音波形その
ものを記憶させているかに説明したが、波形メモリに正
弦波及び三角波などを用意して、その出力をもつて楽音
の構成要素とし、これらの出力を変形したり、重ね合わ
せるなどして楽音を構成してもよい。For example, each 2 bits are ゞO'' ゞ1〃, S2'', S
With 3〃 as the entered numerical value, two addresses may be skipped in the case of も2'', and three addresses may be skipped in the case of S3''. In short, the same result can be obtained if the number of valid addresses in the waveform memory between each pitch name matches the relative approximation period in column (d) of Table 1. Furthermore, in each of the above embodiments, it has been explained that the necessary musical sound waveform itself is stored in the waveform memory, but it is also possible to prepare a sine wave, a triangular wave, etc. in the waveform memory, and use the output as the component of the musical tone. A musical tone may be constructed by transforming or superimposing these outputs.
この明細書ではこの様な楽音の構成要素をも含めて、単
に「楽音」と称していることは前述した。この発明によ
れば、以上のように、波形メモリ用のアドレスを利用し
て次回に読み出したいアトレスとの差分に関する値を記
憶しているメモリを読み出し、現在のアドレスと前記差
分とを加算して新たなアドレスとすることにより、簡単
な構成で複雑な周期波形を発生させることができ、しか
も複音生成も可能な高性能の電子楽器を提供することが
できる。As mentioned above, in this specification, the constituent elements of such musical tones are simply referred to as "musical tones." According to the present invention, as described above, the address for the waveform memory is used to read the memory that stores the value related to the difference from the address to be read next time, and the current address and the difference are added. By using a new address, it is possible to provide a high-performance electronic musical instrument that can generate complex periodic waveforms with a simple configuration and can also generate multiple tones.
尚、この発明に係る電子楽器はLSI化が可能であるた
め小型化、低廉化を達成するに有効である。Furthermore, since the electronic musical instrument according to the present invention can be implemented as an LSI, it is effective in achieving miniaturization and cost reduction.
第1図及び第2図は従来の波形メモリのアドレス方法を
説明するための系統図、第3図はこの発明の第1の実施
例の系統図、第4図はこの発明の実施例によつて得られ
る波形図、第5図はこの発明の第2の実施例の系統図、
第6図は第5図の実施例の動作を説明するパラレルフロ
ーチヤートである。
101,500・・・・・・鍵盤、102・・・・・・
キーアドレスデコーダ、103,106・・゜゜゜゜セ
レクタ、104・・・・・・オクターブクロツク発生器
、105・・・・・・マスタ発振器、107,505・
・・・・・デイレクトリメモリ、108,511,51
5・・・・・・加算器、109,111,508・・・
・・・ゲート、 110・・・・・・アドレスレジスタ
、112,507・・・・・・波形メモリ、501・・
−・・・キーアサイナ、502・・・・・・シフトレジ
スタ、503・・・・・・レジスタ502の最終段、5
04・・・・・・メモリアクセスコントローラ、506
,513,514・・・・・・セレクタ、507・・・
・・・波形メモリ、510・・・・・・デコーダ、51
2・゜゜・・・上黴器。1 and 2 are system diagrams for explaining a conventional waveform memory addressing method, FIG. 3 is a system diagram of a first embodiment of this invention, and FIG. 4 is a system diagram according to an embodiment of this invention. FIG. 5 is a system diagram of the second embodiment of the present invention.
FIG. 6 is a parallel flowchart illustrating the operation of the embodiment shown in FIG. 101,500...Keyboard, 102...
Key address decoder, 103, 106...゜゜゜゜selector, 104...Octave clock generator, 105...Master oscillator, 107,505...
...Directory memory, 108,511,51
5... Adder, 109, 111, 508...
... Gate, 110 ... Address register, 112, 507 ... Waveform memory, 501 ...
-...Key assigner, 502...Shift register, 503...Final stage of register 502, 5
04...Memory access controller, 506
, 513, 514...Selector, 507...
... Waveform memory, 510 ... Decoder, 51
2.゜゜... Upper mold.
Claims (1)
する波形メモリと、この波形メモリの各アドレスに対応
して当該アドレスと次回に読み出すべきアドレスとの差
分に関する値を各音名毎にそれぞれ記憶するデイレクト
リメモリと、アドレス信号の現在値に対応して前記波形
メモリの記憶内容を読み出すとともに、このアドレス信
号の現在値および発生すべき楽音の音名に対応して前記
ディレクトリメモリを読み出す読み出し手段と、前記ア
ドレス信号の現在値とこの現在値に対応して前記ディレ
クトリメモリから読み出された前記差分に関する値とか
ら前記アドレス信号の次の現在値を演算して求め、これ
を前記読み出し手段に供給するアドレス信号演算手段と
を具え、前記波形メモリから読出された関数値に基づい
て楽音を発生するようにして成る電子楽器。1 A waveform memory that stores each function value related to a musical sound waveform at each address, and corresponding to each address of this waveform memory, a value related to the difference between the address and the address to be read next time is stored for each note name. a directory memory for storing, and a reading means for reading the stored contents of the waveform memory in accordance with the current value of the address signal, and reading out the directory memory in accordance with the current value of the address signal and the note name of the musical tone to be generated. and calculating the next current value of the address signal from the current value of the address signal and the value related to the difference read from the directory memory corresponding to this current value, and transmitting this to the reading means. an address signal calculation means for supplying an address signal, the electronic musical instrument is configured to generate musical tones based on the function value read from the waveform memory.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP50144808A JPS592037B2 (en) | 1975-12-04 | 1975-12-04 | Denshigatsuki |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP50144808A JPS592037B2 (en) | 1975-12-04 | 1975-12-04 | Denshigatsuki |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5268406A JPS5268406A (en) | 1977-06-07 |
| JPS592037B2 true JPS592037B2 (en) | 1984-01-17 |
Family
ID=15370933
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP50144808A Expired JPS592037B2 (en) | 1975-12-04 | 1975-12-04 | Denshigatsuki |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS592037B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5955493A (en) * | 1982-09-24 | 1984-03-30 | カシオ計算機株式会社 | Frequency controller for electronic musical instrument |
-
1975
- 1975-12-04 JP JP50144808A patent/JPS592037B2/en not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5268406A (en) | 1977-06-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4077294A (en) | Electronic musical instrument having transient musical effects | |
| US4114497A (en) | Electronic musical instrument having a coupler effect | |
| USRE30736E (en) | Tone wave generator in electronic musical instrument | |
| US4448104A (en) | Electronic apparatus having a tone generating function | |
| US4160399A (en) | Automatic sequence generator for a polyphonic tone synthesizer | |
| US4166405A (en) | Electronic musical instrument | |
| JPH0760310B2 (en) | Touch control device | |
| GB1604547A (en) | Synthesiser | |
| US5117727A (en) | Tone pitch changing device for selecting and storing groups of pitches based on their temperament | |
| US4283983A (en) | Electronic musical instrument | |
| JPH0160839B2 (en) | ||
| US4186637A (en) | Tone generating system for electronic musical instrument | |
| GB2091020A (en) | Synchro start device for electronic musical instruments | |
| US3903775A (en) | Electronic musical instrument | |
| JPS592037B2 (en) | Denshigatsuki | |
| US4178825A (en) | Musical tone synthesizer for generating a marimba effect | |
| USRE31648E (en) | System for generating tone source waveshapes | |
| US4294154A (en) | Music tone generating system | |
| JPS6139680B2 (en) | ||
| GB2091470A (en) | Electronic Musical Instrument | |
| JPS58114098A (en) | Electronic musical instrument | |
| JP2591160B2 (en) | Waveform selection and synthesis device | |
| JPS5839B2 (en) | electronic musical instruments | |
| JPH02173698A (en) | Electronic musical instrument | |
| JPH045692A (en) | Electronic musical instrument |