JP5071124B2 - 音源装置 - Google Patents
音源装置 Download PDFInfo
- Publication number
- JP5071124B2 JP5071124B2 JP2008015734A JP2008015734A JP5071124B2 JP 5071124 B2 JP5071124 B2 JP 5071124B2 JP 2008015734 A JP2008015734 A JP 2008015734A JP 2008015734 A JP2008015734 A JP 2008015734A JP 5071124 B2 JP5071124 B2 JP 5071124B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- sound
- slot
- work memory
- program
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 94
- 230000008569 process Effects 0.000 claims description 94
- 238000012545 processing Methods 0.000 claims description 34
- 230000002123 temporal effect Effects 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 40
- 238000005070 sampling Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 9
- 241000153282 Theope Species 0.000 description 2
- 239000012636 effector Substances 0.000 description 2
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/002—Instruments 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/004—Instruments 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Description
この音源装置によれば、演算部に対して、データを生成する演算を、ハードウェアで構成された複数の演算要素のうち少なくとも二つを用いて行うことを命じる第1乃至第3の拡張命令が用意されているから、ソフト音源では実行に長時間を要したスロット演算を短時間で実行することができる。つまり、この音源装置によれば、音の波形を出力する処理が高速化される。例えば、ワークメモリへのアクセスに要する時間(例えば、8回のコード実行処理に要する時間)だけで音データを生成することも可能である。また、この音源装置では、制御部に読み出されるプログラムコード群を変更することで、音源装置の機能を動的に再構成することができる。
この態様によれば、ワークメモリから第1及び第2の中間データと音データとが一括して読み出され、ワークメモリから第1及び第2のパラメータが一括して読み出され、ワークメモリへ第1及び第2の中間データと生成された音データとが一括して書き込まれるから、すなわちワークメモリに対してマルチワードアクセスが行われるから、更なる高速化が可能となる。例えば、ワークメモリへのアクセスに要する時間(例えば、3回のコード実行処理に要する時間)だけで音データを生成することも可能である。
この態様によれば、ワークメモリからk組の第1の中間データ、第2の中間データ及び音データが一括して読み出され、ワークメモリからk組の第1及び第2のパラメータが一括して読み出され、ワークメモリへk組の第1の中間データ、第2の中間データ及び音データが一括して書き込まれるから、すなわちSIMD(Single Instruction / Multiple Data)で処理が行われるから、更なる高速化が可能となる。例えば、kを適宜に定めることにより、ハード音源を備えた音源装置と同等の処理速度とすることも可能である。
<第1の実施形態>
図1は、本発明の第1の実施形態に係る音源装置100を備える装置のハードウェア構成を示すブロック図である。この装置は、音源装置100、ホストCPU91及びアナログ回路92を備える。音源装置100は、TLM(Transaction Level Modeling)によるバス(例えばAMBA(登録商標))に接続された、マイコンI/F(インターフェイス)81、オーディオコーデック82、ワークメモリ83、プログラムメモリ84及びカスタムDSP10を備える。
図6は、本発明の第2の実施形態に係る音源装置における複数のプログラムコードの実行イメージを示す図である。この図に示すデータは、ワークメモリ83と制御部Bとの間で授受される。この音源装置は、拡張ハードウェア102に相当するハードウェアを四つ備えている。また、DSP101において演算部Aを構成していた部分に相当するハードウェアを四つ備えている。つまり、この音源装置は、四つの演算部Aを備えており、一つのワークメモリ83を四つの演算部Aに共通して用いる。
第1の実施形態を変形し、1サンプリング期間分のプログラムコードについてのプログラム実行処理が終了すると、1サンプリング期間が終了するまで、カスタムDSP10がサンプリング周期とは非同期の別の処理を行う形態としてもよい。また、第2の実施形態を変形し、演算部Aの数(k)を、3以下としてもよいし、5以上としてもよい。この場合、演算部Aの数に応じて、一括して処理するスロットの数も増減させるべきである。また、各実施形態を変形し、1スロット当たり2ワード以下のワード単位でアクセスを行う形態としてもよいし、1スロット当たり4ワード以上のワード単位でアクセスを行う形態としてもよいし、DSP101が行う処理をCPUが行う形態としてもよい。これらの形態は、本発明の技術的範囲に含まれ得る。
Claims (3)
- 複数のスロットの各々に係る音データを生成する音源装置において、
ハードウェアで構成された複数の演算要素を備え、データを生成する演算を、前記演算要素を用いて行うことにより、複数種類の命令を実行する演算部と、
複数のプログラムコードを含むプログラムを記憶するプログラムメモリと、
前記演算部に一の前記スロットに係る音データを生成させるための第1及び第2のパラメータと、前記一のスロットに係る音データの生成過程で前記演算部に生成される第1及び第2の中間データと、前記一のスロットに係る音データと、別の前記スロットに係る音データとを記憶するワークメモリと、
一つの前記プログラムコードを実行するコード実行処理を前記複数のプログラムコードについて順次行って前記プログラムを実行するプログラム実行処理を行う制御部とを備え、
前記複数種類の命令は、
音量の時間的な変化を制御するエンベロープデータを生成する演算を前記ワークメモリから読み出された前記第1のパラメータ及び前記第1の中間データと前記複数の演算要素のうち少なくとも二つとを用いて行うことを命じる第1の拡張命令と、
波形の周波数を制御するフェイズデータを生成する演算を、前記ワークメモリから読み出された前記第2のパラメータ、前記第2の中間データ及び前記別のスロットに係る音データと前記複数の演算要素のうち少なくとも二つとを用いて行うことを命じる第2の拡張命令と、
結果データを生成する演算を前記エンベロープデータと前記フェイズデータと前記複数の演算要素のうち少なくとも二つとを用いて行うことを命じる第3の拡張命令とを含み、
前記プログラム実行処理は、前記ワークメモリから前記第1及び第2のパラメータと前記第1及び第2の中間データと前記別のスロットに係る音データとを読み出す一方、前記エンベロープデータ、前記フェイズデータ及び前記結果データを、前記第1の中間データ、前記第2の中間データ及び前記一のスロットに係る音データとして前記ワークメモリへ書き込むアクセス処理を含み、
前記制御部は、前記コード実行処理において、実行する前記プログラムコードが前記複数種類の命令のいずれかに対応していれば、対応する命令を前記演算部に実行させる、
ことを特徴とする音源装置。 - 前記アクセス処理は、前記ワークメモリから前記第1及び第2の中間データと前記別のスロットに係る音データとを一括して読み出す第1処理と、前記ワークメモリから前記第1及び第2のパラメータを一括して読み出す第2処理と、前記エンベロープデータ、前記フェイズデータ及び前記結果データを、前記第1の中間データ、前記第2の中間データ及び前記一のスロットに係る音データとして一括して前記ワークメモリに書き込む第3処理と含む、
ことを特徴とする請求項1に記載の音源装置。 - 前記演算部をk(kは2以上の自然数)個備え、
前記ワークメモリは、前記k個の演算部に共通して用いられ、
前記アクセス処理は、前記ワークメモリからk組の前記第1の中間データ、前記第2の中間データ及び前記別のスロットに係る音データを一括して読み出す第4処理と、前記ワークメモリからk組の前記第1及び第2のパラメータを一括して読み出す第5処理と、k組の前記エンベロープデータ、前記フェイズデータ及び前記結果データを、k組の前記第1の中間データ、前記第2の中間データ及び前記一のスロットに係る音データとして一括して前記ワークメモリに書き込む第6処理とを含む、
ことを特徴とする請求項1に記載の音源装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008015734A JP5071124B2 (ja) | 2008-01-28 | 2008-01-28 | 音源装置 |
US12/360,732 US20090188377A1 (en) | 2008-01-28 | 2009-01-27 | Sound Generator Apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008015734A JP5071124B2 (ja) | 2008-01-28 | 2008-01-28 | 音源装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009175560A JP2009175560A (ja) | 2009-08-06 |
JP5071124B2 true JP5071124B2 (ja) | 2012-11-14 |
Family
ID=40897897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008015734A Expired - Fee Related JP5071124B2 (ja) | 2008-01-28 | 2008-01-28 | 音源装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090188377A1 (ja) |
JP (1) | JP5071124B2 (ja) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5441497B2 (ja) * | 1974-11-14 | 1979-12-08 | ||
US4373416A (en) * | 1976-12-29 | 1983-02-15 | Nippon Gakki Seizo Kabushiki Kaisha | Wave generator for electronic musical instrument |
JPS5748792A (en) * | 1980-09-08 | 1982-03-20 | Nippon Musical Instruments Mfg | Electronic musical instrument |
US4421003A (en) * | 1980-11-25 | 1983-12-20 | Kabushiki Kaisha Kawai Gakki Seisakusho | Envelope generator for electronic musical instruments |
US5719345A (en) * | 1995-11-13 | 1998-02-17 | Opti Inc. | Frequency modulation system and method for audio synthesis |
JP3246405B2 (ja) * | 1996-08-30 | 2002-01-15 | ヤマハ株式会社 | 楽音発生方法、楽音発生装置および楽音発生用プログラムを記録した記録媒体 |
JP2002297198A (ja) * | 2001-03-30 | 2002-10-11 | Seiko Epson Corp | オーディオ復号装置 |
WO2006018873A1 (ja) * | 2004-08-18 | 2006-02-23 | Usc Digiark Corporation | データ処理装置、電子機器システム評価装置及び評価方法 |
JP4254673B2 (ja) * | 2004-09-22 | 2009-04-15 | ヤマハ株式会社 | 楽音生成装置 |
-
2008
- 2008-01-28 JP JP2008015734A patent/JP5071124B2/ja not_active Expired - Fee Related
-
2009
- 2009-01-27 US US12/360,732 patent/US20090188377A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2009175560A (ja) | 2009-08-06 |
US20090188377A1 (en) | 2009-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2765426B2 (ja) | 効果付与装置および電子楽器 | |
JPH07210380A (ja) | ディジタル信号処理装置 | |
JP5789993B2 (ja) | 楽音信号発生装置 | |
JPH0612069A (ja) | ディジタル信号処理装置 | |
JP5071124B2 (ja) | 音源装置 | |
Gordon | System architectures for computer music | |
JPS5925235B2 (ja) | 電子楽器 | |
US5684260A (en) | Apparatus and method for generation and synthesis of audio | |
JP3230449B2 (ja) | 信号処理装置 | |
US6085309A (en) | Signal processing apparatus | |
JP3087631B2 (ja) | 効果付与装置 | |
JP3610759B2 (ja) | ディジタル信号処理装置 | |
JP3832383B2 (ja) | 楽音生成装置及びプログラム | |
JPH0310959B2 (ja) | ||
JPH07306681A (ja) | 楽音生成装置 | |
JP3832382B2 (ja) | 楽音生成装置及びプログラム | |
JP3016470B2 (ja) | 音源装置 | |
JP3223757B2 (ja) | 楽音波形発生方法 | |
JPH06348262A (ja) | 信号処理装置 | |
JP3104873B2 (ja) | 音源装置 | |
JPH10198559A (ja) | 信号処理装置 | |
JP2910632B2 (ja) | 波形メモリ音源装置 | |
JP3918309B2 (ja) | エフェクト装置 | |
JPS58200294A (ja) | 包絡線信号発生装置 | |
JPH10133659A (ja) | ディジタル信号処理プロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101122 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120709 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120724 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120806 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5071124 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150831 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |