KR950006029B1 - Musical sound waveform generator - Google Patents

Musical sound waveform generator Download PDF

Info

Publication number
KR950006029B1
KR950006029B1 KR1019910009251A KR910009251A KR950006029B1 KR 950006029 B1 KR950006029 B1 KR 950006029B1 KR 1019910009251 A KR1019910009251 A KR 1019910009251A KR 910009251 A KR910009251 A KR 910009251A KR 950006029 B1 KR950006029 B1 KR 950006029B1
Authority
KR
South Korea
Prior art keywords
signal
sound
output
program
sound source
Prior art date
Application number
KR1019910009251A
Other languages
Korean (ko)
Other versions
KR920001423A (en
Inventor
류지 우사미
고우스께 시바
고우이찌로우 다이고
가즈오 오구라
쥰 호소다
Original Assignee
가시오 게이상기 가부시끼가이샤
가시오 가즈오
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2171217A external-priority patent/JP3035991B2/en
Priority claimed from JP2171216A external-priority patent/JP3010693B2/en
Application filed by 가시오 게이상기 가부시끼가이샤, 가시오 가즈오 filed Critical 가시오 게이상기 가부시끼가이샤
Publication of KR920001423A publication Critical patent/KR920001423A/en
Application granted granted Critical
Publication of KR950006029B1 publication Critical patent/KR950006029B1/en

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • G10H7/004Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof with one or more auxiliary processor in addition to the main processing unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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
    • G10H5/00Instruments in which the tones are generated by means of electronic generators
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • G10H1/04Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • G10H1/04Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation
    • G10H1/053Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only
    • G10H1/057Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only by envelope-forming circuits
    • G10H1/0575Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only by envelope-forming circuits using a data store from which the envelope is synthesized
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/18Selecting circuits
    • G10H1/183Channel-assigning means for polyphonic instruments
    • G10H1/185Channel-assigning means for polyphonic instruments associated with key multiplexing
    • G10H1/186Microprocessor-controlled keyboard and assigning means
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • G10H7/006Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof using two or more algorithms of different types to generate tones, e.g. according to tone color or to processor workload
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/541Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
    • G10H2250/571Waveform compression, adapted for music synthesisers, sound banks or wavetables
    • G10H2250/591DPCM [delta pulse code modulation]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/541Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
    • G10H2250/621Waveform interpolation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

내용 없음.No content.

Description

악음쥬파형 발생장치Acoustic Frequency Generator

제1도는 본 발명에 의한 실시예의 전체 구성도.1 is an overall configuration diagram of an embodiment according to the present invention.

제2도는 마스터 CPU의 내부 구성도.2 is an internal configuration diagram of the master CPU.

제3도는 슬레이브 CPU의 내부 구성도.3 is an internal configuration diagram of a slave CPU.

제4도(a)-(b)도는 본 실시예의 전체동작 플로챠트.4 (a)-(b) are an overall operation flowchart of this embodiment.

제5도는 메인동작 플로챠트와 인터럽트 처리와의 관계를 도시하는 개념도.5 is a conceptual diagram showing a relationship between a main operation flowchart and interrupt processing.

제6(a)도는 종래의 D/A변환기부의 구성도.6 (a) is a block diagram of a conventional D / A converter unit.

제6(b)도는 본 실시예에 의한 D/A변환기부의 구성도.6 (b) is a block diagram of a D / A converter section according to the present embodiment.

제7도는 D/A변환에 있어서 타이밍 챠트.7 is a timing chart for D / A conversion.

제8(a)도는 기능키와 건반키의 배치도.8 (a) is a layout view of a function key and a keyboard key.

제8(b)도는 건반키의 설명도.Fig. 8 (b) is an explanatory diagram of the keyboard keys.

제9도는 RAM상의 발음 채널별 기억 영역을 도시하는 도면.9 is a diagram showing a storage region for each pronunciation channel on a RAM.

제10도는 각 발음채널의 음원(音源)처리방식을 선택할때의 개념도.10 is a conceptual diagram when selecting a sound source processing method of each pronunciation channel.

제11도는 RAM상의 음원방식별의 데이터 포맷의 구성도.11 is a configuration diagram of a data format for each sound source method on a RAM.

제12도는 RAM상의 버퍼영역을 도시하는 도면.12 is a diagram showing a buffer area on a RAM.

제13도는 PCM방식에 의한 음원처리의 동작 플로챠트.13 is an operation flowchart of sound source processing by the PCM method.

제14도는 DPCM방식에 의한 음원처리의 동작 플로챠트.14 is an operation flowchart of sound source processing by the DPCM method.

제15(a), (b)도는 차분치 D와 현재 어드레스 AF를 이용하여 보간치 XQ를 구할 경우의 원리 설명도.15 (a) and 15 (b) are explanatory diagrams for calculating the interpolation value XQ using the difference value D and the current address AF.

제16(a)도는 FM방식에 의한 음원처리(그 1)의 동작 플로챠트.Fig. 16 (a) is an operational flowchart of the sound source processing (No. 1) by the FM system.

제16(b)도는 FM방식에 의한 음원처리(그 1)의 알고리듬을 도시하는 도면.16 (b) is a diagram showing an algorithm of sound source processing (No. 1) by the FM system.

제17(a)도는 TM방식에 의한 음원처리(그 1)의 동작 플로챠트.Fig. 17 (a) is an operational flowchart of sound source processing (No. 1) by the TM system.

제17(b)도는 TM방식에 의한 음원처리(그 1)의 알고리듬을 도시하는 도면.Fig. 17B is a diagram showing an algorithm of sound source processing (No. 1) by the TM system.

제18도는 변조방식에 있어서 알고리듬의 예를 도시한 도면.18 shows an example of an algorithm in the modulation scheme.

제19도는 FM방식에 의한 음원처리(그 2)의 동작 플로챠트제20도는 TM방식에 의한 음원처리(그 2)의 동작 플로챠트.FIG. 19 is an operational flowchart of the sound source processing (No. 2) by the FM system. FIG. 20 is an operational flowchart of the sound source processing (No. 2) by the TM method.

제21도는 변조방식의 제1개량예의 동작 플로챠트.21 is an operation flowchart of the first improvement example of the modulation method.

제22(a)도는 제1개량예에 따른 FM방식에 의한 오퍼레이터 1처리의 동작 플로챠트.Fig. 22A is an operational flowchart of operator 1 processing by the FM system according to the first improvement example.

제22(b)도는 제1개량예에 따른 FM방식에 의한 오퍼레이터 1처리의 1오퍼레이터당의 연산 알고리듬을 도시하는 도면.FIG. 22 (b) is a diagram showing a calculation algorithm per operator of one operator processing by the FM system according to the first improvement example. FIG.

제23(a)도는 제1개량예에 따른 TM방식에 의한 오퍼레이터 1처리의 동작 플로챠트.23 (a) is an operation flowchart of operator 1 processing by the TM method according to the first improvement example.

제23(b)도는 제1개량예에 따른 TM방식에 의한 오퍼레이터 1처리의 1오퍼레이터 당의 연산 알고리듬을 도시하는 도면.FIG. 23 (b) shows a calculation algorithm per operator in one operator processing by the TM method according to the first improvement example.

제24도는 제1개량예에 따른 알고리듬 처리의 동작 플로챠트.24 is an operation flowchart of an algorithm processing according to the first improvement example.

제25도는 변조방식의 제2개량예의 동작 플로챠트.25 is an operation flowchart of a second improvement example of the modulation method.

제26도는 제2개량예에 따른 알고리듬 처리의 동작 플로챠트.26 is an operational flowchart of an algorithm processing according to the second improvement example.

제27도는 기능 키의 일부의 배치도.27 is a layout view of a part of a function key;

제28(a), (b)도는 발음 채널으로의 음원 방식의 할당예를 도시한 도면.28 (a) and 28 (b) show examples of allocation of a sound source system to a pronunciation channel;

제29도는 기능 키 처리의 동작 플로챠트.29 is an operation flowchart of function key processing.

제30도는 압건시의 건반 키 처리의 제1실시예의 동작 플로챠트.30 is an operational flowchart of the first embodiment of keyboard key processing at the time of pressing.

제31도는 압건시의 건반 키 처리의 제2실시예의 동작 플로챠트.Fig. 31 is an operational flowchart of the second embodiment of keyboard key processing at the time of pressing.

제32도는 이건시의 건반 키 처리의 실시예의 동작 플로챠트.32 is an operational flowchart of an embodiment of keyboard key processing in this case.

본 발명은 악음파형 발생처리에 있어서 음원처리방식에 관한 것이다.The present invention relates to a sound source processing method in a sound wave generation process.

디지탈 신호 처리 기술과 LSI처리 기술의 발달에 의해 성능 좋은 다양한 전자악기가 실현되고 있다. 특히, 연주 정보에 기인하여 생성되는 입력신호에 변조를 가함으로써 여러가지로 변조된 파형을 얻어 악음파형으로서 출력하는 변조방식의 악음파형 발생장치를 가지는 전자악기의 등장이 프로.아마추어를 문제삼지 않고 악음인구의 대폭적인 증가에 공헌하고 있다.With the development of digital signal processing technology and LSI processing technology, various high-performance electronic musical instruments are realized. In particular, the emergence of electronic musical instruments having a modulated acoustic waveform generator which obtains variously modulated waveforms and outputs them as acoustic waveforms by applying modulation to an input signal generated due to performance information. Contributes to a significant increase.

전자악기의 악음파형 발생장치는 대량이며 또한 고속의 디지탈 연산이 필요하기 때문에, 종래는 필요로 하는 음원방식에 기인하는 악음 발생 알고리듬과 등가인 아키텍처(archiecture)를 하드웨어로 실현한 전용의 음원회로에 의해 구성되고 있다. 이와같은 음원회로에 의해, 변조방식에 기인하는 음원방식이 실현된다.Since the acoustic wave generator of an electronic musical instrument has a large amount and high-speed digital operation, it is conventionally used in a dedicated sound source circuit that realizes an architecture equivalent to the sound generation algorithm due to the sound source method required by hardware. It is comprised by. By such a sound source circuit, a sound source method resulting from the modulation method is realized.

상술한 바와 같이 음원회로는 어느 음원방식의 것도 그 회로규모가 크다. LSI화했을 경우, 변조용의 파형데이터등을 기억하는 메모리부분을 제외해도 범용의 데이터처리용의 마이크로프로세서의 2배 정도의 규모가 된다. 그 이유는 음원회로에 있어서는 각종 연주 정보에 기인하여 파형데이터를 액세스하기 위한 복잡한 어드레스 제어가 필요로 되기 때문이다. 또, 음원생성처리의 과정에서 얻어지는 중간적인 데이터를 일시적으로 유지하기 위한 레지스터등이 음원방식에 대응한 아키텍처로 도처에 배치될 필요가 있기 때문이다. 특히, 변조방식에는 악음발생의 알고리듬을 여러가지로 변경 가능한 것이 있으며, 그들에 대응한 하드웨어 구성도 필요로 되기 때문이다.As described above, the sound source circuit has a large circuit size for any sound source system. In the case of LSI, the size of the microprocessor for general-purpose data processing is about twice as large as the memory portion for storing the waveform data for modulation and the like. This is because the sound source circuit requires complicated address control for accessing waveform data due to various performance information. This is because a register or the like for temporarily holding intermediate data obtained in the process of sound source generation needs to be arranged everywhere with an architecture corresponding to the sound source method. In particular, the modulation method can change various algorithms of sound generation, and a hardware configuration corresponding to them is also required.

또한, 복수의 악음을 병렬하여 발음 가능한 폴리포닉 구성을 실현하기 위한, 음원처리를 시분할로 하드웨어적으로 행하기 위한 시프트 레지스터 등도 도처에 필요로 되기 때문이다.This is because a shift register or the like for performing sound source processing in hardware in time division for realizing a polyphonic configuration capable of sounding in parallel with a plurality of musical sounds is also required everywhere.

이상과 같이, 종래의 악음파형 발생장치는 음원방식에 대응한 전용의 음원회로에 의해 구성되고 있기 때문에, 하드웨어규모가 크게 되어 버리고, LSI로 실현했을 경우에 있어서 LSI칩 제조시의 원료에 대한 제품비율등의 점에 있어서, 제조단계에서의 코스트 업을 초래하고, 악음파형 발생장치의 대형화를 초래해 버린다는 문제점을 가지고 있다.As described above, since the conventional sound wave waveform generator is constituted by a dedicated sound source circuit corresponding to the sound source system, the hardware scale becomes large, and when the product is realized by LSI, it is a product for raw materials in manufacturing LSI chips. In terms of ratio and the like, there is a problem of causing a cost up in the manufacturing stage and causing an increase in the size of the acoustic wave generator.

또, 음원방식을 변경하고 싶은 경우, 폴리포닉수를 변경하고 싶은 경우 등에 있어서, 음원회로의 대폭적인 변경을 어쩔수 없이 하게 되고, 개발 단계에서의 코스트업을 초래해 버린다는 문제점을 가지고 있다.In addition, in the case where the sound source system is to be changed, the polyphonic number is to be changed, etc., a significant change of the sound source circuit is inevitably made, resulting in a cost up in the development stage.

또한, 종래의 악음파형 발생장치를 전자악기로서 실현하는 경우에는 연주 조작에 대응하는 연주정보에 음원회로로 처리 가능한 데이터를 생성하거나, 다른 악기와의 연주정보의 통신을 행하거나 하기 위한, 마이크로프로세서등에 의해 구성되는 제어회로가 필요가 된다. 그리고, 이와같은 제어회로에 있어서는 연주정보를 처리하기위한 연주 정보처리 프로그램외에, 음원회로에 연주정보에 대응한 데이터를 공급하기 위한 음원회로에 대응한 음원제어프로그램이 필요하게 되며, 게다가, 그 양쪽의 프로그램을 동기시켜서 동작시킬 필요가 있다. 이와같은 프로그램의 복잡성에서, 그 개발에 있어서 다대한 코스트업을 초래해 버린다는 문제점을 가지고 있다.In addition, when a conventional acoustic wave generator is realized as an electronic musical instrument, a microprocessor for generating data which can be processed by a sound source circuit in performance information corresponding to a performance operation, or performing performance information communication with other musical instruments. There is a need for a control circuit constituted by, for example. In addition, in such a control circuit, in addition to the performance information processing program for processing the performance information, a sound source control program corresponding to the sound source circuit for supplying data corresponding to the performance information to the sound source circuit is required. It is necessary to run the program in synchronization. In the complexity of such a program, there is a problem that it causes a large cost up in the development.

그 한편, 근년에 있어서는 범용의 데이터 처리를 행하기 위한 고성능인 마이크로프로세서가 많이 실현되고 있으며, 이와같이 마이크로프로세서를 사용하여 음원처리를 소프트적으로 행하는 악음파형 발생장치를 실현시키는 것도 생각된다. 그러나, 연주정보를 처리하기 위한 연주정보 처리를 실행하기 위한 음원처리 프로그램을 동기하여 동작시키기 위한 기술이 알려져 있지 않다. 특히, 음원방식에 의한 음원처리 프로그램에 있어서 처리시간이 변화하기 때문에, 생성된 악음 데이터를 D/A변환기로 출력하기 위한 복잡한 타이밍 제어프로그램이 필요로 되어 버린다. 이와같이, 음원처리를 단순하게 소프적으로 행하는 것만으로는 처리프로그램이 매우 복잡하게 되며, 처리속도 및 프로그램용량의 면에서 변조방식과 같은 고도인 음원방식의 처리를 할수 없다. 특히, 상술한 바와 같이, 변조 방식에는 악음발생의 알고리듬을 여러가지로 변경 가능하게 하는 것이 있지만, 이와같은 각 알고리듬에 대응하는 음원처리 프로그램을 마이크로프로세서에 개별로 가지게 하면, 프로그램용량의 점에서 불리하게 되며, 결국, 악음발생장치의 코스트업 및 대형화를 초래한다.On the other hand, in recent years, many high-performance microprocessors for performing general-purpose data processing have been realized, and thus it is conceivable to realize a sound wave waveform generating apparatus which softly performs sound source processing using the microprocessor. However, there is no known technique for synchronously operating a sound source processing program for executing performance information processing for processing performance information. In particular, since the processing time changes in the sound source processing program by the sound source method, a complicated timing control program for outputting the generated sound data to the D / A converter is required. As described above, simply performing the sound processing in a simple manner makes the processing program very complicated, and in terms of processing speed and program capacity, processing of a high sound source method such as a modulation method cannot be performed. In particular, as described above, the modulation scheme may allow various algorithms for sound generation, but it is disadvantageous in terms of program capacity if the microprocessor individually has a sound source processing program corresponding to each of these algorithms. This, in turn, leads to cost up and enlargement of the sound generating apparatus.

본 발명은 전용의 음원회로를 필요로 하지 않고, 마이크로프로세서의 프로그램제어에 의해 변조방식에 의한 고도인 음원처리를 가능하게하는 것을 목적으로 한다.The present invention does not require a dedicated sound source circuit, and an object thereof is to enable high-level sound source processing by a modulation method by program control of a microprocessor.

본 발명은 전용의 음원회로를 필요로 하지 않고, 마이크로프로세서의 프로그램제어에 의해 다양한 악음발생의 알고리듬으로 동작하는 변조방식에 의한 고도인 음원처리를 가능하게 하는 것은 다른 목적으로 한다.It is another object of the present invention to enable high-level sound source processing by a modulation method that operates with various algorithms for sound generation by program control of a microprocessor without requiring a dedicated sound source circuit.

본 발명의 제1상태에 의하면, 변조방식에 따른 음원처리 프로그램을 기억하는 기억수단과, 이 기억수단에 기억되고 있는 상기 음원처리 프로그램을 실행함으로써 변조방식의 처리프로세스를 갖고 악음신호를 발생하는 악음신호 발생수단과, 이 악음신호 발생수단에서 발생된 상기 악음신호를 일정한 출력 시간 간격으로 출력하는 악음신호 출력수단을 가지는 것을 특징으로 하는 악음파형 발생장치가 제공된다.According to the first state of the present invention, there is provided a memory means for storing a sound source processing program according to a modulation method, and a sound sound having a processing method of a modulation method by executing the sound source processing program stored in the memory means. There is provided a sound wave waveform generating apparatus, comprising: a signal generating means and a sound signal output means for outputting the sound signal generated by the sound signal generating means at a constant output time interval.

이 본 발명의 제1상태에 따른 악음파형 발생장치에 의하면, 변조방식에 따른 고도인 음원처리를 전용의 음원회로를 이용하지 않고 실현할수 있으며, 또한, 악음신호 출력수단의 움직임에 의해 악음신호의 출력레이트가 일정하게 유지되기 때문에 비뚤어짐없는 악음파형을 얻을수가 있다.According to the sound wave waveform generating apparatus according to the first state of the present invention, it is possible to realize the high-level sound source processing according to the modulation method without using a dedicated sound source circuit, and also, by the movement of the sound signal output means, Since the output rate is kept constant, it is possible to obtain a sound wave without distortion.

본 발명의 제2상태에 의하면, 연주정보를 처리하기 위한 연주정보처리 프로그램과, 악음신호를 얻기 위한 변조방식에 의한 음원처리 프로그램을 기억하는 프로그램 기억수단과, 상기 프로그램 기억수단의 어드레스를 제어하는 어드레스제어수단과, 상기 변조방식에서 악음신호를 생성하기 위한 필요한 악음생성 데이터를 기억하는 데이터 기억수단과, 연산처리수단과, 상기 어드레스 제어수단, 상기 데이터 기억수단 및 상기 연산처리수단을 제어하면서, 상기 프로그램 기억수단에 기억된 상기 연주정보처리 프로그램 또는 상기 음원처리 프로그램을 실행하는 수단이며, 통상시는 상기 연주정보처리 프로그램을 실행하여 상기 데이터 기억수단상의 악음생성 데이터를 제어하고, 소정시간 간격으로 상기 음원처리 프로그램에 제어를 옮기어 그것을 실행하고, 그 종료후에 다시 상기 연주정보처리 프로그램을 실행하는 수단이며, 상기 음원처리 프로그램의 실행시에, 상기 데이터 기억수단상의 악음생성데이터에 기인하여 상기 변조방식에서 악음신호를 생성하는 프로그램 실행수단과, 상기 프로그램 실행수단이 상기 음원처리 프로그램을 실행하여 얻어진 상기 악음신호를 유지하고, 그 유지된 악음신호를 일정한 출력시간 간격으로 출력하는 악음신호출력수단을 가지는 것을 특징으로하는 악음파형 발생장치가 제공된다.According to the second state of the present invention, there is provided a performance information processing program for processing performance information, program storage means for storing a sound source processing program by a modulation method for obtaining a sound signal, and an address for controlling the program storage means. Controlling address control means, data storage means for storing necessary sound generation data for generating a sound signal in said modulation method, arithmetic processing means, said address control means, said data storage means and said arithmetic processing means, Means for executing the performance information processing program or the sound source processing program stored in the program storage means, and normally executes the performance information processing program to control the sound generation data on the data storage means at predetermined time intervals. Transfer control to the sound source processing program and execute it And means for executing the performance information processing program again after the end thereof, and, when executing the sound source processing program, program execution means for generating a sound signal in the modulation method due to the sound generation data on the data storage means; And a sound signal generating means for retaining the sound signal obtained by executing the sound source processing program and outputting the retained sound signal at regular output time intervals. do.

이 본 발명의 제2상태에 따른 악음파형 발생장치에서는 프로그램 기억수단, 어드레스제어수단, 데이터기억수단, 연산처리수단 및 프로그램 실행수단은 범용의 마이크로프로세서와 같은 구성이며, 전용의 음원회로는 전혀 필요로 하지 않는다. 또, 악음신호출력수단은 범용의 마이크로프로세서와는 다른 구성이지만 악음파형 발생장치라는 범주에서는 범용적이다.In the sound wave waveform generating apparatus according to the second state of the present invention, the program storage means, the address control means, the data storage means, the arithmetic processing means, and the program execution means have the same configuration as a general-purpose microprocessor, and no dedicated sound source circuit is required. Do not The sound signal output means is different from the general-purpose microprocessor, but is general in the category of sound wave waveform generators.

이것에 의해, 악음파형 발생장치 전체의 회로 규모를 대폭으로 소형화할수가 있으며, LSI화한 경우등에 있어서도 통상의 마이크로프로세서의 제조기술이 같아 좋고, 칩의 원료에 대한 제품비율도 향상하기 때문에 제조비용을 대폭으로 저감시킬수가 있다.As a result, the circuit size of the entire acoustic wave generator can be significantly reduced, and even in the case of LSI, the manufacturing technology of the conventional microprocessor is the same, and the product ratio with respect to the raw material of the chip is also improved. It can be greatly reduced.

또한, 악음신호 출력수단은 간단한 래치회로로 구성할수 있기 때문에, 이 부분은 부가한 것에 의한 제조비용의 증가는 거의 없다.In addition, since the sound signal output means can be constituted by a simple latch circuit, the addition of this portion hardly increases the manufacturing cost.

또 변조방식을 예를 들면 위상변조방식과 주파수 변조방식으로 변경하고 싶은 경우, 폴리포닉수를 변경하고 싶은 경우등에 있어서, 프로그램 기억수단에 기억시키는 음원처리 프로그램을 변경하는 것만으로 대처할 수 있으며, 새로운 악음파형 발생장치의 개발비용을 대폭으로 감소시키는 것이 가능하게 되며, 사용자에 대해서도 예를 들면 ROM카드등에 의해 새로운 변조방식을 제공하는 것이 가능하게 된다.In addition, when the modulation method is to be changed to, for example, the phase modulation method and the frequency modulation method, or the polyphonic number is to be changed, it is possible to cope by simply changing the sound source processing program stored in the program storage means. It is possible to greatly reduce the development cost of the acoustic wave generator, and to provide a new modulation scheme to the user, for example, by a ROM card.

이상과 같은 작용을 가능하게 하는 것은 본 발명의 제2상태가 다음과같은 프로그램 아키텍처 및 데이터 아키텍처를 실현했기 때문이다.The above operation is possible because the second state of the present invention realizes the following program architecture and data architecture.

즉, 본 발명의 제2상태에서는 데이터 기억수단상에 변조방식으로 악음을 생성하기 위한 필요한 악음생성 데이터를 기억시키는 데이터 아키텍처를 실현하고 있다. 그리고, 연주정보처리 프로그램이 실현될 경우는 데이터 기억수단상의 악음생성데이터가 제어되고, 음원처리 프로그램이 이 실행될 경우는 데이터 기억수단에 악음생성데이터에 기인하여 악음신호가 생성된다. 이와같이 연주정보처리 프로그램과 음원처리 프로그램과의 사이에 데이터의 통신은, 데이터 기억수단상의 악음생성데이터를 통하여 행해지고, 각 프로그램에 있어서 데이터 기억수단에 대한 액세스는 상대의 프로그램의 실행상태에 일체 관계되지 않게 행하면 좋기 때문에, 실질적으로 양 프로그램을 독립한 모듈구성으로 할수가 있으며, 간단하고 또한 효율적인 프로그램구조로 할수가 있다.That is, in the second state of the present invention, a data architecture for storing sound generation data necessary for generating sound by modulation method on the data storage means is realized. When the performance information processing program is realized, the sound generation data on the data storage means is controlled, and when the sound source processing program is executed, the sound signal is generated in the data storage means due to the sound generation data. In this way, data is communicated between the performance information processing program and the sound source processing program through the sound generation data on the data storage means, and access to the data storage means in each program is not related to the execution state of the other program. Since it is possible to do so, practically both programs can be made into an independent module structure, and a simple and efficient program structure can be achieved.

상기 데이터 아키텍처에 가하여, 본 발명의 제2상태에서는, 통상시는 연주정보처리 프로그램을 실행하여, 예를 들면 건반키나 각종 설정 스위치의 주사, 데모(demo)연주제어 등을 행하고, 그것에 대하여 소정시간간격으로 음원처리 프로그램을 실행시키고, 그 처리가 끝났다면 다시 연주정보처리 프로그램으로 복귀한다는 프로그램 아키텍처를 실현하고 있다. 이것에 의해, 음원처리 프로그램은 예를 들면 인터럽트 제어수단에서의 소정시간간격으로 발생하는 인터럽트신호에 기인하여 강제적으로 연주정보처리 프로그램에 인터럽트하면 좋기 때문에, 연주정보프로그램과 음원처리 프로그램의 사이의 동기를 취할 필요는 없다.In addition to the data architecture, in the second state of the present invention, a performance information processing program is normally executed, for example, scanning of a keyboard key, various setting switches, demo playing control, and the like, for a predetermined time. A program architecture is realized in which sound source processing programs are executed at intervals, and when the processing is completed, the sound source processing program is returned to the performance information processing program. As a result, the sound source processing program may be forcibly interrupted to the performance information processing program due to an interrupt signal generated at a predetermined time interval in the interrupt control means, for example, so that the synchronization between the performance information program and the sound source processing program is performed. There is no need to take.

또한, 프로그램 실행수단이 음원처리 프로그램을 실행할 경우에는 변조방식의 종류 또는 변조방식에 있어서 악음생성 알고리듬의 선택율에 의해 처리시간이 변화하지만, 이 변화는 악음신호출력수단에 의한 모두 흡수할수가 있다. 따라서, 악음신호를 D/A변환기 등으로 출력하기 위한 복잡한 타이밍제어프로그램이 필요없게 된다.In addition, when the program executing means executes the sound source processing program, the processing time varies depending on the type of modulation method or the selectivity of the sound generation algorithm in the modulation method, but this change can be absorbed by the sound signal output means. Therefore, there is no need for a complicated timing control program for outputting the sound signal to the D / A converter or the like.

이상과 같이, 연주정보처리 프로그램과 음원처리 프로그램의 사이의 데이터의 링크를 데이터기억수단상의 악음생성데이터를 통하여 행한다는 데이터 아키텍처와, 연주정보처리 프로그램에 대하여 소정시간간격으로 음원처리 프로그램을 실행한다는 프로그램 아키텍처를 실현하고, 또한, 악음신호출력수단을 형성한 것에 의해, 범용 프로세서와 거의 같은 구성으로, 효율적인 프로그램제어에 기인하는 음원처리가 실현된다.As described above, the data architecture of linking data between the performance information processing program and the sound source processing program through the sound generation data on the data storage means, and executing the sound source processing program at a predetermined time interval with respect to the performance information processing program. By realizing the program architecture and providing the sound signal output means, the sound source processing resulting from the efficient program control can be realized with the configuration almost the same as that of the general-purpose processor.

본 발명의 제3상태에 의하면, 적어도 하나의 오퍼레이터 처리를 실행하기 위한 오퍼레이터처리 프로그램과 그 각 오퍼레이터 처리사이의 입출력관계를 결정하는 알고리듬처리를 실행하기 위한 알고리듬처리 프로그램을 가지는 변조방식에 따른 음원처리 프로그램을 기억하는 기억수단과, 상기 오퍼레이터처리 프로그램에 기인하는 오퍼레이터처리와 상기 알고리듬 처리프로그램에 기인하는 알고리듬 처리를 각각 독립으로 일괄해서 행함으로써 악음신호를 발생하는 악음신호발생수단과, 이 악음신호발생수단에 의해 발생된 악음신호를 일정한 출력시간간격으로 출력하는 악음신호 출력수단을 가지는 것을 특징으로 하는 악음파형 발생장치가 제공된다.According to the third state of the present invention, a sound source processing according to a modulation method having an operator processing program for executing at least one operator process and an algorithm processing program for executing an algorithm process for determining an input-output relationship between each operator process A storage means for storing a program, a sound signal signal generating means for generating a sound signal by performing a batch operation independently of the operator processing resulting from the operator processing program and the algorithm processing resulting from the algorithm processing program, and the sound signal generating There is provided a sound wave generator, characterized by having a sound signal output means for outputting a sound signal generated by the means at a constant output time interval.

본 발명의 제3상태에 관한 악음파형 발생장치에 의하면, 다량한 악음발생의 알고리듬으로 동작하는 고도한 음원처리를 전용의 음원회로를 이용하지 않고 실현할수 있으며, 또한 악음신호출력수단의 움직임에 의한 악음신호의 출력레이트가 일정하게 유지되기 때문에, 비뚤어짐이 없는 악음파형을 얻을수가 있다.According to the sound wave generator according to the third state of the present invention, it is possible to realize a high sound source processing operating by a large amount of sound sound generation algorithms without using a dedicated sound source circuit, and also by the movement of the sound signal output means. Since the output rate of the sound signal is kept constant, it is possible to obtain a sound wave waveform without distortion.

본 발명의 제4상태에 의하면, 연주정보를 처리하기 위한 연주정보처리 프로그램과, 악음신호를 얻기 위한 변조방식에 의한 음원처리 프로그램이고, 변조처리단위인 적어도 하나의 오퍼레이터처리가 일괄하여 실행된 후 또는 그 실행전에 그 각 오퍼레이터 처리사이의 각 입출력처리인 알고리듬 처리가 일괄하여 실행되는 처리구조를 가지는 음원처리 프로그램을 기억하는 프로그램 기억수단과, 상기 프로그램 기억수단의 어드레스를 제어하는 어드레스제어수단과, 상기 변조방식으로 악음신호를 생성하기 위해 필요한 악음생성 데이터를 기억하는 데이터 기억수단과, 연산처리 수단과, 상기 어드레스제어수단, 상기 데이터기억수단 및 상기 연산처리수단을 제어하면서 상기 프로그램 기억수단에 기억된 상기 연주정보처리 프로그램 또는 상기 음원처리 프로그램을 실행하는 수단이며, 통상시는 상기 연주정보처리 프로그램을 실행하여 상기 데이터 기억수단상의 악음생성데이터를 제어하고, 소정시간간격으로 상기 음원처리 프로그램에 제어를 옮기어 그것을 실행하고, 그 종료후에 다시 상기 연주정보 처리프로그램을 실행하는 수단이며, 상기 음원처리 프로그램의 실행시에 상기 데이터 기억수단상의 악음생성데이터에 기인하여 상기 변조방식으로 악음신호를 생성하는 프로그램 실행수단과, 상기 프로그램 실행수단이 상기 음원처리 프로그램을 실행하여 얻어진 상기 악음신호를 유지하고, 그 유지된 악음신호를 일정한 출력시간 간격으로 출력하는 악음신호 출력수단을 구비하는 것을 특징으로 하는 악음파형 발생장치가 제공된다.According to the fourth state of the present invention, a performance information processing program for processing performance information and a sound source processing program by a modulation method for obtaining a sound signal, and at least one operator process which is a modulation processing unit are collectively executed Or program storage means for storing a sound source processing program having a processing structure in which algorithm processing as input / output processing between each operator processing is executed before execution thereof, address control means for controlling an address of the program storage means; Data storage means for storing sound generation data necessary for generating a sound signal by the modulation method, arithmetic processing means, and storing in the program memory means while controlling the address control means, the data storage means and the arithmetic processing means. The performance information processing program or the sound source A program for executing sound information processing on the data storage means, transferring control to the sound source processing program at predetermined time intervals, and executing it. Means for executing the performance information processing program again; program execution means for generating a sound signal by the modulation method due to the sound generation data on the data storage means when the sound source processing program is executed; There is provided a sound wave waveform generating device, comprising: a sound signal output means for holding the sound signal obtained by executing the sound source processing program and outputting the held sound signal at regular output time intervals.

이 본 발명의 제4상태에 관한 악음파형 발생장치에서는 음원처리 프로그램의 아키텍처로서 변조처리단위인 적어도 하나의 오퍼레이터처리가 일괄하여 실행된 후 또는 그 실행전에, 그 각 오퍼레이터처리간의 각 입출력처리인 알고리듬처리가 일괄하여 실행되는 처리구조를 가진다. 통상은 하나의 오퍼레이터처리가 종료했다면 지정된 알고리듬에 의해 다음의 오퍼레이터로의 입출력 관계를 결정하여, 다음의 오퍼레이터처리를 행한다는 처리구조를 가지고 있기 때문에, 알고리듬이 다를때마다 오퍼레이터처리 부분도 포함하여 복수종류의 음원처리 프로그램을 용의하지 않으면 안된다. 이것에 대하여, 본 발명의 제4상태에 관한 악음파형 발생장치에서는 변조방식에 있어서 복수의 알고리듬 중에서 선택하여 음원처리를 행하는 경우라도 알고리듬 처리의 부분만을 복수 종류용의하고, 필요에 따라 그것을 절환하면 좋기 때문에 음원처리 프로그램을 매우 콤팩트한 것으로 할수가 있다.In the sound wave waveform generating apparatus according to the fourth state of the present invention, as an architecture of a sound source processing program, an algorithm that is each input / output process between each operator process after at least one operator process, which is a modulation processing unit, is executed collectively or before its execution. It has a processing structure in which processes are executed in a batch. Usually, if one operator process is completed, the algorithm has a processing structure that determines the input / output relation to the next operator by the specified algorithm and performs the next operator process. You must be willing to listen to some kind of sound processing program. On the other hand, in the acoustic wave generator according to the fourth state of the present invention, even when the sound source processing is performed by selecting among a plurality of algorithms in the modulation method, a plurality of types of algorithm processing parts can be used, and if necessary, they are switched. As a result, the sound source processing program can be made very compact.

[본 실시예의 개요][Summary of this embodiment]

우선, 본 실시예의 개요를 설명한다.First, the outline | summary of this embodiment is demonstrated.

제1도는 본 실시예의 전체 구성도이며, 외부메모리(116)이외는 1칩으로 구성되고, 그중의 마스터(master)와 슬레이브(slave)의 2개의 CPU(중앙연산제어장치)가 서로 정보를 교환하면서 악음작성을 위한 음원처리를 분담하여 행한다.FIG. 1 is an overall configuration diagram of the present embodiment, wherein the external memory 116 is constituted by one chip, and two CPUs (central operation controllers) of a master and a slave thereof exchange information with each other. In doing so, the sound source processing for music production is shared.

예를 들면 16채널의 폴리포닉의 경우, 8채널을 마스터CPU(101)에서 처리하고, 나머지 8채널은 슬레이브CPU(102)의 쪽에서 처리한다.For example, in the case of 16-channel polyphonic, eight channels are processed by the master CPU 101, and the remaining eight channels are processed by the slave CPU 102.

이 음원처리는 소프트웨어로 행해지지만, 연주의 경우, 발음채널마다 PCM이나 DPCM의 음원방식 및 FM이나 위상변조등의 변조방식에 의한 음원방식이 할당된다.This sound source processing is performed by software, but in the case of performance, a sound source method by a PCM or DPCM sound source method and a modulation method such as FM or phase modulation is assigned to each pronunciation channel.

이 음원방식은 특정의 악기음색, 예를 들면 트럼펫이라든가 튜바(tuba)등의 경우는 자동적으로 지정되지만, 다른 악기음색에서는 음원방색을 선택스위치로 선택할수 있으며, 또 연주의 음역이나 키 터치 등의 연주 강도에 따른 자동적으로 선택될 수 있다.This sound source method is automatically assigned to a specific instrument sound, for example trumpet or tuba.However, the sound source color can be selected using the selection switch for other instrument sounds. It can be selected automatically according to the playing strength.

그밖의, 예를 들면 1회의 압건으로 2채널에 동시에, 또한 다른 음원방식을 예를 들면 어택의 부분은 PCM방식으로, 지속부분을 FM방식으로 하도록 할당하는 것도 가능하다.In addition, for example, it is possible to assign two channels at the same time with a single taper, and another sound source method, for example, an attack part is a PCM method, and a sustain part is an FM method.

또한, 예를 들면 FM방식의 경우, 음원처리의 알고리듬에 따라 소프트웨어로 처리하는 것으로, 범용 CPU로 행하면 시간이 너무 걸리지만, 본 실시예에서는 그 점도 해결했다.For example, in the case of the FM system, processing is performed by software in accordance with an algorithm of sound source processing, which takes too long when performed with a general-purpose CPU.

이상이 본 실시예의 개요이다.The above is the outline of this embodiment.

[본 실시예의 구성][Configuration of this embodiment]

이하, 도면을 참조하면서 본 발명의 실시예를 설명한다.EMBODIMENT OF THE INVENTION Hereinafter, the Example of this invention is described, referring drawings.

제1도에 있어서, 우선, 외부메모리(116)에는 엔빌로프치의 목표치들의 악음 제어패러미터, PCM(펄스부호변조)방식에 있어서, 악음파형 또는 D PCM(차분 펄스부호변조)방식에 있어서 악음차분파형등이 기억되고 있다.In Fig. 1, first, the external memory 116 has a sound control parameter for the target values of envelope values, a sound wave waveform in the PCM (pulse code modulation) method, or a sound wave waveform in the D PCM (differential pulse code modulation) method. Etc. are remembered.

한편, 마스터 CPU(이하, M CPU라 약칭한다)(101)와 슬레이브 CPU(이하, S CPU라 약칭한다)(102)외부메모리(116)상의 상기 각 데이터를 액세스하여 분담하고 음원처리를 행한다. 이들의 CPU는 함께 외부메모리(116)의 파형데이터등을 공용하므로, 이상태에서는 외부메모리(116)에서 데이터를 판독할때에 경쟁이 발생할 우려가 있다. 그와같이, M CPU(101)와 S CPU(102)의 각각은 M CPU외부메모리액세스용 어드레스래치부(103) 및 S CPU외부메모리 액세스용 어드레스래치부(104)를 통하여 액세스용 어드레스 경쟁회피회로(105)에서 외부메모리 액세스용의 어드레신호와 외부메모리 제어 데이터를 출력단자(111, 112)에서 출력함에 따라, M CPU(101)에서의 어드레스와 S CPU(102)에서의 어드레스의 경쟁을 회피할수가 있다.On the other hand, the master CPU (hereinafter abbreviated as M CPU) 101 and slave CPU (hereinafter abbreviated as S CPU) 102 are accessed, shared, and sound source processing. Since these CPUs share waveform data and the like of the external memory 116 together, there is a possibility that competition may occur when data is read from the external memory 116 in this state. As such, each of the M CPU 101 and the S CPU 102 avoids the contention access for access through the M CPU external memory access address latch 103 and the S CPU external memory access address latch 104. As the circuit 105 outputs the address signal for external memory access and the external memory control data from the output terminals 111 and 112, a competition between an address in the M CPU 101 and an address in the S CPU 102 is eliminated. Can be avoided.

상기 어드레스지정에 기인하여 외부메모리(116)에서 판독된 데이터는 외부메모리 데이터인단자(115)에서 외부메모리 셀렉터부(106)에 입력된다. 외부메모리 셀렉터부(106)는 액세스용 어드레스경쟁회피회로(105)에서의 제어신호에 기인하여 상기 판독된 데이터를 데이터 버스 MD를 지나 M CPU(101)에 입력되는 데이터와, 데이터버스 SD를 지나 S CPU(102)에 입력되는 데이터로 분리하고, 각각 M CPU(101)와 S CPU(102)에 입력시킨다. 이것에 의해 데이터의 경쟁도 회피할수가 있다.The data read out from the external memory 116 due to the addressing is input to the external memory selector unit 106 at the terminal 115 which is external memory data. The external memory selector unit 106 passes the read data through the data bus MD and the data input to the M CPU 101 due to the control signal from the access address avoidance circuit 105, and passes through the data bus SD. The data is separated into data input to the S CPU 102 and input to the M CPU 101 and the S CPU 102, respectively. This can also avoid data competition.

그후, 각각의 데이터에 대하여, M CPU(101) 및 S CPU(102)로, 소프트웨어에 의해 음원처리가 시행된 후, 발음채널분 전부가 누산되고, Left D/A변환기(107)의 레프트출력단자(113) 및 Right D/A변환기부(108)의 라이트 출력단자(114)에서 각각 악음신호로서 좌채널의 레프트.아나로그 출력과 우채널의 라이트.아나로그출력이 출력된다.Then, for each data, after the sound source processing is performed by the M CPU 101 and the S CPU 102 by software, all the pronunciation channels are accumulated, and the left output of the Left D / A converter 107 is obtained. The left and right channel left and right analog outputs and the right and right analog output signals are output from the terminal 113 and the right output terminal 114 of the Right D / A converter section 108 as sound signals.

다음으로, 제2도는 M CPU(101)의 내부구성을 나타내는 블록도이다.Next, FIG. 2 is a block diagram showing the internal structure of the M CPU 101. As shown in FIG.

동 도면에 있어서 제어용 ROM(201)에는 후술한 악음제어용의 프로그램이 기억되고 있으며, ROM어드레스제어부(205)에서 ROM어드레스디코더(202)를 통하여 지정된 어드레스의 프로그램어(명령)를 순차출력한다. 구체적으로는 각 프로그램어의 철자수는 예를 들면 28비트이며, 프로그램어의 일부가 다음에 판독되어야할 어드레스의 하위부(페이지내 어드레스로)로서 ROM어드레스 제어부(205)에 입력되는 넥스트 어드레스 방식으로 되어 있다. 또한, 당연하여 통상의 프로그램 카운터방식의 CPU로 구성하여도 괜찮다.In the figure, a program for sound control described later is stored in the control ROM 201, and the ROM address control unit 205 sequentially outputs a program word (command) having a designated address through the ROM address decoder 202. FIG. Specifically, the spelling number of each program word is 28 bits, for example, and a next address method in which a part of the program word is input to the ROM address control unit 205 as a lower part of the address to be read next (in the page). It is. As a matter of course, it may be constituted by a CPU of a normal program counter system.

커맨트해석부(207)는 제어용 ROM(202)에서 출력될 명령의 OP코드를 해석하고, 지정된 오퍼레이션을 실행하기 위한 회로의 각부에 제어신호를 보낸다.The command analysis unit 207 interprets the OP code of the command to be output from the control ROM 202, and sends a control signal to each part of the circuit for executing the designated operation.

RAM어드레스제어부(204)는 제어용 ROM(201)에서의 명령의 오퍼랜드가 레지스턱을 지정하고 있는 경우에 RAM(206)내의 대응하는 레지스터의 어드레스를 지정한다.The RAM address control unit 204 designates an address of a corresponding register in the RAM 206 when an operand of an instruction in the control ROM 201 specifies a register.

RAM(206)에는 제11도 및 제12도등으로하여 후술한 각종 악음제어 데이터가 8발음채널분 기억되는 것외, 후술한 각종 버퍼등이 기억되고, 후술할 음원처리에 사용된다.In the RAM 206, various sound control data described later in FIG. 11, FIG. 12, etc. are stored for eight sounding channels, and various buffers described later are stored and used for the sound source processing described later.

ALU부(208) 및 승산기(209)는 제어 ROM(31)에서의 명령이 연산명령의 경우에 커맨드 해석부(207)에서의 지시에 기인하여, 전자는 가감산과 논리연산, 후자는 승산을 실행한다.The ALU unit 208 and the multiplier 209 are based on the instructions in the command analysis unit 207 when the instruction in the control ROM 31 is an operation instruction, so that the former performs addition and subtraction and logical operation, and the latter performs multiplication. do.

인터럽트 제어부(203)는 내부의 특별하게는 도시하지 않은 하드타이머에 기인하여, 일정시간마다 제1도의 S CPU(102)에 리세트 해제신호 A, ROM어드레스제어부(205) 및 제1도의 각 D/A변환기(107, 108)에 인터럽트신호를 공급한다.The interrupt control unit 203 causes the reset release signal A, the ROM address control unit 205 and the respective D in FIG. 1 to the S CPU 102 of FIG. The interrupt signal is supplied to the / A converters 107 and 108.

상술한 구서외에, 제2도의 M CPU(101)에는 다음의 각종 버스에 관한 인터페이스가 형성되어 있다.In addition to the above-described phrase, the M CPU 101 shown in FIG. 2 is provided with interfaces relating to the following various buses.

즉, 외부메모리(116)를 액세스하기 위한 그 메모리의 어드레스를 지정하기 위한 어드레스버스MA의 인터페이스(215), 액세스된 데이터를 외부메모리 셀렉터부(106)를 통하여 M CPU(101)의 사이에서 수수하기 위한 데이터버스 MD의 인터페이스(216), S CPU(202)와의 데이터의 수수를 실행할 S CPU(102)내부의 RAM의 어드레스를 지정하는 버스Ma의 인터페이스(212), M CPU(101)가 S CPU(102)로 데이터를 기억하기 위한 데이터 버스 Dout의 인터페이스(213), M CPU(101)가 S CPU(102)에서 데이터를 판독하기 위한 데이터 버스 Din인 인터페이스(214), Left D/A변환기부(107), Right D/A변환기부(108)에 최종 출력파형을 전송하기 위한 D/A데이터 전송버스의 인터페이스(217), 및 외부의 스위치부 또는 건반부(제8도 참조)등과의 사이에서 데이터의 수수를 행하는 입출력 포트(210, 211)가 있다.That is, the interface 215 of the address bus MA for specifying the address of the memory for accessing the external memory 116, and the accessed data can be transferred between the M CPU 101 through the external memory selector 106. The interface 216 of the data bus MD to be used, the interface 212 of the bus Ma which designates the address of the RAM inside the S CPU 102 to execute data transfer with the S CPU 202, and the M CPU 101 Interface 213 of data bus Dout for storing data with CPU 102, interface 214 which is data bus Din for M CPU 101 to read data from S CPU 102, Left D / A conversion With the base 107, the interface 217 of the D / A data transmission bus for transmitting the final output waveform to the Right D / A converter section 108, and an external switch or keyboard section (see FIG. 8). There are input / output ports 210 and 211 for carrying data between them.

다음으로, S CPU(102)의 내부구성을 제3도에 도시한다.Next, the internal structure of the S CPU 102 is shown in FIG.

S CPU(102)는 M CPU(101)에서의 처리개시 신호를 받아 음원처리를 행할 뿐이므로, 제2도(203)에 대응하는 인터럽트 제어부, 제2도 210 및 211에 대응하는 외부회로와의 데이터의 수수를 행하는 입출력포트 및 제2도 217에 대응하는 Left D/A변환기부(107)와 Right D/A변환기부(108)에 악음신호를 출력하기 위한 인터페이스는 없다. 그것이외의 301, 302, 304-309의 각 회로는 제2도의 201, 202, 204-209의 각 회로와 같이 기능을 가진다. 또, 각 인터페이스(303, 310-313)는 제2도는 212-216에 각각에 대향하여 형성된다. 또한, M CPU(101)에서 버스 Ma를 통하여 지정된 S CPU(102)내부 RAM어드레스는 RAM어드레스제어부(304)에 입력하고, 대응하는 어드레스가 RAM(306)에 대하여 지정된다. 이것에 의해, 예를 들면 S CPU(102)에서 생성되어 RAM(306)내부에 유지되고 있는 발음 채널분의 누산파형데이터가 데이터버스 DIN을 통하여 M CPU(101)에 출력된다. 이것에 대해서는 후술한다.Since the S CPU 102 only performs the sound source processing in response to the processing start signal from the M CPU 101, the S CPU 102 performs an operation with the interrupt control unit corresponding to FIG. 2 203 and the external circuits corresponding to FIGS. 210 and 211 in FIG. There is no interface for outputting a sound signal to the input / output port for receiving data and the left D / A converter section 107 and the Right D / A converter section 108 corresponding to FIG. Other circuits of 301, 302, and 304-309 have functions similar to those of 201, 202, and 204-209 of FIG. In addition, each of the interfaces 303 and 310-313 is formed opposite to each other in Fig. 212-216. In addition, an internal RAM address of the S CPU 102 designated by the M CPU 101 via the bus Ma is input to the RAM address control unit 304, and a corresponding address is designated for the RAM 306. FIG. Thereby, for example, accumulated waveform data for the pronunciation channel generated in the S CPU 102 and held in the RAM 306 is output to the M CPU 101 via the data bus DIN. This will be described later.

이상에 나타나게 되는 구성외, 본 실시예에서는 M CPU(101)의 입력포트(210)를 통하여 제8도에 도시되는 기능키(801) 및 건반키(802)등이 접속된다. 이들의 부분이 실질적인 악기 조작부를 구성한다.In addition to the configuration shown above, in this embodiment, the function key 801 and the keyboard key 802 shown in FIG. 8 are connected through the input port 210 of the M CPU 101. These parts constitute a substantial musical instrument operation section.

다음은, 본 발명의 특징의 하나인 D/A변환기에 대해 설명한다.Next, a D / A converter which is one of the features of the present invention will be described.

제6(b)도는 제1도의 Left와 Right의 D/A변환기부(107, 108)(양 변환부의 내용은 같음)의 내부 구성을 나타내는 것으로, 데이터 버스를 통하여 음원처리로 작성된 악음의 1샘플 데이터가 래치(601)에 입력된다. 그리고, 래치(601)의 클록임력에 M CPU(101)의 커맨드 해석부(207)(제2도)에서 음원처리 종료 신호가 입력되면, 데이터버스상의 1샘플분의 악음데이터가 제7도에 도시한 바와 같이 래치(601)에 래치된다.FIG. 6 (b) shows the internal structure of the D / A converter sections 107 and 108 (the contents of both converter sections are the same) of Left and Right of FIG. 1, and shows one sample of the sound produced by sound source processing through the data bus. Data is input to the latch 601. Then, when the sound source processing end signal is inputted to the clock force of the latch 601 from the command analysis unit 207 (FIG. 2) of the M CPU 101, the sound data for one sample on the data bus is shown in FIG. As shown in the drawing, the latch 601 latches the latch 601.

여기서, 상술한 음원처리에 필요로 하는 시간은 음원처리용의 소프트웨어에 의해 변환한다. 그 때문에, 음원방식이 다른 경우는 각 음원처리가 종료하고, 래치(601)에 악음 데이터가 래치되는 타이밍은 일정하지 않다. 그 때문에, 제6(a)도와 같이 래치(601)의 출력을 그대로 D/A변환기(603)에 입력시킬 수는 없다.Here, the time required for the sound source processing described above is converted by the software for sound source processing. Therefore, when the sound source systems are different, the timing at which each sound source process ends and the sound data is latched in the latch 601 is not constant. Therefore, the output of the latch 601 cannot be input directly to the D / A converter 603 as shown in FIG. 6 (a).

거기서, 본 실시예에서는 제6(b)도와 같이 래치(601)의 출력을 다시 래치(602)로 래치하고, 인터럽트제어부(203)에서 출력되는 샘플링 클로 간격에 같은 인터럽트신호에 의해, 악음신호를 래치(602)에 래치시키고, 일정간격으로 D/A변환기(603)에 출력시키도록 하고 있다.In this embodiment, as shown in FIG. 6 (b), the output of the latch 601 is latched back to the latch 602, and the sound signal is received by the same interrupt signal at the sampling claw interval output from the interrupt control unit 203. FIG. The latch 602 is latched and output to the D / A converter 603 at a predetermined interval.

이와같이 래치를 2개 사용하여 음원방식에 의한 처리시간의 변화를 흡수하였기 때문에, 악음 데이터를 D/A변환기로 출력시키기위한 복잡한 타이밍 제어 프로그램이 불필요하게 되었다.Since two latches are used to absorb the change in processing time by the sound source method, a complicated timing control program for outputting the sound data to the D / A converter becomes unnecessary.

[본 실시예의 전체동작][Overall operation of this embodiment]

다음으로 본 실시예의 전체동작을 설명한다.Next, the overall operation of the present embodiment will be described.

본 실시예는 기본적으로는 M CPU(101)가 중심으로 되어 동작하고, 제4(a)도의 메인 플로챠트에 도시한 바와 같이, S402-S410의 일련의 처리를 반복하여 행하고 있다. 그리고 실제의 음원처리는 인터럽트(INTERRUPT)처리로 행하고 있다. 그리고 실제의 음원처리는 인터럽트(INTERRUPT)처리로 행하고 있다. 구체적으로는, 어느 일정시간 마다 M CPU(101)와 S CPU(102)에 인터럽트가 걸리며, 그것에 기인하여 각각의 CPU가 8채널씩의 음을 만드는 음원처리를 행한다. 그 처리가 끝나면, 각각의 CPU의 8채널, 계16채널분의 악음파형이 가산되고, Left D/A변환기부(107), Right D/A변환기부(108)에서 출력된다. 그후, 인터럽트 상태에서 메인플로로 복귀한다. 또한, 상술한 인터럽트는 제2도의 인터럽트제어부(203)내의 하드타이머에 기인하여, 주기적으로 행해진다. 이 주기는 악음출력시의 샘플링주기에 동등하다.This embodiment basically operates with the M CPU 101 as the center, and as shown in the main flowchart of Fig. 4A, a series of processes of S402 to S410 are repeatedly performed. The actual sound source processing is performed by interrupt (INTERRUPT) processing. The actual sound source processing is performed by interrupt (INTERRUPT) processing. Specifically, the M CPU 101 and the S CPU 102 are interrupted at any given time, and each CPU performs sound source processing to produce eight channels of sound. After the processing, the sound waveforms for the eight channels and the 16 channels of each CPU are added and output from the Left D / A converter section 107 and the Right D / A converter section 108. After that, it returns to the main flow from the interrupt state. In addition, the interrupt mentioned above is performed periodically due to the hard timer in the interrupt control unit 203 of FIG. This period is equivalent to the sampling period at the time of sound output.

이상이, 본 실시예의 개략동작으로, 다음은 제4도를 이용하여 상세하게 본 실시예의 동작을 설명한다.The above is the schematic operation of the present embodiment, and the operation of the present embodiment will be described in detail with reference to FIG.

제4(a)도의 메인플로챠트에 있어서 S402-S410의 처리가 반복실행되고 있는 동안에, 인터럽트 제어부(203)에서 인터럽트가 걸리면 동 도면(b)의 M CPU인터럽트처리와 동 도면(C)의 S CPU인터럽트처리의 2개의 처리가 동시에 기동한다. 그리고, 동도면(b)와 동도면(c)의 『음원처리』는 동도면(d)에 도시되어 있다.In the main flowchart of FIG. 4 (a), if an interrupt is interrupted in the interrupt control unit 203 while the processing of S402-S410 is repeatedly executed, the M CPU interrupt processing of FIG. (B) and S of FIG. Two processes of CPU interrupt processing are started simultaneously. The "sound source processing" of the same drawing (b) and (c) is shown in the drawing (d).

그런데, 제4(a)도의 메인플로챠트는 인터럽트 제어부(203)에서 인터럽트가 걸리지 않는 상태에 있어 M CPU(101)에 있어서 실행된다. 음원처리 이외의 처리의 흐름을 나타내고 있다.By the way, the main flowchart of FIG. 4 (a) is executed by the M CPU 101 in the state where interrupt is not interrupted by the interrupt control unit 203. The flow of processing other than the sound source processing is shown.

우선, 전원이 ON되고, M CPU(101)의 RAM(206)의 내용등의 초기설정이 행해진다(S401).First, the power supply is turned on, and initial settings such as the contents of the RAM 206 of the M CPU 101 are performed (S401).

다음으로, M CPU(101)의 외부에 접속되는 기능 키, 예를 들면 제27도에 도시되는 음색스위치등이 주사되고(S402), 각 스위치의 상태가 입력포트(210)에서 RAM(206)내의 키버퍼에리어에 채취된다. 그 주사의 결과, 상태변화된 기능키가 식별되고, 대응하는 기능의 처리가 이루어진다(S403). 예를 들면 악음번호의 세트, 엔빌로프번호의 세트, 또, 부가기능에 리듬 연주가 붙여있으면, 리듬번호의 세트등이 행해진다.Next, a function key connected to the outside of the M CPU 101, for example, a tone switch shown in FIG. 27, is scanned (S402), and the state of each switch is inputted from the input port 210 to the RAM 206. It is picked up in the inner key buffer area. As a result of the scanning, the state-changed function key is identified, and processing of the corresponding function is performed (S403). For example, when a rhythm performance is attached to a set of musical number numbers, an envelope number, and an additional function, a set of rhythm numbers is performed.

그후, 압건되고 있는 건반키가 상기 기능 키의 경우와 마찬가지로 채취되고(S404), 변화된 건반이 식별됨에 따라 키어사인처리가 행해진다(S405).Thereafter, the key being pushed is collected in the same manner as in the case of the function key (S404), and keying processing is performed as the changed key is identified (S405).

다음으로, 기능키(801)(제8도 참조)로 데모연주키가 눌려졌을때는 외부메모리부(116)에서 데모연주데이터(시퀀서 데이터)가 순차 판독되어 키 어사인처리등이 행해진다(S406). 또, 리듬스타트 키가 눌려졌을때, 리듬 데이터가 외부메모리(116)에서 순차 판독되고, 키어사인처리 등이 행해진다(S407).Next, when the demo playing key is pressed by the function key 801 (see FIG. 8), the demo playing data (sequencer data) is sequentially read from the external memory unit 116, and key assignment processing is performed (S406). ). When the rhythm start key is pressed, the rhythm data is sequentially read from the external memory 116, and keying processing or the like is performed (S407).

