KR100306032B1 - 악음발생장치 - Google Patents

악음발생장치 Download PDF

Info

Publication number
KR100306032B1
KR100306032B1 KR1019960020414A KR19960020414A KR100306032B1 KR 100306032 B1 KR100306032 B1 KR 100306032B1 KR 1019960020414 A KR1019960020414 A KR 1019960020414A KR 19960020414 A KR19960020414 A KR 19960020414A KR 100306032 B1 KR100306032 B1 KR 100306032B1
Authority
KR
South Korea
Prior art keywords
waveform
waveform generator
performance information
generator
generate
Prior art date
Application number
KR1019960020414A
Other languages
English (en)
Other versions
KR970002733A (ko
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
Application filed by 우에시마 세이스케, 야마하 가부시키가이샤 filed Critical 우에시마 세이스케
Publication of KR970002733A publication Critical patent/KR970002733A/ko
Application granted granted Critical
Publication of KR100306032B1 publication Critical patent/KR100306032B1/ko

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
    • 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
    • G10H2230/00General physical, ergonomic or hardware implementation of electrophonic musical tools or instruments, e.g. shape or architecture
    • G10H2230/025Computing or signal processing architecture features
    • G10H2230/041Processor load management, i.e. adaptation or optimization of computational load or data throughput in computationally intensive musical processes to avoid overload artifacts, e.g. by deliberately suppressing less audible or less relevant tones or decreasing their complexity
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/241Telephone transmission, i.e. using twisted pair telephone lines or any type of telephone network
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/271Serial transmission according to any one of RS-232 standards for serial binary single-ended data and control signals between a DTE and a DCE
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/291SCSI, i.e. Small Computer System Interface
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/295Packet switched network, e.g. token ring
    • G10H2240/305Internet or TCP/IP protocol use for any electrophonic musical instrument data or musical parameter transmission purposes
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/311MIDI transmission
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/315Firewire, i.e. transmission according to IEEE1394
    • 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/471General musical sound synthesis principles, i.e. sound category-independent synthesis methods
    • G10H2250/511Physical modelling or real-time simulation of the acoustomechanical behaviour of acoustic musical instruments using, e.g. waveguides or looped delay lines

Abstract

본 발명의 악음 발생 장치는 연주 정보에 따라 악음을 발생하도록 파형을 생성한다. 상기 장치에서, 제1파형 발생기는 파형을 생성하도록 동작하며, 제2파형 발생기는 제1파형 발생기와는 독립적으로 동작하여 파형을 발생한다. 입력장치가 연주정보를 제공하며, 지정장치가 제공된 지정정보에 따라 상기 파형 발생기들 중 하나를 지정하며, 제어기가 지정된 한 파형 발생기를 동작시켜서, 제공된 연주정보에 따라 파형을 생성한다. 출력장치는 생성된 파형에 따라 악음을 발생한다. 제2파형 발생기, 입력장치, 지정장치 및 제어기는 서로 일체로 되어 컴퓨터의 주요부를 구성하며, 제1파형 발생기는 상기 주요부에서 분리 가능하게 컴퓨터에 옵션으로 설치될 수 있는 보조부를 단독으로 구성한다.

Description

악음발생장치
제1도는 본 발명의 악음발생기의 제1실시예를 나타내는 개략블럭도.
제2도는 제1도에 도시한 실시예의 변형을 나타내는 개략 블록도.
제3도는 제 도에 도시한 실시예의 다른 변형을 나타내는 개략블록도.
제4(a)도는 음원장치 및 그 주변장치가 함께 일체화된 구성을 도시하는 개략 블록도.
제4(b)도는 DSP 및 그 주변장치가 함께 일체화된 구성을 도시하는 개략 블록도.
제5도는 본 발명에 따른 제1실시예의 동작 모드를 나타내는 도면.
제6도는 상기 제1실시예에 제공된 RAM의 메모리 맵을 도시하는 도면.
제7도는 제1실시예에서 수행된 전체의 프로세스를 도시하는 플로우챠트.
제8도는 제1실시예에서 수행된 파형 합성 프로그램을 도시하는 플로우챠트.
제9도는 제1실시예에서 수행된 파형 합성 프로그램을 도시하는 플로우챠트.
제10도는 제1실시예에서 수행된 파형 합성 프로그램을 도시하는 플로우챠트.
제11도는 제1실시예에서 수행된 파형 합성 프로그램을 도시하는 플로우챠트.
제12도는 상기 파형 합성 프로그램에서 수행된 파형 샘플값 로딩 처리를 나타내는 플로우챠트.
제13도는 상기 파형 합성 프로그램에서 수행된 파형 샘플값 연산 처리를 도시하는 플로우챠트.
제14도는 상기 파형 합성 프로그램에서 CPU에 의해 실행된 파형 샘플값 연산을 나타내는 플로우챠트.
제15도는 상기 파형 합성 프로그램에서 전택된 하드웨어에 의한 합성 처리를 나타내는 플로우챠트.
제16도는 상기 파형 합성 프로그램에서 선택된 하드웨어에 의한 합성 처리를 나타내는 플로우챠트.
제17도는 상기 파형 합성 프로그램의 타이머 처리를 도시하는 플로우챠트.
제18도는 제2실시예에서 선택된 하드웨어에 의한 합성 처리를 도시하는 플로우챠트.
제19도는 제3실시예에서 선택된 하드웨어에 의한 합성처리를 도시하는 플로우챠트.
제20도는 제4실시예에서 선택된 하드웨어에 의한 합성처리를 도시하는 플로우챠트.
제21도는 본 발명이 적용되는 변형을 도시하는 개략 블록도.
제22도는 본 발명이 적용되는 다른 변형을 도시하는 개략블럭도.
제23도는 본 발명이 적용되는 제3의 변형을 도시하는 개략 블록도.
제24도는 본 발명이 적용되는 제4의 변형을 도시하는 개략 블록도.
제25도는 본 발명의 악음 발생장치의 다른 실시예를 도시하는 개략 블록도.
* 도면의 주요부분에 대한 부호의 설명
10 : CPU 11 : ROM
12 : 데이터버스 13 : RAM
14 : I/O포트 15 : 기억장치
16 : 디스플레이 17 : 코프로세서
18 : 타이머 19 : DMAC
20 : RAM 21 : DSP
22 : 음원 23 : DAC
24 : RAM 25 : 파형 메모리
본 발명은 전자오락기, 네트워크 가라오케, PC (personal computer) 등의 중앙처리장치(CPU: central processor unit)를 이용한 컴퓨터 응용 시스템에 이용되는 악음발생기에 관한 것으로, 특히 연주정보에 따라 각종의 악음을 발생할 수 있는 악음발생기에 관한 것이다.
통상 PC 등의 장치에 있어서, 악음은 음원 LSI 회로(sound source large scaled integrated circuit) 및 음원 보드 등의 지정 하드웨어 모듈에 의해서 음원 장치를 제어하는 프로그램을 수행함으로써 재생될 수 있다. 최근 PC에서 CPU의 성능이 현저히 개선되어, 지정하드웨어 모듈 대신에 CPU로서 악음이 재생될 수 있다. 이러한 종류의 악음발생장치를 지정하드웨어에 의해 악음을 발생하는 “하드웨어음원”과 대비되는 “소프트웨어음원”이라고 한다. CPU는 지정프로그램에 따라 음원에 대한 파형 데이터를 연산한다. 상기 소프트웨어 음원으로 발생된 사운드의 품질은 상기 프로그램을 수행하는 CPU의 성능에 따른다. CPU가 고성능을 가지면 파형 데이터가 고속으로 연산되어 상기 파형 데이터의 연산주파수가 품질이 높은 악음발생을 실현하도록 높게 상승될 수 있다. 그러나, CPU의 성능이 낮으면 데이터를 고속으로 연산하기가 어려워 샘플링 주파수가 낮아진다. 이로써 재생된 악음의 품질이 열화된다.
옵션장치의 설치와 관련하여 PC 등의 응용시스템의 구성이 시스템마다 다양하게 된다. 일반적으로, 옵션장치는 넓은 의미에서 하드디스크, 비디오카드 등을 포함하지만, 본 발명에 있어서는 옵션장치란 악음 발생장치에 포함된 외부접속가능 장치를 말한다. CPU 처리 능력은 각종의 시스템구성에 따라 다르다. 또한, 사운드를 발생하는 응용프로그램 및 다른 일을 수행하는 다른 응용프로그램이 동시에 병행해서 행해지는 상황에서 CPU의 로드는 프로그램의 실행상태 및 상기 시스템에서 현재 수행되는 일의 상태에 따라 변한다. 이러한 구성에서 CPU의 유효 처리 능력은 같은 시스템에서도 다르다. 따라서 사용자(user)는 시스템의 환경이 바귈 때마다 사운드 발생을 위해 기본 설정을 재배열해야만하여 수고를 요하였다. 이러한 시스템에 있어서 사용자는 사운드의 실제 재생시 음원의 미스(miss) 및 스킵(skip)이 발생할 때까지 사운드가 현재의 구성설정 상태에서 정확히 발생하는지를 인식할 수 없었다. 환언하면, 사운드가 실제로 재생되기까지는 시스템 구성이 적당한지를 판단할 수 없었다. 또한, CPU의 성능이 우수함에도 불구하고, 많은 경우에 하드웨어 자원의 실제 사용에 있어서 사용자의 요구에 따라 외부 사운드 발생 하드웨어가 이용되고 있다. 이 경우, 하드웨어 음원을 전적으로 사용함으로써 사운드 발생 하드웨어의 설비 제한을 초과하는 사운드를 재생할 수 없어서 다양한 악음이 재생될 수 없었다. 또한 CPU가 충분한 처리 능력을 갖고 있어도, 음색 종류가 다양하게 되지 못하였다.
본 발명의 목적은 상술한 문제를 해결하고, 우수한 사운드 품질을 유지하면서 각종의 악음을 발생할 수 있는 악음발생기를 제공하는 것을 목적으로 하며, 본 발명에 따르면, 악음발생장치는 연주정보에 따라 악음을 발생하는 파형을 생성한다. 상기 장치는 파형을 생성하도록 동작하는 제1파형 발생수단, 상기 제1파형 발생기와 무관하게 동작하며 파형을 발생하는 제2파형 발생수단, 연주정보를 제공하는 입력수단, 상기 제공된 연주정보에 따라 상기 제1파형 발생수단과 제2파형 발생수단 중 적어도 하나를 지정하는 지정수단, 상기 지정된 파형 발생수단을 선택적으로 조작해서 제공된 연주 정보에 따라 파형을 발생하는 제어수단, 및 상기 발생된 파형에 따라 악음을 발생하는 악음출력수단을 구비한다.
특히, 상기 입력수단은 상기 악음의 음색을 지정하는 음색정보와 상기 악음의 발생타이밍을 지정하는 타이밍 정보를 포함하는 연주정보를 제공하는 수단을 포함하며, 상기 지정수단은 출력수단이 지정된 타이밍에서 지정된 음색을 가지는 악음을 발생하도록 상기 음색정보에 따라 상기 제1파형 발생수단과 제2파형 발생수단 중 하나를 지정하는 수단을 갖고 있다.
상기 지정수단은 상기 제어수단이 파형으로 병렬로 동시에 발생하도록 상기 제1 및 제2파형 발생수단 모두를 조작할 수 있게 상기 제1 및 제2파형 발생수단 모두를 동시에 지정할 필요가 있을 때 동작하는 수단을 포함한다.
상기 입력수단은 복수의 악음을 동시에 발생하도록 명령하는 연주정보를 제공하는 수단을 포함하며, 또한, 상기 지정수단은 상기 연주정보로 지정된 동시 악음의 수에 따라 상기 제1파형 발생수단과 제2파형 발생 수단 중 하나를 지정해서 상기 지정된 수단이 악음의 수에 대응하는 다수의 파형을 발생하기에 충분한 용량을 가지도록 한 수단을 포함한다.
또한 상기 지정수단은 상기 동시 악음의 수가 상기 제1 및 제2파형 발생 수단의 어느 하나의 용량을 초과했을 때, 상기 제1, 제2파형 발생수단 모두를 지정해서 동시 악음이 완전히 발생될 수 있게 하는 수단을 포함한다.
상기 제1파형 발생수단은 상기 제어수단에 옵션으로 접속될 수 있는 외부 파형 발생기를 포함하며, 제2파형 발생수단은 상기 제어수단과 일체로 된 내부 파형 발생기를 포함하여 상기 외부 파형 발생기가 제공된 연주 정보에 일차로 대응하여야 할 때도, 상기 지정수단이 상기 외부 파형 발생기가 상기 제어수단에 접속되지 않는 경우 상기 외부 파형 발생기를 대신해서 내부 파형 발생기를 지정할 수 있다.
상기 제2파형 발생수단, 입력수단, 지정수단 및 제어수단은 일체로 될 수 있어서 컴퓨터를 구성하는 주요부를 이루며, 상기 제1파형 발생수단은 상기 주요부에서 분리되며, 컴퓨터에 옵션으로 설치할 수 있는 보조부를 단독 구성한다.
상기 제1파형 발생수단은 제어수단으로 구동되는 하드웨어 모듈로 구성될 수 있으며, 제2파형 발생수단은 상기 제어기에 설치할 수 있는 소프트웨어 모듈로 구성된다. 제2파형 발생수단은 상이한 알고리즘에 따라 동작하여 상이한 품질을 가지는 디지털 파형을 연산적으로 발생하는 복수의 디지털 파형 발생기를 포함한다. 또한 제어수단은 제공된 연주성능에 따라 하나의 디지털 파형 발생기를 선택적으로 동작시키는 수단을 포함하며,
제2파형 발생수단은 비교적 간단한 알고리즘에 의해 동작하여 비교적 품질이 낮은 디지털 파형을 생성하도록 동작하는 파형 메모리 형태의 디지털 파형 발생기 및 비교적 복잡한 알고리즘에 따라 동작하여 비교적 품질이 높은 다른 디지털 파형을 생성하는 다른 디지털 파형 발생기를 포함한다.
또한 상기 제2파형 발생수단은 가변 동작 속도에서 소정의 알고리즘에 따라 동작하며, 상기 디지털 파형의 샘플값을 순차로 연산함으로써 디지털 파형을 생성하는 컴퓨터 파형 발생기를 포함한다. 또한, 상기 제어수단은 상기 컴퓨터 파형 발생기를 예비 조작해서 모델디지털 파형의 시험 생성을 하며 상기 시험 생성이 수행되는 동작 속도를 측정하는 수단, 상기 측정된 동작 속도와 비교할 수 있는 샘플링 주파수를 최적으로 결정하는 결정수단 및 상기 컴퓨터 파형 발생기를 실제로 조작해서 그로하여금 제공된 연주정보에 따라 상기 결정된 샘플링 주파수에서 실제의 디지털 파형의 샘플값을 순차적으로 연산하는 수단을 구비한다.
상기 결정수단은 상기 샘플링 주파수를 계단식의 소정의 레벨 중 하나로 고정하는 수단을 포함하는데, 상기 레벨은 측정 동작 속도 이하로 속도에 가장 가깝다.
상기 제어수단은 상기 디지털 파형의 최소 품질을 제공하는 임계 레벨 이하로, 상기 결정 샘플링 주파수가 떨어질 때 동작하여 상기 샘플링 주파수가 상기 임계 레벨을 초과하게 재결정될 수 있도록 상기 컴퓨터 파형 발생기의 동작 속도를 상승시키도록 알고리즘을 변경시키는 변경수단을 포함한다.
상기 변경수단은 상기 컴퓨터 파형 발생기가 간단한 알고리즘에서 동작하여 샘플값중 미리 기억된 한 값을 순차로 판독해서 상기 디지털 파형을 재생하도록 간단한 알고리즘으로 알고리즘을 변경하는 수단을 포함한다.
본 발명의 한 특징에 따르면, 사운드 발생장치는 연주정보에 따라 악음을 발생하도록 디지털 파형을 생성하며, 이 장치는, 연주정보를 제공하는 입력수단, 소정의 동작 속도에서 소정의 알고리즘에 의해 동작하며, 디지털 파형의 샘플값을 순차로 연산함으로써 디지털 파형을 생성하는 컴퓨터 파형 발생수단, 상기 컴퓨터 파형 발생기를 예비적으로 조작하여 모델디지털 파형을 시험 생성하며 상기 시험 생성이 수행되는 동작 속도를 측정하는 시험수단, 상기 측정된 동작 속도와 비교할만한 샘플링 주파수를 최적으로 결정하는 결정수단, 상기 컴퓨터 파형 발생기를 실제로 조작해서 그로하여금 상기 결정된 샘플링 주파수에서 실제의 디지털 파형의 샘플 값을 순차로 연산케 하는 제어수단 및 상기 제공된 연주성능에 따라 실제의 디지털 파형에 의거 악음을 발생하는 악음 출력 수단을 구비한다. 본 발명의 장치에 있어서, 입력수단은 연주 정보를 제공하며, 상기 지정수단은 어느 파형 발생수단이 연주 정보에 속하는 악음의 파형을 발생해야 하는가를 지정한다. 상기 지정된 파형 발생수단은 상기 연주정보와 관련한 악음의 파형을 발생하도록 제어된다. 따라서, 연주 정보자체로서 제1과 제2파형 발생수단 중 어느 것이 상기 연주정보를 가지는 악음의 파형을 제공해야 하는지를 지정할 수 있다. 상기 제1 및 제2파형 발생수단은 그 구조가 서로 상이하여 발생된 악음의 처리부하 및 특성이 상기 수단들간의 파형 발생에 따라 다르다. 따라서, 연주 정보의 임의의 사건과 관련한 악음의 파형 발생을 위해 제1파형 발생수단을 선택하고, 연주정보의 다른 임의의 사건과 관련한 악음의 파형을 발생하도록 제2파형 발생수단을 선택함으로써 각종의 악음을 발생할 수 있다. 또한, 연주정보에 대한 파형 발생 수단의 할당을 제어함으로써 처리 로드를 조정할 수 있다.
임의의 타입의 파형 발생수단이 임의의 음색의 최적 발생을 할 수 있기 때문에 발생될 악음의 음색에 따라 악음의 파형을 생성하도록 파형 발생수단을 결정하는 것이 바람직하다. 연주정보와 관련하여 악음의 파형을 발생하도록 바람직한 파형 발생수단이 본 발명의 연주 정보에 의해 지정된 음색에 따라 결정된다. 상기 음색 정보는 본 발명에 있어서 연주정보에 포함된다. 상기한 바와 같이, 제1과 제2의 파형 발생수단의 차이에 따라, 동일 연주 정보가 제공되는 경우에도 악음의 특성이 달라진다. 동일 연주정보에 따라 상기 제1 및 제2파형 발생수단에 의해 동시에 악음의 파형을 발생함으로써 다른 파형 발생수단을 사용하여 공통 음색에 대해 악음의 변화를 줄 수 있다.
악음발생 조건에 따라, 제1 파형 발생수단이 연주 정보에 따라 파형을 발생해야 하는 경우에도, 다른 파형 발생수단에 의해 악음의 파형이 발생되어야 할 경우가 있다. 예를 들면, 제1파형 발생수단의 사운드 발생능력이 거의 그 최대치에 도달한 경우에 대치가 발생된다. 본 발명에 있어서, 연주정보 이외에, 악음의 발생 파형의 수가 어느 파형 발생수단이 파형 연산의 오버플로우를 방지하도록 악음을 발생해야 하는지를 결정하는데 고려된다.
상기 제1 및 제2파형 발생수단은 그 파형 발생 기능이 동일하여, 사용자가 하나만을 사용할 수도 있다. 예를 들면, 제1파형 발생수단은 착탈 가능하며, 제2파형 발생수단은 영구적으로 설치된다. 본 발명에 있어서, 제1파형 발생수단이 있고, 연주정보에 관련하여 악음의 파형이 상기 제1파형 발생 수단에 의해 발생되어야 하는 경우에, 그 수단은 상기 연주정보와 관련하여 악응의 파형을 발생하도록 지정된다. 또한, 상기 제1파형 발생수단이 우연히 장치에서 떨어진 경우, 상기 연주정보와 관련한 악음에 대한 파형을 발생하도록 제2파형 발생수단이 지정된다. 제1파형 발생수단에 의해 최초로 발생될 악음의 파형은 제2파형 발생수단에 의해 선택적으로 발생될 수 있다. 따라서, 제1파형 발생수단이 없는 경우에도, 악음의 파형이 안전하게 발생된다.
본 발명에 있어서, 제1 및 제2파형 발생수단은 상기 파형의 샘플값을 각각 연산할 수 있다. 상기 시험수단은 상기 파형을 발생하는데 있어 상기 제2파형 발생수단의 필요시간을 측정한다. 상기 샘플링 주파수는 시험수단에 의해 측정된 시간에 따라 결정된다. 따라서, 상기 시스템 구성에 있어서 최적 샘플링 주파수에서 악음이 생성될 수 있다. 일반적으로, 샘플링 주파수가 연속으로 변화하면, 주파수 결정을 조정하는 장치가 복잡해진다. 그러나, 본 발명의 특정형식에 있어서, 상기 결정수단으로 결정된 샘플링 주파수가 계단식 소정 레벨에서 선택된다.
상기 결정수단으로 결정된 샘플링 주파수가 임계 레벨 이하인 경우, 발생된 사운드의 품질이 상기 샘플링 주파수에서 최초 파형 발생에 의해 유지되지 않으므로, 파형의 연산처리가 변경된다. 이 경우, 샘플링 주파수를 상승시키도록 악음의 파형의 샘플 값을 간단히 판독하는 등의 연산 처리를 변경하는 것이 바람직하다.
이하 도면을 참조하여 본 발명의 실시예를 상세히 설명한다 제1도는 본 발명에 따른 악음 발생기의 제1실시예를 도시하는 블록도로서 도면부호 “10”은 CPU로서 ROM(11)에 기억된 기본 프로그램에 따라 데이터 버스(12)를 통해 컴퓨터 시스템을 구성하는 각종의 장치를 제어한다. 도면 부호 “13”은 각종 레지스터, 플랙(flag) 및 데이터를 일시 기억하는 RAM이다. 도면부호 “14”는 여러 인터페이스 I/F (도시 생략)를 통해 MIDI정보, 키보드(도시않음)의 키 조작에 의한 키 정보 및 기타의 정보를 송수신하는 멀티 타입의 I/D포트이다. 상기 I/D 포트(14)는 MIDI정보 또는 키정보 KBD의 형태로 연주 정보를 수신한다. 상기 실시예에 있어서, 연주 정보는 자동연주 프로그램에 의해 발생되는 것을 가정한다. 이 경우, 자동 연주프로그램은 임의의 자동 시퀀스 프로그램에 의해 시계열로 발생되는 것을 의미한다. 따라서, 제1도에 도시한 장치는 악음발생기로서 만이 아니라 시퀀스로서 동작한다. I/F의 타입은 직렬 또는 병렬포트 RS-232C, RS-422등 일 수 있다. 특히 RS-232C의 경우에, 컴퓨터시스템 모뎀(도시 생략)에 의해 공중 전화망을 통해 포스트 스테이션과 통신하므로, 연주정보의 입력원은 키보드 조작 정보가 제공되는 경우에 키보드이며, MIDI정보가 제공되는 경우에 I/F를 통해 접속된 외부 장치이며, 자동연주정보가 제공되는 경우에 CPU에 의해 실행되는 시퀀스 프로그램이다. 도면 부호 “15”는 기억 장치를 도시하는데, FD(Floppy Disk)와 HD(Hard Disk)로 구성된다. 상기 기억장치(15)는 또한 응용프로그램 및 데이터를 기억한다. 도면부호 “16”은 CRT 또는 LCD로 구성된 디스플레이 장치를 도시하는데, 이 디스플레이 장치(16)는 CPU(16)의 제어 하에 각종의 데이터를 나타낸다. 도면 부호 “17”은 CPU(17) 대신에 부동소수점 연산을 수행하는 옵션의 코프로세서이다. 나머지 데이터 처리는 CPU(10)에 의해 행해진다. 도면부호“18”"은 이하 기술하는 타이머 처리에 이어서 시간을 카운트하는 타이머이다. DMAC(Direct Memory Access Controller; 19)는 CPU의 제어를 받지 않고 RAM(20)에 직접적으로 데이터를 송수신한다. 본 실시예에 있어서는 코프로세서(17), 타이머(18), DMAC(19)가 별개의 장치로 되었지만 현재 이들은 CPU(10)와 함께 단일칩에 수용된다. RAM(20)은 그 하드웨어 구성과 관련하여 RAM(13)과 유사한 구조를 가진다. 그러나 RAM(13)은 CDU의 프로그램 수행을 위해 작업영역으로서 사용되며, RAM(20)은 파형 데이터로 표시되는 파형을 일시 기억하는 파형 메모리이다. DSP(Digital Signal Processor; 21)는 악음합성을 위해 필요한 디지털 신호 처리에 사용된다. 옵션 음원(22)은 연주정보에 따라 악음의 파형을 발생하는 하나의 칩 LSI의 제1파형 발생기를 구성한다. D/A변환기(23)는 플랙 DACENBL이 “1”로 세트될 때 인에이블 된다. D/A변환기(23)의 앞단에 FIFO버퍼(도시 생략)가 통상적으로 제공된다. FIFO에 기억된 파형 데이터는 샘플링 주파수 fs에서 판독된다. D/A변환기(23)의 후단에는 LPF(도시 생략)가 통상 설치된다. LPF의 차단주파수는 샘플링 주파수fs의 약 ½로 설정된다. LPF는 악음발생기의 출력 장치이며, 상기 악음은 증폭기와 스피커를 통해 재생된다. RAM(24)은 그 하드웨어 구성과 관련하여 RAM(13, 20)과 유사한 구성을 가지며, DSP(21)의 연산 동작을 위해 작업메모리로서 사용된다. 파형 메모리(25)는 음원(22)이 파형 메모리 판독 방법에 따라 악음을 발생하는 경우에 기본 즉 통상음색의 파형 데이터를 기억한다. 상 기 파형 메모리(25) 및 RAM(20)의 역할은 파형 메모리(25)가 음원(22)에 의해 주로 사용되는 방식에 있어서 다소 상이하며, ROM형태 또는 도터(daughter) 보드의 형태로 제공되며, RAM(20)은 파형 메모리로서 CPU(10)에 의해 이용된다.
일반적으로, 상기 배열에 있어서, 코프로세서(17), DSP(21), 음원(22), RAM(24) 및 파형 메모리(25)등은 사용자 선택에 따라 옵션으로 설치된다. RAM(24)에 설치되지 않은 경우, RAM(13)의 임의의 영역이 DSP(21)에 할당된다.
상기 파형 메모리(25)는 음원(22)이 파형 데이터의 순수연산에 의해 악음을 발생하는 FM합성 장치인 경우에 설치되지 않는다. CPU(10)는 상기 옵션 장치가 설치되는가를 인식할 수 있다. 본 발명의 실시예에 있어서, CPU(10)는 이하 리스트된 방법 중 한 방법에 따라서 옵션장치의 존재를 인식한다.
(1) 포트 어드레스는 대응장치 접속을 위해 기억되며 CPU(10)는 시스템의 전원 온 또는 리셋 후에 즉시 상기 포트 어드레스를 액세스한다. CPU(10)가 상기 포트어드레스로부터 소정의 신호를 검출한 경우, 대응하는 장치의 존재를 인식한다.
(2) 장치 설치를 지정하는데 점퍼 스위치가 제공되며, 사용자는 대응장치의 설치시 스위치를 턴 온시킨다.
(3) 시스템이 PC로서 이용되는 경우, 옵션장치가 대응장치 드라이버에 의해 구성 화일 또는 배치 화일로 등록된다. 상기 시스템 소프트웨어는 상기 파일을 통해 상기 장치를 인식한다.
상기 모든 옵션장치는 본 발명에 있어서 완전히 설치되며, 데이터버스(12)를 통해 접속된다. 그러나, 상기 접속부는 데이터버스(12)로 제한되지 않는다. 옵션장치는 직/병렬 인터페이스를 통해 접속되며, 이를 통해 각각의 장치들이 CPU(10)와의 데이터 트랜잭션을 수행한다. 달리 말하면, 임의 종류의 인터페이스가 옵션장치 용으로 제공되는데, 상기 장치가 인터페이스를 통해 CPU와 통신할 수 있는 것을 조건으로 한다. 예를 들면, 음원(22)은 제2도에 도시한 바와 같이 실제적으로 음원보드(41) 또는 연장보드로서 제공된다. 이 경우, 보드(41)는 메인보드인 마더보드의 한 슬롯에 삽입된다. 음원보드(41)는 버스(12), I/F 제어기(26) 및 연장인터페이스(27)를 통해 CPU(10)와 통신한다. 파형 메모리(25)는 상기 배열에 있어서 음원보드(41)상에 제공되는 소켓을 통해 설치될 수 있다. 또한 연장 인터페이스(27)는 추가의 D/A변환기(28)를 가질 수 있다. 음원(22)은 개별 LSI칩의 형태로 제공되거나, 도터 보드 상에 장착된다. 상기 칩 또는 도터 보드는 상기 배열에 있어서 마더보드 상이나, 연장보드 상에 제공된다. 유사하게, DSP(21)는 DSP보드(42)의 형태로 제공될 수 있으며, 이 경우, DSP(21)는 연장 인터페이스(27)를 통해 CPU(10)와 통신한다.
또한 DSP(21)는 음원(22)과 같이 개별 LSI칩의 형태로 제공될 수 있다. 상기 입력데이터는 제1도에서 버스(12)를 통해 D/A변환기(23)에 전달된다. 그러나, DSP(21) 또는 음원(22)이 상기 소켓 또는 연장 인터페이스를 통해 설치되는 경우, 데이터가 직접적으로 또는 상기 연장 인터페이스를 통해 분배될 수 있다.
제3도에 도시한 바와 같이, 음원(22) 또는 DSP(21)로 이루어진 제1파형 발생기 또는 음원시스템(32)은 로컬버스(33)에 접속될 수 있으며, 이를 통해 데이터버스(12)를 사용치 않고 CPU시스템(30)으로부터 데이터가 송수신 될 수 있다. CPU시스템(30)은 CPU(10), ROM(11) 및 RAM(13)을 포함하는 표준장치로 이루어지며, 반면 주변 장치(31)는 멀티타입 I/O포트(14), 기억장치(15) 및 기타 인터페이스 및 조작자를 포함하고 있다. 음원시스템(32)은 상기 실시예에 있어서 개별음원(22) 또는 DSP(21)로 이루어진다. 그러나, 일반적으로, 악음발생을 위한 임의의 기능소자가 상기 음원시스템(32)에 포함된다. 상기 음원시스템(32)은 CPU시스템(30)과 일체화되거나 분리될 수 있다. 또한, CPU측이나 음원장치의 어느 한쪽에 접속 인터페이스가 제공될 수 있다. 즉 본 발명의 시스템 설정에 따라 임의의 접속 인터페이스가 이용될 수 있다. 또한 상기 로컬버스에 MIDI, RS-232C/422, IEEEP-1394 또는 SCSI 등의 임의 종류의 인터페이스/ 프로토콜 결합에 사용될 수 있다. 또한 공중전화망과 같은 통신망에 데이터통신 매체로서 사용될 수 있다.
제4(a)도에 도시한 장치에 있어서, 음원장치(22)는 단일칩에 일체로 되거나, 파형 메모리(25) 및 D/A변환기(23)와 함께 PCB모듈에 일체화 될 수 있다. 유사하게 제4(b)도에 도시한 바와 같이, DSP(21), RAM(24) 및 D/A변환기(23)가 단일 칩으로 함께 일체화될 수 있다.
제1도 내지 제3도에 도시한 장치는 단지 일례로서, 장치의 접속스타일은 각각의 시스템 설정에 따른다. 또한 제1도에 도시한 두 개 이상의 기능소자가 단일 칩에 일체화 될 수 있다.
본 발명에 따르면, 상기와 같이 구성된 악음발생장치는 연주정보에 따라 악음을 발생하도록 파형을 생성한다. 음원(22) 또는 DSP(21) 등의 제1파형 발생기는 한 파형을 생성하도록 동작할 수 있다. CPU(10)으로 이루어진 제2파형 발생기는 제1파형 발생기와 무관하게 파형을 생성하도록 동작한다. I/O(14)는 연주 정보를 제공하며, 상기 파형 발생기들 중 하나가 제공된 연주 성능에 대응하여 지정된다. 상기 장치는 상기 파형 발생기들 중 지정된 하나를 선택적으로 가동시켜 제공된 연주성능에 따라 파형을 생성한다. DAC(23)는 상기 생성된 파형에 따라 악음을 발생한다. 제1파형 발생기는 상기 장치에 옵션으로 접속 가능한 외부 파형 발생기를 포함하며, 제2파형 발생기는 CPU(10)와 일체로 된 내부 파형 발생기이다. 상기 내부 파형 발생기는 외부 파형 발생기 대신에 지정되는데, 이 경우 내부 파형 발생기는 외부 파형 발생기가 상기 제공된 연주정보에 일차로 대응해야만 할 경우에도, 상기 장치에 접속되지 않는다. 제2파형 발생기는 컴퓨터를 구성하는 주요부를 이루도록 CPU(10)와 일체로 되며, 상기 제1파형 발생기는 단독으로 상기 주요부와 분리되며, 컴퓨터에 옵션으로 설치가능한 보조부를 구성한다. 상기 제1파형 발생기는 CPU(10)으로 구동되는 하드웨어모듈로 이루어지며, 제2파형 발생기는 컴퓨터에 설치 가능한 소프트웨어 모듈로 이루어진다.
상기 실시예의 여러 동작 모드를 이하 기술한다. 본 발명의 악음발생기의 동작모드는 제5도에 도시한 바와 같이, 그 주요그룹으로 나누어지는데, 하나는 합성 방법의 지정과 관련된 것이고, 다른 하나는 다른 파형 발생기에의 음색의 할당에 관련된 것이다. 상기 주요그룹은 많은 지정모드로 나누어지며, 첫째로, 합성방법을 지정하는 모드를 이하 기술한다.
상기 실시예에 있어서, 사운드 발생은 연주성능에 따라 악음의 파형 또는 파형 데이터를 합성하고 그것을 아날로그 신호로 변환함으로써 실행된다. 상기 파형 데이터는 여러 방법으로 발생될 수 있으며, 그 사용 방법은 합성 방법이 지정되는 동작 모드에 따라 결정된다. 실시예에서, 제2파형 발생기에 의한 CPU합성모드 및 제1파형 발생기에 의한 음원합성모드는 선택으로 수행된다.
CPU합성 모드에 있어서, 악음은 CPU(10) 단독에 의거하나, CPU(10) 및 코프로세서(17)에 의해 합성된다. 또한, CPU합성 모드는 다음의 4 서브모드로 크게 나누어 질 수 있다. 발생된 파형은 음향 재생을 위해 D/A변환기(23)에 의해 아날로그 신호로 변환된다. FM모드: 이 FM모드는 사운드 합성을 위해 FM 음원의 소프트웨어 모듈을 이용한다. 파형 데이터는 CPU(10)에 의해 기본 사인파를 통해 실시간 FM변조로 발생된다. 고조파 합성모드: 이 고조파 합성모드는 기본파형 및 그 고조파와 함께 합성되도록 된다. CPU(10)에 의한 실시간 동작으로, 기본파형 및 그 고조파가 파형 합성을 위해 연산된다. 파형 메모리 판독모드: 이 모드에 있어서, 사운드는 파형 메모리를 액세싱 함으로써 합성되며, CPU(10)는 합성 이전에 복수의 기본 파형을 RAM(20)에 로드한다. 명령엔트리의 합성 시 CPU는 지정피치 및 볼륨에서 파형을 판독함으로써 지정음색에 대한 파형 데이터를 발생한다. 상기 파형 메모리 판독모드에 있어서, 파형 데이터를 판독하기 위해 RAM 또는 ROM을 액세싱함으로써 합성이 수행되기 때문에, 저성능의 CPU로드 사운드를 합성할 수 있다. 따라서, 이 모드에 있어서 CPU의 작업 로드는 FM모드의 및 고조파 합성모드의 작업 로드 이하이며, 그러나, RAM은 파형 데이터 영역으로 할당될 수 있어서, RAM(13, 20)의 자유영역의 축소가 가끔 발생한다. 따라서, 전체 RAM 음향 및 CPU 어드레싱 볼륨에 따라 임의의 상황하에서 파형 메모리 판독모드가 양호하게 사용되지 않을 수 있다. 물리 모델합성모드: 이 물리모델 합성 모드에 있어서, 튜브에서의 공기 흐름 등의 실제 악기의 사운드 발생 메카니즘이 사운드 합성을 위해 전자모델로 시뮬레이트 된다. 파형 데이터는 CPU(10)를 포함하는 장치의 실시간 동작으로 연산되며, 상기 물리 모델 합성을 위한 일례의 알고리즘이 JP-A-63-40199에 개시되 있다. 위에서 리스트 된 바와 같이, CPU -에이드 소프트웨어 음원 또는 제2파형 발생기는 다른 품질을 가지는 디지털 파형을 연산적으로 생성하도록 다른 알고리즘에 따라 동작하는 복수의 디지털 파형 발생기를 포함한다.
본 발명의 장치는 제공된 연주 정보에 따라 상기 디지털 파형 발생기 중 적당한 하나를 선택적으로 동작시킨다. 특히, 제2파형 발생기는 낮은 품질의 디지털 파형을 발생하도록 비교적 간단한 알고리즘에서 동작하는 파형 메모리 판독형의 파형 발생기다. 비교적 고품질의 다른 디지털 파형을 생성하도록 복잡한 알고리즘에 따라 동작하는 다른 디지털 파형 발생기를 포함한다.
한편, 하드웨어 음원 합성모드에 있어서, LSI음원(22) 등의 지정 하드웨어를 이용하여 악음이 합성된다. 물론, 이 모드에 있어서, LSI음원(22) 등의 하드웨어 모듈이 상기 시스템에 설치되어야 한다. LSI음원(22)은 FM모드 또는 파형 메모리 판독모드(소프트웨어 음원과 유사)에 의해 파형 데이터를 합성한다. 상기 합성방법은 하드웨어 자체로 결정된다. CPU(10)는 음원(22)의 고유합성처리를 제어할 수 없다.
상기 실시예에서, 다중의 음성 채널이 제공되며, 한 채널이 CPU합성모드와 음원합성모드 중 어느 하나에서 한음에 할당된다. 복수의 음성의 동시 사운딩을 실현하도록 여러 악음이 다중채널에서 발생된다. 파형 데이터는 실시예에서 CPU(10)와 음원(22)에 의해 합성될 수 있기 때문에, 사용된 파형 발생기의 선택이 중요한 쟁점이 된다. 상기 실시예에 있어서, 노트 온(note-on) 명령의 수신시 음성 할당에 따라, 최적의 파형 발생기가 지정된다. 할당모드는 다음과 같다. CPU선택모드: CPU선택모드에 있어서, 먼저 CPU합성 모드에 의해 파형 합성이 행해진다. 그러나, CPU(10)를 포함하는 연산장치의 성능이 충분치 않은 경우, 파형 합성을 위해 사용 될 수 있는 음성 채널수가 제한된다. 이 경우, CPU(10)를 포함하는 연산장치의 성능을 초과하는 일부의 파형 합성 동작이 하드웨어 음원에서 행해진다. 음원선택모드: 음원 선택 모드에 있어서, 먼저 하드웨어 음원에 의해 파형 합성이 행해진다. 그러나, 하드웨어음원(22)의 성능이 충분하지 않은 경우, 파형 합성을 위해 사용될 수 있는 채널 수가 제한된다. 이 경우, 상기 음원(22)의 성능을 초과하는 파형 합성 동작이 CPU소프트웨어 음원에서 행해진다. 수동모드: 수동모드에서, 사용자는 소프트웨어 음원과 하드웨어 음원 중 하나를 수동 지정한다. 또한, 지정합성 모드가 CPU-에이드 음원이 지정됐을 때 지정된다. 동시모드: 동시모드에 있어서, 사용될 음원이 사용자의 의도와 무관하게 사운드 발생프로그램이 아니라 응용프로그램의 수행 상태에 따라 강제로 결정된다.
RAM(13, 20)의 메모리 맵을 이하 기술한다. 본 발명의 악음 발생기의 배열은 범용 PC와 크게 다르지 않다. 또한, 범용 PC가 파형 합성과 관련한 동작을 수행한다면, 악음발생기로서 사용될 수도 있다. 따라서, RAM(13, 20)의 내용은 PC의 내용과 크게 다르지 않으며, RAM(13, 20)의 메모리 공간은 제6도에 도시한 바와같이 복수의 영역으로 분할된다. 제6도에 있어서, OS영역이 범용 PC에서와 같이 운영 시스템으로 점유된다. (1) 내지 (7)의 응용 프로그램 영역은 파형 합성 프로그램과는 다른 각종 응용 프로그램과 조화된다. 상기 영역은 응용프로그램 용으로 차례로 할당된다. 노래 데이터 및 기타데이터가 데이터 영역에 기억되며, 파형 메모리 판독 방법에 의해, 파형 합성이 수행되는 경우, 파형 데이터 영역 WAVE에 파형 데이터가 로드된다. 마지막으로, 파형 합성 프로그램 중 지정된 프로그램이 파형 합성 프로그램 영역에 기억된다.
본 발명에 따른 악음발생기의 동작을 이하에 기술한다. 악음은 PC의 지정응용 프로그램 즉, 파형 합성프로그램을 수행함으로써 발생된다. 또한, 상기 파형 합성 프로그램은 시스템의 부팅 시 자동 설치되는 순시 프로그램의 형태로 OS의 설비로서 이용될 수 있다. 파형 합성 프로그램의 메모리 어드레스 및 수행이 OS환경, 사용자조작, 응용프로그램 수, 동작 조건 등에 따르지만, 상기 파형 합성 프로그램은 응용 프로그램(1) 내지 (7)중 하나에 따라 수행된다. 악음 발생기(제7도)의 전원 온 또는 리셋 시, 각종의 레지스터 및 플랙이 단계 S1의 초기화를 위해 세트/리셋된다. 단계 S2에서, OS의 관리 처리가 행해진다. 단계 S3 내지 S5에 있어서, 응용프로그램(1), 파형 합성 프로그램 및 응용프로그램(7)이 각각 실행된다. 상기 파형 합성 프로그램은 한 사이클의 프로그램 발동에 있어서 한 샘플값의 파형 데이터를 발생하도록 수행된다. 응용프로그램(1) 내지 (n)에는 파형 합성 프로그램이 포함되지 않는다. 이러한 응용 프로그램들은 음악연주에 관련되거나, 전적으로 다른 업무에 관련된다. 단계 S5 이후 절차가 S로 복귀된다.
응용프로그램 수행상태에 있어서, 변화가 없는 경우, S2 내지 S5의 루프가 반복 수행된다. 또한, 변화가 있는 경우, 단계 S2에서의 시스템 관리 처리시 변화가 검출된다. 상기 상태의 변화가 프로그램의 종료하면, 응용 프로그램의 관련 수행단계가 스킵된다. 상기 상태의 변화가 프로그램의 발동이라면, 새로운 응용프로그램을 수행하는 단계가 루프에 추가되어 전체의 루프가 반복적으로 수행된다. 따라서, 상기 루프의 수행 기간은 응용프로그램의 실행상황 및 시스템 로드에 따른다. 그러나, 상기 응용프로그램의 실행 상황에 관계없이 악음의 파형 데이터에 대한 샘플값이 항상 루프마다 발생된다. 일련의 샘플값이 소정의 파형을 발생하도록 루프를 반복함으로써 연속 발생된다. 일련의 샘플값은 소정의 파형을 생성하도록 상기 루프를 반복함으로써 연속으로 발생된다. 따라서, 상기 발생된 파형 데이터가 간단히 아날로그신호로 변환된다면, 샘플링 기간이 변화되어서, 재생 악음에 지터(jitter)가 발생한다. 사운드의 발생 파형 데이터를 일시기억하도록 D/A변환기(23) 전단에 데이터 버퍼가 제공된다. 상기 데이터 버퍼는 고정 샘플링 주파수 fs에서 파형 데이터의 판독을 위해 액세스된다. 시스템이 PC가 아니라, 단독의 전자악기, 음원모듈 또는 사운드를 생성하는 설비를 가지는 다른 시스템인 경우에, 악음 발생이 고정프로그램에 의해 수행된다면, 루프 처리 수행기간이 고정될 수 있다. 환언하면, 루프처리는 고정 간격에서 수행된다. 이 경우, 상기 루프 기간이 샘플링 주파수의 루프 기간과 일치하도록 해서 데이터 버퍼가 제거될 수 있도록 하는 것이 실제적이다.
단계 S4에서 수행된 파형 합성 프로그램을 제8내지 11도를 참조하여 설명한다. 상기 프로그램은 기억장치(15)로부터의 로딩이 소정 동작에 따라 완료된 후, 실행된다. 단계 Sa1에 있어서, 합성 모드 및 하드웨어 설정(설비)이 체크된다. 하드웨어 설정체크에 있어서, 상기 체크 방법에 의해 옵션 장치가 인식된다. 동작 모드에 대해 합성 모드 및 음성할당 모드가 또한 체크된다. 동작 모드설정과 관련하여, 음성 할당 모드가 강제모드로 된다. 또한 합성 모드 및 음성 할당 모드가 소정의 세팅을 입력하도록 디스프레이 메뉴를 통해 사용자 선택에 따라 설정된다. 또한, 여러 음원장치가 하드웨어 체크로 인식된 경우, CPU선택 모드 또는 음원 선택모드 중 하나를 세트할 수 있다.
따라서, 단계 Sa1의 동작모드 설정 시, 파형 합성프로그램을 수행하기 전에 상기 동작모드가 설정, 인식된다.
단계 Sa2에 있어서, 파형 로딩 처리가 수행되는 데, 이 처리에 있어서, 통상의 즉, 기본 파형이 RAM(13, 20)에 할당된 영역WAVE에 로드되는데, 이 경우, 파형 메모리 판독 모드에서 기본 파형이 사용된다. 단계 Sa3에서, 플랙 SETFLG가 “1” 인지가 검사된다. 샘플링 주파수 fs가 단계 Sa21에서 설정되거나 상기 파형 메모리 판독 모드가 백업 파형 연산모드에서 지정된다면, 상기 플랙 SETFLG가 “1”로 세트되면, 절차는 단계 Sa4로 진행하며, “0”으로 세트되면, 단계 Sa5로 진행된다.
첫째로 제7도에 도시된 루프에서 파형 합성 프로그램이 수행되는 경우, 상기 플래그 SETFLG가 “0”으로 되며, 절치가 무조건 단계 Sa5로 진행한다. 그러나, 설명을 간단히 하도록 단계 Sa4의 처리를 여기서 기술한다. 단계 Sa4에 있어서, CPU 합성 모드에 의해 전적으로 사운드 합성이 수행되야 하는지가 검사된다. 외부음원 장치가 인식되는지를 검출하도록 단계 Sa1에서의 결과를 이용할 수 있다.
파형 합성 시 CPU말고 임의의 음윈을 사용할 경우, 단계 Sa4가 No방향으로 분기된다. 단계 Sa5에서, 비동작 상태를 검출하도록 플랙 ENBLFLG가 “1”인지 여부가 검사된다. 비동작 상태란 생플링 주파수 fs가 파형 발생 절차에 설정되지 않고, 백업 파형 연산모드가 인에어블 되지 않는 것을 의미한다. 따라서, CPU합성모드는 비동작 상태에서 준비되지 않는다.
첫째로, 파형 합성프로그램이 제7도에 도시한 주요 루프에서 수행되는 경우, 플랙 ENBLFLG가 “0”으로 되어 절차가 Sa11로 나아간다. 그러나, 편의를 위해 플랙 ENBLFLG가 “1”로 된 동작 상태하의 처리를 기술한다. 상기 동작상태는 CPU 합성을 위한 준비가 완료된 경우를 의미한다. 이때 절차는 단계 Sa6으로 이어지는데, 여기서 연주 정보의 처리가 행해진다. 단계 Sa7에서, CPU 파형 발생 명령의 존재가 체크된다. CPU 파형 발생명령은 CPU 합성 모드 하에서 I/F로부터의 연주정보, 키보드 정보 또는 MIDI정보에 포함된 키 온(key-on) 사건(event)에 응답하여 발생된다. CPU파형 발생 명령이 단계 Sa7에서 검출된 경우, 상기 명령에 응답하는 절차가 단계 Sa8에서 수행된다.
단계 Sa8의 절차에 있어서, 활용 CPU 합성 모드에서 선택된 지정 합성 모드에 의해 파형 데이터가 발생된다. 그러면, 상기 파형 데이터가 버스(12)를 통해 D/A변환기(23)로 전송되어 합성된 파형 데이터 또는 파형에 의해 사운드 발생이 완료된다.
넓은 의미에서, CPU 파형 발생 명령은 노트오프(note-off)를 명령하는 키 오프 사건을 포함하는데, 여기서 상기 키 오프 사건에 관한 절차의 설명은 생략한다. 상기 노트 오프 절차는 파형 발생을 해제하고, 파형 발생을 종료하는 등의 매우 간단한 처리이다. 단계 Sa7에서 CPU 파형 발생 명령이 검출되지 않을 경우 단계 Sa8의 파형 합성 연산이 스킵되어 아무 일도 수행되지 않는다. 단계 Sa9에서, 파형 합성 프로그램의 종료동작이 사용자에 의해 행해지는 지가 검사된다. 프로그램의 종료가 나타나지 않을 경우, 다음 CPU 파형 발생 명령을 준비하는 절차로 즉시 돌아간다.
반면, 상기 종료 명령에 입력된 경우, 플랙 SETFLG을 단계 Sa10에서 “0”으로 세트함으로써 파형 합성 프로그램이 종료된다.
제7도의 주 루프에서 첫째로, 파형 합성 프로그램이 실행되면, 플랙 ENBFLG가 “0”으로 된다. 그러면, 단계 Sa11에서, CPU 선택모드와 음원선택모드 중 하나로 모드 할당이 되는지가 검사되며, 검사 결과 “No”이면 절차가 Sa12로 나아가서 플랙 ENBLFLG, DACENBL 및 SETFLG가 모두 “1”로 세트된다. 그러면, 절차가 복귀된다. 플랙 DACENBL이 D/A 변환기(23)를 인에이블 시키도록 “1”로 세트된다. 따라서, 파형 합성프로그램이 다음에서 수행되어, 외부 음원이 사용되면, 단계 Sa3의 체크는 “Yes”로 되고, 단계 Sa4의 체크는 “No”로 되어 제1도에 도시한 절차가 수행된다. 또한, 상기 파형 합성이 CPU에 의해서만 유효한 경우, 단계 Sa6내지 Sa10 이 수행된다.
또한, 단계 Sa11에서 CPU 또는 음원 선택 모드 중 한 모드로 모드 할당이 행해진 것이 검출되면 절차는 단계 Sa13으로 나아간다. 제9도 및 10도에 도시한 단계 Sa13 내지 Sa27의 처리가 파형 발생 프로그램이 첫째로 발동된 경우 행해진다. 상기 처리에 있어서, 샘플링 주파수 fs는 CPU에 의한 합성을 위해서만 결정된다. 단계 Sa13에 있어서, 플랙 ENBLFLG는 “0”으로 스위치되며, 플랙 BUSY는 “1”로, 플랙 DACENBL은 “0”으로 세트된다. 플랙 BUSY는 후술하는 타이머 처리에 있어서 카운트 업을 인에이블 시키도록“1”로 세트된다. 플랙 DACENBL의 “0”으로 세팅이 행해져서 D/A 변환기(23)의 출력동작을 디스에이블시켜서 후술하는 시험 파형 연산시 사운드 발생을 방지한다. 단계 Sa13이후, 레지스터 SCOUNT 및 TCOUNT 가 “0”으로 세트되며, SCOUNT의 내용이 이하의 시험 파형 연산에 대한 루프사이클을 나타낸다. 레지스터 TCOUNT는 증분적으로 증가하며, 플랙 BUSY는 “1”로 스위치 된다. 따라서, 상기 레지스터는 m 사이클의 합성연산에 의해 한 파형을 발생하는데 필요한 경과시간을 나타낸다.
단계 Sa15에 있어서, 한샘플링 기간에 대한 한 샘플값이 소정의 파형 데이터 발생 알고리즘의 수행으로 발생된다. 단계 Sa15의 상세처리를 이하 기술한다. 단계 Sa16에 있어서, 샘플값 연산이 한 번 수행될 때마다 레지스터 SCOUNT가 “1” 씩 증가한다. 단계 Sa17에 있어서, 레지스터 SCOUNT가 사이클 “m”에 도달했는지가 검사된다. No가 검출된다면, 절차는 단계 Sa15로 복귀된다. 또한 상기 체크 결과가 Yes라면, 제10도의 단계 Sa18로 절차가 진행된다. 따라서, 단계 Sa15 및 Sa16은 샘플값 연산의 루프 사이클이 “m”이 될 때까지 반복된다.
제10도의 단계 Sa18에 있어서, 플랙 BUSY가 타이머의 증가를 디스에이블 시키도록 “0”으로 스위치 된다.
단계 Sa19에 있어서, 주파수 Fs는 다음 식 (1).
Fs = (m·margin) /(TCOUNT·Tt) ‥‥‥ (1)
에 의해 계산된다/
상기 식에 있어서, “margin”은 장치의 처리 능력을 고려하여 악간의 마진을 가지는 CPU(10)을 포함하는 연산장치를 제공하도록 1이하의 값으로 설정된 상수이다. 전술한 바와 같이, TCOUNT는 샘플값 계산의 “m”사이클의 수행에 필요한 기간동안의 타이머의 발동 시간을 나타내며, Tt는 타이머의 피치를 나타낸다. 따라서, TCOUNT 및 Tt의 적은 한 파형을 생성하도록 샘플값 계산처리를 하는데 필요한 기간에 대응한다.
그러므로, 식(1)로 계산된 주파수 Fs는 파형 샘플링 주파수이며, 상수 “"margin”은 하드웨어 설비의 처리 능력을 나타낸다.
단계 Sa20에 있어서, 계산된 주파수 Fs가 32KHz 이상인지 여부가 계산된다. 상기 임계 주파수 “32KHz”는 발생될 최소한도의 악음을 고려하는데 이용된다. 상기 검출결과가 점이라면 즉, CPU의 처리능력이 최소질의 사운드를 유지하는데 충분한 것을 판단된다면, 단계 Sa21로 절차가 이어진다. 단계 Sa21에 있어서, 계산 주파수 Fs이하이며, 상기 주파수에 가장 가까운 최적의 샘플링 주파수 fs가 32KHz, 44.1KHz, 48KHz 및 50KHz에서 선택된다. 상기 계산주파수 Fs가 47khz라면, 샘플링 주파수 fs는 44.1KHz로 세트되는데, 이 주파수는 47KHz이하로 그에 가장 근접한다.
계산 주파수 Fs 이하의 값이 선택되는데, 이는 상기 상수 margin이 상기 샘플링 주파수 fs가 CPU의 처리능력을 초과하게 설정되는지를 감지할 수 없기 때문이다. 단계 Sa21이후, 플랙 DACENBL, ENBLFLG 및 SETFLAG가 단계 Sa22에서 모두 “1”로 세트되며 절차가 복귀된다. 상기 플랙 동작은 D/A 변환기(23)를 언에이블시켜서 악음을 출력시키게 한다. 또한 상기 플랙 동작은 샘플이 주파수 fs가 설정되는 것을 의미한다. 결론적으로, 비동작 상태가 동작상태로 변경된다.
동작 상태 하에서 다음단계의 파형 합성프로그램의 수행 시, 단계 Sa4의 체크가 “No”로 되어 파형 합성이 외부 음원장치에 의해 수행되어야 하는 경우, 제11도에 도시한 처리에 의해 파형 합성이 행해진다 또한, CPU가 파형 합성을 위해 단독으로 사용되는 경우, 단계 Sa4의 체크는 “Yes”로 되고, 단계 Sa6에서 Sa8를 통해 파형 합성이 행해진다. 상기 연산모드의 백업 파형은 최저한도 사운드 활용 CPU합성모드에서 선택된 제1합성모드에서 제공받지 못할 때 제2선택으로서 선택되는 파형 메모리 판독모드이다. 단계 Sa24에서, 상기 백업 파형 연산모드가 지정되는지가 검사된다. YES라면, 단계 Sa25로 절차가 진행되어, 여기서 원래의 파형이 제1연산모드에서 준비되며, 이후 RAM(13또는20)내에 기억된다.
또한, 상기 사운드는 상기 기억된 파형이 샘플링 주파수 32KHz에서 판독될 때 실제적으로 재생되며, 상기 주파수는 자동으로 결정된다. 따라서, 파형 합성이 상기 파형 메모리 판독모드에서 실제적으로 영향을 받으며, 저 성능의 CPU가 장비된 시스템에 있어서도, 최저한도의 재생 사운드가 유지된다. 그후 단계 Sa22에서, 비동작상태를 동작상태로 스위칭 하는 처리가 진행되어 절차가 복귀된다. 한편, 상기 백업 파형 연산 모드가 단계 Sa24에서 지정되지 않으면, 단계 Sa26으로 절차가 진행되어 여기서 사운드 합성프로그램용 종료 명령이 검출된다. 사운드의 종료가 명령되면, 단계 Sa27에서 플랙 SETFLG을 “0”으로 클리어함으로써 동작이 종료한다. 연산 주파수 Fs가 32KHz 이하라면, 상기 백업 파형 연산모드가 지정되지 않고, 프로그램 종료도 명령되지 않으며, 경고 알람이 유지된다. 따라서 CPU(10)등의 연산 장치로서 파형 합성이 행해진다. 상기 샘플링 주파수 fs는 CPU 성능과 관련하여 최적으로 되며, 또한, CPU의 성능이 나쁜 경우, CPU 로드를 감소시킬 수 있는 파형 메모리 판독 모드로의 스위칭으로 합성이 수행된다.
요약하면, 상기 CPU-에이드 제2파형 발생기는 디지털 파형의 샘플값을 순차로 연산함으로써 디지털 파형을 생성할 수 있는 가변 동작 스피드에서 소정의 알고리즘에 따라 동작하는 컴퓨터 파형 발생기를 포함하며, 이 파형 발생기는 모델 디지털 파형을 시험 생성하도록 예비 동작하는 동시에 상기 시험 생성이 수행되는 동작 속도를 측정할 수 있다. 샘플링 주파수는 측정된 동작 속도와 비교하여 최적으로 결정되며, 상기 파형 발생기는 제공된 연주 정보에 따라 결정된 샘플링 주파수에서 실제의 디지털 파형의 샘플값을 순차로 연산하도록 상기 파형 발생기가 실제로 동작한다. 상기 샘플주파수는 측정된 동작 주파수이하로 그에 가장 가까운 소정의 레벨 중 하나로 고정된다 상기 결정된 샘플링주파수가 최저 한도 품질의 파형을 보장하도록 규정된 임계 레벨 이하로 떨어지면, 최초 알고리즘이 상기 컴퓨터 파형 발생기의 동작 속도를 상승시키도록 변경되어 상기 샘플링 주파수가 상기 임계레벨을 초과하도록 재결정될 수 있다. 상기 알고리즘은 복잡한 것에서 간단한 것으로 변경되어, 컴퓨터 파형 발생기가 간단한 알고리즘에서 동작하여, 기억된 한 샘플값을 연속으로 판단하여 디지털 파형을 재생적으로 생성할 수 있다.
상기 샘플값은 최초로 복잡한 알고리즘에 의해 연산되며, 그 샘플값은 상기 파형 메모리 판독모드의 간단한 알고리즘 하에서 실제 사용을 위해 파형 메모리에 기억된다. 따라서 연주성능에 따라 악음을 발생하는 디지털 파형을 생성하기 위한 본 발명의 사운드 발생장치는 연주 정보를 제공하는 입력수단, 디지털 파형의 샘플값을 순차로 연산함으로써 디지털 파형을 생성하도록 가변동작모드에서 소정의 알고리즘에 의해 동작하는 컴퓨터 파형 발생수단, 모델디지털 파형의 시험 생성을 수행하도록 상기 컴퓨터 파형 발생기를 예비 동작시키며, 시험 생성이 수행되는 동작속도를 측정하는 시험수단, 상기 측정된 동작속도에 비교 가능한 샘플링 주파수를 최적으로 결정하는 결정 수단, 상기 컴퓨터 파형 발생기를 실제로 가동시켜 소정의 샘플링 주파수에서 실제의 디지털 파형의 샘플값은 순차로 연산하는 제어수단 및 상기 제공된 연주정보에 따라 실제의 디지털 파형에 의해 악음을 발생하는 출력수단을 포함한다.
한편, 제8도의 단계 Sa4에서 파형 합성을 위한 하드웨어 음원장치가 사용가능하다고 검출된 경우, 제1도의 단계 Sa28로 절차가 분리된다. 단계 Sa28에서, 플랙 DALENBL이 “1”로 스위치되어 D/A 변환기(23)가 사운드를 출력시킨다. 단계 Sa29에서, 사운드 합성 프로그램의 종료명령이 검출된다. 사운드 합성 프로그램의 종료가 명령되면, 단계 Sa3내지 단계 Sa3에서 플랙 SETFLG를 “0”으로 클리어함으로써 합성프로그램이 종료된다.
한편, 상기 사운드 합성 프로그램의 종료가 명령되지 않으면, 단계 Sa29의 검출결과가 부정이라면 단계 Sa32에서 상기 동작모드가 음원합성모드인지가 검사된다. 단계 Sa32에서 음원합성모드가 검출되면, 지정모드에 필요한 하드웨어가 단계 Sa33에서 검출되는데, 상기 모드는 단계 Sa1에서의 하드웨어 검사의 인식으로 지정된다. 관련 하드웨어가 없다면, 합성 프로그램이 단계 Sa34에서 관련 하드웨어에 의해 실행된다. 하드웨어가 없다면, 그것이 단계 Sa35에서 발생되어 관련하드웨어가 없는 경우 현재의 하드웨어 설비를 이용하여 합성처리가 지속된다. 단계 Sa34 및 Sa35에 있어서, 절차가 복귀된다. 선택된 하드웨어로서의 합성처리를 이하 기술한다.
단계 Sa2에서 수행된 파형 로딩 처리(제8도)를 제12도를 참조하여 이하 기술한다.
파형 로딩처리에 있어서, MIDI샘플 덤프 명령이 단계 S61에서 멀티 I/O 포트(14)를 통해 수신되는지가 검출된다. 상기 MIDI 샘플덤프는 MIDI표준에 따른 파형 데이터를 포함하며, 파형 메모리 판독모드에서 사용된다. 상기 MIDI샘플 덤프가 수신되면, 샘플 수신 절차가 행해져서 수신된 데이터가 단계 Sb2의 RAM(13, 20)내의 영역 WIAVE로 전달된다. 단계 Sb2의 샘플덤프는 모든 데이터의 수신이 왼료될때까지 단계 Sb2의 샘플덤프 수신이 발생된다. 단계 Sb3에서는 완료가 검출되면, 단계 Sb3에서의 검출이 “Yes”로 되면, 절차가 복귀한다. 한편, Sb1에서의 검사가 “No”로 되면, 상기 파형 데이터가 단계 Sb4에서 인터페이스 I/F를 통해 전달되는지가 검사된다. 파형 데이터가 수신되면 그 수신된 데이터는 단계 Sb2및 Sb3에서 RAM(13, 20)의 영역 WAVE로 전달된다.
단계 Sb1 및 Sb4 모두가 “No”로 되면, 상기 기억장치(15)에 대한 액세스 판독 사건 즉, 기억장치(15)로부터 약간의 데이터를 판독하는 요청이 단계 Sb5에서 검출된다. 요청이 발행되지 않으면, 파형 로딩이 즉시 종료하고, 절차가 복귀되는데, 이는 해야할 일이 없기 때문이다. 한편 액세스 사건이 발생하면, 기억장치(15)로부터 판독된 데이터가 단계 Sb6에서 검사되며, 또한 단계 Sb7에서, 상기 판독된 데이터가 파형 데이터인지 여부가 검사된다. 파형 데이터가 아니라면, 파형 로딩이 즉시 종료하고, 절차가 복귀하는데, 이는 더 이상의 일이 없기 때문이다. 파형 데이터라면, 그 데이터가 RAM(13, 20)내의 영역 WAVE로 전달되어 단계 Sb9에서 데이터 전달의 종료가 검출될 때까지 단계 Sb8에서 데이터 전달이 반복된다. 데이터 전달이 완료되면, 단계 Sb9의 검사가 “Yes”로 되어 절차가 복귀한다. 따라서 파형 로딩에 있어서, 파형 메모리 판독 모드에서 사용될 파형 데이터가 수신 또는 판독된다.
그러면, RAM(13, 20) 영역 WAVE로 파형 데이터가 전달된다. CPU등의 연산 장치가 실제의 파형을 합성하도록 간단한 알고리즘에 따라 파형 메모리 판독 모드로서 파형 데이터를 처리한다. 음원(22)에 의해 RAM(13, 20)에 로드된 파형 데이터를 재생하기 위해서 로드된 기본 파형 데이터는 상기 음원(22)에 포함된 파형 메모리(25)로 다시 전달될 수 있다. 지정 하드웨어 음원을 가지는 통상의 악음발생기에 있어서, 하드웨어 음원 로드된 파형 데이터를 수신하도록 일시 파형 메모리를 가져야 한다. CPU는 RAM에서 상기 파형 메모리로 파형 데이터를 전달해야 하지만, 본 실시예에 있어서, CPU(10)의 제어 하에 기본 파형 데이터가 RAM(13, 20)으로 로드된다. 따라서, 하드웨어에서 파형 데이터를 유지하도록 일시 메모리를 제공할 필요가 없다.
또한, 상기 로드된 파형 데이터가 외부 하드웨어 장치로 전달되는 재로딩 처리를 수행할 필요가 없다. 따라서 시스템 하드웨어 또는 소프트웨어 비용이 절감될 수 없으며, 사운드 재생장치로 상기 파형 데이터를 로딩하는 시간이 단축될 수 있다.
단계 Sa15(제9도)에서 수행된 샘플값 연산동작을 제13도를 참조하여 기술한다. 제13도의 단계 Sa1에 있어서, 코프로세서(17)가 있는지가 검사되며, 상기 실시예에서 코프로세서(17)가 설치되지만, 상기 장치는 옵션장치이며, 하드웨어 설비시 빠질 수 있다 CPU(10)가 상기 코프로세서(17)와 동등한 연산 동작 장치를 가지는 경우, 코프로세서의 검출은 필요치 않으며, 코프로세서가 설치된 경우로서 시스템을 취급한다. 코프로세서(17)가 검출되면, 단계 Sc2에서 CPU(10) 및 코프로세서(17)로서 샘플값 연산이 행해진다. 또한 코프로세서(17)가 없는 경우 단계 Sc3에서 CPU(10)로서만 샘플값 연산이 행해진다. 단계 Sc2 또는 Sc3 이후, 절차가 복귀하며, 코프로세서(17)의 사용 여부를 떠나서 단계 Sc2 및 Sc3에서 샘플값 연산이 동일하게 행해진다.
제14도의 단계 Sd1에 있어서, 여러 가지 CPU1합성모드에 있어서 현재의 동작 모드가 FM모드로 설정 되는지가 검사되며, FM모드가 설정되면, 채널 수에 대응하는 한 세트의 샘플값이 단계 Sd2에서 FM합성 모드에 따라 한 샘플점에서 연산된다. 예를 들면, 폴리포닉 합성이 선택된 경우, 소정수의 음성을 합성하는데 필요한 한 세트의 다중 샘플값이 연산되며, 이 경우, 각종의 피치를 가지는 각종음성이 동시 발생되므로, CPU(10)의 로드가 높아진다. 여하한 경우라도, 그래픽 처리 등의 다른 처리가 병렬로 행해진다. 단계 Sdl에서 FM모드가 검출되지 않았다면, 현재의 동작 모드가 단계 Sd3의 CPU 합성 모드 중에서 파형 메모리 판독 모드로 세트된다. 위에서 상기 파형 메모리 판독 모드가 검출되면, 한 샘플점에 필요한 한 세트의 샘플값이 상기 파형 메모리에서 검출된다. 다음 합성에 있어서, 소정수의 음성을 합성하는데 필요한 다중 샘플이 판독된다.
이러한 데이터 판독 및 전달은 CPU(10)가 아니라 DMAC(19)에 의해 행해진다.
상기 파형 데이터는 RAM(13, 20) 영역 WAVE로 로드되며, ROM(11)에 가상 기억된다. 상기 파형 메모리 판독모드가 단계 Sd3에서 검출되지 않으면, 단계 Sd5의 각종의 CPU합성 모드에서 현재의 동작모드가 고조파 합성모드로 설정되는지가 검출된다. 상기 고조파 합성모드가 검출되면 단계 Sd6에서 고조파 합성모드에 따라 한 샘플링 처리를 하는데 필요한 한 세트의 샘플값이 CPU(10)에 의해 계산된다. 다음 모드에 있어서, 소정수의 음성을 합성하는데 필요한 샘플 수가 고조파 합성 방법에 따라 계산된다. 이 경우, 각종의 피치를 가지는 각종의 음성이 동시 생성되므로, CPU(10)의 로드가 높아진다. 어떠한 경우라도, FM모드에서의 상황과 유사하게 다른 처리가 병렬로 실행될 수 있다. 단계 Sd5에서 고조파 합성 모드가 검출되지 않은 경우, 단계 Sd7에서 각종의 CPU합성 모드 사이에서 현재의 동작모드가 물리모델 합성모드로 설정 되는지가 검사된다. 물리 모델 합성 모드가 검출되면, 한 샘플링 점에 필요한 샘플이 단계 Sd8에서 물리 모델 합성 방법에 따라 CPU(10)에 의해 계산된다. 다음 모드에 있어서, 소정수의 음성을 합성하는데 필요한 샘플수가 물리모델 합성 방법에 따라 계산된다. 물리 모델 합성 모드가 단계 Sd7에서 검출되지 않으면, 현재의 동작모드가 본 실시예에서 있게 되어 잘못된 모드 설정에 대한 경고 및 다른 처리가 단계 Sd9에서 수행된다. 단계 Sd2, Sd4, Sd6, Sd8, 또는 Sd9이후, 절차가 복귀한 후 다음의 단계 Sa16(제9도)가 수행된다.
단계 Sc2에서 수행된 CPU(10)와 코프로세서(17)로의 파형 샘플값 계산의 경우, 제14도에 도시한 절차가 CPU(10)와 코프로세서(17)의 원조로 수행되어 연산동작이 신속히 행해질 수 있다. 상기 동작에 대한 상세한 설명은 상기 절차가 CPU에 의한 연산과 거의 같으므로 여기서는 생략한다.
따라서, 단계 Sa15의 파형 샘플값 계산에 있어서, 합성 사운드의 품질에 대한 가장 영향 있는 처리가 CPU합성 모드 중 한 모드에 의해 수행된다. FM고조파 합성 또는 물리 모델 합성 모드에 있어서, 파형 데이터 연산에 필요한 시간 및 동시 재생될 음성수가 사운드 합성의 장애이다. 각 샘플 점에서의 파형 데이터가 처리능력을 시험토록 연산된다. 상기 연산은 m사이클마다 단계 Sa15내지 Sa17에서 반복적으로 행해지며, 상기 m샘플 연산에 필요한 시간이 타이머 조작으로 측정되어 단계 Sa21에서 CPU의 처리능력에 맞는 샘플링 주파수 fs를 설정할 수 있다. 유사하게, 파형 메모리 판독모드에 있어서, 파형 데이터 판독 동작이 사운드 합성의 장애로서 각 샘플점에서의 파형 데이터가 액세싱 속도를 시험하도록 판독된다. 상기 판독 처리는 m샘플에 대한 단계 Sa15에서 Sa17에서 행해져서 m 샘플 연산에 필요한 시간이 타이머 조작으로 측정되어 단계 Sa21에서 CPU의 처리능력에 맞는 샘플링 주파수를 설정할 수 있다.
상기 단계 Sa34(제1도)에서 수행된 선택된 하드웨어에 의한 합성이 이하 기술된다. 상기 합성처리는 모든 채널의 음성이 CPU 합성 모드 자체로 합성되지 않는 한 영향을 받는다. 이러한 처리는 상기 할당 모드에 따라 파형을 합성하는데 사용된 음원 장치를 제어하도록 실행된다. 이 절차에 있어서 먼저 제15도의 단계 Se1에서 사건검출이 행해진다. 상기 사건은 키보드정보 KBD 또는 MIDI정보에 응답하여 발행된 키 온 사건 및 CPU 합성모드와 관련하고, 음원장치 모드와 관련된 다른 사건을 포함한다. 키 온 사건의 검출 시, 상기 장치는 합성 처리를 시작한다. 단계 Se2에 있어서, 현재의 동작 모드가 음원 합성 모드를 지정하는지가 검사되며, 상기 검출결과가 “No”라면, 단계 Se11로 절차가 분기되며, “Yes”라면 절차가 다음의 단계 Se3으로 진행한다. 단계 Se3에 있어서, 음원 장치의 현재의 합성동작 상태 및 상기 사건에 대응하는 연주정보가 상기 음원장치에 의한 파형 합성을 위한 “조건”과 부합하는 지가 검사된다. 본 실시예에 있어서, 현재 합성되는 음성(음색)수가 상기 음원 합성 모드에서 지정된 하드웨어장치에 의해 동시 합성될 수 있는 최대수의 음성 내에 있는 조건인 지 여부가 검사된다.
특히, 단계 Se3에 있어서, 현재 액티브 상태에 있으며, 상기 음원장치에 할당된 채널 수는 상기 장치에 의해 음성의 동시 합성에 사용될 수 있는 전채널 수 이하나 그와 같게 된다. 상기 “조건”은 이하의 인수 즉, (1) 상기 검출사건으로 지정된 “피치”또는 “토치(touch)”가 소정 값 이상(또는 이하) 여부, (2) 상기 검출사건으로 지정된 “음색” 관련 값이 소정 값 이상(또는 이하)인지. (3) 상기 검출사건으로 지정된 연주정보의 “부분”수에 관련한 값이 소정 값 이상(또는 이하)인지. (4) 상기 검출사건에 관련된 검출 MIDI-CH값(채널 수)가 소정 값 이상(또는 이하)인지의 인수를 포함한다. 상술한 바와 같이, 상기 “조건”에 대한 표준은 연주 성능으로 지정된 임의의 값이 소정 값 이상(또는 이하)인지에 따라 일반화된다. 임의의 고음 음색이 상기 음원장치를 이용하고 FM모드 또는 고주파 합성모드에서 지정되는 경우, 부정의 결과를 발생하도록 특정의 “조건”을 이용할 수 있다. 이러한 이용을 다른 실시예에서 후술한다. 상기 조건이 만족되면,채널 할당 처리가 단계 Se4에서 행해져서 키 온 사건을 위한 음성합성채널이 사운드 합성에 현재 사용되지 않는 음원장치의 빈 채널에서 할당된다. 단계 Se3에 있어서, 상기 할당된 채널에서 발생된 사건에 대한 파형의 실제적인 합성이 행해지는 지정음원 하드웨어를 이용하여 사운드 발생이 수행된다. 상기 조건의 단계 Se3에서 채워지지 않은 경우, 플랙 ENBFLG가 단계 Se6에서 “1”인지가 검사된다. 이 단계에서, “1”이 판단되면, 단계 Sa13 내지 Sa25가 이미 수행되었으며, CPU 합성모드용 샘플링 주파수 fs가 이미 설정된 것을 의미한다. 따라서, CPU 합성모드를 활용할 수 있다. 이로써 단계 Se6의 검사 결과가 “Yes”라면, 플랙 ENBLFLG의 값 “1”로 인해 CPU합성모드로의 절차가 단계 Se7에서 행해져서 음원장치에 의한 합성을 위한 조건과 부합하지 않는 사건관련 파형의 합성이 CPU합성 모드에서 수행된다. 특히, 상기 CPU 합성 할당 절차에 있어서 상기 사건과 관련한 파형의 샘플값을 연산하도록 할당 명령이 발행된다.
상기 명령은 CPU(10)으로 실행되어 연산 또는 지정(CPU 합성 모드에서의 임의의 모드) 및 음색, 피치, 토치 볼륨 및 채널할당의 지정 등을 포함하며, 또한 키 온 또는 키 오프 등의 노트 명령을 포함한다. 할당 명령의 완료 시, CPU(10)을 포함하는 연산장치가 단계 Se1에서의 사건 관련 샘플값을 발생하도록 파형 합성 연산처리를 수행한다. 상기 할당 명령은 또는 상기 파형이 인터럽트 처리로서 발생되는 경우, 인터럽트 개시 및 종료에 관한 정보를 포함한다. 한편, 단계 Se6에서 플랙 ENBLFLG의 값이 “0”인 경우, CPU합성모드를 활용할 수 없는데, 이 경우, 강제로 빈 채널을 만들도록 단계 Se8에서 가장 오래된 채널의 사운드 재생동작을 턴 오프 시키도록 트렁케이팅(truncating) 처리가 실행된다.
이 트렁케이팅 처리는 단계 Se4에서 수행된 할당 처리에 포함되며, 단계 Se4에서, 강제적인 노트오프에 의해 관련사건이 빈 채널에 할당되며, 상기 사건과 관련한 파형의 합성이 단계 Se4에서 할당된 채널에 의해 실행된다. 다중 음원 장치가 상기 시스템에 설치되면, 다른 음원장치의 채널이 단일 음색을 합성하도록 할당된다.
또한, 음원 장치 선택 모드 또는 선행 모드가 단계 Se2에서 검출되지 않은 경우, CPU 합성모드가 음원 합성모드와 함께 설정되는 CPU선택 선행모드 즉, 수동모드가 선택된다. 따라서 절차가 제16도의 단계 Se11로 분기되며, 이 단계에서, CPU 합성모드의 현재 상태 및 상기 발생사건 관련 연주 정보가 CPU를 포함하는 장치에 의한 합성을 위한 “조건”과 부합하는지가 검사된다. 음원 장치에 의한 합성 “조건”에 있어서(단계 Se3)와 같은 CPU합성을 위한 “조건”으로서 여러요인을 생각할 수 있다. 본 실시 예에서, 현재 합성될 음성(음색)수가 CPU합성 모드로서 동시 합성될 수 있는 최대 음성수내에 있는지가 조건이 된다. 특히 단계 Se11에 있어서, 노트 온 상태로 현재 유지되며, CPU를 포함하는 연산장치에 할당된 채널 수(CH)는 CPU 합성모드에 의해 파형의 동시 합성에 사용될 수 있는 최대수의 채널 이하이거나 그와 같게 된다. “조건”이 만족되면, 플랙 ENBLFLG가 단계 Se12에서 “1”인지 여부가 검사되며, 상술한 바와 같이, 플랙 “ENBLFLG”의 값 “1”은 CPU합성 모드에 의해 파형 합성이 이미 개시된 것을 의미하므로, 단계 Se13에서 CPU(10)을 포함하는 장치에 의한 파형 합성에 대한 할당 절차가 수행되며, 절차가 단계 Se9로 진행한다. 단계 Se13에서의 할당 처리에 대한 상세한 것은 그 절차가 단계 Se7에서와 같으므로 다시 설명하지 않는다. 한편, CPU에 의한 파형 합성을 위한 “조건”이 단계 Se11에 포함되고, CPU(10)를 포함하는 장치가 단계 Se12에서 준비되지 않을 경우, 단계 Se4에서와 같이, 단계 Se14에서 할당 절차가 수행되어, 상기 사건과 관련한 처리가 외부 음원장치에 의해 행해진다.
지정 하드웨어를 이용하는 합성은 단계 Se5에서와 같이 단계 Sa15에서 행해진다. 단계 Se13, Se9 및 Se10이 실행된후, 단계 Se9에서 CPU에 의한 파형 데이터를 발생하는 할당 명령이 없는지가 검출된다. 상기 명령이 검출되지 않으면, 절차는 즉시 복귀되고, 검출되면, 단계 Se10에서 CPU에 의해 사운드를 발생하도록 할달 명령에 따라 파형이 연산된다.
따라서, 외부 음원선택 선행모드에 있어서, 하드웨어 장치의 합성을 위한 “조건”과 맞는 합성처리가 단계 Se5에서 음원에 의해 수행되며, 상기 “조건”과 부합치 않는 합성처리가 단계 Se10에서 CPU(10)에 의해 수행된다.
한편, 상기 지정모드가 음원사전선택 모드가 아닌 경우, CPU(10)에 의한 합성을 위한 “조건”과 맞지 않는 처리가 단계 Se10에서 소프트웨어 모들에 의해 수행되며, CPU에 의한 합성을 위한 “조건”과 맞는 합성처리가 단계 Se15에서 하드웨어 음원장치에 의해 수행된다. 따라서, 선택 하드웨어를 이용하는 합성에 있어서, 상기 합성처리가 음원합성모드에서 지정된 하드웨어 처리 능력을 초과하는 경우, CPU합성모드에 의해 처리를 초과부분이 수행되어, 하드웨어 설비를 향상시키지 않고도 상기 하드웨어에서 동시 재생될 수 있는 전체 음성 수 이상의 복수의 음성을 처리할 수 있다. 일반적으로, I/O(14)와 같은 입력장치가 복수의 악음을 동시 명령하는데 유효한 연주정보를 제공하는 경우, 본 발명의 장치는 연주정보로 지정된 다수의 동시 악음에 따라 제1 및 제2파형 발생기 중 하나를 지정하여, 그 지정된 발생기가 악음의 수에 대응하는 다수 개의 파형을 생성하기에 충분한 능력을 가질 수 있다. 상기 동시 악음의 수가 상기 파형 발생기 중 어느 하나의 능력을 초과하는 경우, 상기 발생기를 모두가 지정되어 완전한 동시 악음을 생성할 수 있다.
상기 음색처리를 이하 기술한다.
상기 음색처리는 전술한 시험 파형 합성 프로그램동안 소정의 간격 Tt에서 수행된 인터럽트 처리이다. 제17도는 음색 처리를 상세히 도시하는 플로우챠트이다. 단계 Sf1에서, 타이머의 카운팅 업이 유효한지를 나타내는 블랙 “BUSY” 가 “1”인지가 검사된다.
검출 결과가 측정이라면, 단계 Sf3으로 절차가 스킵되며, 긍정이라면, 레지스터 TCOUNT가 1씩 증가하는 단계 Sf2로 루틴이 진행한다. 단계 Sf3에서, 상기 타이머루틴을 종료시키도록 기타의 타이머 처리가 수행된다. 따라서, 상기 플랙 “BUSY” 가 “1”인 경우 타이머처리로서 레지스터 TCOUNT가 “1”씩 증가한다.
플랙 BUSY는 레지스터 TCOUNT의 내용이 연산에 또는 한파형의 판독에 필요한 시간 내에서 타이머 처리의 발동사이클을 나타내도록 단계 Sa9내지 Sa11의 루프에서만 “1”로 된다. 상기 경과시간은 TCOUNT에 Tt를 곱함으로써 유도된다.
제1도에 도시한 장치에 있어서, 코프로세서(17), DSP(21) 및 외부음원(22)등의 옵션 장치가 설치되며, 따라서 이 장치에 있어서, 모든 동작모드가 합성모드 및 할당모드와 관련하여 지정될 수 있다. 상기 동작 모드가 제1로 음원선택 모드로 설정되면, 외부 음원의 처리 능력을 넘는 처리부분이 CPU에 할당되며, CPU가 처리를 조절하여 외부 음원 장치의 제한을 너머 악음이 재생될 수 있으며, 각종의 음색이 발생될 수 있다. 또한 각종의 음색이 제1순위로 소정의 CPU 선택 모드에서 발생될 수 있다.
샘플링 주파수 fs가 단계 Sa2l에서 항상 최적값으로 설정되므로, 발생된 사운드의 품질이 양호하게 될 수 있다.
상기 실시예에 있어서, 제1도에 도시한 바와 같이 옵션 장치가 전체로 설치된다. 그러나, PC 또는 전자악기의 하드웨어 설비는 옵션 장치에 따라 달라진다. 악음 합성 프로그램의 활용 동작모드가 하드웨어 설비에 따라 다르다. 제1도의 것과 다른 하드웨어장치에서 악음합성 프로그램의 동작을 이하 설명한다.
제21도의 하드웨어설비는 코프로세서(17), DSP(21) 및 LSI음원(22)등의 옵션 장치를 갖지 않는다. 물론 음원합성모드는 상기실비에서 활용할 수 없으며, 이는 단계 Sa4(제8도)의 검출이 “YES”로 되며, 단지 CPU합성모드가 이용될 수 없기 때문이다.
그러나, CPU(10)의 처리능력이 충분히 높지 않으면, 코프로세서(17) 및 DSP(21)가 설치될 수 없기 때문에 실시간 파형 데이터 연산을 할 수 없다. 따라서, 파형 메모리 판독 모드가 CPU합성 모드에서만 활용할 수 없는 경우가 있을 수 있다.
제22도에 도시한 하드웨어 설비는 단지 코프로세서(17) 만을 연상장치로서 가진다. 이 설비에서, 하드웨어 음원합성모드를 얻을 수 없다. 이는 단계 Sa4(제8도)에서의 검출이 “Yes”로 되기 때문으로 CPU합성 모드만 활용할 수 있다. 그러나, 코프로세서(17)에 의해 고속 실시간 연산동작이 가능하므로, 모든 CPU합성모드를 활용할 수 있다.
실제 파형 연산(단계 Sa9) 및 시험 파형 연산(단계 Sa15)은 상기 설비로서 CPU(10) 및 코프로세서(17)에 의해 수행되며, 이는 코프로세서(17)을 활용할 수 있기 때문이다.
제13도에 도시한 하드웨어 설비는 코프로세서(17) 및 DSP(21)를 옵션 장치로서 포함하며, 상기 DSP(21)의 목적은 파형 데이터의 고속연산을 보장한다. DSP(21)가 외부 음원으로서 사용되면, 합성프로그램의 제2발동 또는 그 이후 DSP에 의해 음원 합성 모드가 활용 가능한데, 이는 단계 Sa4의 검출(제8도)이 “No”로 되기 때문이다. 그러나, DSP(21)의 목적은 데이터 연산을 가속해서 파형 테이터가 파형 메모리 판독 방법에 의해 발생되지 않고, FM모드, 고조파합성모드 및 물리 모델링 모드 등의 각종의 순수연산모드에 의해 발생되도록 하는 것이다. 또한, 할당 모드에 따라 CPU 합성 모드를 활용할 수 있다. 파형 데이터 연산이 가능하지만, DMAC(19) 및 RAM(20)이 빠지므로 파형 메모리 판독 모드를 활용 할 수 없다. 실시간 고속 파형 데이터 연산이 수행되는 FM 모드, 고조파합성모드 및 물리 모델 합성 모드만을 사용할 수 있다. 실제의 파형 연산(단계 Sa8) 및 시험 파형 연산(Sa15)이 상기 설비에서 CPU(10) 및 코프로세서(17)에 의해 수행될 수 있다.
제24도에 도시한 하드웨어설비는 단지 LSI음원(22) 및 옵션장치만을 포함한다.
이러한 설비에서, 단계 Sa4(제8도)에서 검출이 “No”가 되므로, 합성 프로그램의 제2발동 또는 그후 음원합성모드를 활용할 수 있다 또한, CPU합성모드는 할당모드에 따라 활용할 수 있다. 그러나, DMAC(19) 및 RAM(20)이 빠지므로, 파형 메모리 판독 모드를 활용할 수 없는 경우가 있다.
또한, CPU(10)의 처리능력이 충분히 높지 않으면, 코프로세서(17)가 빠지므로, 실시간 파형 데이터 연산을 할 수 없다. 따라서, CPU합성 모드를 활용할 수 없는 경우가 있을 수 있다.
제2실시예를 이하 설명한다. 일반적으로, FM모드 또는 고주파합성모드에 따라 파형 데이터 연산에 의해 리듬 또는 드럼악기 등의 충격음원의 실제 사운드를 재생할 수 없다. 따라서, LSI음원(22)이 설치되고, 이 음원(22)이 파형 메모리 판독모드와는 다른 FM모드 등의 순수연산방법에 의해 악음의 파형 데이터를 연산하는 경우, 상기 LSI음원(22)으로 사운드를 재생할 수 없다. 또한 상기 LSI음원(22)이 설치된 경우, CPU(10)에 의해 파형 메모리 판독모드와는 다른 산술연산모드에 의해 파형 데이타를 연산할 필요가 없다. 또한 CPU(10)가 파형 합성과는 다른 일을 수행하여, 파형 합성 프로그램을 수행하는데 필요한 시스템 부하가 가능한 한 대폭 감소될 수 있다. 이는 CPU(10)의 처리능력이 우수한 경우 특히 그렇다. 따라서, 이 경우, CPU(10)가 파형 메모리 판독 모드에서 LSI음원(22)에 적당치 않은 충격 파형 데이타를 발생하기가 용이하며, LSI음원(22)이 다른 음색용 파형 데이터를 발생한다. 따라서, CPU(10)에 대한 연산부하가 감소될 수 있어서, LSI음원(22)은 음원(22)이 처리능력이 낮은 임의의 파형 데이터를 합성할 필요가 없다. 재생된 사운드의 품질은 그만큼 우수하게 된다. 제2실시예의 목적은 상기 점에 지향되며, 상기 실시예는 음원(22)이 제1도 또는 제24도와 같이 도시된 것을 가정한다. 파형 합성 프로그램과 관련하여, 선택된 하드웨어(제5도 및 제16도)를 이용하는 합성처리가 제18도에 도시한 처리로 대치된다. 특히 단계 Sa34 (제11도)에서 선택된 하드웨어를 이용하는 합성처리가 제18도에 도시한 처리로 대체된다.
상기 대체 처리를 이하 기술하는데, 다른 처리에 대한 설명은 생략한다.
이 제2실시예에서, 단계 Sa34로 가면, 프로그램은 제18도에 도시한 선택 하드웨어를 이용하여 합성처리를 행한다. 단계 Sg1에서 단계 Sel에서와 같은 사건검출이 수행된다. 특히, 상기 합성을 조절하는 장치가 CPU 및 LSI음원으로부터 각 음성(음색)에 대해 결정된다. 이러한 할당을 위한 표준을 이하 기술한다. 일반적으로, 음원은 활용할 수 있는 음색에 대한 고유한 성질을 갖고 있어서, 각각의 음색이 고유한 음색코드로 지정될 수 있다. 따라서, 충격음원의 음색코드에 대한 리스트를 포함하는 테이블을 미리 이용할 수 있어서, 관련 사건에 대해 검출된 음색 코드가 상기 테이블에서 발견된 경우, CPU(10)로 다루어질 음원과 LSI음원(22)으로 다루어질 다른 음원 사이의 구별을 할 수 있다. 그러나, 본 실시예에 있어서, 할당 표준은 음색코드로 제한되지 않는다. 임의의 음색이 CPU로 다루어지고, 다른 음색이 상기 음원으로 다루어지는 방식으로, 수동 모드 하에서 음색 조정 수단을 설정할 수 있다. 각각의 음원은 동시 합성을 위해 사용될 수 있는 채널 수에 따라 할당될 수 있으며, 또한 강제 모드 하에서 각각의 음원이 다른 실행 프로그램으로 강제적으로 할당될 수 있다.
LSI음원으로 할당된 음원의 경우에, 단계 Se4(제15도)에서와 같이 단계 Sg3에서 음성할당처리로서 빈 채널이 발생된다. 단계 Sg4에서, 키 온 사건과, 관련한 파형이 상기 빈 채널을 통해 합성된다. 이러한 동작을 위한 합성모드가 FM모드, 고조파 합성 모드 또는 물리 모델링 모드로 제한되지 않으며, 예를 들면 설치된 음원(22)의 특성에 따라 상기 파형 메모리(25)로부터 파형 데이터를 판독하기 위한 PCM모드를 사용할 수 있다. 한편 CPU에 할당된 음색의 경우에 단계 Se7(제15도)에서와 같이 단계 Sg5에서 검출된 사건과 관련한 파형 데이터를 발생하도록 할당 명령을 생성하기 위해 CPU합성 할당 절차가 행해진다. 상기 할당 명령을 활용하는 경우, 단계 Sg6에서의 검출은 “Yes”로 되며, 단계 Sg7에서의 합성연산이 상기 할당 명령과 관련한 파형을 발생하도록 수행된다.
상기 파형의 합성은 전술한 CPU에 대한 부하를 경감하도록 파형 메모리 판독 모드에 의해 영향을 받는다. 한편, 상기 할당 명령을 활용할 수 없는 경우, 단계 Sg6에서 검출의 “No”로 되어 절차가 복귀한다.
이 제2실시예에서, 악음의 악음음색에 따라 CPU 및 음원에 선택적으로 할당될 수 있어서, CPU 및 음원에 대한 처리 부하의 최적 분배가 가능하여, 재생된 사운드의 품질을 유지하면서도 각종의 음색이 발생될 수 있다. 요약하면, 입력 장치는 악음의 음색을 지정하는 음색정보 및 악음의 발생 타이밍을 지정하는 타이밍 정보를 포함하는 연주정보를 제공할 수 있다. 제1파형 발생기 및 제2파형 발생기 중 하나가 음색 정보에 따라 지정되어 출력 장치가 상기 지정타이밍에서 지정음색을 가지는 악음을 발생할 수 있다.
상기 제1 및 제2실시예에 있어서, 한 음원에 대한 합성 처리가 CPU상에 있는 채널과 음원에 있는 다른 채널에서 수행된다. 그러나, 음원에 대한 합성처리는 CPU 및 음원에 의해 수행된다. 이러한 장치에서, CPU측에서 고조파 합성 모드를 사용하고, 음원 측에서 FM모드를 사용할 수 있어서, 다른 연산모드로 동일음원이 합성되므로, 변화 있는 음원(악음)이 발생될 수 있다. 제3실시예의 목적은 상기 점에 지향되는데, LSI음원이 제1도 및 제24도에 도시한 바와 같이 상기 시스템에 설치되는 것으로 한다. 파형 합성 프로그램과 관련하여, 선택 하드웨어 장치(제15도 및 제16도)를 이용하는 합성처리가 제19도에 도시된 처리로 대체된다. 특히, 단계 Sa34 (제11도)에서 선택된 하드웨어를 이용하는 합성처리가 제14도에 도시된 처리로 대체된다. 이 처리를 이하 기술하는데, 다른 처리에 대한 설명은 생략한다.
이 실시예에서, 단계 Sa34로 가면, 제14도에 도시한 선택하드웨어를 이동하여 합성프로그램의 합성처리를 수행한다.
단계Sh1에서, 단계 Sel 및 Sg1에서와 같은 사건 검출이 수행되며, 단계 Sh2에서 음성할당을 위한 시스템 체크가 수행되며, 특히, 합성을 다루는 장치가 상기 CPU 및 LSI음원으로부터 각 음성(음원) 마다 결정된다. 이 할당의 표준은 제2실시예에서와 같이 음색코드, 동시 합성에 이용하는 채널 수 또는 상기 수동 또는 강제모드로 구성된 설비가 될 수 있다. 상기 LSI음원에 할당된 음원의 경우에, 단계 Se4(제15도)에서와 같이 단계 Sh3에서 음성할당처리에 의해 준비된다.
단계 Sh4에서, 상기 노트 온 사건과 관련한 파형이 빈 채널을 통해 합성된다. 이러한 동작을 위한 합성방법은 FM모드 또는 고주파 합성방법으로 제한되지 않으며, 예를 들면, 설치된 음원(22)의 특성에 따라 파형 메모리(25)로부터 파형 데이터를 판독하도록 물리 모델링 모드 및 PCM 모드를 이용할 수 있다. 한편, CPU 할당된 음원의 경우에, 단계 Se7(제15도)에서와 같이, 단계 Sh5에서 검출된 노트 온 사건과 관련한 할당 명령을 발생하도록 CPU합성 할당 절차가 행해진다. 상기 할당 명령에 연산 방법에 관한 정보가 포함된다. CPU 및 응원 모두에 할당된 음성이 LSI 음원에 의해 단계 Sh3 및 Sh4에서 처리되면, 상기 음성이 CPU에 의해 단계 Sh5에서 처리된다. 상기 처리는 병렬로 행해진다. 상기 할당 명령을 활용할 수 있으면, 단계 Sh6에서의 검출이 “Yes”가 되며, 단계 Sh7에서의 합성연산이 상기 할당 명령과 관련한 파형을 발생하도록 단계Sh7에서 합성연산이 행해진다. 제2실시예와 다르게 FM, 고조파합성, 물리 모델링 등의 각종 모드에 의해 합성 연산이 행해진다.
또한, 상기 할당 명령을 이용할 수 없으면, 단계 Sh6에서의 검출이 “No”로 되어 절차가 복귀한다.
이 제3실시예에서, 음성(음원)이 CPU 및 LSI음원에 할당되어, 동일 음원에 대한 실제적으로 다른 파형 데이터가 제생될 수 있다. 이러한 특징으로 인해, 제3실시예는 시스템의 음원을 달리할 수 있다.
요약하면, 상기 제1파형 발생기 및 제2파형 발생기 모두가 동시 지정되어 제어장치가 단일 음색에 대해 병렬 방식으로 파형을 동시 생성하도록 상기 파형 발생기들을 조작할 수 있다.
제4실시예를 이하 설명한다.
음성할당모드가 상기 실시예에 도입되었지만, 보다 단순한 이용을 할 수 있다. 임의의 음원 장치에 할당될 수 있는 사건이 상기 장치가 시스템에 설치될 수 없다면 사건 검출 시 관련 장치로 간단히 할당된다. 본 실시예에서 상기 이용이 제공된다. 제4실시예가 제2 및 제3실시예에서와 같이 제1도 또는 제24도와 같이 설치된다. 파형 합성 프로그램과 관련하여, 선택 하드웨어장치(제15도 및 제16도)를 이용하는 합성처리가 제20도에 도시한 처리로 대치된다. 특히, 단계 Sa34(제11도)에서 선택하드웨어장치를 이용하는 합성처리가 제20도에 도시한 처리로 대치 된다. 상기 처리를 이하 기술하지만 다른 처리에 대한 설명은 생략한다.
이 실시 예에서, 단계 Sa34로 가면, 제20도에 도시한 선택 하드웨어를 이용하여 합성프로그램이 합성처리를 수행할 수 있다.
먼저 상기 처리가 도시되지 않지만, 사건 검출이 행해진다. 단계 Si1에서 LSI음원에서 빈 채널을 생성하도록 음성 할당이 수행된다. 단계Si2에서 상기 검출된 사건과 관련한 파형이 상기 빈 채널을 이용하여 실제 합성된다. 이러한 조작을 위한 합성방법은 FM모드 또는 고조파 합성모드로 제한되지 않으며, 예를 들면, 설치된 음원(22)의 특성에 따라 파형 메모리(25)로부터 파형 데이터를 판독하도록 예를 들면, 물리 모델링 모드 및 PCM모드를 이용할 수 있다. 합성 이후, 절차가 복귀한다. 따라서 제4실시예에서, 임의의 음원장치로 할당될 수 있는 사건이 상기 장치가 시스템에 설치된다면, 사건 검출 시 상기 장치로 간단히 할당된다.
제25도는 본 발명의 악음발생장치의 다른 실시예를 도시하며, 이 실시예는 기본적으로, 제1도의 제실시예와 동일한 구성을 가지며, 설명의 편의를 위해 동일부품에 대해서는 동일 번호를 부여했다. 기억장치(15)는 파형 데이터 등의 각종의 데이터 및 시스템제어프로그램 즉, 기본 프로그램, 파형 합성 프로그램 및 다른 응용 프로그램 등의 각종의 프로그램을 기억한다. 정상적으로, ROM(11)은 상기 프로그램들을 가상 기억하며, 그러나 상기 프로그램이 포함되지 않는 경우, 임의의 프로그램이 하드디스크나 기억장치(15)의 다른 곳에 로드된다. 상기 로드된 프로그램은 CPU(10)로서 본 발명의 악음 발생장치 시스템을 가동시키도록 RAM(13)으로 전달된다. 상기와 같은 식으로, 새로운 버전 업 프로그램이 시스템에 용이하게 설치될 수 있다. 이를 위해 CD ROM(51)등의 기계 판독가능매체가 상기 프로그램을 설치하는데 사용된다. 상기 CD-ROM(51)은 버스(12)를 통해 CD-ROM(51)으로부터 상기 프로그램을 판독하고, 이것을 기억장치(15)에 다운 로드 하도록 CD-ROM드라이브(52)에 세트된다. 상기 기계 판독 가능 매체는 CD-ROM 과는 다른 자기 디스크 또는 광학 디스크로 될 수 있다.
통신 인터페이스(53)는 LAN, 공중전화망 및 INTERNET등의 통신망(51)을 통해 외부서버컴퓨터(54)에 접속된다. 기억장치(15)가 필요한 데이터나 프로그램을 갖지 않으면, 통신 인터페이스(53)는 상기 서버 컴퓨터(54)로부터 데이터 또는 프로그램을 수신하도록 활성화되며, CPU(10)는 상기 인터페이스(53) 및 통신망(55)를 통해 서버 컴퓨터(54)로 요청을 낸다. 상기 요청에 응답하여, 서버 컴퓨터(54)는 상기 장치로 요청된 데이터 또는 프로그램을 전송한다. 상기 전송 데이터 또는 프로그램은 기억장치(15)의 하드디스크에 기억되어 다운로딩을 완료한다.
본 발명의 악음 발생장치는 필요한 데이터나 프로그램을 설치한 PC에 의해 이용될 수 있다. 이 경우, 상기 데이터 및 프로그램은 CD-ROM(51) 또는 플로피 디스크 등의 기계 판독 가능한 기록 매체에 의해 사용자에 제공된다.
상기 매체는 PC로 하여금 상기 실시예에 따라 본 발명의 악음 발생 방법을 실행하도록 하는 명령을 포함하며, PC는 통신망을 통해 데이터나 프로그램을 수신한다.
상기 실시예에 있어서, 코프로세서(17), DSP(21), 음원(22)을 포함하는 옵션 장치가 예로서 열거되었지만 옵션장치는 이에 한정되지 않으며, 본 발명은 PC, 전자악기, 게임기 및 악음이 발생되는 기타 장치 등의 응용시스템에 이동될 수 있다.
전술한 바와 같이 본 발명에 따르면, 각종의 효과가 유도되며, 각종의 악음을 발생하고, 악음 발생에 필요한 처리 로드를 감소시킬 수 있다. 악음은 상기 장치의 구성에 필요한 최적의 샘플주파수에서 발생될 수 있다.
상기 악음의 파형 데이터를 발생하는 구조는 대단히 간소화된다. 발생된 악음의 품질은 저성능 하드웨어에서도 그대로 유지될 수 있다. 연주 정보의 볼륨이 커져도, 상기 연주정보에 따라 악음이 발생될 수 있다.

Claims (62)

  1. 연주정보에 따라 악음을 발생토록 파형을 생성하는 악음발생장치에 있어서; 임의의 파형을 생성토록 동작하는 제1파형 발생수단; 상기 제1파형 발생수단과는 독립적으로 동작하여 임의의 파형을 발생하는 제2파형 발생수단; 연주정보를 제공하는 입력수단; 제공된 연주정보에 따라 상기 제1파형 발생수단과 제2파형 발생수단 중 하나를 지정하는 지정수단; 상기 지정수단에 의해 지정된 파형 발생수단을 선택적으로 가동시켜, 상기 제공된 연주 정보에 따라 파형을 생성하는 제어수단; 및 상기 생성된 파형에 따라 악음을 발생하는 출력수단을 구비하며; 상기 제1파형 발생수단은 상기 제어수단에 의해 구동되는 하드웨어 모듈을 포함하며, 상기 제2파형 발생수단은 상기 제어수단에 설치될 수 있는 소프트웨어 모듈을 포함하는 것을 특징으로 하는 것을 특징으로 하는 악음발생장치.
  2. 제1항에 있어서, 상기 입력수단은 악음의 음색을 지정하는데 유효한 음색정보 및 악음의 지정 타이밍을 지정하는데 유효한 타이밍정보를 포함하는 연주정보를 제공하는 수단을 포함하며, 상기 지정수단은 출력수단이 지정 타이밍에서 지정 음색을 가지는 악음을 발생할 수 있도록 음색정보에 따라서 상기 제1 및 제2파형 발생수단들 중 하나를 지정하는 수단을 구비한 것을 특징으로 하는 악음발생장치.
  3. 제1항에 있어서, 상기 지정수단은 상기 제1파형 발생수단 및 제2파형 발생수단 모두를 동시 지정하도록 동작하는 수단을 포함하여, 상기 제어수단이 상기 파형 발생수단들을 모두 가동시켜 병렬방식으로 파형을 동시 생성할 수 있도록 하는 것을 특징으로 하는 악음발생장치.
  4. 제1항에 있어서, 상기 입력수단은 복수의 악음의 동시 발생을 명령하는 연주정보를 제공하는 수단을 포함하며, 상기 지정수단은 상기 연주정보로 지정된 다수의 동시 악음에 따라 제1파형 발생수단 및 제2파형 발생수단 중 하나를 지정해서 상기 지정된 수단이 악음의 수에 대응하는 다수의 파형을 생성하기에 충분한 용량을 가지도록 한 수단을 포함하는 것을 특징으로 하는 악음발생장치.
  5. 제4항에 있어서, 상기 지정수단은 동시 악음의 수가 상기 제1파형 발생수단 및 제2파형 발생수단 중 하나의 용량을 초과하는 경우, 상기 파형 발생수단 모두를 지정해서 동시 악음 발생을 행하도록 동작하는 수단을 추가로 포함하는 것을 특징으로 하는 악음발생장치.
  6. 제1항에 있어서, 상기 제1파형 발생수단은 상기 제어수단에 선택적으로 접속 가능한, 외부 파형 발생기를 포함하며, 상기 제2파형 발생수단은 상기 제어수단과 일체로 된 내부 파형 발생기를 포함하며, 상기 외부파형 발생기가 상기 제공연주정보에 일차로 대응해야 하는 경우 상기 외부 파형 발생기가 상기 제어수단에 비접속될 때 상기 외부 파형 발생기를 대신하여 상기 내부 파형 발생기를 지정하는 것을 특징으로 하는 악음발생장치.
  7. 제1항에 있어서, 상기 제2파형 발생수단, 입력수단, 지정수단 및 제어수단은 서로 일체로 되어 컴퓨터의 주요부를 구성하며, 상기 제1파형 발생수단은 상기 주요부에서 분리되며, 컴퓨터에 선택적으로 설치가능한 보조부를 구성하는 것을 특징으로 하는 악음발생장치.
  8. 제1항에 있어서, 상기 제2파형 발생수단은 상이한 품질의 디지털 파형을 연산적으로 생성하도록 상이한 알고리즘에 따라 동작하는 복수의 디지털 파형 발생기를 포함하며, 상기 제어수단은 제공된 연주정보에 따라 상기 디지털 파형 발생기 중 최적의 것을 선택적으로 가동시키는 수단을 포함하는 것을 특징으로 하는 악음발생장치.
  9. 제8항에 있어서, 상기 제2파형 발생수단은 비교적 품질이 낮은 디지털 파형을 생성하도록 비교적 간단한 알고리즘에 따라 동작하는 파형 메모리 타입의 디지털 파형 발생기와; 비교적 품질이 높은 또 다른 디지털 파형을 생성하도록 비교적 복잡한 알고리즘에 따라 동작하는 또 다른 디지털 파형 발생기를 포함하는 것을 특징으로 하는 악음발생장치.
  10. 제1항에 있어서, 상기 제2파형 발생수단은 디지털 파형의 샘플값을 순차로 연산함으로써 디지털 파형을 생성하도록 가변동작속도에서 소정의 알고리즘에 따라 동작하는 컴퓨터 파형 발생기를 포함하며; 상기 제어수단은 모델 디지털 파형의 시험 생성을 수행하도록 상기 컴퓨터 파형 발생기를 예비 동작시키며, 상기 시험 생성이 수행되는 동작 속도를 측정하는 측정수단, 상기 측정 동작 속도와 비교 가능한 샘플링 주파수를 최적으로 결정하는 결정수단 및 제공된 연주정보에 따라 결정된 샘플링 주파수에서 실제의 디지털 파형의 샘플값을 순차로 연산하도록 상기 컴퓨터 파형 발생기를 실제로 가동시키는 수단을 포함하는 것을 특징으로 하는 악음발생장치.
  11. 제10항에 있어서, 상기 결정수단은 상기 샘플링 주파수를 상기 측정 속도 이하이며 그에 가장 가까운 계단식의 소정레벨 중 하나로 고정시키는 수단을 포함하는 것을 특징으로 하는 악음발생장치.
  12. 제10항에 있어서, 상기 제어수단은, 최소한도의 디지털 파형을 유지하도록 된 임계 레벨 이하로 상기 결정 샘플링 주파수가 떨어질 때 상기 컴퓨터 파형 발생기의 동작속도를 상승시키도록 알고리즘을 변경시킴으로써, 상기 샘플링 주파수가 상기 임계 레벨을 초과하도록 재설정 될 수 있는 것을 특징으로 하는 악음발생장치.
  13. 제12항에 있어서, 상기 변경수단은, 알고리즘을 복잡한 것에서 간단한 것으로 변경시킴으로써, 상기 컴퓨터 파형 발생기가 상기 알고리즘들 중 상기 간단한 것에 따라 동작하여 사전 기억된 샘플값을 연속적으로 판독하고 그리하여 디지털 파형을 재생적으로 생성하는 것을 특징으로 하는 악음발생장치.
  14. 제13항에 있어서, 상기 컴퓨터 파형 발생기는 복잡한 알고리즘이 간단한 것으로 변경되기 이전에 상기 복잡한 알고리즘에 따라 예비적으로 연산된 생플값 중 사전 기억된 것을 순차로 판독하는 것을 특징으로 하는 악음발생장치.
  15. 연주정보에 따라 악음을 발생시키도록 디지털 파형을 생성하는 사운드 발생장치에 있어서, 연주정보를 제공하는 입력수단; 가변동작속도에서 소정의 알고리즘에 의해 동작하며 디지털 파형의 샘플값을 순차로 연산함으로써 디지털 파형을 생성하는 컴퓨터 파형 발생수단; 모델 디지털 파형의 시험 생성을 수행하도록 상기 컴퓨터 파형 발생기를 예비적으로 동작시키며, 상기 시험 생성이 수행되는 동작 속도를 측정하는 시험수단; 상기 측정 동작 속도와 비교 가능한 샘플링 주파수를 최적으로 결정하는 결정수단; 상기 컴퓨터 파형 발생기를 실제로 동작시켜 그로부터 소정의 샘플링 주파수에서 실제 디지털 파형의 샘플값을 연속적으로 연산하게 하는 제어수단 및; 제공된 연주정보에 따라 상기 실제 디지털 파형에 따라 악음을 발생하는 출력 수단을 구비하는 것을 특징으로 하는 사운드 발생장치.
  16. 연주정보에 따라 막음을 발생하도록 파형을 생성하는 악음발생방법에 있어서 ; 파형을 생성하도록 동작하는 제1파형 발생기를 준비하는 단계; 상기 제1파형 발생기와는 독립적으로 동작하여 파형을 발생하는 제2파형 발생기를 준비하는 단계; 연주정보를 제공하는 단계; 상기 제공된 연주 정보에 따라 상기 제1 및 제2파형 발생기 중 적어도 하나를 지정하는 단계; 제어기에 의해 상기 파형 발생기 중 지정된 하나를 선택적으로 가동시켜, 상기 제공된 연주정보에 따라 파형을 생성하는 단계 및; 상기 생성 파형에 따라 악음을 발생하는 단계를 포함하며; 상기 제1파형 발생기는 상기 제어기에 의해 구동되는 하드웨어 모듈을 포함하며, 상기 제2파형 발생기는 상기 제어기 내에 설치 가능한 소프트웨어 모듈을 포함하는 것을 특징으로 하는 악음발생방법.
  17. 제16항에 있어서, 상기 제공 단계는 상기 악음의 음색을 지정하는데 유효한 음색정보 및 상기 악음의 발생타이밍을 지정하는데 유효한 타이밍 정보를 포함하는 연주정보를 제공하는 단계를 포함하며; 상기 지정단계는 상기 음색정보에 따라 상기 파형 발생기들 중 하나를 지정해서 상기 지정음색을 가지는 악음이 지정타이밍에서 발생되도록 하는 단계를 포함하는 것을 특징으로 하는 악음발생방법.
  18. 제16항에 있어서, 상기 지정단계는 상기 파형 발생기들 모두를 동시 지정해서 제어기가 상기 파형 발생기들을 모두 가동시켜 병렬방식으로 파형을 동시 생성하도록 하는 것을 특징으로 하는 악음발생방법.
  19. 제16항에 있어서, 상기 제공단계는 복수의 악음에 대한 동시 발생을 명령하는데 유효한 연주 정보를 제공하는 단계를 포함하며; 상기 지정단계는 상기 연주 정보로 지정된 다수의 동시 악음에 따라 제1 및 제2 파형 발생기 중 하나를 지정해서 상기 지정된 한 발생기가 상기 악음의 수에 대응하는 다수개의 파형을 생성하기에 충분한 용량을 갖도록 하는 단계를 포함하는 것을 특징으로 하는 악음발생방법.
  20. 제19항에 있어서, 상기 지정단계는 동시 악음의 수가 제1파형 발생기 및 제2파형 발생기 중 어느 하나의 능력을 초과하는 경우, 상기 파형 발생기 모두를 지정해서 동시적인 악음이 완전히 발생하도록 하는 단계를 또한 포함하는 것을 특징으로 하는 악음발생방법.
  21. 제16항에 있어서, 상기 준비단계는 상기 제어기에 옵션으로 접속 가능한 외부 파형 발생기로 이루어진 제1파형 발생기와, 상기 제어기와 일체로 된 내부 파형 발생기로 이루어진 제2파형 발생기를 준비하여, 상기 외부 파형 발생기가 제공된 연주 정보에 일차로 대응하여야 하는 경우에도 상기 외부 파형 발생기가 상기 제어기에 접속되지 않는 경우에는, 상기 외부 파형 발생기 대신 내부 파형 발생기가 지정되도록 하는 것을 특징으로 하는 악음발생방법.
  22. 제16항에 있어서, 상기 준비단계는, 다른 품질을 가지는 디지털 파형을 연산적으로 생성하도록 다른 알고리즘에 따라 동작하는 복수의 디지털 파형 발생기로 이루어진 제2파형 발생기를 준비하는 단계를 포함하며; 상기 동작단계는,제공된 연주 정보에 따라 디지털 파형 발생기 중 적당한 하나를 선택적으로 가동시키는 단계를 포함하는 것을 특징으로 하는 악음발생방법.
  23. 제22항에 있어서, 상기 준비단계는 비교적 품질이 낮은 디지털 파형을 생성하도록 비교적 간단한 알고리즘에 따라 동작하는 파형 메모리 형의 디지털 파형 발생기와, 비교적 품질이 높은 또 다른 디지털 파형을 생성하도록 비교적 복잡한 알고리즘에서 동작하는 또 다른 디지털 파형 발생기를 준비하는 단계를 포함하는 것을 특징으로 하는 악음발생방법.
  24. 제16항에 있어서, 상기 준비단계는, 상기 디지털 파형의 샘플 값을 연속적으로 연산함으로써 디지털 파형을 생성하도록, 가변동작속도에서 소정의 알고리즘에 따라 가동하는 컴퓨터 파형 발생기로 이루어진 제2파형 발생기를 준비하는 단계를 포함하며, 상기 가동단계는, 모델 디지털 파형을 시험 생성하도록 상기 컴퓨터 파형 발생기를 예비적으로 가동시키고 상기 시험 생성이 수행되는 동작 속도를 측정하며, 상기 측정된 동작 속도와 비교 가능한 샘플링 주파수를 최적으로 결정하며, 제공된 연주정보에 따라 상기 결정된 샘플링 주파수에서 실제의 디지털 파형의 샘플값을 연속하여 연산하도록 상기 컴퓨터 파형 발생기를 실제로 가동시키는 단계를 포함하는 것을 특징으로 하는 악음발생방법.
  25. 제24항에 있어서, 상기 결정단계는 상기 측정동작 속도 이하이며 그에 가장 가까운 계단식의 소정의 레벨 중 하나로 샘플링 주파수를 고정하는 단계를 포함하는 악음발생방법.
  26. 제24항에 있어서, 상기 가동단계는 상기 컴퓨터 파형 발생기의 동작 속도를 상승시키도록 알고리즘을 변경시켜서, 샘플링 주파수가 최소한도의 품질의 디지털 파형을 보장하도록 된 임계 레벨을 초과하도록 재결정될 수 있도록 하는 단계를 추가로 포함하는 것을 특징으로 하는 악음발생방법.
  27. 제26항에 있어서, 상기 변경단계는 상기 알고리즘을 복잡한 것에서 간단한 것으로 변경시켜서, 상기 컴퓨터 파형 발생기가 상기 간단한 알고리즘에 따라 동작하여 샘플값들 중 사전 기억된 한 값을 연속적으로 판독해서 디지털 파형을 재생적으로 생성하는 단계를 포함하는 것을 특징으로 하는 악음발생방법.
  28. 제27항에 있어서, 상기 준비단계는, 상기 복잡한 알고리즘이 간단한 알고리즘으로 변경되기 전에 상기 복잡한 알고리즘에 따라 예비적으로 연산된 샘플값 중 사전기억된 값을 연속적으로 판독하는 컴퓨터 파형 발생기를 준비하는 단계를 포함하는 것을 특징으로 하는 악음발생방법.
  29. 연주정보에 따라 악음을 발생하도록 디지털 파형을 생성하는 사운드 발생방법에 있어서; 연주정보를 제공하는 단계; 디지털 파형의 샘플값을 연속적으로 연산함으로써 디지털 파형을 생성하도록 가변 동작 속도에서 소정의 알고리즘에 따라 동작하는 컴퓨터 파형 발생기를 준비하는 단계; 모델 디지털 파형을 시험 생성하도록 상기 컴퓨터 파형 발생기를 예비적으로 가동시키며, 상기 시험 생성이 수행되는 동작 속도를 측정하는 단계; 상기 측정된 동작속도와 비교 가능한 샘플링 주파수를 최적으로 결정하는 단계; 상기 컴퓨터 파형 발생기를 실제 가동시켜서 소정의 샘플링 주파수에서 실제 디지털 파형의 샘플값을 연속적으로 연산하도록 하는 단계 및; 상기 제공된 연주 정보에 따라 실제의 디지털 파형에 의거하여 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 사운드 발생 방법.
  30. 연주정보에 따라 악음 발생 처리를 실행하는 처리장치, 제1파형 발생기 및 제2파형 발생기를 포함하는 음악 연주 장치에 있어서; 상기 악음 발생 처리는, 임의의 파형을 생성하도록 동작할 수 있는 제1파형 발생기를 준비하는 단계; 임의의 파형을 생성하도록, 상기 제1파형 발생기와는 독립적으로 동작할 수 있는 제2파형 발생기를 준비하는 단계; 연주 정보를 수신하는 단계; 상기 수신된 연주 정보에 따라 상기 제1파형 발생기 및 제2파형 발생기 중 적어도 하나를 지정하는 단계; 상기 처리장치에 의해 구동되는 하드웨어 장치를 포함하는 상기 제1파형 발생기 및 상기 처리장치에 의해 실행되는 소프트웨어 프로그램을 포함하는 상기 제2파형 발생기 중 지정된 것을 선택적으로 가동하여 상기 수신된 연주 정보에 따라 파형을 생성하는 단계; 및 상기 생성된 파형에 따라 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  31. 제30항에 있어서, 상기 수신 단계는, 상기 처리장치에 의해 실행 가능한 자동연주 프로그램으로 구성되는 시퀀서에 의해서 자동적으로 제공되는 연주 정보를 수신하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  32. 제30항에 있어서, 상기 수신 단계는, 상기 처리장치에 의한 제어 하에서 연주 정보의 외부 자원에 접속 가능한 인터페이스로부터 연주 정보를 수신하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  33. 제30항에 있어서, 상기 수신 단계는, 상기 연주 정보를 제공하는 수동 재생 가능한 입력 장치로부터 상기 연주 정보를 수신하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  34. 제30항에 있어서, 상기 수신 단계는, 상기 연주 정보를 저장하는 저장 매체로부터 상기 처리장치에 의해서 상기 연주 정보를 수신하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  35. 디지털 파형의 생성 처리를 실행하여, 연주 정보에 따라 악음을 발생하는 컴퓨터를 포함하는 음악 연주 장치에 있어서, 상기 디지털 파형의 생성처리는, 상기 연주 정보를 수신하는 단계; 상기 디지털 파형의 샘플값을 연속적으로 연산하여 디지털 파형을 생성하도록 가변 동작 속도로 주어진 알고리즘에 따라 동작하는 컴퓨터 파형 발생기를 준비하는 단계; 모델 디지털 파형을 시험 생성하도록 상기 컴퓨터 파형 발생기를 예비적으로 가동시키며, 상기 시험 생성이 수행되는 동작 속도를 측정하는 단계; 상기 측정된 동작 속도와 비교 가능한 샘플링 주파수를 최적으로 결정하는 단계; 소정의 샘플링 주파수에서 실제 디지털 파형의 샘플값을 연속적으로 연산하도록 상기 컴퓨터 파형 발생기를 실제로 가동시키는 단계; 및 상기 수신된 연주 정보에 따라 실제의 디지털 파형에 의해 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  36. 연주정보에 따라 악음 발생 처리를 실행하는 중앙처리장치, D/A 변환기, 제1파형 발생기 및 제2파형 발생기를 포함하는 음악 연주 장치에 있어서; 상기 중앙처리장치에 의한 악음 발생 처리는, 디지털 파형을 생성하도록 동작할 수 있는 제1파형 발생기를 준비하는 단계; 디지털 파형을 생성하도록, 상기 제1파형 발생기와는 독립적으로 동작할 수 있는 제 2파형 발생기를 준비하는 단계; 연주 정보를 수신하는 단계; 상기 수신된 연주 정보에 따라 디지털 파형을 생성하도록, 상기 중앙처리장치에 의해 구동되는 하드웨어 장치를 포함하는 상기 제1파형 발생기 및 상기 중앙처리장치에 의해 실행되는 소프트웨어 프로그램을 포함하는 제2파형 발생기 중 적어도 하나를 가동시키는 단계; 및 상기 제1파형 발생기 및 상기 제2파형 발생기 모두에 대해서 공통적으로 제공되는 D/A 변환기를 동작시켜서, 상기 제1파형 발생기 및 상기 제2파형 발생기 중 적어도 하나에 의해서 생성되는 디지털 파형을 대응하는 아날로그 악음 신호로 변환하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  37. 연주정보에 따라 악음 발생 처리를 실행하는 중앙처리장치, 제1파형 발생기 및 제2파형 발생기를 포함하는 음악 연주 장치에 있어서; 상기 중앙처리장치에 의한 악음 발생 처리는, 임의의 파형을 생성하도록 동작할 수 있는 제1파형 발생기를 준비하는 단계; 임의의 파형을 생성하도록, 상기 제1파형 발생기와는 독립적으로 동작할 수 있는 제2파형 발생기를 준비하는 단계; 연주 정보를 수신하는 단계; 상기 수신된 연주 정보에 따라 상기 제1파형 발생기 및 제2파형 발생기 중 적어도 하나를 지정하는 단계; 상기 제1파형 발생기 및 제2파형 발생기 중 적어도 하나는 상기 중앙처리장치에 의해 실행되는 소프트웨어 프로그램을 포함하며, 상기 제1파형 발생기 및 상기 제2파형 발생기 중 지정된 것을 선택적으로 가동하여 상기 수신된 연주 정보에 따라 파형을 생성하는 단계; 및 상기 생성된 파형에 따라 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  38. 제37항에 있어서, 제1파형 발생기와 제2파형 발생기의 다른 쪽 파형 발생기는, 파형을 형성하도록 연주 정보 처리를 위한 중앙처리장치의 제어 하에서 마이크로 프로그램을 실행하는 디지털 신호 처리기를 포함하는 것을 특징으로 하는 음악 연주 장치.
  39. 제37항에 있어서, 제1파형 발생기와 제2파형 발생기의 다른 쪽 파형 발생기는, 파형을 형성하도록 중앙처리장치를 통해 연주정보를 수신하는 음원 장치의 LSI회로를 포함하는 것을 특징으로 하는 음악 연주 장치.
  40. 제37항에 있어서, 제1파형 발생기와 제2파형 발생기의 다른 쪽 파형 발생기는, 파형을 형성하도록 중앙처리장치를 통해 연주정보를 수신하는 적어도 하나의 음원장치 및 생성된 파형을 대응하는 악음의 아날로그 신호로 변환하는 D/A 변환기를 포함하는 것을 특징으로 하는 음악 연주 장치.
  41. 제37항에 있어서, 제1파형 발생기와 제2파형 발생기의 다른 쪽 파형 발생기는, 중앙처리장치로부터 연주정보를 수신하여 생성된 파형을 중앙처리장치로 반송하도록 중앙처리장치와 통신 가능한 원격 음원 시스템을 포함하는 것을 특징으로 하는 음악 연주 장치.
  42. 연주정보에 따라 악음 발생 처리를 실행하는 중앙처리장치, 제1파형 발생기 및 제2파형 발생기를 포함하는 음악 연주 장치에 있어서; 상기 중앙처리장치에 의한 악음 발생 처리는, 임의의 파형을 생성하도록 동작할 수 있는 제1파형 발생기를 준비하는 단계; 임의의 파형을 생성하도록, 상기 제1파형 발생기와는 독립적으로 동작할 수 있는 제2파형 발생기를 준비하는 단계; 연주 정보를 수신하는 단계; 상기 수신된 연주 정보에 따라 상기 제2파형 발생기 보다 먼저 상기 제1파형 발생기를 지정하고, 수신된 연주 정보를 처리하는 데 상기 제1파형 발생기가 불충분할 때, 상기 제2파형 발생기를 지정하는 단계; 상기 제1파형 발생기를 가동하여 파형을 생성하도록 하고, 수신된 정보에 따라 파형을 생성하도록 상기 제2파형 발생기가 지정되었을 때는 상기 제2파형 발생기 역시 가동되도록 하는 단계; 및 상기 생성된 파형에 따라 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  43. 제42항에 있어서, 상기 수신 단계는 복수개의 동시적인 악음 발생을 명령하는 데 유효한 연주정보를 수신하는 단계를 포함하며, 상기 지정 단계는 연주정보에 의해서 명기된 동시적인 악음에 해당되는 복수 개의 파형을 생성하도록 제1파형 발생기를 지정하는 단계와, 상기 파형의 수가 제1파형 발생기의 능력을 초과하는 경우에는 제 1파형 발생기와 제2파형 발생기 모두에 의해서 동시적인 악음 발생을 완성하도록 제2파형 발생기를 또한 지정하는 것을 특징으로 하는 음악 연주 장치.
  44. 제42항에 있어서, 상기 지정 단계는, 중앙처리장치에 의해서 구동되는 하드웨어로 구성된 제1파형 발생기를 지정하는 단계와; 중앙처리장치의 처리능력이 상기 소프트 웨어 프로그램을 실행할 수 있을 경우에는, 중앙처리장치에 의해 실행될 수 있는 소프트웨어 프로그램으로 구성된 제2파형 발생기를 지정하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  45. 연주정보에 따라 악음 발생 처리를 실행하는 중앙처리장치를 포함하는 음악 연주 장치에 있어서; 상기 중앙처리장치에 의한 악음 발생 처리는, 상기 중앙처리장치에 옵션으로 접속 가능하고, 상기 중앙처리장치에 의해 구동되어 임의의 파형을 생성하도록 하는 하드웨어 장치를 포함하는 제1파형 발생기를 검출하는 단계; 임의의 파형을 생성하도록, 중앙처리장치에 의해 실행될 수 있는 소프트웨어 프로그램으로 구성된 제2파형 발생기를 준비하는 단계; 연주 정보를 수신하는 단계; 상기 제1파형 발생기가 상기 중앙처리장치에 접속된 것으로 검출된 경우에는, 상기 수신된 연주 정보에 따라 상기 제1파형 발생기 또는 상기 제2파형 발생기 중 어느 하나를 지정하고, 그렇지 않고, 상기 제1파형 발생기가 상기 중앙처리장치에 접속되지 않은 것으로 검출된 경우에는 상기 제2파형 발생기를 지정하는 단계; 상기 제1파형 발생기와 제2파형 발생기 중 지정된 하나를 선택적으로 가동하여 수신된 연주정보에 따라 파형을 생성하는 단계; 및 상기 생성된 파형에 따라 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  46. 제45항에 있어서, 상기 지정 단계는 상기 제1파형 발생기가 상기 중앙처리장치에 접속된 것으로 검출되면, 상기 제2파형 발생기보다도 상기 제1파형 발생기를 우선적으로 지정하고, 상기 제1파형 발생기가 수신된 연주정보를 처리하기에 불충분할 때에 제2파형 발생기를 지정하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  47. 연주정보에 따라 막음 발생 처리를 실행하는 중앙처리장치를 포함하는 음악 연주 장치에 있어서; 상기 중앙처리장치에 의한 악음 발생 처리는, 상기 중앙처리장치에 의해 실행되어 임의의 파형을 생성하도록 하는 소프트 웨어 프로그램으로 구성된 하나의 파형 발생기를 준비하고, 상기 하나의 파형 발생기에 의해 생성된 파형을 대체할 수 있는 대체 파형을 생성하도록 중앙처리장치에 의해 실행될 수 있는 또 다른 소프트웨어 프로그램으로 구성된 또 다른 하나의 파형 발생기를 준비하는 단계; 연주 정보를 수신하는 단계; 수신된 연주 정보에 따라 상기 하나의 파형 발생기를 지정하고, 상기 중앙처리장치가 상기 하나의 파형 발생기를 가동할 수 없는 경우에 상기 하나의 파형 발생기 대신에 상기 또 다른 하나의 파형 발생기를 지정하는 단계; 상기 수신된 연주 정보에 따라서 대체 파형을 생성하도록 상기 또 다른 파형 발생기가 지정될 때, 상기 또 다른 파형 발생기를 가동하는 단계; 및 상기 중앙처리장치가 상기 하나의 파형 발생기를 가동시킬 수 없더라도, 상기 생성된 대체 파형에 따라 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  48. 제47항에 있어서, 상기 준비 단계는, 상기 중앙처리장치의 소정의 연산 능력을 요구하는 소프트웨어 프로그램으로 구성된 상기 하나의 파형 발생기를 준비하는 단계와, 상기 소정의 연산 능력 보다 적은 연산 능력을 요구하는 또 다른 소프트웨어프로그램으로 구성된 상기 또 다른 하나의 파형 발생기를 준비하는 단계를 포함하며; 상기 지정 단계는, 상기 중앙처리장치가 상기 하나의 파형 발생기의 가동에 요구되는 소정의 연산 능력을 처리할 수 없을 때, 상기 하나의 파형 발생기 대신에 상기 또 다른 하나의 파형 발생기를 지정하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  49. 제48항에 있어서, 상기 가동 단계는, 상기 하나의 파형 발생기가 지정되지 않은 경우에도 음원 파형을 생성하기 위한 상기 하나의 파형 발생기를 예비적으로 가동시키는 단계와, 그 후에 상기 음원 파형을 사용하여 대체 파형을 생성하도록 상기 또 다른 파형 발생기를 실제 가동하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  50. 디지털 파형 생성 처리를 실행하는 중앙처리장치를 포함하여 연주정보에 따라 악음을 발생하는 음악 연주 장치에 있어서; 상기 디지털 생성 처리는, 연주 정보를 수신하는 단계; 디지털 파형을 생성하기 위한 중앙처리장치의 연산 능력에 따라 가변적인 가변 동작 모드에서 중앙처리장치에 의해 실행 가능한 소프트웨어 프로그램으로 구성된 파형 발생기를 준비하는 단계; 상기 파형 발생기의 가동에 대해 유용한 연산 능력을 검출하는 단계와; 상기 중앙처리장치의 검출된 연산 능력에 따라 파형 발생기의 가변가동 모드를 최적으로 변환하는 단계; 상기 수신된 연주 정보에 따라 디지털 파형을 생성하도록 상기 최적으로 변환된 가변 동작 모드에서 파형 발생기를 가동시키는 단계; 및 상기 생성된 디지털 파형에 기초하여 악음을 발생시키는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  51. 제50항에 있어서, 상기 준비 단계는, 디지털 파형의 샘플값을 연속적으로 연산하여 디지털 파형을 생성하도록 가변 동작 속도를 가지는 상기 가변 동작 모드에서 파형 발생기를 준비하는 단계를 포함하며; 상기 검출 단계는, 모델 디지털 파형의 시험 생성을 수행하도록 상기 파형 발생기를 예비적으로 가동하며, 그 동안 상기 시험 생성이 수행되는 동작 속도에 의하여 중앙처리장치의 연산 능력을 측정하는 단계를 포함하며; 상기 최적 변환 단계는, 상기 측정된 동작 속도에 대해 비교 가능한 샘플링 주파수에 의해 가변 동작 모드를 최적으로 결정하는 단계를 포함하며; 상기 가동 단계는, 상기 결정된 샘플링 주파수에서 디지털 파형의 샘플값을 연속적으로 연산하도록 파형 발생기를 실제로 가동하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  52. 제50항에 있어서, 상기 검출 단계는, 소프트웨어 프로그랭을 실행하기 위한 연산에서 부가적인 처리장치가 중앙처리장치를 보조할 수 있는가의 여부를 검출하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  53. 제50항에 있어서, 상기 검출 단계는, 상기 중앙처리장치가 상기 파형 발생기를 가동시키도록 소프트웨어 프로그램을 실행하기 전에 상기 중앙처리장치의 연산 능력을 예비적으로 측정하는 단계를 포함하는 것을 특징으로 하는 음악 연주 장치.
  54. 제50항에 있어서, 상기 최적 변환 단계는, 상기 검출된 중앙처리장치의 연산 능력이 감소할 때는, 디지털 파형을 생성하는 방법을 정의하는 제1알고리즘이 이 제1알고리즘 보다 단순한 제2알고리즘으로 변환되도록 가변 동작 모드를 변화시키는 것을 특징으로 하는 음악 연주 장치.
  55. 제50항에 있어서, 상기 최적 변환 단계는, 상기 검출된 중앙처리장치의 연산능력이 감소할 때는, 상기 파형 발생기의 제1동작 속도가 이 제1동작속도보다 느린 제2동작 속도로 변환되도록 상기 가변 동작 모드를 변환시키는 것을 특징으로 하는 음악 연주 장치.
  56. 제50항에 있어서, 상기 최적 변환 단계는, 디지털 파형을 생성하기 위해 중앙처리장치에 의해 수행되는 일련의 연산 단계가 중앙처리장치의 검출된 연산 능력에 따라 변화되도록 상기 가변 동작 모드를 변환시키는 것을 특징으로 하는 음악 연주 장치.
  57. 연주 정보에 따라 컴퓨터에 의해 악음을 발생하는 방법에 있어서, 디지털 파형을 생성하도록 동작하는 제1파형 발생기를 준비하는 단계; 디지털 파형을 생성하도록 동작하며, 상기 제1파형 발생기와는 독립적으로 동작하는 제2파형 발생기를 준비하는 단계; 연주 정보를 제공하는 단계; 상기 제공된 연주정보에 따라 디지털 파형을 생성하도록, 컴퓨터에 의해 구동되는 하드웨어 장치를 구비하는 상기 제1파형 발생기와 상기 컴퓨터에 의해 실행되는 소프트웨어 프로그램을 구비하는 제2파형 발생기 중 어느 하나를 가동하는 단계; 및 상기 제1파형 발생기 및 상기 제2파형 발생기의 모두에 대해서 공통적으로 제공되는 D/A 변환기를 가동하여, 상기 제1파형 발생기 및 제2파형 발생기 중 어느 하나에 의해 생성된 디지털 파형을 상기 악음의 대응하는 아날로그 신호로 변환하는 단계를 포함하는 것을 특징으로 하는 악음 발생 방법.
  58. 연주 정보에 따라 컴퓨터에 의해 악음을 발생하는 방법에 있어서, 임의의 파형을 생성하도록 동작하는 제1파형 발생기를 준비하는 단계; 임의의 파형을 생성하도록 동작하며, 상기 제1파형 발생기와는 독립적으로 동작하는 제2파형 발생기를 준비하는 단계; 연주 정보를 제공하는 단계; 상기 제공된 연주 정보에 따라, 제1파형 발생기 및 제2파형 발생기 중 최소 하나를 지정하는 단계와; 상기 제공된 연주정보에 따라 상기 파형을 생성하도록, 적어도 한 쪽이 상기 컴퓨터에 의해 실행되는 소프트웨어 프로그램을 구비하는 상기 제1파형 발생기와 제2파형 발생기 중 지정된 하나를 선택적으로 가동하는 단계;및 상기 생성된 파형에 기초하는 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 악음 발생 방법.
  59. 연주 정보에 따라 컴퓨터에 의해 악음을 발생하는 방법에 있어서, 임의의 파형을 생성하도록 동작하는 제1파형 발생기를 준비하는 단계; 임의의 파형을 생성하도록 동작하며, 상기 제1파형 발생기에 대한 보조적으로 동작하는 제2파형 발생기를 준비하는 단계; 연주 정보를 제공하는 단계; 상기 제공된 연주 정보에 따라 상기 제2파형 발생기보다 먼저 제1파형 발생기를 지정하고, 상기 제1파형 발생기가 상기 제공된 연주 정보를 처리하는 데 불충분할 경우 제2파형 발생기를 지정하는 단계; 상기 제공된 연주정보에 따라 상기 파형을 발생하도록 제1파형 발생기를 가동하며, 또한 상기 제2파형 발생기가 상기 파형을 발생하도록 지정된 경우에는 상기 제2파형 발생기 역시 가동하는 단계; 및 상기 생성된 파형에 기초하는 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 악음 발생 방법.
  60. 연주 정보에 따라 컴퓨터에 의해 악음을 발생하는 방법에 있어서, 임의의 파형을 생성하기 위해, 컴퓨터에 의해 구동 가능하게 컴퓨터에 선택적으로 접속된 하드웨어 장치로 구성되는 제1파형 발생기를 검출하는 단계; 임의의 파형을 생성하기 위해, 컴퓨터에 의해 실행 가능한 소프트웨어 프로그램으로 구성되는 제2파형 발생기를 준비하는 단계; 연주 정보를 제공하는 단계; 상기 제1파형 발생기가 상기 컴퓨터에 접속된 것으로 검출된 경우에는, 상기 제공된 연주 정보에 따라 상기 제1파형 발생기 또는 상기 제2파형 발생기 중 어느 하나를 지정하고, 그렇지 않고, 상기 제1파형 발생기가 상기 컴퓨터에 접속되지 않은 것으로 검출된 경우에는 상기 제2파형 발생기를 지정하는 단계; 상기 제1파형 발생기와 제2파형 발생기 중 지정된 하나를 선택적으로 가동하여 제공된 연주정보에 따라 파형을 생성하는 단계; 및 상기 생성된 파형에 따라 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 악음 발생 방법.
  61. 연주 정보에 따라 컴퓨터에 의해 악음을 발생하는 방법에 있어서, 상기 컴퓨터에 의해 실행되어 임의의 파형을 생성하도록 하는 소프트웨어 프로그램으로 구성된 하나의 파형 발생기를 준비하고, 상기 하나의 파형 발생기에 의해 생성되는 파형을 대체할 수 있는 대체 파형을 생성하도록 컴퓨터에 의해 실행될 수 있는 또 다른 소프트웨어 프로그램으로 구성된 또 다른 하나의 파형 발생기를 준비하는 단계; 연주 정보를 제공하는 단계; 상기 제공된 연주 정보에 따라 상기 하나의 파형 발생기를 지정하고, 상기 컴퓨터가 상기 하나의 파형 발생기를 가동할 수 없는 경우에는 상기 하나의 파형 발생기 대신에 상기 또 다른 하나의 파형 발생기를 지정하는 단계; 상기 제공된 연주 정보에 따라서 대체 파형을 생성하도록 상기 또 다른 파형 발생기가 지정될 때, 상기 또 다른 파형 발생기를 가동하는 단계; 및 상기 컴퓨터가 상기 하나의 파형 발생기를 가동시킬 수 없더라도, 상기 생성된 대체 파형에 기초하여 악음을 발생하는 단계를 포함하는 것을 특징으로 하는 악음 발생 방법.
  62. 연주 정보에 따라 컴퓨터에 의해 악음을 발생하는 방법에 있어서, 연주 정보를 제공하는 단계; 디지털 파형을 생성하기 위한 컴퓨터의 연산 능력에 따라 가변적인 가변 동작 모드에서 상기 컴퓨터에 의해 실행 가능한 소프트웨어 프로그램으로 구성된 파형 발생기를 준비하는 단계; 상기 파형 발생기의 가동에 대해 유용한 연산 능력을 검출하는 단계와; 상기 컴퓨터의 검출된 연산 능력에 따라 파형 발생기의 가변 가동 모드를 최적으로 변환하는 단계; 상기 제공된 연주 정보에 따라 디지털 파형을 생성하도록 상기 최적으로 변환된 가변 동작 모드에서 파형 발생기를 가동시키는 단계: 및 상기 생성된 디지털 파형에 기초하여 악음을 발생시키는 단계를 포함하는 것을 특징으로 하는 악음 발생 방법.
KR1019960020414A 1995-06-06 1996-06-07 악음발생장치 KR100306032B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP13952695 1995-06-06
JP95-139526 1995-06-06
JP95-253493 1995-09-29
JP7253493A JP2998612B2 (ja) 1995-06-06 1995-09-29 楽音発生装置

Publications (2)

Publication Number Publication Date
KR970002733A KR970002733A (ko) 1997-01-28
KR100306032B1 true KR100306032B1 (ko) 2001-11-30

Family

ID=26472312

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960020414A KR100306032B1 (ko) 1995-06-06 1996-06-07 악음발생장치

Country Status (8)

Country Link
US (2) US5714703A (ko)
EP (3) EP0978821B1 (ko)
JP (1) JP2998612B2 (ko)
KR (1) KR100306032B1 (ko)
CN (1) CN1153187C (ko)
DE (3) DE69632273T2 (ko)
HK (1) HK1004441A1 (ko)
SG (3) SG45482A1 (ko)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6362409B1 (en) 1998-12-02 2002-03-26 Imms, Inc. Customizable software-based digital wavetable synthesizer
JP3293434B2 (ja) * 1995-10-23 2002-06-17 ヤマハ株式会社 楽音発生方法
SG67993A1 (en) * 1996-08-30 1999-10-19 Yamaha Corp Sound source system based on computer software and method of generating acoustic waveform data
JP3152156B2 (ja) * 1996-09-20 2001-04-03 ヤマハ株式会社 楽音発生システム、楽音発生装置および楽音発生方法
US6758755B2 (en) 1996-11-14 2004-07-06 Arcade Planet, Inc. Prize redemption system for games executed over a wide area network
JP3196681B2 (ja) * 1997-03-13 2001-08-06 ヤマハ株式会社 通信データ一時記憶装置
JP2922509B2 (ja) * 1997-09-17 1999-07-26 コナミ株式会社 音楽演出ゲーム機、音楽演出ゲーム用の演出操作指示システムおよびゲーム用のプログラムが記録されたコンピュータ読み取り可能な記憶媒体
US6357039B1 (en) * 1998-03-03 2002-03-12 Twelve Tone Systems, Inc Automatic code generation
JP3031676B1 (ja) 1998-07-14 2000-04-10 コナミ株式会社 ゲ―ムシステムおよびコンピュ―タ読み取り可能な記憶媒体
FR2785711B1 (fr) * 1998-11-06 2001-03-16 Jean Philippe Chevreau Dispositif qui compose de maniere automatique une piece musicale en y incorporant des echantillons sonores
JP2000237455A (ja) 1999-02-16 2000-09-05 Konami Co Ltd 音楽演出ゲーム装置、音楽演出ゲーム方法および可読記録媒体
JP3707300B2 (ja) * 1999-06-02 2005-10-19 ヤマハ株式会社 楽音発生装置用拡張ボード
US9818386B2 (en) 1999-10-19 2017-11-14 Medialab Solutions Corp. Interactive digital music recorder and player
US6392133B1 (en) 2000-10-17 2002-05-21 Dbtech Sarl Automatic soundtrack generator
US7176372B2 (en) 1999-10-19 2007-02-13 Medialab Solutions Llc Interactive digital music recorder and player
US7078609B2 (en) 1999-10-19 2006-07-18 Medialab Solutions Llc Interactive digital music recorder and player
AU5584101A (en) * 2000-04-14 2001-10-30 Realnetworks, Inc. A system and method of providing music items to music renderers
US7237198B1 (en) 2000-05-22 2007-06-26 Realnetworks, Inc. System and method of providing for the control of a music player to a device driver
US7526349B2 (en) * 2000-12-01 2009-04-28 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7522966B2 (en) 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7890741B2 (en) 2000-12-01 2011-02-15 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7522964B2 (en) * 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US7818443B2 (en) * 2000-12-01 2010-10-19 O2Micro International Ltd. Low power digital audio decoding/playing system for computing devices
US7522965B2 (en) * 2000-12-01 2009-04-21 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
EP1326228B1 (en) 2002-01-04 2016-03-23 MediaLab Solutions LLC Systems and methods for creating, modifying, interacting with and playing musical compositions
US7076035B2 (en) 2002-01-04 2006-07-11 Medialab Solutions Llc Methods for providing on-hold music using auto-composition
US7015389B2 (en) 2002-11-12 2006-03-21 Medialab Solutions Llc Systems and methods for creating, modifying, interacting with and playing musical compositions
US7928310B2 (en) 2002-11-12 2011-04-19 MediaLab Solutions Inc. Systems and methods for portable audio synthesis
US7169996B2 (en) 2002-11-12 2007-01-30 Medialab Solutions Llc Systems and methods for generating music using data/music data file transmitted/received via a network
US7045700B2 (en) * 2003-06-30 2006-05-16 Nokia Corporation Method and apparatus for playing a digital music file based on resource availability
US7038119B2 (en) 2003-07-18 2006-05-02 Telefonaktiebolaget L M Ericsson (Publ) Dynamic control of processing load in a wavetable synthesizer
DE10339032A1 (de) * 2003-08-25 2005-05-25 Infineon Technologies Ag Software-Synthesizer und Verfahren zum Erzeugen von Audiosignalen mit einer variablen Anzahl von Stimmen in Abhängigkeit vom Betriebszustand einer Prozessoreinheit
JP4134963B2 (ja) * 2003-09-16 2008-08-20 ヤマハ株式会社 音響装置
JP4400363B2 (ja) * 2004-08-05 2010-01-20 ヤマハ株式会社 音源システム、楽曲ファイルを記録したコンピュータ読み取り可能な記録媒体及び楽曲ファイル作成ツール
EP1846916A4 (en) 2004-10-12 2011-01-19 Medialab Solutions Llc SYSTEMS AND METHODS FOR REMOVE MUSIC
US20060155543A1 (en) * 2005-01-13 2006-07-13 Korg, Inc. Dynamic voice allocation in a vector processor based audio processor
US8180063B2 (en) * 2007-03-30 2012-05-15 Audiofile Engineering Llc Audio signal processing system for live music performance
JP4475323B2 (ja) * 2007-12-14 2010-06-09 カシオ計算機株式会社 楽音発生装置、及びプログラム
JP2009169862A (ja) * 2008-01-18 2009-07-30 Panasonic Corp プログラム変換装置、方法、プログラムおよび記録媒体
JP2011242560A (ja) * 2010-05-18 2011-12-01 Yamaha Corp セッション端末及びネットワークセッションシステム
JP5375869B2 (ja) * 2011-04-04 2013-12-25 ブラザー工業株式会社 楽曲再生装置、楽曲再生方法及びプログラム
JP6388048B1 (ja) 2017-03-23 2018-09-12 カシオ計算機株式会社 楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器
JP6443772B2 (ja) * 2017-03-23 2018-12-26 カシオ計算機株式会社 楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器
CN107436618B (zh) * 2017-08-08 2019-12-27 电子科技大学 一种基于指令架构的任意波形发生器

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4373416A (en) * 1976-12-29 1983-02-15 Nippon Gakki Seizo Kabushiki Kaisha Wave generator for electronic musical instrument
JPS604994B2 (ja) * 1977-09-05 1985-02-07 ヤマハ株式会社 電子楽器
JPS55500959A (ko) * 1978-12-11 1980-11-13
JPS5792399A (en) * 1980-11-29 1982-06-08 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5792398A (en) * 1980-12-01 1982-06-08 Nippon Musical Instruments Mfg Electronic musical instrument
US4641564A (en) * 1983-06-17 1987-02-10 Nippon Gakki Seizo Kabushiki Kaisha Musical tone producing device of waveform memory readout type
US5119710A (en) * 1986-03-09 1992-06-09 Nippon Gakki Seizo Kabushiki Kaisha Musical tone generator
JPS6384190A (ja) 1986-09-29 1988-04-14 株式会社東芝 チツプ部品搭載基板
US5086685A (en) * 1986-11-10 1992-02-11 Casio Computer Co., Ltd. Musical tone generating apparatus for electronic musical instrument
JP2651600B2 (ja) 1988-07-06 1997-09-10 株式会社アイジー技術研究所 化粧面形成装置
US5020410A (en) * 1988-11-24 1991-06-04 Casio Computer Co., Ltd. Sound generation package and an electronic musical instrument connectable thereto
US5319151A (en) * 1988-12-29 1994-06-07 Casio Computer Co., Ltd. Data processing apparatus outputting waveform data in a certain interval
US5094136A (en) * 1989-01-06 1992-03-10 Yamaha Corporation Electronic musical instrument having plural different tone generators employing different tone generation techniques
JP2643405B2 (ja) 1989-01-18 1997-08-20 カシオ計算機株式会社 電子楽器
US5451710A (en) * 1989-06-02 1995-09-19 Yamaha Corporation Waveform synthesizing apparatus
JPH0383136A (ja) 1989-08-25 1991-04-09 Seiko Epson Corp 電子計算機
JPH04152393A (ja) 1990-10-16 1992-05-26 Casio Comput Co Ltd 楽音発生装置
JP2900082B2 (ja) 1990-10-25 1999-06-02 カシオ計算機株式会社 楽音発生装置
JP2680483B2 (ja) * 1991-05-02 1997-11-19 株式会社東芝 デジタル信号処理装置
JP2705395B2 (ja) * 1991-10-07 1998-01-28 ヤマハ株式会社 電子楽器
JP2743726B2 (ja) 1992-07-07 1998-04-22 ヤマハ株式会社 電子楽器
US5345035A (en) * 1992-07-10 1994-09-06 Yamaha Corporation Musical tone generating apparatus
JPH07146679A (ja) * 1992-11-13 1995-06-06 Internatl Business Mach Corp <Ibm> 音声データを変換する方法及びシステム
US5376752A (en) * 1993-02-10 1994-12-27 Korg, Inc. Open architecture music synthesizer with dynamic voice allocation
JP2678974B2 (ja) 1994-12-27 1997-11-19 カシオ計算機株式会社 楽音波形発生装置
JP2666762B2 (ja) 1995-03-11 1997-10-22 ヤマハ株式会社 電子楽器

Also Published As

Publication number Publication date
DE69632273T2 (de) 2005-04-21
CN1164727A (zh) 1997-11-12
EP0747877A2 (en) 1996-12-11
EP0747877A3 (de) 1997-01-22
EP0951009A1 (en) 1999-10-20
KR970002733A (ko) 1997-01-28
DE69614765D1 (de) 2001-10-04
DE69634271T2 (de) 2006-04-13
HK1004441A1 (en) 1998-11-27
JPH0954586A (ja) 1997-02-25
EP0747877B1 (en) 2001-08-29
EP0978821A1 (en) 2000-02-09
SG92777A1 (en) 2002-11-19
JP2998612B2 (ja) 2000-01-11
DE69632273D1 (de) 2004-05-27
USRE37367E1 (en) 2001-09-18
EP0978821B1 (en) 2004-04-21
SG45482A1 (en) 1998-01-16
US5714703A (en) 1998-02-03
CN1153187C (zh) 2004-06-09
DE69614765T2 (de) 2002-06-20
EP0951009B1 (en) 2005-01-26
DE69634271D1 (de) 2005-03-03
SG74104A1 (en) 2000-07-18

Similar Documents

Publication Publication Date Title
KR100306032B1 (ko) 악음발생장치
US5703310A (en) Automatic performance data processing system with judging CPU operation-capacity
US6066795A (en) Techniques of using computer keyboard as musical instrument keyboard
US6919502B1 (en) Musical tone generation apparatus installing extension board for expansion of tone colors and effects
JP2705395B2 (ja) 電子楽器
JP3223756B2 (ja) ミュージックシステムおよび電子楽器
JP3716710B2 (ja) 楽音発生装置
JP3152198B2 (ja) 楽音発生方法および楽音発生装置
JP4443658B2 (ja) 楽音発生装置、電子楽器、及び記録媒体
JP3104697B2 (ja) 楽音発生装置および楽音発生方法
JP3169003B2 (ja) 楽音発生装置
JP3246405B2 (ja) 楽音発生方法、楽音発生装置および楽音発生用プログラムを記録した記録媒体
JP2687810B2 (ja) 電子楽器
JPH1195751A (ja) マルチ音源用楽音信号生成方法、マルチ音源装置及びプログラムを記録した媒体
JP3257400B2 (ja) エフェクト装置
JPH09297579A (ja) 楽音合成装置
CN1192350C (zh) 乐器以及依演奏信息生成乐音的方法
JP2943492B2 (ja) 電子楽器
JP2004279750A (ja) 楽音発生装置および楽音発生プログラム
JP4492680B2 (ja) 楽音発生装置
JP2019168645A (ja) 楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器
JP3394300B2 (ja) 電子楽器
JPH05134671A (ja) 電子楽器
JPH07121180A (ja) 自動伴奏装置
JPH10326096A (ja) 楽音合成装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20100729

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee