JP2011203542A - 集積回路 - Google Patents
集積回路 Download PDFInfo
- Publication number
- JP2011203542A JP2011203542A JP2010071383A JP2010071383A JP2011203542A JP 2011203542 A JP2011203542 A JP 2011203542A JP 2010071383 A JP2010071383 A JP 2010071383A JP 2010071383 A JP2010071383 A JP 2010071383A JP 2011203542 A JP2011203542 A JP 2011203542A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- sound
- program
- sound source
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
【課題】制御部と音源部を備えた楽音信号生成用の集積回路において、外部から供給されるプログラムと音データを格納するためのメモリを効率よく使用し、少ない容量で多くの音データを格納できるようにする。
【解決手段】音源LSIは、内蔵RAMを備えたCPUと、楽音信号を生成する音源部と、音源LSIの外部から供給されるプログラムと音色データを格納するSRAM403を備える。音色データは、楽音信号の信号波形を加工して音色を変えるために用いられる音色制御用のパラメータである。CPUは、SRAM403のプログラム格納領域403aに格納されているプログラムモジュールの中から、必要に応じて一部のプログラムモジュールを内蔵RAMに転送する。プログラムモジュールを転送することによって生じたプログラム格納領域403aの空き領域には、音源LSIの外部から新たな音色データが書き込まれる。
【選択図】図3
【解決手段】音源LSIは、内蔵RAMを備えたCPUと、楽音信号を生成する音源部と、音源LSIの外部から供給されるプログラムと音色データを格納するSRAM403を備える。音色データは、楽音信号の信号波形を加工して音色を変えるために用いられる音色制御用のパラメータである。CPUは、SRAM403のプログラム格納領域403aに格納されているプログラムモジュールの中から、必要に応じて一部のプログラムモジュールを内蔵RAMに転送する。プログラムモジュールを転送することによって生じたプログラム格納領域403aの空き領域には、音源LSIの外部から新たな音色データが書き込まれる。
【選択図】図3
Description
本発明は、楽音信号を生成するための集積回路に関する。
例えば特許文献1には、CPU10と音源部11を内蔵した楽音信号生成用の音源LSI1が記載されている。この音源LSI1は、プログラムと音源用データを記憶した外部ROM3,24にアクセスすることで、CPU10が実行するプログラムや、楽音信号の生成に用いる波形データや音色データを変更することができる。また、この特許文献1には、外部ROM3,24から読み出したプログラムや音色データを、音源LSI1の内部に設けられた内部RAM15に格納することが記載されている。
ところで、音源LSI内のCPUには、処理速度を高めるため小容量のRAMが内蔵される場合がある。この場合、CPUの内蔵RAMに音源LSIの外部から直接データを書き込むことができないので、音源LSIには、外部から供給されるデータを格納するためのRAMが設けられる。音源LSIの外部から供給されるプログラムや音色データは、一旦、このRAMに格納された後、必要に応じてその一部がCPUの内蔵RAMに転送される。このようなRAMとして、プログラムを格納するプログラムRAMと音色データを格納する音色データRAMを別個に備える構成や、1つのRAMのメモリ領域をプログラム用の格納領域と音色データ用の格納領域に分けて使用する構成が考えられる。しかしながら、いずれの場合も、プログラムの一部をCPUの内蔵RAMに転送することで生じたプログラムRAMやプログラム格納領域の空き領域は、プログラムを格納するための領域としてしか利用することができず、音色データを格納するための領域として利用することができない。また、このような空き領域を再利用せずに放置している場合もある。このため外部から供給されるプログラムや音色データを格納するのに必要なトータルのRAM容量が増大し、音源LSIの製造コストを上昇させる要因になっていた。
本発明は、上述した課題に鑑みてなされたものであり、制御部と音源部を備えた楽音信号生成用の集積回路において、外部から供給されるプログラムと音データを格納するためのメモリを効率よく使用し、少ない容量で多くの音データを格納できるようにすることである。
以上の課題を解決するため、本発明に係る集積回路は、楽音信号を生成するための集積回路であって、第1メモリを内蔵した制御部と、前記楽音信号を生成する音源部と、前記集積回路の外部から供給されるデータを格納する第2メモリと、を備え、前記第2メモリには、前記データとして、前記制御部が実行するプログラムと、前記楽音信号の生成に用いる音データとが書き込まれ、前記制御部は、前記第2メモリに書き込まれた前記プログラムの一部を前記第1メモリに転送し、前記第1メモリおよび前記第2メモリに格納されているプログラムに従って前記音源部を制御し、前記プログラムの一部を転送することによって生じた前記第2メモリの空き領域には、前記データとして前記音データが書き込まれ、前記音源部は、前記第2メモリに格納されている前記音データを用いて前記楽音信号を生成する、ことを特徴とする。
この構成によれば、プログラムの一部を転送することによって生じた第2メモリの空き領域には、集積回路の外部から供給される音データが書き込まれる。つまり、プログラムの一部を転送することによって生じた第2メモリの空き領域を、音データを格納するための領域として利用することができる。したがって、少ないメモリ容量で多くの音データを格納することが可能になる。また、第2メモリのメモリ容量を低減することができるので、集積回路の製造コストを下げることができる。
なお、制御部は、例えばCPU(Central Processing Unit)やMPU(Micro Processing Unit)である。また、第1メモリや第2メモリは、SRAM(Static Random Access Memory)やDRAM(Dynamic Random Access Memory)等の揮発性メモリで構成されていてもよいし、フラッシュメモリ等の不揮発性メモリで構成されていてもよい。また、第2メモリから第1メモリに転送されるプログラムの一部とは、プログラムを構成する1以上のプログラムモジュールである。また、音データには、楽音信号を生成する際に音源波形として使用される波形データと、楽音信号の信号波形を加工して音色を制御するための音色制御パラメータとが含まれる。また、集積回路には、LSI(Large Scale Integration)の他に、VLSI(Very Large Scale Integration)やULSI(Ultra-Large Scale Integration)も含まれる。
また、上述した集積回路において、前記第2メモリは、前記プログラムを格納する第1領域と、前記音データを格納する第2領域とを備え、前記制御部は、前記第1領域に書き込まれた前記プログラムの一部を前記第1メモリに転送し、前記第1メモリおよび前記第2メモリ(前記第1領域)に格納されているプログラムに従って前記音源部を制御し、前記プログラムの一部を転送することによって生じた前記第1領域の空き領域には、前記データとして前記音データが書き込まれ、前記音源部は、前記第2メモリ(前記第1領域および前記第2領域)に格納されている前記音データを用いて前記楽音信号を生成する構成であってもよい。
この構成によれば、第2メモリがプログラムを格納する第1領域と音データを格納する第2領域に分かれている場合であっても、プログラムの一部を転送することによって生じた第1領域の空き領域を、音データを格納するための領域として利用することができる。なお、第2メモリの第1領域は、基本的にプログラムを格納する領域であるが、プログラムの一部が第1メモリに転送されて空き領域が生じた場合には、当該空き領域に音データが格納される。つまり、第2メモリの第1領域には、プログラムの他に音データも格納される。これに対し、第2メモリの第2領域には、音データのみが格納される。
また、上述した集積回路において、前記音データには、音源波形として使用される波形データと、前記楽音信号の信号波形を加工して音色を制御するための音色制御パラメータとが含まれる構成であってもよい。
この構成によれば、プログラムの一部を転送することによって生じた第2メモリの空き領域を、波形データや音色制御パラメータを格納するための領域として利用することができる。
この構成によれば、プログラムの一部を転送することによって生じた第2メモリの空き領域を、波形データや音色制御パラメータを格納するための領域として利用することができる。
また、上述した集積回路において、前記音データには、音源波形として使用される波形データと、前記楽音信号の信号波形を加工して音色を制御するための音色制御パラメータとが含まれ、前記音源部は、前記集積回路の外部から供給される前記波形データを格納する第3メモリを備え、前記第2メモリには、前記データとして、前記制御部が実行するプログラムと、前記音色制御パラメータとが書き込まれ、前記プログラムの一部を転送することによって生じた前記第2メモリの空き領域には、前記データとして前記音色制御パラメータが書き込まれ、前記音源部は、前記第3メモリに格納されている前記波形データと、前記第2メモリに格納されている前記音色制御パラメータとを用いて前記楽音信号を生成する構成であってもよい。
この構成によれば、プログラムの一部を転送することによって生じた第2メモリの空き領域を、音色制御パラメータを格納するための領域として利用することができる。
この構成によれば、プログラムの一部を転送することによって生じた第2メモリの空き領域を、音色制御パラメータを格納するための領域として利用することができる。
また、上述した集積回路において、前記空き領域が生じたことを前記集積回路の外部に通知する通知部をさらに備える構成であってもよい。
この構成によれば、プログラムの一部を転送することによって第2メモリに空き領域が生じたことを集積回路の外部に通知することができる。したがって、通知部からの通知に応じて集積回路の外部から新たな音データ(または音色制御パラメータ)を空き領域に書き込むことができる。なお、通知部は、空き領域が生じたことの他に、空き領域のサイズや空き領域のアドレス情報を通知する構成であってもよい。また、制御部とは別に通知部を備えるのではなく、制御部が、空き領域が生じたことや、空き領域のサイズ、空き領域のアドレス情報等を集積回路の外部に通知する構成であってもよい。
この構成によれば、プログラムの一部を転送することによって第2メモリに空き領域が生じたことを集積回路の外部に通知することができる。したがって、通知部からの通知に応じて集積回路の外部から新たな音データ(または音色制御パラメータ)を空き領域に書き込むことができる。なお、通知部は、空き領域が生じたことの他に、空き領域のサイズや空き領域のアドレス情報を通知する構成であってもよい。また、制御部とは別に通知部を備えるのではなく、制御部が、空き領域が生じたことや、空き領域のサイズ、空き領域のアドレス情報等を集積回路の外部に通知する構成であってもよい。
なお、本発明は、上述したいずれかの集積回路と、前記音源部が生成した前記楽音信号に応じた楽音を出力する出力部と、を備える楽音発生装置であってもよい。この楽音発生装置には、例えば、携帯電話機、電子楽器、パーソナルコンピュータ、ビデオゲーム機、カラオケ装置等が含まれる。
以下、添付した図面を参照して本発明に係る実施の形態を説明する。
図1は、本発明に係る集積回路(音源LSI40)を搭載した携帯電話機1の主要部の構成を示すブロック図である。同図に示すように、携帯電話機1は、入力部10と、メインメモリ20と、メイン制御部30と、音源LSI40と、D/A(Digital / Analog)変換器50と、増幅器60と、スピーカ70を備える。
図1は、本発明に係る集積回路(音源LSI40)を搭載した携帯電話機1の主要部の構成を示すブロック図である。同図に示すように、携帯電話機1は、入力部10と、メインメモリ20と、メイン制御部30と、音源LSI40と、D/A(Digital / Analog)変換器50と、増幅器60と、スピーカ70を備える。
入力部10は、複数の操作キーや、表示画面上に設けられたタッチパネルによって構成されている。入力部10は、押下された操作キーの情報や、タッチパネル上におけるタッチ位置の情報をメイン制御部30に出力する。例えば、表示画面には鍵盤の画像が表示され、メイン制御部30は、入力部10から入力されるタッチ位置の情報に基づいて、発音する音の音高や発音期間等を指定する演奏情報を生成する。また、例えば、数字キー“1”に対して「ド」,数字キー“2”に対して「レ」,数字キー“3”に対して「ミ」等、各々の操作キーに対して異なる音高が対応付けられている場合、メイン制御部30は、入力部10から入力される操作キーの情報に基づいて演奏情報を生成する。なお、メイン制御部30において生成される演奏情報には、音高や発音期間を指定する情報の他に、例えばピアノの音やバイオリンの音等、発音する音の種類を指定する音指定情報が含まれる。
メインメモリ20は、フラッシュメモリ等の不揮発性メモリによって構成されている。このメインメモリ20には、メイン制御部30用のプログラムやデータに加え、音源LSI40用のプログラムやデータが格納されている。例えば、音源LSI40用のプログラムやデータとして、メインメモリ20には、音源制御用のプログラムと、複数種類の波形データと、複数種類の音色データが格納されている。
音源制御用のプログラムは、音源LSI40のCPU401によって実行されるプログラムである。このプログラムは、例えば、プログラムモジュール1〜プログラムモジュール12等、複数のプログラムモジュールによって構成されている。波形データや音色データは、音源LSI40の音源部402によって使用されるデータである。波形データは、例えばピアノ用の波形データやバイオリン用の波形データであって、楽音信号を生成する際に音源波形として使用される。また、音色データは、楽音信号の信号波形を加工して音色を変えるために用いられる音色制御用のパラメータ群である。
メイン制御部30は、携帯電話機1の全体を制御する。例えば、メイン制御部30は、演奏情報や、メインメモリ20から読み出した音源LSI40用のプログラムやデータ(音源制御用のプログラム,波形データ,音色データ)を音源LSI40に供給する。また、メイン制御部30は、音色設定処理を実行し、発音する音の種類や、発音する音に対して施す音色制御の内容を設定することができる。例えば、ユーザは、入力部10を操作して、発音する音をピアノの音にしたり、ピアノの音に対してさらにどのような音色制御を施すのかを音色設定処理において設定することができる。音色設定処理において設定された音の種類は、演奏情報を生成する際に音指定情報として使用される。また、音色設定処理において設定された音色制御の内容は、音色制御情報としてメイン制御部30から音源LSI40に供給される。
音源LSI40は、楽音信号生成用の集積回路であり、CPU401と、音源部402と、SRAM403と、波形RAM404を備える。SRAM403には、メイン制御部30から供給されるプログラム(音源制御用)と音色データが格納される。また、波形RAM404には、メイン制御部30から供給される波形データが格納される。CPU401は、プログラム(音源制御用)に従って、音源部402を含む音源LSI40の各部を制御する。例えば、CPU401は、メイン制御部30から供給される音色制御情報に従って、SRAM403に格納されている複数の音色データの中から、楽音信号を生成する際に使用する音色データを選択する。音源部402は、メイン制御部30から供給される演奏情報と、波形RAM404に格納されている波形データと、CPU401から供給される音色データに基づいて、楽音信号を生成する。音源部402で生成された楽音信号は、D/A変換器50においてデジタル信号からアナログ信号に変換され、増幅器60において増幅された後、スピーカ70から楽音として出力される。
図2は、音源LSI40の主要部の構成を示すブロック図である。
音源LSI40は、図1に示したCPU401,音源部402,SRAM403,波形RAM404の他に、インターフェース回路405と、FIFO(First-In First-Out)メモリ406,407と、通知用レジスタ408を備える。また、CPU401には内蔵RAM401aが設けられている。
音源LSI40は、図1に示したCPU401,音源部402,SRAM403,波形RAM404の他に、インターフェース回路405と、FIFO(First-In First-Out)メモリ406,407と、通知用レジスタ408を備える。また、CPU401には内蔵RAM401aが設けられている。
インターフェース回路405は、メイン制御部30との間で送受信されるデータを仲介する接続インターフェースであって、例えばパラレルインターフェースやSPI(Serial Peripheral Interface)である。また、FIFOメモリ406は、波形RAM404用のFIFOメモリであり、FIFOメモリ407は、SRAM403用のFIFOメモリである。例えば、メイン制御部30から供給されるプログラムと音色データは、インターフェース回路405とFIFOメモリ407を介してSRAM403に書き込まれる。また、メイン制御部30から供給される波形データは、インターフェース回路405とFIFOメモリ406を介して波形RAM404に書き込まれる。また、メイン制御部30から供給される演奏情報は、インターフェース回路405を介してCPU401と音源部402に供給され、メイン制御部30から供給される音色制御情報は、インターフェース回路405を介してCPU401に供給される。
通知用レジスタ408は、SRAM403に空き領域が生じたことをメイン制御部30に通知するためのものである。例えば、SRAM403から内蔵RAM401aにプログラムの一部(1以上のプログラムモジュール)が転送されてSRAM403に空き領域が生じると、CPU401によって通知用レジスタ408の格納値が“0”から“1”に書き替えられる。また、内蔵RAM401aは、CPU401のワークエリアとして利用され、例えば、実行中のプログラムモジュールや、使用頻度の高いプログラムモジュール、演算途中のデータ等が格納される。なお、内蔵RAM401aはCPU401の内部に設けられているので、CPU401によるアクセス速度は、SRAM403よりも内蔵RAM401aの方が速い。
CPU401は、メイン制御部30から供給される音色制御情報に従って、楽音信号を生成する際に使用する音色データをSRAM403から読み出し、音源部402に供給する。例えば、音源部402には、音色データを格納するためのレジスタ(図示省略)が設けられており、CPU401は、SRAM403から読み出した音色データをこのレジスタに書き込む。また、CPU401は、SRAM403に格納されているプログラムの一部を、必要に応じて内蔵RAM401aに転送する。また、このようにプログラムの一部を内蔵RAM401aに転送することでSRAM403に空き領域が生じると、CPU401は、通知用レジスタ408の格納値を“0”から“1”に書き替える。
音源部402は、メイン制御部30から供給される演奏情報と、波形RAM404に格納されている波形データと、CPU401から供給される音色データに基づいて、楽音信号を生成する。この際、まず、音源部402は、演奏情報に含まれている音指定情報に従って、波形RAM404に格納されている複数の波形データの中から使用する波形データを選択して読み出す。次いで、音源部402は、読み出した波形データと、演奏情報に含まれている音高や発音期間を指定する情報に基づいて、楽音信号の信号波形を生成するが、この際、音源部402は、CPU401から供給される音色データ(音色制御用のパラメータ群)に従って、楽音信号の信号波形を加工する。このように音色データを用いて楽音信号の信号波形を加工することで、例えば、楽音信号の信号波形をアタックタイム,ディケイタイム,サスティンレベル,リリースタイム単位で加工して楽音の音色を変えたり、楽音に抑揚や音量の変化をつけることができる。
なお、音色データを使用せずに波形データのみを使用して楽音信号を生成することもできるが、この場合、波形データ(音源波形)そのものの音色しか得られない。これに対し、音色データを使用して楽音信号の信号波形を加工すると、生成される楽音信号の音色を増やすことができる。また、同じ波形データを使用して楽音信号を生成しても、使用する音色データが異なれば、生成される楽音信号の信号波形が異なるので、違った音色の楽音が発音されることになる。
図3は、SRAM403に格納されるプログラムと音色データについて説明するための図である。同図に示すようにSRAM403は、プログラム格納領域403aと音色データ格納領域403bに分かれている。例えば、発音処理(楽音信号生成処理)を開始する場合、メイン制御部30は、メインメモリ20から音源制御用のプログラムを読み出してSRAM403のプログラム格納領域403aに書き込む。また、メイン制御部30は、メインメモリ20に格納されている複数の音色データの中から一部の音色データを読み出してSRAM403の音色データ格納領域403bに書き込む。これにより、例えば図3(A)に示すように、SRAM403のプログラム格納領域403aには、n個のプログラムモジュール(音源制御用のプログラム)が格納される。また、SRAM403の音色データ格納領域403bには、m個の音色データが格納される。
この後、音源LSI40のCPU401は、SRAM403のプログラム格納領域403aに格納されているn個のプログラムモジュールの中から、必要に応じて一部のプログラムモジュールを内蔵RAM401aに転送する。例えば、初期処理を行う場合、CPU401は、初期化用のプログラムモジュールをプログラム格納領域403aから読み出して内蔵RAM401aに転送する。なお、使用頻度の高いプログラムモジュール(特に動作に高速性を要求されるもの)は、常時、内蔵RAM401aに格納されることになるので、CPU401は、初期化用のプログラムモジュールを転送する際に、使用頻度の高いプログラムモジュールについてもこれをプログラム格納領域403aから読み出して内蔵RAM401aに転送することになる。
例えば図3(A)に示すように、プログラムモジュール1が初期化用のプログラムモジュールであり、プログラムモジュール2が使用頻度の高いプログラムモジュールである場合、CPU401は、発音処理を開始すると、SRAM403のプログラム格納領域403aからプログラムモジュール1とプログラムモジュール2を読み出して内蔵RAM401aに転送する。なお、初期化用のプログラムモジュールは、一度実行してしまえば再度発音処理を開始しない限り、実行されることのないプログラムモジュールである。また、前述したように使用頻度の高いプログラムモジュールは、常時、内蔵RAM401aに格納されるプログラムモジュールである。したがって、プログラムモジュール1,2を内蔵RAM401aに転送し終えると、図3(B)に示すように、プログラム格納領域403aにおいてプログラムモジュール1,2を格納していた部分が空き領域になる。
このように一部のプログラムモジュールが内蔵RAM401aに転送されてSRAM403のプログラム格納領域403aに空き領域が生じると、CPU401は、通知用レジスタ408の格納値を“0”から“1”に書き替える。なお、プログラムモジュールをSRAM403から内蔵RAM401aに転送したからといって、必ずプログラム格納領域403aに空き領域が生じる訳ではない。例えば、使用頻度が低いものの再度実行する可能性があるプログラムモジュールは、実行時に限ってSRAM403から内蔵RAM401aに転送されることになるので、再度実行する場合に備えてプログラム格納領域403aに残しておく必要がある。したがって、CPU401は、使用頻度が低いものの再度実行する可能性があるプログラムモジュールをSRAM403から内蔵RAM401aに転送した場合については、通知用レジスタ408の格納値を“0”から“1”に変更しない。
一方、メイン制御部30は、インターフェース回路405を介して通知用レジスタ408の格納値を常時監視しており、格納値の変化(0→1)によってSRAM403のプログラム格納領域403aに空き領域が生じたことを検知する。メイン制御部30は、プログラム格納領域403aに空き領域が生じたことを検知すると、この空き領域の部分に新たな音色データを書き込む。この際、メイン制御部30は、空き領域に収まる数量分の新たな音色データをメインメモリ20から読み出し、読み出した音色データをSRAM403(プログラム格納領域403a)の空き領域に書き込む。これにより、例えば図3(C)に示すように、SRAM403のプログラム格納領域403aには、プログラムモジュール1,2が格納されていた部分に計4個の新たな音色データm+1〜m+4が格納されることになる。したがって、CPU401は、音色データ格納領域403bとプログラム格納領域403aに格納されている計m+4個の音色データの中から、使用する音色データを選択することができるようになる。
なお、図3(A)に示すように、プログラム格納領域403aに格納されるプログラムモジュールのうち内蔵RAM401aに転送されることが明らかなもの(例えば、初期化用のプログラムモジュール1や使用頻度の高いプログラムモジュール2)は、音色データ格納領域403bに近接するエリアに格納するのが望ましい。この場合、図3(C)に示すように、プログラム格納領域403aのうち音色データ格納領域403bに近接するエリアに新たな音色データが格納されることになるので、SRAM403において音色データが一箇所に固まって配置されることになり、SRAM403から音色データを連続的に読み出せるというメリットがある。
また、メイン制御部30は、SRAM403のプログラム格納領域403aに書き込まれた各プログラムモジュールの格納アドレス情報等を保持しており、空き領域が生じたことを検知したときの発音処理の進行状況等に応じて、どのプログラムモジュールを格納していた領域が空き領域になったのか等、空き領域のサイズや空き領域のアドレス情報を特定することができる。また、SRAM403(プログラム格納領域403a)の空き領域に新たな音色データが書き込まれると、CPU401は、通知用レジスタ408の格納値を“1”から“0”に書き替える。
また、音源LSI40は、複数の発音チャネルを有する場合、使用する音色データを発音チャネルごとに変えることができる。この場合、前述した音色設定処理では、発音チャネルごとに音色制御の内容が設定される。CPU401は、音色設定処理において設定された音色制御情報に従って、使用する音色データを発音チャネルごとに選択し、音源部402は、CPU401から供給される音色データに従って、発音チャネルごとに楽音信号の信号波形を加工する。
例えば、16個の発音チャネル(1chはピアノ,2chはギター,3chはベース,…16chはドラム等)を有し、発音チャネルごとに音色を変えることが可能であると共に、発音チャネルごとに4個の音色データが用意されている場合、SRAM403には、計64個の音色データを格納しておく必要がある。この場合、従来であれば図4(A)に示すように、SRAM403の音色データ格納領域403bに64個の音色データ1〜64を格納しておかなければならない。
これに対し、本発明によれば、例えば図4(A)に示すように、プログラムモジュール1(初期化用)とプログラムモジュール2,3(使用頻度…高)が発音処理を開始した直後にSRAM403から内蔵RAM401aに転送されるプログラムモジュールであって、かつこれらのプログラムモジュール1〜3のデータ量が音色データ48個分のデータ量に相当する場合、メイン制御部30は、図4(B)に示すように、音色データ格納領域403bに16個の音色データ1〜16しか書き込まなくてよい。なぜなら、メイン制御部30は、プログラムモジュール1〜3がプログラム格納領域403aから内蔵RAM401aに転送された後、残りの48個の音色データ17〜64を、プログラム格納領域403aのうちプログラムモジュール1〜3が格納されていた部分に書き込めばよいからである。したがって、SRAM403のメモリ容量を音色データ48個分だけ低減することができる。また、SRAM403のメモリ容量を低減しない場合であれば、さらに48個の新たな音色データを音色データ格納領域403bに追加することができるので、計112個の音色データを用意することができる。この場合、発音チャネルごとに使用可能な音色データの数を4個から7個に増やすことができる。
<変形例>
本発明は上述した実施形態に限定されるものではなく、例えば以下の変形が可能である。また、以下に示す2以上の変形例を適宜組み合わせることもできる。
(1)SRAM403は、プログラム格納領域403aと音色データ格納領域403bに分かれていなくてもよい。この場合、プログラムの一部を内蔵RAM401aに転送することによって生じたSRAM403の空き領域に、新たな音色データが書き込まれる。
本発明は上述した実施形態に限定されるものではなく、例えば以下の変形が可能である。また、以下に示す2以上の変形例を適宜組み合わせることもできる。
(1)SRAM403は、プログラム格納領域403aと音色データ格納領域403bに分かれていなくてもよい。この場合、プログラムの一部を内蔵RAM401aに転送することによって生じたSRAM403の空き領域に、新たな音色データが書き込まれる。
(2)波形RAM404を備えず、メイン制御部30から供給される波形データをSRAM403の音色データ格納領域403bに格納する構成としてもよい。この場合、音色データ格納領域403bには、音色データの他に波形データが格納される。なお、このような構成にする場合には、音源部402がSRAM403から波形データを読み出せるようにするため、CPU401だけでなく音源部402についてもSRAM403にアクセス可能な構成にする必要がある。また、このような構成にする場合、プログラムの一部を内蔵RAM401aに転送することによって生じたSRAM403の空き領域には、音色データの他に波形データを書き込むこともできる。
(3)上述した実施形態では、通知用レジスタ408の格納値を変更することで空き領域が生じたことをメイン制御部30に通知する構成とした。しかしながら、例えば、CPU401がインターフェース回路405を介してメイン制御部30と直接通信を行って、空き領域が生じたことを通知する構成としてもよい。また、空き領域が生じたことの他に、空き領域のサイズや空き領域のアドレス情報を通知する構成としてもよい。
なお、このように空き領域が生じたことをメイン制御部30に通知することは、必須の要件ではない。なぜなら、個々のプログラムモジュールをSRAM403から内蔵RAM401aに転送するタイミングは、発音処理(楽音信号生成処理)の進行状況等に応じて固定的に定まる場合があるためである。例えば、上述した実施形態に記載したように、初期化用のプログラムモジュールや使用頻度の高いプログラムモジュールは、発音処理を開始する際にSRAM403から内蔵RAM401aに転送される。したがって、メイン制御部30は、音源LSI40からの通知を受けなくても、発音処理を開始してから、初期化用のプログラムモジュールや使用頻度の高いプログラムモジュールの転送に要する時間が経過した後に、SRAM403のうち初期化用のプログラムモジュールや使用頻度の高いプログラムモジュールが格納されていた領域(空き領域)に新たな音色データを書き込むことができる。
(4)音源LSI40には、演奏情報としてMIDI(Musical Instrument Digital Interface)データが入力されてもよい。また、個々の音色データは、音色制御用の複数のパラメータによって構成されていてもよいし、音色制御用の1つのパラメータによって構成されていてもよい。
(5)上述した実施形態では本発明に係る集積回路を携帯電話機に搭載した場合について説明したが、例えば、電子楽器、パーソナルコンピュータ、ビデオゲーム機、カラオケ装置等の楽音発生装置に本発明に係る集積回路を搭載してもよい。
1…携帯電話機、10…入力部、20…メインメモリ、30…メイン制御部、40…音源LSI(集積回路)、401…CPU(制御部)、401a…内蔵RAM(第1メモリ)、402…音源部、403…SRAM(第2メモリ)、403a…プログラム格納領域(第1領域)、403b…音色データ格納領域(第2領域)、404…波形RAM(第3メモリ)、405…インターフェース回路、406,407…FIFOメモリ、408…通知用レジスタ(通知部)、50…D/A変換器、60…増幅器、70…スピーカ。
Claims (5)
- 楽音信号を生成するための集積回路であって、
第1メモリを内蔵した制御部と、
前記楽音信号を生成する音源部と、
前記集積回路の外部から供給されるデータを格納する第2メモリと、
を備え、
前記第2メモリには、前記データとして、前記制御部が実行するプログラムと、前記楽音信号の生成に用いる音データとが書き込まれ、
前記制御部は、前記第2メモリに書き込まれた前記プログラムの一部を前記第1メモリに転送し、前記第1メモリおよび前記第2メモリに格納されているプログラムに従って前記音源部を制御し、
前記プログラムの一部を転送することによって生じた前記第2メモリの空き領域には、前記データとして前記音データが書き込まれ、
前記音源部は、前記第2メモリに格納されている前記音データを用いて前記楽音信号を生成する
ことを特徴とする集積回路。 - 前記第2メモリは、前記プログラムを格納する第1領域と、前記音データを格納する第2領域とを備え、
前記制御部は、前記第1領域に書き込まれた前記プログラムの一部を前記第1メモリに転送し、前記第1メモリおよび前記第2メモリに格納されているプログラムに従って前記音源部を制御し、
前記プログラムの一部を転送することによって生じた前記第1領域の空き領域には、前記データとして前記音データが書き込まれ、
前記音源部は、前記第2メモリに格納されている前記音データを用いて前記楽音信号を生成する
ことを特徴とする請求項1に記載の集積回路。 - 前記音データには、音源波形として使用される波形データと、前記楽音信号の信号波形を加工して音色を制御するための音色制御パラメータとが含まれる
ことを特徴とする請求項1または2に記載の集積回路。 - 前記音データには、音源波形として使用される波形データと、前記楽音信号の信号波形を加工して音色を制御するための音色制御パラメータとが含まれ、
前記音源部は、前記集積回路の外部から供給される前記波形データを格納する第3メモリを備え、
前記第2メモリには、前記データとして、前記制御部が実行するプログラムと、前記音色制御パラメータとが書き込まれ、
前記プログラムの一部を転送することによって生じた前記第2メモリの空き領域には、前記データとして前記音色制御パラメータが書き込まれ、
前記音源部は、前記第3メモリに格納されている前記波形データと、前記第2メモリに格納されている前記音色制御パラメータとを用いて前記楽音信号を生成する
ことを特徴とする請求項1に記載の集積回路。 - 前記空き領域が生じたことを前記集積回路の外部に通知する通知部をさらに備える
ことを特徴とする請求項1乃至4のうちいずれか1項に記載の集積回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010071383A JP2011203542A (ja) | 2010-03-26 | 2010-03-26 | 集積回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010071383A JP2011203542A (ja) | 2010-03-26 | 2010-03-26 | 集積回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011203542A true JP2011203542A (ja) | 2011-10-13 |
Family
ID=44880232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010071383A Pending JP2011203542A (ja) | 2010-03-26 | 2010-03-26 | 集積回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011203542A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013039265A1 (en) | 2011-09-16 | 2013-03-21 | Dow Corning Toray Co., Ltd. | Curable silicone composition, cured product thereof, and optical semiconductor device |
-
2010
- 2010-03-26 JP JP2010071383A patent/JP2011203542A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013039265A1 (en) | 2011-09-16 | 2013-03-21 | Dow Corning Toray Co., Ltd. | Curable silicone composition, cured product thereof, and optical semiconductor device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20090164951A1 (en) | Input architecture for devices with small input areas and executing multiple applications | |
JP2010224077A (ja) | 楽音生成装置 | |
JP2009026199A (ja) | クロック周波数制御方法及びコンピュータプログラム | |
JP2011203542A (ja) | 集積回路 | |
JP2014092722A (ja) | 音発生装置 | |
JP2000276358A (ja) | 割り込みコントローラ、asic、及び電子機器 | |
JP2011133940A (ja) | アクセス調停装置、集積回路装置、電子機器、アクセス調停方法、及びプログラム | |
JP2007193572A (ja) | Cpu、集積回路装置、マイクロコンピュータ及び電子機器 | |
JP2008065549A (ja) | マイクロコンピュータ、情報処理システム、電子機器及びマイクロコンピュータの起動制御方法 | |
US20050289320A1 (en) | Semiconductor device, microcomputer, and electronic equipment | |
JP4622865B2 (ja) | 画像処理装置 | |
JP2014112198A (ja) | 音発生装置 | |
JP4354268B2 (ja) | 信号処理装置 | |
JP3888236B2 (ja) | プログラムカウンタ回路 | |
JP5510813B2 (ja) | 楽音生成装置 | |
JP2006148232A (ja) | 集積回路装置、通信制御装置、マイクロコンピュータ及び電子機器 | |
JP2016099408A (ja) | 楽音発生装置およびプログラム | |
JP2008129851A (ja) | 演算処理装置 | |
JP2001306395A (ja) | キャッシュ装置、半導体装置、マイクロコンピュータ及び電子機器 | |
JP3900003B2 (ja) | 画像/音声処理回路 | |
JPH07168574A (ja) | 波形メモリ音源 | |
JPH0944157A (ja) | 信号処理装置 | |
JP4920946B2 (ja) | 楽音発生装置 | |
JP2023092596A (ja) | 情報処理装置、電子楽器、音取りシステム、方法及びプログラム | |
JP5510814B2 (ja) | 楽音生成装置 |