그후에, 이하에 서술한 타이머처리가 행해진다(S408). 즉, 후술한 인터럽트타이머처리(S412)로 인클리멘트되어 있는 시간데이터의 시간치가 판별되고, 데모연주제어용에 순차판독되는 시간제어용의 시퀀서 데이터 또는 리듬연주제어용에 판독되는 시간제어용의 리듬데이터와 비교됨에 따라, S406의 데모연주 또는 S407의 리듬연주를 행할 경우의 시간제어가 행해진다.Thereafter, the timer process described below is performed (S408). That is, the time value of the time data incremented by the interrupt timer process (S412) described later is determined, and compared with the time control sequencer data read out sequentially for demo performance control or the rhythm data for time control read out for the rhythm performance control. As a result, time control is performed when demo performance of S406 or rhythm performance of S407 is performed.

또한, 발음처리 S409에서는 발음처리될 악음의 피치에 엔빌로프를 부가하고, 대응하는 발음채널에 피치엔빌로프 처리등이 행해진다.In the pronunciation process S409, an envelope is added to the pitch of the sound to be processed, and a pitch envelope process is performed on the corresponding pronunciation channel.

또한, 플로 1주(周) 준비처리가 실행된다(S410). 이 처리에 있어서는 S405의 건반키 처리에서 건반개시로 된 노트(note)번호의 발생음채널의 상태를 압건주에 바꾸거나, 이건으로된 노트번호의 발음채널의 상태를 소음중에 바꾸는 등의 처리가 행해진다.In addition, a flow preparation process is executed (S410). In this processing, processing such as changing the state of the sound tone channel of the note number at the start of the keyboard to the dry key or changing the state of the sounding channel of the note number made in the noise during noise in S405 is performed. Is done.

