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

用于產(chǎn)生三角波的方法和裝置的制作方法

文檔序號:2831743閱讀:819來源:國知局
專利名稱:用于產(chǎn)生三角波的方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及電子裝置,且特定來說,涉及可產(chǎn)生三角波的電子裝置。
技術(shù)背景樂器數(shù)字接口 (MIDI)是用于產(chǎn)生、傳送及/或回放例如音樂、話音、音調(diào)、警報 及其類似物的音頻聲音的格式。支持MIDI格式的裝置可存儲可用以產(chǎn)生各種"語音" 的音頻信息的集合。每一語音可對應于特定聲音,例如由特定器具產(chǎn)生的音符。舉例來 說,第一語音可對應于如由鋼琴演奏的中音C,第二語音可對應于如由長號演奏的中音 C,第三語音可對應于如由長號演奏的D并,等等。為了復制由各種器具演奏的聲音,兼 容MIDI的裝置可包括指定各種音頻特征(例如低頻振蕩器的特性、例如震音等效果及 可影響對不同聲音的感知的許多其它音頻特征)的語音信息的集合??山缍?、在MIDI 文件中輸送并由支持MIDI格式的裝置重現(xiàn)幾乎任何聲音。支持MIDI格式的裝置可在指示裝置應開始產(chǎn)生音符的事件發(fā)生時產(chǎn)生音符(或其 它聲音)。類似地,裝置在指示裝置應停止產(chǎn)生音符的事件發(fā)生時停止產(chǎn)生音符。可通 過指定指示特定語音何時應開始及停止的事件而根據(jù)MIDI格式對整個音樂作品進行編 碼。以此方式,可以根據(jù)MIDI格式的緊湊文件格式來存儲及傳輸音樂作品。多種裝置中支持MIDI。舉例來說,例如無線電電話等無線通信裝置可支持用于可 下載的鈴聲或其它音頻輸出的MIDI文件。例如蘋果計算機有限公司(Apple Computer, Inc)售賣的"iPod"裝置及微軟公司(Microsoft Corp)售賣的"Zune"裝置等數(shù)字音 樂播放器也可支持MIDI文件格式。支持MIDI格式的其它裝置可包括多種音樂合成器, 例如鍵盤、音序器、語音編碼器(音碼器)和節(jié)奏器。另外,廣泛多種裝置還可支持9MIDI文件或音軌的播放,所述裝置包括無線移動裝置、直接雙向通信裝置(有時稱為 對講機)、網(wǎng)絡(luò)電話、個人計算機、桌上型及膝上型計算機、工作站、衛(wèi)星無線電裝置、 內(nèi)部通信裝置、無線電廣播裝置、手持型游戲裝置、安裝在裝置中的電路板、信息查詢 站(information kiosk)、視頻游戲控制臺、各種用于兒童的計算機化玩具、用于汽車、 船只及飛機中的機載計算機及多種其它裝置。業(yè)內(nèi)還已開發(fā)若干其它類型的音頻格式、標準和技術(shù)。僅舉幾個例子,其它實例包 括由運動圖片專家組(MPEG)界定的標準、窗口媒體音頻(WMA)標準、杜比實驗室 (Dolby Laboratories, Inc.)的標準和由THX, ltd.開發(fā)的質(zhì)量保證技術(shù)。此外,許多音頻 編碼標準和技術(shù)相繼出現(xiàn),包括數(shù)字MP3標準和MP3標準的變型,例如用于"iPod" 裝置中的高級音頻編碼(AAC)標準。各種視頻編碼標準還可使用音頻編碼技術(shù),(例 如)以編碼包括音頻和視頻信息的多媒體幀。MIDI格式的一個重要特征為其存儲關(guān)于特定音符的發(fā)音的數(shù)據(jù)的能力。發(fā)音數(shù)據(jù) 包括關(guān)于聲音效果的信息,例如顫音或震音,其可幫助仿真聲學器具的聲音。利用MIDI 的裝置可使用低頻振蕩器與包絡(luò)產(chǎn)生器(envelope generator)的組合實施這些效果。通 常,低頻振蕩器(LFO)可用于產(chǎn)生周期性低頻率波以調(diào)制特定音符的音高、振幅和頻 率。為了產(chǎn)生在可接受容許范圍內(nèi)操作的低頻波,需要大量和復雜的計算,其可需要存 儲若干參數(shù)且利用顯著數(shù)量的芯片區(qū)域。發(fā)明內(nèi)容一般來說,本發(fā)明描述用于產(chǎn)生三角波的技術(shù)。盡管所述技術(shù)可用于其它音頻格式、 技術(shù)或標準,但是所述技術(shù)對于遵照樂器數(shù)字接口 (MIDI)格式的音頻文件的播放可尤 其有用。在一個方面中,本發(fā)明提供一種用于產(chǎn)生形成具有所要頻率和所要增益的三角波的 一組數(shù)據(jù)點的方法。所述方法包括基于所述三角波的所述所要頻率和所述所要增益確定 增量值的步驟(a)。所述方法進一步包括將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù) 據(jù)點的步驟(b),所述當前數(shù)據(jù)點和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組。所述方 法進一步包括反復執(zhí)行(a)和(b)以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點的步驟。在另一方面中,本發(fā)明提供一種用于產(chǎn)生形成具有所要頻率和所要增益的三角波的 一組數(shù)據(jù)點的裝置。所述裝置包括電路,所述電路基于所述三角波的所述所要頻率和所 述所要增益確定增量值。所述裝置進一步包括加法器,所述加法器將所述增量值相加到 當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù)點,所述當前數(shù)據(jù)點和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組,其中所述電路反復確定增量值且所述加法器反復地將所述增量值相加到連續(xù)數(shù)據(jù) 點以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點。在另一方面中,本發(fā)明提供一種用于產(chǎn)生形成具有所要頻率和所要增益的三角波的 一組數(shù)據(jù)點的裝置。所述裝置包括用于基于所述三角波的所述所要頻率和所述所要增益 確定增量值的第一裝置。所述裝置進一步包括用于將所述增量值相加到當前數(shù)據(jù)點以產(chǎn) 生下一數(shù)據(jù)點的第二裝置,所述當前數(shù)據(jù)點和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子 組,其中所述第一裝置反復確定增量值且所述第二裝置反復地將所述增量值相加到連續(xù) 數(shù)據(jù)點以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點??梢杂布?、軟件、固件或其任何組合實施本發(fā)明中所描述的技術(shù)的各種方面。如果 以軟件實施,則可在一個或一個以上處理器中執(zhí)行軟件,所述處理器例如為微處理器、 專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或數(shù)字信號處理器(DSP)。執(zhí)行 所述技術(shù)的軟件最初可存儲于計算機可讀媒體中且加載并在處理器中執(zhí)行。因此,本發(fā)明還涵蓋一種包含指令的計算機可讀媒體,所述指令在由一個或一個以 上處理器執(zhí)行時,致使所述處理器產(chǎn)生形成具有所要頻率和所要增益的三角波的一組數(shù) 據(jù)點,其中所述指令致使所述一個或一個以上處理器(a)基于所述三角波的所述所要 頻率和所述所要增益確定增量值;(b)將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù) 點,所述當前數(shù)據(jù)點和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組;且反復執(zhí)行(a)和 (b)以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點。在某些情況下,計算機可讀媒體可形成計算機程序產(chǎn)品的部分,計算機程序產(chǎn)品可 出售給制造商和/或用于視頻編碼裝置中。計算機程序產(chǎn)品可包括計算機可讀媒體,且在 某些情況下,還可包括封裝材料。在其它情況下,本發(fā)明可針對一種電路,例如經(jīng)配置或適于執(zhí)行本文所描述的技術(shù) 中的一者或一者以上的集成電路、芯片組、專用集成電路(ASIC)、現(xiàn)場可編程門陣列 (FPGA)、邏輯或其各種組合。因此,本發(fā)明還涵蓋一種用于產(chǎn)生形成具有所要頻率和所要增益的三角波的一組數(shù) 據(jù)點的電路,其中所述電路適于(a)基于所述三角波的所述所要頻率和所述所要增益 確定增量值;(b)將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù)點,所述當前數(shù)據(jù)點 和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組;且反復執(zhí)行(a)和(b)以產(chǎn)生形成所述 三角波的所述組數(shù)據(jù)點。在附圖和以下描述中陳述本發(fā)明的一個或一個以上實施例的細節(jié)。根據(jù)所述描述和 圖式且根據(jù)權(quán)利要求書將明白本發(fā)明的其它特征、目的和優(yōu)點。1

