(57)【特許請求の範囲】
【請求項１】
波形データと、音パラメータとに基づく演算処理を、演算開始信号により開始し、所定の演算処理が終了したときに演算処理結果データを出力し、
前記演算処理が、一定周期のサンプリング信号間の周期中に終了するときは、前記サンプリング信号に同期して前記演算開始信号を発生し、
前記演算処理が、一定周期のサンプリング信号間の周期中に終了しないときには、前記演算処理が終了した後に前記演算開始信号を出力する、
ことを特徴とする電子音発生方法。
【請求項２】
前記演算処理結果データを保持し、前記サンプリング信号と同期して出力させることを特徴とする、請求項１に記載された電子音発生方法。
【請求項３】
波形データを記憶した波形記憶手段と、
前記波形記憶手段から入力される波形データと、音パラメータとに基づき、演算開始信号により演算処理を開始し、演算処理中信号を出力するとともに、所定の演算処理が終了したときに演算処理結果データを出力するディジタル信号処理手段と、
一定周期のサンプリング信号を出力するサンプリング信号発生手段と、
前記演算処理中信号と前記サンプリング信号とが入力され、ある時点のサンプリング信号（以下、当該サンプリング信号）が入力されたときに前記演算処理中信号が出力されていないときには、当該サンプリング信号に同期して前記演算開始信号を前記ディジタル信号処理手段に供給し、前記演算処理中信号が出力されているときには、その演算終了を待って前記演算開始信号を前記ディジタル信号処理手段に供給する同期オン・オフ手段と、
前記ディジタル信号処理手段から入力される演算処理結果データを保持し、前記サンプリング信号に同期して音データとして出力する演算結果出力手段と、  を備えることを特徴とする電子音発生装置。
【請求項４】
波形データを記憶した波形記憶手段と、
前記波形記憶手段から入力される波形データと、音パラメータとに基づき、演算開始信号により演算処理を開始し、所定の演算処理が終了したときに演算終了信号を出力するとともに演算処理結果データを出力するディジタル信号処理手段と、
一定周期のサンプリング信号を出力するサンプリング信号発生手段と、
前記演算終了信号と前記サンプリング信号とが入力され、ある時点のサンプリング信号（以下、当該サンプリング信号）とその直前のサンプリング信号間の周期中に所定の演算処理が開始されかつ終了しているときには、当該サンプリング信号に同期して前記演算開始信号を前記ディジタル信号処理手段に供給し、当該サンプリング信号とその直前のサンプリング信号間の周期中に所定の演算処理が開始されかつ終了していないときには、前記演算終了信号が入力された後に前記演算開始信号を前記ディジタル信号処理手段に供給する同期オン・オフ手段と、
前記ディジタル信号処理手段から入力される演算処理結果データを保持し、前記サンプリング信号に同期して音データとして出力する演算結果出力手段と、
を備えることを特徴とする電子音発生装置。
【請求項５】
前記演算結果出力手段は、前記ディジタル信号処理手段から入力される演算処理結果データを保持するとともに、保持されている演算処理結果データは新たな演算処理結果データにより上書きされることを特徴とする、請求項３、４のいずれかに記載された電子音発生装置。
【請求項６】
請求項３〜５のいずれかに記載された電子音発生装置を備えていることを特徴とする携帯機器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記憶装置に記憶させた波形データを用いて、音楽を演奏させるための電子音発生装置及び、それを用いた携帯機器（例えば、携帯電話、シンセサイザ、ＰＤＡなど）に関する。
【０００２】
【従来の技術】
従来から、記憶装置に記憶させた波形データを用いて電子音を発生させる方法として、全てハードウエアで設計する方法と、ＤＳＰ（ディジタルシグナルプロセッサ）等のディジタル信号処理装置を使用してソフトウエアで演算処理する方法とが用いられてきた。最近では、同時発音数が増えたり、さまざまな音響効果に対応させるため、演算内容や演算順序が複雑になってきている。したがって、ハードウエアで全ての信号処理を行うように構成することは、設計期間や処理内容の変更などの点から、難しくなってきている。
【０００３】
このため、ディジタル信号処理装置を用いてソフトウエアで処理する方法が、複雑な演算順序をプログラムとして開発できるため、多く用いられるようになってきている。
【０００４】
図３は、ディジタル信号処理装置を用いた従来の電子音発生装置の構成を示す図であり、図４はその動作を説明するためのタイミングチャートである。
【０００５】
図３において、ディジタル信号処理回路１３には、ＲＯＭ等の波形メモリ１２に記憶されている所要の音楽用の波形データと、音パラメータ入力回路１１からの楽器の種類や音階などに応じた音パラメータとが入力される。ディジタル信号処理回路１３では、入力された波形データと音パラメータとに基づき、サンプリング信号発生回路１５より入力されるサンプリング信号ｉに同期して演算処理を開始する。そして、そのサンプリング周期Ｔ内に、出力すべき音データを得るための所定量の演算を行い、その演算処理結果データ、即ち音データを演算結果出力回路１６に入力させる。
【０００６】
サンプリング信号ｉは一定周期Ｔ（Ｔ１〜Ｔ７）毎に出力され、この周期Ｔ内にそれぞれの所定の演算処理を行う。この周期Ｔは例えばＣＤにおけるように２２．７μｓ（＝１／４４．１ｋＨｚ）である。このサンプリング信号ｉを受けて、ディジタル信号処理回路１３は演算を開始し、その演算が終了した時点ｔ１′〜ｔ７′で演算処理結果データvを演算結果処理回路１６に入力し保持させる。次のサンプリング信号ｉに同期して、保持されている演算処理結果データvを演算結果出力回路１６から音データviとして出力する。なお、iiiは、演算処理中であることを示している。
【０００７】
【発明が解決しようとする課題】
サンプリング周期Ｔ内に行わせることができる演算量は、周期Ｔとこの電子音発生装置が作り込まれるＬＳＩの動作周波数により定まる。図４で、時点ｔ１のサンプリング信号ｉにより演算を開始し、その周期Ｔ１内の時点ｔ１′に所要の演算が終了する場合は通常の動作である。しかし、時点ｔ２のサンプリング信号ｉにより演算を開始し、その周期Ｔ２内に所要の演算が終了せず、引き続く周期Ｔ３に食い込んで処理が行われ、時点ｔ２′で演算が終了する場合には、その演算処理結果データは時点ｔ４のサンプリング信号ｉに同期して出力されるようになる。なお、時点ｔ３では、時点ｔ２で既に出力した音データが再度出力される。
【０００８】
その後、周期Ｔ４においては、本来周期Ｔ３で行うべき演算を処理することになり、周期Ｔ５以後の各周期においても同様に、前の周期で行うべき演算を処理するようになる。このように、ある周期内に所要の演算が終了しない場合には、引き続く各周期で行うべき演算処理が時間的に遅延し、その後の周期に行われることになる。この演算処理の遅延は、１周期内に所要の演算が終了しない状態が発生する度に、累積していくことになる。
【０００９】
このように演算処理が遅延することは、曲全体として大きなずれにつながるため、最大の演算量はサンプリングの周期Ｔを超えることはできなかった。
【００１０】
このような自体を避けるためには、サンプリング周波数を低くして周期Ｔを長くすることや、単位時間当たりの演算処理量を増加させることができればよい。
【００１１】
しかしながら、より豊かな音色を出力させるためには出力するサンプリング周波数を高くする必要があるから、サンプリング周期Ｔを長くすることは好ましくない。また、単位時間当たりの演算処理量を増加させることは、これらの各構成部分が組み込まれるＬＳＩの動作周波数を上げることになるが、この場合にはＬＳＩの消費電力が大きくなることや所要面積が大きくなってしまうから好ましくなく、特に携帯機器には適用することがむずかしくなる。
【００１２】
そこで、本発明は、サンプリング周期を長くすることなく、かつＬＳＩの動作周波数を特別に高くすることなくより豊かな音色を発生可能にし、携帯機器にも好適に使用することができる電子音発生方法及び装置、それを使用した携帯機器を提供することを目的とする。
【００１３】
【課題を解決するための手段】
請求項１記載の電子音発生方法は、波形データと、音パラメータとに基づく演算処理を、演算開始信号により開始し、所定の演算処理が終了したときに演算処理結果データを出力し、前記演算処理が、一定周期のサンプリング信号間の周期中に終了するときは、前記サンプリング信号に同期して前記演算開始信号を発生し、前記演算処理が、一定周期のサンプリング信号間の周期中に終了しないときには、前記演算処理が終了した後に前記演算開始信号を出力する、ことを特徴とする。
【００１４】
請求項２記載の電子音発生方法は、請求項１記載の電子音発生方法において、前記演算処理結果データを保持し、前記サンプリング信号と同期して出力させることを特徴とする。
【００１５】
請求項３記載の電子音発生装置は、波形データを記憶した波形記憶手段と、前記波形記憶手段から入力される波形データと、音パラメータとに基づき、演算開始信号により演算処理を開始し、演算処理中信号を出力するとともに、所定の演算処理が終了したときに演算処理結果データを出力するディジタル信号処理手段と、一定周期のサンプリング信号を出力するサンプリング信号発生手段と、前記演算処理中信号と前記サンプリング信号とが入力され、ある時点のサンプリング信号（以下、当該サンプリング信号）が入力されたときに前記演算処理中信号が出力されていないときには、当該サンプリング信号に同期して前記演算開始信号を前記ディジタル信号処理手段に供給し、前記演算処理中信号が出力されているときには、その演算終了を待って前記演算開始信号を前記ディジタル信号処理手段に供給する同期オン・オフ手段と、前記ディジタル信号処理手段から入力される演算処理結果データを保持し、前記サンプリング信号に同期して音データとして出力する演算結果出力手段と、を備えることを特徴とする。
【００１６】
請求項４記載の電子音発生装置は、波形データを記憶した波形記憶手段と、前記波形記憶手段から入力される波形データと、音パラメータとに基づき、演算開始信号により演算処理を開始し、所定の演算処理が終了したときに演算終了信号を出力するとともに演算処理結果データを出力するディジタル信号処理手段と、一定周期のサンプリング信号を出力するサンプリング信号発生手段と、前記演算終了信号と前記サンプリング信号とが入力され、ある時点のサンプリング信号（以下、当該サンプリング信号）とその直前のサンプリング信号間の周期中に所定の演算処理が開始されかつ終了しているときには、当該サンプリング信号に同期して前記演算開始信号を前記ディジタル信号処理手段に供給し、当該サンプリング信号とその直前のサンプリング信号間の周期中に所定の演算処理が開始されかつ終了していないときには、前記演算終了信号が入力された後に前記演算開始信号を前記ディジタル信号処理手段に供給する同期オン・オフ手段と、前記ディジタル信号処理手段から入力される演算処理結果データを保持し、前記サンプリング信号に同期して音データとして出力する演算結果出力手段と、を備えることを特徴とする。
【００１７】
請求項５記載の電子音発生装置は、請求項３、４記載の電子音発生装置において、前記演算結果出力手段は、前記ディジタル信号処理手段から入力される演算処理結果データを保持するとともに、保持されている演算処理結果データは新たな演算処理結果データにより上書きされることを特徴とする。
【００１８】
請求項６記載の携帯機器は、請求項３〜５のいずれかに記載された電子音発生装置を備えていることを特徴とする。
【００１９】
本発明の電子音発生方法及び装置によれば、演算量の少ないサンプリング周期に演算量の多いときの演算処理の一部を行うことにより、曲全体としてずれをほとんど発生することなく、より豊かな音出力を実現することができる。
【００２０】
また、音データの演算処理に必要な時間の平均値をサンプリング周期内に収めることにより、最大値に合わせていた従来のものに比べて、実質的に演算可能な処理数を多くすることが可能であり、より豊かな音を出力することができる。また、サンプリング周波数を上げることができるから、音質を向上することができる。
【００２１】
また、動作周波数を低くすることができるから、低速動作の回路でも使用可能となり、また、本発明を実現するＬＳＩの消費電力を低減することができるし、基板上の実装面積も小さくできる。したがって、小型化、低消費電力化が求められる携帯機器に用いて有効である。
【００２２】
【発明の実施の形態】
以下、本発明の電子音発生方法及び装置の実施の形態について、その構成を示す図１、及びそのタイミングチャートである図２を参照して説明する。
【００２３】
図１において、本発明の電子音発生装置は、主な構成として、音パラメータ入力回路１１、波形メモリ１２、ディジタル信号処理回路１３、同期オン・オフ回路１４、サンプリング信号発生回路１５及び演算結果出力回路１６を有している。なお、これらの各構成は、図示を省略しているＣＰＵなどの制御装置によって、制御される。
【００２４】
まず、音パラメータ入力回路１１は、楽器の種類や音階などのデータからなる音パラメータをディジタル信号処理回路１３に入力するものであり、ＣＰＵなどから指示された音パラメータが選択されて出力される。
【００２５】
波形メモリ１２は、図示せぬ入出力手段を介して、予め処理対象のＰＣＭ音源信号（以後、これを波形データと言う場合もある。）が入力されており、読み出し専用メモリ（ＲＯＭ）が用いられる。この波形データとしては、個々の楽器毎の種々のデータが、そのメモリアドレスと対応させて記憶されている。
【００２６】
ディジタル信号処理回路１３は、入力される音パラメータと波形データとに基づいて所要の演算処理を行う。このディジタル信号処理回路１３の演算処理は、同期オン・オフ回路１４からの演算開始信号iiを受けて開始され、音データとして出力される一纏まりの演算処理を行う。この一纏まりの演算処理が終了すると、演算終了信号ivを同期オン・オフ回路１４に供給するとともに、演算処理結果データvを演算結果出力回路１６に供給する。なお、演算終了信号ivとともに、或いはそれに代えて演算処理中信号iiiを出力しても良い。
【００２７】
サンプリング信号発生回路１５は、所定の一定周期（例えば、２２．７μｓ）のサンプリング信号ｉを同期オン・オフ回路１４と演算結果出力回路１６に出力する。このサンプリング周期に対して、ディジタル信号処理回路１３における一纏まりの演算処理に要する時間は、それら一纏まりの演算処理に必要な時間の最大値はサンプリング周期を越えていても良いが、その平均値はサンプリング周期内に収まっているように設定される。即ち、最大値＞サンプリング周期＞平均値に設定されている。
【００２８】
同期オン・オフ回路１４は、入力されたサンプリング信号ｉに同期させた演算開始信号iiを出力するか、或いは、サンプリング信号ｉの後に入力された演算終了信号ivを待って、演算開始信号iiを出力するかを決める回路である。演算開始信号iiの出力されるタイミングがどちらになるかは、ディジタル信号処理回路１３での一纏まりの演算処理が１つのサンプリング周期内に行われるか否かにより決められる。
【００２９】
演算結果出力回路１６は、ディジタル信号処理回路１３から非同期に出力される演算処理結果データvを保持するレジスタなどを設けており、そのレジスタに保持されている演算処理結果データvをサンプリング同期信号ｉに同期して読み出し、音データviとして出力する。このレジスタは、そのデータが読み出されても同データを保持し、新たなデータが入力されたときに上書きされる形式のものが使用される。
【００３０】
さて、この図１の電子音発生装置の動作を、図２のタイミングチャートも参照して説明する。
【００３１】
サンプリング信号ｉは所定の一定周期Ｔ（Ｔ１〜Ｔ７）毎に発生される。第１周期Ｔ１において、時点ｔ１でサンプリング信号ｉが出力されると、同期オン・オフ回路１４はこのサンプリング信号ｉに同期して演算開始信号iiを発生し、ディジタル信号処理回路１３に入力する。ディジタル信号処理回路１３では、この演算開始信号iiを受けて、音パラメータ及び波形データを基に、直ちに演算処理を開始し所定の時間後ｔ１′に所定の演算処理を終了する。なお、演算処理中であることを示す演算処理中信号iiiをディジタル信号処理回路１３から同期オン・オフ回路１４に供給するようにしても良い。
【００３２】
演算が終了した時点ｔ１′で、演算終了信号ivが同期オン・オフ回路１４に入力されるとともに、演算処理結果データvが演算結果出力回路１６に入力され保持される。演算結果出力回路１６に保持された演算処理結果データvは次のサンプリング信号ｉと同期して時点ｔ２で音データとして演算結果出力回路１６から出力される。このように、１周期Ｔ１内に所要の演算処理が行われるのが通常の形態である。
【００３３】
次に、第２周期Ｔ２では、その前の周期Ｔ１内で演算処理が終了しているので、サンプリング信号ｉが出力された時点ｔ２で同期して演算開始信号iiが出力され演算処理が開始される。
【００３４】
この周期Ｔ２での演算処理量が多く、周期Ｔ２内では演算処理が終わらず、周期Ｔ３内に食い込んで時点ｔ２′で演算処理が終了した例が示されている。
【００３５】
この場合、次の周期Ｔ３のサンプリング信号ｉが出力される時点ｔ３では、まだ新たな演算処理結果データvが得られていないので、演算結果出力回路１６からは、レジスタに保持されている前回のデータを代わりに出力する。これにより、音データの欠落は防止される。
【００３６】
時点ｔ２′で演算処理が終了すると、演算終了信号ivが直ちに出力され、この演算終了信号ivと周期Ｔ３のサンプリング信号ｉ（時点ｔ３）により演算開始信号iiが発生される。これにより周期Ｔ３に対する演算処理が開始される。これと同時に演算処理結果データvが出力され、演算結果出力回路１６のレジスタは新たなデータに上書きされる。そして、周期Ｔ２に対する処理結果は１周期Ｔだけ遅れて時点ｔ４で出力される。
【００３７】
周期Ｔ３における演算処理時間は、例え１周期Ｔ以内の時間であっても、その開始時間が既に周期Ｔ３内に食い込んでいたから、その演算終了時点ｔ３′も周期Ｔ４に入っている。この時点ｔ３′で周期Ｔ３に対する演算が終了すると、周期Ｔ４に対する演算開始信号iiが出力され、演算処理が開始される。これと同時に、演算処理結果データvが出力され、演算結果出力回路１６のレジスタは新たなデータに上書きされる。そして、周期Ｔ３に対する処理結果は１周期Ｔだけ遅れて時点ｔ５で出力される。
【００３８】
周期Ｔ４に対する演算処理時間は、かなり短くなって来ているが、まだ、周期Ｔ５内に入っている。このため、時点ｔ４′で周期Ｔ４に対する演算が終了すると、周期Ｔ５に対する演算開始信号iiが出力され、演算処理が開始される。これと同時に、演算処理結果データvが出力され、演算結果出力回路１６のレジスタは新たなデータに上書きされる。
【００３９】
周期Ｔ５においては、周期Ｔ４に対する演算が早く終了しており（時点ｔ４′）、周期Ｔ５に対する演算処理時間も短くなっており、周期Ｔ５内の時点ｔ５′でその演算処理が終了している。
【００４０】
この場合には、時点ｔ５′で演算終了信号ivが同期オン・オフ回路１４に出力されるが、同期オン・オフ回路１４に同一周期Ｔ５内で２つ目の演算終了信号ivが入力されたことになる。この同一周期内に２つの演算終了信号ivが発生されたことは、周期Ｔ２で後続する周期Ｔ３に食い込んだ処理が、この時点で回復されたことを示している。
【００４１】
したがって、この同一周期Ｔ５内の２つの演算終了信号ivは無視され、これに応じた演算開始信号（図中に破線で表示している）は発生されない。
【００４２】
一方、時点ｔ５′で演算処理の終了に応じて、やはり演算処理結果データvが出力される。このため、時点ｔ４′で出力された演算処理結果データは、時点ｔ５′で出力された演算処理結果データにより上書きされる。その結果、時点ｔ４′で出力された演算処理結果データは音データとして出力されることはない。周期Ｔ５に対する音データとしては、時点ｔ５′で出力された演算処理結果データが出力される。
【００４３】
周期Ｔ６以後については、その周期に対する演算処理結果はその周期中にそれぞれ終了するので、その動作は、周期Ｔ１における動作と同様である。
【００４４】
本発明では、このように、サンプリング周期Ｔに対して、ディジタル信号処理回路１３における一纏まりの演算処理に要する時間の最大値は周期Ｔ２に例示されるように、サンプリング周期を越えていても良い。その周期での演算処理時間が次の周期に食い込んだ場合には、その後の周期によってそれを吸収する。この吸収を行うために、一纏まりの演算処理に要する時間の平均値はサンプリング周期内に収まっているように設定される。即ち、最大値＞サンプリング周期＞平均値に設定されている。
【００４５】
一般的に、本発明におけるような電子音発生装置においては、一纏まりとしての演算処理量が多くなるのは、特定音を発生させる場合のパラメータ処理を伴う一連の音データの初期のときに発生するのみである。そのような演算処理量が多くなる発生頻度は、数千回〜数万回に１回程度であり、極めて少ない。
【００４６】
本発明の方法においては、サンプリング周期Ｔを越える演算処理が発生した場合には、同じ音データを２度使用すること、１つの音データが使用されないことになる。しかし、本発明においては、サンプリング周期Ｔを、一纏まりの演算処理に要する時間の最大値よりは短く、その平均値よりは長くなるように設定しているから、演算処理の遅延はその後の周期によって吸収されるので、曲全体としてのずれは発生しない。また、その発生頻度も極めて少ないから、音質に与える影響はほとんど無視することができる。
【００４７】
本発明のように、サンプリング周期Ｔに対して一纏まりの演算処理に要する時間を設定することによる音質向上など、本発明により得られる効果は十分に大きいといえる。
【００４８】
なお、音パラメータ入力回路１１、波形メモリ１２、ディジタル信号処理回路１３、同期オン・オフ回路１４、サンプリング信号発生回路１５、演算結果出力回路１６は、図示していない制御装置とともに、それぞれ単独でＬＳＩを構成することもできるし、また、それらの任意の組み合わせでＬＳＩに作り込むことも可能である。
【００４９】
【発明の効果】
本発明によれば、演算量の少ないサンプリング周期に演算量の多いときの演算処理の一部を行うことにより、曲全体としてずれをほとんど発生することなく、より豊かな音出力を実現することができる。
【００５０】
また、音データの演算処理に必要な時間の平均値をサンプリング周期内に収めることにより、最大値に合わせていた従来のものに比べて、実質的に演算可能な処理数を多くすることが可能であり、より豊かな音を出力することができる。また、サンプリング周波数を上げることができるから、音質を向上することができる。
【００５１】
また、動作周波数を低くすることができるから、低速動作の回路でも使用可能となり、また、本発明を実現するＬＳＩの消費電力を低減することができるし、基板上の実装面積も小さくできる。したがって、小型化、低消費電力化が求められる携帯機器に用いて有効である。
【図面の簡単な説明】
【図１】本発明の実施に形態に係る電子音発生装置の構成を示す図。
【図２】図１のタイミングチャート。
【図３】従来の電子音発生装置の構成を示す図。
【図４】図３のタイミングチャート。
【符号の説明】
１１  音パラメータ入力回路
１２  波形メモリ
１３  ディジタル信号処理回路
１４  同期オン・オフ回路
１５  サンプリング信号発生回路
１６  演算結果出力回路
【図１】
0003789358.tif 000002
【図２】
0003789358.tif 000003
【図３】
0003789358.tif 000004
【図４】
0003789358.tif 000005