다음으로 제4(b)도는 M CPU인터럽트 처리에 대해 설명한다.Next, FIG. 4 (b) illustrates the M CPU interrupt processing.

M CPU(101)인 인터럽트 제어부(203)에 의해 M CPU(101)에 인터럽트가 걸리면, 제4(a)도의 메인플로챠트의 처리가 중단되고, 제4(b)도의 M CPU인터럽트처리의 실행이 개시된다. 이 경우, M CPU인터럽트처리의 프로그램에 있어서, 제4(a)도의 메인플로의 프로그램으로 기억이 행해지는 레지스터 등에 대해서는 내용의 개서가 행해지지 않도록 제어된다. 이것에 의해 통상의 인터럽트처리의 개시시와 종료시에 행해지는 레지스터의 퇴피와 복귀의 처리는 불필요하게 된다. 이것에 의해, 제4도(a)의 메인플로챠트의 처리와 M CPU인터럽트 처리의 사이의 이행이 신속하게 행해진다.When the M CPU 101 is interrupted by the interrupt control unit 203, which is the M CPU 101, the processing of the main flowchart of FIG. 4 (a) is interrupted, and the M CPU interrupt processing of FIG. 4 (b) is executed. This is disclosed. In this case, in the program of the M CPU interrupt processing, it is controlled so that the contents of the register or the like, which are stored in the program of the main flow in Fig. 4A, are not rewritten. This eliminates the need for retrieval and return of registers that are performed at the start and end of normal interrupt processing. As a result, the transition between the processing of the main flowchart of FIG. 4A and the M CPU interrupt processing is performed quickly.

이어서, M CPU인터럽트신처리에 있어서 음원처리가 개시된다(S411). 이 음원처리는 제4(b)도에 도시된다.Subsequently, the sound source processing is started in the M CPU interrupt scene processing (S411). This sound source processing is shown in FIG. 4 (b).

상술한 동작과 동시에, M CPU(101)의 인터럽트제어부(203)에서 S CPU(102)의 ROM어드레스 제어부(305)에 대하여 S CPU 리세트해제 신호 A(제1도 참조)가 출력되고, S CPU(102)에서 제4(c)도의 S CPU인터럽트 처리의 실행이 개시된다.Simultaneously with the above operation, the S CPU reset release signal A (see FIG. 1) is output from the interrupt control unit 203 of the M CPU 101 to the ROM address control unit 305 of the S CPU 102. Execution of the S CPU interrupt processing of FIG. 4C is started in the CPU 102. FIG.

그리고, M CPU인터럽트 처리에 있어서 음원처리(S411)와 거의 동시에, S CPU인터럽트 처리에서 음원처리가 개시된다(S415). 이와같이, M CPU(101)와 S CPU(102)의 양자가 동시에 8발음채널씩 음원처리를 실행함으로써 8발음 채널의 처리시간으로 16발음 채널의 음원처리를 실행할수가 있으며 처리속도가 약 2배가 된다.(이상은 제5도를 이용하여 후술한다.)At the same time as the sound source process (S411) in the M CPU interrupt process, the sound source process is started in the S CPU interrupt process (S415). In this manner, both the M CPU 101 and the S CPU 102 simultaneously execute sound source processing for each of the eight sounding channels, so that the sound source processing for the 16 sounding channels can be performed in the processing time of the eight sounding channels, and the processing speed is approximately doubled. (The above will be described later with reference to FIG. 5).

이어서, M CPU(101)에서는 S412인터럽트 타이머처리후, S CPU(102)에서 S CPU인터럽트처리의 종료신호가 오는 것을 기다리고 있다(S413). 또한, 인터럽트 타이머처리에서는 제4(b)도의 인터럽트처리가 일정한 샘플링주기마다 실행되는 것을 이용하여, RAM(206)(제2도)상의 특별하게는 도시하지 않은 시간 데이터의 값이 인클리멘트된다. 즉, 이 시간 데이터의 값을 보면 시간경과를 알수있다. 이와같이하여 얻어지는 시간데이터는 상술한 바와 같이, 제4도(a)의 메인플로의 타이머처리 S408에 있어서 시간제어에 이용된다.Subsequently, the M CPU 101 waits for the end signal of the S CPU interrupt processing to come from the S CPU 102 after the S412 interrupt timer processing (S413). In addition, in the interrupt timer process, the interrupt process shown in FIG. 4 (b) is executed every fixed sampling period, and the value of the time data, not specifically shown, on the RAM 206 (FIG. 2) is incremented. . In other words, the value of this time data shows the time elapsed. The time data obtained in this manner is used for time control in the timer process S408 of the main flow of FIG. 4A as described above.

제4도(c)의 S CPU인터럽트처리에 있어서 스텝 S415의 음원처리가 종료되면, S CPU(102)의 커맨드 해석부(307)에서 M CPU(101)의 ROM어드레스제어부(205)에 S CPU처리종료신호 B(제1도참조)가 입력된다. 이것에 의해, 제4(b)도의 M CPU인터럽트처리에 있어서 스텝 S413의 판정이 YES가 된다.When the sound source processing in step S415 is finished in the S CPU interrupt processing in FIG. 4 (c), the S CPU 102 sends the S CPU to the ROM address control unit 205 of the M CPU 101 by the command analysis unit 307 of the S CPU 102. The processing end signal B (see FIG. 1) is input. As a result, the determination in step S413 becomes YES in the M CPU interrupt processing of FIG. 4 (b).

이 결과, 제1도의 데이터 버스 Din을 통하여 S CPU(102)에서 만들어진 파형데이터가 M CPU(101)의 RAM(206)에 판독된다(S414).As a result, the waveform data produced by the S CPU 102 via the data bus Din in FIG. 1 is read into the RAM 206 of the M CPU 101 (S414).

이 경우, 파형데이터는 S CPU(102)의 RAM(306)상의 소정 버퍼영역(후술한 버퍼 B)에 격납되고 있기 때문에, M CPU(101)의 커맨트 해석부(207)는 S CPU 내부 어드레스 지정버스 Ma를 통하여 RAM어드레스제어부(304)에 대하여 상기 버퍼 어드레스를 지정함으로써 파형데이터의 판독을 행한다.In this case, since the waveform data is stored in a predetermined buffer area (buffer B described later) on the RAM 306 of the S CPU 102, the command analysis unit 207 of the M CPU 101 designates the S CPU internal address. Waveform data is read by designating the buffer address to the RAM address control unit 304 via the bus Ma.

그리고, S415'에 있어서, 상기 버퍼 영역의 내용이 Left D/A변환기부(107) 및 Right D/A변환기부(108)의 래치(601)(제6도참조)에 래치된다.In S415 ', the contents of the buffer area are latched by the latch 601 (see FIG. 6) of the Left D / A converter section 107 and the Right D / A converter section 108. As shown in FIG.

다음으로, 제4(d)도의 플로챠트를 이용하여, M CPU인터럽트처리의 스텝 S411 또는 S CPU인터럽트처리의 스텝 S415로 실행되는 음원처리의 동작을 설명한다.Next, the operation of the sound source processing executed in step S411 of the M CPU interrupt processing or step S415 of the S CPU interrupt processing will be described using the flowchart shown in FIG. 4 (d).

우선, RAM(206) 또는 RAM(306)의 파형데이터 가산용의 영역이 클리어된다(S416).First, the area for adding waveform data of the RAM 206 or the RAM 306 is cleared (S416).

다음은, 발음채널의 1채널마다 음원처리가 행해지고(S417-S424), 마지막으로 8채널째의 음원처리가 종료된 시점에서 소정의 버퍼영역 B에 8채널분이 가산된 파형데이터가 얻어진다. 이들의 상세한 처리에 대해서는 후술한다.Next, sound source processing is performed for each channel of the pronunciation channel (S417-S424), and finally, waveform data obtained by adding eight channels to the predetermined buffer area B is obtained at the end of the eighth channel sound source processing. These detailed processes will be described later.

다음으로, 제5도는 후술한 제4(a), (b), (c)도의 플로챠트의 처리관계를 개념적으로 나타낸 흐름도이며, M CPU(101)과 S CPU(102)가 음원처리를 각각 분담하여 행하는 모양을 나타내고 있다.Next, FIG. 5 is a flowchart conceptually showing the processing relationship of the flowcharts of FIGS. 4 (a), (b), and (c) described later, in which the M CPU 101 and the S CPU 102 respectively perform sound source processing. It shows how to share.

우선, 어느 처리 A(이하 B, C, D, E, F도 같음)가 행해진다(S501). 이 『처리』는 제4(a)도의 메인 플로챠트의 예를 들면 『기능 키처리』나 『건반 키 처리』등에 대응한다. 그후, M CPU인터럽트처리와 S CPU인터럽트처리로 들어가서 동시에 M CPU(101)와 S CPU(102)에 의한 음원처리가 개시된다(S502, S503). 그리고, S CPU(102)에서의 S CPU인터럽트처리의 종료시에 S CPU처리종료 신호 B가 M CPU(101)에 입력된다. M CPU인터럽트처리에서는 S CPU인터럽트처리보다 빠르게 음원처리가 종료되고, S CPU인터럽트처리에서 S CPU처리종료 B가 식별되면, S CPU(102)에서 생성된 파형데이터가 M CPU(1010)에 보내져 M CPU(101)에서 생성된 파형데이터와 정리되어 Left D/A변환기부(107) 및 Right D/A변환기부(108)에 출력된다. 그후, 메인 플로챠트의 어떤 처리 B로 복귀한다.First, any process A (hereinafter, B, C, D, E, F are also the same) is performed (S501). This " processing " corresponds to, for example, " function key processing " or " keyboard processing " in the main flowchart of FIG. 4 (a). After that, the processing enters the M CPU interrupt processing and the S CPU interrupt processing, and simultaneously the sound source processing by the M CPU 101 and the S CPU 102 is started (S502, S503). Then, at the end of the S CPU interrupt processing in the S CPU 102, the S CPU processing end signal B is input to the M CPU 101. In the M CPU interrupt processing, when the sound source processing ends faster than the S CPU interrupt processing, and when the S CPU processing end B is identified in the S CPU interrupt processing, the waveform data generated by the S CPU 102 is sent to the M CPU 1010, and the M CPU interrupt processing is performed. The waveform data generated by the CPU 101 is arranged together and output to the Left D / A converter 107 and the Right D / A converter 108. Then, the process returns to a certain process B of the main flowchart.

이상과 같은 동작이 모든 발음채널(본 실시예에서 M CPU(101)와 S CPU(102)를 합하여 16채널)에 대한 음원처리가 행해지면서 반복된다(S504-S516). 그리고, 이 반복처리는 악음의 발음중 계속된다.The operation described above is repeated while the sound source processing is performed for all the pronunciation channels (16 channels in which the M CPU 101 and the S CPU 102 are combined in this embodiment) (S504-S516). This repetition process is continued during pronunciation of the musical sound.

[음원처리에 있어서 데이터 구성][Data Structure in Sound Source Processing]

다음은 제4(b)도의 S411 및 동 도면(C)의 S415에서 실행되는 음원처리의 구체적인예에 대하여 설명한다.Next, specific examples of the sound source processing executed in S411 of FIG. 4 (b) and S415 of FIG. (C) will be described.

본 실시예에서는 M CPU(101)와 S CPU(102)의 양 CPU가 8채널씩의 음원처리를 분담하는 것은 상술했다. 이 8채널분의 음원처리용의 데이터는 제9도에 도시한 바와 같이, M CPU(101), S CPU(102)의 각 RAM(206, 306)내의 발음채널별의 영역에 설정된다.In the present embodiment, both CPUs of the M CPU 101 and the S CPU 102 share the sound source processing for each of the eight channels. As shown in FIG. 9, the data for the sound source processing for these eight channels is set in the region for each sound channel in each of the RAMs 206 and 306 of the M CPU 101 and the S CPU 102.

또, 이 RAM에는 제12도에 도시한 바와 같이, BF, BT, B, M의 각 버퍼가 확보되어 있다.Moreover, as shown in FIG. 12, each of the buffers BF, BT, B, and M is secured in this RAM.

이 경우 제9도의 각 발음채널영역에는 나중에 후술할 조작에 의해, 제10도에 개념적으로 도시한 바와 같이, 각각의 음원방식을 설정할수있고, 그 음원방식이 설정되었다면 제11도에 도시한 바와 같은 각 음원방식의 데이터포맷으로, 제9도의 각 발음채널의 각 영역에 데이터가 설정된다. 또한, 본 실시예에서는 후술하는 바와 같이, 각 발음채널에 따른 음원방식을 할당하는 것이 가능하다.In this case, each sound source method can be set in each pronunciation channel region of FIG. 9 by the operation described later, as shown in FIG. 10, and if the sound source method is set, as shown in FIG. In the same data format of each sound source system, data is set in each region of each pronunciation channel in FIG. In addition, in the present embodiment, as described later, it is possible to assign a sound source method for each pronunciation channel.

제11도의 각 음원방식의 데이터포맷을 나타내는 테이블 1에 있어서, G는 음원방식을 식별하는 번호인 음원방식 No.이다. 다음의 A는 음원처리시에 파형데이터가 판독될 경우에 지정되는 어드레스를 나타내고, AI, A1및 A2가 현재 어드레스의 정수부이고, 외부메모리(116)(제1도)의 파형데이터가 격납되고 있는 어드레스에 직접대응한다. 또, AF는 헌재어드레스의 소수부이고, 외부메모리(116)에서 판독된 파형데이터의 보간에 이용된다.In Table 1 showing the data format of each sound source system in Fig. 11, G is the sound source system No. which is a number for identifying the sound source system. The next A indicates an address specified when waveform data is read during sound source processing, where A I , A 1 and A 2 are integer portions of the current address, and waveform data of the external memory 116 (FIG. 1) It corresponds directly to the address stored. A F is a fractional part of the old address and is used for interpolation of waveform data read from the external memory 116.

다음의 AE는 앤드어드레스, AL은 루프 어드레스를 각각 나타낸다. 또, 다음의 PI, P1및 P2는 피치데이터의 정수부, PF는 피치데이터의 소수부를 나타낸다. 예를 나타내면, PI=1, PF=O은 음원의 피치를 PI=2, PF=0은 1옥타브상의 피치를, 또, PI=O, P=0.5는 1옥타브하의 피치를 각각 나타낸다.Next, A E represents an end address and A L represents a loop address, respectively. Next, P I , P 1, and P 2 denote integer portions of pitch data, and P F denote fractional portions of pitch data. For example, P I = 1, P F = O is the pitch of the sound source, P I = 2, P F = 0 is the pitch of one octave, and P I = O, P = 0.5 is the pitch of one octave. Represent each.

다음의 XP는 전회(前回)의 샘플 데이터를 XN은 다음회의 샘플데이터의 격납을 나타낸다. 또, D는 인접하는 2개의 샘플데이터사이의 크기의 차분치를 나타내고, E는 앤비리로프치이다. 또한, 0은 출력치이며, 또, C는 후술하지만, 연주정보에 의해 발음채널에 할당하는 음원방식을 변경할 때에 이용하는 플래그를 나타낸다.Next X P represents the previous sample data, and X N represents the storage of the next sample data. D denotes a difference value of the size between two adjacent sample data, and E denotes an anbily-loof value. In addition, 0 is an output value, and C, which will be described later, indicates a flag used when changing the sound source system to be assigned to the pronunciation channel by the performance information.

그밖의 여러가지 제어 데이터에 대해서는 후술할 각 음원방식을 설명할때에 설명하겠다.Various other control data will be described when describing each sound source method to be described later.

이와같이, 제11도에 도시한 데이터가 M CPU(101), S CPU(102)의 각각의 RAM(206, 306)에 확보되고, 후술한 음원방식이 결정되면, 제9도에 도시하는 각 채널마다 제11도의 포맷으로 데이터가 설정된다.In this manner, when the data shown in FIG. 11 is secured in the RAMs 206 and 306 of the M CPU 101 and the S CPU 102, and the sound source method described below is determined, the respective channels shown in FIG. Each time, data is set in the format shown in FIG.

이하, 이와같이 데이터구성을 이용하여 실행되는 각 음원방식의 음원처리에 대해 순차 설명한다. 또한, 이들의 음원처리는 M CPU(101) 또는 S CPU(102)의 커맨트해석부(207) 또는 (307)이, 제어용 ROM(201) 또는 (301)에 격납되어 있는 음원처리용의 프로그램을 해석실행함으로써 실현된다. 이하, 특별하게 언급하지 않은 한 이 전제를 토대로 처리가 행해지는 것으로 한다.Hereinafter, the sound source processing of each sound source system executed by using the data structure will be described in sequence. In addition, these sound source processes are executed by the command analysis unit 207 or 307 of the M CPU 101 or the S CPU 102 for the sound source processing program stored in the control ROM 201 or 301. This is realized by executing the analysis. Hereinafter, unless otherwise indicated, the processing is performed based on this premise.

우선, 제4(d)도의 플로챠트에 있어서, 1채널마다의 각 음원처리(S417-S424의 어딘가)에 들어가면, RAM(206, 306)의 대응하는 발음채널에 기억되고 있는 제11도에 도시하는 데이터포맷(테이블 1)의 데이터 가운데 음원방식 No.가 판별되고, 이것에 의해 이하에 설명하는 음원방식의 음원처리가 실행될지가 결정된다.First, in the flowchart of FIG. 4 (d), when each sound source process (somewhere in S417 to S424) for each channel is entered, it is shown in FIG. 11 stored in the corresponding pronunciation channel of the RAMs 206 and 306. FIG. The sound source method No. is determined from among the data of the data format (Table 1) to be performed, thereby determining whether the sound source method of the sound source method described below is executed.

[PCM방식에 의해 음원처리][Sound source processing by PCM method]

상기 음원방식 No.가 PCM방식을 지시하고 있는 경우, 이하의 제13도의 동작 플로챠트로 도시되는 PCM방식에 의한 음원처리가 실행된다. 플로중의 각 변수는 M CPU(101) 또는 S CPU(102)의 RAM(206, 306)상의 제9도의 어딘가의 발음 채널 영역에 기억되는 제11도의 테이블 1의 PCM포맷의 각 데이터이다.When the sound source method No. indicates the PCM method, sound source processing by the PCM method shown in the operation flowchart of FIG. 13 below is executed. Each variable in the flow is each data of the PCM format shown in Table 1 of FIG. 11 stored in the pronunciation channel region of FIG. 9 on the RAMs 206 and 306 of the M CPU 101 or the S CPU 102.

외부메모리(116)(제1도)상의 PCM파형데이터가 기억되고 있는 어드레스 가운데, 현재의 처리 대상으로 되는 파형데이터가 기억되고 있는 어드레스를 제15(a)도에 도시하는 (AI, AF)로 한다.Fig. 15 (a) shows an address in which waveform data as the current processing target is stored among the addresses in which PCM waveform data on the external memory 116 (Fig. 1) is stored (A I , A F )

우선, 현재의 어드레스에 피치데이터(PI, PF)가 가산된다(S1301). 이 피치 데이터는 제8도의 건반 키(801)등에 있어서 압건조작된 건반의 종류에 대응하고 있다.First, the pitch data (P I, P F) is added to the current address (S1301). This pitch data corresponds to the kind of key that was press-dried in the key 801 of FIG.

그리고, 가산된 어드레스의 정수부 AI가 바뀌었던가 아닌가가 판정된다(S1302). 판정이 No이면, 제15(a)도의 어드레스(AI+1) 및 AI에 있어서 각각의 샘플데이터 XE과 XF의 차인 차분치 D를 이용하여, D×AF인 연산처리에 의해 어드레스의 소수부 AF에 대응하는 보간데이터치 0이 계산된다(S1307). 또한, 차분치 D는 이번회 이전의 인터럽트 타이밍에 있어서 음원처리에 의해 구해지고 있다(후술할(S1306참조)).Then, it is determined whether or not the integer part A I of the added address is changed (S1302). If the determination is No, the arithmetic processing is D x A F using the difference value D which is the difference between the respective sample data X E and X F in the address A I +1 and A I in Fig. 15 (a). The interpolation data value 0 corresponding to the fractional part A F of the address is calculated (S1307). The difference value D is obtained by sound source processing at the interrupt timing before this time (see S1306 to be described later).

그리고, 상기 보간데이터치 0에 어드레스의 정수부 AI에 대응하는 샘플링 데이터 XF가 가산되고, 현재의 어드레스(AI, AF)에 대응하는 새로운 샘플데이터 0(제15(a)도의 XQ에 상당한다)이 얻어진다(S1308).Then, the sampling data X F corresponding to the integer part A I of the address is added to the interpolation data value 0, and new sample data 0 corresponding to the current addresses A I and A F (X Q in FIG. 15 (a)). (Corresponds to Equation 2)) (S1308).

이후, 이 샘플데이터에 엔빌로프치 E가 승상되고(S1309), 얻어진 0의 내용이 M CPU(101) 또는 S CPU(102)의 RAM(206) 또는 (306)내의 파형데이터 버퍼 B(제12도 참조)에 가산된다(S1310).Then, the envelope value E is elevated to this sample data (S1309), and the content of the obtained zero is the waveform data buffer B (the twelfth) in the RAM 206 or 306 of the M CPU 101 or the S CPU 102. (See FIG. 1) (S1310).

그후, 제4(a)의 메인 플로에 복귀하고, 다음의 샘플링 주기에서 인터럽트가 걸려 제13도의 음원처리의 동작 플로챠트가 다시 실행되고, 현재 어드레스(AI, AF)에 피치데이터(PI, PF)가 가산된다(S1301).Thereafter, the flow returns to the main flow of FIG. 4 (a), interrupts in the next sampling period, and the operation flowchart of the sound source processing in FIG. 13 is executed again, and the pitch data P is applied to the current addresses A I and A F. I and P F are added (S1301).

이상의 동작이 어드레스의 정수부 AI가 바꾸기(S1302)까지 반복된다.The above operation is repeated until the integer part A I of the address is replaced (S1302).

이 동안, 샘플데이터 XF및 차분치 D는 갱신되지 않고, 보간 데이터 O만이 어드레스 AF에 따라 갱신되고, 그때마다 샘플데이터 XQ가 얻어진다.In the meantime, the sample data X F and the difference value D are not updated, only the interpolation data O is updated in accordance with the address A F , and sample data X Q is obtained each time.

다음으로, S1301에서 현재 어드레스(AI, AF)에 피치데이터(PI, PF)가 가산된 결과, 현재 어드레스의 정수부 AI가 변화되었다면(S1302), 어드레스 AI가 앤드어드레스 AF에 달하고 있는지 또는 넘고 있는지 아닌지가 판정된다(S1303).Next, when the pitch data P I and P F are added to the current addresses A I and A F in S1301, and the integer part A I of the current address is changed (S1302), the address A I is the end address A F. It is determined whether or not it has reached or exceeded (S1303).