圖1為說明可實施根據(jù)本發(fā)明的用于處理音頻文件的技術(shù)的示范性音頻裝置的框圖。圖2為根據(jù)本發(fā)明的用于處理合成參數(shù)的硬件單元的一個實例的框圖。圖3為說明根據(jù)本發(fā)明的用于產(chǎn)生形成具有所要增益和頻率的三角波的一組數(shù)據(jù)點 的示范性三角波產(chǎn)生器的示意圖。圖4為說明根據(jù)本發(fā)明的用于產(chǎn)生形成具有所要頻率和所要增益的三角波的一組數(shù) 據(jù)點的示范性方法的流程圖。圖5為說明由分別在圖3和圖4中展示的三角波產(chǎn)生器和方法產(chǎn)生的示范性三角波 的一個周期的曲線圖。
具體實施方式
本發(fā)明描述用于產(chǎn)生三角波的技術(shù)。盡管所述技術(shù)可與利用三角波的其它音頻格 式、技術(shù)或標準一起使用,但所述技術(shù)對于遵照樂器數(shù)字接口 (MIDI)格式的音頻文件 的回放可尤為有用。如本文所使用,術(shù)語MIDI文件指含有符合MIDI格式的至少一個 音軌的任何音頻數(shù)據(jù)或文件。可包括MIDI音軌的各種文件格式的實例包括(例如)CMX、 SMAF、 XMF、 SP-MIDI。 CMX代表由高通有限公司(Qualcomm Inc.)開發(fā)的緊湊媒體 擴展。SMAF代表由雅馬哈公司(Yamaha Corp.)開發(fā)的合成音樂移動應用格式。XMF 代表可擴展音樂格式且SP-MIDI代表可縮放多音MIDI。可在可包括音頻信息或音頻-視頻(多媒體)信息的音頻幀內(nèi)在裝置之間輸送MIDI 文件或其它音頻文件。音頻幀可包含單一音頻文件、多個音頻文件或(可能) 一個或一 個以上音頻文件和例如經(jīng)編碼視頻幀的其它信息。如本文所使用,可將音頻幀內(nèi)的任何 音頻數(shù)據(jù)稱為音頻文件,其包括串流音頻數(shù)據(jù)或上文列出的一個或一個以上音頻文件格 式。同時操作的多個硬件元件可用于服務從一個或一個以上音頻文件(例如MIDI文件) 產(chǎn)生的各種合成參數(shù)。通用處理器可執(zhí)行用以剖析MIDI文件且調(diào)度與MIDI文件相關(guān)聯(lián)的MIDI事件的軟 件。如由MIDI文件中的時序參數(shù)所指定,經(jīng)調(diào)度的事件可接著由DSP以同步方式服務。 通用處理器以時間同步方式將MIDI事件分派到DSP,且DSP根據(jù)時間同步調(diào)度處理 MIDI事件以產(chǎn)生MIDI合成參數(shù)。DSP接著調(diào)度合成參數(shù)在硬件中的處理,且硬件單元可基于合成參數(shù)產(chǎn)生音頻樣本。
通用處理器可服務第一幀(幀N)的MIDI文件,且在第一幀(幀N)由DSP服務 時,第二幀(幀N+1)可同時由通用處理器服務。此外,在第一幀(幀N)由硬件服務 時,第二幀(幀N+1)同時由DSP服務,同時第三幀(幀N+2)由通用處理器服務。以 此方式,MIDI文件處理被分離成可同時處理的管線化級,此可改進效率且可能減少給 定級(例如與DSP相關(guān)聯(lián)的級)所需的計算資源。每一幀經(jīng)過各種管線化級,從通用處 理器到DSP,且接著到硬件。在某些情況下,由硬件產(chǎn)生的音頻樣本可(例如)經(jīng)由中 斷驅(qū)動技術(shù)遞送回到DSP,使得可執(zhí)行任何后處理??山又鴮⒁纛l樣本轉(zhuǎn)換成模擬信號, 其可用于驅(qū)動揚聲器且將音頻聲音輸出到用戶。
或者,可將與MIDI文件處理相關(guān)聯(lián)的任務委派于DSP和專用硬件的兩個不同線程 之間。即,與通用處理器相關(guān)聯(lián)的任務(如本文描述)可替代地由多線程DSP的第一線 程執(zhí)行。在此情況下,DSP的第一線程執(zhí)行調(diào)度,DSP的第二線程產(chǎn)生合成參數(shù),且硬 件單元基于合成參數(shù)產(chǎn)生音頻樣本。此替代實例還可以類似于使用用于調(diào)度的通用處理 器的實例的方式被管線化。
圖1為說明示范性音頻裝置4的框圖。作為一實例,音頻裝置4可包含能夠處理 MIDI文件(例如,包括至少一個MIDI音軌的文件)的任何裝置。而且,然而,本發(fā)明 的技術(shù)可發(fā)現(xiàn)具有其它音頻格式、技術(shù)或標準的應用。音頻裝置4的實例包括無線通信 裝置,例如無線電電話、網(wǎng)絡(luò)電話、數(shù)字音樂播放器、音樂合成器、無線移動裝置、直 接雙向通信裝置(有時稱為對講機)、個人計算機、桌上型或膝上型計算機、工作站、 衛(wèi)星無線電裝置、內(nèi)部通信裝置、無線電廣播裝置、手持型游戲裝置、安裝于裝置中的 音頻電路板、公共査詢站裝置、視頻游戲控制臺、各種用于兒童的計算機化玩具、用于 汽車、船只或飛機中的機載計算機,或處理并輸出音頻的多種其它裝置。
提供圖1中所說明的各種組件來闡釋本發(fā)明的方面。然而,在一些實施方案中,其 它組件可能存在,且可能不包括所說明的組件中的一些。舉例來說,如果音頻裝置4為 無線電電話,則可包括天線、發(fā)射器、接收器和調(diào)制解調(diào)器(調(diào)制器-解調(diào)制器)以促進 音頻文件的無線通信。
如圖l的實例中所說明,音頻裝置4包括用以存儲音頻文件(例如MIDI文件)的 音頻存儲單元6。此外,MIDI文件一般指包括以MIDI格式編碼的至少一個音軌的任何 音頻文件。音頻存儲單元6可包含任何易失性或非易失性存儲器或存儲裝置。出于本發(fā) 明的目的,可將音頻存儲單元6視為將MIDI文件轉(zhuǎn)發(fā)到處理器8的存儲單元,或者處 理器8從音頻存儲單元6檢索MIDI文件,以使得所述文件得以處理。音頻存儲單元6還可為與數(shù)字音樂播放器相關(guān)聯(lián)的存儲單元或與從另一裝置傳送的信息相關(guān)聯(lián)的臨時 存儲單元。舉例來說,音頻存儲單元6可緩沖從服務器或廣播源獲得的串流音頻。音頻 存儲單元6可為經(jīng)由數(shù)據(jù)總線或其它連接耦合到處理器8的單獨的易失性存儲器芯片或 非易失性存儲裝置。可包括存儲器或存儲裝置控制器(未圖示)以促進信息從音頻存儲 單元6的傳送。
裝置4可實施分離軟件、硬件與固件之間的音頻處理任務的架構(gòu)。如圖l所示,裝 置4包括處理器8、數(shù)字信號處理器(DSP) 12和音頻硬件單元14。這些組件中的每一 者可(例如)直接或經(jīng)由總線耦合到局部存儲器單元10。處理器8可包含執(zhí)行用以剖析 音頻文件且調(diào)度與音頻文件相關(guān)聯(lián)的音頻事件的軟件的通用處理器。如由音頻文件中的 時序參數(shù)所指定,可以時間同步方式將經(jīng)調(diào)度的事件分派到DSP 12,且借此由DSP12 以同步方式服務。DSP12可包含根據(jù)由通用處理器8產(chǎn)生的時間同步調(diào)度來處理音頻事 件以產(chǎn)生合成參數(shù)的固件。DSP 12還可調(diào)度音頻硬件單元14對合成參數(shù)的后續(xù)處理。
一旦DSP 12己產(chǎn)生合成參數(shù),就可將這些合成參數(shù)存儲于存儲器單元10中。存儲 器單元IO可包含易失性或非易失性存儲器。為了支持快速數(shù)據(jù)傳送,存儲器單元10可 包含隨機存取存儲器(RAM)、動態(tài)隨機存取存儲器(DRAM)、同步動態(tài)隨機存取存儲 器(SDRAM)、快閃存儲器或其類似物。存儲于存儲器單元10中的合成參數(shù)可由音頻 硬件單元14服務以產(chǎn)生音頻樣本。
音頻硬件單元14可包括用于服務合成參數(shù)的若干處理元件。處理元件可包含支持 例如乘法、加法和累加等運算的算術(shù)邏輯單元(ALU)。另外,每一處理元件還可支持 用于加載和/或存儲到其它硬件組件的硬件特定操作。音頻硬件單元14中的其它硬件組 件(例如)可包含低頻振蕩器(LFO)、波獲取單元(WFU)以及求和緩沖器(SB)。因 此,音頻硬件單元14中的處理元件可支持并執(zhí)行用于與音頻處理中的這些其它硬件組 件相互作用且使用所述其它硬件組件的指令。根據(jù)本發(fā)明,處理元件可與低頻振蕩器相 互作用以便產(chǎn)生例如顫音或震音的特定發(fā)音的聲音效果。低頻振蕩器可響應于由處理元 件提供到LFO的特定參數(shù)而提供周期性波形(例如三角波)。舉例來說,處理元件可在 去往低頻振蕩器的指令中指定三角波的所要增益和所要頻率。作為響應,LFO可提供對 應于由處理元件請求的三角波的一系列數(shù)據(jù)點。下文參看圖2更詳細地提供音頻硬件單 元14的一個實例的額外細節(jié)。
在某些情況下,可將裝置4對音頻文件的處理管線化。舉例來說,處理器8、 DSP12 和音頻硬件單元14可關(guān)于連續(xù)音頻幀同時操作。每一音頻幀可對應于一時間塊(例如, IO毫秒(ms)的時間間隔),其包括許多經(jīng)編碼音頻樣本。硬件單元14的數(shù)字輸出(例如)可每音頻幀包括480個數(shù)字音頻樣本,其可由數(shù)/模轉(zhuǎn)換器16轉(zhuǎn)換成模擬音頻信號。 許多事件可對應于一個時間實例(instance of time),使得許多不同聲音或音符可根據(jù) MIDI格式或類似音頻格式包括于一個時間實例中。當然,委派給任何音頻幀的時間量 和在一個幀中所界定的音頻樣本的數(shù)目在不同實施方案中可變化。
在某些情況下,由音頻硬件單元14產(chǎn)生的音頻樣本(例如)經(jīng)由中斷驅(qū)動技術(shù)被 遞送回到DSP12。在此情況下,DSP 12還可對音頻樣本執(zhí)行后處理技術(shù)。后處理可包 括可最終增強聲音輸出的濾波、縮放、音量調(diào)整或廣泛多種音頻后處理。數(shù)/模轉(zhuǎn)換器 (DAC) 16接著將音頻樣本轉(zhuǎn)換成模擬信號,模擬信號可由驅(qū)動電路18用來驅(qū)動揚聲器 19A和19B以用于將音頻聲音輸出到用戶。
局部存儲器IO可經(jīng)建構(gòu)以使得處理器8、 DSP 12和MIDI硬件14可存取執(zhí)行委派 給這些不同組件的各種任務所需的任何信息。在某些情況下,MIDI信息在局部存儲器 10中的存儲布局可經(jīng)布置以允許從不同組件8、 12和14進行有效存取。而且,局部存 儲器IO用于存儲與一個或一個以上音頻文件相關(guān)聯(lián)的合成參數(shù)。 一旦DSP12產(chǎn)生這些 合成參數(shù),其便可由硬件單元14處理以產(chǎn)生音頻樣本。由音頻硬件單元14產(chǎn)生的音頻 樣本可包含脈沖編碼調(diào)制(PCM)樣本,其為模擬信號的數(shù)字表示,其中以規(guī)則時間間 隔對模擬信號進行取樣。在下文參看圖2更詳細地論述由音頻硬件單元14進行的示范 性音頻產(chǎn)生的額外細節(jié)。
圖2為說明可對應于音頻裝置4的音頻硬件單元14的示范性音頻硬件單元20的框 圖。圖2所示的實施方案僅為示范性的,因為還可界定其它硬件實施方案以與本發(fā)明的 教示相一致。如圖2的實例中所說明,音頻硬件單元20包括用以發(fā)送和接收數(shù)據(jù)的總 線接口 30。舉例來說,總線接口 30可包括AMBA高性能總線(AHB)主接口、 AHB 從屬接口和存儲器總線接口。 AMBA代表高級微處理器總線架構(gòu)?;蛘?,總線接口 30 可包括AXI總線接口或另一類型的總線接口 。 AXI代表高級可擴展接口 。
另外,音頻硬件單元20可包括協(xié)調(diào)模塊32。協(xié)調(diào)模塊32協(xié)調(diào)音頻硬件單元20內(nèi) 的數(shù)據(jù)流。當音頻硬件單元20從DSP 12 (圖1)接收指令以開始合成音頻樣本時,協(xié) 調(diào)模塊32從存儲器10讀取音頻幀的合成參數(shù)(其由DSP 12 (圖1)產(chǎn)生)。這些合成 參數(shù)可用以重建音頻幀。對于MIDI格式,合成參數(shù)描述給定幀內(nèi)的一個或一個以上 MIDI語音的各種聲學特性。舉例來說,MIDI合成參數(shù)的集合可指定諧振水平、交混回 響、音量和/或可影響一個或一個以上語音的其它特征。
在協(xié)調(diào)模塊32的指導下,可從存儲器10 (圖1)將合成參數(shù)加載到與相應處理元 件34A或34N相關(guān)聯(lián)的語音參數(shù)集合(VPS) RAM 46A或46N中。在DSP12(圖1)的指導下,從存儲器10將程序指令加載到與相應處理元件34A或34N相關(guān)聯(lián)的程序 RAM單元44A或44N中。
加載到程序RAM單元44A或44N中的指令指令相關(guān)聯(lián)的處理元件34A或34N合 成VPS RAM單元46A或46N中的合成參數(shù)的列表中所指示的語音中的一者??赡艽嬖?任何數(shù)目的處理元件34A到34N (統(tǒng)稱為"處理元件34"),且每一者可包含能夠執(zhí)行 數(shù)學運算的一個或一個以上ALU以及用以讀取和寫入數(shù)據(jù)的一個或一個以上單元。為 簡單起見僅說明兩個處理元件34A和34N,但硬件單元20中可包括更多處理元件。處 理元件34可以彼此并行的方式合成語音。具體來說,多個不同處理元件34并行工作以 處理不同合成參數(shù)。以此方式,音頻硬件單元20內(nèi)的多個處理元件34可加速且可能改 進音頻樣本的產(chǎn)生。
當協(xié)調(diào)模塊32指令處理元件34中的一者合成語音時,相應處理元件可執(zhí)行與合成 參數(shù)相關(guān)聯(lián)的一個或一個以上指令。而且,可將這些指令加載到程序RAM單元44A或 44N中。加載到程序RAM單元44A或44N中的指令致使處理元件34中的相應者執(zhí)行 語音合成。舉例來說,處理元件34可向波形獲取單元(WFU) 36發(fā)送對合成參數(shù)中所 指定的波形的請求。處理元件34中的每一者可使用WFU36。如果兩個或兩個以上處理 元件34同時請求使用WFU 36,則可使用仲裁方案來解決任何沖突。
響應于來自處理元件34中的一者的請求,WFU36向請求處理元件傳回一個或一個 以上波形樣本。然而,因為波可在樣本內(nèi)相移(例如,高達一個波循環(huán)),所以WFU36 可傳回兩個樣本以使用內(nèi)插來補償相移。此外,因為立體聲信號可包括用于兩個立體聲 通道的兩個單獨的波,所以WFU 36可傳回用于不同通道的單獨樣本,(例如)從而導 致立體聲輸出的高達四個單獨樣本。
在WFU 36將音頻樣本傳回到處理元件34中的一者之后,相應處理元件可基于合 成參數(shù)執(zhí)行額外程序指令。具體來說,指令致使處理元件34中的一者從音頻硬件單元 20中的低頻振蕩器(LFO) 38請求不對稱三角形波。通過使WFU36傳回的波乘以LFO 38傳回的三角形波,相應處理元件可操縱波的各種聲學特性以實現(xiàn)所要音頻效果。舉例 來說,使波乘以三角形波可導致聽起來更像所要樂器的波。
基于合成參數(shù)執(zhí)行的其它指令可致使處理元件34中的相應者使波形循環(huán)特定數(shù)目 次、調(diào)節(jié)波形的振幅、添加交混回響、添加顫音效果或造成其它效果。以此方式,處理 元件34可計算持續(xù)一個MIDI幀的語音的波形。最后,相應處理元件可遇到退出指令。 當處理元件34中的一者遇到退出指令時,處理元件以信號向協(xié)調(diào)模塊32通知語音合成 的結(jié)束??稍诔绦蛑噶畹膱?zhí)行期間在另一存儲指令的指導下將經(jīng)計算的語音波形提供到求和緩沖器40。此致使求和緩沖器40存儲經(jīng)計算的語音波形。
當求和緩沖器40從處理元件34中的一者接收到經(jīng)計算的波時,求和緩沖器40將 經(jīng)計算的波添加到與MIDI幀的整體波相關(guān)聯(lián)的適當時間實例。因此,求和緩沖器40 組合多個處理元件34的輸出。舉例來說,求和緩沖器40最初可存儲平頂波(即,所有 數(shù)字樣本均為零的波)。當求和緩沖器40從處理元件34中的一者接收到例如經(jīng)計算的 波等音頻信息時,求和緩沖器40可將經(jīng)計算的波的每一數(shù)字樣本添加到存儲于求和緩 沖器40中的波的相應樣本。以此方式,求和緩沖器40累加并存儲完整音頻幀的波的整 體數(shù)字表示。
求和緩沖器40本質(zhì)上對來自處理元件34中的不同者的不同音頻信息進行求和。不 同音頻信息指示與不同的所產(chǎn)生的語音相關(guān)聯(lián)的不同時間實例。以此方式,求和緩沖器 40產(chǎn)生表示給定音頻幀內(nèi)的整體音頻編輯的音頻樣本。
處理元件34可彼此并行但獨立地操作。g卩,處理元件34中的每一者可處理一合成 參數(shù),且一旦將針對第一合成參數(shù)產(chǎn)生的音頻信息添加到求和緩沖器40,其便接著移動 到下一合成參數(shù)。因此,處理元件34中的每一者獨立于其它處理元件34執(zhí)行其針對一 個合成參數(shù)的處理任務,且當針對合成參數(shù)的處理完成時,相應處理元件便立即可用于 另一合成參數(shù)的后續(xù)處理。
最后,協(xié)調(diào)模塊32可確定處理元件34已完成合成當前音頻幀所需要的所有語音且 己將那些語音提供到求和緩沖器40。此時,求和緩沖器40含有指示當前音頻幀的完整 波的數(shù)字樣本。在協(xié)調(diào)模塊32作出此確定時,協(xié)調(diào)模塊32向DSP12(圖l)發(fā)送中斷。 響應于中斷,DSP 12可經(jīng)由直接存儲器交換(DME)向求和緩沖器40中的控制單元(未 圖示)發(fā)送請求以接收求和緩沖器40的內(nèi)容?;蛘?,DSP 12還可經(jīng)預編程以執(zhí)行DME。 DSP12可接著在將數(shù)字音頻樣本提供到DAC 16以用于轉(zhuǎn)換成模擬域之前對數(shù)字音頻樣 本執(zhí)行任何后處理。在某些情況下,由音頻硬件單元20關(guān)于幀N+2而執(zhí)行的處理與由 DSP 12 (圖1)關(guān)于幀N+1而進行的合成參數(shù)產(chǎn)生和由處理器8 (圖1)關(guān)于幀N進行 的調(diào)度操作同時發(fā)生。
圖2中還展示高速緩沖存儲器48、 WFU/LFO存儲器39和鏈接列表存儲器42。高 速緩沖存儲器48可由WFU36用來以快速且有效的方式獲取基本波形。WFU/LFO存儲 器39可由協(xié)調(diào)模塊32用以存儲語音參數(shù)集合的語音參數(shù)。以此方式,可將WFU/LFO 存儲器39視為專用于波形獲取單元36和LFO 38的操作的存儲器。鏈接列表存儲器42 可包含用以存儲由DSP 12產(chǎn)生的語音指示符的列表的存儲器。語音指示符可包含指向 存儲于存儲器10中的一個或一個以上合成參數(shù)的指針。列表中的每一語音指示符可指定存儲相應MIDI語音的語音參數(shù)集合的存儲器位置。圖2中所示的各種存儲器和存儲 器的布置僅為示范性的。可用多種其它存儲器布置實施本文所描述的技術(shù)。
在音頻硬件單元20中可包括任何數(shù)目的處理元件34,只要多個處理元件34關(guān)于存 儲于存儲器10(圖1)或存儲器42(圖2)中的不同合成參數(shù)同時操作。第一音頻處理 元件34A (例如)處理第一音頻合成參數(shù)以產(chǎn)生第一音頻信息,同時另一音頻處理元件 34N處理第二音頻合成參數(shù)以產(chǎn)生第二音頻信息。求和緩沖器40可接著在產(chǎn)生一個或 一個以上音頻樣本中組合第一與第二音頻信息。類似地,第三音頻處理元件(未圖示) 和第四處理元件(未圖示)可處理第三和第四合成參數(shù)以產(chǎn)生第三和第四音頻信息,其 還可在產(chǎn)生音頻樣本中在求和緩沖器40中進行累加。
處理元件34可處理用于音頻幀的所有合成參數(shù)。在處理每一相應合成參數(shù)后,處 理元件34中的相應者將其所處理的音頻信息添加到求和緩沖器40中的累加中,且接著 繼續(xù)移動到下一合成參數(shù)。以此方式,處理元件34共同工作以處理針對音頻幀的一個 或一個以上音頻文件而產(chǎn)生的所有合成參數(shù)。接著,在處理音頻幀且將求和緩沖器中的 樣本發(fā)送到DSP 12以用于后處理后,處理元件34可開始處理用于下一音頻幀的音頻文 件的合成參數(shù)。
圖3為說明示范性三角波產(chǎn)生器44的示意圖,三角波產(chǎn)生器44可對應于音頻硬件 單元20的低頻振蕩器38。三角波產(chǎn)生器40可產(chǎn)生形成具有所要頻率和增益的三角波的 一組數(shù)據(jù)點。所述裝置包括累加器寄存器50;相位累加器52;多路復用器54、 56;加 法器58、 60;強制歸零邏輯(zero forcing logic) 62和線64、 66、 68、 70、 72、 74、 78、 80、 82、 84、 86、 88、 90、 92、 94。
累加器寄存器50可存儲來自形成三角波的所述組數(shù)據(jù)點的單一數(shù)據(jù)點。累加器寄 存器50電耦合到加法器58和多路復用器56的輸出。累加器寄存器50經(jīng)由線66輸出 當前數(shù)據(jù)點。在單一時鐘周期期間,累加器寄存器50依據(jù)多路復用器56的輸出而經(jīng)由 線64接收下一數(shù)據(jù)點或零值。在下一時鐘周期期間,累加器寄存器50經(jīng)由線66輸出 從前一時鐘周期接收到的值作為當前數(shù)據(jù)點。對于給定時鐘周期,將當前數(shù)據(jù)點界定為 累加器寄存器經(jīng)由線66的輸出,且將下一數(shù)據(jù)點界定為加法器58經(jīng)由線68的輸出。
相位累加器52可存儲對應于三角波的時間軸的單一相位數(shù)據(jù)點。 一般來說,相位 數(shù)據(jù)確定將四個比率70、 72、 76、 78中的哪一者選擇為增量值70。相位累加器52經(jīng)由 線80和82電耦合到加法器60,且經(jīng)由線84電耦合到強制歸零邏輯62。在特定時鐘周 期期間,相位累加器52經(jīng)由線80接收下一相位數(shù)據(jù)點,且經(jīng)由線82輸出當前相位數(shù) 據(jù)點。在下一時鐘周期期間,相位累加器52輸出經(jīng)由線80從前一時鐘周期接收到的值作為當前相位數(shù)據(jù)點。對于給定時鐘周期,將當前相位數(shù)據(jù)點界定為相位累加器52經(jīng) 由線82的輸出,且將下一相位數(shù)據(jù)點界定為加法器60經(jīng)由線80的輸出。可利用例如 觸發(fā)器、鎖存器、RAM單元等任何連續(xù)存儲元件實施累加器寄存器50和相位累加器52。 多路復用器54基于在輸入線72、 74、 76、 78上提供的四個比率中的一者的選擇在 線76上輸出增量值。所述選擇是基于控制線86,控制線86含有下一相位數(shù)據(jù)點的兩個 最高有效位。當兩個最高有效位為"00"時,多路復用器54選擇比率Rp作為增量值。 類似地,當兩個最高有效位為"01"時,多路復用器54選擇比率-Rp作為增量值。當最 高有效位為"10"時,多路復用器54選擇比率-RN作為增量值。最后,當最高有效位為 "11"時,多路復用器54選擇比率RN作為增量值。將增量值放置于多路復用器54的 輸出上,增量值經(jīng)由線70被傳輸?shù)郊臃ㄆ?8??墒褂美邕壿嬮T、FPGA、 RAM等任 何數(shù)字選擇方案實施多路復用器54。雖然此處展示的多路復用器54具有四個比率值且 選擇是基于下一相位數(shù)據(jù)點的兩個最高有效位,但應認識到,本文所描述的技術(shù)的其它 實例可利用具有或多或少輸入和額外或更少選擇位的多路復用器54。另外,本文所描述
的技術(shù)的其它實例可利用基于當前相位數(shù)據(jù)點來選擇增量值的多路復用器,當前相位數(shù) 據(jù)點為相位累加器52經(jīng)由線82的輸出。
加法器58可產(chǎn)生當前數(shù)據(jù)點與增量值的和。加法器58經(jīng)由線66從累加器寄存器 50接收當前數(shù)據(jù)點,且經(jīng)由線70從多路復用器54接收增量值。將和界定為下一數(shù)據(jù)點, 且將其作為輸出放置于線68上。
加法器60可產(chǎn)生當前相位數(shù)據(jù)點與相位增量的和。加法器60經(jīng)由線82從相位累 加器52接收當前相位數(shù)據(jù)點,且經(jīng)由線90接收相位增量。將和界定為下一相位數(shù)據(jù)點, 且將其作為輸出放置于線80上??墒褂么隧椉夹g(shù)中已知的任何常規(guī)數(shù)字加法電路實施 加法器58、 60兩者。
根據(jù)本發(fā)明的實例,比率Rp和Rw和相位增量可根據(jù)以下公式計算
7 p =應"d (4 * GP* ("
/ w =訓wd(4求Gw承。 (2) 相位增量二ra訓rf(2八B沐巧) M)其中G嚴正增益 GF負增益
B二相位累加器中的位的數(shù)目 F^規(guī)范化的所要頻率
正增益為三角波的正峰值或最高點的值。負增益為三角波的負峰值或最低點的值。 計算相位增量,以使得相位累加器52中的值在所要三角波的一個周期中將橫越相位累 加器52的整個范圍。值B表示相位累加器中的位的數(shù)目。規(guī)范化的所要頻率為所要頻 率除以硬件的計時速率(clocking rate)。
在圖2中展示的示范性音頻硬件單元20中,當特定處理元件需要特定發(fā)音(例如 顫音或震音)時,正增益、負增益和規(guī)范化的所要頻率可由不同處理元件34A到34N 供應到低頻振蕩器38。
本文所描述的技術(shù)的一個優(yōu)點在于正和負比率含有關(guān)于所得三角波的所要增益和 頻率兩者的信息。這些比率允許三角波產(chǎn)生器44通過將連續(xù)增量值相加來計算連續(xù)數(shù) 據(jù)點,而不需要在每一時鐘周期期間利用乘法器來校正增益。因為硬件乘法器可占據(jù)珍 貴的芯片區(qū)域,且常需要大量處理時間,所以消除對乘法器的需要可減少硬件的復雜性 且允許三角波產(chǎn)生器的更有效操作。
強制歸零邏輯塊62檢測相位累加器翻轉(zhuǎn)(roll over)條件且將累加器寄存器50復 位到零值以開始三角波的新周期。當下一相位數(shù)據(jù)點的最高有效位為邏輯零且當前相位 數(shù)據(jù)點的最高有效位為邏輯一時,檢測翻轉(zhuǎn)條件。相位累加器52中的翻轉(zhuǎn)條件可與累 加器寄存器50中的負到正轉(zhuǎn)變同時發(fā)生。因此,應注意,在其它實例中,可通過檢測 當前數(shù)據(jù)點何時為負且下一數(shù)據(jù)點何時為正來實施強制歸零邏輯塊62。
多路復用器56可基于強制歸零邏輯塊62的輸出而強制由累加器寄存器50接收到 的下一數(shù)據(jù)點為零值。多路復用器56可在來自線68的下一數(shù)據(jù)點與線92上的零值之 間選擇。所述選擇可基于經(jīng)由線94傳輸?shù)蕉嗦窂陀闷鞯膹娭茪w零邏輯塊62的輸出。在 無翻轉(zhuǎn)條件的正常操作期間,控制線94保持無效,且多路復用器56將下一數(shù)據(jù)點放置 于線64上以作為三角波產(chǎn)生器44的輸出且作為到累加器寄存器50的輸入。當翻轉(zhuǎn)條 件發(fā)生時,強制歸零邏輯塊62啟動控制線94且多路復用器56將零值放置于線64上。 應注意,在本發(fā)明的其它實施例中,三角波產(chǎn)生器44的輸出還可經(jīng)由線68連接到累加 器寄存器50的輸出。
本文所描述的技術(shù)的另一優(yōu)點在于強制歸零邏輯62防止正和負偏置歸因于相位累 加器52和相位增量的有限精度而在三角波的后續(xù)周期中發(fā)生。舉例來說,考慮在三角波形的單一周期中數(shù)據(jù)點的數(shù)目不為四的偶數(shù)倍的情況。當翻轉(zhuǎn)條件發(fā)生時,累加器寄 存器50中的值可不為零。如果無校正發(fā)生,則非零偏移可繼續(xù)在連續(xù)時鐘周期內(nèi)累加, 其中存在在連續(xù)三角波中產(chǎn)生正或負偏置的可能。正或負偏置的引入還可具有引起若干 周期內(nèi)三角波的頻率中的偏差的可能。通過利用強制歸零邏輯62,因為每當發(fā)生翻轉(zhuǎn)條 件時,強制歸零邏輯62均強制下一數(shù)據(jù)點為零,所以可移除與翻轉(zhuǎn)偏移值相關(guān)聯(lián)的偏 置和頻率問題。
圖4為說明根據(jù)本發(fā)明的一實例的用于產(chǎn)生形成具有所要頻率和所要增益的三角波 的一組數(shù)據(jù)點的示范性方法100的流程圖。圖4中所說明的方法可利用圖3中的示范性 三角波產(chǎn)生器44。
在步驟102中,由三角波產(chǎn)生器44接收波形參數(shù)??赏ㄟ^音頻硬件單元20中的處 理元件34將波形參數(shù)傳輸?shù)饺遣óa(chǎn)生器44。波形參數(shù)可含有關(guān)于將要產(chǎn)生的三角波 的所要正增益、所要負增益和所要頻率的信息。在其它實施例中,由三角波產(chǎn)生器44 接收的波形參數(shù)可含有關(guān)于所要三角波的正比率、負比率和相位增量的信息。
在步驟104中,三角波產(chǎn)生器44根據(jù)等式(1)到(3)計算正比率、負比率和相 位增量。此步驟為可選的且由虛線說明,因為正比率、負比率和相位增量可已在步驟102 中由處理元件提供。
在步驟106中,三角波產(chǎn)生器44將累加器寄存器50和相位累加器52復位到零以 開始產(chǎn)生三角波形。在步驟108中,三角波產(chǎn)生器44將相位增量相加到相位累加器52 的當前值以產(chǎn)生下一相位數(shù)據(jù)點。相位累加器52的當前值對應于當前相位數(shù)據(jù)點。
在步驟110中,三角波產(chǎn)生器44從一組比率中選擇增量值。所述組比率可包括正 比率、負比率以及正和負比率兩者的加性逆元素。增量值的選擇可基于在步驟108中產(chǎn) 生的和的兩個最高有效位。在其它實例中,增量的選擇可基于當前相位數(shù)據(jù)點的兩個最 高有效位。
在步驟112中,三角波產(chǎn)生器44將在步驟110中選擇的增量值添加到累加器寄存 器50的當前值。累加器寄存器50的當前值對應于當前數(shù)據(jù)點。
在步驟114中,三角波產(chǎn)生器44檢測翻轉(zhuǎn)條件是否已在相位累加器52中發(fā)生???通過檢查相位累加器52的當前值的最高有效位和步驟108中所產(chǎn)生的和的最高有效位 來檢測翻轉(zhuǎn)條件。如果相位累加器52的當前值的最高有效位為邏輯一且步驟108中所 產(chǎn)生的和的最高有效位為邏輯零,則翻轉(zhuǎn)條件己發(fā)生且三角波產(chǎn)生器進行到步驟118。 如果發(fā)生任何其它組合,則翻轉(zhuǎn)條件未發(fā)生且三角波產(chǎn)生器進行到步驟116。
在其它實例中,可通過檢查累加器寄存器50的當前值的輸出和步驟112中所產(chǎn)生的和來檢測翻轉(zhuǎn)條件。如果累加器寄存器50的當前值為負且步驟112中所產(chǎn)生的和為 正,則翻轉(zhuǎn)條件已發(fā)生且三角波產(chǎn)生器44進行到步驟118。如果發(fā)生任何其它組合,則 翻轉(zhuǎn)條件未發(fā)生且三角波產(chǎn)生器進行到步驟116。
在步驟116中,三角波產(chǎn)生器44將步驟112中所產(chǎn)生的和存儲于累加器寄存器50 中。此步驟致使當前時鐘周期的下一數(shù)據(jù)點變成下一時鐘周期中的當前數(shù)據(jù)點。在步驟 118中,三角波產(chǎn)生器44強制累加器寄存器50歸零。此步驟致使當前數(shù)據(jù)點在下一時 鐘周期中為零。
在步驟120中,三角波產(chǎn)生器44將步驟108中所產(chǎn)生的和存儲于相位累加器52中。 此步驟致使當前時鐘周期中的下一相位數(shù)據(jù)點變成下一時鐘周期中的當前相位數(shù)據(jù)點。
在步驟120后,三角波產(chǎn)生器44循環(huán)回到步驟108。必要時三角波產(chǎn)生器44可循 環(huán)許多次以反復地產(chǎn)生形成三角波的一組數(shù)據(jù)點。
圖5為說明由三角波產(chǎn)生器(例如由圖3中展示的三角波產(chǎn)生器44使用圖4中所 展示的方法100)產(chǎn)生的示范性三角波的一個周期的圖140。實線142表示具有所要正 增益、所要負增益和所要頻率的所要三角波。虛線144表示由三角波產(chǎn)生器44使用方 法100產(chǎn)生的三角波。存儲于相位累加器52中的當前相位數(shù)據(jù)點對應于位于時間軸146 上的特定時間值。隨著相位累加器52中的值增加,當前相位數(shù)據(jù)點從左到右橫越時間 軸146?;谙辔焕奂悠?2的兩個最高有效位,沿時間軸界定四個區(qū)域152、 154、 156、 158。
存儲于累加器寄存器50中的當前數(shù)據(jù)點對應于與軸148相關(guān)聯(lián)的輸出值。在橫越 時間軸146時,基于三角波產(chǎn)生器44的操作區(qū)域152、 154、 156、 158選擇不同比率作 為增量值。舉例來說,在區(qū)域152中,下一相位數(shù)據(jù)點的兩個最高有效位為"00"且添 加到累加器寄存器50的比率為Rp。此致使三角波產(chǎn)生器44的輸出數(shù)據(jù)點增加到所要正 增益或接近所要正增益的值。類似地,在區(qū)域154中,下一相位數(shù)據(jù)點的兩個最高有效 位為"01"且將比率Rp的加性逆元素添加到累加器寄存器50。此致使輸出數(shù)據(jù)點減少 到零或接近零的值。在區(qū)域156中,下一相位數(shù)據(jù)點的兩個最高有效位為"10"且將比 率Rn的加性逆元素添加到累加器寄存器50。此致使輸出數(shù)據(jù)點減小到RN的加性逆元素 或接近Rw的加性逆元素的值。最后,在區(qū)域158中,下一相位數(shù)據(jù)點的兩個最高有效 位為"11"且將比率Rw添加到累加器寄存器50。此致使輸出數(shù)據(jù)點增加到零或接近零 的值。在波已橫越區(qū)域158后,檢測到翻轉(zhuǎn)條件且強制累加器寄存器50歸零(160)以 開始三角波的新周期。
在本發(fā)明中已描述各種實例。舉例來說,已揭示不需要使用乘法器的三角波產(chǎn)生器。消除對乘法器的需要可減少硬件的復雜性且允許三角波產(chǎn)生器的更有效操作。另外,還 已描述在翻轉(zhuǎn)條件期間校正任何偏移的三角波產(chǎn)生器。校正在翻轉(zhuǎn)條件期間發(fā)生的任何 偏移可減輕與翻轉(zhuǎn)偏移相關(guān)聯(lián)的許多偏置問題且還允許對所得三角波的頻率的較好控 制。然而,可對上文所描述的技術(shù)進行各種修改。舉例來說,其它類型的裝置也可實施 本文所描述的三角波產(chǎn)生技術(shù)。而且,可利用其它方法來檢測和校正翻轉(zhuǎn)偏移值,例如 檢査累加器寄存器的輸出或在三角波的負斜坡上而非正斜坡上強制累加器歸零。
可以硬件、軟件、固件或其任何組合實施本文所描述的技術(shù)。作為模塊或組件而描 述的任何特征可一起實施于整合邏輯裝置中或單獨地實施為離散但可互操作的邏輯裝 置獨立地實施。如果以軟件實施,則所述技術(shù)的一個或一個以上方面可至少部分通過包 含指令的計算機可讀媒體實現(xiàn),所述指令在執(zhí)行時執(zhí)行上文所述的方法中的一者或一者 以上。計算機可讀數(shù)據(jù)存儲媒體可形成可包括封裝材料的計算機程序產(chǎn)品的部分。計算 機可讀媒體可包含例如同步動態(tài)隨機存取存儲器(SDRAM)的隨機存取存儲器(RAM)、 只讀存儲器(ROM)、非易失性隨機存取存儲器(NVRAM)、電可擦可編程只讀存儲器 (EEPROM)、快閃存儲器、磁性或光學數(shù)據(jù)存儲媒體和其類似物。另外或替代地,可至 少部分地通過計算機可讀通信媒體來實現(xiàn)所述技術(shù),所述計算機可讀通信媒體以指令或 數(shù)據(jù)結(jié)構(gòu)的形式來攜載或傳送代碼且可由計算機存取、讀取和/或執(zhí)行。
可由例如一個或一個以上數(shù)字信號處理器(DSP)、通用微處理器、專用集成電路 (ASIC)、現(xiàn)場可編程邏輯(FPGA)或其它等效整合或離散邏輯電路的一個或一個以上 處理器來執(zhí)行所述代碼。因此,如本文中所使用,術(shù)語"處理器"可指上述結(jié)構(gòu)或適于 實施本文中所描述的技術(shù)的任何其它結(jié)構(gòu)中的任一者。另外,在一些方面中,可在經(jīng)配 置或適于執(zhí)行本發(fā)明的技術(shù)的專用軟件模塊或硬件模塊內(nèi)提供本文中所描述的功能性。
如果以硬件實施,則本發(fā)明可針對經(jīng)配置或適于執(zhí)行本文所描述的技術(shù)中的一者或 一者以上的例如集成電路、芯片組、ASIC、 FPGA、邏輯或其各種組合等電路。
還應注意,所屬領(lǐng)域的技術(shù)人員將認識到,電路可實施上文所描述的功能中的一些 或全部??赡艽嬖趯嵤┧泄δ艿囊粋€電路,或者還可能存在實施功能的電路的多個部 分。在當前移動平臺技術(shù)的情況下,集成電路可包含至少一個DSP和至少一個高級精簡 指令集計算機(RISC)機器(ARM)處理器以控制和/或傳送到一個或一個以上DSP。 另外,電路可經(jīng)設(shè)計或?qū)嵤┯谌舾刹糠种校以谝恍┣闆r下,可重新使用若干部分以執(zhí) 行本發(fā)明中所描述的不同功能。
這些和其它實施例處于所附權(quán)利要求書的范圍內(nèi)。
權(quán)利要求
1.一種用于產(chǎn)生形成具有所要頻率和所要增益的三角波的一組數(shù)據(jù)點的方法,所述方法包含(a)基于所述三角波的所述所要頻率和所述所要增益確定增量值;(b)將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù)點,所述當前數(shù)據(jù)點和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組;以及反復執(zhí)行(a)和(b)以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點。
2. 根據(jù)權(quán)利要求l所述的方法,其中所述反復執(zhí)行(a)和(b)的步驟包括將所述增量值相加到所述下一數(shù)據(jù)點以產(chǎn)生第三數(shù)據(jù)點,所述當前數(shù)據(jù)點、所述 下一數(shù)據(jù)點和所述第三數(shù)據(jù)點形成所述組數(shù)據(jù)點的新子組。
3. 根據(jù)權(quán)利要求1所述的方法,其中從一組比率中選擇所述增量值,所述比率對應于 所述三角波的所要正增益、所要負增益和所述所要頻率。
4. 根據(jù)權(quán)利要求3所述的方法,其中所述所要正增益與所述所要負增益彼此相等。
5. 根據(jù)權(quán)利要求3所述的方法,其進一步包含基于所述三角波的所述所要頻率確定相位增量;將所述相位增量相加到當前相位數(shù)據(jù)點以產(chǎn)生下一相位數(shù)據(jù)點;以及 基于所述下一相位數(shù)據(jù)點的值選擇所述增量值。
6. 根據(jù)權(quán)利要求5所述的方法,其中所述組比率含有四個比率且所述增量值的所述選 擇是基于所述下一相位數(shù)據(jù)點的兩個最高有效位。
7. 根據(jù)權(quán)利要求5所述的方法,其中所述相位增量的所述選擇是基于相位累加器中的 位的數(shù)目和所述三角波的所述所要頻率。
8. 根據(jù)權(quán)利要求5所述的方法,其進一步包含在所述當前數(shù)據(jù)點為負且所述當前數(shù)據(jù)點與所述增量值的和為正時,強制所述下一數(shù)據(jù)點歸零。
9. 根據(jù)權(quán)利要求5所述的方法,其進一步包含在所述當前相位數(shù)據(jù)點的最高有效位為一且所述下一相位數(shù)據(jù)點的最高有效位 為零時,強制所述下一數(shù)據(jù)點歸零。
10. 根據(jù)權(quán)利要求1所述的方法,其中所述三角波是低頻振蕩器的輸出。
11. 根據(jù)權(quán)利要求IO所述的方法,其中在樂器數(shù)字接口 (MIDI)硬件實施方案中利用 所述低頻振蕩器。
12. —種用于產(chǎn)生形成具有所要頻率和所要增益的三角波的一組數(shù)據(jù)點的裝置,所述裝 置包含電路,其基于所述三角波的所述所要頻率和所述所要增益確定增量值;以及 加法器,其將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù)點,所述當前數(shù)據(jù)點和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組其中所述電路反復確定增量值且所述加法器反復地將所述增量值相加到連續(xù)數(shù)據(jù)點以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點。
13. 根據(jù)權(quán)利要求12所述的裝置,其中所述加法器將所述增量值相加到所述下一數(shù)據(jù) 點以產(chǎn)生第三數(shù)據(jù)點,所述當前數(shù)據(jù)點、所述下一數(shù)據(jù)點和所述第三數(shù)據(jù)點形成所 述組數(shù)據(jù)點的新子組。
14. 根據(jù)權(quán)利要求12所述的裝置,其中所述電路包含選擇單元,所述選擇單元從一組 比率中選擇所述增量值,所述比率對應于所述三角波的所要正增益、所要負增益和 所述所要頻率。
15. 根據(jù)權(quán)利要求14所述的裝置,其中所述所要正增益與所述所要負增益彼此相等。
16. 根據(jù)權(quán)利要求14所述的裝置,其中所述電路進一步包含相位計算單元,其基于所述三角波的所述所要頻率確定相位增量;以及 第二加法器,其將所述相位增量相加到當前相位數(shù)據(jù)點以產(chǎn)生下一相位數(shù)據(jù)點; 其中所述選擇單元基于所述下一相位數(shù)據(jù)點的值選擇所述增量值。
17. 根據(jù)權(quán)利要求16所述的裝置,其中所述組比率含有四個比率,且所述選擇單元基 于所述下一相位數(shù)據(jù)點的兩個最高有效位選擇所述增量值。
18. 根據(jù)權(quán)利要求16所述的裝置,其中所述相位計算單元基于相位累加器中的位的數(shù) 目和所述三角波的所述所要頻率確定所述相位增量。
19. 根據(jù)權(quán)利要求16所述的裝置,其進一步包含強制歸零邏輯塊,其在所述當前數(shù)據(jù)點為負且所述當前數(shù)據(jù)點與所述增量值的和 為正時,強制所述下一數(shù)據(jù)點歸零。
20. 根據(jù)權(quán)利要求16所述的裝置,其進一步包含強制歸零邏輯塊,其在所述當前相位數(shù)據(jù)點的最高有效位為一且所述下一相位數(shù) 據(jù)點的最高有效位為零時,強制所述下一數(shù)據(jù)點歸零。
21. 根據(jù)權(quán)利要求12所述的裝置,其進一步包含低頻振蕩器,所述低頻振蕩器將形成 所述三角波的所述組數(shù)據(jù)點輸出到處理器。
22. 根據(jù)權(quán)利要求21所述的裝置,其中在樂器數(shù)字接口 (MIDI)硬件實施方案中利用 所述低頻振蕩器。
23. —種用于產(chǎn)生形成具有所要頻率和所要增益的三角波的一組數(shù)據(jù)點的裝置,所述裝 置包含第一裝置,其用于基于所述三角波的所述所要頻率和所述所要增益確定增量值; 以及第二裝置,其用于將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù)點,所述當前 數(shù)據(jù)點和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組;其中所述第一裝置反復確定增量值且所述第二裝置反復地將所述增量值相加到 連續(xù)數(shù)據(jù)點以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點。
24. 根據(jù)權(quán)利要求23所述的裝置,其進一步包含用于將所述增量值相加到所述下一數(shù)據(jù)點以產(chǎn)生第三數(shù)據(jù)點的裝置,所述當前數(shù)據(jù)點、所述下一數(shù)據(jù)點和所述第三數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組。
25. 根據(jù)權(quán)利要求22所述的裝置,其進一步包含用于從一組比率中選擇所述增量值的裝置,所述比率對應于所述三角波的所要正 增益、所要負增益和所述所要頻率。
26. 根據(jù)權(quán)利要求25所述的裝置,其中所述所要正增益與所述所要負增益彼此相等。
27. 根據(jù)權(quán)利要求25所述的裝置,其進一步包含用于基于所述三角波的所述所要頻率確定相位增量的裝置;用于將所述相位增量相加到當前相位數(shù)據(jù)點以產(chǎn)生下一相位數(shù)據(jù)點的裝置;以及 用于基于所述下一相位數(shù)據(jù)點的值選擇所述增量值的裝置。
28. 根據(jù)權(quán)利要求27所述的裝置,其中所述組比率含有四個比率,且所述增量值的所 述選擇是基于所述下一相位數(shù)據(jù)點的兩個最高有效位。
29. 根據(jù)權(quán)利要求27所述的裝置,其中所述相位增量的所述選擇是基于相位累加器中 的位的數(shù)目和所述三角波的所述所要頻率。
30. 根據(jù)權(quán)利要求27所述的裝置,其進一步包含用于在所述當前數(shù)據(jù)點為負且所述當前數(shù)據(jù)點與所述增量值的和為正時強制所 述下一數(shù)據(jù)點歸零的裝置。
31. 根據(jù)權(quán)利要求27所述的裝置,其進一步包含用于在所述當前相位數(shù)據(jù)點的最高有效位為一且所述下一相位數(shù)據(jù)點的最高有 效位為零時強制所述下一數(shù)據(jù)點歸零的裝置。
32. 根據(jù)權(quán)利要求23所述的裝置,其中所述三角波是低頻振蕩器的輸出。
33. 根據(jù)權(quán)利要求32所述的裝置,其中在樂器數(shù)字接口 (MIDI)硬件實施方案中利用 所述低頻振蕩器。
34. —種包含指令的計算機可讀媒體,所述指令在由一個或一個以上處理器執(zhí)行時致使 所述處理器產(chǎn)生形成具有所要頻率和所要增益的三角波的一組數(shù)據(jù)點,其中所述指 令致使所述一個或一個以上處理器(a) 基于所述三角波的所述所要頻率和所述所要增益確定增量值;(b) 將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù)點,所述當前數(shù)據(jù)點和所述 下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組;以及反復執(zhí)行(a)和(b)以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點。
35. 根據(jù)權(quán)利要求34所述的計算機可讀媒體,其中反復執(zhí)行(a)和(b)包括將所述增量值相加到所述下一數(shù)據(jù)點以產(chǎn)生第三數(shù)據(jù)點,所述當前數(shù)據(jù)點、所述 下一數(shù)據(jù)點和所述第三數(shù)據(jù)點形成所述組數(shù)據(jù)點的新子組。
36. 根據(jù)權(quán)利要求34所述的計算機可讀媒體,其中所述增量值選自一組比率,所述比 率對應于所述三角波的所要正增益、所要負增益和所述所要頻率。
37. 根據(jù)權(quán)利要求36所述的計算機可讀媒體,其中所述所要正增益與所述所要負增益 彼此相等。
38. 根據(jù)權(quán)利要求36所述的計算機可讀媒體,其中所述指令致使所述一個或一個以上 處理器基于所述三角波的所述所要頻率確定相位增量;將所述相位增量相加到當前相位數(shù)據(jù)點以產(chǎn)生下一相位數(shù)據(jù)點;以及 基于所述下一相位數(shù)據(jù)點的值選擇所述增量值。
39. 根據(jù)權(quán)利要求38所述的計算機可讀媒體,其中所述組比率含有四個比率且所述增 量值的所述選擇是基于所述下一相位數(shù)據(jù)點的兩個最高有效位。
40. 根據(jù)權(quán)利要求38所述的計算機可讀媒體,其中所述相位增量的所述選擇是基于相 位累加器中的位的數(shù)目和所述三角波的所述所要頻率。
41. 根據(jù)權(quán)利要求38所述的計算機可讀媒體,其中所述指令致使所述一個或一個以上處理器在所述當前數(shù)據(jù)點為負且所述當前數(shù)據(jù)點與所述增量值的和為正時,強制所述下一數(shù)據(jù)點歸零。
42. 根據(jù)權(quán)利要求38所述的計算機可讀媒體,其中所述指令致使所述一個或一個以上 處理器在所述當前相位數(shù)據(jù)點的最高有效位為一且所述下一相位數(shù)據(jù)點的最高有效位 為零時,強制所述下一數(shù)據(jù)點歸零。
43. 根據(jù)權(quán)利要求34所述的計算機可讀媒體,其中所述三角波是低頻振蕩器的輸出。
44. 根據(jù)權(quán)利要求43所述的計算機可讀媒體,其中在樂器數(shù)字接口 (MIDI)實施方案 中利用所述低頻振蕩器。
45. —種用于產(chǎn)生形成具有所要頻率和所要增益的三角波的一組數(shù)據(jù)點的電路,其中所 述電路適于(a) 基于所述三角波的所述所要頻率和所述所要增益確定增量值;(b) 將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù)點,所述當前數(shù)據(jù)點和所述 下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組;以及反復執(zhí)行(a)和(b)以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點。
46. 根據(jù)權(quán)利要求45所述的電路,其中反復執(zhí)行(a)和(b)包括將所述增量值相加到所述下一數(shù)據(jù)點以產(chǎn)生第三數(shù)據(jù)點,所述當前數(shù)據(jù)點、所述 下一數(shù)據(jù)點和所述第三數(shù)據(jù)點形成所述組數(shù)據(jù)點的新子組。
47. 根據(jù)權(quán)利要求45所述的電路,其中所述增量值選自一組比率,所述比率對應于所 述三角波的所要正增益、所要負增益和所述所要頻率。
48. 根據(jù)權(quán)利要求47所述的電路,其中所述所要正增益與所述所要負增益彼此相等。
49. 根據(jù)權(quán)利要求47所述的電路,其中所述電路適于基于所述三角波的所述所要頻率確定相位增量;將所述相位增量相加到當前相位數(shù)據(jù)點以產(chǎn)生下一相位數(shù)據(jù)點;以及基于所述下一相位數(shù)據(jù)點的值選擇所述增量值。
50. 根據(jù)權(quán)利要求49所述的電路,其中所述組比率含有四個比率且所述增量值的所述 選擇是基于所述下一相位數(shù)據(jù)點的兩個最高有效位。
51. 根據(jù)權(quán)利要求49所述的電路,其中所述相位增量的所述選擇是基于相位累加器中 的位的數(shù)目和所述三角波的所述所要頻率。
52. 根據(jù)權(quán)利要求49所述的電路,其中所述電路適于-在所述當前數(shù)據(jù)點為負且所述當前數(shù)據(jù)點與所述增量值的和為正時,強制所述下一數(shù)據(jù)點歸零。
53. 根據(jù)權(quán)利要求49所述的電路,其中所述電路適于在所述當前相位數(shù)據(jù)點的最高有效位為一且所述下一相位數(shù)據(jù)點的最高有效位 為零時,強制所述下一數(shù)據(jù)點歸零。
54. 根據(jù)權(quán)利要求45所述的電路,其中所述三角波是低頻振蕩器的輸出。
55. 根據(jù)權(quán)利要求54所述的電路,其中在樂器數(shù)字接口 (MIDI)實施方案中利用所述 低頻振蕩器。
全文摘要
本發(fā)明描述用于產(chǎn)生形成具有所要增益和所要頻率的三角波的一組數(shù)據(jù)點的技術(shù)。在一個實例中,方法包括基于所述三角波的所述所要頻率和所述所要增益確定增量值的步驟(a)。所述方法進一步包括將所述增量值相加到當前數(shù)據(jù)點以產(chǎn)生下一數(shù)據(jù)點的步驟(b),所述當前數(shù)據(jù)點和所述下一數(shù)據(jù)點形成所述組數(shù)據(jù)點的子組。所述方法進一步包括反復執(zhí)行(a)和(b)以產(chǎn)生形成所述三角波的所述組數(shù)據(jù)點的步驟。
文檔編號G10H7/12GK101636782SQ200880008803
公開日2010年1月27日 申請日期2008年3月17日 優(yōu)先權(quán)日2007年3月22日
發(fā)明者尼迪什·拉馬錢德拉·卡馬特, 斯蒂芬·莫洛伊, 蘇雷什·德瓦拉帕里 申請人:高通股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1