亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

樂(lè)器數(shù)字接口硬件指令的制作方法

文檔序號(hào):2831751閱讀:488來(lái)源:國(guó)知局

專利名稱::樂(lè)器數(shù)字接口硬件指令的制作方法
技術(shù)領(lǐng)域
:本發(fā)明涉及電子裝置,且具體來(lái)說(shuō)涉及產(chǎn)生音頻的電子裝置。
背景技術(shù)
:樂(lè)器數(shù)字接口(MIDI)是用于產(chǎn)生、傳送及回放例如音樂(lè)、話音、音調(diào)、警報(bào)及其類似物的音頻聲音的格式。支持MIDI格式的裝置可存儲(chǔ)可用以產(chǎn)生各種"語(yǔ)音"的音頻信息集合。每一語(yǔ)音可對(duì)應(yīng)于特定聲音,例如由特定器具產(chǎn)生的音符。舉例來(lái)說(shuō),第--語(yǔ)音可對(duì)應(yīng)于如由鋼琴演奏的中音C,第二語(yǔ)音可對(duì)應(yīng)于如由長(zhǎng)號(hào)演奏的中音C,且第三語(yǔ)音可對(duì)應(yīng)于如由長(zhǎng)號(hào)演奏的D并音等等。為了復(fù)制不同器具演奏的聲音,符合MIDI的裝置可包括指定與聲音相關(guān)聯(lián)的各種音頻特征(例如低頻振蕩器的行為、例如顫音等效果及可影響對(duì)聲音的感知的許多其它音頻特征)的語(yǔ)音信息集合??山缍?、在MIDI文件中輸送及由支持MIDI格式的裝置重現(xiàn)幾乎任何聲音。支持MIDI格式的裝置可在指示裝置應(yīng)開始產(chǎn)生音符的事件發(fā)生時(shí)產(chǎn)生音符(或其它聲音)。類似地,裝置在指示裝置應(yīng)停止產(chǎn)生音符的事件發(fā)生時(shí)停止產(chǎn)生音符。可通過(guò)指定指示特定語(yǔ)音何時(shí)應(yīng)開始及停止的事件及對(duì)語(yǔ)音的各種影響而根據(jù)MIDI格式對(duì)整個(gè)音樂(lè)作品進(jìn)行編碼。以此方式,可以根據(jù)MIDI格式的緊湊文件格式來(lái)存儲(chǔ)及傳輸音樂(lè)作品。多種裝置中支持MIDI格式。舉例來(lái)說(shuō),例如無(wú)線電話等無(wú)線通信裝置可支持MIDI文件以用于可下載聲音,例如鈴聲或其它音頻輸出。例如蘋果計(jì)算機(jī)有限公司(AppleComputer,Inc)售賣的"iPod"裝置及微軟公司(MicrosoftCorp.)售賣的"Zune"裝置等數(shù)字音樂(lè)播放器也可支持MIDI文件格式。其它支持MIDI格式的裝置可包括各種音樂(lè)合成器,例如鍵盤、音序器、語(yǔ)音編碼器(音碼器)及節(jié)奏機(jī)。另外,多種裝置也可支持MIDI文件或音軌的回放,包括無(wú)線移動(dòng)裝置、直接雙向通信裝置(有時(shí)稱為對(duì)講機(jī))、網(wǎng)絡(luò)電話、個(gè)人計(jì)算機(jī)、桌上型及膝上型計(jì)算機(jī)、工作站、衛(wèi)星無(wú)線電裝置、內(nèi)部通信裝置、無(wú)線電廣播裝置、手持型游戲裝置、安裝于裝置中的電路板、信息查詢站(informationkiosk)、視頻游戲控制臺(tái)、各種兒童計(jì)算機(jī)化玩具、用于汽車、船只及飛機(jī)中的機(jī)載計(jì)算機(jī)及多種其它裝置。
發(fā)明內(nèi)容大體而言,描述使用經(jīng)特殊化以用于產(chǎn)生樂(lè)器數(shù)字接口(MIDI)語(yǔ)音的數(shù)字波形的機(jī)器代碼指令集合來(lái)產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的技術(shù)。舉例來(lái)說(shuō),處理器可執(zhí)行產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的軟件程序。軟件程序的指令可為來(lái)自經(jīng)特殊化以用于產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的指令集的機(jī)器代碼指令。確切地說(shuō),所述指令中的一者的執(zhí)行可涉及基于界定MIDI語(yǔ)音的參數(shù)集合而選擇操作及執(zhí)行選定操作。在一方面中,一種方法包含執(zhí)行產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的軟件程序中的機(jī)器代碼指令。執(zhí)行軟件程序中的指令包含基于界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合選擇操作,及輸出控制信號(hào)以致使選定操作被執(zhí)行。所述方法還包含輸出數(shù)字波形。在另一方面中,一種裝置包含存儲(chǔ)界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的存儲(chǔ)器單元。所述裝置還包含處理元件,其執(zhí)行軟件程序中的機(jī)器代碼指令以產(chǎn)生MIDI語(yǔ)音的數(shù)字波形。完成機(jī)器代碼指令的執(zhí)行涉及基于語(yǔ)音參數(shù)集合而選擇操作及執(zhí)行選定操作。在另一方面中,一種計(jì)算機(jī)可讀媒體包含指令。所述指令致使一個(gè)或一個(gè)以上處理器執(zhí)行產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的軟件程序中的機(jī)器代碼指令。執(zhí)行軟件程序中的指令包含基于界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合選擇操作,及輸出控制信號(hào)以致使選定操作被執(zhí)行。計(jì)算機(jī)可讀媒體還包含致使所述一個(gè)或一個(gè)以上處理器輸出數(shù)字波形的指令。在另一方面中,一種裝置包含用于存儲(chǔ)界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的裝置。所述裝置還包含用于執(zhí)行軟件程序中的機(jī)器代碼指令以產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的裝置。完成機(jī)器代碼指令的執(zhí)行涉及基于語(yǔ)音參數(shù)集合而選擇操作及執(zhí)行選定操作。在另一方面中,一種電路可經(jīng)配置以執(zhí)行產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的軟件程序的機(jī)器代碼指令,其中所述電路經(jīng)配置以基于界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合而選擇操作且輸出控制信號(hào)以致使選定操作被執(zhí)行,且輸出數(shù)字波形。在隨附圖式及以下描述中闡述細(xì)節(jié)。其它特征、目標(biāo)及優(yōu)勢(shì)將根據(jù)描述及圖式且根據(jù)權(quán)利要求書而顯而易見。9圖1是說(shuō)明包括產(chǎn)生聲音的音頻裝置的示范性系統(tǒng)的框圖。圖2是說(shuō)明音頻裝置的示范性樂(lè)器裝置接口(MIDI)硬件單元的框圖。圖3是說(shuō)明音頻裝置的實(shí)例操作的流程圖。圖4是說(shuō)明音頻裝置中的數(shù)字信號(hào)處理器(DSP)的實(shí)例操作的流程圖。圖5是說(shuō)明音頻裝置的MIDI硬件單元中的協(xié)調(diào)模塊的實(shí)例操作的流程圖。圖6是說(shuō)明使用指定存儲(chǔ)器地址的語(yǔ)音指示符的列表的實(shí)例DSP的框圖。圖7是說(shuō)明當(dāng)DSP從處理器接收MIDI事件的集合時(shí)DSP的示范性操作的流程圖。圖8是說(shuō)明當(dāng)DSP在語(yǔ)音指示符的列表中插入語(yǔ)音指示符時(shí)DSP的實(shí)例操作的流程圖。圖9是說(shuō)明當(dāng)DSP在所述列表中插入語(yǔ)音指示符時(shí)DSP的示范性操作的流程圖。圖IO是說(shuō)明當(dāng)DSP在列表中的語(yǔ)音指示符的數(shù)目超過(guò)語(yǔ)音指示符的最大數(shù)目時(shí)從列表移除語(yǔ)音指示符時(shí)DSP的示范性操作的流程圖。圖11是說(shuō)明使用指定可根據(jù)其導(dǎo)出存儲(chǔ)器地址的索引值的語(yǔ)音指示符的列表的實(shí)例DSP的框圖。圖12是說(shuō)明示范性處理元件的細(xì)節(jié)的框圖。圖13是說(shuō)明音頻裝置的MIDI硬件單元中的處理元件的實(shí)例操作的流程圖。具體實(shí)施例方式本發(fā)明描述使用經(jīng)特殊化以用于產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的機(jī)器代碼指令集合來(lái)產(chǎn)生樂(lè)器數(shù)字接口(MIDI)語(yǔ)音的數(shù)字波形的技術(shù)。舉例來(lái)說(shuō),處理器可執(zhí)行產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的軟件程序。軟件程序的指令可為來(lái)自經(jīng)特殊化以用于產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的指令集的機(jī)器代碼指令。圖1為說(shuō)明包括產(chǎn)生聲音的音頻裝置4的示范性系統(tǒng)2的框圖。音頻裝置4可為若干不同類型的裝置中的一者。舉例來(lái)說(shuō),音頻裝置4可為移動(dòng)電話、網(wǎng)絡(luò)電話、個(gè)人計(jì)算機(jī)、直接雙向通信裝置(有時(shí)稱為對(duì)講機(jī))、個(gè)人計(jì)算機(jī)、桌上型或膝上型計(jì)算機(jī)、工作站、衛(wèi)星無(wú)線電裝置、內(nèi)部通信裝置、無(wú)線電廣播裝置、手持型游戲裝置、安裝于例如查詢站等裝置中的電路板、各種兒童計(jì)算機(jī)化玩具、用于汽車、船只、飛機(jī)、宇宙飛船中的機(jī)載計(jì)算機(jī)或其它類型的裝置。例如蘋果計(jì)算機(jī)有限公司(AppleComputer,Inc)售賣的"iPod"裝置及微軟公司(MicrosoftCorp.)售賣的"Zune"裝置等數(shù)字音樂(lè)播放器也可支持MIDI10文件格式。支持MIDI格式的其它裝置可包括各種音樂(lè)合成器,例如鍵盤、音序器、語(yǔ)音編碼器(音碼器)及節(jié)奏機(jī)。圖1中所說(shuō)明的各種組件是解釋本發(fā)明的方面所需的組件。然而,在一些實(shí)施方案中,可能存在其它組件且可能不包括所說(shuō)明的組件中的一些。舉例來(lái)說(shuō),如果音頻裝置4是無(wú)線電話,則可包括天線、發(fā)射器、接收器及調(diào)制解調(diào)器(調(diào)制器-解調(diào)器)以促進(jìn)音頻文件的無(wú)線傳送。如圖l的實(shí)例中所說(shuō)明,音頻裝置4包括存儲(chǔ)MIDI文件的音頻存儲(chǔ)單元6。音頻存儲(chǔ)單元6可包含任何易失性或非易失性存儲(chǔ)器或存儲(chǔ)裝置。舉例來(lái)說(shuō),音頻存儲(chǔ)單元6可為硬盤驅(qū)動(dòng)器、快閃存儲(chǔ)器單元、壓縮光盤、軟盤、數(shù)字化通用光盤、只讀存儲(chǔ)器單元、隨機(jī)存取存儲(chǔ)器或信息存儲(chǔ)媒體。音頻存儲(chǔ)單元6可存儲(chǔ)樂(lè)器裝置接口(MIDI)文件及其它類型的數(shù)據(jù)。舉例來(lái)說(shuō),如果音頻裝置4是移動(dòng)電話,則音頻存儲(chǔ)單元6可存儲(chǔ)包含個(gè)人聯(lián)系人列表、相片及其它類型的數(shù)據(jù)的數(shù)據(jù)。音頻裝置4也包括可從音頻存儲(chǔ)單元6讀取數(shù)據(jù)及向音頻存儲(chǔ)單元6寫入數(shù)據(jù)的處理器8。此外,處理器8可從隨機(jī)存取存儲(chǔ)器(RAM)單元IO讀取數(shù)據(jù)及向隨機(jī)存取存儲(chǔ)器(RAM)單元10寫入數(shù)據(jù)。舉例來(lái)說(shuō),處理器8可從音頻存儲(chǔ)模塊6讀取MIDI文件的一部分且將MIDI文件的所述部分寫入到RAM單元10。處理器8可包含通用微處理器,例如英特爾奔騰4(IntelPentium4)處理器、遵照ARM控股公司(ARMHoldingsofCherryHinton,UK)的ARM架構(gòu)的嵌入式微處理器或其它類型的通用處理器。RAM單元10可包含一個(gè)或一個(gè)以上靜態(tài)或動(dòng)態(tài)RAM單元。在處理器8讀取MIDI文件之后,處理器8可剖析MIDI文件且對(duì)與MIDI文件相關(guān)聯(lián)的MIDI事件進(jìn)行調(diào)度。舉例來(lái)說(shuō),對(duì)于每一MIDI幀,處理器8可讀取一個(gè)或一個(gè)以上MIDI文件且可從MIDI文件提取MIDI事件?;贛IDI指令,處理器8可對(duì)MIDI事件進(jìn)行調(diào)度以用于由DSP12加以處理。在對(duì)MIDI事件進(jìn)行調(diào)度之后,處理器8可將調(diào)度提供到RAM單元10或DSP12以使得DSP12可處理所述事件?;蛘?,處理器8可通過(guò)以時(shí)間同步方式向DSP12分派MIDI事件而執(zhí)行調(diào)度。DSP12可如MIDI文件中的時(shí)序參數(shù)所指定而以同步方式來(lái)服務(wù)于經(jīng)調(diào)度事件。MIDI事件可包括用以發(fā)送音樂(lè)演奏信息的通道語(yǔ)音消息。通道語(yǔ)音消息可包括用以打開或關(guān)閉特定MIDI語(yǔ)音的指令、改變復(fù)調(diào)鍵壓力、通道壓力、音高折曲改變、控制改變消息、觸后效果、呼吸控制效果、程序改變、音高折曲效果、左右搖動(dòng)、延音踏板、主音量、持續(xù)樂(lè)段及其它通道語(yǔ)音消息。另外,MIDI事件可包括影響MIDI裝置響應(yīng)于MIDI數(shù)據(jù)的方式的通道模式消息。此外,MIDI事件可包括系統(tǒng)消息,例如意圖用于MIDI系統(tǒng)中的所有接收器的統(tǒng)共同消息、用于在基于時(shí)鐘的MIDI組件之間進(jìn)行同步的系統(tǒng)實(shí)時(shí)消息及其它系統(tǒng)相關(guān)消息。MIDI事件也可為MIDI表演控制消息(例如,燈光效果提示、幻燈片投影提示、機(jī)械效果提示、煙火提示及其它效果提示)。當(dāng)DSP12從處理器8接收到MIDI指令時(shí),DSP12可處理MIDI指令以產(chǎn)生連續(xù)脈沖編碼調(diào)制(PCM)信號(hào)。PCM信號(hào)為模擬信號(hào)的數(shù)字表示,其中由存在規(guī)則間隔的數(shù)字樣本表示波形。DSP12可將此PCM信號(hào)輸出到數(shù)/模轉(zhuǎn)換器(DAC)14。DAC14可將此數(shù)字波形轉(zhuǎn)換為模擬信號(hào)。驅(qū)動(dòng)電路18可使用模擬信號(hào)來(lái)驅(qū)動(dòng)揚(yáng)聲器19A及19B以用于向用戶輸出物理聲音。本發(fā)明將揚(yáng)聲器19A及19B統(tǒng)稱為"揚(yáng)聲器19"。音頻裝置4可包括一個(gè)或一個(gè)以上額外組件(未圖示),包括濾波器、預(yù)放大器、放大器及準(zhǔn)備模擬信號(hào)以用于由揚(yáng)聲器19最后輸出的其它類型的組件。以此方式,音頻裝置4可根據(jù)MIDI文件而產(chǎn)生聲音。為了產(chǎn)生數(shù)字波形,DSP12可使用產(chǎn)生個(gè)別MIDI幀的數(shù)字波形的MIDI硬件單元18。每一MIDI幀可對(duì)應(yīng)于IO毫秒或另一時(shí)間間隔。當(dāng)MIDI幀對(duì)應(yīng)于10毫秒且以48kHz對(duì)數(shù)字波形進(jìn)行取樣(亦即,每秒48,000個(gè)樣本)時(shí),在每一MIDI幀中存在480個(gè)樣本。MIDI硬件單元18可作為音頻裝置4的硬件組件而實(shí)施。舉例來(lái)說(shuō),MIDI硬件單元18可為嵌入到音頻裝置4的電路板中的芯片組。為了使用MIDI硬件單元18,DSP12可首先確定MIDI硬件單元18是否閑置。MIDI硬件單元18可在MIDI硬件單元18結(jié)束產(chǎn)生MIDI幀的數(shù)字波形之后閑置。DSP12可接著產(chǎn)生指示MIDI幀中存在的MIDI語(yǔ)音的語(yǔ)音指示符的列表。在DSP12產(chǎn)生語(yǔ)音指示符的列表之后,DSP12可設(shè)置MIDI硬件單元18中的一個(gè)或一個(gè)以上寄存器。DSP12可使用直接存儲(chǔ)器交換(DME)來(lái)設(shè)置這些寄存器。DME是在處理器正執(zhí)行其它操作的同時(shí)將數(shù)據(jù)從一個(gè)存儲(chǔ)器單元轉(zhuǎn)移到另一存儲(chǔ)器單元的程序。在DSP12設(shè)置寄存器之后,DSP12可指令MIDI硬件單元18開始產(chǎn)生MIDI幀的數(shù)字波形。如下文所詳細(xì)解釋,MIDI硬件單元18可通過(guò)針對(duì)語(yǔ)音指示符的列表中的每一MIDI語(yǔ)音產(chǎn)生數(shù)字波形且將這些數(shù)字波形聚集為MIDI語(yǔ)音的波形而產(chǎn)生MIDI幀的數(shù)字波形。當(dāng)MIDI硬件單元18結(jié)束產(chǎn)生MIDI幀的數(shù)字波形時(shí),MIDI硬件單元18可向DSP12發(fā)送中斷。在從MIDI硬件單元18接收到中斷之后,DSP12可向MIDI硬件單元18發(fā)送對(duì)數(shù)字波形的DME請(qǐng)求。當(dāng)MIDI硬件單元18接收到請(qǐng)求時(shí),MIDI硬件單元18可向DSP12發(fā)送數(shù)字波形。為了產(chǎn)生指示MIDI幀中存在的MIDI語(yǔ)音的語(yǔ)音指示符的列表,DSP12可確定MIDI語(yǔ)音中的哪一者在MIDI幀中具有至少最小聲學(xué)顯著性水平。MIDI語(yǔ)音在MIDI幀中的聲學(xué)顯著性水平可隨著所述MIDI語(yǔ)音對(duì)于MIDI幀的人類聽者所感知的整體聲音的重要性12而變化。為了產(chǎn)生MIDI語(yǔ)音的數(shù)字波形,MIDI硬件單元18可存取界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合中的至少一些語(yǔ)音參數(shù)。語(yǔ)音參數(shù)集合可通過(guò)指定對(duì)于產(chǎn)生MIDI語(yǔ)音的數(shù)字波形而言必要的信息及/或通過(guò)指定可將所述信息定位于何處而界定MIDI語(yǔ)音。舉例來(lái)說(shuō),MIDI語(yǔ)音參數(shù)集合可指定諧振級(jí)、音高混響、音量及其它聲學(xué)特征。另外,MIDI語(yǔ)音參數(shù)集合包括指向RAM單元IO中含有語(yǔ)音的基本波形的位置的地址的指針。MIDI幀的數(shù)字波形可為MIDI語(yǔ)音的數(shù)字波形的聚集。舉例來(lái)說(shuō),MIDI幀的數(shù)字波形可為MIDI語(yǔ)音的數(shù)字波形的和。如下文將詳細(xì)論述,MIDI硬件單元18可提供若干優(yōu)勢(shì)。舉例來(lái)說(shuō),MIDI硬件單元18可包括導(dǎo)致數(shù)字波形的有效產(chǎn)生的若干特征。由于數(shù)字波形的此有效產(chǎn)生,音頻裝置4可能能夠產(chǎn)生較高質(zhì)量的聲音、消耗較少功率或以其它方式對(duì)用于回放MIDI文件的常規(guī)技術(shù)加以改進(jìn)。此外,因?yàn)镸IDI硬件單元18可有效地產(chǎn)生數(shù)字波形,所以MIDI硬件單元18可能能夠在固定量的時(shí)間內(nèi)產(chǎn)生較多MIDI語(yǔ)音的數(shù)字波形。所述額外MIDI語(yǔ)音的存在可改進(jìn)人類聽者所感知的聲音的質(zhì)量。圖2是說(shuō)明音頻裝置4的示范性MIDI硬件單元18的框圖。如圖2的實(shí)例中所說(shuō)明,MIDI硬件單元18包括發(fā)送及接收數(shù)據(jù)的總線接口30。舉例來(lái)說(shuō),總線接口30可包括AMBA高性能總線(AHB)主接口、AHB從屬接口及存儲(chǔ)器總線接口?;蛘?,總線接口30可包括AXI總線接口或另一類型的總線接口。AXI代表高級(jí)可擴(kuò)展接口。另外,MIDI硬件單元18可包括協(xié)調(diào)模塊32。協(xié)調(diào)模塊32協(xié)調(diào)MIDI硬件單元18內(nèi)的數(shù)據(jù)流。當(dāng)MIDI硬件單元18從DSP12接收到開始產(chǎn)生MIDI幀的數(shù)字信號(hào)的指令時(shí),協(xié)調(diào)模塊32可將由DSP12產(chǎn)生的語(yǔ)音指示符的列表從RAM單元10加載到MIDI硬件單元18中的鏈接列表存儲(chǔ)器單元42中。列表中的每一語(yǔ)音指示符指示在當(dāng)前MIDI幀期間具有聲學(xué)顯著性的MIDI語(yǔ)音。語(yǔ)音指示符的列表中的每一語(yǔ)音指示符可指定RAM單元IO中存儲(chǔ)界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的存儲(chǔ)器位置。舉例來(lái)說(shuō),每一語(yǔ)音指示符可包括特定語(yǔ)音參數(shù)集合的存儲(chǔ)器地址或一索引值,協(xié)調(diào)模塊32可根據(jù)所述索引值導(dǎo)出特定語(yǔ)音參數(shù)集合的存儲(chǔ)器地址。在協(xié)調(diào)模塊32將語(yǔ)音指示符的列表加載到鏈接列表存儲(chǔ)器單元42中之后,協(xié)調(diào)模塊32可識(shí)別處理元件34A到34N中的一者,以產(chǎn)生由存儲(chǔ)于鏈接列表存儲(chǔ)器42中的語(yǔ)音指示符的列表中的語(yǔ)音指示符所指示的MIDI語(yǔ)音中的一者的數(shù)字波形。處理元件34A到34N在本文中統(tǒng)稱為"處理元件34"。處理元件34可彼此并行地產(chǎn)生MIDI語(yǔ)音的數(shù)字波形。處理元件34中的每一者可與語(yǔ)音參數(shù)集合(VPS)RAM單元46A到46N中的一者相關(guān)聯(lián)。本發(fā)明可將VPSRAM單元46A到46N統(tǒng)稱為"VPSRAM單元46"。VPSRAM單元46可為存儲(chǔ)由處理元件34使用的語(yǔ)音參數(shù)的寄存器。當(dāng)協(xié)調(diào)模塊32識(shí)別處理元件34中的一者以產(chǎn)生MIDI語(yǔ)音的數(shù)字波形時(shí),協(xié)調(diào)模塊32可將MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的語(yǔ)音參數(shù)存儲(chǔ)到與所識(shí)別的處理元件相關(guān)聯(lián)的VPSRAM單元46中的一者中。另外,協(xié)調(diào)模塊32可將語(yǔ)音參數(shù)集合的語(yǔ)音參數(shù)存儲(chǔ)到波形獲取單元/低頻振蕩器(WFU/LFO)存儲(chǔ)器單元39中。在將語(yǔ)音參數(shù)加載到VPSRAM單元及WFU/LFO存儲(chǔ)器單元39中之后,協(xié)調(diào)模塊32可指令處理元件開始產(chǎn)生MIDI語(yǔ)音的數(shù)字波形。處理元件34中的每一者可與程序存儲(chǔ)器單元44A到44N(統(tǒng)稱為"程序存儲(chǔ)器單元44")中的一者相關(guān)聯(lián)。程序存儲(chǔ)器單元44中的每一者存儲(chǔ)程序指令集合。為了產(chǎn)生MIDI語(yǔ)音的數(shù)字波形,處理元件可執(zhí)行存儲(chǔ)于與處理元件相關(guān)聯(lián)的程序存儲(chǔ)器單元44中的一者中的程序指令集合。這些程序指令可使得處理元件從與處理元件相關(guān)聯(lián)的VPS存儲(chǔ)器單元46中的一者檢索語(yǔ)音參數(shù)集合。另外,程序指令可使得處理元件向波形獲取單元(WFU)36發(fā)送對(duì)在語(yǔ)音參數(shù)中由指向語(yǔ)音的基本波形樣本的指針?biāo)付ǖ牟ㄐ蔚恼?qǐng)求。處理元件34中的每一者可使用WFU36。響應(yīng)于來(lái)自處理元件34中的一者的請(qǐng)求,WFU36可向請(qǐng)求處理元件返回一個(gè)或一個(gè)以上波形樣本。因?yàn)椴ㄐ慰稍跇颖緝?nèi)相移(例如,高達(dá)一個(gè)波形循環(huán)),所以WFU36可返回兩個(gè)樣本以便使用內(nèi)插而補(bǔ)償相移。此外,因?yàn)榱Ⅲw聲信號(hào)由兩個(gè)單獨(dú)的波形組成,所以WFU36可返回高達(dá)四個(gè)樣本。由WFU36返回的最后樣本可為可用于內(nèi)插的分?jǐn)?shù)相位。WFU36可使用高速緩沖存儲(chǔ)器48來(lái)較快速地獲取基本波形。在WFU36將音頻樣本返回到處理元件34中的一者之后,相應(yīng)處理元件可執(zhí)行額外程序指令。所述額外指令可包括從MIDI硬件單元18中的低頻振蕩器(LFO)38請(qǐng)求不對(duì)稱三角形波形的樣本。通過(guò)使WFU36返回的波形乘以LF038返回的三角波,處理元件可操縱波形的各種聲學(xué)特征。舉例來(lái)說(shuō),使波形乘以三角波可產(chǎn)生聽起來(lái)較像所要器具的波形。其它指令可使得處理元件使波形循環(huán)特定次數(shù)、調(diào)整波形的振幅、添加混響、添加顫音效果或提供其它聲學(xué)效果。以此方式,處理元件可產(chǎn)生持續(xù)一個(gè)MIDI幀的語(yǔ)音的波形。最后,處理元件可能會(huì)遇到退出指令。當(dāng)處理元件遇到退出指令時(shí),處理元件可向求和緩沖器40提供所產(chǎn)生的波形?;蛘撸幚碓稍谔幚碓a(chǎn)生所述樣本時(shí)將所產(chǎn)生的數(shù)字波形的每一樣本存儲(chǔ)到求和緩沖器40中。當(dāng)求和緩沖器40從處理元件34中的一者接收到波形時(shí),求和緩沖器將波形聚集為MIDI幀的整體波形。舉例來(lái)說(shuō),求和緩沖器40可最初存儲(chǔ)平頂波(亦即,所有數(shù)字樣本均為零的波形)。當(dāng)求和緩沖器40從處理元件34中的一者接收到波形時(shí),求和緩沖器40可將所述波形的每一數(shù)字樣本添加到存儲(chǔ)于求和緩沖器40中的波形的相應(yīng)樣本。以此方式,求和緩沖器40產(chǎn)生并存儲(chǔ)MIDI幀的整體波形。最后,協(xié)調(diào)模塊32可確定處理元件34已完成產(chǎn)生鏈接列表存儲(chǔ)器42中的列表中所指示的所有語(yǔ)音的數(shù)字波形,且已將那些數(shù)字波形提供到求和緩沖器40。在此點(diǎn),求和緩沖器40可含有整個(gè)當(dāng)前MIDI幀的完整數(shù)字波形。當(dāng)協(xié)調(diào)模塊32作出此確定時(shí),協(xié)調(diào)模塊32可向DSP12發(fā)送中斷。響應(yīng)于所述中斷,DSP12可經(jīng)由直接存儲(chǔ)器交換(DME)向求和緩沖器中的控制單元(未圖示)發(fā)送請(qǐng)求以接收求和緩沖器40的內(nèi)容?;蛘撸珼SPIO也可經(jīng)預(yù)編程以執(zhí)行DME?;蛘?,DSP12也可經(jīng)預(yù)編程以執(zhí)行DME。圖3是說(shuō)明音頻裝置4的實(shí)例操作的流程圖。最初,處理器8遇到將MIDI文件從音頻存儲(chǔ)模塊6加載到RAM單元IO中的程序指令(50)。舉例來(lái)說(shuō),如果音頻裝置4是移動(dòng)電話,則當(dāng)音頻裝置4接收到傳入的電話呼叫且MIDI文件描述鈴聲時(shí)處理器8可遇到將MIDI文件從持久存儲(chǔ)模塊6加載到RAM單元10中的程序指令。在將MIDI文件加載到RAM單元10中之后,處理器8可剖析來(lái)自RAM單元10中的MIDI文件的MIDI指令(52)。處理器8接著可對(duì)MIDI事件進(jìn)行調(diào)度且根據(jù)此調(diào)度將MIDI事件傳遞到DSP12(54)。響應(yīng)于MIDI事件,DSP12與MIDI硬件單元18協(xié)作可實(shí)時(shí)輸出連續(xù)數(shù)字波形(56)。亦即,由DSP12輸出的數(shù)字波形不被分段成離散MIDI幀。DSP12向DAC14提供連續(xù)數(shù)字波形(58)。DAC14將數(shù)字波形中的個(gè)別數(shù)字樣本轉(zhuǎn)換為電壓(60)??墒褂枚喾N不同數(shù)/模轉(zhuǎn)換技術(shù)來(lái)實(shí)施DAC14。舉例來(lái)說(shuō),DAC14可作為脈沖寬度調(diào)制器、超取樣DAC、加權(quán)二進(jìn)制DAC、R-2R梯形DAC、溫度計(jì)編碼DAC、分段式DAC或另一類型的數(shù)/模轉(zhuǎn)換器而實(shí)施。在DAC14將數(shù)字波形轉(zhuǎn)換為模擬音頻信號(hào)之后,DAC14可將模擬音頻信號(hào)提供到驅(qū)動(dòng)電路16(62)。驅(qū)動(dòng)電路16可使用模擬信號(hào)來(lái)驅(qū)動(dòng)揚(yáng)聲器19(64)。揚(yáng)聲器19可為將電模擬信號(hào)轉(zhuǎn)換為物理聲音的電機(jī)換能器。當(dāng)揚(yáng)聲器19產(chǎn)生聲音時(shí),音頻裝置4的用戶可聽到聲音且適當(dāng)?shù)刈鞒鲰憫?yīng)。舉例來(lái)說(shuō),如果音頻裝置4為移動(dòng)電話,則用戶可在揚(yáng)聲器19產(chǎn)生鈴聲聲音時(shí)接聽電話呼叫。圖4是說(shuō)明音頻裝置4中的DSP12的實(shí)例操作的流程圖。最初,DSP12從處理器8接收MIDI事件(70)。在接收到MIDI事件之后,DSP12確定MIDI事件是否為更新MIDI語(yǔ)音的參數(shù)的指令(72)。舉例來(lái)說(shuō),可接收MIDI事件以針對(duì)鋼琴的中音C語(yǔ)音增大語(yǔ)音參數(shù)集合中的左側(cè)通道參數(shù)的增益。以此方式,鋼琴的中音C語(yǔ)音可能聽起來(lái)如同音符正來(lái)自左側(cè)。如果DSP12確定MIDI事件是更新MIDI語(yǔ)音的參數(shù)的指令(72為"是"),則DSP12可更新RAM單元IO中的參數(shù)(74)。另一方面,如果DSP12確定MIDI事件不是更新MIDI語(yǔ)音的參數(shù)的指令(72為"否"),則DSP12可產(chǎn)生語(yǔ)音指示符的列表(75)。鏈接列表中的語(yǔ)音指示符中的每一者通過(guò)指定RAM單元10中存儲(chǔ)界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的存儲(chǔ)器位置而指示MIDI幀的MIDI語(yǔ)音。因?yàn)镸IDI硬件單元18可產(chǎn)生受到有限時(shí)間限制的MIDI語(yǔ)音的數(shù)字波形,所以對(duì)于MIDI硬件單元18而言可能會(huì)不能產(chǎn)生由MIDI指令針對(duì)MIDI幀指定的所有MIDI語(yǔ)音的數(shù)字波形。因此,鏈接列表中的語(yǔ)音指示符所指示的MIDI語(yǔ)音是那些在MIDI幀期間具有最大聲學(xué)顯著性的MIDI語(yǔ)音。語(yǔ)音指示符的列表可為鏈接列表。亦即,除了列表中的最后一個(gè)語(yǔ)音指示符之外,列表中的每一語(yǔ)音指示符均可與指向列表中的下一語(yǔ)音指示符的存儲(chǔ)器地址的指針相關(guān)聯(lián)。為了確保MIDI硬件單元18僅產(chǎn)生最顯著MIDI語(yǔ)音的數(shù)字波形,DSP12可使用一個(gè)或一個(gè)以上試探算法(heuristicalgorithm)來(lái)識(shí)別在聲學(xué)上最為顯著的語(yǔ)音。舉例來(lái)說(shuō),DSP12可識(shí)別具有最高平均音量的那些語(yǔ)音、形成必要諧調(diào)的那些語(yǔ)音或其它聲學(xué)特征。DSP12可產(chǎn)生語(yǔ)音指示符的列表以使得在聲學(xué)上最為顯著的語(yǔ)音是列表中的第一個(gè)語(yǔ)音、在聲學(xué)上第二顯著的語(yǔ)音是列表中的第二個(gè)語(yǔ)音等等。另外,DSP12可從列表移除在MIDI幀中不活動(dòng)的任何語(yǔ)音。在產(chǎn)生語(yǔ)音指示符的列表之后,DSP12可確定MIDI硬件單元18是否閑置(76)。MIDI硬件單元18可在產(chǎn)生MIDI文件的第一MIDI幀的數(shù)字波形之前或在完成MIDI幀的數(shù)字波形的產(chǎn)生之后閑置。如果MIDI硬件單元18不是閑置的(76為"否"),則DSP12可等待一個(gè)或一個(gè)以上時(shí)鐘循環(huán)且接著再次確定MIDI硬件單元18是否閑置(76)。如果MIDI硬件單元18閑置(76為"是"),則DSP12可將指令集合加載到MIDI硬件單元18中的程序RAM單元44中(78)。舉例來(lái)說(shuō),DSP12可確定是否己將指令加載到程序RAM單元44中。如果尚未將指令加載到程序RAM單元44中,則DSP12可使用直接存儲(chǔ)器交換(DME)將所述指令轉(zhuǎn)移到程序RAM單元44中?;蛘?,如果已將指令加載到程序RAM單元44中,則DSP12可跳過(guò)此步驟。在DSP12已將程序指令加載到程序RAM單元44中之后,DSP12可激活MIDI硬件單元18(80)。舉例來(lái)說(shuō),DSP12可通過(guò)更新MIDI硬件單元18中的寄存器或通過(guò)向MIDI硬件單元18發(fā)送控制信號(hào)而激活MIDI硬件單元18。在激活MIDI硬件單元18之后,DSP12可等待直到DSP12從MIDI硬件單元18接收到中斷(82)。在等待中斷的同時(shí),DSP12可處理并輸出先前MIDI幀的數(shù)字波形。另外,DSP12也可產(chǎn)生下一MIDI幀的語(yǔ)音指示符的列表。在接收到中斷之后,DSP12中的中斷服務(wù)寄存器可設(shè)置從MIDI硬件單元18中的求和緩沖器40傳遞MIDI幀的數(shù)字波形的DME請(qǐng)求(84)。為了在正傳遞求和緩沖器40中的數(shù)字波形時(shí)避免長(zhǎng)期硬件閑置,直接存儲(chǔ)器交換請(qǐng)求可在三十二個(gè)32位字塊中從求和緩沖器40傳遞數(shù)字波形??赏ㄟ^(guò)求和緩沖器40中的防止處理元件34在求和緩沖器40中蓋寫數(shù)據(jù)的鎖定機(jī)構(gòu)來(lái)保持?jǐn)?shù)字波形的數(shù)據(jù)完整性。因?yàn)榭芍饓K地釋放此鎖定機(jī)構(gòu),所以直接存儲(chǔ)器交換傳遞可與硬件執(zhí)行并行進(jìn)行。在DSP12從MIDI硬件單元18接收到MIDI幀的音頻樣本之后,DSP12可緩沖數(shù)字波形直到DSP12已向DAC14完全輸出在從MIDI硬件單元18接收的MIDI幀的數(shù)字波形之前的MIDI幀的數(shù)位波形(86)。在DSP12已完全輸出先前MIDI幀的數(shù)字波形之后,DSP12可輸出從MIDI硬件單元18接收的當(dāng)前MIDI幀的數(shù)字波形(88)。圖5是說(shuō)明音頻裝置4的MIDI硬件單元18中的協(xié)調(diào)模塊32的實(shí)例操作的流程圖。最初,協(xié)調(diào)模塊32可從DSP12接收開始產(chǎn)生MIDI幀的數(shù)字波形的指令(100)。在從DSP12接收到所述指令之后,協(xié)調(diào)模塊32可清除求和緩沖器40的內(nèi)容(102)。舉例來(lái)說(shuō),協(xié)調(diào)模塊32可指令求和緩沖器40將求和緩沖器40中的數(shù)字波形全部設(shè)置為零。在協(xié)調(diào)模塊32清除求和緩沖器40的內(nèi)容之后,協(xié)調(diào)模塊32可將DSP12所產(chǎn)生的語(yǔ)音識(shí)別符的列表從RAM單元10加載到鏈接列表存儲(chǔ)器42中(104)。在加載語(yǔ)音指示符的鏈接列表之后,協(xié)調(diào)模塊32可確定協(xié)調(diào)模塊32是否已從處理元件34中的一者接收到指示處理元件已結(jié)束產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的信號(hào)(106)。當(dāng)協(xié)調(diào)模塊32尚未從處理元件34中的一者接收到指示處理元件已結(jié)束產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的信號(hào)時(shí)(106為"否"),處理元件34可返回且等待所述信號(hào)(106)。當(dāng)協(xié)調(diào)模塊32從處理元件34中的一者接收到指示處理元件已結(jié)束產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的信號(hào)時(shí)(106為"是"),協(xié)調(diào)模塊32可向RAM單元IO寫入存儲(chǔ)于與處理元件相關(guān)聯(lián)的VPSRAM單元46中的一者中及WFU/LFO存儲(chǔ)器39中的可能已由處理元件、波形獲取單元36或LFO38改變的語(yǔ)音參數(shù)集合的一個(gè)或一個(gè)以上參數(shù)(108)。舉例來(lái)說(shuō),在產(chǎn)生MIDI語(yǔ)音的波形的同時(shí),處理元件34A可改變VPS存儲(chǔ)器46A中的語(yǔ)音參數(shù)集合的特定參數(shù)。在此情況下,例如,處理元件34A可更新語(yǔ)音的語(yǔ)音參數(shù)以指示MIDI幀的末尾的語(yǔ)音的音量水平。通過(guò)將經(jīng)更新的語(yǔ)音參數(shù)寫回到RAM單元10,給定處理元件可開始產(chǎn)生下一MIDI幀中處于與當(dāng)前MIDI幀所終止于的音量水平相同的音量水平的MIDI語(yǔ)音的數(shù)字波形。其它可寫入?yún)?shù)可包括左右平衡、整體相移、由LF038產(chǎn)生的三角形波形的相移或其它聲學(xué)特征。.在協(xié)調(diào)模塊將參數(shù)寫回到RAM單元IO之后,協(xié)調(diào)模塊32可確定處理元件34是否已產(chǎn)生由列表中的語(yǔ)音指示符所指示的每一MIDI語(yǔ)音的數(shù)字波形(110)。舉例來(lái)說(shuō),協(xié)17調(diào)模塊32可維持指示語(yǔ)音指示符的鏈接列表中的當(dāng)前語(yǔ)音指示符的指針。最初,此指針可指示鏈接列表中的第一語(yǔ)音指示符。如果處理元件34已針對(duì)列表中所指示的MIDI語(yǔ)音中的每一者產(chǎn)生數(shù)字波形(IIO為"是"),則協(xié)調(diào)模塊32可向DSP12斷言中斷以指示MIDI幀的整體數(shù)字波形是完整的(112)。另一方面,如果處理元件34尚未針對(duì)列表中的語(yǔ)音指示符所指示的MIDI語(yǔ)音中的每一者產(chǎn)生數(shù)字波形(110為"否"),則協(xié)調(diào)模塊32可識(shí)別處理元件34中閑置的一者(114)。如果所有處理元件34均不閑置(亦即,繁忙),則協(xié)調(diào)模塊32可等待直到處理元件34中的一者閑置。在識(shí)別處理元件34中閑置的一者之后,協(xié)調(diào)模塊32可將當(dāng)前語(yǔ)音指示符所指示的語(yǔ)音參數(shù)集合的參數(shù)加載到VPSRAM單元44中與閑置處理元件相關(guān)聯(lián)的一者中(112)。協(xié)調(diào)模塊32可能僅將語(yǔ)音參數(shù)集合的與處理元件相關(guān)的那些參數(shù)加載到VPSRAM單元中。另外,協(xié)調(diào)模塊32可將語(yǔ)音參數(shù)集合的與WFU36及LF038相關(guān)的參數(shù)加載到WFU/LFORAM單元39中(118)。協(xié)調(diào)模塊32接著可使閑置處理元件能夠開始產(chǎn)生MIDI語(yǔ)音的數(shù)字波形(120)。接下來(lái),協(xié)調(diào)模塊32可將當(dāng)前語(yǔ)音指示符更新為列表中的下一語(yǔ)音指示符且返回以再次確定協(xié)調(diào)模塊32是否已接收到指示處理元件34中的一者己完成產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的信號(hào)(106)。圖6是說(shuō)明使用指定存儲(chǔ)器地址的語(yǔ)音指示符的列表的實(shí)例DSP12的框圖。如圖6的實(shí)例中所說(shuō)明,DSP12包括存儲(chǔ)列表基礎(chǔ)指針140的寄存器。列表基礎(chǔ)指針140可指定鏈接列表存儲(chǔ)器42中的語(yǔ)音指示符的列表142中的第一語(yǔ)音指示符的存儲(chǔ)器地址。如果在列表142中不存在語(yǔ)音指示符(如在MIDI文件開始處可能的情形),則列表基礎(chǔ)指針140的值可為空值地址(nulladdress)。另外,DSP12包括存儲(chǔ)語(yǔ)音指示符數(shù)目寄存器144中的值的寄存器。語(yǔ)音指示符數(shù)目寄存器144中的值指定列表142中的語(yǔ)音指示符的數(shù)目的計(jì)數(shù)(tally)。在圖6中所說(shuō)明的實(shí)例數(shù)據(jù)結(jié)構(gòu)中,列表142中的每一語(yǔ)音指示符可包含RAM單元10中的語(yǔ)音參數(shù)集合的存儲(chǔ)器地址及鏈接列表存儲(chǔ)器42中的下一語(yǔ)音指示符的存儲(chǔ)器地址。列表142中的最后一個(gè)語(yǔ)音指示符可為列表142中的下一語(yǔ)音指示符的地址指定空值地址。RAM單元10可含有語(yǔ)音參數(shù)集合146的集合。RAM單元10中的每一語(yǔ)音參數(shù)集合可為指定語(yǔ)音參數(shù)集合中的語(yǔ)音參數(shù)的值的鄰接存儲(chǔ)器位置的塊。第一語(yǔ)音參數(shù)的存儲(chǔ)器位置的存儲(chǔ)器地址可充當(dāng)語(yǔ)音參數(shù)集合的存儲(chǔ)器地址。在DSP12接收到MIDI文件的第一MIDI事件之前,列表142可能不含有任何語(yǔ)音指示符。為了反映列表142不含有任何語(yǔ)音指示符的事實(shí),列表基礎(chǔ)指針140的值可為空值存儲(chǔ)器地址,且語(yǔ)音指示符數(shù)目寄存器144中的值可指定數(shù)目零。在MIDI文件的第一MIDI幀開始處,處理器8可向協(xié)調(diào)模塊32提供在MIDI幀期間發(fā)生的MIDI事件的集合。舉例來(lái)說(shuō),處理器8可向DSP12提供打開語(yǔ)音的MIDI事件、關(guān)閉語(yǔ)音的MIDI事件、與觸后效果相關(guān)聯(lián)的MIDI事件及產(chǎn)生其它所述效果的MIDI事件。為了處理MIDI事件,DSP12中的列表產(chǎn)生器模塊156可在鏈接列表存儲(chǔ)器42中產(chǎn)生鏈接列表142。一般而言,列表產(chǎn)生器模塊156在每一MIDI幀期間不完全產(chǎn)生列表142。實(shí)情是,列表產(chǎn)生器模塊156可再使用列表142中已存在的語(yǔ)音指示符。為了產(chǎn)生鏈接列表142,列表產(chǎn)生器模塊156可確定列表142是否已包括指定DSP12所提供的MIDI事件的集合中所指定的每一MIDI語(yǔ)音的語(yǔ)音參數(shù)集合146中的一者的存儲(chǔ)器地址的語(yǔ)音指示符。如果列表產(chǎn)生器模塊156確定列表142包括MIDI語(yǔ)音中的一者的語(yǔ)音指示符,則列表產(chǎn)生器模塊156可從列表142移除語(yǔ)音指示符。在從列表142移除語(yǔ)音指示符之后,列表產(chǎn)生器模塊156可將語(yǔ)音指示符添加回列表142中。當(dāng)列表產(chǎn)生器模塊156將語(yǔ)音指示符添加回列表142中時(shí),列表產(chǎn)生器模塊156可在列表中的第一語(yǔ)音指示符處開始,且確定經(jīng)移除的語(yǔ)音指示符所指示的MIDI語(yǔ)音與列表142中的第一語(yǔ)音指示符所指示的語(yǔ)音相比是否在聲學(xué)上較為顯著。換句話說(shuō),列表產(chǎn)生器模塊156可確定哪一語(yǔ)音對(duì)于聲音較為重要。列表產(chǎn)生器模塊156可應(yīng)用一個(gè)或一個(gè)以上試探算法以確定是MIDI事件中所指定的MIDI語(yǔ)音還是第一語(yǔ)音指示符所指定的MIDI語(yǔ)音在聲學(xué)上較為顯著。舉例來(lái)說(shuō),列表產(chǎn)生器模塊156可確定兩個(gè)MIDI語(yǔ)音中的哪一者在當(dāng)前MIDI幀期間具有最大平均音量??蓱?yīng)用其它心理聲學(xué)技術(shù)來(lái)確定聲學(xué)顯著性。如果經(jīng)移除的語(yǔ)音指示符所指示的MIDI語(yǔ)音比列表142中的第一語(yǔ)音指示符所指示的語(yǔ)音顯著,則列表產(chǎn)生器模塊156可將經(jīng)移除的語(yǔ)音指示符添加到列表頂部。當(dāng)列表產(chǎn)生器模塊156將經(jīng)移除的語(yǔ)音指示符添加到列表頂部時(shí),列表產(chǎn)生器模塊156可將列表基礎(chǔ)指針的值改變?yōu)榈扔诮?jīng)移除的語(yǔ)音指示符的存儲(chǔ)器地址。如果經(jīng)移除的語(yǔ)音指示符所指示的MIDI語(yǔ)音不比第一語(yǔ)音指示符所指示的MIDI語(yǔ)音顯著,則列表產(chǎn)生器模塊156使列表142繼續(xù)向下,直到列表產(chǎn)生器模塊156識(shí)別出由列表142中的語(yǔ)音指示符中的一者所指示的與經(jīng)移除的語(yǔ)音指示符所指示的MIDI語(yǔ)音相比較不顯著的MIDI語(yǔ)音。當(dāng)列表產(chǎn)生器模塊156識(shí)別出所述MIDI語(yǔ)音時(shí),列表產(chǎn)生器模塊156可將經(jīng)移除的語(yǔ)音指示符插入到列表142中所識(shí)別的MIDI語(yǔ)音的語(yǔ)音指示符的上方(亦即,在其之前)。如果經(jīng)移除的語(yǔ)音指示符所指示的MIDI語(yǔ)音與列表142中的語(yǔ)音指示符所指示的所有其它MIDI語(yǔ)音相比在聲學(xué)上較不顯著,則列表產(chǎn)生器模塊156將經(jīng)移除的語(yǔ)音指示符添加到列表142的末尾。列表產(chǎn)生器模塊156可針對(duì)MIDI事件的集合中的每一MIDI語(yǔ)音執(zhí)行此過(guò)程。如果列表產(chǎn)生器模塊156確定列表142不包括與MIDI事件相關(guān)聯(lián)的MIDI語(yǔ)音的語(yǔ)音指示符,則列表產(chǎn)生器模塊156可在鏈接列表存儲(chǔ)器42中產(chǎn)生所述MIDI語(yǔ)音的新的語(yǔ)音指示符。在產(chǎn)生新的語(yǔ)音指示符之后,列表產(chǎn)生器模塊156可以上文關(guān)于經(jīng)移除的語(yǔ)音指示符而描述的方式將新語(yǔ)音指示符插入到列表142中。以此方式,列表產(chǎn)生器模塊156可產(chǎn)生鏈接列表,其中以根據(jù)列表中的語(yǔ)音指示符所指示的MIDI語(yǔ)音的聲學(xué)顯著性的順序來(lái)排列鏈接列表中的語(yǔ)音指示符。作為一個(gè)實(shí)例,列表產(chǎn)生器模塊156可產(chǎn)生從MIDI幀中的最顯著語(yǔ)音到最不顯著語(yǔ)音而指示MIDI語(yǔ)音的語(yǔ)音指示符的列表。在圖6的實(shí)例中,DSP12包括在產(chǎn)生列表142時(shí)幫助列表產(chǎn)生器模塊156的一組指針。此組指針包括保持列表產(chǎn)生器模塊156當(dāng)前正使用的語(yǔ)音指示符的存儲(chǔ)器地址的當(dāng)前語(yǔ)音指示符指針148、保持列表產(chǎn)生器模塊156正插入到列表142中的語(yǔ)音指示符的存儲(chǔ)器地址的事件語(yǔ)音指示符指針150及保持列表產(chǎn)生器模塊156在列表產(chǎn)生器模塊156當(dāng)前正使用的語(yǔ)音指示符之前所使用的語(yǔ)音指示符的存儲(chǔ)器地址的先前語(yǔ)音指示符指針152。如果語(yǔ)音指示符數(shù)目寄存器144中的值超過(guò)語(yǔ)音指示符的最大數(shù)目,則列表產(chǎn)生器模塊156可將與列表142中指示最不顯著MIDI語(yǔ)音的語(yǔ)音指示符相關(guān)聯(lián)的存儲(chǔ)器解除分配。如果列表142中的語(yǔ)音指示符從最顯著到最不顯著而排列,則列表產(chǎn)生器模塊156可通過(guò)跟隨下一語(yǔ)音指示符存儲(chǔ)器地址的鏈直到列表產(chǎn)生器模塊156識(shí)別出包括指定空值存儲(chǔ)器地址的下一語(yǔ)音指示符存儲(chǔ)器地址的語(yǔ)音指示符而識(shí)別列表142中指示最不顯著MIDI語(yǔ)音的語(yǔ)音指示符。在將與最后一個(gè)語(yǔ)音指示符相關(guān)聯(lián)的存儲(chǔ)器解除分配之后,列表產(chǎn)生器模塊156可使語(yǔ)音指示符數(shù)目寄存器144中的值遞減一。在列表產(chǎn)生器模塊156產(chǎn)生列表142之后,列表產(chǎn)生器模塊156可向協(xié)調(diào)模塊提供列表基礎(chǔ)指針140及語(yǔ)音指示符數(shù)目144的值。協(xié)調(diào)模塊32可包括用以保持列表基礎(chǔ)指針140及語(yǔ)音指示符數(shù)目144的這些值的寄存器(未圖示)。協(xié)調(diào)模塊32使用這些值來(lái)存取列表142且將列表142中的語(yǔ)音指示符所指示的MIDI語(yǔ)音指派給處理元件32。舉例來(lái)說(shuō),當(dāng)列表產(chǎn)生器模塊156結(jié)束產(chǎn)生列表142時(shí),協(xié)調(diào)模塊32可使用列表產(chǎn)生器模塊156所提供的列表基礎(chǔ)指針140的值來(lái)將列表142加載到鏈接列表存儲(chǔ)器42中。協(xié)調(diào)模塊32接著可識(shí)別處理元件34中閑置的一者。協(xié)調(diào)模塊32接著可獲得RAM單元10中存儲(chǔ)界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的存儲(chǔ)器位置的存儲(chǔ)器地址,所述MIDI語(yǔ)音由列表142中的處于協(xié)調(diào)模塊32中指示當(dāng)前語(yǔ)音指示符的指針?biāo)付ǖ拇鎯?chǔ)器位置處的語(yǔ)音指示符所指示。協(xié)調(diào)模塊32接著可使用所獲得的存儲(chǔ)器地址來(lái)將語(yǔ)音參數(shù)集合中的至少一些語(yǔ)音參數(shù)存儲(chǔ)于VPSRAM單元46中與閑置處理元件相關(guān)聯(lián)的一者中。在將語(yǔ)音參數(shù)集合存儲(chǔ)20于所述VPSRAM單元中之后,協(xié)調(diào)模塊32可向處理元件發(fā)送開始產(chǎn)生語(yǔ)音的波形的信號(hào)。協(xié)調(diào)模塊32可繼續(xù)此操作,直到處理元件34已針對(duì)列表142中的語(yǔ)音指示符所指示的每一語(yǔ)音產(chǎn)生波形。DSP12及協(xié)調(diào)模塊32對(duì)語(yǔ)音指示符的鏈接列表的使用可呈現(xiàn)若干優(yōu)勢(shì)。舉例來(lái)說(shuō),因?yàn)镈SP12對(duì)指示語(yǔ)音參數(shù)集合的語(yǔ)音指示符的鏈接列表進(jìn)行分類及重新排列,所以不必對(duì)RAM單元10中的實(shí)際語(yǔ)音參數(shù)集合進(jìn)行分類及重新排列。語(yǔ)音指示符可顯著小于語(yǔ)音參數(shù)集合。因此,DSP12向RAM單元IO及從RAM單元IO移動(dòng)(亦即,寫入及讀取)較少數(shù)據(jù)。因此,與DSP12對(duì)語(yǔ)音參數(shù)集合進(jìn)行了分類及重新排列的情況相比,DSP12可需要從協(xié)調(diào)模塊32到RAM單元10的總線上的較少帶寬。此外,因?yàn)镈SP12向RAM單元IO及從RAM單元IO移動(dòng)較少數(shù)據(jù),所以與DSP12移動(dòng)了實(shí)際語(yǔ)音參數(shù)集合的情況相比,DSP12可消耗較少功率。又,對(duì)語(yǔ)音指示符的鏈接列表的使用可準(zhǔn)許DSP12以任意次序向處理元件34提供語(yǔ)音參數(shù)集合。以任意次序向處理元件34提供語(yǔ)音參數(shù)集合在特定類型的音頻處理中可能是有用的。另外,對(duì)指示符的鏈接列表的使用在不同于MIDI語(yǔ)音集合參數(shù)的識(shí)別符的環(huán)境中可具有適用性。舉例來(lái)說(shuō),指示符可指示經(jīng)預(yù)編程的數(shù)字濾波器而非MIDI語(yǔ)音參數(shù)集合。每一經(jīng)預(yù)編程的數(shù)字濾波器可為雙二次濾波器提供五個(gè)系數(shù)。雙二次濾波器是濾出較遠(yuǎn)離極的頻率的雙極雙零數(shù)字濾波器。雙二次濾波器可用以對(duì)音頻均衡器進(jìn)行編程。與MIDI語(yǔ)音一樣,第一數(shù)字濾波器與第二數(shù)字濾波器相比可較顯著或較不顯著。因此,應(yīng)用數(shù)字濾波器的模塊可使用對(duì)于數(shù)字濾波器參數(shù)的指示符的經(jīng)分類鏈接列表以有效地應(yīng)用一組數(shù)字濾波器。舉例來(lái)說(shuō),音頻裝置4的模塊可在DSP12產(chǎn)生數(shù)字波形之后對(duì)數(shù)字波形應(yīng)用濾波器。圖7是說(shuō)明當(dāng)DSP12從處理器8接收MIDI事件的集合時(shí)DSP12的示范性操作的流程圖。最初,DS,12可從處理器8接收MIDI事件的集合(160)。在DSP12接收到MIDI事件的集合之后,列表產(chǎn)生器模塊156可確定MIDI事件的集合是否為空(162)。如果MIDI事件的集合為空(162為"是"),則列表產(chǎn)生器模塊156可向協(xié)調(diào)模塊32提供列表基礎(chǔ)指針140的值(164)。另一方面,如果MIDI事件的集合不為空(162為"否"),則列表產(chǎn)生器模塊156可從MIDI事件的集合移除一事件(166)。在本文中將所述經(jīng)移除事件稱為"當(dāng)前事件",且在本文中將與當(dāng)前事件相關(guān)聯(lián)的MIDI語(yǔ)音稱為"當(dāng)前語(yǔ)音"。在列表產(chǎn)生器模塊156從MIDI事件的集合移除當(dāng)前事件之后,列表產(chǎn)生器模塊156可確定列表基礎(chǔ)指針140的值是否為空值地址(168)。如果列表基礎(chǔ)指針140的值不為空值地址(168為"否"),則列表產(chǎn)生器模塊156可將當(dāng)前語(yǔ)音的語(yǔ)音指示符插入到列表142中。圖8及圖9說(shuō)明用于將語(yǔ)音指示符插入到列表142中的示范性程序。在列表產(chǎn)生器模塊156將語(yǔ)音指示符插入到列表142中之后,列表產(chǎn)生器模塊156可返回并再次確定MIDI事件的集合是否為空(162)。如果列表基礎(chǔ)指針140的值指定空值地址(168為"是"),則列表產(chǎn)生器模塊156可為當(dāng)前語(yǔ)音的語(yǔ)音指示符分配鏈接列表存儲(chǔ)器42中的存儲(chǔ)器的鄰接塊(170)。在分配存儲(chǔ)器的塊之后,列表產(chǎn)生器模塊156可在列表基礎(chǔ)指針140中存儲(chǔ)存儲(chǔ)器的塊的存儲(chǔ)器地址(172)。列表產(chǎn)生器模塊156接著可使語(yǔ)音指示符數(shù)目寄存器144中的值遞增一(174)。另外,列表產(chǎn)生器模塊156可初始化當(dāng)前語(yǔ)音的語(yǔ)音指示符(176)。為了初始化語(yǔ)音指示符,列表產(chǎn)生器模塊156可將語(yǔ)音指示符的下一語(yǔ)音指示符指針設(shè)置為空值,且將語(yǔ)音指示符的語(yǔ)音參數(shù)集合指針設(shè)置為當(dāng)前語(yǔ)音的語(yǔ)音參數(shù)集合在語(yǔ)音參數(shù)集合146中的存儲(chǔ)器地址。在初始化語(yǔ)音指示符之后,列表產(chǎn)生器模塊156可返回并再次確定MIDI事件的集合是否為空(162)。圖8是說(shuō)明當(dāng)DSP12將語(yǔ)音指示符插入到語(yǔ)音指示符的列表142中時(shí)DSP12的實(shí)例操作的流程圖。確切地說(shuō),圖8中的實(shí)例說(shuō)明一操作,其中DSP12中的列表產(chǎn)生器模塊156從列表142移除當(dāng)前語(yǔ)音的語(yǔ)音指示符或產(chǎn)生當(dāng)前語(yǔ)音的新的語(yǔ)音指示符以使得隨后可將語(yǔ)音指示符插入于列表142中的合適位置處。在圖8、圖9、圖10及圖11中,將術(shù)語(yǔ)"語(yǔ)音指示符"縮寫為"V丄",且將術(shù)語(yǔ)"語(yǔ)音參數(shù)集合"縮寫為"V.RS."。圖8的實(shí)例中所說(shuō)明的流程圖在標(biāo)記為"A"且對(duì)應(yīng)于圖7的實(shí)例中的以圓標(biāo)記的"A"的圓圈處開始。最初,列表產(chǎn)生器模塊156可將當(dāng)前語(yǔ)音指示符指針148的值設(shè)置為列表基礎(chǔ)指針140的值(180)。接著,列表產(chǎn)生器模塊156可將先前語(yǔ)音指示符指針152的值設(shè)置為空值(182)。在將先前語(yǔ)音指示符指針15,的值設(shè)置為空值之后,列表產(chǎn)生器模塊156可確定當(dāng)前語(yǔ)音指示符(亦即,具有等于當(dāng)前語(yǔ)音指示符指針148中的存儲(chǔ)器地址的存儲(chǔ)器地址的語(yǔ)音指示符)的語(yǔ)音參數(shù)指針是否等于當(dāng)前事件的語(yǔ)音的語(yǔ)音參數(shù)集合的存儲(chǔ)器地址(184)。如果列表產(chǎn)生器模塊156確定當(dāng)前語(yǔ)音指示符的語(yǔ)音參數(shù)指針等于語(yǔ)音參數(shù)集合的存儲(chǔ)器地址(184為"是"),則列表產(chǎn)生器模塊156可確定先前語(yǔ)音指示符指針152的值是否為空值地址(186)。如果列表產(chǎn)生器模塊156確定先前語(yǔ)音指示符指針152的值不為空值地址(186為"否"),則列表產(chǎn)生器模塊156可將先前語(yǔ)音指示符(亦即,具有等于先前語(yǔ)音指示符指針152中的存儲(chǔ)器地址的存儲(chǔ)器地址的指示符)的下一語(yǔ)音指示符指針設(shè)置為當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針的值(188)。在設(shè)置先前語(yǔ)音指示符的下一語(yǔ)音指示符指針之后,列表產(chǎn)生器模塊156可將事件語(yǔ)音指示符指針150的值設(shè)置為當(dāng)前語(yǔ)音指示符指針148的值(190)。列表產(chǎn)生器模塊156也可在先前語(yǔ)音指示符指針152的值為空值(186為"是")時(shí)將事件語(yǔ)音指示符指針150的值設(shè)置為當(dāng)前語(yǔ)音指示符指針148的值。以此方式,列表產(chǎn)生器模塊156不試圖設(shè)置空值存儲(chǔ)器地址處的語(yǔ)音指示符的下一語(yǔ)音指示符指針。在列表產(chǎn)生器模塊156設(shè)置事件語(yǔ)音指示符指針148的值之后,列表產(chǎn)生器模塊156可將當(dāng)前語(yǔ)音指示符指針148的值設(shè)置為列表基礎(chǔ)指針140的值(192)。列表產(chǎn)生器模塊156接著可使用圖9中所說(shuō)明的實(shí)例操作來(lái)重新插入由事件語(yǔ)音指示符指針150指向的語(yǔ)音指示符。如果列表產(chǎn)生器模塊156確定當(dāng)前語(yǔ)音指示符的語(yǔ)音參數(shù)集合不等于語(yǔ)音參數(shù)集合的存儲(chǔ)器地址(184為"否"),則列表產(chǎn)生器模塊156可確定當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針的值是否為空值(194)。換句話說(shuō),列表產(chǎn)生器模塊156可確定當(dāng)前語(yǔ)音指示符是否為列表142中的最后語(yǔ)音指示符。如果列表產(chǎn)生器模塊156確定當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針的值不為空值(194為"否"),則列表產(chǎn)生器模塊156可將先前語(yǔ)音指示符指針152的值設(shè)置為當(dāng)前語(yǔ)音指示符指針148的值(196)。列表產(chǎn)生器模塊156接著可將當(dāng)前語(yǔ)音指示符指針148的值設(shè)置為當(dāng)前語(yǔ)音指示符中的下一語(yǔ)音指示符指針的值(19S)。以此方式,列表產(chǎn)生器模塊156可使當(dāng)前語(yǔ)音指示符前進(jìn)到列表142中的下一語(yǔ)音指示符。列表產(chǎn)生器模塊156接著可返回并再次確定新的當(dāng)前語(yǔ)音指示符的語(yǔ)音參數(shù)集合指針是否等于當(dāng)前語(yǔ)音的語(yǔ)音參數(shù)集合的地址(184)。另一方面,如果列表產(chǎn)生器模塊156確定當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針為空值(194為"是"),則列表產(chǎn)生器模塊156已到達(dá)列表142的末尾而未定位當(dāng)前語(yǔ)音的語(yǔ)音指示符。出于此原因,列表產(chǎn)生器模塊156可產(chǎn)生當(dāng)前語(yǔ)音的新的語(yǔ)音指示符。為了產(chǎn)生當(dāng)前語(yǔ)音的新的語(yǔ)音指示符,列表產(chǎn)生器模塊156可為新的語(yǔ)音指示符分配鏈接列表存儲(chǔ)器42中的存儲(chǔ)器(200)。列表產(chǎn)生器模塊156接著可將事件語(yǔ)音指示符指針148的值設(shè)置為新語(yǔ)音指示符的存儲(chǔ)器地址(202)。新語(yǔ)音指示符現(xiàn)在是事件語(yǔ)音指示符。接下來(lái),列表產(chǎn)生器模塊156可使語(yǔ)音指示符數(shù)目寄存器144的值遞增一(204)。在使語(yǔ)音指示符數(shù)目寄存器144的值遞增之后,列表產(chǎn)生器模塊156可設(shè)置事件語(yǔ)音指示符的語(yǔ)音參數(shù)集合指針以含有當(dāng)前語(yǔ)音的語(yǔ)音參數(shù)集合的存儲(chǔ)器地址(206)。列表產(chǎn)生器模塊156接著可將當(dāng)前語(yǔ)音指示符指針148的值設(shè)置為列表基礎(chǔ)指針140的值(192),且接著可根據(jù)圖9中所說(shuō)明的實(shí)例操作而將事件語(yǔ)音指示符插入到列表142中。圖9是說(shuō)明當(dāng)DSP將語(yǔ)音指示符插入到列表142中時(shí)DSP12的示范性操作的流程圖。23圖9的實(shí)例中所說(shuō)明的流程圖在標(biāo)記為"B"且對(duì)應(yīng)于圖8的實(shí)例中的以圓標(biāo)記的"B"的圓圈處開始。最初,DSP12中的列表產(chǎn)生器模塊156可從RAM單元10檢索由事件語(yǔ)音指示符指示的語(yǔ)音參數(shù)集合(210)。列表產(chǎn)生器模塊156接著可從RAM單元IO檢索由當(dāng)前語(yǔ)音指示符指示的語(yǔ)音參數(shù)集合(212)。在檢索兩個(gè)語(yǔ)音參數(shù)集合之后,列表產(chǎn)生器模塊156可基于語(yǔ)音參數(shù)集合中的值確定MIDI語(yǔ)音的相對(duì)聲學(xué)顯著性(214)。如果由事件語(yǔ)音指示符指示的MIDI語(yǔ)音比由當(dāng)前語(yǔ)音指示符指示的MIDI語(yǔ)音顯著(214為"是"),則列表產(chǎn)生器模塊156可將事件語(yǔ)音指示符中的下一語(yǔ)音指示符設(shè)置為當(dāng)前語(yǔ)音指示符指針148的值(216)。在設(shè)置下一語(yǔ)音指示符之后,列表產(chǎn)生器模塊156可確定當(dāng)前語(yǔ)音指示符指針148的值是否等于列表基礎(chǔ)指針140的值(218)。換句話說(shuō),列表產(chǎn)生器模塊156可確定當(dāng)前語(yǔ)音指示符是否為列表142中的第一語(yǔ)音指示符。如果當(dāng)前語(yǔ)音指示符指針148的值等于列表基礎(chǔ)指針140的值(218為"是"),則列表產(chǎn)生器模塊156可將列表基礎(chǔ)指針140的值設(shè)置為事件語(yǔ)音指示符指針150的值(220)。以此方式,事件語(yǔ)音指示符變?yōu)榱斜?42中的第一語(yǔ)音指示符。否則,如果當(dāng)前語(yǔ)音指示符指針148的值不等于列表基礎(chǔ)指針140的值(218為"否"),則列表產(chǎn)生器模塊156可將先前語(yǔ)音指示符中的下一語(yǔ)音指示符指針的值設(shè)置為事件語(yǔ)音指示符指針150的值(222)。以此方式,列表產(chǎn)生器模塊156可將事件語(yǔ)音指示符鏈接到列表142中。另一方面,如果由事件語(yǔ)音指示符指示的MIDI語(yǔ)音不比由當(dāng)前語(yǔ)音指示符指示的MIDI語(yǔ)音顯著(214為"否"),則列表產(chǎn)生器模塊156可確定當(dāng)前語(yǔ)音指示符中的下一語(yǔ)音指示符指針的值是否為空值(224)。如果下一語(yǔ)音指示符指針的值為空值,則當(dāng)前語(yǔ)音指示符為列表142中的最后語(yǔ)音指示符。如果當(dāng)前語(yǔ)音指示符中的下一語(yǔ)音指示符指針的值為空值(224為"是"),則列表產(chǎn)生器模塊156可將當(dāng)前語(yǔ)音指示符中的下一語(yǔ)音指示符指針的值設(shè)置為事件語(yǔ)音指示符指針150的值(226)。以此方式,列表產(chǎn)生器模塊156可在由事件語(yǔ)音指示符所指示的語(yǔ)音為列表142中最不顯著的語(yǔ)音時(shí)將事件語(yǔ)音指示符添加到列表142的末尾。然而,如果當(dāng)前語(yǔ)音指示符中的下一語(yǔ)音指示符指針不為空值(224為"否"),則當(dāng)前語(yǔ)音指示符不為列表142中的最后語(yǔ)音指示符。出于此原因,列表產(chǎn)生器模塊156可將先前語(yǔ)音指示符152的值設(shè)置為當(dāng)前語(yǔ)音指示符指針148的值(228)。接著,列表產(chǎn)生器模塊156可將當(dāng)前語(yǔ)音指示符指針148的值設(shè)置為當(dāng)前語(yǔ)音指示符中的下一語(yǔ)音指示符指針的值(230)。在設(shè)置當(dāng)前語(yǔ)音指示符指針148的值之后,列表產(chǎn)生器模塊156可返回以再次檢索由當(dāng)前語(yǔ)音指示符所指示的語(yǔ)音參數(shù)集合(212)。圖10是說(shuō)明當(dāng)DSP在列表142中的語(yǔ)音指示符的數(shù)目超過(guò)語(yǔ)音指示符的最大數(shù)目時(shí)從列表142移除語(yǔ)音指示符時(shí)DSP12的示范性操作的流程圖。舉例來(lái)說(shuō),DSP12可將列表142中的語(yǔ)音指示符的最大數(shù)目限制為十。在此實(shí)例中,MIDI硬件單元18將僅產(chǎn)生MIDI幀中的十個(gè)在聲學(xué)上最為顯著的MIDI語(yǔ)音的數(shù)字波形。DSP12可設(shè)置列表142中的語(yǔ)音指示符的最大數(shù)目,因?yàn)樵跓o(wú)語(yǔ)音的受限數(shù)目的情況下,MIDI硬件單元18可能不能夠在MIDI幀所準(zhǔn)許的時(shí)間內(nèi)處理列表142中的所有語(yǔ)音。另外,DSP12可設(shè)置列表142中的語(yǔ)音指示符的最大數(shù)目以保留鏈接列表存儲(chǔ)器42中的空間。另外,列表142的語(yǔ)音指示符的最大數(shù)目可對(duì)將新語(yǔ)音指示符插入到列表142中所需的計(jì)算的數(shù)目設(shè)置上限。對(duì)計(jì)算的數(shù)目設(shè)置上限可為實(shí)時(shí)產(chǎn)生MIDI幀的數(shù)字波形的要求。最初,DSP12中的列表產(chǎn)生器模塊156可確定語(yǔ)音指示符數(shù)目寄存器144的值是否大于列表142中的語(yǔ)音指示符的最大數(shù)目(240)。如果語(yǔ)音指示符數(shù)目寄存器144中的值不大于語(yǔ)音指示符的最大數(shù)目(240為"否"),則可能無(wú)需從列表142移除任何語(yǔ)音指示符。然而,在一些實(shí)例中,列表產(chǎn)生器模塊156可掃描貫穿列表142且移除當(dāng)前不活動(dòng)或者在給定時(shí)間內(nèi)未活動(dòng)的語(yǔ)音的語(yǔ)音指示符。如果語(yǔ)音指示符數(shù)目寄存器144中的值大于語(yǔ)音指示符的最大數(shù)目(240為"是"),則列表產(chǎn)生器模塊156可將當(dāng)前語(yǔ)音指示符指針148的值設(shè)置為列表基礎(chǔ)指針140的值(242)。接下來(lái),列表產(chǎn)生器模塊156可將先前語(yǔ)音指示符指針152的值設(shè)置為空值(244)。在此點(diǎn)處,列表產(chǎn)生器模塊156可確定當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針的值是否為空值(亦即,當(dāng)前語(yǔ)音指示符是否為列表142中的最后語(yǔ)音指示符)(248)。如果當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針的值不為空值(248為"否"),則列表產(chǎn)生器模塊156可將先前語(yǔ)音指示符指針152的值設(shè)置為當(dāng)前語(yǔ)音指示符指針148的值(250)。列表產(chǎn)生器模塊156接著可將當(dāng)前語(yǔ)音指示符指針148的值設(shè)置為當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針的值(252)。接下來(lái),列表產(chǎn)生器模塊156可返回以再次確定新的當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針的值是否等于空值(248)。如果當(dāng)前語(yǔ)音指示符的下一語(yǔ)音指示符指針的值等于空值(248為"是"),則當(dāng)前語(yǔ)音指示符為列表142中的最后語(yǔ)音指示符。列表產(chǎn)生器模塊156接著可從列表142移除最后語(yǔ)音指示符。為了從列表142移除最后語(yǔ)音指示符,列表產(chǎn)生器模塊156可將先前語(yǔ)音指示符的下一語(yǔ)音指示符指針設(shè)置為空值(254)。接下來(lái),協(xié)調(diào)模塊32將鏈接列表存儲(chǔ)器42中用于當(dāng)前語(yǔ)音指示符的存儲(chǔ)器解除分配(256)。協(xié)調(diào)模塊32接著可使語(yǔ)音指示符數(shù)目寄存器144中的值遞減(258)。在使語(yǔ)音指示符數(shù)目寄存器144中的值遞減之后,列表產(chǎn)生器模塊156可返回以再次確定語(yǔ)音指示符數(shù)目寄存器144中的值是否大于語(yǔ)音指示符的最大允許數(shù)目(240)。圖11是說(shuō)明使用指定可根據(jù)其導(dǎo)出存儲(chǔ)器地址的索引值的語(yǔ)音指示符的列表的實(shí)例DSP12的框圖。在圖12的實(shí)例中,列表142中的每一語(yǔ)音指示符包括一包括四個(gè)語(yǔ)音參數(shù)集合(VPS)索引值的32位字及列表142中的下一語(yǔ)音指示符的存儲(chǔ)器地址。塊260中的每一VPS索引值可指定與語(yǔ)音參數(shù)集合的塊262中的語(yǔ)音參數(shù)集合相關(guān)聯(lián)的號(hào)碼。舉例來(lái)說(shuō),第一VPS索引值可指定號(hào)碼"2"來(lái)指示語(yǔ)音參數(shù)集合的塊262中的第二語(yǔ)音參數(shù)集合。此外,塊260中的每一VPS索引值可以RAM單元IO中的四字節(jié)字中的一個(gè)字節(jié)(亦即,八個(gè)位)表示。因?yàn)閂PS索引值是以一個(gè)字節(jié)表示,所以單個(gè)VPS索引值可指示256(亦即,28=256)個(gè)語(yǔ)音參數(shù)集合中的一者。另外,在圖ll的實(shí)例中,RAM單元IO將每一語(yǔ)音參數(shù)集合存儲(chǔ)于存儲(chǔ)器位置的鄰接塊262中。因?yàn)镽AM單元IO將每一語(yǔ)音參數(shù)集合存儲(chǔ)于鄰接塊中,所以一個(gè)語(yǔ)音參數(shù)集合在緊隨先前語(yǔ)音參數(shù)集合的存儲(chǔ)器位置中開始。當(dāng)DSP12或協(xié)調(diào)模塊32需要存取語(yǔ)音參數(shù)集合的塊262中的語(yǔ)音參數(shù)集合時(shí),DSP12或協(xié)調(diào)模塊32可首先使塊260中的語(yǔ)音參數(shù)集合的索引值乘以集合大小寄存器268中所含有的值。集合大小寄存器268中所含有的值可等于單個(gè)語(yǔ)音參數(shù)集合在RAM單元10中占據(jù)的可尋址位置的數(shù)目。DSP12或協(xié)調(diào)模塊32接著可添加集合基礎(chǔ)指針寄存器266的值。集合基礎(chǔ)指針寄存器266中所含有的值可等于塊262中的第一語(yǔ)音參數(shù)集合的存儲(chǔ)器地址。因此,通過(guò)使語(yǔ)音參數(shù)集合的索引乘以語(yǔ)音指針集合的大小且接著添加第一語(yǔ)音參數(shù)集合的存儲(chǔ)器地址,DSP12或協(xié)調(diào)模塊32可導(dǎo)出塊262中的語(yǔ)音參數(shù)集合的第一存儲(chǔ)器地址。DSP12可在很大程度上以與圖8到圖10中協(xié)調(diào)模塊32控制列表142中的語(yǔ)音指示符相同的方式來(lái)控制圖11的列表142中的語(yǔ)音指示符。然而,在使用此示范性數(shù)據(jù)結(jié)構(gòu)時(shí),DSP12可對(duì)語(yǔ)音指示符內(nèi)的VPS索引值進(jìn)行分類。圖11中所說(shuō)明的實(shí)例數(shù)據(jù)結(jié)構(gòu)可具有優(yōu)于圖6中所說(shuō)明的實(shí)例數(shù)據(jù)結(jié)構(gòu)的優(yōu)勢(shì),因?yàn)閳D11中所說(shuō)明的數(shù)據(jù)結(jié)構(gòu)可能需要鏈接列表存儲(chǔ)器42中的較少存儲(chǔ)器位置來(lái)存儲(chǔ)指向語(yǔ)音參數(shù)集合的相同數(shù)目的指針。然而,圖11中所說(shuō)明的數(shù)據(jù)結(jié)構(gòu)可能需要DSP12及協(xié)調(diào)模塊32執(zhí)行額外計(jì)算。圖12是說(shuō)明示范性處理元件34A的細(xì)節(jié)的框圖。雖然圖12的實(shí)例說(shuō)明處理元件34A的細(xì)節(jié),但這些細(xì)節(jié)可適用于處理元件34中的其它者。如圖12的實(shí)例中所說(shuō)明,處理元件34A可包含若干組件。這些組件可包括(但不限于)控制單元280、算術(shù)邏輯單元(ALU)282、多路復(fù)用器284及一組寄存器286。另外,處理元件34A可包括用于VPSRAM單元46A的讀取接口先入先出(FIFO)292、用于VPSRAM單元46A的寫入接口FIFO、用于LF038的接口FIFO296、用于WFU36的接口FIFO298、用于求和緩沖器40的接口FIFO300及用于求和緩沖器40中的RAM的接□FIFO302。控制單元280可包含讀取指令且基于所述指令輸出控制處理元件34A的控制信號(hào)的一組電路??刂茊卧?80可包括存儲(chǔ)當(dāng)前指令的存儲(chǔ)器地址的程序計(jì)數(shù)器290、存儲(chǔ)由處理元件34執(zhí)行的第一程序循環(huán)的計(jì)數(shù)的第一循環(huán)計(jì)數(shù)器304及存儲(chǔ)由處理元件34執(zhí)行的第二程序循環(huán)的計(jì)數(shù)的第二循環(huán)計(jì)數(shù)器306。ALU282可包含對(duì)存儲(chǔ)于寄存器286中的各者中的值執(zhí)行各種算術(shù)運(yùn)算的電路。ALU282可經(jīng)特殊化以執(zhí)行對(duì)于產(chǎn)生MIDI語(yǔ)音的數(shù)字波形具有特殊效用的算術(shù)運(yùn)算。寄存器286可為可保持帶符號(hào)或無(wú)符號(hào)值的一組八個(gè)32位寄存器。多路復(fù)用器284基于由控制單元280輸出的控制信號(hào)可將來(lái)自ALU282、接口讀取FIFO292、接口FIFO296、接口FIFO298及接口FIFO302的輸出引導(dǎo)到寄存器286中的特定者。處理元件34A可使用經(jīng)特殊化以產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的程序指令集合。換句話說(shuō),處理元件34A中所使用的程序指令集合可包括在例如精簡(jiǎn)指令集計(jì)算機(jī)(RISC)指令集或例如x86指令集等復(fù)雜指令集架構(gòu)指令集的通用指令集中不存在的程序指令。此外,處理元件34A中所使用的程序指令集合可排除在通用指令集中存在的一些程序指令。可將處理元件34A所使用的程序指令分類為算術(shù)邏輯單元(ALU)指令、加載/存儲(chǔ)指令及控制指令。處理元件34A所使用的每一類別的程序指令可為不同長(zhǎng)度。舉例來(lái)說(shuō),ALU指令可為二十位長(zhǎng),加載/存儲(chǔ)指令可為十八位長(zhǎng),且控制指令可為十六位長(zhǎng)。ALU指令為使得控制單元280將控制信號(hào)輸出到ALU282的指令。在一種示范性格式中,每一ALU指令可為二十位長(zhǎng)。舉例來(lái)說(shuō),ALU指令的位19:18經(jīng)預(yù)留,位17:14含有ALU指令識(shí)別符,位13:11含有寄存器286中的第一者的識(shí)別符,位10:8含有寄存器286中的第二者的識(shí)別符,位7:5含有待移位的位的數(shù)目或寄存器286中的第三者的識(shí)別符,位4:2含有寄存器286中為目的地的一者的識(shí)別符,且位1:0含有ALU控制位。在本文中可將ALU控制位縮寫為"ACC"。如下文將較為詳細(xì)論述的,ALU控制位控制ALU指令的操作。由處理元件34A使用的ALU指令集合可包括以下指令MULTSS:語(yǔ)茲..MULTSSRx、Ry、移位量、Rz、ACC^激,使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的帶符號(hào)值的乘法27的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。在使乘積移位之后,ALU282從乘積提取由ACC指定的位。ALU282接著輸出這些位。如果ACC=0,則ALU282提取乘積的較低32個(gè)位。如果ACC=1,則ALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MULTSU:語(yǔ)茲;MULTSURx、Ry、移位量、Rz、ACC勸蟲^使得控制單元280輸出指令A(yù)LU282執(zhí)行Rx中的帶符號(hào)值與Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。在使乘積移位之后,ALU282從乘積提取由ACC指定的位。ALU282接著輸出這些位。如果ACC=0,則ALU282提取乘積的較低32個(gè)位。如果ACC=1,則ALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MULTUU:語(yǔ)法,MULTUURx、Ry、移位量、Rz、ACC勸y^;使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。在使乘積移位之后,ALU282從乘積提取由ACC指定的位。ALU282接著輸出這些位。如果ACC=0,則ALU282提取乘積的較低32個(gè)位且將這32個(gè)位存儲(chǔ)于Rz中。如果ACC=1,則ALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MACSS:語(yǔ)茲,MACSSRx、Ry、移位量、Rz、ACC勸激,使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的帶符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。在使乘積移位之后,ALU282從乘積提取由ACC指定的32個(gè)位且接著將這32個(gè)位添加到Rz中的值且輸出所得位。如果ACC-O,則ALU282提取乘積的較低32個(gè)位。如果ACC4,則ALU282提取乘積的中間32個(gè)位。如果ACC-2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的MACSU語(yǔ)茲.'MACSURx、Ry、移位量、Rz、ACC勸虔:使得控制單元280輸出指令A(yù)LU282執(zhí)行Rx中的帶符號(hào)值與Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。在使乘積移位之后,ALU282從乘積提取由ACC指定的32個(gè)位。ALU282接著將這32個(gè)位添加到Rz中的值且輸出所得位。如果ACC=0,則ALU282提取乘積的較低32個(gè)位。如果ACC=1,則ALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MACUU語(yǔ)^:MACUURx、Ry、移位量、Rz、ACC勸蟲使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。在使乘積移位之后,ALU282從乘積提取由ACC指定的32個(gè)位且接著將這32個(gè)位添加到Rz中的值。ALU282接著輸出所得位。如果ACC=0,則ALU282提取乘積的較低32個(gè)位。如果ACC=1,則ALU282提取乘積的中間32個(gè)位。如果AC02,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MULTU畫IN語(yǔ)法..MULTUUMINRx、Ry、移位量、Rz、ACC勸虔,使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。ALU282接著從乘積提取由ACC指定的位且確定這些位是否表示小于存儲(chǔ)于Rz中的數(shù)目的數(shù)目。如果這些位表示小于存儲(chǔ)于Rz中的數(shù)目的數(shù)目,則ALU282輸出這些位。如果ACC^,則ALU282提取乘積的較低32個(gè)位。如果ACC=1,則ALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MACSSD語(yǔ)法,MACSSDRx、Ry、移位量、Rz、ACC勸蟲~使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的帶符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。ALU282接著從乘積提取由ACC指定的32個(gè)位。在從乘積提取這些位之后,ALU282將這32個(gè)位添加到存儲(chǔ)于Rz之后的寄存器(亦即,Rz+1)中的值。在添加這些值之后,ALU282輸出總和。如果ACC=0,則ALU282提取乘積的較低32個(gè)位。如果ACC=1,則ALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MACSUD語(yǔ)法,MACSSDRX、Ry、移位量、Rz、ACC勸虔..使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx中的帶符號(hào)值與寄存器Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。ALU282接著從乘積提取由ACC指定的32個(gè)位。在從乘積提取這些位之后,ALU282將這32個(gè)位添加到存儲(chǔ)于Rz之后的寄存器(亦即,Rz+1)中的值。在添加這些值之后,ALU282輸出總和。如果ACC=0,則ALU282提取乘積的較低32個(gè)位。如果ACC=1,則ALU282提取乘積的中間32個(gè)位。如果ACX^2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MACUUD語(yǔ)茲.'MACSSDRX、Ry、移位量、Rz、ACC勸激,使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。ALU282接著從乘積提取由ACC指定的32個(gè)位。在從乘積提取這些位之后,ALU282將這32個(gè)位添加到存儲(chǔ)于Rz之后的寄存器(亦即,Rz+1)中的值。在添加這些值之后,ALU282輸出總和。如果ACC=0,則ALU282提取乘積的較低32個(gè)位。如果ACC=1,貝UALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MASSS語(yǔ)茲,MASSSRx、Ry、移位量、Rz、ACC勸;^,使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的帶符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。ALU282接著從乘積提取由ACC指定的32個(gè)位。在提取位之后,ALU282從Rz中的值減去這些位且輸出所得位。如果ACX^0,則ALU282提取乘積的較低32個(gè)位。如果ACCd,則ALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制30單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MASSU語(yǔ)總.'MASSSRx、Ry、移位量、Rz、ACC勸虔..使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx中的帶符號(hào)值與寄存器Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。ALU282接著從乘積提取由ACC指定的32個(gè)位。在提取位之后,ALU282從Rz中的值減去這些位且輸出所得位。如果ACC-0,則ALU282提取乘積的較低32個(gè)位。如果ACC^,則ALU282提取乘積的中間32個(gè)位。如果ACC=2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。MASUU語(yǔ)法.'MASUURx、Ry、移位量、Rz、ACC勸虔,使得控制單元280輸出指令A(yù)LU282執(zhí)行寄存器Rx與Ry中的無(wú)符號(hào)值的乘法的控制信號(hào),且接著使乘積向左移位由"移位量"指定的量。控制信號(hào)還使得ALU282從乘積提取由ACC指定的32個(gè)位。在提取位之后,ALU282從Rz中的值減去這些位且輸出所得值。如果ACC二O,則ALU282提取乘積的較低32個(gè)位。如果ACCd,貝!JALU282提取乘積的中間32個(gè)位。如果ACC-2,則ALU282提取乘積的較高32個(gè)位。此指令還使得控制單元280向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。EGCOMP語(yǔ)法..EGCOMPRx、Ry、移位量、Rz、ACC勸#&使得控制單元280基于界定處理元件34A當(dāng)前正處理的MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的控制字而選擇一操作。EGCOMP指令還使得控制單元280輸出指令A(yù)LU282執(zhí)行選定操作的控制信號(hào)。在第一模式中,ALU282使Rx中的值與Ry中的值相加且輸出所得總和。在第二模式中,ALU282執(zhí)行Rx中的值與Ry中的值的無(wú)符號(hào)乘法,使乘積向左移位移位量中所指定的量,且接著輸出經(jīng)移位的乘積的最高有效的三十二(32)個(gè)位。在第三模式中,ALU282輸出Rx中的值。在第四模式中,ALU282輸出Ry的值。在EGCOMP指令的環(huán)境中,為零的ACC值可使得控制單元280輸出控制信號(hào)以指令A(yù)LU282計(jì)算當(dāng)前MIDI語(yǔ)音的音量包絡(luò)的新值。為一的ACC值可使得控制單元280輸出控制信號(hào)以指令A(yù)LU282計(jì)算當(dāng)前MIDI語(yǔ)音的新的調(diào)制包絡(luò)。EGCOMP指令還使得控制單元280向31多路復(fù)用器284輸出控制信號(hào)以將來(lái)自ALU282的輸出引導(dǎo)到寄存器286中的Rz。在執(zhí)行EGCOMP指令中與一模式相關(guān)聯(lián)的操作之前,ALU282首先計(jì)算所述模式。舉例來(lái)說(shuō),ALU282可使用以下等式來(lái)計(jì)算模式裙式v戸.Co/Uro/Wni(YACC^S+wcow^/一/c^—coww^(7:0)*2+7),'換句話說(shuō),"模式"的值等于當(dāng)前語(yǔ)音參數(shù)集合的控制字中的兩個(gè)位??赏ㄟ^(guò)執(zhí)行以下步驟來(lái)確定那兩個(gè)位中較高有效的一者的索引(1)通過(guò)使ACC的值乘以八(亦即,使ACC的值的按位表示向左移位三個(gè)位置)而產(chǎn)生第一乘積。(2)通過(guò)使第二循環(huán)計(jì)數(shù)器的兩個(gè)最低有效位乘以二(亦即,使ACC的值的按位表示向左移位一個(gè)位置)而產(chǎn)生第二乘積。(3)使第一乘積、第二乘積及數(shù)字一相加??赏ㄟ^(guò)執(zhí)行相同步驟(除了在第三步驟中不添加數(shù)字一)而確定控制字的兩個(gè)位中較低有效的一者的索引。舉例來(lái)說(shuō),控制字可等于0x0000807(亦即,0b0000000000000000010000000111)。此外,ACC的值可為0b0001,且第二循環(huán)計(jì)數(shù)器的值可為0b0001。在此實(shí)例中,控制字中較高有效位的索引為0b0Qffii071(亦即,十進(jìn)制的數(shù)字十一),且控制字中較低有效位的索引為0b0QQQi0/0(亦即,十進(jìn)制的數(shù)字十)。在先前語(yǔ)句中,索引值的加下劃線的位表示來(lái)自ACC的位,且索引值的斜體的位表示來(lái)自第二循環(huán)計(jì)數(shù)器的位。因此,模式為01(亦即,十進(jìn)制的數(shù)字一),因?yàn)橹礝及l(fā)分別處于控制字的位置ll及10處。因?yàn)槟J綖?1,所以ALU282執(zhí)行Rx中的值與Ry中的值的無(wú)符號(hào)乘法,使乘積向左移位移位量中指定的量,且接著輸出經(jīng)移位的乘積的最高有效的三十二(32)個(gè)位。包絡(luò)產(chǎn)生是一種為個(gè)別音符的音量或調(diào)制質(zhì)量建模的方法。每一音符可具有若干階段。舉例來(lái)說(shuō),音符可具有延遲階段、起聲階段(attackphase)、保持階段、衰退階段、持續(xù)階段及釋放階段。延遲階段可界定在起聲階段開始之前的時(shí)間的量。在起聲階段期間,音量或調(diào)制水平增大到峰值水平。在保持階段期間,音量或調(diào)制水平維持于峰值水平。在衰退階段期間,音量或調(diào)制水平下降到持續(xù)水平。在持續(xù)水平期間,音量或調(diào)制水平維持于持續(xù)水平。在釋放階段期間,音量或調(diào)制水平下降到零。此外,音量或調(diào)制水平的改變可為線性或指數(shù)的??梢宰訋瑸閱挝粊?lái)界定包絡(luò)產(chǎn)生階段的長(zhǎng)度。術(shù)語(yǔ)"子幀"可指代MIDI幀的四分之一。舉例來(lái)說(shuō),如果MIDI幀為10毫秒,則子幀為2.5毫秒。舉例來(lái)說(shuō),MIDI語(yǔ)音的起聲階段可持續(xù)一個(gè)子幀,MIDI語(yǔ)音的衰退階段可持續(xù)一個(gè)子幀,且MIDI語(yǔ)音的持續(xù)階段可持續(xù)兩個(gè)子幀。EGCOMP指令執(zhí)行操作以執(zhí)行包絡(luò)產(chǎn)生。舉例來(lái)說(shuō),添加操作(亦即,模式OO)可對(duì)應(yīng)于音量或調(diào)制水平在子幀期間的線性斜坡上升(例如,在起聲階段期間)或斜坡下降(亦即,在衰退或釋放階段期間)。乘法操作(亦即,模式01)可對(duì)應(yīng)于音量或調(diào)制水平在子幀期間的指數(shù)斜坡上升或斜坡下降(亦即,在衰退或釋放階段期間)。指派操作(亦即,模式10及11)可對(duì)應(yīng)于音量或調(diào)制強(qiáng)度在子幀期間的持續(xù)。在控制字中,位1:0可指示針對(duì)音量在第一子幀中使用哪一EGCOMP模式;位3:2可指示針對(duì)音量在第二子幀中使用哪一EGCOMP模式;位5:4可指示針對(duì)音量在第三子幀中使用哪一EGCOMP模式;位7:6可指示針對(duì)音量在第四子幀中使用哪一EGCOMP模式;位9:8可指示針對(duì)調(diào)制在第一子幀中使用哪一EGCOMP模式;位11:10可指示針對(duì)調(diào)制在第二子幀中使用哪一EGCOMP模式;位13:12可指示針對(duì)調(diào)制在第三子幀中使用哪一EGCOMP模式;且位15:14可指示針對(duì)調(diào)制在第四子幀中使用哪一EGCOMP模式。加載/存儲(chǔ)指令是從處理元件34A外部的若干模塊中的一者讀取信息或向其寫入信息的指令。當(dāng)控制單元280遇到加載/存儲(chǔ)指令時(shí),控制單元280中斷(block)直到加載/存儲(chǔ)指令完整為止。在一種示范性格式中,每一加載/存儲(chǔ)指令為十八位長(zhǎng)。舉例來(lái)說(shuō),加載/存儲(chǔ)指令的位17:16經(jīng)預(yù)留,位15:13含有加載/存儲(chǔ)指令識(shí)別符,位12:6含有加載源或存儲(chǔ)目的地地址,位5:3含有寄存器286中的第一者的識(shí)別符,且位2:0含有寄存器286中的第二者的識(shí)別符。處理元件34A所使用的加載/存儲(chǔ)指令集合可包括以下指令LOADDATA語(yǔ)茲,LOADDATA地址、Ry、Rz。勸虔,如果Ry等于Rz,則在Ry中加載地址處的值。如果地址為偶數(shù),則分別在寄存器Ry及Rz中加載地址及(地址+l)處的值。如果地址為奇數(shù),則分別在Ry及Rz中加載(地址-l)及地址處的值。STOREDATA語(yǔ)法,STOREDATA地址、Ry、Rz。勸虔,如果Ry等于Rz,則將Ry的值存儲(chǔ)到地址。如果地址為偶數(shù),則分別在地址及(地址+l)處存儲(chǔ)Ry及Rz處的值。如果地址為奇數(shù),則分別在(地址-l)及地址處存儲(chǔ)Ry及Rz處的值。LOADSUM語(yǔ)茲,LOADSUMRx、Ry。勸#&向寄存器Ry及Rz中加載求和緩沖器40中由樣本計(jì)數(shù)指示的值。LOADSUM指令中所使用的樣本計(jì)數(shù)為使用下文描述的STORESUM指令的相同計(jì)數(shù)。LOADFIFO語(yǔ)法;LOADFIFOfifo—low—high、fifo—signed一unsigned、Rx。勸虔,從WFU接口FIFO298的頂部(head)移除一值且將所述值存儲(chǔ)于Rx中。寄存器286中加載所述值的一者及如何將所述值加載到所述寄存器中取決于fifo一low—high旗標(biāo)及fifo—signed—unsigned旗標(biāo)。如果fifo—lowjiigh為0,則將值加載到Rx的較低的16個(gè)位中。如果fifo一low一high為1,則將值加載到Rx的較高的16個(gè)位中。如果fifo—signed—unsigned為0,則將值存儲(chǔ)為無(wú)符號(hào)數(shù)字。如果fifo—signed—unsigned為1,則將值存儲(chǔ)為帶符號(hào)數(shù)字且使值帶符號(hào)擴(kuò)展為32位。然而,如果將fifo—low—high旗標(biāo)設(shè)置為1,則fifo—signecLunsigned旗標(biāo)不具有作用。STOREWFU語(yǔ)茲,STOREWFURx。勸能-將Rx中的值發(fā)送到WFU36。STORES畫語(yǔ)法;STORESUMacc—sat—mode、Rx、Ry。勸^,將寄存器Rx及Ry中的值存儲(chǔ)到求和緩沖器40。另外,此指令發(fā)送隱含地取決于第一及第二循環(huán)計(jì)數(shù)器的樣本計(jì)數(shù)器。樣本計(jì)數(shù)器描述數(shù)字波形的哪一樣本當(dāng)前正由處理元件34A處理。當(dāng)控制單元280從協(xié)調(diào)模塊32接收到復(fù)位命令時(shí),控制單元280將所述值初始化為零。隨后,控制單元280在每次控制單元280遇到STORESUM指令時(shí)使樣本計(jì)數(shù)器遞增一??刂茊卧?80可將樣本計(jì)數(shù)器作為控制信號(hào)輸出到求和緩沖器40。acc一sat—mode參數(shù)可界定求和緩沖器40是否使樣本的值飽和化。飽和化可在樣本的值上升到針對(duì)樣本可存儲(chǔ)的最大數(shù)目以上或下降到針對(duì)樣本可存儲(chǔ)的最小數(shù)目以下時(shí)發(fā)生。如果啟用飽和化,則求和緩沖器40可在使&及Ry的值相加會(huì)使得樣本的值上升到針對(duì)樣本可表示的最大數(shù)目以上或下降到針對(duì)樣本可表示的最小數(shù)目以下時(shí)將值維持于最大數(shù)目或最小數(shù)目。如果未啟用飽和化,則求和緩沖器40可在使Rx及Ry的值相加時(shí)使樣本的數(shù)目上滾。另外,acc—sat—mode參數(shù)可確定求和緩沖器40是用寄存器&及Ry中的值替代樣本的值還是將寄存器Rx及Ry中的值添加到求和緩沖器40中的樣本的值。以下圖表可說(shuō)明acc—sat—mode參數(shù)的示范性操作<table>tableseeoriginaldocumentpage34</column></row><table>10將輸入與求和緩沖器ram中的現(xiàn)有元素累加。不對(duì)經(jīng)累加的輸出執(zhí)行飽和化。11將輸入與求和緩沖器ram中的現(xiàn)有元素累加。輸出在其被存儲(chǔ)回到求和緩沖器40之前經(jīng)飽和化。LOADLFO語(yǔ)茲,LOADLFOlfo—id、Ifo—update、Rx其中(lfojdH待讀取的LFO的類型2位00:modLfo》音高01:modLfo^增益10:modLfo—頻率拐角(frequencycorner)11:vibLfo+音高(lfo一update^在當(dāng)前輸出之后更新哪一參數(shù)2位00:無(wú)更新01:僅更新LFO值10:僅更新LFO相位11:更新LFO值及相位兩者。勸虔,從具有由"Ifo—id"指定的識(shí)別符的LFO38載入一值到Rx。另外,此指令指令LFO38在將值加載Rx之后更新哪一參數(shù)。如上文所論述,LFO38可產(chǎn)生一個(gè)或一個(gè)以上精確的三角形數(shù)字波形。對(duì)于處理元件34中的每一者,LF038可提供四個(gè)輸出值調(diào)制音高值、調(diào)制增益值、調(diào)制頻率拐角值及顫音音高值。這些輸出值中的每一者可表示三角形數(shù)字波形上的一變化。當(dāng)控制單元280讀取LOADLFO指令時(shí),控制單元280可向LFO38輸出表示"lfo—id"參數(shù)的控制信號(hào)。表示"lfo一id"參數(shù)的控制信號(hào)可指令LF038將輸出值中的一者中的值發(fā)送到處理元件34A中的接口FIFO296。舉例來(lái)說(shuō),如果控制單元280發(fā)送表示"Ifo—id"的值Ol的控制信號(hào),則LF038可發(fā)送調(diào)制增益輸出值的值。另夕卜,控制單元280可向多路復(fù)用器284輸出控制信號(hào)以將來(lái)自接口FIFO296的輸出引導(dǎo)到寄存器286中的寄存器Rz。另外,當(dāng)控制單元280讀取LOADLFO指令時(shí),控制單元280可向LFO38輸出表示"Ifo—update"參數(shù)的控制信號(hào)。表示"Ifo—update"參數(shù)的控制信號(hào)指令LFO38如何更新輸出值。當(dāng)LFO38接收到表示"Ifo—叩date"參數(shù)的控制信號(hào)時(shí),LFO38可基于處理元件34A當(dāng)前正處理的MIDI語(yǔ)音的語(yǔ)音參數(shù)集合而選擇一操作來(lái)執(zhí)行。舉例來(lái)說(shuō),LFO38可使用語(yǔ)音參數(shù)集合的控制字來(lái)確定LFO38是處于"延遲"狀態(tài)還是處于"產(chǎn)生"狀態(tài)中。為了確定LF038是處于"延遲"狀態(tài)還是處于"產(chǎn)生"狀態(tài)中,LF038可存取存儲(chǔ)于VPSRAM46A中的語(yǔ)音參數(shù)集合的控制字的位。舉例來(lái)說(shuō),控制字的位23:16可確定LFO是處于"產(chǎn)生"模式還是處于"延遲"狀態(tài)中。在"產(chǎn)生"狀態(tài)中,LFO38可使音高的參數(shù)倍增。在"延遲"狀態(tài)中,LFO38不使音高的參數(shù)倍增。舉例來(lái)說(shuō),控制字的位16可指示LFO38的調(diào)制模式對(duì)于當(dāng)前MIDI幀的第一子幀是處于延遲狀態(tài)還是處于產(chǎn)生狀態(tài)中;位17可指示LF038的調(diào)制模式對(duì)于當(dāng)前MIDI幀的第二子幀是處于延遲狀態(tài)還是處于產(chǎn)生狀態(tài)中;位18可指示LF038的調(diào)制模式對(duì)于當(dāng)前MIDI幀的第三子幀是處于延遲狀態(tài)還是處于產(chǎn)生狀態(tài)中位19可指示LF038的調(diào)制模式對(duì)于當(dāng)前MIDI幀的第四子幀是處于延遲狀態(tài)還是處于產(chǎn)生狀態(tài)中。另外,控制字的位20可指示LFO38的顫音模式對(duì)于當(dāng)前MIDI幀的第一子幀是處于延遲狀態(tài)還是處于產(chǎn)生狀態(tài)中;控制字的位21可指示LFO38的顫音模式對(duì)于當(dāng)前MIDI幀的第二子幀是處于延遲狀態(tài)還是處于產(chǎn)生狀態(tài)中;控制字的位22可指示LF038的顫音模式對(duì)于當(dāng)前MIDI幀的第三子幀是處于延遲狀態(tài)還是處于產(chǎn)生狀態(tài)中;且控制字的位23可指示LFO38的顫音模式對(duì)于當(dāng)前MIDI幀的第四子幀是處于延遲狀態(tài)還是處于產(chǎn)生狀態(tài)中。在選擇操作(亦即,是在"延遲"模式還是在"產(chǎn)生"模式中執(zhí)行)之后,LFO38可執(zhí)行選定操作。如果LFO38處于延遲狀態(tài)中,則LFO38可針對(duì)所述模式將由"Ifo—id"參數(shù)識(shí)別的LFO的模式的偏差值存儲(chǔ)到LFO38的輸出寄存器中。另一方面,如果LFO38處于產(chǎn)生狀態(tài)中,則LFO38可首先確定"Ifo—update"參數(shù)的值是否等于2或3。如果"Ifo—update"的值等于2或3,則LFO38可更新LFO相位或更新LFO值及相位。如果"Ifo—update"參數(shù)的值等于2或3,則LFO38可通過(guò)向LFO的當(dāng)前相位添加LFO比而更新LFO的相位。接下來(lái),LFO38可確定"Ifo—update"參數(shù)的值是否等于1或3。如果"Ifo—update"的值等于1或3,則LFO38可通過(guò)使LFO38中的當(dāng)前樣本乘以增益且添加偏差值而計(jì)算由"lfojd"參數(shù)識(shí)別的LFO輸出寄存器的更新值。以下實(shí)例偽碼可概括LOADLFO指令的操作Rx=peLfoOut[lfoID];36Switch(lfoState){CaseDELAY:peLfoOut[lfoID]=bias[lfoID];break;CaseGENERATE:if(lfoUpdate==2IIlfoUpdate==3){lfoCur=lfoCur+lfoRatio;if(lfoUpdate==lIIlfoUpdate==3){〃upper16-bitsoflfoCurlfoSample=lfoCur[31:16];if(lfoSample>0){lfoGain=positiveSideGain[lfoID];else{lfoGain=negativeSideGain[lfoID];peLfoOut[lfoID]=bias[lfoID]+lfoSample*lfoGaiir,break;此實(shí)例偽碼不意圖表示由處理元件34A及LF038執(zhí)行的軟件指令。實(shí)情是,此偽碼可描述在處理元件34A及LF038的硬件中執(zhí)行的操作??刂浦噶钍怯靡钥刂瓶刂茊卧?80的行為的指令。在一種示范性格式中,每一控制指令為十六位長(zhǎng)。舉例來(lái)說(shuō),位15:13含有控制指令識(shí)別符,位12:4含有存儲(chǔ)器地址,且位3:0含有用于控制的掩碼。由處理元件34A使用的控制指令集合可包括以下指令JUMPD語(yǔ)茲JUMPD地址、掩碼。勸y^,指令使得控制單元280在對(duì)[掩碼]及VPSRAM單元46A中的控制字的位27:24的按位AND運(yùn)算評(píng)估為非零值的情況下在程序計(jì)數(shù)器290中加載[地址]的值??刂谱值奈?7可指示波形是否循環(huán)??刂谱值奈?6可指示波形是八位還是十六位寬??刂谱值奈?5可指示波形是否為立體的??刂谱值奈?4可指示是否啟用濾波器。因?yàn)榭刂茊卧?80可能已加載JUMPD指令之后的指令,所以對(duì)程序計(jì)數(shù)器290的值的更新遵循JUMPD指令之后的指令可變得有效。J麗PND語(yǔ)茲JUMPND地址、掩碼勸^,指令使得控制單元280在對(duì)[掩碼]及VPSRAM單元46A中的控制字的位27:24的按位AND運(yùn)算評(píng)估為零值的情況下在程序計(jì)數(shù)器290中加載[地址]的值。按位AND運(yùn)算的結(jié)果在結(jié)果不含有1時(shí)評(píng)估為假。因?yàn)榭刂茊卧?80可能已加載JUMPND指令之后的指令,所以對(duì)程序計(jì)數(shù)器290的值的更新遵循JUMPND指令之后的指令可變得有效。LOOPIBEGIN語(yǔ)法;LOOPIBEGIN計(jì)數(shù)勸虔,起始第一循環(huán)的開始??刂茊卧?80在控制單元280遇到LOOP1ENDD指令時(shí)將程序計(jì)數(shù)器290的值設(shè)置為L(zhǎng)OOPIBEGIN指令之后的指令的存儲(chǔ)器地址[計(jì)數(shù)]加一的次數(shù)。另外,控制單元280將第一循環(huán)計(jì)數(shù)器304的值設(shè)置為等于[計(jì)數(shù)]。舉例來(lái)說(shuō),當(dāng)控制單元280遇到指令"LOOPIBEGIN119"時(shí),控制單元280將程序計(jì)數(shù)器290的值設(shè)置為L(zhǎng)OOPIBEGIN指令之后的指令的存儲(chǔ)器地址120次。LOOP1ENDD語(yǔ)法.-LOOP1ENDD勸激,LOOPIENDD之后的指令為第一循環(huán)中的最后指令??刂茊卧?80確定第一循環(huán)計(jì)數(shù)器304的值是否大于零。如果第一循環(huán)計(jì)數(shù)器304的值大于零,則控制單元280使第一循環(huán)計(jì)數(shù)器304的值遞減且將程序計(jì)數(shù)器290的值設(shè)置為L(zhǎng)OOPIBEGIN指令之后的指令的存儲(chǔ)器地址。否則,如果第一循環(huán)計(jì)數(shù)器304的值不大于零,則控制單元280僅使程序計(jì)數(shù)器290的值遞增。LOOP2BEGIN語(yǔ)法,LOOP2BEGIN計(jì)數(shù)。勸4~起始第二循環(huán)的開始??刂茊卧?80在控制單元280遇到LOOP2ENDD指令時(shí)將程序計(jì)數(shù)器290的值設(shè)置為L(zhǎng)OOP2BEGIN指令之后的指令的存儲(chǔ)器地址[計(jì)數(shù)]加一38的次數(shù)。另外,控制單元280將第二循環(huán)計(jì)數(shù)器306的值設(shè)置為等于[計(jì)數(shù)]。LOOP2ENDD語(yǔ)茲,LOOP2ENDD勸虔;LOOP2ENDD之后的指令是第二循環(huán)中的最后指令。控制單元280在第二循環(huán)計(jì)數(shù)器不為零的情況下使第二循環(huán)計(jì)數(shù)器306遞減且將程序計(jì)數(shù)器290的值設(shè)置為L(zhǎng)OOP2BEGIN指令的存儲(chǔ)器地址。CTRL—NOP語(yǔ)茲.-CTRL—NOP勸虔.《控制單元280不進(jìn)行任何動(dòng)作。EXIT語(yǔ)茲,EXIT勸虔,當(dāng)控制單元280遇到EXIT指令時(shí),控制單元280向協(xié)調(diào)模塊32輸出控制信號(hào)以通知協(xié)調(diào)模塊32處理元件34A己完成MIDI幀的整體數(shù)字波形的產(chǎn)生。在發(fā)送控制信號(hào)之后,控制單元280可等待直到協(xié)調(diào)模塊32向控制單元280發(fā)送信號(hào)以將程序計(jì)數(shù)器290的值復(fù)位為初始值(例如,復(fù)位為零)。在處理元件34A開始產(chǎn)生MIDI語(yǔ)音的數(shù)字波形之前,協(xié)調(diào)模塊32可向控制單元280發(fā)送復(fù)位信號(hào)。當(dāng)控制單元280從協(xié)調(diào)模塊32接收到復(fù)位信號(hào)時(shí),控制單元280可將第一循環(huán)計(jì)數(shù)器304、第二循環(huán)計(jì)數(shù)器306及程序計(jì)數(shù)器290的值復(fù)位為其初始值。舉例來(lái)說(shuō),控制單元280可將第一循環(huán)計(jì)數(shù)器304、第二循環(huán)計(jì)數(shù)器306及程序計(jì)數(shù)器290的值設(shè)置為零。隨后,協(xié)調(diào)模塊32可向控制單元280發(fā)送啟用信號(hào)以指令處理元件34A開始產(chǎn)生VPSRAM單元46A中所描述的MIDI語(yǔ)音的數(shù)字波形。當(dāng)控制單元280接收到啟用信號(hào)時(shí),處理元件34可開始執(zhí)行存儲(chǔ)于程序RAM單元44A中的連續(xù)存儲(chǔ)器位置中的一系列程序指令(亦即,程序)。程序RAM單元44A中的程序指令中的每一者可為上文描述的指令集合中的指令的實(shí)例。一般而言,由處理元件34A執(zhí)行的程序可由第一循環(huán)及嵌套于第一循環(huán)內(nèi)的第二循環(huán)組成。在第一循環(huán)的每一循環(huán)期間,處理元件34A可執(zhí)行整個(gè)第二循環(huán)直到第二循環(huán)終止。當(dāng)?shù)诙h(huán)終止時(shí),處理元件34A可能已導(dǎo)出MIDI語(yǔ)音的波形的一個(gè)樣本的符號(hào)。當(dāng)?shù)谝谎h(huán)終止時(shí),處理元件34A已導(dǎo)出整個(gè)MIDI幀的MIDI語(yǔ)音的波形的每一樣本的每一符號(hào)。舉例來(lái)說(shuō),以上實(shí)例指令集中的以下系列的指令可概述由處理元件34A執(zhí)行的程序的基本結(jié)構(gòu)LOOP1BEGIN/i'mLoop固WerLOOP2BEGINsecon化oo;Coim^〃lie〃'ves戸&oZ/oraram/ZeLOOP2ENDDCTRL—NOP〃/"/orma礎(chǔ)'"'owa/praces"'rtgLOOP1ENDDCTRL—NOP//per/ormfl礎(chǔ)'"'owa/pracejs!'ngEXIT在此實(shí)例系列的指令中,雙前向斜杠之后的詞語(yǔ)表示用以執(zhí)行所描述的操作的一個(gè)或一個(gè)以上指令。此外,在此實(shí)例中,CTRL—NOP操作跟在LOOP1ENDD及LOOP2ENDD指令之后,因?yàn)榭刂茊卧?80可能在控制單元280使用程序計(jì)數(shù)器290中經(jīng)更新的存儲(chǔ)器地址以存取程序RAM34A中含有相應(yīng)LOOP1BEGIN或LOOP2BEGIN指令的位置之前已開始執(zhí)行LOOPlENDD或LOOP2ENDD指令之后的指令。換句話說(shuō),控制單元280可能已將循環(huán)結(jié)束指令之后的指令添加到處理管線。為了執(zhí)行程序RAM單元44A中的程序,控制單元280可向程序RAM單元44A發(fā)送請(qǐng)求以讀取程序RAM單元44A中具有存儲(chǔ)于程序計(jì)數(shù)器290中的存儲(chǔ)器地址的存儲(chǔ)器位置。響應(yīng)于所述請(qǐng)求,程序RAM單元44A可向控制單元280發(fā)送程序RAM單元44A中具有存儲(chǔ)于程序計(jì)數(shù)器290中的存儲(chǔ)器地址的存儲(chǔ)器位置的內(nèi)容。所請(qǐng)求的存儲(chǔ)器位置的內(nèi)容可為四十位的字,其包括處理元件34A可并行執(zhí)行的兩個(gè)程序指令。舉例來(lái)說(shuō),程序RAM單元44A中的一個(gè)存儲(chǔ)器位置可包括以下各項(xiàng)中的一者(1)一個(gè)字中的ALU指令及加載/存儲(chǔ)指令;(2)—個(gè)字中的加載/存儲(chǔ)指令及第二加載/存儲(chǔ)指令;(3)—個(gè)字中的控制指令及加載/存儲(chǔ)指令;或(4)一個(gè)字中的ALU指令及控制指令。在包括ALU指令及加載/存儲(chǔ)指令的字中,位0:17可為加載/存儲(chǔ)指令,位18:37可為ALU指令,且位38及39可為指示字含有ALU指令及加載/存儲(chǔ)指令的旗標(biāo)。在包括兩個(gè)加載指令的字中,位0:17可為第一加載/存儲(chǔ)指令,位18及19可經(jīng)預(yù)留,位20:37可為第二加載/存儲(chǔ)指令,且位38及39可為指示字含有兩個(gè)加載/存儲(chǔ)指令的旗標(biāo)。在包括控制指令及加載指令的字中,位0:17可為加載指令,位18及19可經(jīng)預(yù)留,位20:35可為控制指令,位36及37可經(jīng)預(yù)留,且位38及39可為指示字含有控制指令及加載/存儲(chǔ)指令的旗標(biāo)。在包括ALU指令及控制指令的字中,位0:15可為控制指令,位16及17可經(jīng)預(yù)留,位18:37可為ALU指令,且位38及39可為指示字含有ALU指令及控制指令的旗標(biāo)。在接收到存儲(chǔ)器位置的內(nèi)容之后,控制單元280可解碼并應(yīng)用存儲(chǔ)器位置的內(nèi)容中指定的指令??刂茊卧?80可以原子方式解碼并應(yīng)用指令中的每一者。換句話說(shuō),一旦控制單元280開始執(zhí)行指令,控制單元280便直到控制單元280結(jié)束執(zhí)行指令為止才改變由指令使用或作用的任何數(shù)據(jù)。此外,在一些實(shí)例中,控制單元280可并行解碼及應(yīng)用從程序RAM單元44A接收的字中的兩個(gè)指令。一旦控制單元280已執(zhí)行字中的指令,控制單元280便可使程序計(jì)數(shù)器290遞增且請(qǐng)求程序RAM單元44A中由遞增的程序計(jì)數(shù)器所識(shí)別的存儲(chǔ)器位置的內(nèi)容。處理元件34對(duì)經(jīng)特殊化的指令集的使用可提供一個(gè)或一個(gè)以上優(yōu)勢(shì)。舉例來(lái)說(shuō),執(zhí)行各種音頻處理操作以產(chǎn)生數(shù)字波形。在第一方法中,可在硬件中實(shí)施音頻處理操作。舉例來(lái)說(shuō),可設(shè)計(jì)專用集成電路(ASIC)來(lái)實(shí)施這些操作。然而,在硬件中實(shí)施這些操作阻止了對(duì)所述硬件的出于其它目的的再使用。亦即,一旦已將經(jīng)設(shè)計(jì)以實(shí)施這些操作的ASIC安裝于裝置中,一般即無(wú)法改變ASIC來(lái)執(zhí)行不同操作。在第二方法中,使用通用指令集的處理器可執(zhí)行音頻處理操作。然而,對(duì)所述處理器的使用可能是浪費(fèi)的。舉例來(lái)說(shuō),使用通用指令集的處理器可包括用以對(duì)在產(chǎn)生數(shù)字波形時(shí)從未使用的指令進(jìn)行解碼的電路。對(duì)特殊化指令集的使用可解決這兩種方法的弱點(diǎn)。舉例來(lái)說(shuō),對(duì)特殊化指令集的使用可允許更新使用所述指令以產(chǎn)生數(shù)字波形的程序。同時(shí),對(duì)特殊化指令集的使用可允許芯片設(shè)計(jì)者將處理器的實(shí)施保持為簡(jiǎn)單的。此外,對(duì)例如EGCOMP及LOADLFO等基于語(yǔ)音參數(shù)集合中的值執(zhí)行不同功能的特殊化指令的使用可提供一個(gè)或一個(gè)以上額外優(yōu)勢(shì)。舉例來(lái)說(shuō),因?yàn)閷GCOMP及LOADLFO實(shí)施為單個(gè)的指令,所以不需要有條件的跳躍或分支來(lái)執(zhí)行這些指令。因?yàn)镋GCOMP及LOADLFO不包括有條件的跳躍或分支,所以不需要在這些有條件的跳躍或分支期間更新程序計(jì)數(shù)器。此外,因?yàn)閷GCOMP及LOADLFO實(shí)施為單個(gè)的指令,所以不需要加載單獨(dú)的指令來(lái)執(zhí)行EGCOMP及LOADLFO的操作。舉例來(lái)說(shuō),EGCOMP指令的情況1需要乘法操作。然而,因?yàn)镋GCOMP為單個(gè)指令,所以不需要從程序存儲(chǔ)器加載單獨(dú)的乘法操作。因?yàn)镋GCOMP及LOADLFO不需要從程序存儲(chǔ)器進(jìn)行多次加載,所以EGCOMP及LOADLFO與將EGCOMP及LOADLFO實(shí)施為單獨(dú)指令集合的情況相比可在較少時(shí)鐘循環(huán)中執(zhí)行。在另一實(shí)例中,對(duì)基于語(yǔ)音參數(shù)集合的值執(zhí)行不同功能的特殊化指令的使用可為有利的,因?yàn)槭褂盟鲋噶畹某绦蚩奢^為緊湊。舉例來(lái)說(shuō),可能需要十個(gè)單獨(dú)的指令來(lái)實(shí)施由一個(gè)EGCOMP指令執(zhí)行的操作。較為緊湊的程序可能較易于供程序員讀取。另外,較為緊湊的程序可占據(jù)程序存儲(chǔ)器中的較少空間。因?yàn)檩^為緊湊的程序可占據(jù)程序存儲(chǔ)器中的較少空間,所以程序存儲(chǔ)器可較小。較小程序存儲(chǔ)器實(shí)施起來(lái)可較為廉價(jià),且可節(jié)省芯片組上的空間。圖13是說(shuō)明音頻裝置4的MIDI硬件單元18中的處理元件34A的實(shí)例操作的流程圖。雖然參看處理元件34A來(lái)解釋圖13的實(shí)例,但處理器34中的每一者可同時(shí)執(zhí)行此操作。最初,處理元件34A中的控制單元280可從協(xié)調(diào)模塊32接收控制信號(hào)以使內(nèi)部寄存器的值復(fù)位以便準(zhǔn)備產(chǎn)生MIDI語(yǔ)音的新的數(shù)字波形(320)。當(dāng)控制單元280接收到復(fù)位信號(hào)時(shí),控制單元280可將第一循環(huán)計(jì)數(shù)器304、第二循環(huán)計(jì)數(shù)器306、程序計(jì)數(shù)器290及寄存器286的值復(fù)位為零。接下來(lái),控制單元280可從協(xié)調(diào)模塊32接收開始產(chǎn)生具有VPSRAM單元46A中的參數(shù)的MIDI語(yǔ)音的數(shù)字波形的指令(322)。在控制單元280從協(xié)調(diào)模塊32接收到開始產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的指令之后,控制單元280可從程序存儲(chǔ)器44A讀取程序指令(324)??刂茊卧?80接著可確定程序指令是否為"循環(huán)結(jié)束"指令(326)。如果指令是"循環(huán)結(jié)束"指令(326為"是"),則控制單元280可使處理元件34A中的寄存器中的循環(huán)計(jì)數(shù)值遞減(328)。另一方面,如果指令不是"循環(huán)結(jié)束"指令(326為"否"),則控制單元280可確定指令是否為"退出"指令(330)。如果指令是"退出"指令(330為"是"),則控制單元280可輸出一通知協(xié)調(diào)模塊32處理元件34A已結(jié)束產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的控制信號(hào)(332)。如果指令不是"退出"指令(330為"否"),則控制單元280可輸出控制信號(hào)或改變程序計(jì)數(shù)器290的值以使指令執(zhí)行(334)。己描述各種實(shí)例。本文中描述的技術(shù)的一個(gè)或一個(gè)以上方面可在硬件、軟件、固件或其組合中實(shí)施。描述為模塊或組件的任何特征可一起實(shí)施在集成邏輯裝置中,或單獨(dú)地實(shí)42施為離散但可交互操作的邏輯裝置。如果在軟件中實(shí)施,則所述技術(shù)的一個(gè)或一個(gè)以上方面可至少部分地由包含指令的計(jì)算機(jī)可讀媒體實(shí)現(xiàn),所述指令在被執(zhí)行時(shí)執(zhí)行上文所述的方法中的一者或一者以上。計(jì)算機(jī)可讀數(shù)據(jù)存儲(chǔ)媒體可形成可包括封裝材料的計(jì)算機(jī)程序產(chǎn)品的部分。計(jì)算機(jī)可讀媒體可包含例如同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(SDRAM)等隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、非易失性隨機(jī)存取存儲(chǔ)器(NVRAM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、快閃存儲(chǔ)器、磁性或光學(xué)數(shù)據(jù)存儲(chǔ)媒體及其類似物。另外或替代地,所述技術(shù)可至少部分地由計(jì)算機(jī)可讀通信媒體來(lái)實(shí)現(xiàn),所述計(jì)算機(jī)可讀通信媒體以指令或數(shù)據(jù)結(jié)構(gòu)的形式來(lái)載運(yùn)或傳送代碼,且可由計(jì)算機(jī)來(lái)存取、讀取及/或執(zhí)行??捎衫缫粋€(gè)或一個(gè)以上數(shù)字信號(hào)處理器(DSP)、通用微處理器、專用集成電路(ASIC)、現(xiàn)場(chǎng)可編程邏輯陣列(FPGA)或其它等效集成或離散邏輯電路等一個(gè)或一個(gè)以上處理器來(lái)執(zhí)行所述指令。因此,在本文中使用時(shí),術(shù)語(yǔ)"處理器"可指代上述結(jié)構(gòu)中的任一者或適于實(shí)施本文中描述的技術(shù)的任何其它結(jié)構(gòu)。另外,在一些方面中,本文中描述的功能性可提供于經(jīng)配置或適于執(zhí)行本發(fā)明的技術(shù)的專用軟件模塊或硬件模塊內(nèi)。如果在硬件中實(shí)施,則本發(fā)明的一個(gè)或一個(gè)以上方面可針對(duì)經(jīng)配置或適于執(zhí)行本文中描述的技術(shù)中的一者或一者以上的例如集成電路、芯片組、ASIC、FPGA、邏輯或其各種組合等電路。電路可包括集成電路或芯片組中的處理器及一個(gè)或一個(gè)以上硬件單元(如本文中所描述)。也應(yīng)注意,所屬領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到電路可實(shí)施上文描述的功能中的一些或全部??赡艽嬖趯?shí)施所有功能的一個(gè)電路,或者也可能存在實(shí)施功能的電路的多個(gè)區(qū)段。在當(dāng)前移動(dòng)平臺(tái)技術(shù)的情況下,集成電路可包含至少一個(gè)DSP及至少一個(gè)高級(jí)精簡(jiǎn)指令集計(jì)算機(jī)(RISC)機(jī)器(ARM)處理器以控制及/或通信到DSP。另外,電路可設(shè)計(jì)或?qū)嵤┯谌舾蓞^(qū)段中,且在一些情況下,可再使用區(qū)段以執(zhí)行本發(fā)明中所描述的不同功能。已描述各種實(shí)例。這些及其它實(shí)例屬于隨附權(quán)利要求書的范圍內(nèi)。權(quán)利要求1.一種方法,其包含執(zhí)行產(chǎn)生樂(lè)器數(shù)字接口(MIDI)語(yǔ)音的數(shù)字波形的軟件程序中的機(jī)器代碼指令,其中執(zhí)行所述軟件程序中的所述指令包含基于界定所述MIDI語(yǔ)音的語(yǔ)音參數(shù)集合選擇操作,及輸出控制信號(hào)以致使所述選定操作被執(zhí)行;以及輸出所述數(shù)字波形。2.根據(jù)權(quán)利要求1所述的方法,其中所述方法進(jìn)一步包含從存儲(chǔ)器單元檢索字,其中所述字含有所述軟件程序中的多個(gè)指令。3.根據(jù)權(quán)利要求1所述的方法,其中所述軟件程序包含加載/存儲(chǔ)指令、算術(shù)指令及控制指令。4.根據(jù)權(quán)利要求1所述的方法,其中所述指令為固定長(zhǎng)度。5.根據(jù)權(quán)利要求1所述的方法,其中所述方法進(jìn)一步包含執(zhí)行所述軟件程序中的指令以將所述數(shù)字波形的樣本添加到第二數(shù)字波形的時(shí)間等效樣本以產(chǎn)生MIDI幀的整體數(shù)字波形的整體樣本。6.根據(jù)權(quán)利要求l所述的方法,其中所述方法進(jìn)一步包含使用通用處理器剖析MIDI文件且對(duì)與所述MIDI文件相關(guān)聯(lián)的MIDI事件進(jìn)行調(diào)度以及使用數(shù)字信號(hào)處理器(DSP)處理所述MIDI事件以輸出連續(xù)數(shù)字波形;其中硬件單元執(zhí)行所述軟件程序。7.根據(jù)權(quán)利要求l所述的方法,其中所述方法進(jìn)一步包含將所述數(shù)字波形轉(zhuǎn)換為模擬輸出;以及將所述模擬輸出作為聲音而輸出。8.根據(jù)權(quán)利要求1所述的方法,其中所述方法進(jìn)一步包含產(chǎn)生語(yǔ)音指示符的鏈接列表,其中所述鏈接列表中的所述語(yǔ)音指示符中的每一者通過(guò)指定存儲(chǔ)界定MIDI幀的MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的存儲(chǔ)器位置而指示所述MIDI語(yǔ)音,其中由所述鏈接列表中的所述語(yǔ)音指示符所指示的所述MIDI語(yǔ)音為在所述MIDI幀期間具有最大聲學(xué)顯著性的那些MIDI語(yǔ)音;且其中所述鏈接列表包括指示當(dāng)前MIDI語(yǔ)音的語(yǔ)音指示符。9.根據(jù)權(quán)利要求8所述的方法,其中產(chǎn)生鏈接列表包含將由第一語(yǔ)音指示符所指示的MIDI語(yǔ)音的聲學(xué)顯著性與由第二語(yǔ)音指示符所指示的MIDI語(yǔ)音的聲學(xué)顯著性進(jìn)行比較;以及在由所述第一語(yǔ)音指示符所指示的所述MIDI語(yǔ)音的所述聲學(xué)顯著性大于由所述第二語(yǔ)音指示符所指示的所述MIDI語(yǔ)音的所述聲學(xué)顯著性時(shí)將所述第一語(yǔ)音指示符插入到所述鏈接列表中所述第二語(yǔ)音指示符之前。10.根據(jù)權(quán)利要求1所述的方法,其中選擇操作包含識(shí)別所述語(yǔ)音參數(shù)集合中的控制參數(shù)中的位的值。11.根據(jù)權(quán)利要求l所述的方法,其中選擇操作包含選擇包絡(luò)產(chǎn)生操作。12.根據(jù)權(quán)利要求11所述的方法,其中執(zhí)行所述選定操作包含計(jì)算包絡(luò)產(chǎn)生調(diào)制的電平。13.根據(jù)權(quán)利要求11所述的方法,其中執(zhí)行所述選定操作包含計(jì)算包絡(luò)產(chǎn)生振幅的電平。14.根據(jù)權(quán)利要求1所述的方法,其中執(zhí)行指令進(jìn)一步包含向模塊提供參數(shù)值;且其中所述模塊選擇所述操作且執(zhí)行所述選定操作。15.根據(jù)權(quán)利要求14所述的方法,其中向模塊提供參數(shù)值包含向低頻振蕩器(LFO)模塊提供所述參數(shù)值,且其中執(zhí)行所述機(jī)器代碼指令進(jìn)一步包含將來(lái)自所述LFO模塊中的寄存器的值存儲(chǔ)到本地寄存器;以及更新所述LFO模塊中的所述寄存器中的值。16.根據(jù)權(quán)利要求15所述的方法,其中更新所述LFO模塊中的所述寄存器中的值包含更新所述LFO模塊中的指示由所述LFO模塊輸出的三角形波形的相位的值。17.根據(jù)權(quán)利要求15所述的方法,其中更新所述LFO模塊中的所述寄存器中的值包含更新由所述LFO模塊輸出的三角形波形的增益。18.—種裝置,其包含存儲(chǔ)器單元,其存儲(chǔ)界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合;以及處理元件,其執(zhí)行軟件程序中的機(jī)器代碼指令以產(chǎn)生所述MIDI語(yǔ)音的數(shù)字波形,其中所述機(jī)器代碼指令的完全執(zhí)行涉及基于所述語(yǔ)音參數(shù)集合而選擇操作及執(zhí)行所述選定操作。19.根據(jù)權(quán)利要求18所述的裝置,其中所述處理元件通過(guò)讀取包括多個(gè)指令的字而從程序存儲(chǔ)器讀取指令。20.根據(jù)權(quán)利要求18所述的裝置,其中所述指令為固定長(zhǎng)度指令。21.根據(jù)權(quán)利要求18所述的裝置,其中所述處理元件為第一處理元件;其中所述存儲(chǔ)器單元存儲(chǔ)界定MIDI語(yǔ)音的多個(gè)語(yǔ)音參數(shù)集合;其中所述MIDI語(yǔ)音為所述MIDI語(yǔ)音中的第一者;且其中所述裝置進(jìn)一步包含第二處理元件,所述第二處理元件執(zhí)行軟件程序中的機(jī)器代碼指令以產(chǎn)生所述MIDI語(yǔ)音中的第二者的數(shù)字波形,而所述第一處理元件執(zhí)行所述程序中的指令以產(chǎn)生所述第一MIDI語(yǔ)音的所述數(shù)字波形。22.根據(jù)權(quán)利要求21所述的裝置,其中所述裝置進(jìn)一步包含求和緩沖器以存儲(chǔ)聚集所述第一MIDI語(yǔ)音的所述數(shù)字波形及所述第二MIDI語(yǔ)音的所述數(shù)字波形的數(shù)字波形。23.根據(jù)權(quán)利要求18所述的裝置,其中所述裝置進(jìn)一步包含MIDI硬件單元,其產(chǎn)生MIDI幀中的MIDI語(yǔ)音集合的數(shù)字波形,其中所述處理元件為所述MIDI硬件單元的組件;通用處理器,其剖析MIDI文件且對(duì)與所述MIDI文件相關(guān)聯(lián)的MIDI事件進(jìn)行調(diào)度;以及DSP,其處理所述MIDI事件以輸出包括所述MIDI幀中的所述MIDI語(yǔ)音集合的所述數(shù)字波形的連續(xù)數(shù)字波形。24.根據(jù)權(quán)利要求23所述的裝置,其中所述裝置進(jìn)一步包含-數(shù)/模轉(zhuǎn)換器,其將所述連續(xù)數(shù)字波形轉(zhuǎn)換為模擬音頻信號(hào);以及驅(qū)動(dòng)電路,其使用所述模擬音頻信號(hào)以驅(qū)動(dòng)揚(yáng)聲器輸出聲音。25.根據(jù)權(quán)利要求23所述的裝置,其中所述DSP包含列表產(chǎn)生器模塊,其產(chǎn)生語(yǔ)音指示符的鏈接列表,其中所述鏈接列表中的所述語(yǔ)音指示符中的每一者通過(guò)指定存儲(chǔ)界定MIDI幀的MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的存儲(chǔ)器位置而指示所述MIDI語(yǔ)音,其中由所述鏈接列表中的所述語(yǔ)音指示符所指示的所述MIDI語(yǔ)音為在所述MIDI幀期間具有最大聲學(xué)顯著性的那些MIDI語(yǔ)音;且其中所述鏈接列表包括指示當(dāng)前MIDI語(yǔ)音的語(yǔ)音指示符。26.根據(jù)權(quán)利要求18所述的裝置,其中所述處理元件進(jìn)一步包含執(zhí)行數(shù)學(xué)運(yùn)算的算術(shù)邏輯單元(ALU);其中所述控制單元選擇所述操作;且其中所述控制單元向所述ALU輸出指令所述ALU執(zhí)行所述選定操作的控制信號(hào)。27.根據(jù)權(quán)利要求26所述的裝置,其中所述控制單元在所述控制單元讀取包絡(luò)產(chǎn)生計(jì)算指令時(shí)選擇所述操作。28.根據(jù)權(quán)利要求27所述的裝置,其中所述控制單元向所述ALU輸出控制信號(hào)以計(jì)算所述當(dāng)前MIDI語(yǔ)音的調(diào)制包絡(luò)的新值。29.根據(jù)權(quán)利要求27所述的裝置,其中所述控制單元向所述ALU輸出控制信號(hào)以計(jì)算所述當(dāng)前MIDI語(yǔ)音的音量包絡(luò)的新值。30.根據(jù)權(quán)利要求18所述的裝置,其中音頻合成設(shè)備進(jìn)一步包含產(chǎn)生三角形數(shù)字波形的低頻振蕩器(LFO);其中所述LFO選擇所述操作;且其中所述LFO執(zhí)行所述選定操作。31.根據(jù)權(quán)利要求30所述的裝置,其中所述處理元件包含一組寄存器;且其中所述控制單元向所述LFO輸出控制信號(hào)以將所述三角形波形的樣本存儲(chǔ)到所述寄存器中的一者且更新由所述LFO產(chǎn)生的所述三角形波形。32.根據(jù)權(quán)利要求31所述的裝置,其中所述控制單元輸出控制信號(hào)以指令所述LFO更新所述三角形波形的相位。33.根據(jù)權(quán)利要求31所述的裝置,其中所述控制單元輸出控制信號(hào)以指令所述LFO更新所述三角形波形的增益。34.—種包含指令的計(jì)算機(jī)可讀媒體,所述指令致使一個(gè)或一個(gè)以上處理器-執(zhí)行產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的軟件程序中的機(jī)器代碼指令,其中所述致使所述一個(gè)或一個(gè)以上處理器執(zhí)行所述機(jī)器代碼指令的指令致使基于界定所述MIDI語(yǔ)音的語(yǔ)音參數(shù)集合而選擇操作且輸出控制信號(hào)以致使所述選定操作被執(zhí)行;且輸出所述數(shù)字波形。35.根據(jù)權(quán)利要求34所述的計(jì)算機(jī)可讀媒體,其中所述操作為包絡(luò)產(chǎn)生操作。36.根據(jù)權(quán)利要求34所述的計(jì)算機(jī)可讀媒體,其中所述指令致使所述一個(gè)或一個(gè)以上處理器向不同于所述一個(gè)或一個(gè)以上處理器的模塊提供參數(shù)值,其中所述模塊選擇所述操作且執(zhí)行選定操作。37.—種裝置,其包含用于存儲(chǔ)界定MIDI語(yǔ)音的語(yǔ)音參數(shù)集合的裝置;、用于執(zhí)行軟件程序中的機(jī)器代碼指令以產(chǎn)生所述MIDI語(yǔ)音的數(shù)字波形的裝置,其中所述機(jī)器代碼指令的完全執(zhí)行涉及基于所述語(yǔ)音參數(shù)集合而選擇操作及執(zhí)行所述選定操作。38.根據(jù)權(quán)利要求37所述的裝置,其中所述用于執(zhí)行所述機(jī)器代碼指令的裝置在所述用于執(zhí)行所述機(jī)器代碼指令的裝置讀取包絡(luò)產(chǎn)生計(jì)算指令時(shí)選擇所述操作。39.根據(jù)權(quán)利要求37所述的裝置,其中所述裝置包含用于產(chǎn)生三角形數(shù)字波形的裝置,其中所述用于產(chǎn)生所述三角形數(shù)字波形的裝置選擇所述操作,且其中所述用于產(chǎn)生所述三角形數(shù)字波形的裝置執(zhí)行所述選定操作。40.—種電路,其經(jīng)配置以執(zhí)行產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的軟件程序的機(jī)器代碼指令,其中所述電路經(jīng)配置以基于界定所述MIDI語(yǔ)音的語(yǔ)音參數(shù)集合而選擇操作且輸出控制信號(hào)以致使所述選定操作被執(zhí)行;且輸出所述數(shù)字波形。41.根據(jù)權(quán)利要求40所述的電路,其中所述操作為包絡(luò)產(chǎn)生操作。全文摘要本發(fā)明描述使用經(jīng)特殊化以用于產(chǎn)生樂(lè)器數(shù)字接口(MIDI)語(yǔ)音的數(shù)字波形的機(jī)器代碼指令集合來(lái)產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的技術(shù)。舉例來(lái)說(shuō),處理器可執(zhí)行產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的軟件程序。所述軟件程序的指令可為來(lái)自經(jīng)特殊化以用于產(chǎn)生MIDI語(yǔ)音的數(shù)字波形的指令集的機(jī)器代碼指令。確切地說(shuō),所述指令中的一者的執(zhí)行可涉及基于界定MIDI語(yǔ)音的參數(shù)集合而選擇操作及執(zhí)行所述選定操作。文檔編號(hào)G10H1/00GK101641730SQ200880009285公開日2010年2月3日申請(qǐng)日期2008年3月17日優(yōu)先權(quán)日2007年3月22日發(fā)明者尼迪什·拉馬錢德拉·卡馬特,普拉加克特·V·庫(kù)爾馬尼,蘇雷什·德瓦拉帕里申請(qǐng)人:高通股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1