판정이 YES이면 다음의 루트처리가 행해진다. 즉, 앤드어드레스 AE를 넘은 만큼의 어드레스(AI-AE)가 루프어드레스 AL에 가산되고, 얻어진 새로운 현재 어드레스의 정수부 AI에서 루프재생이 개시된다(S1304). 앤드어드레스 AE라는 것을 PCM파형데이터의 최후의 파형샘플데이터가 기억되고 있는 외부메모리(116)(제1도)상의 어드레스이다. 또, 루프어드레스 AL은 연주자가 파형의 출력을 반복하고 싶은 위치의 어드레스이며, 상기 동작에 의해 PCM방식으로 공지의 루프처리가 실현된다.If the determination is YES, the next root process is performed. In other words, the address A is added to the end address (A I -A E), the loop L of the address A as an E beyond, the loop reproduction in the integer part of A I the new current address is initiated obtained (S1304). The end address A E is an address on the external memory 116 (FIG. 1) in which the last waveform sample data of the PCM waveform data is stored. The loop address A L is an address of a position at which the player wants to repeat the output of the waveform, and the loop operation is realized in the PCM method by the above operation.

S1303의 판정이 NO이면 상기 S1304의 처리는 실행되지 않는다.If the determination of S1303 is NO, the processing of S1304 is not executed.

다음으로, 샘플데이터의 갱신이 행해진다. 여기서는 외부메모리(116)(제1도)에서 새롭게 갱신된 현재 어드레스 AI와 하나 바로앞의 어드레스(AI-1)에 대응하는 각 샘플데이터가 각각 XN, NP로서 판독된다(S1305).Next, the sample data is updated. Here, each sample data corresponding to the newly updated current address A I and the address immediately preceding one (A I -1) in the external memory 116 (FIG. 1) is read as X N and N P respectively (S1305). .

또한, 지금까지의 차분치가 갱신한 상기 XN과 XP의 차분치 D에 갱신된다(S1306).Further, the difference value thus far is updated to the difference value D between X N and X P updated (S1306).

이것이후의 동작은 상술한 대로이다.The operation after this is as described above.

이상과 같이 하여, 1발음채널분의 PCM방식에 의한 파형데이터가 생성된다.As described above, waveform data by the PCM method for one sounding channel is generated.

[DPCM방식에 의한 음원처리][Sound source processing by DPCM method]

다음은, DPCM방식에 의한 음원처리에 대해 설명한다.Next, sound source processing by the DPCM method will be described.

우선, 제15(b)도를 이용하여 DPCM방식의 동작원리의 개략을 설명한다.First, the outline of the operation principle of the DPCM method will be described with reference to FIG. 15 (b).

동 도면에 있어서, 외부메모리(116)(제1도)의 어드레스 AI에 대응하는 샘플데이터 XP는 어드레스 AI의 하나앞의 특별하게는 도시하지않은 어드레스(AI-1)에 대응하는 샘플데이터의 차분치에서 구한값이다.In the figure, the sample data X P corresponding to the address A I of the external memory 116 (FIG. 1) corresponds to an address A I -1 not specifically shown before one of the addresses A I. The value is obtained from the difference of sample data.

외부메모리(116)(제1도)의 어드레스 AI에는 다음의 샘플데이터와의 차분치 D가 기억되고 있으므로, 다음의 어드레스의 샘플데이터를 XP+D로 구해지고, 이것이 새로운 샘플데이터 XP로서 옮겨진다.Since the difference D from the next sample data is stored in the address A I of the external memory 116 (FIG. 1), the sample data of the next address is obtained by X P + D, which is the new sample data X P. Is moved as

이 경우, 현재 어드레스를 동도면에 도시한 바와 같이, AF로 하면, 현재 어드레스 AF에 대응하는 샘플 데이터는 XF+D×AF로 구해진다.In this case, as shown in the figure, if A F is set, the sample data corresponding to the current address A F is obtained as X F + D × A F.

이와같이, DPCM방식에서는 현재의 어드레스와 다음의 어드레스에 대응하는 샘플데이터사이의 차분치 D가 외부메모리(116)(제1도)에서 판독되고, 현재의 샘플데이터에 가산되어, 다음의 샘플데이터가 구해짐에 따라 순차 파형데이터가 작성된다.In this way, in the DPCM method, the difference value D between the current address and the sample data corresponding to the next address is read from the external memory 116 (FIG. 1), added to the current sample data, and the next sample data is added. As obtained, waveform data are created sequentially.

이와같은 DPCM방식을 채용하면, 인접하는 표본 사이의 차분치가 일반적으로 작은 음성이나 악음등과 같은 파형을 양자화(量子化)하는 경우, 통상의 PCM방식에 비교하여 훨씬 작은 비트수로 양자화를 행할수 있는 것은 분명하다.By adopting such a DPCM method, when quantizing a waveform such as a voice or a sound with a small difference between adjacent samples, the quantization can be performed with a much smaller number of bits than in a conventional PCM method. It is clear.

이상의 DPCM방식의 동작을 제14도의 동작플로챠트를 이용하여 설명한다. 플로중의 각 변수는 MCPU(101) 또는 SCPU(102)의 RAM(206, 306)상의 제9도의 어딘가의 발음채널영역에 기억되는 제11도의 테이블 1의 DPCM포맷의 각 데이터이다.The operation of the DPCM method described above will be described using the operation flowchart of FIG. Each variable in the flow is each data of the DPCM format shown in Table 1 of FIG. 11 stored in the pronunciation channel region of FIG. 9 on the RAMs 206 and 306 of the MCPU 101 or the SCPU 102.

외부메모리(116)(제1도)상의 DPCM차분파형데이터가 기억되고 있는 어드레스가운데, 현재의 처리대상으로 되는 데이터가 기억되고 있는 어드레스를 제15(b)도에 도시하는 (AI, AF)로 한다.External memory 116 (FIG. 1) of an address which is stored the DPCM difference waveform data on, showing the addresses in the current data to be processed in the stored in the second 15 (b) Fig (A I, A F )

우선, 현재 어드레스(AI, AF)에 피치데이터(PI, AF)가 가산된다(S1401).First, the current address (A I, A F) the pitch data (P I, F A) to be added (S1401).

그리고, 가산된 어드레스의 정수부 AI에 변화가 있을지 없을지가 판정된다(S1402). 판정이 NO이면 제15(b)도의 어드레스 AI에 있어서 차분치 D를 이용하여 D×AF인 연산처리에 의해, 어드레스의 소수부 AF에 대응하는 보간 데이터치의 0이 연산된다(S1414). 또한, 차분치 D는 이번회 이전의 인터럽트 타이밍에 있어서 음원처리에 의해 구해지고 있다(후술한 S1406과 S1410참조).Then, it is determined whether or not there is a change in the integer part A I of the added address (S1402). If the determination is NO, 0 of the interpolation data value corresponding to the fractional part A F of the address is calculated by the arithmetic processing of D × A F using the difference value D in the address A I of FIG. 15 (b) (S1414). The difference value D is obtained by sound source processing at the interrupt timing before this time (see S1406 and S1410 described later).

다음은, 상기 보간 데이터치 0에 어드레스의 정부수 AI에 대응하는 샘플데이터 XF가 가산되고, 현재 어드레스(AI, FF)에 대응하는 새로운 샘플데이터 0(제5(b)도의 XQ에 대응)이 얻어진다(S1415).Next, sample data X F corresponding to the even number A I of the address is added to the interpolation data value 0, and new sample data 0 corresponding to the current addresses A I and F F (X in FIG. 5 (b)). Corresponding to Q ) is obtained (S1415).

이후, 이 샘플데이터에 엔블로프치 E가 승산되고(S1416), 얻어진 0의 내용이 MCPU(101) 또는 SCPU(012)의 RAM(206) 또는 (306)내의 파형데이터버퍼 B(제12도 참조)에 가산된다(S1417).Subsequently, the envelope data E is multiplied by this sample data (S1416), and the content of 0 obtained is the waveform data buffer B in the RAM 206 or 306 of the MCPU 101 or SCPU 012 (see FIG. 12). ) Is added (S1417).

그후, 제4(a)도의 메인플로로 복귀하고, 다음의 샘플링주기에서 인터럽트가 걸려, 제14도의 음원처리의 동작플로챠트가 다시 실행되고, 현재 어드레스(AI, AF)에 피치데이터(PI, PF)가 가산된다(S1401).Thereafter, the flow returns to the main flow of FIG. 4 (a), interrupts in the next sampling period, and the operation flowchart of the sound source processing of FIG. 14 is executed again, and the pitch data (at the current address A I , A F ) is executed. P I and P F are added (S1401).

이상의 동작이 어드레스의 정수부 AI에 변화가 생기기까지 반복된다.The above operation is repeated until a change occurs in the integer part A I of the address.

이 동안 샘플데이터 XP및 차분치 D는 갱신되지 않고, 보간 데이터 0만이 어드레스 AF에 따라 갱신되고 , 그때마다 새로운 샘플데이터 XQ가 얻어진다.During this time, the sample data X P and the difference value D are not updated, and only interpolation data 0 is updated in accordance with the address A F , and new sample data X Q is obtained each time.

다음은, S1410에서 현재어드레스(AI, AF)에 피치데이터(PI, PF)가 가산된 결과, 현재 어드레스의 정수부 AI가 변화되었다면(S1402), 어드레스 AI가 엔드어드레스 AE에 도달하고 있는지 또는 넘고 있는지 어떤지가 판정된다(S1403).Next, if the integer part A I of the current address is changed as a result of adding the pitch data P I and P F to the current addresses A I and A F in S1410 (S1402), the address A I is the end address A E. It is determined whether it has reached or exceeded (S1403).

판정이 NO일 경우, 이하의 S1404-S1407의 루프처리에 의해 현재 어드레스의 정수부 AI에 대응하는 샘플데이터가 계산된다. 즉, 우선 이전에 AI라하는 변수(제11도의 테이블 1의 DPCM의 란참조)에는 현재 어드레스의 정수부 AI가 변화하기전의 값이 격납되고 있다. 이것은, 후술할 S1406에서 순차 인클리멘트되면서 S1407에서 이전의 AI의값이 S1406에서 순차 인클리멘트되면서 S1407에서 이전의 A7P의해 지정되는 외부메모리(116)(제1도)상의 차분파형데이터가 D로서 판독되고, S1405에서 순차 샘플데이터 XP에 누산된다. 그리고, 이전 AI의 값이 변화후의 현재 어드레스의 정수부 AI에 같아진 시점에서, 샘플데이터 XP의 값은 변화후의 현재 어드레스의 정수부 AI에 대응하는 값으로 된다.If the determination is NO, the sample data corresponding to the integer part A I of the current address is calculated by the loop processing of S1404-S1407 below. In other words, the value before the constant portion A I of the current address is stored in the variable A I (see the column of DPCM in Table 1 in FIG. 11) before. This, as cement sequence of cleaners in the later-described S1406 previous A I uigap the difference waveform data on the external memory 116 (FIG. 1) while sequentially in Cleveland cement in S1406 is specified by the previous A7 P in S1407 from S1407 is It is read as D and accumulated in the sequential sample data X P in S1405. When the value of the previous A I becomes equal to the integer portion A I of the current address after the change, the value of the sample data X P becomes a value corresponding to the integer portion A I of the current address after the change.

이와같이하여, 현재 어드레스의 정수부 AI에 대응하는 샘플데이터 XP가 구해지면, S1404의 판정이 YES로 되며, 상술한 보간치의 연산처리(S1414)로 옮긴다.In this way, when the sample data X P corresponding to the integer part A I of the current address is obtained, the determination of S1404 is YES, and the processing proceeds to the above-described calculation processing of interpolation value (S1414).

상술한 음원처리가 각 인터럽트 타이밍마다 반복되고, S1403의 판정이 YES에 변화했다면 다음의 루프처리로 들어간다.The above-described sound source processing is repeated for each interrupt timing, and if the determination of S1403 has changed to YES, the process proceeds to the next loop process.

우선, 엔드어드레스 AE를 넘었던 만큼의 어드레스(AI-AE)가 루프어드레스 AL에 가산되고 얻게된 어드레스가 새로운 현재 어드레스의 정수부 AI으로 된다(S1408).First, as many addresses A I- A E as having exceeded the end address A E are added to the loop address A L and the obtained address becomes the integer part A I of the new current address (S1408).

이하, 루프어드레스 AL에서 어느만큼 어드레스가 나아갔는지에 의해, 몇회인가 차분치 D를 누산하는 조작이 반복됨으로써 새로운 현재 어드레스의 정수부 AI에 대응하는 샘플데이터 XP가 계산된다. 즉, 우선 초기설정으로서 샘플데이터 XP가 미리 설정되고 루프어드레스 AL에 있어서 샘플데이터 XPL(제11도의 테이블 1의 DPCM의 란 참조)의 값으로 되고, 또 이전이 AI가 루프어드레스 AL의 값으로 된다(S1409). 그리고, 이하의 S1410-S1413의 처리가 반복된다. 즉, 이전 AI의 값이 S1413에서 순차 인클리멘트되면서, S1410에서 이전 AI에 의해 지시되는 외부메모리(116)(제1도)상의 차분파형데이터가 D로서 판독되고, S1412에서 순차 샘플데이터 XP에 누산된다. 그리고, 이전 AI의 값이 새로운 현재 어드레스의 정수부 AI에 같아진 시점에서, 샘플데이터 XP의 값은 루프처리후의 새로운 현재 어드레스의 정수부 AI에 대응하는 값으로 된다.By the number of times the address advances in the loop address A L , the operation of accumulating the difference value D is repeated several times, so that the sample data X P corresponding to the integer part A I of the new current address is calculated. In other words, first, the sample data X P as the initial settings are preset and the value of the sample data X PL (see of the DPCM of 11 degrees Table 1 column) in the loop the address A L, yet prior to this A I, the loop address A It becomes the value of L (S1409). And the following process of S1410-S1413 is repeated. That is, while the value of the previous A I is sequentially incremented in S1413, the differential waveform data on the external memory 116 (FIG. 1) indicated by the previous A I in S1410 is read as D, and the sequential sample data in S1412. Accumulate in X P. When the value of the previous A I becomes equal to the integer portion A I of the new current address, the value of the sample data X P becomes a value corresponding to the integer portion A I of the new current address after the loop processing.

이와같이하여, 새로운 현재 어드레스의 정수부 AI에 대응하는 샘플데이터 XP가 구해지면, S1411의 판정이 YES로 되며, 상술한 보간치의 연산처리(S1414)로 옮긴다.In this way, when the sample data X P corresponding to the integer part A I of the new current address is obtained, the determination of S1411 is YES, and the processing proceeds to the above-described interpolation value calculation processing (S1414).

이상과 같이하여, 1발음채널분의 DPCM방식에 의한 파형데이터가 생성된다.As described above, waveform data by the DPCM method for one sound channel is generated.

[FM변조방식에 의한 음원처리(그 1)][Sound Source Processing by FM Modulation Method (Part 1)]

다음은, FM변조방식에 의한 음원처리에 대해 설명한다.Next, the sound source processing by the FM modulation method will be described.

FM변조방식에서는 통상, 제18도의 OOP1-OP4로 나타나게 되는 오퍼레이터라 칭하는 동일 내용의 하드웨어 또는 소프트웨어가 이용되고, 그들이 제18도의 알고리듬 1-4로서 나타나게되는 접속규칙에서 상호 접속에 따라 악음의 생성이 행해진다. 본 실시예에서는 소프트웨어로 FM변조방식을 실현하는 것이다.In the FM modulation system, hardware or software of the same content, commonly referred to as an operator represented by OOP1-OP4 in FIG. 18, is used, and the generation of the musical sound in accordance with the interconnection in the connection rule where they appear as Algorithms 1-4 in FIG. Is done. In this embodiment, the FM modulation method is implemented by software.

다음은, 제16(a)의 동작 플로챠트를 이용하여 2오퍼레이터로 음원처리를 행할 경우의, 1실시예의 동작을 설명한다. 처리의 알고리듬은 동 도면(b)로 나타나게된다. 또, 플로 중의 각 변수는 MCPU(101) 또는 SCPU(102)의 RAM(206, 306)상의 제9도의 어딘가의 발음채널영역에 기억되는 제11도의 테이블 1의 FM포맷의 각 데이터이다.Next, the operation of the first embodiment when the sound source processing is performed by the two operators using the operation flowchart of the sixteenth (a) will be described. The algorithm of processing is shown in Fig. (B). Each variable in the flow is the data of the FM format shown in Table 1 of FIG. 11 stored in the pronunciation channel region of FIG. 9 on the RAMs 206 and 306 of the MCPU 101 or SCPU 102. FIG.

최초로, 모듈레이터인 오퍼레이터 2(OP 2)의 처리가 행해진다.First, the process of operator 2 (OP 2) which is a modulator is performed.

피치처리에 대해서는 PCM방식과 같이 보간이 행해지지 않는 것으로, 정수 어드레스 A2만이다. 즉, 외부메모리(116)(제1도)에는 변조용 파형데이터가 매우 가는 보진간격으로 기억되고 있는 것으로 한다.As for the pitch processing, no interpolation is performed as in the PCM method, and only the constant address A 2 is used. In other words, it is assumed that the modulated waveform data is stored in the external memory 116 (FIG. 1) at a very small interpolation interval.

우선, 현재 어드레스 A2에 피치데이터 P2가 가산된다(S1601).First, pitch data P 2 is added to the current address A 2 (S1601).

다음은, 이 어드레스 A2에 피드백 출력 FO2가 변조입력으로서 가산되고, 새로운 어드레스 AM가 얻어진다(S1602). 피드백출력 FO2는 전회의 인터럽트 타이밍에 있어서 후술할 S1605의 처리가 실행됨으로써 얻어지고 있다.Next, the feedback output F O2 is added to this address A 2 as a modulation input, and a new address A M is obtained (S1602). The feedback output F O2 is obtained by executing the processing of S1605 to be described later at the last interrupt timing.

또한, 어드레스 AM2(위상)에 대응하는 정현파의 값이 계산된다. 실제로는 외부메모리(116)(제1도)에 정현파 데이터가 기억되고 있으며, 상기 어드레스 AM2에서 그 정현파 데이터를 테이블로 옮김으로서 얻어진다(1603).In addition, the value of the sine wave corresponding to the address A M2 (phase) is calculated. In fact, sine wave data is stored in the external memory 116 (FIG. 1), and is obtained by moving the sine wave data to a table at the address A M2 (1603).

이어서, 상기 정현파데이터에 엔빈로프치 E2가 승산되어 출력 O2가 얻어진다(S1604).Subsequently, the envelope rope value E 2 is multiplied by the sinusoidal wave data to obtain an output O 2 (S1604).

이후, 이 출력 O2에 피드백.레벨 FL2가 승산되어 피드백출력 FO2가 얻어진다(S1605).Subsequently, the feedback output level F L2 is multiplied by this output O 2 to obtain a feedback output F O2 (S1605).

이 출력 FO2는 본 실시예의 경우 다음회의 인터럽트 타이밍에 있어서 오퍼레이터 2(OP2)의 입력으로 된다.This output F O2 becomes the input of the operator 2 (OP2) at the next interrupt timing in the present embodiment.

또, O2에 모듈레이션.레벨 ML2가 승산되어 모듈레이션출력 MO2가 얻어진다(S1606).The modulation.level M L2 is multiplied by O 2 to obtain a modulation output M O2 (S1606).

이 모듈레이션출력 MO2는 오퍼레이터 1(OP1)로의 변조입력이 된다.The modulation output O2 M is the modulation input to the operator 1 (OP1).

다음은, 오퍼레이터 1(OP1)의 처리로 옮긴다. 이 처리는 피드백출력에 의한 변조입력이 없는 것이외는, 거의 상술한 오퍼레이터 2의 경우와 같다.Next, the process moves to operator 1 (OP1). This processing is almost the same as that of the operator 2 described above, except that there is no modulation input by the feedback output.

우선, 오퍼레이터 1의 현재 어드레스 A1에 피치데이터 P1이 가산되고(S1607). 이 값에 상술한 모듈레이션출력 MO2가 가산되어 새로운 어드레스 AM1이 얻어진다(S1608).First, the pitch data P 1 is added to the current address A 1 of the operator 1 (S1607). The modulation output M O2 described above is added to this value to obtain a new address A M1 (S1608).

다음은, 이 어드레스 AM1(위상)에 대응하는 정현파의 값이 외부메모리(116)(제1도)에서 판독되고(S1609), 이것에 엔빌로프치 E1이 승산되어 악음파형 출력 O1이 얻어진다(S1601).Next, the value of the sine wave corresponding to this address A M1 (phase) is read from the external memory 116 (FIG. 1) (S1609), and the envelope value E 1 is multiplied by this to output the sound wave waveform O 1 . It is obtained (S1601).

그리고, 이것이 RAM(206)(제2도) 또는 (306)(제3도)내의 버퍼 B(제12도 참조)에 가산되고(S1611), 1발음채널분의 FM변조처리를 종료한다.This is added to the buffer B (see FIG. 12) in the RAM 206 (FIG. 2) or 306 (FIG. 12) (S1611), and the FM modulation process for one sound channel is completed.

[TM변조방식에 의한 음원방식(그 1)][Sound source method (TM) by TM modulation method]

다음은 TM변조방식에 의한 음원처리에 대해 설명한다.Next, the sound source processing by the TM modulation method will be described.

우선, TM변조방식의 원리에 대해 설명한다.First, the principle of the TM modulation method will be described.

상술한 FM변조방식은,The above-described FM modulation method,

e=A.Sin{ωct+I(t).Sin ωmt}e = A.Sin {ωct + I (t) .Sin ωmt}

인 연산식을 기본으로 한다. 단, 여기서, ωct는 반송파위상각(반송신호), Sin ωmt는 변조파위상각(변조신호), 및 I(t)는 변조지수이다.Is based on the expression. Where ωct is the carrier phase angle (carrier signal), Sin ωmt is the modulation wave phase angle (modulation signal), and I (t) is the modulation index.

이것에 대해, 본 실시예에서 TM변조방식이라 부르는 위상변조방식은,On the other hand, in the present embodiment, the phase modulation method called TM modulation method,

e=A.fT{fc(t)+I(t).Sin ωmt}e = Af T {fc (t) + I (t) .Sin ωmt}

인 연산식을 기본으로 한다. 여기서, fT(t)는 삼각파관수이며, 각 위상각의 영역마다 다음과 같은 관수로 정의된다(단, ω는 입력).Is based on the expression. Here, fT (t) is a triangular wave number, and is defined as the following number for each phase angle region (where ω is input).

fT(ω)=2/π·ωf T (ω) = 2 / πω

‥(영역 : 0ωπ/2)‥ (Area: 0 ω π / 2)

fT(ω)=-1+2/π(3π/2-ω)f T (ω) =-1 + 2 / π (3π / 2-ω)

‥(영역 : π/2ω3π/2)‥ (Area: π / 2 ω 3π / 2)

fT(ω)=-1+2/π(ω-3π/2)f T (ω) =-1 + 2 / π (ω-3π / 2)

‥(영역 : 3π/2ω2π)‥ (Area: 3π / 2 ω 2π)

또, fc는 변형사인파라 불리고, 각 위상각의 영역마다, 다른 사인파형데이터의 기억되고 있는 외부메모리(116)(제1도)를 반송위상각 ωct로 액세스하여 얻어지는 반송신호 생성관수이다. 각 위상각의 영역마다의 fc는 다음과 같이 정의된다.Fc is called a modified sine wave and is a carrier signal generation number obtained by accessing an external memory 116 (FIG. 1) stored in different sine wave data for each phase angle region at a carrier phase angle ωct. Fc for each phase angle region is defined as follows.

fC(t)=π/2 Sin ωctf C (t) = π / 2 Sin ωct

‥(영역 : 0ωtπ/2)‥ (Area: 0 ωt π / 2)

fC(t)=π-π/2 Sin ωctf C (t) = π-π / 2 Sin ωct

‥(영역 : 0ωt3π/2)‥ (Area: 0 ωt 3π / 2)

fC(t)=2π+π/2 Sin ωctf C (t) = 2π + π / 2 Sin ωct

‥(영역 : 3πCtπ/2π)‥ (Area: 3π 2ω t C π / 2π)

(단 n은 정수)(Where n is an integer)

TM변조방식에서는 상술한 바와 같이 관수 fC(t)에서 생성되는 반송신호에 변조신호 sinωmt를 변조지수 I(t)로 나타나게 되는 비율로 가산하여 얻은 가산신호에 의해 상술한 삼각파관수가 변조된다. 이것에 의해, 변조지수 I(t)의 값이 0이면 정현파를 생성할 수 있으며, I(t)의 값을 크게하여 가면 매우 깊게 변조된 파형을 생성할수가 있다.In the TM modulation method, the above-described triangular wave number is modulated by the addition signal obtained by adding the modulation signal sinωmt to the carrier signal generated at the irrigation water f C (t) at the rate indicated by the modulation index I (t). As a result, a sine wave can be generated when the value of the modulation index I (t) is 0, and a very deeply modulated waveform can be generated by increasing the value of I (t).

여기서, 변조신호 sinωmt 대신에 여러가지 신호를 이용할수가 있으며, 이하에 서술한 바와 같이, 전회 연산시의 자신의 오퍼레이터 출력을 일정한 피드백레벨로 피득백시키거나, 다른 오퍼레이터의 출력을 입력시키거나 할수가 있다.Here, various signals can be used instead of the modulated signal sinωmt, and as described below, the operator's output of the previous operation can be returned to a constant feedback level, or the output of another operator can be input. .

이와같은 원리의 TM변조방식에 의해 음원처리를 제17(a)도의 동작플로챠트를 이용하여 설명한다. 이 경우도, 제16도의 FM변조방식의 경우와 같은, 2오퍼레이터로 음원처리를 행한 경우의 예이며, 처리의 알고리듬은 제17(b)도로 나타나게된다. 또, 플로중의 각 변수는 MCPU(101) 또는 S CPU(102)의 RAM(206, 306)상의 제9도에 어딘가의 발음채널 영역에 기억되는 제11도의 테이블 1의 TM포맷의 각 데이터이다.The sound source processing by the TM modulation method of this principle is explained using the operation flowchart of FIG. 17 (a). This case is also an example of a case where sound source processing is performed by two operators as in the FM modulation method of FIG. 16, and the algorithm of the processing is shown in FIG. 17 (b). Each variable in the flow is the data of the TM format shown in Table 1 of FIG. 11 stored in the pronunciation channel region somewhere in FIG. 9 on the RAMs 206 and 306 of the MCPU 101 or the S CPU 102. .

최초로, 모듈레이션인 오퍼레이터 2(OP2)의 처리가 행해진다. 피치처리에 대해서 PCM방식과 같이 보간이 행해지지 않는 것으로 정수 어드레스 A2뿐이다.First, processing of operator 2 (OP2), which is modulation, is performed. Interpolation is not performed with respect to the pitch processing as in the PCM method, only the constant address A 2 .

우선, 현재어드레스 A2에 피치데이터 P2가 가산된다(S1701).First, pitch data P 2 is added to the current address A 2 (S1701).

다음으로, 변형사인변환 fc에 의해 상기 어드레스 A2(위상)에 대응하는 변형사인파가 외부메모리(116)(제1도)에서 판독되고, 반송신호가 O2로서 생성된다(S1702).Next, the modified sine wave corresponding to the address A 2 (phase) is read from the external memory 116 (FIG. 1) by the modified sine transform fc, and a carrier signal is generated as O 2 (S1702).

