본 발명은 복수의 악음생성처리를 효율적으로 혼재시킬 수 있는 악음파형 발생장치에 관한 것이다.
통상의 악기의 악음은 배음(倍音)의 주파수나 진폭이 항상 변동하고 악기에 의해서는 비정수차의 배음을 포함하는 등, 복잡한 배음구조를 가짐과 동시에, 각각 악기고유의 잡음성분 --- 예를 들면 피아노의 어택(sttack)시의 충격성잡음 등 ---을 가지고 있다. 이와 같은 배음과 잡음성분은 악기의 음색을 크게 특징짓고 있다.
이와 같은 악음을 전자악기로 리얼하게 재현하기 위해 또 종래없었던 새로운 감각의 음을 만들어내기 위해 각종의 악음생성처리가 전자악기에 이용되고 있다.
그들의 처리중에는 PCM 방식, 주파수변조방식, 위상변조방식, 배음가산방식등, 많은 방식이 있으며, 그것을 적당히 조합하여 이용하면 상술한 목적을 어느정도 완수할 수가 있다. 예를 들면 어택시는 통상, 상술한 잡음 이외에도 배음구조가 복잡하게 변동하므로, PCM 방식의 적당하고, 그후의 서스테인의 부분(정상부(定常部))은 PCM 방식을 이용하면 커다란 기억용량을 가지는 메모리가 필요하게 되므로 별도방식으로 교체하는 것이 생각된다.
그 1예로서 특개소 58-102296에서는 어택시의 악음파형을 PCM 방식, 그것이후를 주파수변조방식을 이용하여 악음을 생성하고 있다.
이하, 이 방식에 대해 설명한다.
지금, 압건이 있으면 압압건의 음높이에 대응한 수치데이터를 반복하여 누산하고, 그 음높이에 대응한 속도로 값이 변화하는 누산치를 얻는다. 그후, 이 누산치로 PCM 방식의 파형메모리에서 어택부의 파형데이터를 판독하고, 그것에 제1a도에 도시하는 어택부의 엔빌로프를 부여한다.
한편, 상술한 압압건의 음높이에 대응한 수치데이터와, 그 수치데이터를 반복하여 누산하고, 그 음높이에 대응한 속도로 변화하는 누산치 및 별도의 일정한 정수(定數)를 주파수 변조방식 턴제너레이터에 입력하고, 주파수 변조파형을 얻고 있다.
그후, 그 파형에 제1b도에 도시하는 엔빌로프를 부여하고 가산기로 상술한 PCM 방식에 의한 악음파형과 가산, 합성하고 제1c도에 도시한 바와 같이 악음의 어택부, 서스테인(정상)부, 릴리스(감쇠)부를 가지는 악음의 모든 파형신호를 작성한다.
상술한 실시예에 있어서 주파수변조방식으로서는 FM 방식이 이용된다. 이하로, FM 방식의 종래예에 대해 설명한다.
FM 방식의 제 1 종래예로서 USP 4,018,121호 공보등에 기재된 FM 방식에 기인하는 전자악기가 있다. 이 방식은 기본적으로는
e=A.sin{ωct+I(t) sin ωmt} ……………………………………………………(1)
이 되는 연산식에 의해 얻어지는 파형출력 e를 악음파형으로 하는 것이며, 반송파주파수 ωc와 그것을 변조하기 위한 변조주파수 ωm을 적당한 비율로 선택하고, 시간적으로 변화할 수 잇는 변조심도관수 I(t)를 설정하고, 또 마찬가지로 시간적으로 변화할수 있는 진폭계수 A를 설정함으로써 복잡한 배음특성을 가지고, 또한 시간적으로 그 배음특성이 변화할 수 있는 악음을 합성하는 것이 가능하며 실제의 악기의 악음에 가까운 악음을 생성할 수 있는 것의, 매우 개성적인 생성음 등도 얻는 것이 가능하다.
또, FM 방식을 개략한 제 2 의 종래방식으로서, 특공소 61-12279호 공보에 기재된 전자악기가 있다. 이 방식은 상기 (1)식의 sin 연산대신에 삼각파 연산을 이용하고,
e=A.T{α+I(t)T(θ)} ……………………………………………………(2)
이 되는 인 연산식에 의해 얻어지는 파형출력 e를 악음파형으로 하는 것이다. 여기서, T(θ)는 반송파 위상각 θ에 의해 생성되는 삼각파관수이다.
그리고, 반송파 위상각 α와 변조파 위상각 θ를 적당한 진행속도비로 진행하고, 또, 상기 제 1 의 종래예와 마찬가지로 변조탐도관수 T(t)와 진폭계수 A를 설정함에 따라 악음파형을 생성할 수 있다.
여기서, 피아노등의 실제의 악기의 악음에는 피치주파수에 기인하는 기본파성분외에 그 정수배의 복수의 주파수의 배음성분이 포함되고, 상당한 고차의 배음성분까지 존재한다. 또한, 비정수배의 배음성분이 포함되는 것도 있다. 그리고, 이들의 배음성분에 의해 풍부한 움질의 악음이 생성되고 있다. 또 실제의 악기의 악음에 있어서는 악음이 발음 개시하고 나서 서서히 감쇠해 가는 과정으로, 고차의 배음성분부터 차례로 그 진폭이 감소해지고, 최종적으로 피치주파수에 대응하는 단일정현파 성분만이 남는 경우가 있다. 또, 원래 단일정현파 성분밖에 포함하지 않은 악음도 존재한다. 또한, 피아노 등에 있어서는, 강하게 압건하면 많은 고차배음성분도 포함하는 딱딱한 느낌의 악음을 발생할 수 있고, 반대로, 매우 약하게 압건하면 거의 단일 정현파 성분밖에 포함하지 않은 부드러운 느낌의 악음을 발생시킬 수가 있다.
상술한 FM 방식의 제 1 종래예는 정현파에 의한 변조를 기본으로서 하기 때문에, 상기 (1)식에서 변조심도관수 I(t)의 값을 시간과 함께 0에 가깝게 함으로써 상기 실제의 악음의 경우와 마찬가지로 악음이 감쇠되어 단일정현파 성분만이 되어가는 과정, 혹은 단일정현파 성분만으로 이루어지는 악음의 생성을 실현할 수가 있다. 그러나, 상기 (1)식에서 생성되는 악음은 그 주파수성분이 저차의 (주파수의 낮음)배음성분에 집중하고 변조심도관수 I(t)를 큰 값으로 하여 변조를 깊게 걸어도 고차의 (주파수의 높음)배음성분이 잘 나타나지 않는다. 따라서, 상기 제 1 종래예에서는 실제의 악음과 같은 풍부한 음질의 악음을 생성할 수가 없고, 생성가능한 악음의 음질이 제한되어 버린다. 따라서, 예를 들면 바이올린의 기러기발에 가깝게 튕겼을때에 발생한다. 고차배음에 풍부한 훌륭한 지속음을 표현하기 위해 변조심도관수 I(t)의 값을 큰 값으로 제어할 수 있도록 해도, 생성할 수 있는 고차배음성분의 레벨에 제한이 없으며, 연주조작에 대응하는 것처럼 고차배음을 풍부하게 포함하는 악음을 생성시킬 수가 없다. 이 결과, 이와 같은 FM 방식의 제 1 종래예를 상술한 PCM 방식과 FM 방식을 교체하여 악음합성을 행하는 방식에 적용하여도 소망의 악음을 얻을 수 없다는 문제점을 가지고 있다.
이에 대하여, 상술한 (2)식에 기인하는 FM 방식의 제 2 종래예에서는 원래 대부분의 배음을 포함하는 삼각파에 의한 변조를 기본으로 하고 있기 때문에, 주파수 성분으로서 고차의 배음성분까지 명확하게 존재하는 악음을 용이하게 생성하는 것이 가능하다. 그러나, 반대로 상기 (2)식중에 단일정현파 성분의 항목을 포함하지 않기 때문에, 예를 들면 피아노의 고음부의 건반을 친후의 디케이(decay) 부분에 보여지듯이 악음이 감쇠되어 단일정현파 성분만이 되어가는 과정, 혹은 단일정현파 성분만으로 이루어지는 악음의 생성을 실현할 수가 없다. 따라서, 상술한 바와 같은 연주정보에 따라 변조심도관수 I(t)의 값을 작은 값(예를 들면 0)으로 제어할 수 있도록 하여도 단일정현파 성분만이 생성되도록 제어할 수 없고, 연주조작에 대응하여 단일정형파 성분만으로 이루어지는 부드러운 느낌의 악음을 생성시킬 수가 없다. 이 결과, 이와 같은 FM 방식의 제 2 종래예를 상술한 PCM 방식과 FM 방식을 교체하여 악음합성을 행하는 방식으로 적용하여도 역시 제 1 종래예와 마찬가지로 소망의 악음을 얻을 수 없다는 문제점을 가지고 있다.
상술한 악음생성방식은 악음의 어택부는 PCM 방식에 의한 생성파형을, 도 그것이후는 주파수 변조방식에 의한 생성파형을 이용하고, 어택에서의 시간경과에 따라 악음생성방식을 교체하는 것이다.
그렇지만, 일반적으로 다른 복수의 악음합성방식을 혼재시켜서 복수의 악음을 동시 발생할 수 있는 종래의 전자악기의 경우에서는 각각의 악음합성 방식은 미리 정해진 발음채널에 대응하여 시분할처리를 행하고 있는데 지나지 않는다. 이와 같이 각각의 악음생성방식은 각각 정해진 발음채널을 넘어 동작할 수는 없고, 예를 들면 PCM 방식이 8 발음 채널, 변조방식이 8 발음채널인 경우, 합계 16채널분(分)의 시스템을 가지면서 변조방식을 전혀 사용하지 않아도 PCM 방식은 8채널분밖에 사용할 수 없고 효율적이지 않다는 문제가 있다.
또, 전자악기로서 다른 악음생성방식을 다만 혼재시켰을 경우는 각각의 방식에 중복하는 부분을 가지기 때문에 회로구성이 복잡해지고, 그 만큼 코스트업은 피하기 힘들다. 예를 들면 상기 종래예에서는 양 방식에 공통인 부분은 압압건반의 음높이에 대응한 수치데이터를 얻는 회로 및 그 수치데이터를 누산하는 회로이며, 그것이외의 주파수 변조방식 턴제너레이터, PCM 파형메모리, 그밖의 각각의 악음파형에 엔빌로프르 부여하는 2개의 엔빌로프 발생회로와 승산기등, 전부 공통이 아닌 회로구성으로 되어 있다.
또한, 이와 같은 복수의 다른 악음생성방식을 혼재시키는 전자악기에 있어서, 악음생성방식이 PCM 방식과 상술한 FM 방식의 제 1 또는 제 2 종래예가 이용되고, 각각 다른 발음채널에 할당되었다 하면, 앞서 서술한 바와 같이 FM 방식의 제 1 종래예에서는 고차배음을 풍부하게 포함하는 악음을 발생시킬 수 없고, FM 방식의 제 2 종래예에서는 부드러운 느낌의 악음을 발생시킬 수가 없고, 결과로서 소망의 악음을 얻을 수 없다는 문제점도 생기게 된다.
본 발명은 상기 과제를 해결하려고 한 것이며, 복수의 다른 악음생성처리를 모든 발음채널수의 범위에서 임의로 할당할 수가 있으며, 또한 발생할 악음의 특성에 맞춰서 가장 적절한 악음생성처리를 이용하여 음질이 뛰어난 악음을 발생할 수 있는 악음파형 발생장치를 실현하는 것을 목적으로 한다.
즉, 본 발명의 한가지 측면에 의하면 각각 악음을 생성하는 처리로서 미리 기억되어 있는 파형데이터가 할당된 음높이에 대응하는 속도로 판독하여 악음파형으로서 출력하는 제 1 악음생성처리와 미리 정해진 알고리듬(algorithm)에 따라 소정의(비선형) 합성연산을 실행함으로써 할당된 음높이의 파형데이터를 악음파형으로서 출력하는 제 2 악음생성처리의 어딘가에 선택할 수 있는 시분할 처리발음 채널을 복수개 가지는 악음생성처리수단과, 악음의 음높이를 지정하는 음높이 지정수단과, 상기 각 발음채널마다 상기 제 1 과 제 2 의 악음생성처리중에서 소망의 악음생성처리를 지정하여 대응하는 처리지정데이터를 출력하는 처리지정수단과, 상기 음높이 지정수단으로 지정된 음높이를 상기 악음생성수단의 각 발음 채널에 할당하는 음높이 할당수단과, 상기 처리지정수단에서 출력된 처리지정데이터를 대응하는 상기 악음생성수단에서의 각 발음채널에 할당하는 처리할당수단을 가지는 악음파형 발생장치를 제공할 수가 있다.
이와 같은 구성에 의하면 이 2가지의 악음생성처리를 발음채널마다 발생하는 악음의 특성에 맞춰서 임의로 할당할 수가 있다. 특히, 배음구조가 보다 복잡하게 변경하기 때문에 비선형합성연산방식에서는 재현이 힘든 특성을 가지는 악음을 발생하는 발음채널에 대해서는 파형데이터 판독방식을 할당할 수가 있으며, 보다 음질이 뛰어난 악음의 발생이 가능하게 되는 이점이 있다.
또, 본 발명은 복수의 악음생성처리를 모든 발음채널수의 범위에서 임의로 할당할 수가 있으며, 또한 고차의 배음성분까지 존재하는 악음 및 단일정현파 성분 또는 단일여현파 성분만으로 이루어지는 악음 및 잡음이나 복잡하게 변동하는 배음을 수반하는 악음의 생성을 자재롭게 생성가능하게 하는 것을 목적으로 한다.
즉, 본 발명의 한가지 측면에 의하면, 각각 악음을 생성하는 처리로서 미리 기억되어 있는 파형데이터가 입력되는 연주정보에 의해 지정되는 음높이에 대응하는 속도로 판독하여 악음파형으로서 출력하는 제 1 악음생성처리와 반송신호에 변조신호를 상기 연주정보에 기인하는 임의의 혼합물로 혼합하고, 이 혼합출력을 소정의 관수 관계에 기인하여 변환하고 변조된 변조악음신호를 발생함과 동시에 상기 소정의 관수관계는 정현관수, 여현관수의 어느관계라도 좋고, 또한 상기 반송신호는 상기 혼합율이 소정의 혼합율이 되도록 제어된 경우에 상기 변조악음신호가 정현파 또는 여현파의 신호로 하는 제 2 악음생성처리의 어딘가에 선택할 수 있는 시분할처리 채널을 복수개 가지고, 각 채널마다 할당된 음높이와, 각 채널마다 할당된 처리지정데이터에 의해 선택된 악음생성처리에 기인하여 악음을 생성하는 악음생성수단과, 음높이를 지정하는 음높이 지정수단과, 상기 채널마다 상기 복수종류의 악음생성처리중에서 소망의 처리를 지정하여 대응하는 처리지정데이터를 출력하는 처리지정수단과, 상기 음높이 지정수단으로 지정된 음높이를 상기 악음생성수단의 각 채널에 할당하는 음높이 할당수단과, 상기 처리지정수단에서 출력된 처리지정데이터를 대응하는 각 채널에 할당하는 처리지정수단을 가지는 악음파형 발생장치를 제공할 수 있다.
이 구성에 의해, 변조악음신호의 주파수특성으로서 배음성분을 부가시킬 수 있으며, 실제의 악기의 악음에 가까운 악음을 생성할 수 있는 것외, 개성적인 합성음 등도 얻을 수가 있다. 특히, 소정의 관수관계로서 정현관수, 여현관수 이외의 관수관계를 설정함으로써, 출력되는 변조악음신호에 의해 많은 고차배음 성분을 포함하게 할 수가 있다. 그 한편, 변조악음신호는 반송신호에 대한 변조신호의 혼합율이 소정의 혼합율로 되도록 제어된 경우에 정현파 또는 여현파로 된다. 이것에 의해 혼합율을 상기 소정의 혼합율과 다른 혼합율과의 사이에서 변화시킴에 따라, 변조악음신호의 상태를 고차배음성분을 포함하는 상태와 단일주파수의 정현파성분 또는 여현파성분만을 포함하는 상태의 사이에서, 임의로 또한 연속적으로 제어할 수가 있다.
그리고, 연주자는 발음채널마다 상기 제 1 악음생성처리로 악음을 생성할지, 파형판독방법에 의한 제 2 악음생성처리로 악음을 생성하지를 임의로 선택할 수가 있으며, 이것에 기인하여 제어수단이 각각 다른 악음생성처리를 타이밍으로 선택하여 동작시킨다. 따라서, 발음채널의 효율적인 사용이 가능하게 된다.
이 경우, 특히 제 2 악음생성처리가 할당된 발음채널에 있어서 변조악음신호의 특성은 종래예의 주파수변조방식(FM 방식)과는 다르며, 상술한 바와 같이, 고차배음성분을 포함하는 상태와 단일주파수의 정현파성분 또는 여현파성분만을 포함하는 상태의 사이에서, 임의로 또한 연속적으로 변화할 수 있기 때문에 그 발음채널에 있어서 매우 복잡하고 또한 극적으로 변화할 수 있는 음색을 생성할 수가 있는 이점이 있다.
더구나 본 발명은 고차의 배음성분까지 존재하는 악음 및 단일정현파성분 및 단일여현파성분만으로 이루어지는 악음 및 잡음이나 복잡하게 변동하는 배음을 수반하는 악음의 합성을 자재롭게 생성가능하게 하는 것을 특징으로 한다.
즉, 본 발명의 한가지 측면에 의하면, 미리 기억되어 있는 파형데이터를 지정되는 음높이에 대응하는 속도로 판독하여 악음신호로서 출력하는 제 1 악음생성처리와, 반송신호에 변조신호를 임의의 혼합율로 혼합하고, 이 혼합출력을 소정의 관수관계에 기인하여 변환하고 변조된 변조악음신호를 발생함과 동시에, 상기 소정의 관수관계는 정현관수, 여현관수의 어느 관계라도 좋고, 또한 상기 반송신호는 상기 혼합율이 소정의 혼합율이 되도록 제어된 경우에 상기 변조악음신호가 정현파 또는 여현파의 신호로 하는 제 2 악음생성처리를 행하는 악음생성수단과, 발음개시지시에 기인하여, 상기 악음생성수단에서의 상기 제 1 악음생성처리에 의한 상기 악음신호의 발생 또는 상기 제 2 악음생성처리에 의한 상기 변조악음신호의 발생을 개시시키고, 이 양쪽의 악음신호를 시간적으로 변화할 수 있는 소정의 혼합특성으로 혼합하고, 혼합악음신호로서 출력하는 제어수단을 가지는 악음파형 발생장치를 제공할 수 있다.
이 구성에 의하면, 제 2 악음생성처리에 의해 생성되는 변조악음신호의 상태를 종래의 주파수변조방식과는 다르며, 고차배음성분을 포함하는 상태와 단일주파수의 정현파성분 또는 여현파성분만을 포함하는 상태의 사이에서 임의로 또한 연속적으로 제어할 수가 있다. 그리고, 본 발명에서는 자연악기등에 충실한 음색을 발생할 수 있는 PCM 악음신호와 상술한 바와 같이 복잡하며 또한 극적으로 변화할 수 있는 음색을 발생할 수 있는 변조악음신호가 임의의 혼합특성으로 혼합된 혼합악음신호를 생성할 수가 있으며, 고차의 배음성분까지 존재하는 악음, 단일 정현파성분 또는 단일여현파성분만으로 이루어지는 악음 및 잡음이나 복잡하게 변동하는 배음을 수반하는 악음등을 자재로 합성하는 것이 가능하게 된다.
다음은 도면을 참조하면서 본 발명은 전자건반 악기에 적용한 제 1 실시예에 대해 설명한다.
제 2 도는 제 1 실시예의 전체의 구성도이다.
우선, 연주모드선택입력부(3)는 특별히 도시하지 않은 연주모드선택 스위치를 가진다. 동 스위치는 단독 및 복수의 악음합성방식을 발음채널에 할당한 몇갠가의 연주모드에서 연주자가 소망하는 연주모드를 선택하기 위한 스위치이다.
다음은, 제어부(2)내의 CPU(중앙제어장치)는 특별히 도시하지 않은 ROM(Read Only Memory)에 기억되어 있는 프로그램에 따라 이 악기시 스템을 제어한다.
또, 제어부(2)는 일정한 주기로 주사를 행하고 건반부(1)의 압건, 이건(離鍵)정보를 넣는다. 압건이 있으면, 압건한 건반을 복수의 발음채널의 어딘가에 할당함과 동시에, 그 건반의 조작정보를 키코드 레지스터부(5)에 보낸다. 키코드레지스터부(5)는 제어부(2)에서 보내지는 건반의 조작정보에 기인하여 키코드를 일시 기억함과 동시에 키코드에 대응하는 피치데이터, 즉 메모리부(9)를 판독하는 보진폭(步進幅) 데이터를 발음채널수 만큼, 어드레스발생부(6)에 출력한다.
PCM 방식/변조방식 선택부(4)는 제어부(2)에서 보내져오는 악음합성방식의 선택정보에 기인하여, PCM 방식과 변조방식의 어딘가를 지시함과 동시에 후술할 정수배기를 작동시키기 위한 플래그를 출력한다.
다음은, 어드레스발생부(6)는 키코드레지스터부(5)에서 보내지는 피치데이터에 대응하는 보진폭의 누산치에 상당하는 어드레스신호 X를 출력한다(그 때문에 메모리부를 판독하는 보진속도는 압건된 건반의 음높이에 따라 변화한다). 이 어드레스신호 X는 메모리부(9)의 파형메모리의 어드레스를 판독하기 위해 이용되는 것외에 변조되기전의 본래위상각 데이터로서 변조부(7)에 입력한다.
다음은, 메모리부(9)는 PCM 방식으로 이용하는 악음파형데이터와 변조방식으로 이용하는 사인파데이터(사인테이블(sine table))등의 파형데이터를 미리 기억하고, 각각은 별도의 어드레스에서 판독된다.
변조부(7)는 변조방식의 악음합성을 행할때에 메모리부(9)의 사인파메모리를 판독하기 위한 어드레스신호를 변조하는 회로이다.
선택회로(8)는 게이트회로이며 PCM/변조방식 선택부(4)의 플래그가 「1」(PCM방식의 경우)일때는 어드레스발생부(6)의 어드레스신호 출력 X를 그대로 선택하고, 같은 플래그가 「0」(변조방식의 경우)일때는 변조부(7)에서 변조된 어드레스신호 X'를 선택한다. 선택회로(8) 가운데 어드레스의 정수부(整數部)에 해당하는 상위 어드레스 메모리부(9)에 입력한다. 또, 소수부에 해당하는 하위 어드레스는 보간부(10)에 입력하고, 여기서 정수부+소수부에 상당하는 어드레스의 파형데이터를 얻는다.
다음은, 이 보간부(10)에 대해 설명한다.
메모리부(9)의 파형데이터를 판독할 때, 압압건의 음높이에 따라서는 제3a도에 도시한 바와 같이 메모리부(9)에 인접하는 2개의 어드레스 n과 n+1의 중간부 n+a(단, 0<a<1)에 대응하는 파형의 진폭치 Xm(X1과 X2의 보간치로, X1을 X2를 연결하는 선상에 있다)을 필요로 하는 경우가 있다. 이 a가 상술한 어드레스의 소수부로 하위 어드레스에 상당하다.
이 Xm은 다음과 같이 하여 구한다.
제3b도는 보간부(10)의 원리구성도이다. 동 도면에 있어서, 어드레스 n, n+1에 각각 대응하는 진폭치 X1, X2를 일시기억하는 레지스터(10a, 10b)의 출력의 차(X2-X1)를 감산기(10c)로 구한후, 승산기(10d)에서 하위 어드레스값 a를 승산하여, a(X2-X1)을 얻는다. 그후, 그 값에 가산기(10e)로 어드레스 n의 진폭치 X1과 가산하여,
X1+a(X2-X1)=Xm……………………………………………………(3)
을 얻는다.
이와 같이 하여 보간부(10)에 의해 어드레스 n1, n2의 진폭치 X1, X2에서 어드레스(n+a)의 진폭치 Xm이 얻어진다. 또한, 하위 어드레스 a가 0일때는 보간은 행해지지 않고, 메모리부(9)에서의 파형데이터가 제3b도의 레지스터(10b), 가산기(10e)를 통하여 승산부(12)로 직접출력된다.
다음은, 상술한 바와 같이 얻어진 1채널분의 패형데이터는 승산기(12)에 있어서 엔빌로프발생부(11)에서의 엔빌로프신호와 승산된다. 그후, 누산부(13)에서 1샘플마다 모든 채널부의 파형데이터가 누산되고, 게다가 D/A변환기(14)에서 아나로그의 악음신호에 변환되어 오디오시스템으로 송출된다.
계속하여, 제 4 도를 이용하여, 발음채널에 할당되는 악음합성방식과 키코드의 관계에 대해 설명한다. 제 4 도는 1예로서 8음폴리포닉의 경우를 나타낸다.
우선, 연주모그, 1은 악음합성방식에 PCM 방식만을 이용하는 경우로, 제 2 도의 PCM 방식/변조방식 선택부(4)의 플래그는 항상 「1」이고, 제 4 도와 같이 압건한 8건반(키코드 K1, K2, K3, …, K8)의 8채널분 전부에 PCM 방식에 의한 악음파형데이터가 할당된다.
다음의 연주모드 2는 변조방식, 예를 들면 위상변조방식, 혹은 주파수방식등을 단독으로 이용하는 경우로, PCM 방식/변조방식 선택부(4)의 플래그는 항상 「0」이고, 제 4 도와 같이, 모드 1과 같이 압건한 8건반(키코드 K1M, K2, K3, …, K8)의 8채널분 전부에 변조방식에 의한 악음파형데이터가 할당된다.
다음의 연주모드 3은 본 발명이 특징하는 모드로 제어부(2)에서 출력되는 제어신호에 의해 PCM 방식/변조방식 선택부(4)가 출력하는 플래그가 발음채널마다 변경되고, PCM 방식과 변조방식이 4개의 발음채널마다 교체된다. 그리고, 발음채널 1-4 및 발음채널 5-8의 각각의 키코드(K1, K2, K3, K4)에 대하여 2개의 악음합성방식에서 발음이 행해지고, 각각에 있어서 4음폴리포닉의 발음이 행해진다. 이경우, 2개의 방식의 각 4개의 키코드(K1, K2, K3, K4)에 대응하는 각 악음에는 각각 달랐던 엔빌로프 E1, E2, E3, E4와 E1', E2', E3', E4'가 각각의 발음채널타이밍마다에 부여된다. 이 연주모드 3의 경우는 PCM 방식과 변조방식의 2개의 방식에 의해 합성된 악음이 청감상 동시에 발음되고, 단조롭지 않은 「두툼한」악음이 얻어진다.
다음은, PCM 방식, 변조방식의 양쪽에 공통하여 이용되는 어드레스발생부(6)의 동작에 대하여 설명한다.
본 실시에의 경우, 어드레스를 지정하여, 순차 메모리부(9)(제 2 도)의 파형데이터를 판독할 때, 어드레스의 보진폭을 압건한 건반의 키코드, 즉 음높이에 따라서 바꿀 필요가 있다. 이 보진폭을 바꾸는 것이 어드레스발생부(6)로, 제 5 도에 그 회로구성을 나타낸다.
제 5 도에 있어서, 가산기(20)와 시시각각 바뀌는 어드레스를 기억하는 커런트·어드레스·레지스터(22)가 누산기로서 동작한다. 피치레지스터(19)에는 키코드 레지스터(5)에서 송출된 보진폭데이터가 일시기억되고 있다. 이 보진폭데이터는 후술할 정수배기(定數倍器)(23)를 통하여 상술한 누산기에 넣고, 압압건의 음높이에 따른 보진폭으로 누산된다. 그 결과, 예를 들면 어느 음의 보진폭을 1로 하면, 1, 2, 3…이, 또 그 1옥타브 높은 음에 대해서는 2, 4, 6…와 같은 누산치열을 커런터·어드레스·레지스터(22)에서 순차출력한다. 이것이 메모리부(9)를 판독하는 어드레스신호 X이다. 이 어드레스신호 X는 PCM 방식의 경우는 메모리부(9)의 파형데이터를 판독하는 어드레스 데이터이지만, 변조방식의 경우는 변조되기전의 본래위상각데이터에 상당한다.
다음은 상술한 정수배기(23)에 대하여 설명한다.
PCM 방식의 경우, 메모리부(9)에는 어느 피치 주파수를 가지는 자연악기등의 악음파형 데이터가 샘플링주기로 기억되고 있다. 이것에 대하여 변조부(7)의 제1, 제 2 실시예로서 후술할 위상변조방식의 경우 및 같은 제 3 실시예로서 후술할 주파수변조방식의 경우는 합성되는 악음파형의 정도(精度)를 높이기 위해 메모리부(9)에 기억되는 어느 피치주파수(통상, 악음의 최저주파수)의 사인파데이터는 샘플링주기보다 미세한 주기(PCM 방식의 수분의 1 내지 십수분의 1정도)로 기억되고 있다. 그리고, 본 실시예에서는 PCM 방식과 변조방식을 혼재시켜서 게다가 병렬하여 발음시키기 위해 정수배기(23)를 작동시켜서 이 위상변조방식 혹은 주파수변조방식에 있어서 보진폭을 소정배로 하고 발음되는 악음파형을 음높이가 PCM 방식에 있어서의 경우와 같아지도록 하고 있다.
그리고, 이 정수배기(23)를 작동시키기 위해, 정수배플래그가 PCM 방식/변조방식·선택입력부(4)에서 출력된다. 이 정수배플래그는 악음합성방식을 지시하는 플래그와 같고, PCM 방식의 경우는 「1」, 변조방식의 경우는 「0」이며, 「1」의 경우(PCM 방식의 경우)에 정수배율은 1로, 「0」의 경우(변조방식의 경우)에 상술한 소정배율이 된다.
그런데, 메모리부(9)의 파형데이터에 기인하여 악음을 합성하는데는 파형데이터(사인파형도 포함하여)의 스타트·어드레스부터 판독하기 시작하여, 엔드·어드레스로 1회분 판독이 끝났다면, 다시 스타트·어드레스로 복귀한다-라는 것처럼 반복메모리를 판독한다. 이것은 루프재생이라는 동작으로, 그를 위해 스타트어드레스에서 엔드어드레스까지의 어드레스폭(이것을 루프폭이라 부른다)데이터를 루프폭 레지스터(15)에 미리 스토어해 둔다.
다음은, 이 루프재생의 동작을 설명한다.
비교회로(18)는 항상 가산기(20)의 출력의 커런트 어드레스 C가 엔드·어드레스·레지스터(17)에 세트한 엔드·어드레스 R에 같아졌던가, 혹은 그것을 넘었다던지를 조사하고 있다. 혹시 엔드어드레스 R에 같아질지, 혹은 그것을 넘었다면 감산기(21)로 현재의 커런트 어드레스 C에서 상술한 루프폭을 감산하고 커런트 어드레스 C가 스타트어드레스로 복귀한다.
이때, 보진폭의 차이에 따라서는 메모리부(9)(제 2 도)의 판독이 엔드어드레스에서 정확하게 끝나지 않는 경우가 있다. 예를 들면, 제6a도에서 도시하는 악음파형(본 실시예에서는 파형 1주기분을 루프재생하는 것으로 한다)을 스토어하고 있는 메모리부(9)에서 동파형을 제6a도에 도시하는 어드레스로 판독한다고 한다. 제 5 도의 피치레지스터(19)에서 출력되는 보진폭이 1 또는 의 경우는 제6b도 또는 제6c도와 같이, 커런트 어드레스 C의 8은 엔드어드레스 R의 8과 일치한다. 그 결과, 루프폭의 8이 감산기(21)에 있어서 가산기(20)의 출력 8에서 감산되고, 커런트 어드레스·레지스터(22)의 출력은 0이 된다. 이에 따라, 스타트어드레스 0으로 복귀하고, 전회와 같게 다시, 1, 2, 3,… 또는 2, 4, 6…으로 어드레스를 진행한다.
한편, 제6c도의 보진폭 3의 경우는 커런트 어드레스는 3, 6, 9로 증가하고, 엔드어드레스의 8을 넘는다. 이에 따라, 가산기(20)의 출력 9에서 루프폭의 8이 감산되고, 커런트 어드레스·레지스터(22)의 출력은 1이 된다. 따라서, 전회의 스타트어드레스의 어드레스 0이 아니고, 어드레스 1에서 루프재생이 시작되고, 그후, 보진폭 3에서 순자 4, 7, …으로 어드레스가 진행된다.
이와 같이 하여, 루프폭 레지스터(15)에서 정한 루프폭으로 반복재생되는 불연속점이 없는 파형이 얻어진다.
다음은, 이 어드레스신호 X가 변조부(7)에 있어서 어떻게 변경될지를 위상변조방식에 의한 제1 및 제 2 실시예와, 주파수 변조방식에 의한 제 3 실시예를 이용하여 차례로 설명한다.
우선, 변조부(7)의 제 1 실시예에 대해 설명한다.
이 실시예에서는 사인파데이터를 기억하고 있는 메모리부(9)(제 2 도)의 판독용의 어드레스신호 X를 변화시킴으로써, 사인파의 판독위상각이 변화하고, 여러가지의 파형이 얻어진다. 이 위상변조방식의 경우, 어드레스신호 X를 본래위상각데이터 X라 부르기로 한다.
처음으로, 본 실시예의 회로구성에 대하여 설명하기 전에 본 실시예의 동작원리에 대하여 설명한다.
제7g도는 본래위상각데이터 X와 후술할 제 8 도의 회로에 있어서 얻어지는 변경위상각데이터 X와의 관계를 나타낸다. 동도면에서 알 수 있듯이 본 실시예에서는 X와 X'와 꺽인선관수의 경사에 의해 관계되어 있다. 제7g도보다 동도면의 꺽인선의 경사를 0X<M 및 N-,X<N의 경우에 α, MX<N-M의 경우에 β로 하면,
α=(N/4)/M ……………………………………………………………(4)
β=(N/4)/(N/2-M) ……………………………………………………(5)
로 된다. 이들 양식에서,
1/α+1/β=2 ……………………………………………………………(6)
이 얻어진다. 여기서, N은 위상각의 2π 라디안(radian)(1주기)을 나타내고, M은 꺽인선의 경사의 절환점이다. 그리고, X=M일때, X'=N/4=π/2로 되며, 메모리부(9)(제 2 도)의 사인파데이터의 극대치가 액세스된다.
제7g도 보다 후술할 제 8 도의 회로에서는 본래위상각데이터 X에 대하여, 0X<M 및 N-MX<N의 경우에 α, MX<N-M의 경우에 β를 각각 승산하는 연산이 등가적으로 행해지는 것에서 변경위상각데이터 X' 가 얻어진다.
또한, 후술할 제 8 도의 회로에 있어서는,
β=α/2k……………………………………………………………………(7)
(단, k=0, 1, 2, …7)
로 되듯이 α 및 β가 결정되어 있으며, (6)식과 (7)식에서,
α=(1+2k)」/2 ……………………………………………………………(8)
β=(1+2-k)1/2 ……………………………………………………………(9)
가 얻어진다. (8)식 및 (9)식에서 후술할 제 8 도의 회로에서는 k를 미리 결정한 후,
0X<M 및 N-MX<N일 때,
X=αX
={(1+2k)/2}x
=2-1X+2k- 1X ……………………………………………………………(10)
M≤X<N-M일때,
X=βX
={(1+2-k)/2}
=2-1X+2-k-1X ……………………………………………………………(11)
에서 나타나게 되는 연산이 등가적으로 행해진다. 또한 (10)식 및 (11)식은 2진수의 비트시프트 연산으로 실행할 수 있으며, 후술할 제 8 도의 회로로 비트시프트 연산을 행하도록 구성되어 있다.
상술한 (10)식 및 (11)식의 연산을 등가적으로 행하기 위해 후술할 제 8 도의 회로에서는 이하에 나타나게 될 연산이 순차 실행된다.
① 본래위상각데이터 X의 최상위 비트 XMSB를 제외한 하위비트가 취출되고, 본래위상각데이터 X의 변화에 대하여 제7a도와 같은 N/2를 경계로 반복하는 데이터가 얻어진다.
②가 적당히 반전되고, 본래위상각데이터 X의 변화에 대하여 제7b도 및 제7c도와 같이 특성을 가지는 데이터및가 얻어진다.
③에 β,에 α가 승산되고, 본래위상각데이터 X의 변화에 대하여 제7d, 7e도와 같이 특성을 가지는 데이터및가 얻어진다.
④ N/4일 때가 선택되고,<N/4일때가 선택됨에 따라 본래위상각데이터 X의 변화에 대하여 제7f도와 같은 특성을 가지는 데이터가 얻어진다.
⑤ 0XM일때,가 선택되고, MX<N/2일때 (N/2-)이 되는 연산이 실행되고, N/2X<N-M일때 (+N/2)가 되는 연산이 실행되고, N-MXN일때 (N/2-)+N/2이 되는 연산이 실행된다.
이상의 ①-⑤의 연산에 의해, 후술한 제 8 도의 회로에 있어서, 상술한 (10)식 및 (11)식과 등가인 연산이 실행되고, 본래위상각데이터 X의 변화에 대하여 제7g도와 같이 꺽인선 특성을 가지는 변조위상각데이터 X'가 얻어진다.
다음은, 제 2 도의 변조부(7)의 구성으로서 상술한 ①-⑤의 연산동작을 실현하는 제 8 도의 회로예에 대하여 설명한다.
우선, 제 2 도의 어드레스부(6)에서 출력한 본래위상각데이터 X 가운데 최상위 비트 XMSB를 제외한 하위비트가 취출되고,가 얻어진다. 이것은 상술한 연산동작 ①에 대응한다.
다음은 이은 반전회로(31) 및 (34)에 입력한다. 여기서, 반전회로(31)의 R 단자에는 본래위상각데이터 X의 최상위 비트 XMSB를 인버터(30)에서 반전한 신호 XMSB가 입력되고, 한편, 반전회로(34)의 R단자에는 상술한 XMSB가 그대로 입력한다. 이에 따라, 반전회로(31)는 상기 XMSB가 「0」일때에 입력를 반전하여로 하여 출력하고, 「1」일때에 입력를 그대로로 하여 출력한다. 한편, 반전회로(34)는 상술한 XMSB가 「0」일때 입력를 그대로로 하여 출력하고, 「1」일때에 입력를 반전하여로 하여 출력한다. 이 결과, 제7b, 7c도와 같이 위상각데이터,가 얻어진다. 이상이 상술한 연산동작 ②에 대응한다.
이후, 위상데이터에 대하여 오른쪽 시프트회로(32)에 의해 k비트의 오른쪽 시프트연산이 행해지고, 2-k 가 연산된다. 그리고, 가산기(33)는 상기 오른쪽 시프트회로(32)의 출력 2-k 및 위상데이터의 각각 1비트 오른쪽 시프트한 후에 가산하고, 결과로서,
=β
={(1+2-k)/2}
=2-1 +2-k-1 …………………………………………………………(12)
을 얻는다. 한편, 위상데이터에 대하여 왼쪽시프트회로(35)에 의해 k비트의 왼쪽시프트연산이 행해지고, 2k 가 연산된다. 그리고 가산기(36)는 상기 왼쪽시프트회로(35)의 출력 2k 및 위상데이터의 각각을 1비트 오른쪽 시프트한 후에 가산하고, 결과로서,
=α
={(1+2k)/2}
=2-1 +2k-1 ………………………………………………………… (13)
을 얻는다. 여기서, 오른쪽 시프트회로(32) 및 왼쪽 시프트회로(35)에 있어서 시프트량을 결정하는 계수 k는 제 2 도의 제어부(2)에서 변조부(7)에 입력하는 3비트 제어데이터 S0-S2에 의해 부여된다.
다음은, 선택회로(37)는 가산기(33) 가 캐리아웃 C0를 출력할 때, 즉 N/4일 때만를 선택하고, 그 것이외일때는를 선택하도록 동작하고, 본래위상각데이터 X에 대하여 제7f도와 같이 특성을 가지는 위상데이터를 출력한다. 이상은 상술한 연산동작 ④에 대응한다.
다음의 반전회로(38)는 상기 선택회로(37)의 출력을 선택적으로 반전한다. 동회로는 XMSB를 인버터(30)에서 반전한 신호 XMSB와 가산기(33)의 캐리아웃 C0를 입력으로 하는 배타논리합(exclusive OR)회로(39)의 출력이 「1」로 될때에을 반전한다. 즉, XMSB와 캐리아웃 C0 가운데, 한쪽이 「1」이고, 한쪽이 「0」으로 되는 것은 MX<N/2 및 N-MXN의 범위이기 때문에, 이 범위에서는 배타논리합회로(39)의 출력이 「1」로 되며,가 반전된다. 0X<M 및 N/2X<N-M의 범위에서는 배타논리합회로(39)의 출력은 「0」으로 되며,가 그대로 출력된다.
그리고, 반전회로(38)에 출력에 배타논리합회로(39)의 출력이 상위비트로서 부가되고, 또한 상술한 최상위 비트 XMSB가 최상위 비트로서 부가됨에 따라, 최종적인 변조위상각데이터 X'가 얻어진다. 이 경우, 배타논리합회로(39)의 출력과 XMSB의 값은 0X<M에 있어서 (0,0),MX<N/2에 있어서 (1,0),N/2X<N-M에 있어서 (0,1),N-MXN에 있어서 (1,1)로 되기 때문에, 변조위상각데이터 X'의 값은 0X<N에 있어서 반전회로(38)의 출력값과 같아지며, MX<N/2에 있어서 반전회로(38)의 출력값에 N/4이 가산된 값으로 되며, N/2X<N-M에 있어서 반전회로(38)의 출력값에 N/2가 가산된 값으로 되며, N-MX에 있어서 반전회로(38)의 출력값에 3N/4가 가산된 값으로 되어 결과적으로 본래위상각데이터 X에 대하여 제7g도의 특성을 가지는 변조위상각데이터 X'가 얻어진다.
제9a도-제9e도는 제 8 도의 회로를 제 2 도의 변조부(7)로 하여 그것에 의해 얻어지는 변조위상각데이터 X'를 이용하여 메모리부(9)의 사인파데이터를 액세스함으로써 얻어지는 여러가지의 파형데이터를 나타낸다. 계수 k의 값이 증가함에 따라, 차츰차츰 사인파에서 톱니바퀴형상파로 접근하는 것을 알았다.
이상은, 제 8 도의 회로에 의해, 본래위상각데이터 X에 대하여 제7g도와 같이 꺽인선 특성을 가지는 변조위상각데이터 X'를 생성한 예이었으나, 그밖에도 예를 들면, 본래위상각데이터 X에 대하여 제10a도-제10g도에 도시되는 바와 같은 꺽인선 특성을 가지는 변조위상각데이터 X'를 생성하는 회로를 형성함으로써 동도면에 도시되는 것처럼 여러가지로 변조된 파형데이터를 얻을 수가 있다.
다음은 변조부(7)의 제 2 실시예에 대해 설명한다.
제11도는 상술한 제 1 실시예와는 별도의 위상변조방식에 기인하는 변조부(7)의 제 2 실시예의 구성을 나타내는 블록도이다.
동도면에 있어서, 어드레스발생부(6)(제 2 도)에서 출력한 어드레스신호 X에서, 사인파, 혹은 사인파와는 별도의 파형을 기억하는 파형 ROM(40)을 판독한다. 판독된 파형으로, 엔빌로프발생부(41)에서 출력한 엔빌로프를 승산기(42)로 승산한 후, 그 파형을 선택회로(43)에 입력한다. 선택회로(43)에는 그 밖에 어드레스신호 X가 직접 입력하고, 특별하게는 도시하지 않은 CPU에서 출력하는 제어신호로, 이 2개의 입력을 선택한다. 그후, 선택회로(43)의 출력에 정수배기(44)로 일정배율이 곱해지고, 제 2 도의 메모리부(9)의 판독의 보진폭이 PCM 경우의 보진폭의 수배 내지 십수배의 일정배수로 확대된다. 이와 같이 하여 얻어진 정수배기(44)의 출력이 제 2 도의 변조부(7)의 출력 X'가 된다. 또한, 정수배기(44)를 이용했기 때문에 제 2 도의 어드레스발생부(6)의 정수배기(23)(제 5 도 참조)는 생략된다.
제11도의 회로에서 어드레스신호를 직접 선택한 경우는 메모리부(9)의 사인테이블보다, 사인파가 판독된다. 또, 승산기(42)의 출력을 선택한 경우는, 보다 복잡한 파형을 얻을 수가 있다. 특히 이 경우, 파형 ROM(40)에 여러가지인 파형을 기억시킴으로써 출력 X'를 상술한 제 1 실시예의 경우보다 더욱 복잡한 신호로 할 수가 있으며, 제 2 도의 메모리부(9)에서 판독되는 파형데이터도 더욱 복잡한 특성으로 변조할 수가 있다.
다음은, 변조부(7)의 제 3 실시예에 대해 설명한다.
제12도는 주파수변조방식에 기인하는 변조부(7)의 제 3 실시예의 구성을 나타내는 블록도이다.
가산부(54) 및 승산부(50)로의 입력신호 ωmt는 어드레스발생부(6)(제 2 도)의 어드레스신호 X에 상당하고 압압건의 음높이에 대응한 보진폭으로 값이 변화하는 누산치이다. 이 누산치는 0→2π 라디안의 위상변화를 반복한다. 이 ωmt는 승산부(50)에서 일정치 ωct/ωc와 승산되고, 얻게된 ωct를 어드레스신호로서 사인테이블(51)을 액세스한다. 또한, 그 출력신호 sinωct에 승산부(52)에서 제어신호에 기인하여 변조지수발생부(53)에서 발생한 변조지수 I(t)가 승산되어 I(t) sin ωct가 얻어진다.
다음은, 가산부(44)에서, ωmt와 I(t)sin ωct가 가산되어 ωmt+I(t) sin ωm(t)가 얻어진다. 그후, 가산부(54)의 출력에 제11도 44와 같은 정수배기(55)에서 일정배율이 곱해지고, 제 2 도의 메모리부(9)의 판독의 보진폭이 확대된다. 이와 같이 하여 얻어진 정수배기(55)의 출력이 제 2 도의 변조부(7)의 출력 X'가 된다. 또한, 정수배기(55)를 이용했으므로, 제 2 도의 어드레스발생부(6)의 정수배기(23)(제 5 도 참조)는 생략된다.
이상으로 나타낸 제 2 도의 실시예 전체의 동작을 정리하면 다음과 같이 된다.
우선, 연주가가 제 4 도에 도시하는 연주모드를 선택하고, 압압건조작하면 제어부(2)에서 출력되는 악음합성방식선택용의 제어신호에 의해 PCM방식/변조방식·선택부(4)에서 PCM 방식의 경우는 플래그 「1」이 변조방식의 경우는 플래그 「0」이 출력된다. 이 플래그에 의해 메모리부(9) 및 선택회로(8)의 각각의 선택동작이 행해진다. 즉, 상술한 플래그가 「1」이고, 메모리부(9)의 어드레스의 최상위 비트(MSB)가 「1」로 되었을 때는 PCM 방식에 이용되는 악음파형데이터가 당해 최상위비트 「1」에 대응하는 어드레스영역에서 판독되고, 플래그가 「0」일때에는 변조방식에 이용하는 사인파데이터가 당해 최상위비트 「0」에 대응하는 어드레스 영역에서 판독된다. 그리고, 압압건의 음높이에 따른 키정보에 기인하여 어드레스 발생부(6)에서 압압건의 음높이에 대응하는 보진폭을 가지는 어드레스신호 X가 출력된다. PCM 방식의 경우는 이 어드레스신호 X에 의해 선택회로(8)를 통하여 메모리부(8)의 악음파형데이터를 직접 판독한다. 한편, 변조방식의 경우는 이 어드레스신호 X가 변조부(7)에 입력하고 그 출력 X'에 의해 선택회로(8)를 통하여 메모리부(9)의 사인파데이터를 변조하면서 판독한다.
이상의 악음합성방식의 선택동작은 연주모드선택정보에 기인하여, 연주조작되는 키에 대응하는 발음 채널 타이밍마다 행해진다.
선택회로(8)의 출력은 그 어드레스신호의 정수에 해당하는 상위비트가 메모리부(9)에, 소수부에 해당하는 하위비트가 보간부(10)에 보내지고, 보간부(10)에서 상술한 보간동작이 행해지고, 승산부(12), 누산부(13)에서 D/A 변환기(14)를 통하여 오디오시스템에서 방음된다.
이상으로 나타낸 제1-3실시예에서는 PCM 방식과 변조방식에 의한 악음합성방식을 조합한 예에 대하여 나타냈지만, 그 밖에도 여러가지인 악음합성방식을 조합한 발음채널마다 발음시키는 것이 가능하다.
다음은 본 발명의 제 4 실시예를 설명한다.
본 실시예는 PCM 방식과 변조방식의 악음파형발생방식을 조합한 악음파형발생장치이며, 특히, 변조방식으로서 종래의 FM 방식과는 다른 방식을 이용한 것이다. 거기서, 본 실시예의 구체적인 구성에 대하여 설명하기 전에, 우선 본 실시예에 이용하는 변조방식에 의한 악음파형발생방식에 대해 설명한다.
제13도는 본 발명의 기본으로 되는 변조방식에 의한 악음파형발생장치의 실시예의 구성도이다.
그 값이 0-2π[rad]의 사이에서 순차선형으로 증가하는 반송파위상각 ωmt는 반송파 ROM(101)의 어드레스로 되어 반송신호 WC를 판독시킨다. 여기서, 반송파위상각 ωmt는 각 속도 WC[rad/sec]에 시간 t[sec]를 곱한 값이지만, 이후, 특히 언급하지 않은 한은 「ct」를 정리하여 첨자로 나타내는 것으로 한다.
상기 반송신호 WC는 가산기(이하, ADD라 부른다)(102)로 외부에서 입력하는 변조신호 WM과 가산되고, 그 가산파 WC+WM[rad]는 다시 디코더(103)에서 디코드되어 디코드출력 D를 얻는다.
상기 변조신호 WM과 상기 반송신호 WC는 가산기(이하, ADD라 부른다)(102)에서 가산되고, 그 가산파형 WC+WM[rad]는 다시 디코더(103)에서 디코드되어 디코드출력 D를 얻는다.
그리고, 디코드출력 D는 MUL(104)에서 진폭계수 A와 승산되고, 최종적인 파형출력 e가 얻어진다.
상기 구성의 악음파형발생장치에 있어서, 우선 반송파 ROM(101)에는 제14도에 도시하는 관수파형이 기억되어 있다. 지금, π를 원주율로 하고, 동도면 I, II 및 III의 각 영역에서의 반송파 위상각 ωmt[rad]와 반송신호 WC[rad]와의 관계는 각각,
WC=(π/2)sinωmt
…(영역 I : 0ωmt π/2)
WC=π-(π/2)sinωmt
…(영역 II : π/2ωmt 3π/2)
WC=2π+(π/2)sinωmt
…(영역 III : 3π/2ωmt 2π …………………………………………………(14)
로 된다.
상기 (14)식에 의해 연산되는 반송신호 WC및 외부에서의 변조신호 WM이 가산되고, 디코더(103)에 입력함으로써 디코더(103)에서 디코드출력 D가 출력되고, 다시 이것에 MUL(104)에서 진폭계수 A가 승산된 후의 파형출력 e는
e=A. TRI{(π/2)sinωmt+WM
…0ωmt π/2)
e=A. TRI{π-(π/2)sinωmt
…(π/2ωmt 3π/2)
…e=A. TRI{2π+(π/2)sinωmt+WM}
(3π/2ωmt 2π) ……………………………………………………………(15)
로 된다. 단 TRI(x)는 삼각파관수로서 정의된다.
여기서, 우선 변조신호 WM이 0 즉 무변조의 경우, 디코더(103)로의 입력파형은 상기 (14)식에서 정해지는 반송신호 WC그 자체로 된다. 즉,
e=A. TRI(WC) …………………………………………………………… (16)
이다. 또한, 반송신호 WC과 반송파위상각 ωct는 상기 (14)식 또는 제14도 보다 제15도의 관계 A로 나타나게 된다.
한편, 디코더(103)에 있어서 연산되는 삼각파관수 D=TRI(x)(단, x는 입력)는
D=TRI(x)=(2/π)x
…(영역 I : 0xπ/2)
D=TRI(x)=-1+(2/π)(3π/2-x)
…(영역 II : π/2x3π/2)
D=TRI(x)=-1+(2/π)(x-3π/2)
…(영역 III : 3π/2x2π)………………………………………………… (17)
로 정의되고, 제15도의 관계 B에 도시하는 관수이다.
제15도의 관계 A 및 관계 B에서 알 수 있듯이 디코더(103)로의 입력파형인 반송신호 WC와, 디코더(103)에서 연산되는 삼각파관수 D=TRI(x)는 상기 (14)식 또는 (17)식에서 정의되고 있는 각 영역 I, II 및 III에 있어서 단조증가관수로 되어 있으며, 따라서 상기 (14)삭에서의 입력인 반송파위상각 ωct와 상기 (17)식에서의 입력 x는 항상 같은 구간의 값을 얻게 되므로 상기 (14)식, (16)식 및 (17)식은 동일구간끼리 합성할 수 있다. 즉, 상기 (14)식 및 (17)식을 상기 (16)식에 대입하면,
e=A. TRI{(π/2)sin ωct}
=A. (2/π)(π/2) sin ωct
=A. sin ωct
…(영역 I : 0ωct π/2)
e=A. TRI{π-(π/2)sin ωct}
=A. {-1+(2/π)(3π/2-π)
+(π/2)sin ωct}
=A. sin ωct
…(영역 II : π/2ωct 3π/2)
e=A. TRI{2π+(π/2)sin ωct}
=A. {-1+(2/π)(2π+(π/2)sin ωct-3π/2)}
A. sin ωct
…(영역 III : 3π/2ωct 2π)……………………………………………… (18)
로 된다. 즉, 무변조시에는 반송파위상각 ωct의 어느 영역에 대해서도 고차배음을 전혀 포함하지 않은 단일정현파 A.sin ωct가 출력된다. 즉, 예를들면 진폭계수 A=1로 하면 무변조시의 반송파위상각 ωct와 파형출력 e와의 관계는 제15도의 관계 C와 같이 단일정현파로 된다.
이상의 관계에서, 악음이 감쇠되어 단일정현파 성분만이 되어가는 과정, 혹은 단일정현파 성분만으로 이루어지는 악음의 생성을 실현하기 위해서는 외부에서 입력하는 변조신호 WM을 시간과 함께 0에 가까우면 좋은 것을 알았다.
다음은, ADD(102)에서 반송신호 WC에 혼합되는 변조신호 WM의 혼합율을 증가시키고 있던 경우의 파형출력 e의 변화에 대해 생각한다. 상기 혼합율을 값 0에서 서서히 증가시켜가면, 제13도의 ADD(102)에서 출력되는 가산파형 WC+WM에는 반송신호 WC만의 성분에서 서서히 변조신호 WM의 성분이 중첩되어가기 때문에, 파형출력 e는 단일정현파에서 서서히 시간축상에서 비뚤어지고, 주파수축상에서는 고차의 배음성분을 많이 포함하도록 변화해간다. 이 경우, 디코더(103)에서의 변환관수는 본래 고차배음성분을 많이 포함하는 상기 (17)식 또는 제15(b)도에 도시하는 삼각파이기 때문에, 다시 이것을 변조한 경우, 주파수 특성에 있어서 10배음 이상의 고차의 배음성분도 풍부하게 포함되고, 변조신호 WM에 따라 복잡한 배음특성을 얻는 것이 가능하게 되어 있다. 또, 저차의 배음성분의 힘도 단순한 증감이 아니고, 상기 혼합율의 변화에 따라 복잡한 배음변화를 얻는 것이 가능하다. 그리고, 종래 기술의 항에서 설명한 상기 (1)식에 기인하는 FM방식에서는 11배음 이상의 고차의 배음성분을 표현하는 것은 곤란했지만, 본 실시예에서는 30배음 부근의 고차의 배음성분까지 표현하는 것이 가능하다.
이상의 사실에서, 제13도의 기본모듈 1로 변조신호 WM의 값을 변화시킴으로써, 실제의 악음의 경우와 마찬가지로, 악음이 감쇠하여 단일정현파 성분만이 되어가는 과정, 혹은 단일정현파성분만으로 이루어지는 악음을 생성할 수가 있음과 동시에, 주파수 성분으로서 고차의 배음성분까지 명확하게 존재하는 악음을 용이하게 생성하는 것이 가능하게 된다. 특히, 음정이 낮은 악음을 합성하는 경우, 즉 기본주파수(피치주파수)가 낮은 가청주파수범위에 많은 고차배음이 포함될 수 있도록 악음을 합성하는 경우에, 예를들면 전형적인 예로서 피아노의 저음키를 강하게 연주했을때의 수십초에 이르는 감쇠음은 30차 이상에 미치는 고차배음을 풍부하게 포함하고 있지만, 그와 같은 음을 합성하는 경우에 제13도의 악음파형발생장치는 매우 유효하다.
이상의 악음파형발생장치에서는 상기 (17)식 또는 제15도의 관계 B에 나타나는 특성을 가지는 디코더(103)에 대하여, 그 파형출력 e가 정현파로 되는 것처럼 상기 (14)식 또는 제14도 혹은 제15도의 관계 A에 도시한 바와 같은 반송신호 WC를 반송파 ROM(104)에 기억시킴으로써, 단일정현파의 생성을 가능하게 하고 있으나, 이것에 한해지는 것은 아니고, 디코더(103)로 단일정현파 이외의 원래의 배음성분을 포함하고 있는 관수의 연산을 행하게 하고, 이것에 대하여 그 디코드출력 D가 정현파로 되는 것처럼 관수를 반송파 ROM(101)에 기억시키는 것으로 같은 효과를 얻을 수가 있다. 제16a도-제16d도에, 디코더(4)에 연산되는 관수 및 반송파 ROM(101)에 기억되는 관수의 조합의 예를 나타낸다. 동 도면에 있어서, 반송파위상각 ωct와 반송신호 WC를 관계짓는 관수가 반송파 ROM(101)에 기억되고, 입력 x와 디코드 출력 D를 관계짓는 관수가 디코더(103)에서 연산된다. 이것에 의해, 변조신호 WM의 값을 0으로 한 경우에, 반송파 ROM(101)에서 출력되는 반송신호 WC가 디코더(103)로의 입력 x로서 입력됨에 따라 파형출력 e으로서 단일정현파를 출력시킬 수가 있다. 또, 제16a도-제16d도에 도시한 바와 같은 디코더(103)의 관수에 의해, 변조심도관수 I (t)의 값을 0이외로 하면 고차배음을 많이 포함한 파형출력 e를 얻는 것이 가능하게 된다.
상기 악음파형 발생장치를 기본구성으로 하는 후술할 본 발명의 구체적 실시예에서는 변조신호 WM으로 하여 1샘플링주기전의 파형출력 e 또는 PCM에 의한 악음파형을 ADD(102)에 입력시키는 것으로 디코더(103)로의 입력으로 하는 것으로, 보다 고차배음을 많이 포함하는 악음파형등을 합성할 수가 있다.
다음은, 상기 악음파형발생장치의 원리에 기인하고, 본 발명에 의한 전자악기의 구체적인 예를 설명한다.
제17도는 건반악기로서 실현되는 본 발명에 의한 전자건반악기의 전체적인 구성도이다. 본 실시예는 제13도의 악음파형발생장치의 구성을 기본으로 하여, 그것에 PCM에 의한 악음신호발생회로를 병용하고 있으나, 이하의 설명에서는 그때 그때 제13도 등을 참조하면서 설명한다.
본 실시예는 32폴로포닉의 악음발생장치이며, 내부의 각 회로는 각 샘플링 주기마다 32시분할로 동작한다.
콘트롤러(501)는 특별히는 도시하지 않은 스위치부(518)에 있어서 설정상태 및 건반부(517)에서 입력하는 키코드 KC 및 속도(velocity) VL의 각 데이터에 따라 캐리어주파수 CF 및 엔빌로프정보 ED, FA, PCM 스타트어드레스 ASP및 반송스타트어드레스 ASM을 생성 ·출력한다. 또, 콘트롤러(501)는 후술할 셀렉터(505)와 (510, 508) 및 (512)를 개폐제어하기 위한 셀렉터 제어신호 S0, S1및 S2를 출력하고, 다시, 위상데이터발생부(502), 엔빌로프제너레이터(513) 및 누산기(516) 등을 제어하기 위한 각 클록 ø1, ø2, øS1, øS2, øL, øR, CT와 팬제너레이터 PAN을 출력한다.
위상데이터발생부(502)는 콘트롤로(501)에서 세트된 캐리어주파수 CF에 기인하여, 그 주파수의 스텝폭씩 순차 증가해 가는 위상데이터 PH를 생성하고, 반송어드레스발생부(503) 및 PCM 어드레스발생부(504)에 공급한다.
반송어드레스발생부(503)는 위상데이터 PH에 기인하여 셀렉터(505)의 단자 B를 통하여 파형 ROM(506)의 반송신호영역을 액세스하기 위한 반송어드레스 ωCT(M)을 발생한다. 이 경우의 스타트어드레스는 콘트롤러(501)에서의 반송스타트어드레스 ASM에 의해 지정된다.
PCM어드레스발생부(504)는 위상데이터 PH에 기인하여 셀렉터(505)의 단자 A를 통하여 파형 ROM(506)의 PCM 신호영역을 액세스하기 위한 PCM어드레스 ωCT(P)를 발생한다. 이 경우의 스타트어드레스는 콘트롤러(501)에서의 PCM 스타트어드레스 ASP에 의해 지정된다.
셀렉터(505)는 셀렉터 제어신호 S0에 기인하여 단자 A에 입력하는 PCM어드레스 ωCT(P) 또는 단자 B에 입력하는 반송어드레스 ωCT(M)의 어딘가를 선택한다.
파형 ROM(506)은 반송어드레스 ωCT(M)에 의해 반송신호영역이 액세스된 경우에는 대응하는 반송신호 WC를 가산기(ADD, 이하 같음)(507)에 출력한다. PCM어드레스 ωCT(P)에 의해 PCM 신호영역이 액세스된 경우에는 대응할 PCM 신호 OP를 출력하여 셀렉터(510)의 단자A에 공급한다.
ADD(507)는 반송신호 WC에 셀렉터(508)를 통하여 변조신호 WM으로서 입력하는 딜레이출력 D 또는 D-1를 가산하여 가산파형 WC+WM을 출력하고, 그것을 삼각파 디코더(509)에 공급한다. 셀렉터(508)는 콘트롤러(501)에서의 셀렉터 제어신호 S1에 따라서 단자 A 에 입력하는 딜레이출력 D 또는 단자 B에 입력하는 딜레이출력 D-1의 어딘가를 선택한다.
삼각파 디코더(509)는 가산파형 WC+WM을 삼각파관수에 따라 변환하여 디코드출력 OM을 출력하고, 그것을 셀렉터(510)의 단자 B에 공급한다. 이 회로구성에 대해 후술한다.
셀렉터(510)는 셀렉터 제어신호 S0에 기인하여 단자 A에 입력하는 PCM 신호 OP또는 단자 B에 입력하는 디코드출력 OM을 선택하여 승산기(MUL, 이하 같음)(511)에 공급한다.
MUL(511)은 PCM 신호 PP또는 디코드출력 PM에 엔빌로프를 부가하기 위한 승산기이며, 상기 어딘가의 신호에 셀렉터(512)를 통하여 입력하는 엔빌로프 제너레이터(513)에서의 엔빌로프신호 E 또는 래치(515)에서의 변조신호 D-1의 어딘가를 승산함에 따라 PCM 신호 PP에 대응하는 PCM파형출력 eP또는 디코드출력 OM에 대응하는 변조파형출력 eM을 출력한다. 셀렉터(512)는 콘트롤러(501)에서의 셀렉터 제어신호 S2에 따라서 단자 A에 입력하는 엔빌로프신호 E 또는 단자 B에 입력하는 딜레이출력 D-1을 선택한다. 이것에 대응하여 엔빌로프 제너레이터(513)는 압건시에 콘트롤러(501)에서 출력되는 어드레스데이터 FA 및 설정데이터 ED에 기인하여 엔빌로프신호 E를 출력한다. 엔빌로프신호 E는 압건에서 어택타입 AT의 시간으로 이니셜레벨 IL에 도달하고, 그곳에서 디케이타임 DT의 시간으로 서스테인레벨 SL이 되며, 이건까지 그 레벨을 유지하고, 이건후에는 릴리스타임 RT의 시간에서 O레벨이 되어 소음같은 특성을 가진다. 그리고, 이때의 어택타임 AT, 이니셜레벨 IL, 디케이타임 DT, 서스테인레벨 SL 및 릴리스타임 RT의 각 데이터치가 압건개시시에 콘트롤러(501)에서 설정데이터 ED로서 설정된다. 각 데이터는 어드레스데이터 FA에 의해 식별된다.
다음은 제18도에 제17도의 삼각파 디코더(509)의 실시예를 나타낸다. 동 도면에 있어서, 11비트의 입력 A0-A10은 제17도의 가산파형 WC+WM에 대응하여 10비트의 출력 B0-B9는 제17도의 디코드출력 OM에 대응한다.
#9의 EOR(601)은 2개의 각 입력단자에는 제17도의 에더(adder)(508)에서의 10비트째 및 최상위 비트의 가산파형 A9 및 A10이 입력되고, 이 출력은 #0-#8의 EOR(601)의 각 제 1 입력단자에 입력한다. 또, #0-#8의 EOR(601)의 각 제 2 입력단자에는 0-8비트의 가산파형 A0-A8이 입력한다.
상기 #0-#8의 EOR(601)의 각 출력은 디코드출력 B0-B8로서 또, 최상위 비트의 가산파형 A10은 부호비트를 나타내는 최상위 비트의 디코드출력 B9로서 제17도의 승산기(510)에 출력된다.
상기 실시예의 동작을 이하에 설명한다.
지금, 가산파형 A0-A10에서 정해지는 값 Z가 시간경과에 정비례하여 순차 증가한다고 가정하고, 가산파형 A0-A10의 플렌지로 1주기분 즉 0-2π[rad]의 위상각을 지정할 수 있다고 한다. 그리고, 우선 제 1 경우로 하여 가산파형의 최상위 비트 A10과 10비트째 A9의 논리합 조합 (A10, A9)이 (0, 0)으로 될 경우는 가산파형 A0-A10에 나타내는 값이 0에서 플렌지의 4분의 1 즉 π/2[rad]까지 변화하는 경우이다. 그리고, 이 범위에서는 #9의 EOR(601)의 출력은 논리 0으로 되기 때문에 #0-#8의 EOR(601)에 입력하는 가산파형 A0-A8이 시간경과와 동시에 순차 증가함에 따라 그것과 매우 같은 파형이 하위 9비트의 디코드출력 B0-B8로서 나타낸다. 또한, 부호비트인 최상위 비트의 디코드출력 B9는 최상위 비트의 가산파형 A10에 같은 논리 0이며, 따라서, 상기 범위에서는 플러스의 디코드출력을 생성한다. 이것을 식으로 나타내면 상기 디코드출력 B0-B9에서 정해지는 값을 W로 하면,
W=Z 단, (0Zπ/2) ……………………………………………………… (19)
로 된다.
제 2 경우로서, (A10, A9)=(0,1)로 되는 경우는 가산파형 A0-A10에 나타내는 값이 π/2-π[rad]까지 변화하는 경우이다. 그리고, 이 범위에서는 #9의 EOR(601)의 출력은 논리 1로 되기 때문에, #0-#8의 EOR(601)에 입력하는 가산파형 A0-A8이 시간경과와 함께 순차 증가함에 따라, 그것과 전혀 반대의 관계로 순차 감소하는 파형이 하위 9비트의 디코드출력 B0-B8로서 출력된다. 한편, 부호 비트인 최상위 비트의 디코드출력 B9는 최상위 비트의 가산파형 A10에 같은 논리 0이며, 따라서, 상기 범위에서는 플러스의 디코드출력을 생성한다. 이것을 식으로 나타내면,
W=-Z+π 단, (π/2Zπ) ………………………………………………… (20)
로 된다.
제 3 경우로서, (A10, A9)=(1,0)으로 되는 경우는 가산파형 A0-A10에 나타내는 값이 π-3π/2[rad]까지 변화하는 경우이다. 그리고, 이 범위에서는 #9의 EOR(601)의 출력은 상기 제 2 경우와 마찬가지로 논리 1로 되기 때문에, #0-#8의 EOR(601)의 상태도 상기 제 2 경우와 마찬가지이고, 입력하는 가산파형 A0-A8이 시간경과와 동시에 순차 증가함에 따라, 그것과 전혀 반대의 관계로 순차 감소하는 파형이 하위 9비트의 디코드출력 B0-B8로서 출력된다. 한편, 부호비트인 최상위 비트의 디코드출력 B9는 최상위 비트의 가산파형 A10이 논리로 변화했기 때문에, 상기 범위에서는 마이너스의 디코드출력을 생성한다. 이것을 식으로 나타내면,
W=-Z+π 단, (πZ3π/2) ……………………………………………… (21)
로 된다.
제 4 경우로서 (A10, A9)=(1,1)로 되는 경우는 가산파형 A0-A10에 나타내는 값이 3π/2-2π[rad]까지 변화하는 경우이다. 그리고, 이 범위에서는 #9의 EOR(601)의 출력은 상기 제 1 경우와 마찬가지로 논리 0으로 되기 때문에, #0-#8의 EOR(601)의 상태도 상기 제 1 의 경우와 마찬가지이고, 입력하는 가산파형 A0-A8이 시간경과와 함께 순차 증가함에 따라, 그것과 매우 같은 파형이 하위 9비트의 디코드 출력 B0-B8로서 출력된다. 한편, 부호비트인 최상의 비트의 디코드출력 B9의 최상위 비트의 가산파형 A10이 논리 1이기 때문에, 상기 범위에 있어서는 마이너스의 디코드출력을 생성한다. 이것을 식으로 나타내면,
W=Z-2π 단, (3π/2Z2π) ……………………………………………… (22)
로 된다.
이상의 제1 -제 4의 경우에 대응하는 (19)-(22)식을 정리하면,
W=Z 단, (0Zπ/2)
W=Z+π 단, (π/2Z3π/2)
W=Z-2π 단, (3π/2Z2π) ……………………………………………… (23)
로 된다.
여기서, 제13도의 디코더(103)의 특성으로서 이미 나타낸 상기 (18)식을 변형하면,
D=(2/π)x
…(0xπ/2)
D=(2/π)(-x+π)
…(π/2x3π/2)
D=(2/π)(x-2π)
…(3π/2x2π) ……………………………………………………… (24)
로 된다. 상기 (24)식과 상기 (23)식을 비교하면 입력관계는 전체적인 게인이 2/π 다를뿐이고, 실질적으로 똑같은 관계이며, 따라서 제19도에 도시되는 제17도의 삼각파 디코더(509)는 상기 (18)식의 특성으로 나타나게 되는 제13도의 디코더(103)와 매우 같게 동작하는 것을 알았다.
지금까지의 구성에 있어서, 콘트롤러(501)에서 출력되는 셀렉터 제어신호 S0에 의해 셀렉터(505) 및 (510)의 각 단자 A가 선택된 경우, PCM 방식에 의한 악음합성이 행해진다. 즉, 위상데이터발생부(502)에서는 콘트롤러(501)에서의 캐리어주파수 CF에 대응한 반복주기로, 제20a도와 같이 위상데이터 PH가 발생된다. 그리고 이 위상데이터 PH와 콘트롤러(501)에서의 PCM 스타트어드레스 ASP에 의해, 제20b도와 같이 PCM 어드레스 ωCT(P)가 발생된다. 이 예의 경우, PCM 스타트어드레스 ASP는 1500H(H는 16진수를 나타낸다)이다. 이것에 의해, 제19도에 예시되는 파형 ROM(506)의 어드레스 1500H 부터 차례로 #1번의 PCM 호 OP가 제20c도와 같이 판독된다. 그리고 MUL(511)에서 PCM 신호 OP에 엔빌로프가 부가됨으로써 PCM 방식에 의한 악음합성이 행해진다.
한편, 콘트롤러(501)에서 출력되는 셀렉터제어신호 S0에 의해 셀렉터(505) 및 (510)의 각 단자 B가 선택된 경우, 제13도의 변조방식에 의한 악음합성이 행해진다. 즉, 위상데이터발생부(502)에서는 콘트롤러(501)에서의 캐리어주파수 CF에 대응한 반복주기로, 제21a도와 같이 위상데이터 PH가 발생된다. 그리고, 이 위상데이터 PH와 콘트롤러(501)에서의 반송스타트어드레스 ASM에 의해 제21b도와 같이 반송어드레스 ωCT(M)이 발생된다. 이 예의 경우, 반송스타트어드레스 ASM은 0000H이다. 이에 의해, 제19도에 예시되는 파형 ROM(506)의 어드레스 0000H부터 차례로 제14도의 특성을 가지는 반송신호 WC가 제21c도와 같은 반복판독된다. 이경우, 파형 ROM(506)은 제13도의 반송파 ROM(101)에 대응하고, ADD(507)은 제13도의 ADD(105)에 대응하고, 삼각파디코더(509)는 제13도의 디코더(103)에 대응하고 MUL(511)은 제13도의 MUL(104)에 대응하는 구성으로 되어, 제13도에서 설명한 변조방식에 의한 악음합성이 행해진다.
여기서, 제17도의 본 실시예의 회로전체는 건반부(517)의 압건조작에 기인하여 32음을 병열하여 발음가능하며, 그를 위해 본 실시예는 1악음발음 주기인 각 샘플링주기마다 32시분할로 동작한다. 즉, 위상데이터발생부(502)는 특별하게는 도시하지 않지만, 캐리어주파수 CF를 32발음채널분 유지하는 레지스터와, 그것에 기인하는 각 발음채널마다의 누산치를 유지하는 32스테이지의 시프트레지스터를 내장하고, 콘트롤러(501)에서 출력되는 클록 ø1, ø2에 따라서, 각 발음채널마다 독립되어 누산동작을 행하고, 각 발음채널에 대응하는 시분할 타이밍으로 그 발음채널에 대응하는 제20a도 도는 제21a도와 같이 위상데이터 PH를 출력한다. 마찬가지로, 엔빌로프제너레이터(513)도 어드레스데이터 FA와 설정데이터 ED를 32발음채널분 유지하는 레지스터와, 그것에 기인하는 각 발음타이밍(샘플링주기)마다의 엔빌로프 값을 유지하는 32스테이지의 시프트레지스터를 내장하고, 콘트롤러(501)에서 출력되는 클록 ø1, ø2에 따라서 각 발음채널마다 독립된 엔빌로프신호 E를 출력한다.
또, PCM어드레스발생부(504)도 PCM스타트어드레스 ASP를 32발음채널분 유지하는 레지스터와, 그것에 기인하는 각 발음타이밍마다의 PCM 어드레스 ωCT(P)의 누산치(제20b도 참조)를 유지하는 32스테이지의 시프트레지스트를 내장하고, 각 발음채널마다 독립된 PCM 어드레스 ωCT(P)를 발생한다. 다시, 반송어드레스발생부(503)는 각 발음채널마다의 위상데이터 PH를 소정의 계수로 계산하고, 이것에 고정된 반송어드레스 ASM을 가산한 데이터로서, 각 발음채널마다 제21b도와 같이 반송어드레스 ωCT(M)을 반복하는 회로로서 구성된다.
그리고, 콘트롤러(501)는 건반부(517)에 있어서 1회의 압건동작이 행해질때마다, 그 압건동작을 32채널의 발음채널가운데 1채널에 할당하여, 대응하는 캐리어주파수 CF를 위상데이터발생부(502)내의 레지스터에 출력함과 동시에, 대응하는 어드레스데이터 FA 및 설정데이터 ED를 엔빌로프제너레이터(513)내의 레지스터에 출력하고, 다시, 대응할 PCM스타트어드레스 ASP를 PCM어드레스발생부(504)의 레지스터에 출력한다. 또한, 반송어드레스발생부(503)에 출력되는 반송스타트어드레스 ASM은 고정치이다. 이것에 의해, 위상데이터발생부(502) 및 엔빌로프제너레이터(513)는 할당된 발음채널에 대응하는 시분할 타이밍으로 위상데이터 PH 및 엔빌로프 신호 E의 발생을 개시하고, 다시 그것에 기인하여 반송어드레스발생부(503) 및 PCM 어드레스발생부(504)가 반송어드레스 ωCT(M) 및 PCM 어드레스 ωCT(P)의 발생을 개시하여 그 발음채널에 있어서 악음합성이 개시된다.
이것과 함께, 콘트롤러(501)는 셀렉터제어신호 S0를, 각 발음채널마다 제어한다. 이에 의해, 각 발음채널마다 셀렉터(505)와 (510)의 접속상태가 변경되고, PCM 방식으로 악음합성을 행할지, 제13도의 원리구성에 기인하는 변조방식으로 악음합성을 행할지가 선택된다.
이상의 구성에 덧붙여, 제17도의 실시예는 PCM(파형출력 eP또는 변조파형출력 eM을 각 발음채널마다 1샘플링주기분(1데이터씩)유지하는 시프트레지스터(514)를 가진다. 이 시프트레지스터(514)는 콘트롤러(501)에서의 클록 ø1 및 ø2에 따라서, 데이터의 시프트동작을 행한다. 그리고, 시프트레지스터(514)에서의 딜레이출력 D는 셀렉터(508)의 단자 B를 통하여 변조신호 WM으로서 ADD(507)에 이력된다. 이에 따라, 임의의 발음채널에 두어 변조방식에 의한 악음합성이 행해지고 있는 경우에, 자발음채널의 1샘플링주기전의 변조파형출력 eM을 변조신호 WM으로서 변조를 걸 수가 있으며, 매우 깊게 변조가 걸린 변조파형출력 eM을 얻을 수가 있다.
상술한 동작의 구체적인 동작타이밍챠트의 예를 제22도에 도시한다. 동 도면은 우수번호의 발음채널로 PCM 방식에 의한 악음합성을 행하고, 기수번호의 발음채널로 변조방식에 의한 악음합성을 행하는 예이다.
위상데이터 PH, PCM 어드레스 ωCT(P), 반송어드레스 ωCT(M), 반송신호 WC, PCM 신호 OP, 가산파형 WC+WM, 디코드출력 OM, PCM 파형출력 eP변조파형출력 eM및 엔빌로프신호 E 는 각각 제22(a)도의 0-32의 각 시분할 타이밍에 있어서, 그 시분할 타이밍의 발음채널에 대응하는 각 데이터를 출력한다. 또, 시프트레지스터(514)에서는 제22(d)도와 같이, 제22(a)도의 0-32와 같은 시분할 타이밍으로 1샘플링주기전의 PCM 파형출력 eP(우수발음채널) 또는 변조파형출력 eM(기수발음채널)이 딜레이출력 D로서 출력된다. 제22(e)도의 래치(515)에서의 딜레이출력 D-1에 대해서는 이 예에서는 생각하지 않는다. 셀렉터 제어신호 S0은 제22(f)도와 같이 제22(a)도의 우수번호의 발음채널의 시분할 타이밍에서는 셀렉터(505) 및 (510)에 각 단자 A를 선택시키고, 기수번호의 발음채널의 시분할 타이밍에서는 각 단자 B를 선택시킨다. 또, 셀렉터 제어신호 S1은 제22(g)도와 같이, 셀렉터(508)에 단자(B)에 입력하는 딜레이출력 D를 항상 선택시킨다. 그리고, 셀렉터 제어신호 S2는 제22(h)도와 같이, 셀렉터(512)에 단자 A에서 입력하는 엔빌로프신호 E를 항상 선택시킨다. 위상데이터발생부(502), 엔빌로프제너레이터(513) 및 시프트레지스터(514)는 제22(b)도, 제22(c)도에 도시되는 클록 ø1, ø2에 따라서, 제22(a)도의 각 시분할 타이밍에 동기하여 동작한다.
이상의 동작타이밍으로 나타나게 되는 동작예에 의해, 제22(a)도의 우수번호의 발음채널에 있어서는 PCM 어드레스발생부(504)에서의 PCM 어드레스 ωCT(P)가 셀렉터(505)를 통하여 파형 ROM(506)에 입력한다. 그리고, 그곳에서 출력되는 PCM 신호 OP가 셀렉터(510)를 통하여 MUL(511)에 입력하고, 여기서 엔빌로프신호 E에 의한 엔빌로프가 부가되고, PCM 파형출력 eP가 얻어진다. 이것에 의해, PCM 방식에 의한 악음합성이 실행된다. 또, 제22(a)도의 기수번호의 발음채널에 있어서는 반송어드레스 발생부(503)에서의 반송어드레스 ωCT(M)이 셀렉터(505)를 통하여 파형 ROM(506)에 입력함으로써 반송신호 WC가 출력된다. 그리고, ADD(507)에 있어서 반송신호 WC에 자발음채널의 1샘플링주기전의 딜레이출력(변조파형출력 eM)가 변조신호 WM으로서 가산되고, 그것에 의해 얻어진 가산파형 WC+WM이 삼각파디코더(509)에 입력한다. 그리고, 삼각파디코더(509)에서의 디코더출력 OM이 셀렉터(510)를 통하여 MUL(511)에 입력하고, 여기서 엔빌로프 신호 E에 의한 엔빌로프가 부가되고, 변조파형 출력 eM이 얻어진다. 이것에 의해 변조방식에 의한 악음합성이 실행된다.
상술한 바와 같이 하여 얻어진 PCM 파형출력 eP또는 변조방식출력 eM은 시프트레지스터(514)에서의 딜레이출력 D로서 누산기(516)에 출력되고, 후술할 동작에 의해 좌채널출력 L과 우채널출력 R로 나뉘어지고, 각 D/A변환기(519) (L, R) 및 로우패스필터(low-pass filter ; 저주파통과필터)(LPF, 이하 같음)(520)(L, R)에서 아나로그악음신호로 변환된 후에, 각 앰프(521)(L, R)에서 증폭되고, 각 스피커(522)(L, R)에서 방음된다.
이어서, 제17도의 실시예는 상기 시프트레지스터(514)에서의 딜레이출력 D를 다시 1시분할타이밍만큼 유지하는 래치(515)를 가진다. 이 래치(515)는 콘트롤러(501)에서의 클록 ø1및 ø2에 따라서 1시분할타이밍분의 지연동작을 행한다. 그리고, 래치(515)에서의 딜레이 D-1은 셀렉터(508)의 단자 A를 통하여 변조신호 WM으로서 ADD(507)에 입력된다. 이것에 의해, 임의의 발음채널에 있어서 변조방식에 의한 악음합성이 행해지고 있는 경우에, 다른 발음채널의 1샘플링주기전의 변조파형출력 eM또는 PCM 파형출력 eP를 변조신호 WM으로서 변조를 걸 수가 있으며, 또한 효과적으로 변조에 걸린 변조파형출력 eM을 얻을 수가 있다. 특히, 파형 ROM(506)의 PCM신호영역에 정현파, 톱니형상파, 직사각형파 등의 여러가지의 관수파형을 기억해두고, 이들을 PCM 파형출력 eP로서 판독하고, 또한, 후술하는 바와같이, 그들의 관수파형이 누산기(516)에서 직접출력되지 않도록 제어하게 되며, PCM 파형출력 eP를 지연시킨 딜레이출력 D-1로서 여러가지 관수파형의 변조신호 WM을 부여할 수도 있다. 그리고, 이 경우의 변조신호 WM의 강도는 PCM 신호, OP에 대하여 MUL(511)에 있어서 부가되는 엔빌로프신호 E에 의해 제어할 수 있다.
또한 본 실시예에서는 콘트롤러(501)가 엔빌로프제너레이터(513)에서 압건개시이후의 엔빌로프의 제어상태를 나타내는 엔빌로프제어상태신호 ADSR을 채취함으로써, 임의의 발음채널에 놓고, 압건개시이후의 엔빌로프의 제어상태에 따라 셀렉터 제어신호 S0의 상태를 변화시킬 수가 있다. 이것에 의해, 예를 들면, 어택구간, 디케이구간, 서스틴구간 및 릴리스구간 등의 각각에 놓고, 악음합성방식을 변화시키는 것도 가능하다.
상술한 동작이 구체적인 동작타이밍챠트의 예를 제23도에 도시한다. 동 도면은 제22도와 같은, 우수번호의 발음채널에서 PCM 방식에 의한 악음합성을 행하고, 기수번호의 발음채널에서 변조방식에 의한 악음합성을 행하는 예이다.
여기서, 제23(a)도-제23(f)도 및 제23(h)도는 제22(a)도-제22(f)도 및 제22(h)도와 같다. 단, 본 동작예에 있어서는 제23(a)도의 31번의 발음채널에 대해 제17도의 콘트롤러(501)가 엔빌로프제너레이터(513)에서의 엔빌로프제어상태신호 ADSR을 채취하고 있다. 그리고, 콘트롤러(501)가 어택, 디케이, 서스틴 및 릴리스의 각 구간을 판별함으로써 제23(g)도와 같은 어택구간 A 및 릴리스구간 R에서는 셀렉터(508)가 단자 A에 입력하는 딜레이출력 D-1을 선택하도록 셀렉터제어신호 S1를 제어하고, 디케이구간 D 및 서스틴구간 S에서는 셀렉터(508)가 단자 B에 입력하는 디케이출력 D를 선택하도록 셀렉터제어신호 S1을 제어한다.
이상의 동작타이밍에서 나타나게 되는 동작예에 의해, 제23(a)도의 31번의 발음채널에 있어서는 어택구간 A 및 릴리스구간 R에서는 1샘플링주기전의 30번의 발음채널의 PCM파형출력 eP를 변조신호 WM으로서 변조방식에 의한 악음합성이 행해지고, 디케이구간 D 및 서스틴구간 S에서는 1샘플링주기전의 자발음채널의 변조파형출력 eM을 변조신호 WP으로서 변조방식에 의한 악음합성이 행해진다.
또한, 상술한 동작예의 그밖에도, 임의의 발음채널에 있어서 어택구간과 릴리스구간은 PCM 방식에 의한 악음합성을 행하고, 디케이구간과 서스틴구간은 변조방식에 의한 악음합성을 행하도록 설정하는 것도 용이하다.
제24a도-제24e도에 셀렉터제어신호 S0, S1, S2의 제어상태와 그것에 따라 제17도에서 실현되는 악음합성방식과의 관계를 나타낸다.
우선, 제24a도와 같이 S0이 셀렉터(505) 및 (510)에 각 단자 A를 항상 선택시키고, S1은 일정하지 않아도 좋고, S2가 셀렉터(512)에 대하여 단자 A에 입력하는 엔빌로프신호 E를 항상 선택시키도록 설정된 경우, PCM방식에 의한 악음합성이 행해진다.
다음은 제24b도와 같이, S0이 셀렉터(505) 및 (510)에 대하여 우수번호의 발음채널에서 각 단자 A를 선택시키고, 기수번호의 발음채널에서 각 단자 B를 선택시키고, S1이 셀렉터(508)에 대하여 단자 A에 입력하는 딜레이출력 D를 항상 선택시키고, S2가 셀렉터(512)에 대하여 단자 A에 입력하는 엔빌로프신호 E를 항상 선택시키도록 설정된 경우, 1샘플링 주기전의 인접하는 발음채널의 PCM파형출력 eP(딜레이출력 D-1)를 변조신호 WM으로 하는 변조방식에 의한 악음합성이 행해진다. 이 경우, PCM파형출력 eP는 예를 들면 정현파, 톱니형상파, 직사각형파 등의 관계파형이다. 또, PCM파형출력 eP는 제17도의 누산기(516)에서 출력되지 않도록 제어된다(이 동작에 대해서는 후술한다).
또, 제24c도와 같이, S0이 셀렉터(505) 및 (510)에 대하여 각 단자 B를 항상 선택시키고, S1이 셀렉터(508)에 대하여 단자 B에 입력하는 딜레이출력 D를 항상 선택시키고, S2가 셀렉터(512)에 대하여 단자 A에 입력하는 엔빌로프신호 E를 항상 선택시키도록 설정된 경우, 1샘플링주기전의 자발음채널의 변조파형출력 eM(딜레이출력 D)을 변조신호 WM으로 하는 변조방식에 의한 악음합성이 행해진다.
다음은, 제24d도와 같이, S0이 셀렉터(505) 및 (510)에 대하여 우수번호의 발음채널에서 각 단자 A를 선택시키고, 기수번호의 발음채널에서 각 단자 B를 선택시키고, S1은 일정하지 않아 좋고, S2가 셀렉터(512)에 대하여 단자 B에 입력하는 딜레이출력 D-1을 항상 선택시키도록 설정된 경우, 1샘플링 주기전의 인접하는 발음채널의 PCM 파형출력 eP(딜레이출력 D-1)를 엔빌로프로 하는 링변조방식에 의한 악음합성이 행해진다.
이 경우, 제24b도의 경우와 같은, PCM 파형출력 eP는 제17도의 누산기(516)에서 출력되지 않도록 제어된다.
그리고, 제24d도와 같이, S0이 셀렉터(505) 및 (510)에 대하여 우수번호의 발음채널에서 각 단자 A를 선택시키고, 기수번호의 발음채널에서 각 단자 B를 선택시키고, S1이 셀렉터(508)에 대하여 단자 B에 입력하는 딜레이출력 D를 항상 선택시키고, S2가 셀렉터(512)에 대하여 단자 B에 입력하는 딜레이출력 D-1을 항상 선택시키도록 설정된 경우, 1샘플링주기전의 인접하는 발음채널의 PCM 파형출력 eP(딜레이출력 D-1)를 엔빌로프로 하고, 1샘플링주기전의 자발음채널의 변조파형출력 eM(딜레이출력 D)을 변조신호 WM으로 하는 링변조방식에 의한 악음합성이 행해진다. 이 경우도 PCM 파형출력 eP는 제17도의 누산기(516)에서 출력되지 않도록 제어된다.
이상과 같이, 본 실시예에서는 여러가지인 악음합성방식을 발음채널마다 자유롭게 혼재시키는 것이 가능하게 된다.
다음은, 제17도의 누산기(516)의 구성을 제25a도, 제25b도에 도시한다. 그 가운데 제25a도는 제17도의 딜레이출력 D로 얻어지는 악음파형을 좌채널출력 L과 우채널출력 R로 나누는 회로부분이며, 제25b도는 제25a도의 셀렉터(131)의 개폐제어를 행하는 셀렉터제어신호 SWO를 제17도의 콘트롤러(501)에서 입력하는 팬제너데이터 PAN 및 클록 CT에 기인하여 생성하는 디코더회로이다.
제25a도의 누산기(516)의 동작에 있어서는 각 샘플링주기내의 32발음채널에 대응하는 32의 각 시분할 구간은 후술하는 바와 같이, 클록 CT가 로우레벨로 되는 전반분의 좌채널처리구간과, 클록 CT가 하이레벨로 되는 후반분의 우채널처리구간으로 분할되고, ADD(302)와 직렬 2단의 래치(1303) 및 (1304)에 의해 좌우채널별로 누산동작이 행해진다.
즉, 각 시분할 구간에 있어서 입력하는 각 발음채널의 딜레이출력 D는 셀렉터(1301)가 그 시분할 구간내의 좌채널처리구간에서 온으로 되었던 경우는 ADD(1302)에 있어서 래치(1303)에서 출력된 좌채널누산치에 누산된다. 한편, 셀렉터(1301)가 그 시분할 구간내의 우채널처리구간에서 온으로 되었을 경우는, ADD(1302)에 있어서 래치(1303)에서 출력되는 우채널누산치에 누산된다. 또, 셀렉터(1301)가 그 시분할 구간내의 전구간에서 온으로 되었을 경우는 ADD(1302)에 있어서 래치(1303)에서 계속하여 출력되는 좌채널누산치 및 우채널누산치의 각각에 누산된다. 또한, 셀렉터(1301)가 그 시분할 구간에서는 온이 되지 않을 경우는 그 발음채널의 딜레이출력 D는 제17도의 누산기(516)에는 입력하지 않고, 상술한 바와 같이 셀렉터(508)의 단자 B를 통하여 변조신호 WM으로서만 사용된다.
그리고, 좌채널누산치는 각 샘플링주기의 최후의 32발음채널째의 시분할 구간의 좌채널처리구간에 있어서 ADD(1302)에서 필요에 따라 32발음채널째의 딜레이출력 D가 누산된후, 좌채널출력용 래치(1305)에 래치되고, 좌채널출력 L로서 출력된다. 또, 우채널누산치는 같은 32발음채널째의 시분할 구간의 우채널처리구간에 있어서 ADD(1302)에서 필요에 따라 32발음채널째의 딜레이출력 D가 누산된후, 우채널출력용 래치(1306)에 래치되고, 우채널출력 R로서 출력된다.
여기서, 제25a도의 래치(1303) 및 (1304)는 제17도의 콘트롤러(501)에서의 클록 øS1및 øS2에 의해 동작하고, 좌채널출력용래치(1305) 및 우채널출력용래치(1306)는 콘트롤러(501)에서의 클록 øL및 øR에 의해 동작한다.
또, 제25a도의 셀렉터(1301)는 제25도의 디코더부에서의 셀렉터 제어신호 SWO에 의해 개폐제어된다.
제25b도에 있어서, 제17도의 콘트롤러(501)에서의 팬제어데이터 PAN은 2비트의 데이터 PAN0과 PAN1로 부터 이루어지며, 32의 발음채널에 대응하는 32의 각 시분할 구간마다 소정의 데이터의 조가 설정된다. 그리고, AND 회로(1310)에는 팬제어데이터 PAN0, PAN1 및 클록 CT의 각각을 각 인버터(1307, 1308) 및 (1309)로 반전한 신호가 입력된다. AND 회로(1311)에는 팬제어데이터 PAN0과 클록 CT가 입력되고 팬제어데이터 PAN1을 인버터(1308)로 반전한 신호가 입력된다. 다시, AND 회로(1312)에는 팬제어데이터 PAN0을 인버터(1307)로 반전한 신호와 팬제어데이터 PAN1이 입력된다. 그리고, AND 회로(1310, 1311) 및 (1312)의 각 출력은 OR 회로(1313)에 입력하고, 그 출력으로서 셀렉터 제어신호 SWO이 얻어진다.
지금, 어느 발음채널의 딜레이출력 D를 좌채널출력 L로서 출력시키고 싶은 경우에는 그 발음채널에 대응하는 시분할 구간에서, PAN=0, PAN=1이 설정된다. 이것에 의해, 그 시분할 구간내의 클록 CT가 로우레벨로 되는 전반분의 좌채널처리구간에 있어서, AND회로(1310)의 출력이 하이레벨로 되어 OR회로(1313)의 출력인 셀렉터제어신호 SWO이 하이레벨로 된다. 이것에 의해, 그 시분할 구간내의 좌채널처리구간에 있어서, 제25a도의 셀렉터(1310)가 온으로 된다.
한편, 어느 발음채널의 딜레이출력 D를 우채널출력 R로서 출력시키고 싶은 경우는 그 발음채널에 대응하는 시분할 구간에서 PAN=0, PAN=1이 설정된다. 이것에 의해, 그 시분할 구간내의 클록 CT가 하이레벨로 되는 후반분의 우채널처리구간에 있어서 AND회로(1311)의 출력이 하이레벨로 되어 OR회로(1313)의 출력인 셀렉터제어신호 SWO이 하이레벨로 된다. 이것에 의해, 그 시분할 구간내의 우채널처리구간에 있어서, 제25a도의 셀렉터(1310)가 온으로 된다.
또, 어느 발음채널의 딜레이출력 D를 좌채널출력 L 및 우채널출력 R의 양출력으로서 출력시키고 싶은 경우는 그 발음채널에 대응하는 시분할 구간에서 PAN0=0, PAN1=1이 설정된다. 이것에 의해, 클록 CT의 상태에 의하지 않고, 그 시분할 구간의 전 구간에 있어서, AND회로(1312)의 출력이 하이레벨로 되어 OR회로(1313)의 출력인 셀렉터제어신호 SWO이 하이레벨로 된다. 이것에 의해, 그 시분할 구간의 전구간에 있어서, 제25a도의 셀렉터(1301)가 온으로 된다.
또한, 어느 발음채널의 딜레이출력 D를 제17도 누산기(516)에 입력시키지 않고, 셀렉터(508)의 단자 B를 통하여 변조신호 WM으로서만 사용하고 싶은 경우는 그 발음채널에 대응하는 시분할 구간에서 PAN0=1, PAN1=1이 설정된다. 이것에 의해, 그 시분할 구간에서는 AND회로(1310, 1311) 및 (1312)의 아무거나 온으로 되지 않고, 셀렉터제어신호 SWO는 로우레벨인채로 된다. 이것에 의해, 그 시분할 구간에서는 제25a도의 셀렉터(1301)는 온이 되지 않는다.
이상, 제25a도 및 제25b의 구성의 누산기(516)의 구체적 동작예를 제26도의 동작타이밍 챠트에서 설명한다.
동 도면의 예에서는 30번 및 31번의 발음채널에 대응하는 시분할 구간에서는(동 도면 제26(f)도, 이하 같음), PAN0=0, PAN1=0이기 때문에(동 도면 제26(g)도, 제26(h)도, 이하 같음), 클록 CT(동 도면 제26(a)도, 이하 같음)가 로우레벨로 되는 좌채널처리구간에 있어서, 셀렉터제어신호 SWO(동 도면 제26(i)도, 이하 같음)이 하이레벨로 되며, 셀렉터(1301)가 온으로 된다. 그리고, 동 구간내의 클록 øS1(동 도면 제26(b)도, 이하 같음)의 어택의 타이밍으로, ADD(1302)에 있어서 래치(1303)에서 출력되는 좌채널누산치에 딜레이출력 D가 누산되고, 클록 øS2(동 도면 제26(c)도, 이하 같음)의 어택의 타이밍으로 래치(1304)에서 래치된다.
한편, 0번의 발음채널에 대응하는 시분할 구간에서는 PAN0=1, PAN1=0이기때문에, 클록 CT가 하이레벨로 되는 우채널처리구간에 있어서 셀렉터제어신호 SWO이 하이레벨로 되며, 셀렉터(1301)이 온으로 된다. 그리고 동 구간내의 클록 øS1의 어택의 타이밍으로, ADD(1302)에 있어서 래치(1303)에서 출력되는 우채널누산치에 딜레이출력 D가 누산되고, 클록 øS2의 어택의 타이밍으로 래치(1304)에 래치된다.
또, 1번의 발음채널에 대응하는 시분할 구간에서는 PAN=0, PAN1=1이기 때문에, 클록 CT의 상태에 의하지 않고, 좌채널처리구간 및 우채널처리구간에 있어서, 셀렉터제어신호 SWO이 하이레벨로 되며, 셀렉터(1301)가 온으로 된다. 그리고 좌채널처리구간내의 클록 øS1의 어택의 타이밍으로 ADD(1302)에 있어서, 래치(1303)에서 출력되는 좌채널누산치에 딜레이출력 D가 누산되고, 클록 øS2의 어택의 타이밍으로 래치(1304)에 채리되고, 계속하는 우채널처리구간내의 클록 øS1의 어택의 타이밍으로, ADD(1302)에 있어서 래치(1303)에서 계속해서 출력되는 우채널누산치에 딜레이출력 D가 누산되고 클록 øS2의 어택의 타이밍으로 래치(1304)에 계속해서 래치된다.
또한, 2번의 발음채널에 대응하는 시분할 구간에서는 PAN0=1, PAN1-1이기 때문에, 그 전구간에서 셀렉터 제어신호 SWO은 로우레벨로 되며, 셀렉터(1301)는, 오프인채로 된다. 이것에 의해 딜레이출력 D는 변조신호 WM(제17도)로서만 사용된다.
그리고, 샘플링주기 Tm-1의 31번(32번째)의 발음채널에 대응하는 시분할 구간의 클록 CT가 로우레벨로 되는 좌채널처리구간에 있어서, 동구간내의 클록 øS1의 어택의 타이밍으로 ADD(1302)에 있어서, 래치(1303)에서 출력되는 좌채널누산치에 셀렉터(1301)에서 입력하는 딜레이출력 D가 누산되고, 그 누산치가 클록 øL(제26(d)도, 이하 같음)의 어택의 타이밍회로 좌채널출력용래치(1305)에 래치되고, 좌채널출력 1(Tm-1)로서 출력된다. 이 출력치는 1샘플링주기의 사이, 좌채널출력용래치(1305)로 유지되고, 제17도의 D/A 변환기(519)(L) 및 LPF(520)(L)에서 아나로그 악음신호에 변환된 후에, 엠프(521)(L)에서 증폭되고, 스피커(522)(L)에서 방음된다.
같은 샘플링주기 Tm-1의 31번(32번째)의 발음채널에 대응하는 시분할 구간의 클록 CT가 하이레벨로 되는 우채널처리구간에 있어서, 동구간내의 클록 øS1의 어택의 타이밍으로, 우채널누산치가 래치(1303)에서 출력되고, 클록 øR(제26(e)도, 이하 같음)의 어택의 타이밍회로, 상기 누산치가 ADD(1302)를 통과하여 (이 예의 경우는 동 타이밍에서는 누산은 행해지지 않는다), 우채널출력용래치(1306)에 래치되고, 우채널출력 (R(Tm-1)로서 출력된다. 이 출력치는 1 샘플링주기의 사이, 우채널 출력용 래치(1306)로 유지되고, 제17도의 D/A 변환기(519)(R) 및 LPF(520)(R)에서 아나로그악음신호에 변환된 후에, 앰프(521)(R)에서 증폭되고, 스피커(522)(R)에서 방음된다.
상술한 출력동작은 다른 샘플링주기 Tm, Tm-1에 있어서도 마찬가지이다.
이상의 본 발명의 제 4 실시예에 있어서, 제17도의 파형 ROM(506)에는 제19도와 같이, 제14도의 특성을 가지는 1종류의 반송신호 WC만을 기억시키고, 또 제17도의 삼각파 디코더(509)를 제18도와 같이 하드웨어로 구성했지만 이것에 한해지는 것은 아니고, 파형 ROM(506)에 제16a도-제16d도의 우열과 같은 파형을 반송신호 WC로서 기억시키고, 그것에 대응하여 삼각파 디코더(509) 대신에 제16a도-제16d도의 좌열과 같은 파형을 기억하는 ROM 등을 형성하여 선택적으로 동작시켜도 좋다.
다음은, 본 발명의 제 5 실시예를 설명한다.
본 실시예는 PCM 방식과 변조방식의 악음파형발생방식을 조합한 악음파형발생장치이며, 특히, 변조방식으로서 종래의 FM 방식과는 다른 방식을 이용한 것이다. 거기서, 본 실시예의 구체적인 구성에 대해 설명하기전에, 우선 본 실시예에 이용하는 변조방식에 의한 악음파형발생방식에 대해 설명한다.
제26도는 본 실시예의 기본으로 되는 변조방식에 의한 악음파형발생장치의 구성도이다.
여기에 있어서, 반송파 ROM(601), ADD(602), 디코더(603) 및 MOL(604)은 제13도의 반송파 ROM(101), ADD(102), 디코더(103) 및 MOL(104)과 같은 구성이며, 설명을 생략한다.
제27도에 있어서는 변조파 ROM(605) 및 승산기(606)가 형성되고, 값이 0-2π[rad]의 사이에서 순차선형으로 증가하는 변조파 위상각 ωnt는 변조파 ROM(605)의 어드레스로 되고, 다시 이것에서 판독된 변조신호에 승산기(이하, MUL이라 부른다)(606)에서, 시간적으로 변화할 수 있는 변조심도 관수 I(t)[rad]가 승산됨에 따라 변조신호 WM이 얻어진다. 이 변조파위상각 ωmt도 각(角)속도 ωm[rad/sec]에 시간 t[sec]를 곱한 값이지만, 이후 특히 언급하지 않은 한은 「mt」를 정리하여 첨자로 나타내는 것으로 한다.
변조파 ROM(102)에는 통상의 sin 관수파형이 기억되고 있다. 따라서, MUL(103)을 통가한 후의 변조파 워상각 ωmt[rad]와 변조신호 WM[rad]와의 관계는
WM=I(t)sin ωmt………………………………………………………………… (25)
로 된다.
상기 (14) 식 및 (25)에 의해 연산되는 반송신호 WC및 변조신호 WM이 가산되고, 디코더(603)에 입력함에 따라, 디코더(603)에서 디코더출력 D가 출력되고, 또한 이것에 MUL(604)에서 진폭계수 A가 승산된 후의 파형출력 e는,
e=A. TRI[(π/2)sin ωct
+I(t)sin ωct]
…(0ωct π/2)
e=A. TRI[π-(π/2)sin ωct
+I(t)sin ωmt)}
…(π/2ωct 3π/2)
e=A. TRI[2π+(π/2)sin ωct
+I(t) sin ωmt]
…(3π/2ωct ωct2π) ……………………………………………………… (26)
으로 된다. 단, TRI(x)는 삼각파 관수로서 정의된다.
여기서, 우선, 변조심도관수 I(t)의 값이 0, 즉 무변조의 경우, 디코더(603)으로의 입력파형은 상기 (14)식에서 정해지는 반송신호 WC그 자체로 되며, (16)식과 같이 된다.
또한, 반송신호 WC와 반송파위상각 ωct는 상기 (14)식 또는 제14도 보다, 제15도의 관계 A로 나타내게 된다.
한편, 디코더(603)에 있어서 연산되는 삼각파관수 D=TRI(x)(단, x는 입력)도 상기 (17)식으로 정의되고, 제15도의 관계 B에 나타나는 관수이다.
따라서, 상기 (14)식, (16)식 및 (17)식에서 무변조시에는 반송파 위상 각 ωct의 어느 영역에 대해서도 고차배율은 전혀 포함되지 않은 단일정현파 A. sin ωct가 출력되는 것을 알았다. 즉, 예를 들면, 진폭수가 A=1로 하면, 무변조시의 반송파위상각 ωct와 파형출력 e와의 관계는 제15도의 관계 C와 같이 단일정현파로 된다.
이상의 관계에서 악음이 감쇠하여 단일 정현파성분만이 되어가는 과정, 혹은 단일정현파성분만으로부터 되는 악음의 생성을 실현하기 위해서는 상기 (26)식에서 변조심도관수 I(t)의 값을 시간과 함께 0에 가까우면 좋다는 것을 알았다.
다음은 변조심도관수 I(t)의 값을 증가시키고 있던 경우의 파형출력 e의 변화에 대해 생각한다. 변조심도관수 I(t)를 값 0에서 서서히 증가시켜 가면 제27도의 ADD(606)에서 출력되는 가산파형 WC+WM에는 반송신호 WC만의 성분에서 서서히 변조신호 WM의 성분이 중첩되어 가기때문, 파형출력 e는 단일정형파에서 서서히 시간축상에서 비뚤어지고, 주파수축상에서는 고차의 배율성분을 많이 포함하도록 변화해가고, 10배 음이상의 고차의 배율성분이 나타나게 된다. 또, 저차의 배음성분의 힘도 단순한 증감은 아니고, I(t)의 변화에 따라 복잡한 배음변화를 얻는 것이 가능하다. 「종래의 기술」의 항에서 나타낸 상기(1) 식에 기인하는 FM 방식의 제 1 종래예에서는, 예를들면 11배음이상의 고차의 배음성분을 표현하는 것은 곤란하지만, 본 실시예에서는 30배음부근의 배음성분까지 표현하는 것이 가능하게 된다.
이상의 사실로 제27도의 악음파형발생장치에서, 변조심도관수 I(t)의 값을 0-2π[rad] 정도의 사이에서 변화시킴으로써, 실제의 악음의 경우와 마찬가지로 악음이 감쇠하여 단일정현파성분만이 되어가는 과정, 혹은 단일정현파 성분만으로부터 되는 악음을 생성할 수가 있음과 동시에, 주파수성분으로서 고차의 배음성분까지 명확하게 존재하는 악음을 용이하게 생성하는 것이 가능하게 된다. 특히, 고음이 낮은 악음을 합성하는 경우, 즉 기본주파수(피치주파수)가 낮게 가청주파수 범위에 많은 고차배음이 포함될 수 있는 것 같은 악음, 예를 들면 전형적인 예로서, 피아노의 저음키를 강하게 연주했을때의 수십초에 이르는 감쇠음은 30차 이상에 미치는 고차배음을 풍부하게 포함하고 있으나, 그와 같은 음을 합성하는 경우에, 본 실시예에 의한 악음파형발생장치는 매우 유효하다.
이상의 악음파형 발생장치에 관한 실시예서는 상기 (17)식 또는 제15도의 관계 B에 나타나는 특성을 가지는 디코더(105)에 대하여, 그 파형출력 e가 정현파로 되는 것처럼 상기 (14)식 혹은 제14도 혹은 제15도의 관계 A에 도시한 바와 같은 반송신호 WC를 반송파 ROM(601)에 기억시킴으로써 단일정현파의 생성을 가능하게 하고 있으나, 이것에 한정되는 것은 아니고, 디코더(603)에서 단일정현파 이외의 본래 배음성분을 포함하고 있는 관수의 연산을 행하게 하고, 이것에 대하여 그 디코더출력 D가 정현파로 되는 것 같은 관수를 반송파 ROM(601)에 기억시키는 것으로 같은 효과를 얻을 수가 있다. 디코더(603)에서 연산되는 관수 및 반송파 ROM(101)에 기억되는 관수의 조합은 제16a도-제16d도와 마찬가지임을 나타낸다. 동 도면에 있어서, 반송파 위상각 ωct와 반송신호 WC를 관계짓는 관수가 반송파 ROM(601)에 기억되고, 입력 x와 디코더출력 D를 관계짓는 관수가 디코더(603)에서 연산된다. 이것에 의해, 제27도의 MUL(606)에 있어서 변조심도관수 I(t)의 값을 0으로 한 경우에 반송파 ROM(601)에서 출력되는 반송신호 WC가 디코더(603)로의 입력 x로서 입력됨에 따라, 파형출력 e로서 단일정현파를 출력시킬 수가 있다. 또, 제16a도-16d도에 도시한 바와 같은 디코더(603)의 관수에 의해, 변조심도관수 I(t)의 값을 0 이외로 하면 고차배율을 많이 포함한 파형출력 e를 얻는 것이 가능하게 된다.
또한, 상기 악음파형발생장치에 관한 실시예에서는 제27도의 변조파 ROM(605)에는 sin 관수를 기억시키고, 상기 (25)식에 기인하여 생성되는 변조신호 WM으로 변조를 행하고 있지만, 이것에 한정되는 것은 아니다. 예를 들면, PCM에 의한 악음 파형, 혹은 톱니형상파, 직사각형 등의 고차배율을 포함하는 파형등을 기억시키고, 이것을 디코더(603)로의 입력하는 것으로, 보다 고차배율을 많이 포함하는 악음파형 등을 합성할 수가 있다. 이들에 관한 실시예에 대해서는 후술한다.
다음은, 상기 악음파형발생장치의 원리에 기인하는 본 발명에 의한 전자악기의 구체적인 실시예를 설명한다.
제28도는 건방악기로서 실현되는 제 5 실시예로서의 전자건반악기의 전체적인 구성도이다. 본 실시예에서는 제27도의 악음파형발생장치의 구성을 기본으로 하여, 그것에 PCM에 의한 악음신호발생회로를 병용하고 있지만, 이하의 설명에서는 수시로 제27도 등을 참조하면서 설명한다.
콘트롤러(701)는 특별하게는 도시하지 않은 패러미터설정부에 있어서 설정상태 및 건반부(717)에서 입력하는 키코드 KC 및 속도 VL의 각 데이터에 따라, 캐리어주파수 CF, 모듈레이터(Modulator)주파수 MF, PCM신호발생회로(712)의 어드레스를 판독할때 압건되는 건방의 음높이에 대응하는 보진폭을 결정하는 피치데이터(이후, PCM 피치데이터라 간단하게 적는다) PD 및 나중에 상세히 서술할 엔빌로프정보 ED, FA를 생성 출력하는 수단이다.
에더(702, 704, 711)는 각 출력을 피가산단지 B에 피드백시키고, 가산단자 A에 캐리어주파수 CF, 모듈레이터주파수 MF, 또는 PCM피치데이터 PD를 입력시킴으로써, 당해 각 주파수의 스텝폭씩 순차증가해가는 10비트의 반송파워상각 ωct0-ωct10, 10비트의 변조파위상각 ωmt0-ωmt10, 또는 PCM신호발생회로(712)를 판독하는 어드레스 신호를 생성하기 위한 누산기이다.
여기서, 캐리어 주파수 CF 및 PCM 피치데이터 PD는 예를 들면 건반부(717)에서의 키코드 KC에 대응하는 주파수에 결정되고, 또, 모듈레이터주파수 MF는 예를 들면 캐리어주파수 CF에 대하여 미리 연주자가 설정한 바가 되도록 결정함으로써, 건반부(717)에서 조작한 건방에 대응하는 움높이의 악음파형이 발생된다. 또한 반송파위상각 ωct0-ωct10 및 변조파위상각 ωmt0-ωmt10은 각각, 제27도의 반송파위상각 ωct및 변조파위상각 ωmt에 대응한다. 또, 캐리어주파수 CF는 반송파위상각 ωct의 각속도 ωc에 모듈레이터주파수 MF는 변조파위상각 ωct의 각속도 ωm에 대응한다.
반송파위상각 ωct0-ωct10 및 변조파위 각각 ωmt0-ωmt10은, 각각 반송신호발생회로(703) 및 변조신호발생회로(705)에 각 어드레스신호로서 입력한다. 또한, 반송신호발생회로(703) 및 변조신호발생회로(705)는 각각 제27도의 반송파 ROM(601) 및 변조파 ROM(605)에 대응한다.
한편, 엔빌로프제너레이터(706)는 콘트롤러(701)에서의 어드레스데이터 FA 및 설정데이터 ED에 기인하여 단자 Ch1, Ch2, 및 Ch3에서 각각 11비트의 변조심도관수 E1, 10비트의 진폭계수 E2및 PCM 발생회로(712)에서 판독된 PCM 악음신호에 진폭엔빌로프를 부여하는 진폭계수 E3(단, 0≤E3≤1)를 출력한다. 또한, E1, E2는 각각 제 1 도의 변조심도 관수 I(t) 및 진폭계수 A에 대응하고, 동시에 건반부(717)에서의 키코드 KC 및 속도 VL의 각 값에 기인하여 시간적으로 변화할 수 있다.
변조심도관수 E1은 1이하의 값을 얻고, 승산기(707)의 단자 B에 입력하여 단자 A에 입력하는 변조신호발생회로(705)에서의 출력과 승산되고, 11비트의 번조신호 WC0-WC10을 출력한다. 여기서, 승산기(707)와 변조신호 WM0-WM10은 각각 제27도의 MUL(606) 및 변조신호 WM에 대응한다.
반송신호발생회로(703) 및 승산기(707)에서 출력되는 반송신호 WC0-WC10 및 변조신호 WM0-WM10은 각각 에더(708)의 단자 A 및 B에 입력하여 가산되고, 11비트의 가산파형 O0-O10을 출력한다. 또한, 에더(708) 및 가산파형 O0-O10은 각각, 제27도의 ADD(602)의 가산파형 WC+WM에 대응한다.
상기 가산파형 O0-O10은 삼각파디코더(709)의 어드레스신호로 되며, 10비트의 디코드출력 MA0-MA9를 출력시킨다. 여기서, 삼각파디코더(709) 및 디코드출력 MA0-MA9는 각각 제 1 도의 디코더(705) 및 디코드출력 D에 대응한다. 삼각파디코더(709)의 상세한 것은 제18도와 마찬가지이다.
상기 디코드출력 MA0-MA9는 다시 승산기(710)의 단자 A에 입력하고, 단자 B에 입력하는 10비트의 진폭계수 E2와 승산되어 진폭변조 되고, 변조에 의한 악음파형신호(이후, 변조악음신호라 간단하게 서술한다) eM으로 된다. 또한, 진폭계수 E2는 1이하의 값을 얻는다.
다음은 승산기(710)의 출력 eM은 에더(714)의 단자 A에 입력한다.
한편, PCM신호발생회로(712)에서 판독된 PCM악음신호는 승산기(713)의 단자 A에 입력하고, 단자 B에 입력하는 상술한 진폭계수 E3와 승산되어 진폭변조된다. 그후, 승산기(713)의 출력인 PCM악음신호 eP는 에더(714)의 단자 B에 입력하고, 단자 A에 입력한 승산기(710)의 출력인 변조악음신호 eM과 가산된다.
이와 같이 하여 생성된 디지탈악음신호는 D/A변환기(715) 및 로우패스휠터(716)에 있어서 아나로그악음신호에 변환되고, 특별하게는 도시하지 않은 사운드시스템에서 방음된다.
이상의 구성에 의해, 연주자에 따른 연주조작에 대응하여 콘트롤러(701)에서 출력되는 캐리어주파수 CF, 모듈레이터주파수 MF, PCM피치데이터 PD 및 에빌로프정보 ED를 제어함으로써, 연주자는 그 연주조작에 기인하여 음높이, 음량 및 음색 등이 제어된 악음을 출력하고, 방음시킬 수가 있다.
다음은, 제29도에 제28도의 반송신호발생회로(503)의 1예의 구성을 나타낸다.
#0-#9의 배타논리합회로(이하, EOR이라 부른다)(802)의 각 제 1 입력단자에는 제28도의 에더(702)에서의 최상위비트의 반송파위상각 ωct10이 입력되고, 또, 각 제 2 입력단자에는 0-9비트의 반송파위상각 ωct0-ωct9가 입력된다.
#0-#9의 EOR(802)의 출력 A0-A9는 1/2파반송파 ROM(801)의 각 어드레스신호로서 입력한다.
1/2반송파 ROM(801)의 ROM출력 D0-D9는 각각 #0-#9의 EOR(803)의 제 1 입력단자에 입력한다. 또, #0-#9의 EOR(803)의 제 2 입력단자에는 최상위비트의 반송파위상각 ωct10이 입력된다.
#0-#9의 EOR(603)이 각 출력 및 최상위비트의 반송파위상각 ωct10은 반송신호 WC0-WC10으로서 제28도의 에더(70B)에 출력된다.
상기 제29도의 회로의 동작은 제30a도-제30f도의 동작설명도에 기인하여 설명한다.
우선, 제29도의 1/2파반송파 ROM(801)에는 상기 제14도 또는 (14)식에서 설명한 반송신호 WC가운데, 1/2/주기분(0-π[rad]에 상당하는 파형이 기억되고 있다. 즉, 상기 (14)식에서, 제29도의 1/2파반송파 ROM(801)의 출력 D0-D9에서 정해지는 값을 Y1로 하면,
Y1=(π/2)sin ωct
…(0ωct π/2)
Y1=π-(π/2)sin ωct
…(π/2ωct π)
………………………………………………………………… (27)
이 되는 파형이 기억되고 있다. 또한, 여기서 말하는 반송파위상각 ωct와는, ωct0-ωct9에서 정해지는 값을 말한다.
한편, 제28도의 에더(702)에서 출력되는 반송파위상각 ωct0-ωct10은 최상위 비트 ωct10이 논리 0의 상태에서 하위 10비트 ωct0-ωct9의 플랜지에 의해 0-π[rad]의 위상각을 지정할 수 있고, 또한, 최상위 비트 ωct10이 논리 1의 상태에서 하위 10비트 ωct0-ωct9의 플랜지에 의해, π-2π[rad]의 위상각을 지정할 수 있다.
따라서, 지금, 제28도의 에더(702)에서 반송파위상각 ωct0-ωct10의 플랜지가 지정되는 시간을 T라 하면, 우선 시간 0-T/2에 있어서 제30b도와 같이 최상위 비트의 반송파위상각 ωct10이 논리 0이고, 또한 제30a도와 같이 하위 10비트의 반송파위상각 ωct0-ωct9의 플랜지가 지정된다. 그리고, 이때 #0-#9의 EOR(802)의 제 1 입력단자에는 논리 0의 최상위비트반송파DNL상각 ωct10이 입력되기 위해, 시간 0-T/2에서 하위 10비트의 반송파위상각 ωct0-ωct9의 값이 순차증가함에 따라, 제30c도와 같이, 그것과 똑같은 관계로 순차증가하는 어드레스신호 A0-A9가 얻어진다. 이것에 의해, 제29도에 1/2파 반송파 ROM(801)의 출력 D0-D9는 제30d도와 같이 상기 (27)식에 기인하는 0-π[rad]의 범위의 파형이 순차 판독된다. 그리고, 이 파형은 #0-#9의 EOR(803)의 제 1 입력단자에 입력되지만, 상기 EOR(803)의 제 2 입력단자에는 논리 0의 최상위 비트의 반송파위상각 ωct10이 입력되고 있기 때문에, 그 출력의 하위 10비트의 반송신호 WC0-WC9는 제30e도와 같이, 제30d도의 출력 D0-D9와 똑같은 파형이 출력된다. 또한, 최상위 비트의 반송신호 WC10은 최상위 비트의 반송파위상각 ωct10에 같은 논리 0이기 때문에, 결국, 제30f도의 시간 0-T/2에서 도시되는 것처럼, 제30d도의 출력 D0-D9와 똑같은 파형이 반송신호 WC0-WC10으로서 출력된다.
다음은 시간 T/2-T에서는 제30b도와 같이, 최상위 비트의 반송 파위상각 ωct10이 논리 1이고, 또한 제30a도와 같이 하위 10비트의 반송파위상각 ωct0-ωct9의 플렌지가 지정된다. 그리고 이때 #0-#9의 EOR(802)의 제 1 입력단자에는 논리 1의 최상위비트의 반송파위상각 ωct10이 입력되기 때문에, 시간 T/2-T에 있어서 하위 10비트의 반송파위 상각 ωct0-ωct9의 값이 순차 증가함에 따라, 제30c도와 같이 그것과 전혀 반대의 관계로 순차감소하는 어드레스 신호 A0-A9가 얻어진다. 이것에 의해, 제23도의 1/2파 반송파 EOM(801)의 출력 D0-D9는 제30d도에 도시한 바와 같이, 상기 (27)식에 기인하는 0-π[red]의 범위의 파형이 역방향으로 판독된다. 그리고, 이 파형은 #0-#9의 EOR(803)의 제 1 입력단자에 입력하지만, 상기 EOR(803)의 제 2 입력단자에는 논리 1의 최상위비트의 반송파위상각 ωct10이 입력되어 있기 때문에, 그 출력인 하위 10비트의 반송신호 WC0-WC9는 제30e도와 같이, 제30d도의 출력 D0-D9에 대하여 증감관계가 반전된 파형이 출력된다. 이것에 덧붙여, 최상위비트의 반송신호 WC10은 최상위 비트 반송파 위상각 ωct10에 같은 논리 1이기 때문에, 상기 출력에 하위 10비트의 반송파위상각 ωct0-ωct9의 플렌지분에 해당하는 π[rad]의 오프세트가 중첩되고, 결국, 제30f도의 사간 T/2-T로 나타나게 되는 반송신호 WC0-WC10으로서 출력된다.
이상의 동작에서 알 수 있듯이, 시간 0-T의 범위에서 출력되는 파형은 상기 제14도 또는 (14)식에서 설명한 반송신호 WC와 똑같은 파형이 출력된다. 그리고, 이 예의 경우, 제29도의 1/2파반송파 ROM(801)에는 제14도의 1주기분의 파형에 대하여 1/2주기분의 파형을 기억시키면 좋기 때문에 단순하게 1주기분의 파형을 기억시키는 경우에 비교하여 메모리용량을 1/2로 할 수가 있다.
다음은, 제25도의 엔빌로프제너레이터(706)의 일반적인 동작에 대해 설명한다. 엔빌로프제너레이터(706)의 구성은 3채널분의 엔빌로프파형을 출력할 수 있는 것 이외는, 통상의 전자악기에 이용되는 엔빌로프 제너레이트 회로와 마찬가지이기 때문에 그 상세한 것은 생략하지만, 본 실시예에서는 이 앤빌로프제너레이트(706)에 콘트롤러701)에서 각 패러미터를 세트할 경우, 이하와 같은 동작을 한다.
우선, 엔빌로프제너레이터(706)에서 출력되는 변조심도관수 E1또는 진폭계수 E2, E3의 특성의 일반예를 제31도에 도시한다. 또한, 각 특성은 우수하는 바와 같이 독립하여 제어된다. 동 도면에서, ON은 제28도의 건반부(717)에서의 어느것인가의 건반의 압건개시의 타이밍을 나타내고, OFF는 이건의 타이밍을 나타냈다. 또, 출력레벨치(변조심도관수 E1, 또는 진폭계수 E2, E3의 값이, 이하 같음)는 압건에서 어택타임 AT의 시간으로 이니셜레벨 IL에 도달하고, 그곳부터 디케이타임 DT의 시간으로 서스테인 레벨 SL이 되며, 이건까지 그 레벨을 유지하고, 이건후는 릴리스타임 RT의 시간으로 0레벨이 되어 소음한다.
그리고, 제28도의 콘트롤러(701)에서 엔빌로프제너레이터(706)의 어드레스 입력단자 A에 어드레스데이터 FA를 설정하과 동시에, 데이터 입력단자 D에 설정데이터 ED를 부여함으로써, 제28도의 엔빌로프제너레이터(706)에 변조심도관수 E1및 진폭계수 E2, E3의 각 출력특성을 설정할 수가 있다. 이 경우의 어드레스입력단자 A의 어드레스 값과 데이터입력단자 D의 데이터의 종류의 관계를 제31도에 도시한다. 이와 같이, E1, E2및 E3마다 어드레스입력단자 A에 동도면과 도시하는 각 값을 어드레스데이터 FA로서 부여하고, 동시에, 데이터입력단자 D에 동 도면에 도시하는 각 종류의 데이터를 설정데이터 ED로서 부여함으로써, 설정을 행할 수 있다.
이상의 구성의 제28도의 실시예에 있어서, 연주자가 실제로 제28도의 건반부(717)를 조작하여 연주를 행한 경웅의 동작을 설명한다.
우선, 콘트롤러(701)는 건반부(717)에 있어서 어느것인가의 건반이 압건 또는 이건되었는가 아닌가를 감시하고 있다. 어딘가의 건반의 압건이 검출되면, 건반부(717)에서 출력되는 건반의 음정을 나타내는 키코드 KC에 대하여, 특별하게는 도시하지 않은 벤더, 트랜스포즈 등의 값을 가산하고, 캐리어주파수 CF를 계산한다. 여기서, 벤더는 연주자가 연주중에 발음중의 악음의 음정을 임의로 변경할 수 있도록 하기 위한 콘트롤러이다. 또, 트랜스포즈는 건반부(717)상에서 이조(移調) 또는 옥타브변경등을 행하기 위한 설정데이터를 말한다.
이어서, 콘트롤러(710)는 상술한 캐리어주파수 CF를 에더(702)에 출력한다. 이것에 의해 에더(702)에서 압건된 건반에 따른 반송파위상 각 ωct0-ωct10이 반송신호발생회로(703)에 대하여 출력된다. 그리고 동 회로(703)에서 반송신호 WC0-WC10이 출력된다.
상기 동작과 함께, 콘트롤러(701)는 상술한 캐리어주파수 CF에 연주자가 미리 설정한 데이터(제32도에 도시하는 어택타임 AT, 이니셜레벨 IL등의 데이터)를 가산하고, 모듈레이터 주파수 MF를 계산한다. 그리고, 이와 같이 하여 결정된 모듈레이터 주파수 MF를 에더(704)에 출력한다.
이것에 의해, 에더(702)에서 출력되는 반송파위상각 ωct0-ωct10에 대하여, 소정의 관계를 가지는 변조파위상각 ωmt0-ωmt10이 변조신호발생회로(705)에 대하여 출력된다. 그리고 동 회로(705)에서 변조신호 WM0-WM10이 출력된다.
다음은, 캐리어주파수 CF의 경우와 같듯이, 콘트롤러(701)는 압건된 건반의 키코드 KC에 기인하여, PCM 신호발생회로(712)를 위한 PCM 피치데이터 PD를 계산하고, 에더(711)에 출력한다.
이것에 의해, 압건된 건반에 따라 에더(711)에서, PCM 신호발생회로(712)에서 PCM 악음신호를 판독하기 위한 어드레스신호가 출력된다.
이어서, 상기 동작과 함께 콘트롤러(701)는 제28도의 엔빌로프제너레이터(706)에서 출력되는 변조심도관수 E1의 특성을 결정하기 위한 처리를 행한다. 우선, 콘트롤러(701)는 건반부(717)에서 압건된 건반의 속도 VL을 얻는다. 또한, 이 값은 0-1의 사이의 값을 얻을 수 있다. 다음은, 콘트롤러(701)는 음색데이터로서, 변조심도관수 E1의 어택타임 AT, 디케이타임 DT 및 릴리스타임 RT(제31도 참조)를 제28도의 엔빌로프제너레이터(706)에 설정한다. 이 설정은 제31도에 도시한 바와 같이 어드레스 데이터 A에 의해 엔빌로프제너레이터(706)의 어드레스 입력단자 A에 부여하는 값을 결정하고, 설정데이터 ED로서 데이터입력단자 D에 대응하는 각 설정치를 출력하면 좋다. 이어서 변조심도관수 E1용의 음색데이터인 이니셜레벨치에 속도 VL의 값을 승산하고, 이니셜레벨 IL로서 엔빌로프제너레이터(706)에 세트한다. 이 세트도 상술한 경우와 마찬가지이다. 또한, 같은 변조심도관수 E1용의 음색데이터인 서스테인레벨치에 속도 VL의 값을 승산하고, 서스테인 레벨 SL로서 상기와 마찬가지로 엔빌로프제너레이터(706)에 설정한다. 이상의 처리에 의해, 변조심도관수 E1의 출력특성이 결정된다.
상기 동작과 함께, 콘트롤러(701)는 엔빌로프제너레이터(706)에서 출력되는 진폭계수 E2의 특성을 결정하기 위한 처리를 행한다. 즉, 음량 데이터로서 진폭계수 E2용의 어택타임 AT, 이니셜레벨 IL, 디케이타임 DT, 서스테인레벨 SL 및 릴리스타임 RT(제31도 참조)를 제28도의 엔빌로프제너레이터(706)에 설정한다. 이 설정도 상술한 변조심도관수 E1의 경우와 똑같이 하여 행할 수 있다.
또한, 콘트롤러(701)는 엔빌로프제너레이터(706)에서 출력되는 진폭계수 E3의 특성을 결정하기 위한 처리를 행한다. 이 설정도 상술한 변조심도관수 E1또는 진폭계수 E2의 경우와 똑같이 하여 행할 수 있다.
이상의 처리에 의해 제28도의 캐리어 주파수 CF, 모듈레이터 주파수 MF 및 엔빌로프제너레이터(706)로서 각 패러미터의 세트가 종료하면, 악음을 발생하기 위한 온 처리가 행해진다. 즉, 콘트롤러(701)는 엔빌로프세너레이터(706)에 변조심도관수 E1및 진폭계수 E2, E3를 온하는 명령을 한다. 이 처리는 제31도에 도시하는 바와 같이 콘트롤러(701)에서 어드레스데이터 FA로서 값 0, 7 및 E (모두 16진수)를 순차 출력하고, 각 출력마다 설정데이터 ED로서 적당한 명령데이터를 출력함으로써 실행된다.
이상의 처리에 의해 제28도의 엔빌로프제너레이터(706)에서의 변조심도관수 E1및 진폭계수 E2, E3의 출력이 개시되고, 이것에 기인하여 제28도의 각 회로가 이미 설명했듯이 동작하여 악음파형을 발생한다.
이 경우, 변조심도관수 E1의 특성은 건반부분(717)에서의 속도 VL의 값에 의해, 예를 들면 제33도와 같이 변화한다. 이것에 의해, 승산기(707)의 출력인 변조신호 WM0-WM10이 에더(708)에 있어서 반송신호발생회로(703)에서의 반송신호 WC0-WC10과 혼합되는 비율이 시간적으로 변화함과 동시에, 그 시간변화특성자체도 속도 VL의 값에 의해 변화한다. 이것에 의해, 건반부(717)에서의 연주상태에 따라서 악음의 음색 등을 변화시킬 수가 있다.
또, 예를 들면 브라스(brass)계의 악기(트럼펫, 색소폰, 호론 등)와 같이, 어태시에 숨소리등에 특징이 있는 악음을 재현하는데는 다음과 같이 한다. 우선, 브라스계의 지속부분의 배음구성은 고차의 배음이 됨에 따라 그 성분의 진폭이 원만하게 감소해가는 경향이 있으며, 배음열에 凹凸이 적다라는 특징이 있다. 이와 같이, 제28도의 변소신호발생회로(705)에 톱니바퀴형상파등의 각차의 배음성분을 모조리 함유하는 파형으로 한다. 이것에 의해, 변조심도관수 E1이 0일때는 변조악음신호 eM은 정현파로 되며, E1의 값을 크게하는 것으로 변조악음신호 eM에 포함되는 배음성분이 증가해 가도록 할 수 있으며, 상술한 바와 같이 이것을 건반부(717)에서의 압건속도에 따른 값으로, 출력되는 속도 VL에 의해 제어할 수 있다. 한편, 제28도의 PCM신호발생회로(712)에는 브라스계 특유의 어택시의 음만을 샘플링하여 둔다. 이상의 설정과 함께, 지폭계수 E2와 E3가 예를 들면 제34a도에 도시되는 특성으로 되도록 엔빌로프제너레이터(706)에 대하여 설정을 행함으로써, 어더(714)에 있어서 변조악음신호 eM과 PCM 악음신호 eP가 제34a도의 특성에서 혼합되는 결과, 악음의 어택부는 PCM 악음신호 eP가 서스틴부이후는 변조악음신호 eM이 출력된다. 이와 같이하여 브라스계 악기특유의 어택음을 가지고, 연주의 강약에 의한 지속음부의 음색변화를 수반한 리얼한 악음을 재현할 수 있다.
그밖에, 하아프시코드(harpsichord)등에 있어서는 압건시만이 아니라 이건시에도 연주에 의해 진동하고 있는 하아프시코드의 현을 메카니즘이 누름에 따라 특징적인 음이 생성한다. 이와 같은 경우는 PCM 신호발생회로(712)에 압건시와 이건시의 하아프시코드의 음을 샘플링해두고, 예를 들면 제34b도와 같이 어택시와 릴리스시에 에더(714)에서 PCM 악음신호 eP가 출력되도록 제어하면 좋다.
이상과 같은 악음발생동작후, 제28도의 건반부(717)에서 압건중의 건반이 이건된 경우, 발음중 악음을 소음하기 위한 오프처리가 행해진다. 즉, 콘트롤러(701)는 엔빌로프제너레이터(706)에 변조심도관수 E1및 진폭계수 E2, E3를 OFF하는 명령을 한다. 이 처리는 제32도에 도시한 바와 같이, 콘트롤러(701)에서 어드레스데이터 FA로서 값 1, 8 및 F(모두 16진수)를 순차 출력하고, 각 출력마다 설정데이터 ED로서 적당한 명령데이터를 출력함으로써 실행된다.
다음은, 본 발명의 제 6 실시예에 대해 설명한다.
제34도는 본 발명의 제 6 실시예의 전체의 구성을 나타내는 블록도이지만, 제28도의 제 5 실시예와의 차이는 주로 PCM 신호발생회로(712)의 역할의 차이이다. PCM 신호발생회로(712)의 출력인 PCM 악음신호 eP는 제 5 실시예에서는 변조악음신호 eM에 가산되어 독립한 특성의 악음신호로서 혼합되었지만, 제 6 실시예에서는 제34도에 도시한 바와 같이, 변조신호의 하나로서 다른 변조신호와 가산되고, 삼각파디코더(709)에 입력된다.
즉, PCM 신호발생회로(712)에서 판독된 PCM 악음신호는 승산기(713)로 엔빌로프제너레이터(706)에서 출력되는 진폭계수 E3와 승산되고, PCM 악음신호 eP로 되어, 에더(1301)의 단자 B에 입력한다. 여기서, 단자 A에 입력되는 승산기(707)에서의 변조신호출력과 상기 승산기(713)의 출력이 가산되고, 11비트의 새로운 변조신호 WM0-WM10으로 되어 에더(708)의 단자 B에 입력한다. 그후, 에더(708)로 단자 A에 입력되는 반송신호발생회로(703)에서의 반송신호 WC0-WC10과 가산되고, 11비트의 가산파형 00-0 10으로 된다. 이후의 동작은 제 5 실시예와 마찬가지이므로 설명은 생략한다.
이상과 같이 하여, 예를 들면 실제의 악기의 악음을 음원으로 한 PCM에 의한 파형신호를 변조신호에 이용하고, 그 진폭계수 E3를 증대시킴에 따라 복잡한 파형을 가지는 변조악음신호 eM를 얻을 수가 있다.
이상, 제5 및 제 6 의 구체적 실시예에서 설명한 바와 같이, 제28도 또는 제34도의 건반부(717)의 건반을 빠르게(강하게) 압건하면 속도 VL의 값이 크게되어, 변조심도관수 E1이 전체적으로 커다란 값이 되어, 이 결과, 제28도 또는 제34도의 에더(708)에서의 변조신호 WM0-WM10의 반송신호 WC0-WC10에 대한 혼합율이 크게되며, 생성되는 악음에 고차배음을 많이 포함하게 할 수가 있다. 반대로 건반을 느리게(약하게)압건하면 속도 VL의 값이 작게 되어, 변조심도관수 E1이 전체적으로 작은 값이 되며, 이 결과, 제28도 또는 제34도의 에더(708)에서의 변조신호 WM0-WM10의 반송신호 WC0-WC10에 대한 혼합율이 작아지며, 생성되는 악음을 단일 정현파에 접근할 수가 있다.
또, 압건하는 속도(강도)에 의해, 같은 이유로 진폭계수 E3가 변화하므로, PCM 악음신호 eP의 크기도 변화한다. 그와 같이, 제 5 실시예와 같이, 어택시의 특유한 음, 예를 들면 브라스악기의 브라스음이나 피아노의 기계적 충격음 등을 압건조작에 의해 자유롭게 강조할 수가 있거나, 혹은 제 6 실시예와 같이, 어택시에 복잡한 파형(즉, 배음)을 가지는 악음을 생성시킬 수가 있다.
이와 같이 본 발명에서는 압건하는 강도에 의해, 생성되는 악음에 고차배음이 많이 포함되는 상태에서 단일정현파만을 포함하는 상태까지 폭넓게 제어할 수가 있음과 동시에, 예를 들면 어택시 등의 음색도 자유롭게 제어할 수가 있는 것이 커다란 특징이다.
이상의 제5 및 제 6 실시예에서는 제28도 또는 제35도의 엔빌로프제너레이터(706)의 변조심도관수 E1및 진폭계수 E3의 엔벨로프특성을 속도 VL에 의해 가변할 수 있도록 했지만, 진폭계수 E2의 엔빌로프 특성을 속도 VL에 의해 가변할 수 있도록 하여, 압건의 강도에 따라서 악음의 음량을 가변할 수 있도록 하여도 좋다.
또, 변조심도관수 E1의 엔벨로프 특성을 속도 VL에 의해 가변하고 있으나, 속도 VL은 아니고, 제28도 또는 제35도의 건반부(717)의 어느 건반영역의 건반이 압건되었는지에 의해 제어하도록 하면, 예를 들면 저음역의 건반을 압건했을 경우는 변조심도관수 E1의 값을 크게하고, 고음역의 건반을 압건했을 경우에 크게 함으로써, 피아노음과 같은 저음역에서 고차배음을 포함하는 음색의 시뮬레이터에 적당한 동작을 행하게 하는 것도 가능하다.
또한, 제28도 또는 제35도의 실시예에서는 단일의 악음파형을 출력하기 위한 회로로서 설명했지만, 동 도면의 에더(702), 반송신호발생회로(703), 에더(704), 변조신호발생회로(705), 엔빌로프제너레이터(706), 승산기(707), 에더(708), 삼각파디코더(709), 승산기(710), 에더(711), PCM 신호발생회로(712), 승산기(713), 에더(714) 및 에더(1301)를 시분할로 동작할 수 있도록 구성하고, D/A 변환기(715)의 입력단으로 각 시분할채널의 악음을 각 샘플링 주기마다 누산하도록 하면 복수의 악음파형을 병렬하여 발음시키는 것이 가능하게 된다.