이어서, 반송신호인 상술한 O2에 변조신호로서 피득백 출력 FO2(S1706)이 가산되고, 새로운 어드레스가 얻어져서 O2로 된다(S1703). 피드백 출력 FO2(S1706)이 가산되고, 새로운 어드레스가 얻어져서 O2로 된다(S1703). 피득백 출력 FO2는 전회의 인터럽트 타이밍이 있어서 후술할 S1706의 처리가 실행됨으로써 얻어지고 있다.Then, the blood deukbaek output O2 F (S1706) as a modulation signal to the above-mentioned O 2 of the carrier signal are added, a new address is obtained is a O 2 (S1703). Feedback output O2 F (S1706) is added, the new address is obtained is a O 2 (S1703). The gain-back output F O2 is obtained by performing the processing of S1706 which will be described later because of the previous interrupt timing.

그리고, 상술한 가산어드레스 O2에 대응하는 삼각파의 값이 계산된다. 실제로는 외부메모리(116)(제1도)에 상술한 삼각파데이터가 기억되고 있으며, 상기 어드레스 O2에서 그 삼각파 데이터를 테이블로 옮김으로서 얻어진다(S1704).Then, the value of the triangular waveform corresponding to the above-mentioned O 2 adds the address is calculated. In reality, the above-described triangular wave data is stored in the external memory 116 (FIG. 1), and is obtained by moving the triangular wave data to a table at the address O 2 (S1704).

이어서, 상기 삼각파 데이터에 앤빌로프치 E2가 승산되어 출력 O2가 얻어진다(S1705).Subsequently, the triangle wave data is multiplied by an envelope value E 2 to obtain an output O 2 (S1705).

이후, 이 출력 O2에 피드백.레벨 FL2가 승산되어 피드백출력 FO2가 얻어진다(S1707).Subsequently, the feedback level F L2 is multiplied by this output O 2 to obtain a feedback output F O2 (S1707).

이 출력 FO2는 본 실시예의 경우, 다음회의 인터럽트 타이밍에 있어서 오퍼레이터 2(OP2)로의 입력으로 된다.This output F O2 becomes an input to operator 2 (OP2) at the next interrupt timing in the present embodiment.

또, O2에 모듈레이션.레벨 ML2가 승산되어 모듈레이션출력 MO2가 얻어진다(S1707). 이 모듈레이션출력 MO2는 오퍼레이터 1(OP1)로의 변조입력이 된다.The modulation.level M L2 is multiplied by O 2 to obtain a modulation output M O2 (S1707). The modulation output O2 M is the modulation input to the operator 1 (OP1).

다음으로, 오퍼레이터(OP1)의 처리로 옮긴다. 이 처리는 피드백 출력에 의한 변조입력 없는것 외는 거의 상술한 오퍼레이터 2의 경우와 같다.Next, the process moves to the operator OP1. This processing is almost the same as that of the operator 2 described above except that there is no modulation input by the feedback output.

우선, 오퍼레이터 1의 현재 어드레스 A1에 피치데이터 P2이 가산되고(S1708), 얻어진 값에 대하여 상술한 변형사인변환이 행해져서 반송신호가 O1로서 얻어진다(S1709).First, the pitch data P 2 is added to the current address A 1 of the operator 1 (S1708), and the above-described transformed sine conversion is performed on the obtained value to obtain a carrier signal as O 1 (S1709).

다음으로, 이 O1에 상술한 모듈레이션출력 MO2가 가산되어 새로운 O1로 되고(S1710), 이 값 O2이 삼각파 변환되고(S1711), 또한 엔빌로프치 E1이 승산되어 악음파형출력 O1이 얻어진다(S1712).Next, a modulation output described in the O 1 M O2 are added and a new O 1 (S1710), the value O is 2 the triangular wave conversion (S1711), In addition, the envelope value E is first multiplied tone waveform output O 1 is obtained (S1712).

이것이 RAM(206)(제2도) 또는 (306)(제3도)내의 버퍼 B(제12도 참조)에 가산되고(S1713), 1발음채널분의 TM변조처리를 종료한다.This is added to the buffer B (see FIG. 12) in the RAM 206 (FIG. 2) or 306 (FIG. 12) (S1713), and the TM modulation process for one sound channel is completed.

이상, PCM, DPCM, FM, TM이라는 4개의 방식에 의한 음원처리를 설명했다. 이 중에서, FM과 TM의 2방식은 변조방식이며, 상술한 예에서 모두 제16(b)도, 제17(b)도에서 도시하는 알고리듬에 기인하는 2오퍼레이터에 의한 처리이지만, 실제로 연주의 음원처리는 오퍼레이터의 수가 더욱 많고, 알고리듬은 더욱 복잡하다. 그 예가 제18도에 도시되어있다. 동 도면의 알고리듬 1에서는 피드백 입력도 포함하여 4겹의 변조가 행해지고, 복잡한 파형이 얻어진다. 또 알고리듬 2에서는 피득백입력을 가지는 2조의 알고리듬이 병렬되어 있으며, 예를 들면 어택에서 서스테인으로 이행할 때의 음색변화를 표현하는 것에 적당하다. 또, 알고리듬 4는 사인파 합성법에 가까운 특징을 갖는다.In the above, sound source processing by four methods, PCM, DPCM, FM, and TM, was demonstrated. Of these, the two methods of FM and TM are modulation methods. In the above-mentioned examples, the processing is performed by two operators resulting from the algorithm shown in Figs. 16 (b) and 17 (b). The process has a larger number of operators, and the algorithm is more complicated. An example is shown in FIG. In Algorithm 1 of the figure, four layers of modulation are performed including the feedback input, thereby obtaining a complicated waveform. In Algorithm 2, two sets of algorithms having a feedback input are arranged in parallel, and are suitable for expressing a change in tone when moving from attack to sustain, for example. Algorithm 4 has a feature close to that of sine wave synthesis.

제18도의 4오퍼레이터에 의한 FM방식과 TM방식의 통상 생각되는 음원처리의 예를 제19도 및 제20도를 이용하여 순차 설명한다.Examples of the conventional sound source processing of the FM system and the TM system by the four-operator of FIG. 18 will be described in sequence using FIG. 19 and FIG.

[FM변조방식에 의한 1(그 2)][1 (2) by FM modulation method]

제19도는 제18도의 알고리듬 1에 대응하는 FM변조방식에 기인하는 통상 생각되는 음원처리의 동작 플로챠트이다. 플로중이 각 변수는 M CPU(101) 또는 S CPU(102)의 RAM(206, 306)상의 제9도이 어딘가의 발음채널영역에 기억된다. 또한, 제11도의 테이블 1의 FM포맷의 각 데이터에는 대응하고 있지 않으나, 그 데이터포맷을 확장하면 용이하게 실현할수 있는 것이 분명하다.FIG. 19 is an operation flowchart of a conventional sound source processing resulting from the FM modulation system corresponding to Algorithm 1 of FIG. Each variable in the flow is stored in the pronunciation channel region somewhere in FIG. 9 on the RAMs 206 and 306 of the M CPU 101 or the S CPU 102. In addition, although it does not correspond to each data of the FM format of Table 1 of FIG. 11, it is clear that it can be easily achieved by extending the data format.

처음, 오퍼레이터 4(OP4)의 현재 어드레스 A4에 피치데이터 P4가 가산된다(S1901).First, the pitch data P 4 is added to the current address A 4 of the operator 4 (OP4) (S1901).

다음은, 이 어드레스 A4에 피드백 출력 FO4(S1905)가 변조 입력으로서 가산되고, 새로운 어드레스 AM4가 얻어진다(S1902). 또한, 어드레스 AM4(위상)에 대응하는 정현파의 값이, 외부메모리(116)(제1도 참조)에서 판독되고(S1908), 이것에 엔빌로프치 E4가 승산되어 출력 O4가 얻어진다(S1904). 이후, 상기 출력 O4에 피드백.레벨 FL4가 승사되어 피드백출력 FO4가 얻어진다(S1905). 또, 출력 O4에 모듈레이션.레벨 ML4가 승산되어 모듈레이션출력 MO4가 얻어진다(S1906). 이 모듈레이션출력 MO4는 다음의 오퍼레이터 3(OP3)으로의 변조입력이 된다.Next, the feedback output F O4 (S1905) is added to this address A 4 as a modulation input, and a new address A M4 is obtained (S1902). In addition, the value of the sine wave corresponding to the address A M4 (phase) is read from the external memory 116 (see FIG. 1) (S1908), and the envelope value E 4 is multiplied by this to obtain an output O 4 . (S1904). Thereafter, the feedback. Level F L4 is multiplied to the output O 4 to obtain a feedback output F O4 (S1905). The modulation.level M L4 is multiplied by the output O 4 to obtain a modulation output M O4 (S1906). This modulation output MO4 is a modulation input to the next operator 3 (OP3).

다음으로, 오퍼레이터 3(OP3)의 처리로 옮긴다. 이 처리는 피드백출력에 의한 변조입력이 없는것외는, 거의 상술한 오퍼레이터 4의 경우와 같다. 우선, 오퍼레이터 3(OP3)의 현재 어드레스 A3에 피치데이터 P3이 가산된다(S1907). 다음으로, 어드레스 A3에 모듈레이션출력 MO4가 변조입력으로서 가산되고, 새로운 어드레스 AM3가 얻어진다(S1908). 또한 이 어드레스 AM3(위상)에 대응하는 정현파의 값이 외부메모리(116)(제1도)에서 판독되고(S1909), 이것에 엔빌로프치 E3이 승산되어 출력 O3가 얻어진다(S1910). 이후, 이 출력 O3에 모듈레이션.레벨 ML3가 승산되어 모듈레이션출력 MO3이 얻어진다(S1911). 이 모듈레이션출력 MO3은 다음의 오퍼레이터 2(OP2)로의 변조입력이 된다.Next, the process moves to operator 3 (OP3). This process is almost the same as that of the operator 4 described above, except that there is no modulation input by the feedback output. First, pitch data P 3 is added to the current address A 3 of operator 3 (OP3) (S1907). Next, the modulation output M O4 is added to the address A 3 as a modulation input, and a new address A M3 is obtained (S1908). In addition, the value of the sine wave corresponding to this address A M3 (phase) is read from the external memory 116 (FIG. 1) (S1909), and the envelope value E 3 is multiplied to obtain an output O 3 (S1910). ). Then, the modulation Level L3 M is multiplied to the output O 3 are the modulated output M O3 obtained (S1911). This modulation output MO3 is a modulation input to the next operator 2 (OP2).

다음으로, 오퍼레이터 2(OP2)의 처리가 실행되지만, 이 처리는 변조입력이 다른것 만으로, 상술한 오퍼레이터 3의 경우와 같으므로 설명을 생략한다.Next, although the processing of the operator 2 (OP2) is executed, this processing is the same as in the case of the operator 3 described above because only the modulation inputs are different, and a description thereof is omitted.

최후로, 오퍼레이터(OP1)의 처리에 들어가지만, 이것도 스텝 S1920까지는, 지금까지와 같이 처리가 행해진다. 그리고, S1920에서 얻어진 악음파형출력 O1은 캐리어로서 버퍼 B(제12도 참조)에 누산된다(S1921).Finally, the process of the operator OP1 is entered, but this process is also performed up to step S1920 as before. The sound waveform output O 1 obtained in S1920 is accumulated in the buffer B (see FIG. 12) as a carrier (S1921).

[TM변조방식에 의한 음원처리(그 2)][Sound source processing by TM modulation method (Part 2)]

제20도는, 제18도의 알고리듬 1에 대응하는 TM변조방식에 기인하는 통상 생각되는 음원처리의 동작플로챠트이다. 플로중의 각변수는 M CPU(101) 또는 S CPU(102)의 RAM(206, 306)상의 제9도의 어딘가의 발음채널영역에 기억된다. 또한, 제11도의 테이블 1의 TM포캣의 각 데이터에는 대응하고 있지 않지만, 제11도의 데이터포맷을 확장하면 용이하게 실현할수 있는 것은 분명하다.FIG. 20 is an operation flowchart of a conventional sound source processing resulting from the TM modulation system corresponding to Algorithm 1 of FIG. Each variable in the flow is stored in the pronunciation channel region of FIG. 9 on the RAMs 206 and 306 of the M CPU 101 or the S CPU 102. In addition, although it does not correspond to each data of TM format of Table 1 of FIG. 11, it is clear that it can be easily achieved by extending the data format of FIG.

우선, 오퍼레이터 4(OP4)의 현재 어드레스 A4에 피치데이터 P4가 가산된다(S2001).First, the pitch data P 4 is added to the current address A 4 of the operator 4 (OP4) (S2001).

다음으로, 변형사인변화 fc에 의해, 상술한 어드레스 A4(위상)에 대응하는 변형 사인파가 외부메모리(116)(제1도 참조)에서 판독되고, 반송신호가 O4로서 생성된다(S2002). 그리고, 출력 O4에 변조신호로서 피드백출력 FO4(S2007참조)가 가산되고, 새로운 어드레스 O4가 얻어진다(S2003). 다음으로, 이 어드레스 O4(위상)에 대응하는 B삼각파의 값이 외부메모리(116)(제1도)에서 판독되고(S2004), 이것에 엔빌로프치 E4가 승산되어 출력 O4가 얻어진다(S2005). 이후, 이 출력 O4에 모듈레이션. 레벨 ML4가 승산되어 모듈레이션출력 MO4가 얻어지고(S2006), 또, 출력 O4에 피드백.레벨 FL4가 승산되어 피드백출력 FO4가 얻어진다(S2007). 상기 모듈레이션출력 FO4는 다음의 오퍼레이터 3(OP3)으로의 변조입력이 된다.Next, the modified sine wave corresponding to the above-described address A 4 (phase) is read from the external memory 116 (see FIG. 1) by the modified sine change fc, and a carrier signal is generated as O 4 (S2002). . The feedback output F O4 (see S2007) is added to the output O 4 as a modulation signal, and a new address O 4 is obtained (S2003). Next, the value of the B triangle wave corresponding to this address O 4 (phase) is read from the external memory 116 (FIG. 1) (S2004), and the envelope value E 4 is multiplied by this to obtain the output O 4 . (S2005). Thereafter, modulation to this output O 4 . The level M L4 is multiplied to obtain a modulation output M O4 (S2006), and the output O 4 is fed back. The level F L4 is multiplied to obtain a feedback output F O4 (S2007). The modulation output F O4 is a modulation input to the next operator 3 (OP3).

다음으로, 오퍼레이터 3(OP3)의 처리로 들어간다. 이 처리는 피드백출력에 의한 변조입력이 없는 것외는, 거의 상술한 오퍼레이터 4의 경우와 같다. 우선, 오퍼레이 3의 현재 어드레스 A3에 피치데이터 P3가 가산되고(S2008), 얻어진 값에 대하여 변형사인 변환이 행해져서 반송신호가 O3로서 얻어진다(S2009). 다음으로, 이 O3에 상술한 모듈레이션출력 MO4가 가산되어 새로운 O3으로 되고(S2010), 이 값 O3가 삼각파변환되고(S2011), 또한 엔벨로프치 E3가 승산되어 출력 O3가 얻어진다(S2010). 또한, 이 것에 모듈레이션.레벨 ML3가 얻어진다(S2013). 이 모듈레이션출력 MO3은 다음의 오퍼레이터 2(OP)로의 변조입력이 된다.Next, processing of operator 3 (OP3) is entered. This processing is almost the same as that of the operator 4 described above, except that there is no modulation input by the feedback output. First, the pitch data P 3 is added to the current address A 3 of the operation 3 (S2008), and a transformation sign transformation is performed on the obtained value to obtain a carrier signal as O 3 (S2009). Then obtained by, the O 3 is obtained by adding the modulated output M O4 above to become a new O 3 (S2010), the value O 3 is a triangle wave conversion and (S2011), In addition, the envelope value E is 3 is multiplied by the output O 3 (S2010) In addition, modulation. Level M L3 is obtained in this (S2013). This modulation output MO3 is a modulation input to the next operator 2 (OP).

다음으로, 오퍼레이터 2(OP2)의 처리가 실행되지만, 이 처리는 변조입력이 다른것 만으로, 상술한 오퍼레이터 3의 경우와 같기 때문에 설명을 생략한다.Next, although the processing of the operator 2 (OP2) is executed, this processing is the same as in the case of the operator 3 described above because only the modulation inputs are different, and the description is omitted.

최후로, 오퍼레이터 1(OP1)의 처리에 들어가지만, 이것도 스텝 S2024까지는, 지금까지와 마찬가지인 처리가 행해진다. 그리고, S2024에서 얻어진 악음파형출력 O1은 캐리어로서 버퍼 B(제12도 참조)에 누산된다(S2025).Finally, the process of operator 1 (OP1) is entered, but this process is the same as before until step S2024. The sound waveform output O 1 obtained in S2024 is accumulated in the buffer B (see FIG. 12) as a carrier (S2025).

이상, 변조방식에 의한 통상의 음원처리의 실시예를 설명했으나, 이 처리는 상술한 바와 같이 1발음채널분의 처리이고, 실제로는 M CPU(101)와 S CPU(102)의 각 1CPU 당, 8발음채널분 처리된다(제4(b)도 참조). 그리고, 어느 발음채널에 변조방식이 지정되어 있으면 상술한 변속방식에 의한 음원처리가 움직인다.As mentioned above, although the embodiment of the normal sound source processing by the modulation method has been described, this processing is for one sounding channel as described above, and in fact, for each CPU of the M CPU 101 and the S CPU 102, Eight phonetic channels are processed (see also fourth (b)). If a modulation scheme is assigned to any sounding channel, the sound source processing by the above-described shifting scheme is moved.

[변조방식의 개량예 (그 1)][Examples of Modulation Modification (Part 1)]

다음으로, 변조방식에 의한 음원처리의 제1개량예를 설명한다.Next, a first example of improvement of sound source processing by the modulation method will be described.

그 기본 개념은 제21도의 플로챠트에 도시되어 있다.The basic concept is shown in the flowchart of FIG.

동 도면에 있어서, 오퍼레이터, 1, 2, 3, 4처리는 이용되는 변수명이 다를뿐이고 프로그램구조는 같다.In the figure, the operator, 1, 2, 3, and 4 processing only use variable names and the program structure is the same.

여기서, 각 오퍼레이터처리는 변조입력을 정하지 않으면 오퍼레이터처리를 행할 수는 없다라는 것은 제18도에 도시된 바와 같이 알고리듬에 의해 각 오퍼레이터처리로의 변조입력이 다르기 때문이다. 즉, 어느 알고리듬처리의 출력을 변조입력으로 하는 것인지, 혹은 알고리듬처리가 아니고 자신의 알고리듬처리의 출력을 피드백하여 자신의 변조입력으로 하는 것인지를 결정할 필요가 있다. 거기서, 제21도의 동작플로에서는 이와같은 접속관계가 알고리듬처리(S2105)로서 정리하여 행해지고, 이것에 의해 얻어지는 접속관계가 다음의 인터럽트 타이밍에 있어서 각 오퍼레이터처리(S2102-S2104)에서 변조입력을 결정하도록 동작한다. 또한, 발음개시시의 (즉 가장처음의) 각 오퍼레이터처리로의 입력으로서는 어느 초기치가 부여된다.Here, the reason that each operator process cannot perform the operator process without determining the modulation input is because the modulation input to each operator process differs according to the algorithm as shown in FIG. In other words, it is necessary to determine which output of the algorithm processing is the modulation input, or whether the output of the algorithm processing is fed back as the modulation input rather than the algorithm processing. In the operation flow of FIG. 21, such connection relations are collectively performed as the algorithm processing (S2105), and the connection relations obtained thereby determine the modulation input at each operator processing (S2102-S2104) at the next interrupt timing. It works. In addition, an initial value is given as an input to each operator process at the start of pronunciation (i.e., the earliest).

이와같이 오퍼레이터처리가 알고리듬처리를 분리하면, 어떠한 알고리듬의 경우라도, 오퍼레이터처리의 프로그램은 동일하여 괜찮고, 알고리듬처리만 변경하면 좋다. 따라서 변조방식에 의한 음원처리전체의 프로그램용량을 대폭으로 감소시키는 것이 가능하게 된다.In this way, if the operator processing separates the algorithm processing, in any algorithm, the program of the operator processing is the same, and the algorithm processing only needs to be changed. Therefore, it is possible to significantly reduce the program capacity of the entire sound source processing by the modulation method.

다음으로, 상술한 기본개념에 기인하는 FM변조방식의 개량예에 대해 설명한다. 제21도의 오퍼레이터처리의 FM변조방식에 의한 동작 플로챠트를, 오퍼레이터 1처리를 예로서 제22(a)도에 도시하고, 1오퍼레이터당의 연산알고리듬을 동 도면(b)에 도시한다.Next, an example of improvement of the FM modulation method based on the above-described basic concept will be described. The operation flowchart by the FM modulation method of the operator processing of FIG. 21 is shown in FIG. 22 (a) as an example of operator 1 processing, and the calculation algorithm per operator is shown in the same figure (b).

다른 오퍼레이터 2-4처리도 변수의 첨자번호가 다른 것만으로 매우 같다. 또한, 플로중의 각 변수는 M CPU(101) 또는 S CPU(102)의 RAM(206, 306)상의 제9도의 어딘가의 발음채널에 기억된다.The other operators 2-4 processes are very similar just by different subscript numbers. Further, each variable in the flow is stored in a pronunciation channel somewhere in FIG. 9 on the RAMs 206 and 306 of the M CPU 101 or the S CPU 102.

우선, 위상각에 대응하는 어드레스 A1에 피치데이터 P1이 가산되고, 새로운 어드레스 A1으로 된다(S2201). 다음으로 이 어드레스 A1에 변조입력 M11이 가산되고, 어드레스 AM1이 얻어진다(S2202). 변조입력 M11은 전회의 인터럽트 타이밍에서 알고리듬처리 S2105(제21)에 의해 결정되고, 알고리듬에 의해, 그 오퍼레이터자신의 피득백출력 FO1이였거나, 축은 다른 오퍼레이터, 예를 들면 오퍼레이터 2의 출력 MO2이였거나 한다. 다음으로, 이 어드레스(위상) AM1에 대응하는 정현파의 값이 외부메모리(116)(제1도)에서 판독되고, 출력 O1이 얻어진다(S2203). 그후, 이것에 엔빌로프 데이터 E1이 승산된 값이 오퍼레이터 1의 출력 O1이 된다(S2204). 또, 이 출력 O1에 피득백.레벨 FL1이 승산되어 피득백출력 FO1이 얻어지고(S2205), 또, 출력 O1에 모듈레이션.레벨 ML1이 승산되어, 모듈레이션 MO1이 얻어진다(S2206).First, the pitch data P 1 is added to the address A 1 corresponding to the phase angle to become a new address A 1 (S2201). Next, the modulation input M 11 is added to this address A 1 , and an address A M1 is obtained (S2202). The modulation input M 11 is determined by the algorithm processing S2105 (21st) at the last interrupt timing, and by the algorithm, the operator's own feedback output F O1 or the axis is output M of another operator, for example, operator 2. Maybe it was O2 . Next, the value of the sine wave corresponding to an address (phase) A M1 is read from the external memory 116 (FIG. 1), is the output O 1 is obtained (S2203). After that, the value multiplied by the envelope data E 1 becomes the output O 1 of the operator 1 (S2204). This output O 1 is multiplied by the gain.level F L1 to obtain the gain output F O1 (S2205), and the modulation and level M L1 is multiplied by the output O 1 to obtain the modulation M O1 ( S2206).

다음으로, 상술한 기본개념에 기인하는 TM변조방식의 개량예에 대해 설명한다. 제21도의 오퍼레이터처리의 TM변조방식에 의한 동작 플로챠트를 오퍼레이터 1처리를 예로서 제23(a)도를 나타내고, 1오퍼레이터당의 연산알고리듬을 동 도면(b)에 나타낸다.Next, an example of improvement of the TM modulation method resulting from the basic concept mentioned above is demonstrated. The operation flowchart by the TM modulation method of the operator processing of FIG. 21 is shown in FIG. 23 (a) as an example of operator 1 processing, and the calculation algorithm per operator is shown in the same figure (b).

다른 오퍼레이터 2-4처리도 변수의 첨자번호가 다를 뿐이고 매우 같다. 또한, 플로중의 각 변수를 M CPU(101) 또는 S CPU(102)의 RAM(206, 306)상의 제9도의 어딘가의 발음채널에 기억된다.The other operators 2-4 processing are just the same, with different subscript numbers for the variables. Further, each variable in the flow is stored in a pronunciation channel somewhere in FIG. 9 on the RAMs 206 and 306 of the M CPU 101 or the S CPU 102.

우선, 현재 어드레스 A1에 피치데이터 P1이 가산된다(S2301). 다음으로, 변형사인변환 fc에 의해 상술한 어드레스 A1(위상)에 대응하는 변형사인파가 외부메모리(116)(제1도)에서 판독되고, 반송신호가 O1로서 생성된다(S2302). 그리고, 출력 O1에 변조신호로서 변조입력 M11이 가산되고, 새로운 어드레스 O1이 얻어진다(S2303). 다음으로, 이 어드레스 O1(위상)에 대응하는 삼각파의 값이 외부메모리(116)에서 판독되고(S2304), 이것에 엔빌로프치 E1이 승산되어 출력 O1로 된다(S2305). 이후, 이 출력 O1에 피득백.레벨 FL1이 승산되어 피득백출력 FO1이 얻어지고(S2306), 또, 출력 O1에 모듈레이션.레벨 ML1이 승산되어 모듈레이션출력 MO1이 얻어진다(S2307).First, pitch data P 1 is added to the current address A 1 (S2301). Next, the modified sine wave corresponding to the above-described address A 1 (phase) is read from the external memory 116 (FIG. 1) by the modified sine transform fc, and a carrier signal is generated as O 1 (S2302). The modulation input M 11 is added as a modulation signal to the output O 1 , and a new address O 1 is obtained (S2303). Next, the value of the triangular wave corresponding to this address O 1 (phase) is read from the external memory 116 (S2304), and the envelope value E 1 is multiplied by this to become the output O 1 (S2305). Thereafter, the feedback.level F L1 is multiplied by this output O 1 to obtain the feedback output F O1 (S2306), and the modulation.level M L1 is multiplied by the output O 1 to obtain a modulation output M O1 ( S2307).

다음으로, 상술한 FM방식과 TM방식의 양 변조 방식에서의 오퍼레이터에 있어서 변조입력을 결정하기 위한 제21도의 알고리듬처리 S2105의 구체예를 제24도의 동작플로챠트에서 설명한다. 동 도면의 플로는 FM방식과 TM방식 공통이며, 제18도의 알고리듬의 1-4를 전환하여 처리하는 예이다. 이 경우의 알고리듬 1-4의 선택갈래는 연주자에 의한 특별하게는 도시하지 않은 지시에 기인하여 선택된다(S2400).Next, a specific example of the algorithm processing S2105 in FIG. 21 for determining the modulation input in the operator of both the FM system and the TM system described above will be described in the operation flowchart of FIG. The flow in the figure is common to the FM system and the TM system, and is an example in which 1-4 of the algorithm shown in FIG. 18 is switched. In this case, the selection branch of Algorithms 1-4 is selected based on an instruction not specifically shown by the player (S2400).

우선, 알고리듬 1은 제18(a)와 같이, 4오퍼레이터(OP라 약칭한다) 직렬형으로, OP4만 피트백입력을 가진다. 즉, OP4의 피트백출력 FO4가 OP4의 변조입력 M14로 되고(S2401), OP4의 모듈레이션 MO4가 OP3의 변조입력 M13으로 되고(S2402), OP3의 모듈레이션출력 MO3이 OP2의 변조입력 M12로 되고(S2403), OP의 모듈레이션출력 MO2가 OP1의 변조입력 M11로 되고(S2404), OP의 출력 O1이 캐리어 출력으로서 버퍼 B(제12도 참조)에 가산된다(S2405),라는 알고리듬이다.First, Algorithm 1 is a four-operator (abbreviated as OP) serial type as in the eighteenth (a), and only OP4 has a pitback input. That is, the pitback output F O4 of the OP4 becomes the modulation input M 14 of the OP4 (S2401), the modulation M O4 of the OP4 becomes the modulation input M 13 of the OP3 (S2402), and the modulation output M O3 of the OP3 becomes the modulation of the OP2. and the input M12 (S2403), the modulation output of the OP M O2 is added to and as OP1 modulation type M 11 in (S2404), the buffer B outputs O 1 of OP is a carrier output (see Fig. 12) (S2405) Is called an algorithm.

알고리듬 2는 제18(b)도와 같이, OP2와 OP4가 피드백입력을 가지는 즉, OP4의 피드백출력 FO4가 OP4의 변조입력 M14로 되고(S2406), OP4의 모듈레이션 출력 MO4가 OP3의 변조입력 M13으로 되고(S2407), OP2의 피드백출력 FO2가 OP2의 변조입력 M12로 되고(S2408), OP2와 OP3의 모듈레이션출력 MO2, MO3이 OP1의 변조입력 M11로 되고(S2409), OP1의 출력 O1이 캐리어출력으로서 버퍼 B에 가산된다(S24010),라는 알고리듬이다.Algorithm 2 shows that OP2 and OP4 have a feedback input as shown in Fig. 18 (b), that is, feedback output F O4 of OP4 becomes modulation input M 14 of OP4 (S2406), and modulation output M O4 of OP4 modulates OP3. Input M 13 (S2407), feedback output F O2 of OP2 becomes modulation input M 12 of OP2 (S2408), modulation outputs M O2 and M O3 of OP2 and OP3 become modulation input M 11 of OP1 (S2409) The output O 1 of OP1 is added to the buffer B as a carrier output (S24010).

알고리듬 3은 OP2와 OP4와 피드백입력을 가지고, 2모듈레이션 직렬형이 2개 병렬로 구성된다. 즉,OP4의 피드백출력 FO4가 OP4의 변조입력 M14로 되고(S2411), OP4의 모듈레이션 출력 MO4가 OP3의 변조입력 M13으로 되고(S2412), OP2의 피드백출력 FO2가 OP2의 변조입력 M12로 되고(S2413), OP2의 모듈레이션 출력 MO2가 OP1의 변조입력 M11로 되고(S2414), OP1과 OP3의 각 출력 O1과 O3가 캐리어출력으로서 버퍼 B에 가산된다(S2415),하는 알고리듬이다.Algorithm 3 has OP2 and OP4 and feedback inputs, and two modulation series are configured in parallel. That is, the feedback output F O4 of the OP4 becomes the modulation input M 14 of the OP4 (S2411), the modulation output M O4 of the OP4 becomes the modulation input M 13 of the OP3 (S2412), and the feedback output F O2 of the OP2 becomes the modulation of the OP2. Input M 12 (S2413), modulation output M O2 of OP2 becomes modulation input M 11 of OP1 (S2414), and each output O 1 and O 3 of OP1 and OP3 is added to buffer B as a carrier output (S2415). ), Which is an algorithm.

알고리듬 4는 4오퍼레이터 병렬형으로, 모든 오퍼레이터가 피드백입력을 가진다. 즉,OP4의 피드백출력 FO4가 OP4의 변조입력 M14로 되고(S2416), OP3의 피드백 출력 FO3가 OP3의 변조입력 M13으로 되고(S2417), OP2의 피드백출력 FO2가 OP2의 변조입력 M12로 되고(S2418), OP1의 피드백출력 FO1이 OP1의 변조입력 M11로 되고(S2419), 모든 오퍼레이터의 출력 O1, O2, O3및 O4가 버퍼 B에 가산된다(S2420), 라는 알고리듬이다.Algorithm 4 is a four-operator parallel, with all operators having feedback inputs. That is, the feedback output F O4 of the OP4 becomes the modulation input M 14 of the OP4 (S2416), the feedback output F O3 of the OP3 becomes the modulation input M 13 of the OP3 (S2417), and the feedback output F O2 of the OP2 becomes the modulation of the OP2. Input M 12 (S2418), OP1's feedback output F O1 becomes OP1's modulation input M 11 (S2419), and all operators' outputs O 1 , O 2 , O 3, and O 4 are added to buffer B ( S2420).

이상 설명한 오퍼레이터처리와 알고리듬처리에 의해 1채널분의 음원처리가 종료하고, 알고리듬의 변경이 없으면 이대로의 상태에서 발음(음원처리)이 계속된다.The sound source processing for one channel is finished by the operator processing and the algorithm processing described above, and if the algorithm is not changed, the pronunciation (sound source processing) is continued in this state.

[변조방식의 개량예(그 2)][Example of Improvement of Modulation Method (Part 2)]

다음으로, 변조방식에 의한 음원처리의 제2개량예에 대해 설명한다.Next, a second example of improvement of the sound source processing by the modulation method will be described.

지금까지 설명해 온 여러가지의 변조방식에 있어서는 복잡한 알고리듬을 편성할수록, 또, 발음 채널수(폴리포닉수)가 많을 수록 처리에 시간이 걸린다.In the various modulation methods described so far, processing takes longer as the complex algorithm is organized and the number of pronunciation channels (polyphonic number) is larger.

거거서, 이하에 설명하는 제2의 개량예에서는 오퍼레이터처리와 알고리듬처리를 분리한 제21도의 제1의 개량예를 더욱 발전시켜서, 어느 인터럽트 타이밍에서는 오퍼레이터처리만을 행하고, 다음의 인터럽트 타이밍에서는 알고리듬처리만을 행한다는 것처럼, 오퍼레이터처리와 알고리듬처리를 번갈아 행한다. 이것에 의해, 1인터럽트 타이밍당의 처리 부하를 대폭으로 감속시킬수가 있다. 그 결과, 인터럽트 2회에 하나의 샘플데이터가 출력된다.Therefore, in the second improved example described below, the first improved example of FIG. 21, which separates the operator process and the algorithm process, is further developed, and only the operator process is performed at an interrupt timing, and the algorithm process is performed at the next interrupt timing. The operator process and the algorithm process are alternately performed as if by only doing this. As a result, the processing load per one interrupt timing can be significantly reduced. As a result, one sample data is output at two interrupts.

이 동작에 대해, 제25도의 동작플로챠트를 이용하여 설명한다.This operation will be described using the operation flowchart of FIG.

우선, 오퍼레이터처리와 알고리듬처리를 번갈아 행하기 때문, 변수 S를 이용하여 S가 제로인지 아닌지가 판정된다(S2501). 이 변수 S는 각 발음채널마다 형성되고, M CPI(101) 또는 S CPU(102)의 RAM(206, 306)상의 제9도의 각 발음 채널 영역에 기억된다.First, since the operator process and the algorithm process are alternately performed, it is determined whether or not S is zero using the variable S (S2501). This variable S is formed for each pronunciation channel and is stored in each pronunciation channel region of FIG. 9 on the RAMs 206 and 306 of the M CPI 101 or the S CPU 102.

어느 인터럽트 타이밍에 있어서, S가 0일때는 오퍼레이터처리의 루트로 들어가며, 변수 S에 값 1을 세트한다(S2502). 이어서, 오퍼레이터 1-4처리가 실행된다(S2503-S2506). 이 처리는 제22도 또는 제23도 등과 마찬가지이다.At any interrupt timing, when S is 0, it enters the root of the operator process and sets the value 1 to the variable S (S2502). Next, the operator 1-4 processing is executed (S2503-S2506). This processing is the same as in FIG. 22, 23, and the like.

다음으로, 오퍼레이터처리의 루트를 빼내고, 버퍼 B에, 버퍼 BF(FM방식의 경우) 또는 버퍼 BT(TM방식의 경우)의 값이 설정되는 출력처리가 실행된다(S2510). 버퍼 BF 또는 BT는 각 발음채널마다 형성되고, M CPU(101) 또는 S CPU(102)의 RAM(206, 306)상의 제9도의 각 발음 채널 영역마다 기억된다. 버퍼 BF 또는 BT에는 알고리듬처리후의 파형출력치가 격납되지만, 이번회의 인터럽트 타이밍에서는 알고리듬처리는 실행되고 있지 않고 버퍼 BF 또는 BT의 내용은 변경되고 있지 않기 때문, 전회의 인터럽트 타이밍과 같은 파형출력치가 출력된다.Next, the root of the operator process is extracted, and an output process for setting the value of the buffer BF (in the FM method) or the buffer BT (in the TM method) is executed in the buffer B (S2510). A buffer BF or BT is formed for each pronunciation channel, and is stored for each pronunciation channel region of FIG. 9 on the RAMs 206 and 306 of the M CPU 101 or the S CPU 102. The waveform output values after the algorithm processing are stored in the buffer BF or BT. However, since the algorithm processing is not executed at this interrupt timing and the contents of the buffer BF or BT are not changed, the waveform output values same as the previous interrupt timing are output. .

이상의 처리에 의해, 이번 인터럽트 타이밍에 있어서, 1발음채널분의 음원처리를 종료한다. 이 경우, 이번 오퍼레이터 1-4처리에서 구해진 각 데이터는 다음의 인터럽트 타이밍까지, M CPU(101 또는 S CPU(102)의 RAM(206, 306)상의 제9도의 각 발음 채널 영역에 유지된다.The above processing ends the sound source processing for one sound channel at this interrupt timing. In this case, each data obtained by the operator 1-4 processing is held in each sounding channel region of FIG. 9 on the RAMs 206 and 306 of the M CPU 101 or the S CPU 102 until the next interrupt timing.

다음의 인터럽트가 걸리면 전회의 인터럽트 타이밍에서 변수 S가 1로 되어있으므로, 스텝 S2507로 진행하고, 알고리듬처리의 루트로 들어가고, 변수 S에 값 0을 세트한다.If the next interrupt is applied, since the variable S is 1 at the previous interrupt timing, the flow advances to step S2507, enters the root of the algorithm processing, and sets the value 0 to the variable S. FIG.

이어서, 알고리듬처리가 실행된다(S2508).Then, the algorithm processing is executed (S2508).

이 처리에 있어서는 전회의 인터럽트 타이밍에서 오퍼레이터 1-4처리로 처리되어 제9도의 각 발음 채널영역으로 유지되고 있는 각 데이터가 이용되고, 다음의 오퍼레이터처리를 위한 변조입력을 결정하는 처리가 행해진다. 그리고, 이 처리에 있어서 버퍼 BF 또는 BT의 내용이 개선되고, 그 인터럽트 타이밍에 있어서 파형출력치가 구해진다. 알고리듬 처리의 구체예를 제26도의 동작 플로챠트로 도시한다. 이 플로에 있어서, 제24도의 경우와 같은 번호를 붙인 스텝에서는 제24도의 경우와 같이 처리가 행해진다. 제24도의 경우와 다른 것은 S2601-S2604의 출력 부분이다. 여기서는, 알고리듬 1 및 알고리듬 2의 경우는 오퍼레이터 1처리의 출력 O1의 내용이 그대로 버퍼 BF 또는 BT에 유지된다(S2601, S2602). 또, 알고리듬 3의 경우에는 출력 O1에 출력 O3이 가산된 값이 버퍼 BF 또는 BT에 유지된다(S2603). 또한, 알고리듬 4의 경우는 출력 O1에 출력 O2, O3, O4가 가산된 값이 BF 또는 BT에 유지된다(S2604).In this processing, each data processed in the operator 1-4 processing at the previous interrupt timing and held in each pronunciation channel region in FIG. 9 is used, and a process for determining the modulation input for the next operator processing is performed. In this process, the contents of the buffer BF or BT are improved, and the waveform output value is obtained at the interrupt timing. An example of the algorithm processing is shown in the operation flowchart of FIG. In this flow, in the step of numbering the same as in the case of FIG. 24, the process is performed as in the case of FIG. What is different from the case of FIG. 24 is the output portion of S2601-S2604. Here, in the case of Algorithm 1 and Algorithm 2, the contents of the output O 1 of the operator 1 processing are held in the buffer BF or BT as they are (S2601, S2602). In the case of Algorithm 3, the output O 3 are added to the output value O 1 is maintained in the buffer BF or BT (S2603). In the case of Algorithm 4 is the output O 2, O 3, O 4 added to the output value O 1 is maintained in the BF or BT (S2604).

이상과 같이, 1인터럽트 타이밍 걸러서, 오퍼레이터처리와 알고리듬처리가 번갈아 실행되기 때문에, 1인터럽트 타이밍당의 음원처리 프로그램의 처리 부하를 현저하게 감소시킬 수가 있다. 이 경우, 인터럽트 주기를 길게 할 필요가 없기 때문에, 인터럽트에 의해 제4(a)도의 메인동작 플로챠트가 중단되는 시간이 증가하지 않고, 그 프로그램 동작에 영향을 주지 않고 처리부하를 저감시킬수가 있다. 따라서, 예를 들면 제4(a)도에 의해 실행되는 건반키 채취의 간격이 길게 되는 일도 없고, 전자악기로서의 응답성능에 영향을 주는 일도 없다.As described above, since the operator process and the algorithm process are alternately performed every other interrupt timing, the processing load of the sound source processing program per interrupt time can be significantly reduced. In this case, since the interrupt period does not need to be lengthened, the time for interrupting the main operation flowchart of FIG. 4 (a) by interruption does not increase, and the processing load can be reduced without affecting the program operation. . Therefore, for example, the interval between the key-key pickings performed by FIG. 4 (a) does not become long and does not affect the response performance as an electronic musical instrument.

이상, 여러가지의 음색방식에 기인하는 소프트웨어의 음원처리에 의해, 발음채널마다 악음데이터를 생성하는 동작에 대해 설명했다.In the above, the operation | movement which generate | occur | produces the sound tone data for every pronunciation channel by the sound source process of the software which originated in various timbre systems was demonstrated.

[기능 키 처리][Function Key Processing]

다음으로, 실제의 전자악기를 연주하는 경우에 있어서 제4(a)도의 메인동작 플로챠트의 기능 키 처리(S403)의 구체적 동작에 대해 설명한다.Next, the specific operation of the function key processing S403 of the main operation flowchart of FIG. 4 (a) in the case of playing the actual electronic musical instrument will be described.

상술한 발음채널마다 행해지는 음원처리에 있어서는 M CPU(101)의 입력포트(210)(제2도 참조)를 통하여 예를 들면 전자악기의 조작 패널상에 접속되는 제8(a)도의 기능키(801)에 의해 M CPU(101) 또는 S CPU(102)의 RAM(206) 또는 (306)(제2도 및 제3도 참조)상의 각 발음 채널 영역(제9도 참조)에, 상술한 각종 음원방식에 데이터 포맷(제11도 참조)이 설정된다.In the sound source processing performed for each pronunciation channel described above, for example, the function key shown in FIG. 8 (a) connected to the operation panel of the electronic musical instrument through the input port 210 (see FIG. 2) of the M CPU 101. 801 denotes each of the pronunciation channel regions (see FIG. 9) on the RAM 206 or 306 (see FIG. 2 and FIG. 3) of the M CPU 101 or the S CPU 102. Data formats (see FIG. 11) are set in various sound source systems.

제27도는 제8(a)도의 기능키(801)의 일부의 배치예를 도시한 도면이다. 동 도면에서는, 기능키(801)의 일부가 음색지정 스위치로서 실현되고, A그룹의 『피아노』, 『기타』, ....『거문고』등의 스위치가 눌려지면, 각각의 악기음의 음색이 선택되고, 가이드 램프가 점등된다. 그리고, DPCM/TM방식 선택스위치(2701)로, 이들의 악기음의 음색을 DPCM방식과 TM방식의 어느 음원방식에서 생성하는지가 선택된다.FIG. 27 is a diagram showing an arrangement example of a part of the function keys 801 in FIG. 8 (a). In the figure, a part of the function key 801 is realized as a tone designation switch, and when a switch such as "piano", "guitar", .... "lyre" of group A is pressed, the tone of each musical instrument sound is pressed. Is selected, and the guide lamp is lit. Then, with the DPCM / TM method selection switch 2701, it is selected which sound source method of the DPCM method and the TM method produces the tone of these musical instrument sounds.

한편, B그룹의 『튜바』의 스위치가 눌러지면 FM방식에 의해, 『베이스』가 눌려지면 PCM/TM양 방식에 의해, 또, 『트럼펫』이 눌려지면 PCM방식에 의해, 각각의 음색이 지정되고, 그들의 음원방식에 기인하는 악음이 생성되게 된다.On the other hand, each tone is assigned to the FM method when the "Tub" switch of Group B is pressed, by the PCM / TM method when "Bass" is pressed, and by the PCM method when "Trumpet" is pressed. Then, the musical sound due to their sound source system is generated.

제28(a), (b)도에 상기 『피아노』와 『베이스』의 스위치가 눌려진 경우의 RAM(206) 또는 (306)상의 제9도에서 도시되는 각 발음 채널 영역으로의 음원방식의 할당예가 나타나 있다. 『피아노』의 경우, 동도면(a)와 같이, M CPU(101) 및 S CPU(102)의 8음 폴리포닉의 각 발음채널의 전부에, DPCM방식이 할당되고, 또, 『베이스』의 경우, 동 도면(b)와 같이, 기수번호의 발음채널에 PCM방식이, 우수번호의 발음채널에 TM방식이, 각각 할당된다. 이것에 의해, PCM방식과 TM방식에 의한 2발음채널에서 생성되는 악음파형이 혼합된 것으로 하여 1음만큼의 악음파형이 얻어진다. 이 경우에는 각 CPU당 4음 폴리포닉, 2CPU합계로 8음 폴리포닉으로 된다.Assignment of the sound source system to each pronunciation channel region shown in FIG. 9 on RAM 206 or 306 when the " piano " and " bass " are pressed in FIGS. 28 (a) and (b) An example is shown. In the case of " piano ", the DPCM method is assigned to all the pronunciation channels of the eight sound polyphonic of the M CPU 101 and the S CPU 102, as shown in the diagram (a) of FIG. In this case, as shown in (b), the PCM method is assigned to the pronunciation channel of the odd number and the TM method is assigned to the pronunciation channel of the even number, respectively. As a result, the sound wave waveform generated in the two sound channel by the PCM method and the TM method is mixed, so that one sound wave waveform is obtained. In this case, 4 sound polyphonic and 8 CPU polyphonic for each CPU are added.

제29도는 제4(a)도의 메인동작 플로챠트에 있어서 S403의 기능키 처리의 동작 플로챠트의 일부이며, 제27도의 음색 지정 스위치 그룹에 대한 처리의 동작 플로챠트이다.FIG. 29 is a part of the operation flowchart of the function key processing of S403 in the main operation flowchart of FIG. 4 (a), and is an operation flowchart of the processing for the tone tone designation switch group of FIG.

우선, 연주자에 의해 DPCM/TM스위치(2701)가 조작되었는지 어떤지가 판정되고(S2901), 판정이 YES의 경우는 변수 M이 제로인지 아닌지가 판정된다(S2902). 변조 M은 M CPU(101)의 RAM(206)(제2도)상에 확보되고, DPCM방식일때는 값 0, TM방식일때는 값 1을 얻는다. S2902에서 변수 M의 값이 0으로 그 판정이 YES의 경우는 변수 M에 값 1이 세트된다(S2903). 이것은 DPCM방식이 선택되어 있던 상태에서, DPCM/TM스위치(2701)가 압압되어 TM방식이 선택될 상태에 변화한 것을 의미한다.First, it is determined whether or not the DPCM / TM switch 2701 is operated by the player (S2901). If the determination is YES, it is determined whether the variable M is zero or not (S2902). The modulation M is secured on the RAM 206 (FIG. 2) of the M CPU 101, and a value 0 is obtained for the DPCM method and a value 1 for the TM method. If the value of the variable M is 0 in S2902 and the determination is YES, the value 1 is set in the variable M (S2903). This means that in the state where the DPCM system was selected, the DPCM / TM switch 2701 was pressed and changed to the state in which the TM system was selected.

또, S2902에서 변수 M의 값이 1로 판정이 NO의 경우는 변수 M에 0이 세트된다(S2904). 이것은 TM방식이 선택되어 있던 상태에서, DPCM/TM스위치(2701)가 압압되어 DPCM방식이 선택되는 상태로 변화한 것을 의미한다.If the value of the variable M is determined to be 1 in S2902, 0 is set in the variable M (S2904). This means that in the state where the TM system was selected, the DPCM / TM switch 2701 was pressed and changed to the state where the DPCM system was selected.

다음으로, 현재, 제27도의 A그룹의 음색이 지정되어 있는지 어떤지가 판정된다(S2905). DPCM/TM스위치(2701)는 A그룹의 음색에 대해서만 유효하기 때문에, A그룹의 음색이 지정되어 S2905의 판정이 YES의 경우에만, S2904-S2908의 DPCM/TM스위치(2701)에 대응하는 동작이 실행된다.Next, it is determined whether or not the tone of the group A in Fig. 27 is specified (S2905). Since the DPCM / TM switch 2701 is valid only for the tones of group A, the operation corresponding to the DPCM / TM switches 2701 of S2904-S2908 is only performed when the tones of the group A are designated and the judgment of S2905 is YES. Is executed.

S2906에서는 변수 M이 값 0인지 아닌지가 판정된다(S2906).In S2906, it is determined whether the variable M is the value 0 (S2906).

S2906의 판정이 YES의 경우는 DPCM/TM스위치(2701)에 의해 DPCM방식이 선택되었기 때문에, RAM(206) 및 (306)(제2도 및 제3도 참조)상의 각 발음 채널 영역에 제11도의 DPCM포맷에서 데이터가 설정된다. 즉 각 발음 채널 영역의 선두영역 G(제11도의 DPCM의 란 참조)에 DPCM방식을 나타내는 음원방식 No.가 설정된다. 이어서, 각 발음 채널 영역의 제2번째 이후의 영역에 현재 지정되어 있는 음색에 대응하는 각종 패러미터가 각각 세트된다(S2907).If the determination of S2906 is YES, since the DPCM method is selected by the DPCM / TM switch 2701, each of the pronunciation channel regions on the RAM 206 and 306 (see Figs. Data is set in the DPCM format of FIG. In other words, the sound source method No. indicating the DPCM method is set in the head region G (see the column of DPCM in FIG. 11) of each pronunciation channel region. Subsequently, various parameters corresponding to the timbre currently specified in the second and subsequent regions of the pronunciation channel region are set, respectively (S2907).

또, S2906의 판정이 NO일 경우는, DPCM/TM스위치(2701)에 의해 TM방식이 선택되었기 때문에 각 발음 채널 영역에 제11도의 TM포맷에서 데이터가 설정된다. 즉 우선, 각 발음 채널 영역의 선두영역 G에 TM방식을 나타내는 음원방식 No.가 설정된다. 이어서, 각 발음 채널 영역의 제2번째 이후의 영역에 현재 지정되고 있는 음색에 대응하는 각종 패러미터가 각각 세트된다(S2908).If the determination of S2906 is NO, since the TM method is selected by the DPCM / TM switch 2701, data is set in the TM format shown in Fig. 11 in each pronunciation channel region. That is, first, a sound source method No. indicating the TM method is set in the head area G of each pronunciation channel region. Subsequently, various parameters corresponding to the tone currently specified in the second and subsequent regions of the pronunciation channel region are set, respectively (S2908).

이상은, 제27도의 DPCM/TM스위치(2701)가 조작된 경우지만, 동 스위치가 조작되지 않고 스텝 S2901의 판정이 NO로 되었을 경우, 또는 A그룹의 음색이 지정되어 있지 않고 스텝 S2905의 판정이 NO가 되었던 경우는 스텝 S2909이하의 처리가 실행된다.The above is the case where the DPCM / TM switch 2701 of FIG. 27 is operated, but when the switch is not operated and the judgment of step S2901 is NO, or the tone of the group A is not specified, the judgment of step S2905 is performed. If NO, the process of step S2909 or less is executed.

우선, 스텝 S2909에서, 제27도의 음색 스위치에 변화가 있었는지 어떤지가 판정된다(S2909).First, in step S2909, it is determined whether or not there is a change in the tone switch of Fig. 27 (S2909).

그 판정이 NO일 경우는, 음색 스위치에 대한 처리를 행할 필요는 없으므로, 그대로 기능키처리(제4(a)도 S403)를 종료한다.If the determination is NO, it is not necessary to perform the processing for the tone switch, and thus the function key processing (S4 (a) also ends S403).

음색 스위치에 변화가 있어 S2909의 판정이 YES일 경우에는, 다음에, B그룹의 음색이 지정되었는지 어떤지가 판정된다(S2910).If there is a change in the tone switch and the determination in S2909 is YES, it is then determined whether or not the tone of the group B is designated (S2910).

B그룹의 음색이 지정되어 S2910의 판정이 YES이면 RAM(206) 및 (306)(제2도 및 제3도 참조)상의 각 발음 채널 영역에 지정된 음색에 대응하는 음원방식의 데이터 포멧에서 데이터가 설정된다. 그리고, 각 발음 채널 영역의 선두영역 G(제11도 참조)에 각 음원방식을 나타내는 음원방식 No.가 설정된다. 또, 각 발음 채널 영역의 제2번째 이후 영역에 현재 지정되고 있는 음색에 대응하는 각종 패러미터가 각각 세트된다(S2911). 예를 들면, 제27도의 베이스 스위치가 선택되어 있는 경우에는 기수번호의 각 발음 채널 영역에는 PCM방식에 대응하는 데이터가 우수번호의 각 발음 채널 영역에는 TM방식에 대응하는 데이터가 각각 세트된다.If the tone of group B is designated and the determination of S2910 is YES, the data is output in the sound source method data format corresponding to the tone assigned to each pronunciation channel area on RAM 206 and 306 (see FIGS. 2 and 3). Is set. Then, a sound source method No. indicating each sound source method is set in the head region G (see FIG. 11) of each pronunciation channel region. Further, various parameters corresponding to the tone tone currently designated in the second and subsequent regions of the pronunciation channel region are set, respectively (S2911). For example, when the base switch shown in Fig. 27 is selected, data corresponding to the PCM method is set in each phonetic channel region of the odd number, and data corresponding to the TM system is set in each phonetic channel region of the even number.

또, A그룹의 음색 스위치가 지정되어 S2910의 판정이 NO이면, 변수 M이 1인지 아닌지가 판정된다(S2912). 그리고, 현재 TM방식이 선택되어 있는 S2912의 판정이 YES이면 상술한 스텝 S2908의 경우와 마찬가지로 하여, 각 발음 채널 영역에 제11도의 TM포맷에서 데이터가 설정된다(S2913).If the tone switch of the group A is designated and the determination of S2910 is NO, it is determined whether or not the variable M is 1 (S2912). If the determination of S2912 in which the TM method is currently selected is YES, similarly to the case of step S2908 described above, data is set in the TM format of FIG. 11 in each sounding channel region (S2913).

또, DPCM방식이 선택되어 있는 S2912의 판정이 NO이면 상술한 스텝 S2907의 경우와 마찬가지로 하여, 각 발음 채널 영역에는 제11도의 DPCM포맷에서 데이터가 설정된다(S2914).If the determination of S2912 in which the DPCM method is selected is NO, similarly to the case of step S2907 described above, data is set in each DPCM format in the DPCM format of FIG. 11 (S2914).

[압건시의 건반키 처리의 제1실시예][First Embodiment of Key Key Processing at the Time of Drying]

다음으로, 실제의 전자악기를 연주할 경우에 있어서 제4(a)도의 메인동작 플로챠트의 건반키 처리(S405)의 구체적 동작에 대해 설명한다.Next, the specific operation of the key-key processing (S405) of the main operation flowchart in FIG. 4 (a) when playing the actual electronic musical instrument will be described.

우선, 압건시의 건반키 처리의 제1실시예에 대해 설명한다.First, a description will be given of a first embodiment of keyboard key processing at the time of pressing.

압건시의 압건 키 처리의 제1실시예에 있어서는 제27도의 A 그룹의 음색이 지정되어 있는 경우에, M CPU(101)의 입력포트(210)(제2도 참조)를 통하여 접속되는 제8(a)도 또는 제8(b)도에 도시되는 건반키(802)가 압건된 경우의 건반의 포지션 즉 악음의 음역에 의해 M CPU(101) 또는 S CPU(102)의 RAM(206) 또는 (306)(제2도 및 제3도 참조)상의 각 발음 채널 영역(제9도 참조)에 설정되는 음원방식이 자동적으로 전환된다. 이 경우는, 제8(b)도에 도시되는 건반키(801)의 키코드 번호 31, 32를 경계로 하여, 압건된 건반의 키코드 31번 이하의 저음역의 경우에 DPCM방식이 또, 키코드가 32번 이상의 고음역의 경우에 TM방식이 할당된다. 또한, 제27도의 B그룹의 음색이 지정되어 있는 경우에는 특별한 건반키 처리는 실행되지 않는다.In the first embodiment of the keypress key processing at the time of dryness, the eighth connected via the input port 210 (see FIG. 2) of the M CPU 101 when the tone of the group A in FIG. 27 is designated. RAM 206 of the M CPU 101 or the S CPU 102 depending on the position of the keyboard in the case where the key 802 shown in FIG. The sound source system set in each pronunciation channel region (see FIG. 9) on 306 (see FIGS. 2 and 3) is automatically switched. In this case, with the key code numbers 31 and 32 of the key 801 shown in FIG. 8 (b) as a boundary, in the case of the low range of the key code 31 or less of the keyed key, the DPCM method is used as a key. The TM scheme is assigned when the chord is 32 or more highs. In addition, when the tone of the group B of FIG. 27 is designated, no special key key processing is executed.

제30도는 제4(a)도의 메인동작 플로챠트에 있어서 S405의 건반키 처리의 동작 플로챠트의 일부이며, 제8(a)도 또는 제8(b)도의 건반키(801)의 압건시의 처리의 제1실시예의 플로이다.FIG. 30 is a part of the operation flowchart of the keyboard key processing of S405 in the main operation flowchart of FIG. 4 (a), and the key key 801 of FIG. 8 (a) or FIG. This is the flow of the first embodiment of the process.

우선, 현재 제27도의 A그룹의 음색이 지정되어 있는지 어떤지가 판정된다(S3001).First, it is determined whether or not the tone of the group A in FIG. 27 is currently designated (S3001).

이 판정이 NO이고, 현재 B그룹의 음색이 지정되어 있는 경우에는 제20도의 특별한 처리는 행하지 않는다.If this determination is NO and the tone color of group B is currently specified, no special processing of Fig. 20 is performed.

S3001의 판정이 YES이고, 현재, A그룹의 음색이 지정되어 있는 경우에는 제4(a)도의 메인동작 플로챠트에 있어서 S404의 건반키 채취 처리에서 『압건』이라 판정된 건반의 키보드가 31번 이하인지 아닌지가 판정된다(S3002).If the determination of S3001 is YES and the tone of group A is currently designated, the keyboard of the keyboard determined to be " presse " in the keyboard key extraction processing of S 404 in the main operation flowchart of FIG. It is determined whether or not the number of times is less than (S3002).

31번 이하의 저음역이 압건되어 S3002의 판정이 YES의 경우는 변수 M이 값 1인지 아닌지가 판정된다(S3003). 변수 M은 제4(a)도의 메인동작 플로챠트에 있어서 S403의 기능키처리의 일부인 제29도의 동작 플로챠트에 있어서는 설정되어 있으며, 상술한 바와같은, 변수 M의 값은 DPCM방식일때는 값 I, TM방식일때는 값 1을 얻는다.If the low frequency range below 31 is pushed in and the determination of S3002 is YES, it is determined whether or not the variable M is the value 1 (S3003). The variable M is set in the operation flowchart of FIG. 29 which is a part of the function key processing of S403 in the main operation flowchart of FIG. 4 (a), and the value of the variable M as described above is the value I in the DPCM method. In case of TM, value 1 is obtained.

S3003의 판정이 YES(M=1)이고, 현재, TM방식의 음원방식이 지정되어 있는 경우는, 저음역의 음원방식인 DPCM방식으로 변경하기 위해, RAM(206) 또는 (306)(제2도 및 제3도 참조)상의 압건된 건반이 어사인되는 발음 채널 영역에 제11도의 DPCM포맷에서 데이터가 설정된다. 즉, 각 발음 채널 영역의 선두영역 G(제11도의 DPCM의 란 참조)에 DPCM방식을 나타내는 음원방식 No.가 설정된다. 이어서, 각 발음 채널 영역의 제2번째 이후의 영역에 현재 지정되고 있는 음색에 대응하는 각종 패러미터가 각각 세트된다(S3004). 그후, 플래그 C에 값 1이 세트된다(S3005). 플래그 C는 M CPU(101)의 RAM(206)(제2도 참조)상의 각 발음 채널 영역에 확보되는 변수이지만(제11도 참조), 이 플래그 C는 제32도에서 후술할 이건시의 처리에 이용된다.If the determination of S3003 is YES (M = 1), and the sound source method of TM method is currently designated, RAM 206 or 306 (FIG. 2) in order to change to DPCM method which is a low sound source method. And data are set in the DPCM format of FIG. 11 in the pronunciation channel region to which the pressed key on FIG. 3 is assigned. In other words, the sound source method No. indicating the DPCM method is set in the head region G (see the column of DPCM in FIG. 11) of each pronunciation channel region. Subsequently, various parameters corresponding to the tone tone currently specified in the second and subsequent regions of each pronunciation channel region are set (S3004). Thereafter, the value 1 is set in the flag C (S3005). The flag C is a variable secured to each pronunciation channel area on the RAM 206 (see FIG. 2) of the M CPU 101 (see FIG. 11), but this flag C is a process of this case described later in FIG. Used for

한편, S3002에 있어서, 31번 이상의 고음역이 압건되어 그 판정이 NO일 경우는, 다시, 변수 M이 값이 1인지 아닌지가 판정된다(S3006).On the other hand, in S3002, when 31 or more high-range ranges are pushed in and the determination is NO, it is again determined whether or not the variable M has a value of 1 (S3006).

S3006의 판정이 NO(M=0)이고, 현재, DPCM방식의 음원방식이 지정되고 있는 경우는 고음역의 음원방식인 TM방식에 변경하기 위해, RAM(206) 또는 (306)상의 압건된 건반이 어사인될 발음 채널 영역에, 제11도의 TM포맷에서 데이터가 설정된다. 즉, 각 발음 채널 영역의 선두영역 G(제11도의 TM의 란 참조)에 TM방식을 나타내는 음원방식 No.가 설정된다. 이어서, 각 발음 채널 영역의 제2번째 이후의 영역에 현재 지정되고 있는 음색에 대응하는 각종 패러미터가 각각 세트된다(S3007). 그후, 플래그 C에 값 2가 세트된다(S3005).If the determination of S3006 is NO (M = 0) and the sound source method of the DPCM method is currently designated, the keyed key on the RAM 206 or 306 is changed to the TM method of the high sound source method. In the pronunciation channel region to be assigned, data is set in the TM format of FIG. In other words, the sound source method No. indicating the TM method is set in the head region G (see the column of TM in FIG. 11) of each pronunciation channel region. Subsequently, various parameters corresponding to the timbre currently specified in the second and subsequent regions of the pronunciation channel region are set, respectively (S3007). Thereafter, the value 2 is set in the flag C (S3005).

상술한 처리에서, 스텝 S3003의 판정이 NO일 경우 및 스텝 S3006의 판정이 YES의 경우는 본래 바라는 음원방식으로 되어 있으므로, 특별한 처리는 행해지지 않는다.In the above-described processing, when the determination in step S3003 is NO and the determination in step S3006 is YES, since the sound source system is originally desired, no special processing is performed.

[압건시의 압건키 처리의 제2실시예][Second embodiment of the dry key processing at the time of dryness]

다음으로, 압건시의 압건키 처리의 제2실시예에 대해 설명한다.Next, a description will be given of a second embodiment of the dry key processing at the time of dryness.

압건시의 압건 키 처리의 제2실시예에 있어서는 제27도의 A그룹의 음색이 지정되고 있는 경우에, M CPU(101)의 입력포트(210)(제2도 참조)를 통하여 접속되는 제8(a)도 또는 제8(b)도에 도시되는 압건키(802)가 압건된 경우의 압건속도 즉 속도(Velocity)에 의해, M CPU(101) 또는 S CPU(102)의 RAM(206) 또는 (306)(제2도 및 제3도 참조)상의 각 발음 채널 영역(제9도 참조)에 설정되는 음원방식이 자동적으로 절환된다. 이 경우, 속도의 값으로서 MIDI(Musical Instrument Didital Interface)규격의 최대의 127의 1/2의 64를 경계로 하여, 압건된 건반의 속도의 값이 64이상의 빠른 압건조작의 경우에 DPCM방식이 또, 속도의 값이 64이하의 느린 압건조작의 경우에 TM방식이 할당된다. 또한, 제27도의 B그룹의 음색이 지정되고 있는 경우에는 특별한 건반키 처리는 실행되지 않는다.In the second embodiment of the keypress key processing at the time of dryness, when the tone of the group A in FIG. 27 is designated, the eighth connected via the input port 210 of the M CPU 101 (see FIG. 2). The RAM 206 of the M CPU 101 or the S CPU 102 by the dry speed, i.e., Velocity, in the case where the dry key 802 shown in Figs. (a) or 8 (b) is pushed. Alternatively, the sound source system set in each pronunciation channel region (see FIG. 9) on 306 (see FIGS. 2 and 3) is automatically switched. In this case, the DPCM method is used in the case of fast dry operation where the value of the speed of the keyed keyboard is 64 or more, with 64 being the limit of 64 of the maximum 127 of the Musical Instrument Didital Interface (MIDI) standard. In the case of a slow dry operation where the velocity value is less than 64, the TM method is assigned. In addition, when the tone of the group B of FIG. 27 is designated, no special key key processing is executed.

제31도의 제4(a)도의 메인동작 플로챠트에 있어서 S405의 건반키 처리의 동작 플로챠트의 일부이며, 제8(a)도 또는 제8(b)도의 건반키(801)의 압건시의 처리의 제2실시예의 플로이다.In the main operation flowchart of FIG. 31 (a) of FIG. 31, it is a part of the operation flowchart of the keyboard key processing of S405, and the key key 801 of FIG. 8 (a) or FIG. This is the flow of the second embodiment of the process.

우선, 현재 제27도의 A그룹의 음색이 지정되어 있는지 어떤지가 판정된다(S3101).First, it is determined whether or not the tone of the group A in FIG. 27 is currently designated (S3101).

이 판정이 NO이고, 현재 B그룹의 음색이 지정되어 있는 경우에는, 제30도의 특별한 처리는 행하지 않는다.If this determination is NO and the tone color of group B is currently specified, no special processing of FIG. 30 is performed.

S3101의 판정이 YES이고, 현재, A그룹의 음색이 지정되어 있는 경우에는, 제4(a)도의 메인동작 플로챠트에 있어서 S404의 건반키 채취 처리에서 『압건』이라 판별된 건반의 속도가 64이상인지 아닌지가 판정된다(S3102). 또한, 속도의 64는 MIDI규격의 mp(메조피아노)에 상당한다.If the judgment at S3101 is YES and the tone of group A is currently designated, the speed of the key determined as "press" is 64 in the key-key extraction process of S404 in the main operation flowchart of FIG. 4 (a). It is determined whether or not it is abnormal (S3102). In addition, 64 of speed is equivalent to mp (mezzo piano) of MIDI standard.

속도의 값이 64이상의 S3102의 판정이 YES의 경우는 변수 M이 값 1인지 아닌지가 판정된다(S3103). 변수 M은 제4(a)도의 메인동작 플로챠트에 있어서 S403의 기능처리의 일부인 제29도의 동작 플로챠트에서 설정되고 있으며, 상술한 바와 같이, 변수 M의 값은 DPCM방식일때는 값 0, TM방식일때는 값 1을 얻는다.If the determination of S3102 whose value of the speed is 64 or more is YES, it is determined whether or not the variable M is the value 1 (S3103). The variable M is set in the operation flowchart of FIG. 29 which is part of the functional processing of S403 in the main operation flowchart of FIG. 4 (a). As described above, the value of the variable M is 0, TM in the DPCM method. In the case of a method, the value 1 is obtained.

S3103의 판정이 YES(M=1)이고, 현재, TM방식의 음원방식이 지정되어 있는 경우는 빠른 압건 조작시의 음원방식인 DPCM방식에 변경하기 위해, 제30도의 제1실시예의 경우의 S3004의 처리와 같이, RAM(206) 또는 (306)(제2도 및 제3도 참조)상의 압건된 건반이 어사인되는 발음 채널 영역에 제11도의 DPCM포맷에서 데이터가 설정되고(S3104), 플래그 C에 값 1이 세트된다(S3104).If the determination of S3103 is YES (M = 1), and the sound source method of the TM method is currently designated, S3004 in the case of the first embodiment of FIG. 30 in order to change to the DPCM method which is the sound source method at the time of a fast pressing operation. As in the processing of the data, data is set in the DPCM format of FIG. 11 in the pronunciation channel region to which the confiscated key on the RAM 206 or 306 (see FIGS. 2 and 3) is assigned (S3104). The value 1 is set to C (S3104).

한편, S3102에 있어서, 속도의 값이 64보다 작아서 그 판정이 NO일 경우는, 다시, 변수 M이 값이 1인지 아닌지가 판정된다(S3106).On the other hand, in S3102, when the value of the speed is smaller than 64 and the determination is NO, it is again determined whether or not the variable M is 1 (S3106).

S3106의 판정이 NO(M=0)이고, 현재, DPCM방식의 음원방식이 지정되어 있는 경우는, 느린 압건 조작시의 음원방식인 TM방식에 변경하기 위해 제30도의 제1실시예의 경우의 S3007의 처리의 경우와 마찬가지로 하여, RAM(206) 또는 (306)상의 압건된 건반이 어사인되는 발음 채널 영역에, 제11도의 TM포맷에서 데이터가 설정되고(S3107), 플래그 C에 값 2가 세트된다(S3108).If the determination of S3106 is NO (M = 0) and the sound source method of the DPCM method is currently designated, S3007 in the case of the first embodiment of FIG. 30 to change to the TM method, which is the sound source method at the time of a slow pressing operation. In the same manner as in the case of the processing of, the data is set in the TM format of FIG. 11 in the pronunciation channel region to which the pressed key on the RAM 206 or 306 is assigned (S3107), and the value 2 is set in the flag C. (S3108).

상술한 처리에서, 스텝 S3103의 판정이 NO일 경우 및 스텝 S3106의 판정이 YES의 경우는 본래 바라는 음원방식으로 되어 있으므로 특별한 처리는 행해지지 않는다.In the above-described processing, when the determination in step S3103 is NO and the determination in step S3106 is YES, since the sound source system is originally desired, no special processing is performed.

[이건의 건반 키 처리의 실시예][Example of this key key processing]

다음으로, 이건시의 건반 키 처리의 실시예에 대해 설명한다.Next, the Example of keyboard key processing at this time is demonstrated.

상술한 압건시의 건반키 처리의 제1 또는 제2실시예에 의해, 건반영역(음역)이나 속도에 의해 음원방식이 자동적으로 변경될 수 있으나, 이건시에는 그들의 변경 설정이 본래의 상태로 되돌릴 필요가 있다. 그것을 실현하는 것이 이하에 설명하는 이건시의 건반 키 처리의 실시예이다.According to the first or second embodiment of the key key processing at the time of the pressing operation, the sound source system can be automatically changed by the keyboard area (tone range) or speed, but in this case, their change settings are returned to their original state. There is a need. Realizing it is an embodiment of key key processing of the present invention described below.

제32도의 제4(a)도의 메인동작 플로챠트에 있어서 S405의 건반키 처리의 동작 플로챠트의 일부이며, 제8(a)도 또는 제8(b)도의 건반키(801)의 이건시의 처리의 플로이다.In the main operation flowchart of FIG. 32 (a) of FIG. 32, it is a part of the operation flowchart of the keyboard key processing of S405, and this time of the keyboard key 801 of FIG. 8 (a) or FIG. It is a flow of processing.

우선, 제4(a)도의 메인동작 플로챠트에 있어서 S404의 건반키 채취 처리에서 『이건』이라 판별된 건반이 어사인 되어 있는 RAM(206) 또는 (306)(제2도 및 제3도 참조)상의 발음 채널 영역에 설정되어 있는 플래그 C의 값이 판별된다. 지금, 플래그 C는 제30도의 S3005 및 S3008 또는 제31도의 S3105 또는 S3108의 처리에서 설정되고, 압건시의 초기치는 0이며, 압건시에 TM방식에서 DPCM방식으로 음원방식이 변경된 경우에는 값 1이 세트되고, DPCM방식에서 TM방식으로 음원방식이 변경된 경우에는 값 2가 세트된다. 따라서, 압건시에 변경이 행해지지 않았던 경우에는 초기치 0 그대로이다.First, in the main operation flowchart of FIG. 4 (a), the RAM 206 or 306 to which the key determined as "this" in the key-key extraction process of S404 is assigned (see FIGS. 2 and 3). The value of the flag C set in the pronunciation channel region on the? Now, the flag C is set in the processing of S3005 and S3008 of FIG. 30 or S3105 or S3108 of FIG. 31, the initial value at the time of pressing is 0, and the value 1 is changed when the sound source method is changed from TM method to DPCM method at the time of pressing The value 2 is set when the sound source method is changed from the DPCM method to the TM method. Therefore, when no change is made at the time of pressing, the initial value is 0.

그리고, 제32도의 이건시의 처리에서, 스텝 S3201에서의 판정에 의해, 플래그 C의 값이 0일 경우는 건반영역이나 속도에 의해 음원방식이 변경되어 있지 않으므로 특별한 처리는 행하지 않고 통상의 이건 처리를 행한다.In the processing at this time in FIG. 32, when the value of the flag C is 0 by the determination at step S3201, the sound source method is not changed by the keyboard area or the speed, so that no special processing is performed and the normal processing is performed. Is done.

S3201의 판정에 의해, 플래그 C의 값이 1이라 판정한 경우는 압건시에 음원방식이 TM방식에서 DPCM방식으로 변경되고 있다. 거거서, TM방식으로 되돌아가기 위해, RAM(206) 또는 (306)(제2도 또는 제3도 참조)상의 압건된 건반이 어사인 되고 있던 발음 채널 영역에, 제11도의 TM포맷에서 데이터가 설정된다. 즉, 각 발음 채널 영역의 선두영역 G(제11도의 TM의 란 참조)에 TM방식을 나타내는 음원방식 No.가 설정된다. 이어서, 각 발음 채널 영역의 제2번째 이후의 영역에 현재 지정되어 있는 음색에 대응하는 각종 패러미터가 각각 세트된다(S3202).If it is determined by S3201 that the value of the flag C is 1, the sound source method is changed from the TM method to the DPCM method at the time of pressing. Thereby, in order to return to the TM system, data in the TM format of FIG. 11 is transferred to the pronunciation channel region to which the compressed key on the RAM 206 or 306 (see FIG. 2 or FIG. 3) is assigned. Is set. In other words, the sound source method No. indicating the TM method is set in the head region G (see the column of TM in FIG. 11) of each pronunciation channel region. Subsequently, various parameters corresponding to the timbre currently specified in the second and subsequent regions of each pronunciation channel region are set (S3202).

한편, S3201의 판정에 의해, 플래그 C의 값이 2라 판정되었을 경우는 압건시에 음원방식 DPCM에서 TM방식으로 변경되고 있다. 거기서, 프로그램방식으로 되돌아가기 위해, RAM(206) 또는 (306)상의 압건된 건반이 어사인되어 있던 발음 채널 영역에 제11도의 DPCM포맷에서 데이터가 설정된다. 즉, 각 발음 채널 영역의 선두영역 G(제11도의 DPCM의 란 참조)에 DPCM방식을 나타내는 음원방식 No.가 설정된다. 이어서, 각 발음 채널 영역의 제2번째 이후의 영역에 현재 지정되어 있는 음색에 대응하는 각종 패러미터가 각각 세트된다(S3203).On the other hand, when it is determined by S3201 that the value of the flag C is 2, it is changed from the sound source system DPCM to the TM system at the time of pressing. Therein, in order to return to the program method, data is set in the DPCM format of FIG. 11 in the pronunciation channel region to which the confiscated key on the RAM 206 or 306 is assigned. In other words, the sound source method No. indicating the DPCM method is set in the head region G (see the column of DPCM in FIG. 11) of each pronunciation channel region. Subsequently, various parameters corresponding to the timbre currently specified in the second and subsequent regions of each pronunciation channel region are set (S3203).

이상의 동작후, 플래그 C의 값이 0으로 복귀되고, 제32도의 처리를 종료하고, 이어서 특별하게는 도시하지 않은 통상의 이건처리가 실행된다.After the above operation, the value of the flag C is returned to zero, the processing of FIG. 32 is terminated, and then, in particular, the ordinary transfer processing (not shown) is executed.

[다른 실시예의 상태][Status of Other Embodiments]

이상 설명해온 본 발명의 일련의 실시예에 있어서는 제1도에 도시되는 바와같이, M CPU(101)와 S CPU(102)라는 2개의 CPU가 다른 발음채널을 분담하여 처리하도록 했으나, CPU의 수는 1개라도, 또, 3개이상이라도 좋다.In the series of embodiments of the present invention described above, as shown in FIG. 1, two CPUs, M CPU 101 and S CPU 102, share different pronunciation channels and process them. May be one or three or more.

또, 제2도 및 제3도의 제어용 ROM(M201) 및 (301), 및 외부메모리(116)를 ROM카드 등으로 구성하며 ROM카드에 의해 사용자에게 다양한 음원방식을 제공할수가 있다.The control ROMs M201 and 301 and the external memory 116 of FIGS. 2 and 3, and the external memory 116 are constituted by a ROM card and the like, and various sound source methods can be provided to the user by the ROM card.

또한, 제2도의 M CPU(101)의 입력포트(210)에는 제8도와 같은 악기 조작부외에 다양한 조작부를 접속하는 것이 가능하며, 이것에 의해 여러가지 형태의 전자악기를 실현할수 있다. 또, 다른 전자악기에서의 연주정보를 입력하여 음원처리만을 행하는 음원 모듈로서 실현하는 것도 용이하다.In addition, it is possible to connect various operation units to the input port 210 of the M CPU 101 of FIG. 2 in addition to the musical instrument operation unit as shown in FIG. 8, thereby realizing various types of electronic musical instruments. Moreover, it is also easy to implement | achieve as a sound source module which inputs performance information from another electronic musical instrument, and performs only a sound source process.

한편, 제8도의 기능키(801) 또는 건반키(802)에 의해 각 발음채널에 음원방식이 할당되는 형태는 음색, 음역, 속도에 의한 것 이외도 포함하여, 다양한 형태가 생각된다.On the other hand, the form in which the sound source method is assigned to each pronunciation channel by the function key 801 or the keyboard key 802 shown in FIG. 8 can be considered in various forms including tone tone, sound range, and speed.

또, 변조방식으로서는 FM, TM방식에 의한 것외에, 다양한 것이 적용 가능하다.As the modulation method, various ones can be applied in addition to the FM and TM methods.

변조방식에 있어서는 본 실시예에서는 4오퍼레이터의 경우에 대해 설명했으나, 오퍼레이터 수는 이것에 한정되는 것은 아니다.In the modulation method, a case of four operators has been described in this embodiment, but the number of operators is not limited to this.

이와같이, 본 발명에 의하면, 전용의 음원회로는 전혀 필요로 하지 않고, 범용의 프로세서 구성으로 하는 것이 가능하게 된다. 이와같이, 악음파형 발생장치 전체의 회로 규모를 대폭으로 소형화할수가 있으며, LSI화 했을 경우 등에 있어서도 통상의 마이크로프로세서의 제조기술과 같아서 좋고, 칩의 원료에 대한 제품의 비율도 향상하기 때문에 제조비용을 대폭으로 저감시키는 것이 가능하게 된다. 또한, 악음신호 출력수단은 간단한 칩회로로 구성할수 없기 때문에, 이 부분을 부가한 것에 의한 제조 코스트의 증가는 거의 없다.As described above, according to the present invention, a dedicated sound source circuit is not required at all, and a general processor configuration can be achieved. In this way, the circuit size of the entire acoustic wave generator can be greatly reduced, and even in the case of LSI, it is the same as the manufacturing technology of a normal microprocessor, and the ratio of the product to the raw material of the chip also improves the manufacturing cost. It is possible to greatly reduce. In addition, since the sound signal output means cannot be constituted by a simple chip circuit, there is little increase in manufacturing cost by adding this portion.

또, 변조방식을 예를들면 위상변조 방식과 주파수 변조로 변경하고 싶은 경우, 폴리로닉수를 변경하고 싶은 경우등에 있어서, 프로그램 기억수단에 기억시킬 음원처리 프로그램을 변경하는 것만으로 대처할수 있으며, 새로운 악음파형 발생장치의 개발 비용을 대폭으로 감소시키는 것이 가능하게 되며, 사용자에 대해서도 예를들면 ROM카드등에 의해 새로운 음원방식을 제공하는 것이 가능하게 된다.In addition, for example, when changing the modulation method to the phase modulation method and the frequency modulation, or to change the number of polyonics, it is possible to cope by simply changing the sound source processing program to be stored in the program storage means. It is possible to greatly reduce the development cost of the acoustic wave generator, and to provide a new sound source method to the user, for example, by a ROM card.

이경우, 연주정보처리 프로그램과 음원처리 프로그램과의 사이의 데이터의 링크를 데이터 기억 수단상의 악음색성 데이터를 통하여 행한다는 데이터 아키텍쳐와 연주정보처리 프로그램에 대해 소정시간 간격으로 음원처리 프로그램을 실행한다는 프로그램 아키텍쳐를 실현한 것에 의해, 양 프로세서 사이의 동기를 얻기 위한 처리가 필요없게 되며, 프로그램을 대폭으로 간략화하는 것이 가능하게 된다. 이것에 의해, 변조방식과 같이 처리가 복잡한 음원처리도 충분한 여유를 갖고 실행할수가 있다.In this case, a program for executing the sound source processing program at predetermined time intervals for the data architecture and the performance information processing program which performs the link of data between the performance information processing program and the sound source processing program through the achromatic data on the data storage means. By realizing the architecture, a process for obtaining synchronization between both processors is unnecessary, and the program can be greatly simplified. As a result, sound source processing that is complicated in processing as in the modulation method can be executed with sufficient margin.

또한, 변조방식의 종류 또는 변조방식에 있어서 악음생성 알고리듬의 선택등에 의한 처리시간의 변화를 악음신호 출력수단에 의해 모두 흡수할수가 있기 때문에, 악음신호를 D/A변환기 등으로 출력하기 위한 복잡한 타임밍 제어프로그램이 필요없게 된다는 효과도 생긴다.In addition, since a change in processing time due to selection of a sound generation algorithm in the type of modulation method or modulation method can be absorbed by the sound signal output means, a complicated time for outputting a sound signal to a D / A converter or the like can be obtained. It also has the effect of not needing a dimming control program.

또한, 본 발명에서 음원처리 프로그램의 아키텍쳐로서, 변조처리 단위인 적어도 하나의 오퍼레이터처리가 일괄하여 실행된 후 또는 그 실행전에, 각 오퍼레이터 처리간의 각 입출력 처리인 알고리듬 처리가 일괄하여 실행될 처리 구조를 가지기 때문에, 변조방식에서 복수의 알고리듬중에서 선택하여 음원처리를 행하는 경우라도, 알고리듬 처리의 부분만을 복수 종류 용이하고, 필요에 따라 그것을 전환하면 좋고, 음원처리 프로그램을 매우 콤팩한 것으로 하는 것이 가능하게 되며, 프로그램 용량의 점에서 악음파형 발생장치의 소형화, 저코스트화에 공헌하는 것이 크다.In addition, in the present invention, as an architecture of the sound source processing program, after the at least one operator process, which is a modulation processing unit, is executed in a batch or before its execution, a processing structure in which the algorithm processing, which is each input / output process between each operator process, is to be executed in a batch. Therefore, even when the sound source processing is performed by selecting from among a plurality of algorithms in the modulation method, only a plurality of types of algorithm processing can be easily performed, and it can be switched as necessary, and the sound source processing program can be made very compact. In terms of program capacity, it contributes to miniaturization and low cost of the acoustic wave generator.

Claims (23)

1. 변조방식에 관한 음원처리 프로그램을 기억하는 기억수단(201)과, 이 기억수단에 기억되어 있는 상기 음원처리 프로그램을 실행함으로서 변조방식의 처리 프로세스로써 악음신호를 발생하는 악음신호 발생수단(101)과, 이 악음신호 발생수단으로써 발생된 상기 악음신호를 일정한 출력시간 간격으로 출력하는 악음신호 출력수단을 갖는 것을 특징으로 하는 악음파형 발생장치.1. Memory means 201 for storing a sound source processing program relating to a modulation method, and sound signal generating means 101 for generating a sound signal as a modulation process by executing the sound source processing program stored in this storage means. And sound signal generating means for outputting the sound signal generated by the sound signal generating means at a constant output time interval. 제1항에 있어서, 상기 악음신호 출력수단(107, 108)은 각각의 소정의 샘플링 주기의 타이밍 신호를 발생시키기 위한 타이밍신호 발생수단(203)과, 상기 악음신호 발생수단(101)으로부터 디지탈 악음의 출력타이밍에서 상기 악음신호 발생수단에 의해 발생된 디지탈 악음을 래치하기 위한 제1래치수단(601)과, 타이밍 신호가 상기 타이밍 신호 발생수단(203)으로부터 발생될 때 상기 제1래치수단(601)의 출력신호를 래치함으로써 디지탈 악음신호를 출력시키기 위한 제2래치수단(602)임을 특징으로 하는 악음파형 발생장치.2. The digital sound signal according to claim 1, wherein the sound signal output means (107, 108) comprises a timing signal generating means (203) for generating a timing signal of each predetermined sampling period and the digital sound signal from the sound signal generating means (101). First latch means (601) for latching the digital musical sound generated by the sound signal generating means at the output timing of the first latch means (601), and when the timing signal is generated from the timing signal generating means (203). And second latch means (602) for outputting the digital sound signal by latching an output signal of the sound wave waveform. 제1항에 있어서, 상기 악음신호 발생수단(101)은 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 실행하는 것을 특징으로 하는 악음파형 발생장치.The sound signal generating means according to claim 1, characterized in that the sound signal generating means (101) executes a process of outputting a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal and outputting a modulated sound signal as an output signal. Waveform Generator. 제1항에 있어서, 상기 악음신호 발생수단(101)은 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 하는 것으로, 입력신호와 출력신호와의 사이의 함수관계는 정현함수, 여현함수의 어느 관계도 아니고, 또한, 상기 반송신호는 상기 변조신호가 혼합되지 않는 경우에 상기 출력신호가 단일 주파수의 정현파 또는 여현파가 되게하는 신호인 것을 특징으로 하는 악음파형 발생장치.The method of claim 1, wherein the sound signal generating means 101 performs a process of outputting a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal, and outputting the modulated sound signal as an output signal. The functional relationship between the signal is neither a sine function nor a cosine function, and the carrier signal is a signal that causes the output signal to be a sine wave or cosine wave of a single frequency when the modulated signal is not mixed. Sound wave waveform generator, characterized in that. 제1항에 있어서, 상기 악음신호 발생수단(101)은 반송신호에 변조신호를 혼합하여 얻은 혼합 신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 하는 것으로, 입력신호와 출력신호와의 함수관계는 정현함수이며, 또한 상기 반송신호도 정현파인 것을 특징으로 하는 악음파형 발생장치.The method of claim 1, wherein the sound signal generating means 101 performs a process of outputting a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal, and outputting the modulated sound signal as an output signal. A sound wave generator, characterized in that the functional relationship with the signal is a sine function and the carrier signal is a sine wave. 연주정보를 처리하기 위한 연주정보처리 프로그램과 악음신호를 얻기 위한 변조방식에 의한 음원처리 프로그램을 기억하는 프로그램 기억수단(201)과, 상기 프로그램 기억수단의 어드레스를 제어하는 어드레스 제어수단(205)과, 상기 변조방식으로 악음신호를 생성하기 위해 필요한 악음생성 데이터를 기억하는 데이터 기억수단(206)과, 연산처리수단(208, 209)과, 상기 어드레스 제어수단(205), 상기 데이터 기억수단(206) 및 상기 연산처리수단(208, 209)을 제어하면서, 상기 프로그램 기억수단(201)에 기억된 상기 연주정보처리 프로그램 또는 상기 음원처리 프로그램을 실행하는 수단이며, 통상시의 상기 연주정보처리 프로그램을 실행하는 상기 데이터 기억수단상의 악음생성 데이터를 제어하고, 소정 시간간격으로 상기 음원처리 프로그램에 제어용 옮기어 그것을 실행하고, 그 종료후에 다시 상기 연주정보처리 프로그램을 실행하는 수단이며, 상기 음원처리 프로그램의 실행시에, 상기 데이터 기억수단상의 악음생성 데이터에 기초하여 상기 변조방식으로 악음신호를 생성하는 프로그램 실행수단(101)과, 상기 프로그램 실행수단(101)과 상기 음원처리 프로그램을 실행하여 얻어진 상기 악음신호를 유지하고, 그 유지된 악음신호를 일정한 출력시간 간격으로 출력하는 악음신호출력수단(107, 108)을 가지는 것을 특징으로 하는 악음파형 발생장치.Program storage means (201) for storing a performance information processing program for processing performance information and a sound source processing program by a modulation method for obtaining a sound signal, an address control means (205) for controlling an address of the program storage means; Data storage means 206, arithmetic processing means 208, 209, the address control means 205, and the data storage means 206 for storing sound generation data necessary for generating a sound tone signal by the modulation method. And means for executing the performance information processing program or the sound source processing program stored in the program storage means 201 while controlling the arithmetic processing means 208, 209. Control the sound generation data on the data storage means to be executed, and transfer the control to the sound source processing program at a predetermined time interval. Means for executing the performance information processing program again after the completion of the sound source processing program, and at the time of execution of the sound source processing program, executing a program for generating a sound signal by the modulation method on the basis of the sound generation data on the data storage means. Music sound signal output means 107, 108 for holding the sound signal obtained by executing the means 101, the program execution means 101, and the sound source processing program, and outputting the held sound signal at regular output time intervals. Sound wave waveform generator characterized in that it has a). 제6항에 있어서, 상기 프로그램 실행수단(101)은 상기 소정시간 간격으로 인터럽트 신호를 발생하는 인터럽트 제어수단(203)을 포함하고, 그 프로그램 실행수단(101)은 상기 연주정보처리 프로그램을 실행중에, 상기 인터럽트 제어수단(203)에서 상기 인터럽트신호가 발생한 타이밍에서 상기 연주정보처리 프로그램을 중단하고, 상기 음원처리 프로그램에 제어를 옮기어 그것을 실행하고, 그 종료후에 인터럽트를 해제하여 상기 연주정보처리 프로그램의 실행을 재개하는 것을 특징으로 하는 악음파형 발생장치.8. The program execution means (101) according to claim 6, wherein said program execution means (101) includes interrupt control means (203) for generating an interrupt signal at said predetermined time interval, and said program execution means (101) is executing said performance information processing program. The interrupt control means 203 stops the performance information processing program at the timing at which the interrupt signal is generated, transfers control to the sound source processing program, executes it, and releases the interrupt after the termination of the performance information processing program. A sound wave generator, characterized by resuming execution. 제6항에 있어서, 상기 응원처리 출력수단(107,108)은 각각의 소정의 샘플링 주기의 타이밍 신호를 발생시키기 위한 타이밍신호 발생수단(203)과, 상기 프로그램 실행수단(101)으로 부터의 디지탈 음원신호의 출력타이밍에서 상기 프로그램 실행수단(101)에 의해 발생된 디지탈 악음신호를 래치하기 위한 제1래치수단(601)과, 타이밍 신호가 상기 타이밍 신호 발생수단(203)에서 발생될때, 상기 제1래치수단(601)의 출력신호를 래치하므로써 디지탈 악음신호를 출력시키기 위한 제2래치수단(602)을 가지는 것을 특징으로 하는 악음파형 발생장치.7. The digital sound source signal according to claim 6, wherein the rooting processing output means (107, 108) comprises a timing signal generating means (203) for generating timing signals of each predetermined sampling period, and the program execution means (101). First latch means 601 for latching the digital sound signal generated by the program executing means 101 at an output timing of the first latch means, and when the timing signal is generated by the timing signal generating means 203, the first latch. And a second latch means (602) for outputting a digital sound signal by latching an output signal of the means (601). 제6항에 있어서, 상기 프로그램 실행수단(101)은, 음원처리 프로그램의 실행에 의해, 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 것을 특징으로 하는 악음파형 발생장치.The program execution means (101) according to claim 6, wherein said program execution means (101) outputs a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal, and outputs a modulated sound signal as an output signal by execution of a sound source processing program. Sound wave waveform generator characterized in that. 제6항에 있어서, 상기 프로그램 실행수단(101)은, 음원처리 프로그램의 실행에 의해, 반송신호에 변조신호를 혼합하여 얻은 혼합 신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 하는 것으로, 입력신호와 출력신호와의 사이의 함수관계는, 정현함수, 여현함수의 어느 관계도 아니고, 또한 상기 반송신호는 상기 변조신호가 혼합되지 않는 경우에 상기 출력신호가 단일주파수의 정현파 또는 여현파로 되게하는 신호인 것을 특징으로 하는 악음파형 발생장치.7. The processing according to claim 6, wherein said program executing means (101) outputs a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal and an output of a modulated sound signal as an output signal by execution of a sound source processing program. The function relationship between the input signal and the output signal is neither a sine function nor a cosine function, and the carrier signal is a sinusoidal wave having a single frequency when the output signal is not mixed with the modulated signal. Or a sound wave generator that is a signal to be a cosine wave. 제6항에 있어서, 상기 프로그램 발생수단(101)은, 음원처리 프로그램의 실행에 의해, 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 하는 것으로, 입력신호와 출력신호와의 사이의 함수관계는 정현함수이며, 또한 상기 반송신호도 정현파인 것을 특징으로 하는 악음파형 발생장치.7. The process according to claim 6, wherein the program generating means (101) outputs a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal and an output modulated sound signal as an output signal by execution of a sound source processing program. Wherein the functional relationship between the input signal and the output signal is a sine function, and the carrier signal is a sine wave. 적어도 하나의 오퍼레이터 처리를 실행하기 위한 오퍼레이터처리 프로그램과 그 각 오퍼레이터 처리간의 입출력관계를 결정하는 알고리듬처리를 실행하기 위한 알고리듬처리 프로그램을 가지는 변송방식에 관한 음원처리 프로그램을 기억하는 기억수단(201)과, 상기 오퍼레이터처리 프로그램에 기초하는 오퍼레이터처리와 상기 알고리듬처리 프로그램에 기초하는 알고리듬처리를 각각 독립으로 일괄하여 행함으로써 악음신호를 발생하는 악음신호 발생수단(101)과, 이 악음신호 발생수단에 의해 발생된 악음신호를 일정한 출력시간 간격으로 출력하는 악음신호 출력수단(107, 108)을 가지는 것을 특징으로 하는 악음파형 발생장치.Storage means 201 for storing a sound source processing program relating to a transfer method having an operator processing program for executing at least one operator process and an algorithm processing program for executing an algorithm process for determining an input-output relationship between the respective operator processes; Sound signal signal generating means 101 for generating a sound signal by independently carrying out an independent collective processing of the operator processing based on the operator processing program and the algorithm processing based on the algorithm processing program, and by the sound signal generating means Sound wave signal generating device characterized in that it has a sound signal output means (107, 108) for outputting the sound signal at regular intervals. 제12항에 있어서, 상기 악음신호 출력수단(107, 108)은 각각의 소정의 샘플링 주기의 타이밍 신호를 발생시키기 위한 타이밍신호 발생수단(203)과, 상기 악음신호 발생수단(101)으로부터 디지탈 악음신호의 출력 타이밍에서 상기 악음신호 발생수단(101)에 의해 발생된 디지탈 악음신호를 래치하기 위한 제1래치수단(601)과, 타이밍신호가 상기 타이밍신호 발생수단(203)으로부터 발생될때 상기 제1래치수단(601)의 출력신호를 래치하므로써 디지탈 악음신호를 출력시키기 위한 제2래치수단(602)을 가지는 것을 특징으로 하는 악음파형 발생장치.13. The digital sound signal according to claim 12, wherein the sound signal output means (107, 108) comprises a timing signal generating means (203) for generating a timing signal of each predetermined sampling period and the digital sound signal from the sound signal generating means (101). First latch means 601 for latching the digital sound signal generated by the sound signal generating means 101 at the output timing of the signal, and the first signal when the timing signal is generated from the timing signal generating means 203. And a second latch means (602) for outputting a digital sound signal by latching an output signal of the latch means (601). 제12항에 있어서, 상기 악음신호 발생수단(101)은 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력으로서, 변조된 악음신호를 출력신호로서 출력하는 것을 특징으로 하는 악음파형 발생장치.The sound wave generator according to claim 12, wherein said sound signal generating means (101) outputs a modulated sound signal as an output signal as a mixed signal obtained by mixing a modulation signal with a carrier signal. 제12항에 있어서, 상기 악음신호 발생수단(101)은 반송신호에 변조신호를 혼합하여 얻은 혼합 신호를 입력으로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 하는 것으로, 입력신호와 출력신호와의 사이의 함수관계는 정현함수, 여현함수의 어느 관계도 아니고, 또한, 상기 반송신호는 상기 변조신호가 혼합되지 않은 경우에 상기 출력신호가 단일주파수의 정현파 또는 여현파로 되게하는 신호인 것을 특징으로 하는 악음파형 발생장치.The method of claim 12, wherein the sound signal generating means 101 performs a process of outputting a modulated sound signal as an output signal by inputting a mixed signal obtained by mixing a modulation signal with a carrier signal as an input signal. The functional relationship between is not a sine function or a cosine function, and the carrier signal is a signal that causes the output signal to be a sine wave or cosine wave of a single frequency when the modulated signals are not mixed. Sound wave waveform generator. 제12항에 있어서, 상기 악음신호 발생수단(101)은 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력으로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 하는 것으로, 입력신호와 출력신호와의 사이의 함수관계는 정현함수이며, 또한 상기 반송신호도 정현파인 것을 특징으로 하는 악음파형 발생장치.The method of claim 12, wherein the sound signal generating means 101 performs a process of outputting a modulated sound signal as an output signal by inputting a mixed signal obtained by mixing a modulation signal with a carrier signal as an input signal. And a functional relationship between is a sinusoidal function, and the carrier signal is a sinusoidal wave. 연주정보를 처리하기 위한 연주정보처리 프로그램과, 악음신호를 얻기 위한 변조방식에 의한 음원처리 프로그램에 있어서, 변조처리 단위인 적어도 하나의 오퍼레이터가 일괄하여 실행된후 또는 그 실행전에, 그 각 오퍼레이터 처리간의 일괄하여 실행된후 또는 그 실행전에, 그 각 오퍼레이터 처리간의 각 입출력 처리인 알고리듬 처리가 일괄하여 실행되는 처리구조를 가지는 음원처리 프로그램을 기억하는 프로그램 기억수단(201)과, 상기 프로그램 기억수단의 어드레스를 제어하는 어드레스 제어수단(205)과, 상기 변조방식으로 악음신호를 생성하기 위해 필요한 악음생성 데이터를 기억하는 데이터 기억수단(206)과, 연산처리수단(208, 209)과, 상기 어드레스 제어수단(205), 상기 데이터 기억수단(206) 및 상기 연산처리수단(208, 209)을 제어하면서, 상기 프로그램기억수단(201)에 기억된 상기 연주정보처리 프로그램 또는 상기 음원처리 프로그램을 실행하는 수단이며, 통상시는 상기 연주정보처리 프로그램을 실행하여 상기 데이터 기억수단(206)상의 악음생성 데이터를 제어하고, 소정시간 간격으로 상기 음원처리 프로그램에 제어를 옮기어 그것을 실행하고, 그 종료후에 다시 상기 연주정보 처리 프로그램을 실행하는 수단이며, 상기 음원처리 프로그램의 실행시에 상기 데이터 기억수단(206)상의 악음생성 데이터에 기초하여 상기 변조 방식으로 악음신호를 생성하는 프로그램 실행수단시에 상기 데이터 기억수단(206)상의 악음생성 데이터에기초하여 상기 변조방식으로 악음신호를 생성하는 프로그램 실행수단(101)과, 상기 프로그램실행수단(101)이 상기 음원처리 프로그램을 실행하여 얻어진 상기 악음신호를 유지하고, 그 유지된 악음신호를 일정한 출력시간 간격으로 출력하는 악음신호 출력수단(107, 108)을 가지는 것을 특징으로 하는 악음파형 발생장치.In a performance information processing program for processing performance information and a sound source processing program using a modulation method for obtaining a sound signal, each operator processing after at least one operator, which is a modulation processing unit, is collectively executed or before execution thereof. Program storage means 201 for storing a sound source processing program having a processing structure in which algorithm processing, which is input / output processing between respective operator processes, is executed collectively after or before execution thereof; Address control means 205 for controlling an address, data storage means 206 for storing sound generation data necessary for generating a sound signal by the modulation method, arithmetic processing means 208, 209, and the address control The program 205 controls the data storage means 206 and the arithmetic processing means 208,209. Means for executing the performance information processing program or the sound source processing program stored in the gram memory means 201, and normally executes the performance information processing program to control the sound generation data on the data storage means 206; Means for transferring control to the sound source processing program at predetermined time intervals and executing it, and again executing the performance information processing program after the completion of the sound source processing program. Program execution means (101) for generating a sound signal in the modulation method based on the sound generation data on the data storage means (206) in the program execution means for generating a sound signal in the modulation method based on data; The sound sound image obtained by the program executing means 101 executing the sound source processing program The maintenance, and the maintenance of the musical tone signal output means for generating musical tone waveforms and wherein having a (107, 108) for outputting a sound signal with a constant output time interval. 제17항에 있어서, 상기 프로그램 실행수단(101)은 상기 소정시간 간격으로 인터럽트신호를 발생하는 인터럽트 제어수단(203)을 포함하고, 그 프로그램 실행수단(101)은 상기 연주정보처리 프로그램을 실행중에 상기 인터럽트 제어수단(203)으로부터 상기 인터럽트신호가 발생한 타이밍에서 상기 연주정보처리 프로그램을 중단하고, 상기 음원처리 프로그램에 제어를 옮기어 그것을 실행하고, 그 종료후에 인터럽트를 해재하여 상기 연주정보처리 프로그램의 실행을 개재하는 것을 특징으로 하는 악음파형 발생장치.18. The program execution means (101) according to claim 17, wherein said program execution means (101) includes interrupt control means (203) for generating an interrupt signal at said predetermined time interval, and said program execution means (101) is executing said performance information processing program. The performance control program stops the performance information processing program at the timing when the interrupt signal is generated from the interrupt control means 203, transfers control to the sound source processing program, executes it, and releases the interrupt after the execution of the performance information processing program. Sound wave waveform generator, characterized in that through. 제17항에 있어서, 상기 변조방식에 의한 음원처리 프로그램은 변조처리 단위인 적어도 하나의 오퍼레이터처리가 일괄하여 실행된 후 또는 그 실행전에, 그 각 오퍼레이터 처리간의 각 입출력처리인 알고리듬처리가 복수의 알고리듬처리중에서 선택적으로 일괄하여 실행되는 처리구조를 가지는 것을 특징으로 하는 악음파형 발생장치.18. A plurality of algorithms according to claim 17, wherein the sound source processing program according to the modulation method is each input / output process between the respective operator processes after at least one operator process which is a modulation processing unit is executed collectively or before its execution. A sound wave generator, characterized in that it has a processing structure which is collectively executed during processing. 제17항에 있어서, 상기 음원처리 출력수단(107, 108)은 각각의 소정의 샘플링 주기의 타이밍신호를 발생시키기 위한 타이밍신호 발생수단(203)과, 상기 프로그램 실행수단(101)으로 부터의 디지탈 음원처리의 출력 타이밍에서 상기 프로그램 실행수단에 의해 발생된 디지탈 악음신호를 래치하기 위한 제1래치수단(601)과, 타이밍신호가 상기 타이밍신호 발생수단(203)으로부터 발생될때 상기 제1래치수단(601)의 출력신호를 래치하므로써 디지탈 악음신호를 출력시키기 위한 제2래치수단(602)을 가지는 것을 특징으로 하는 악음파형 발생장치.18. The apparatus according to claim 17, wherein the sound source processing output means (107, 108) comprises a timing signal generating means (203) for generating a timing signal of each predetermined sampling period, and digital from the program executing means (101). First latch means (601) for latching the digital music signal generated by the program executing means at the output timing of the sound source processing, and the first latch means (1) when the timing signal is generated from the timing signal generating means (203). And a second latch means (602) for outputting a digital sound signal by latching an output signal of the signal (601). 제17항에 있어서, 상기 프로그램 실행수단(101)은 음원처리 프로그램의 실행에 의해, 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 것을 특징으로 하는 악음파형 발생장치.The program execution means (101) according to claim 17, wherein the program executing means (101) outputs a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal and an output modulated sound signal as an output signal by execution of a sound source processing program. Sound wave waveform generator. 제17항에 있어서, 상기 프로그램 실행수단(101)은, 음원처리 프로그램의 실행에 의해, 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 하는 것으로, 상기 입력신호와 상기 출력신호와의 사이의 함수관계는, 정현함수, 여현함수의 어느 관계도 아니고, 또한, 상기 반송신호는 상기 변조신호와 혼합되지 않는 경우에 상기 출력신호가 단일 주파수의 정현파 또는 여현파로 되게하는 신호인 것을 특징으로 하는 악음파형 발생장치.The process according to claim 17, wherein said program execution means (101) outputs a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal, and outputs a modulated sound signal as an output signal by execution of a sound source processing program. Wherein the functional relationship between the input signal and the output signal is neither a sine function nor a cosine function, and the output signal is single when the carrier signal is not mixed with the modulation signal. A sound wave generator, characterized in that the signal is a sinusoidal or cosine wave of frequency. 제17항에 있어서, 상기 프로그램 발생수단(101)은 음원처리 프로그램의 실행에 의해, 반송신호에 변조신호를 혼합하여 얻은 혼합신호를 입력신호로서, 변조된 악음신호를 출력신호로서 출력하는 처리를 하는 것으로, 상기 입력신호와 상기 출력신호와의 사이의 함수관계를 정현함수이며, 또한 상기 반송신호도 정현파인 것을 특징으로 하는 악음파형 발생장치.The program generating means (101) according to claim 17, wherein the program generating means (101) performs a process of outputting a mixed signal obtained by mixing a modulation signal to a carrier signal as an input signal and outputting a modulated sound signal as an output signal by executing a sound source processing program. Wherein the functional relationship between the input signal and the output signal is a sine function, and the carrier signal is a sine wave.
KR1019910009251A 1990-06-28 1991-06-04 Musical sound waveform generator KR950006029B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2-171216 1990-06-28
JP2171217A JP3035991B2 (en) 1990-06-28 1990-06-28 Musical sound wave generator
JP2-171217 1990-06-28
JP2171216A JP3010693B2 (en) 1990-06-28 1990-06-28 Musical sound wave generator

Publications (2)

Publication Number Publication Date
KR920001423A KR920001423A (en) 1992-01-30
KR950006029B1 true KR950006029B1 (en) 1995-06-07

Family

ID=26494012

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910009251A KR950006029B1 (en) 1990-06-28 1991-06-04 Musical sound waveform generator

Country Status (3)

Country Link
EP (1) EP0463409B1 (en)
KR (1) KR950006029B1 (en)
DE (1) DE69130688T2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69517896T2 (en) * 1994-09-13 2001-03-15 Yamaha Corp Electronic musical instrument and device for adding sound effects to the sound signal
CN1154973C (en) * 1995-03-03 2004-06-23 雅马哈株式会社 Computerized music apparatus composed of compatible software modules
JP3267106B2 (en) * 1995-07-05 2002-03-18 ヤマハ株式会社 Musical tone waveform generation method
JP3975593B2 (en) 1999-01-21 2007-09-12 株式会社ソニー・コンピュータエンタテインメント Method for generating playback sound, electronic device for generating playback sound, and entertainment system
CN106155940A (en) * 2015-04-17 2016-11-23 扬智科技股份有限公司 The System on Chip/SoC of code and the code protection method of System on Chip/SoC can be protected

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5375919A (en) * 1976-12-17 1978-07-05 Nippon Gakki Seizo Kk Electronic instrument
JPS58211789A (en) * 1982-06-04 1983-12-09 ヤマハ株式会社 Electronic musical instrument
JP2699278B2 (en) * 1987-10-14 1998-01-19 カシオ計算機株式会社 Tone generator
DE68917113T2 (en) * 1988-12-29 1995-03-16 Casio Computer Co Ltd Data processing device for an electronic musical instrument.

Also Published As

Publication number Publication date
EP0463409A2 (en) 1992-01-02
KR920001423A (en) 1992-01-30
EP0463409A3 (en) 1993-09-22
DE69130688T2 (en) 1999-09-09
EP0463409B1 (en) 1998-12-30
DE69130688D1 (en) 1999-02-11

Similar Documents

Publication Publication Date Title
EP0463411B1 (en) Musical tone waveform generation apparatus
US5319151A (en) Data processing apparatus outputting waveform data in a certain interval
US4788896A (en) Tone Generator having a variable number of channels with a variable number of operating units
US5119710A (en) Musical tone generator
EP0379181B1 (en) Electronic musical instrument having a plurality of tone generation modes
KR950006029B1 (en) Musical sound waveform generator
US5192824A (en) Electronic musical instrument having multiple operation modes
JP2869573B2 (en) Musical sound wave generator
EP0169659A2 (en) Sound generator for electronic musical instrument
JP3035991B2 (en) Musical sound wave generator
JPS619693A (en) Musical sound generator
JP2797139B2 (en) Musical sound wave generator
JP3010693B2 (en) Musical sound wave generator
US5074183A (en) Musical-tone-signal-generating apparatus having mixed tone color designation states
JPH0210439B2 (en)
US5541360A (en) Single chip sound source integrated circuit including effect adding device and sound source on the same single integrated circuit chip
JP2522793Y2 (en) Electronic musical instrument
US4709611A (en) Electronic musical instrument for generating a natural musical tone
JPS62208099A (en) Musical sound generator
JP2678974B2 (en) Musical sound wave generator
JP2522794Y2 (en) Electronic musical instrument
JP3006094B2 (en) Musical sound wave generator
JPH0460698A (en) Musical sound waveform generator
JPH01182896A (en) Tone area converting device for electronic musical instrument
JP3027832B2 (en) Musical sound wave generator

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J2X1 Appeal (before the patent court)

Free format text: APPEAL AGAINST DECISION TO DECLINE REFUSAL

G160 Decision to publish patent application
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 19980526

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee