專利名稱:音調發生裝置和方法
技術領域:
本發明涉及音調發生裝置、方法,和發行介質。更具體地本發明涉及音調發生裝置、方法,和發行介質,在各種的處理階段,比如從存儲器讀取用于產生音調的數據、處理它、再一次將它儲存到存儲器中,所處理的數據量應當使得延遲時間從請求表達預定音調的時候開始直到它實際被表達的時候為止的延遲時間不會帶來任何問題,并且它是以一定量批處理,使得總線能有效地被使用。
半導體技術的進步已經使一個單片上可以設置算術處理裝置(例如,中央處理器(CPU)或數字信號處理器(DSP)),和主存儲設備(例如,動態隨機存儲器(DRAM)或靜態RAM(靜態隨機存取存儲器))。數據在它們之間經總線傳送。
在傳統的音調發生裝置中,類似聲調(pitch,節距)轉換或包絡處理的聲信號源處理是由這些算術處理裝置按周期Ts(抽樣周期)進行的,該周期相當于44.1kHz或48.0kHz,也就是說每1/44100秒,或者1/48000秒的抽樣率。
例如,如
圖1所示,被儲存在存儲器等等中用來產生音調的數據由算術處理裝置按相當于1Ts的量讀出。然后在算術處理裝置對這1Ts被讀數據作聲調轉換或其他的聲信號源處理,并暫時地將它寫入存儲器,以供后續處理(較晚階段在算術處理裝置處理)。通過按照需要盡可能多地重復這一操作,可以產生音調。
大量數據(相當于寬的比特寬度的數據量)能夠一次傳送,并且,如果算術處理裝置和主存儲設備由時鐘脈沖頻率是高頻(高速),并且比特寬度寬的總線連接,那么該操作可以更有效地進行。比特寬度意味著能一次被轉移的比特數,它還被稱為數據總線的寬度。
但是,對于如上所述的傳統的音調發生裝置,音調發生所需要的數據在算術處理裝置和主存儲設備(存儲器)之間以數值為1Ts的小單位傳送,其中Ts相當于抽樣率。
因此存在的問題是,如果音調發生裝置是使用算術處理裝置,主存儲設備和設置在其間的高速且寬的比特寬度總線構成的,那么因為被交換的數據量小,所以對它來說難于有效地傳遞數據。
本發明從存儲器一次讀出相當于n個Ts的數據量,進行聲信號源處理,并且再次根據需要將它儲存到存儲器中,使得可以有效地使用高速,寬的比特寬度總線。
音調發生器的算術處理裝置有經寬的比特寬度總線讀用來產生音調、被儲存在主存儲設備中的數據的讀裝置,以及使用讀裝置讀入的數據產生音調的發生裝置,并且,讀裝置和發生裝置一起控制n倍(n是大于或等于2的整數)于音調抽樣周期的數據。
本發明的音調發生方法還包括算術處理裝置經寬的比特寬度總線讀被儲存在主存儲設備中的用來產生音調的數據的步驟,以及使用在讀步驟讀入的數據來產生音調的步驟,并且,讀步驟和發生步驟一起控制n倍(n是等于或者大于2的整數)于音調抽樣周期的數據。
此外,本發明的發行介質提供可由計算機讀出的程序,該程序可使音調發生裝置執行處理操作,其特征在于它包括算術處理裝置經寬的比特寬度總線讀取在主存儲設備中存儲、用于產生音調的數據的讀步驟,以及利用讀步驟所讀入的數據產生音調的產生步驟,并且,讀步驟和發生步驟一起控制n倍(n是整數大于或者等于2)于音調抽樣周期的數據。
在前面提到的音調發生裝置,音調發生方法和發行介質中,用來產生音調的數據被讀出,使用被讀數據產生音調,并且,在這讀和發生步驟中,n倍于音調抽樣率的數據一起被處理。
在下文中,參考附圖闡述本發明的實施例。
圖1是解釋傳統的數據讀,處理和寫操作的圖表;圖2是表示本發明的音調發生裝置廣泛地被使用于其中的計算機娛樂裝置的實施例結構的方框圖;圖3是表示音調發生裝置的結構的方框圖;圖4是在解釋音調發生裝置的圖表;圖5是在解釋在包絡處理中數據流的圖表;圖6是在解釋圖4的DSP操作的圖表;以及圖7是在解釋數據讀,處理和寫的操作的圖表。
音調發生器的算術處理裝置(圖2中記號8-1至8-4)有經總線(12)讀被儲存在主存儲設備(5)中、用來產生音調的數據的讀裝置(例如,圖6的步驟S3),以及使用讀裝置讀入的數據產生音調的發生裝置(例如,圖6的步驟S4),并且,讀裝置和發生裝置一起控制或處理n倍(n是大于或等于2的整數)于音調抽樣周期的數據。
圖2是在音調發生裝置被應用到計算機娛樂裝置的情況下結構例子的方框圖。在這個計算機娛樂裝置1中,由一個LSI芯片構成的介質處理器60經主總線55被接在主中央處理器57上。介質處理器60的主接口1由FIFO31,寄存器32和直接的總線33構成,它們中的每一個都和主總線55相連。
寄存器32,直接的總線33,CPU3,指令調整緩沖存儲器6,靜態隨機存取存儲器7和比特轉換器10被接在介質處理器60的CPU總線11上。FIFO31、總線判優器2,指令調整緩沖存儲器6,靜態隨機存取存儲器7,比特轉換器10,DMAC(直接存儲存取控制器)4,DRAM5,以及數字信號處理器(DSP)8-1到8-4接在介質處理器60的主總線12上。
主中央處理器57按照被儲存在存儲器(未表示)中的程序執行各種處理的步驟。例如,主中央處理器57可以將來自類似CD-ROM(CD盤,只讀存儲器)(未表示)的記錄介質程序和數據儲存到DRAM5中,或者相反,獲取被儲存在DRAM5中的程序和數據。在這樣做時,主中央處理器57對DMAC4發出請求,引起FIFO31和DRAM5之間的DMA轉送。另外,主中央處理器57可以經直接總線33直接訪問DRAM5和其他的裝置。
總線判優器2仲裁主總線12的使用權。例如,當有從主中央處理器57到DMAC4的數據傳送請求的時候,總線判優器2給予DMAC4以總線存取權,這樣,能從主中央處理器57到DRAM5做DMA的數據傳送(直接存儲器存取)。
FIFO31暫時地儲存來自主中央處理器57的輸出數據,將它經過主總線12輸出到DRAM5,并暫時地儲存從DRAM5傳送的數據,輸出它到主中央處理器57。寄存器32是當在主中央處理器57和CPU3之間進行信號交換的時候,被使用的寄存器;它儲存表達處理和指令狀態的數據。
CPU3訪問指令調整緩沖存儲器6,裝載,執行被儲存在那里的程序,并根據需要訪問靜態隨機存取存儲器7,并且被提供有預定的數據。如果沒有靜態隨機存取存儲器7所需要的數據,CPU3向DMAC4發出請求,并執行從DRAM5到靜態隨機存取存儲器7的DMA數據轉送。如果沒有為指令調整緩沖存儲器6所被需要的程序,CPU3向DMAC4發出請求,從DRAM5到指令調整緩沖存儲器6以DMA方式進行程序轉送。
靜態隨機存取存儲器7能訪問任何地址,從CPU3和DMAC4同時讀、寫數據;例如,它是雙端口的SRAM,被提供作為數據高速緩沖存儲器,并且,在被儲存于DRAM5中的數據中,它儲存被CPU3頻繁地訪問的數據。靜態隨機存取存儲器7可以是雙排結構,一排被接在CPU總線11上,另一排和主總線12相連。
指令調整緩沖存儲器6是任何地址都能訪問,并且數據能被讀、寫的超高速緩沖存儲器;在DRAM5所儲存的程序當中,它儲存從CPU3頻繁訪問的程序。
比特轉換器10轉換經CPU總線11輸入的數據的比特寬度為相當于主總線12的比特寬度(例如,128比特),并且輸出它,轉換經主總線12輸入的數據的比特寬度(例如,32比特)為相當于CPU總線11的比特寬度,并且輸出它。
DSP8-1由儲存程序DSP核心23-1進行各種操作的時候所使用的程序RAM21-1,儲存數據的數據RAM22-1,管理被儲存在這些裝置中的程序和數據的轉送的DMAC20-1,和輸出DSP核心23-1所產生的音頻數據到多路轉換器9的音頻接口24-1構成。
盡管有關的描述被省略,DSP8-2到8-4各自有和DSP8-1相同的內部結構。多路轉換器9選擇來自音頻接口24-1到24-4輸出的聲音數據,將它輸出給揚聲器50。
圖3是音調發生裝置的組成方框圖。主存儲設備41儲存從光盤驅動器或其他的記錄介質(未表示)讀出的音調發生用數據以及發生處理過程的有關數據。這個主存儲設備4和算術處理單元42-1到42-4各自被接在有足夠寬的比特(128比特)寬度的總線43上。
在圖3和圖2的對應性方面,主存儲設備41對應于DRAM5,算術裝置42-1到42-4分別對應于DSP8-1到8-4,而總線43對應于總線12。
必要地,被儲存在主存儲設備41中的數據被讀入算術裝置42-1至42-4,作擴展、聲調轉換、包絡處理、以及音效處理等等操作,并且它被傳送到錄音重放裝置(未表示),并由其再現。
在圖4中,主存儲設備41是DRAM5,算術裝置42-1至42-4分別是DSP8-1至8-4,總線43是主總線,并且用每個單元完成處理操作,圖中還表示了數據流。
主中央處理器57從CD-ROM或其他的記錄介質(未表示)讀出的音調的壓縮數據儲存在DRAM5的壓縮數據單元5a中。存儲數據經總線12被傳遞到DSP8-1。DSP8-1解碼(擴展)被傳送的壓縮數據。然后該擴展數據要么傳遞并儲存在DRAM5的后擴展數據單元5b中,要么根據需要經多路轉換器9由揚聲器50再現。
被儲存在后擴展數據單元5b中的數據由DSP8-2讀取,并且,對它進行聲調轉換。聲調轉換意味著當產生音調的時候通過例如拿音符“do”當作基音并改變該基音的頻率,來產生另一個(更高的)音程。例如,如果在卡型盒式磁帶記錄器中作快進操作(如果單位時間內重放比平時更多的數據),聽到的是更高聲調的聲音。從中一點可以清楚地看出,為了使聲音更高,改變讀取速度(聲調),讀下一個數據,乃至增加數據數量是必要的。相反,如果要表達的是比基音低的音調,數據量要比在基音表達的情況下的數據少的條件是能夠滿足的。
由DSP8-2進行了聲調轉換的數據或者傳遞給DRAM5的聲調轉換數據單元5c并且儲存在其中,或者根據需要經多路轉換器9由揚聲器50重放。
被儲存在聲調轉換數據單元5c中的數據由DSP8-3讀出,并且,進行包絡處理。這種包絡處理是為了改變(設置)音色而進行的。為了改變相同音程的聲音的音色,只要改變聲音表達數據的音量和聲音靜默(迎角,和下跌)就足夠了。例如,如果如圖5(A)所示在聲音開始之后音量立即達到其最大值并且繼續維持恒定的音量一段時間,接著在聲音被靜默之后音量立即達到其最小值(消逝),就能再現風琴音色,而如果如圖5(B)所示在聲音開始之后音量慢慢地達到其最大值并且慢慢衰減,接著在聲音被靜默之后音量逐漸變小,就能再現鋼琴的音色。
在DSP8-3中,經過包絡處理的數據或者轉移到DRAM5的包絡處理數據單元5d,并且儲存其中,或者根據需要經多路轉換器9由揚聲器50再現。
被儲存在包絡處理數據單元5d中的數據由DSP8-4讀出,并且,對它作音效處理。音效處理是把類似回聲或失真的變化加到聲音上的處理。音效處理后的數據被傳遞到DRAM5的音效處理數據單元5e,并儲存于其中。在音效處理僅僅執行一次就完成的時候,處理過的數據經多路轉換器9由揚聲器50表達。
如果音效處理被進行兩次,或者更多,那么首先,由DSP8-4進行第一次音效處理,并且這數據暫時地被傳送并存儲在音效處理的數據單元5e中。然后如果進行第二次音效處理,那么DSP8-4讀出在音效處理數據單元5e中儲存的數據,對它作第二次音效處理。這樣,通過在DSP8-4和音效處理數據單元5e之間交換數據,音效處理可以進行多次。
圖6的流程圖在描述用圖4所示的音調發生裝置中的DSP的操作中被提到。一個例子是進行擴展處理的DSP8-1。在步驟S1中,DSP8-1的DSP核心23-1檢查主總線12的可用性。在步驟S2中,利用在在步驟S1中對主總線12可用性的檢查結果,DSP核心23-1決定是否主總線12處在可用的狀態,換句話說是否另一個DSP8-2至8-4,CPU3,DMAC4等等可以在其上傳送、或接收數據。這一決定是根據總線判優器2的回答而作出的。如果確定主總線12不可以利用,則它回到步驟S1,并且,重復從那里開始的處理過程。如果在步驟S2中確定主總線12可以利用,它進入到步驟S3。在步驟S3中,DSP核心23-1讀出被儲存在DRAM5的壓縮數據單元5a中的數據。
這時,一次讀取相當于nTs份的數據。這個Ts相當于產生音調的波形數據抽樣率,并且假定抽樣率是44.1kHz,1個Ts是1/44100秒。也就是說,DMAC20-1將相當于n Ts份的數據量從DRAM5經主總線12 DMA轉送給數據RAM22-1。
如果n Ts的n值大于或等于2,這一確定在具體考慮下文之后作出。如果n取一個大的值,那么一次要處理的數據量增加了,并且從作出聲音表達請求時起直到上述處理(聲調轉換,包絡處理等等)在DSP8-1至8-4中進行并且揚聲器50表達了該聲音的時間,也就是說從作出聲音表達請求直到聲音實際被表達為止的延遲時間可能大到不能被忽略,即延遲可能足夠長到能讓用戶注意到。
相反,如果n取小的數值,盡管極少會有上述延遲問題發生的危險,但是將不可能有效利用具有寬的比特寬度(因而,能一次傳遞大量數據)的主總線12。考慮到這些事實,n值的設定應當使得從聲音表達請求作出直到它被播放的時間延遲不會為用戶所察覺,并且使得主總線12能有效地被使用。
DSP核心23-1在步驟S3中讀出的壓縮數據的n Ts部分在步驟S4中進行擴展處理。并且,在步驟S5中,DSP核心23-1確定是否在DRAM5中儲存擴展的數據,換句話說是否對它進行聲調轉換。如果確定沒有在DRAM5里儲存數據的必要,那么進入步驟S9,進行了擴展處理的n Ts數據被傳送給多路轉換器9。然后,所傳送的數據經多路轉換器9選擇,輸出到揚聲器50,并被表達出來。
如果在步驟S5中確定數據將被儲存在DRAM5中,那么進入步驟S6,并且,檢查主總線12的可用性。步驟S6和步驟S7是分別和步驟S1和步驟52所作的處理相同的處理,這樣,它的說明被省略。
如果在步驟S7,DSP核心23-1確定主總線12可以利用,那么進入步驟S8,并且DMAC20-1獲取經過擴展處理的數據和將其經主總線12 DMA傳送給DRAM5的后擴展數據單元5b,然后儲存于其中。
圖6的流程圖處理以和DSP8-2至8-4相同的方式進行。不過,在DSP8-2中,在步驟S3中讀取的數據是被儲存在后擴展數據單元5b中的數據,在步驟S4中進行的處理是聲調轉換處理,并且,在步驟S8中數據被傳送的目的地是聲調轉換數據單元5c。在DSP8-3中,步驟S3所讀取的數據是被儲存在聲調轉換數據單元5c中的數據,在步驟S4中進行處理是包絡處理,并且,在步驟S8中數據被傳送的目的地是包絡處理數據保持單元5d。
在DSP8-4中,在步驟S3中所讀取的數據是在包絡處理數據單元5d或音效處理數據單元5e(如果音效處理被進行至少2次的話)中儲存的數據,在步驟S4中進行處理是音效處理,并且,在步驟S8中數據被傳送的目的地是音效處理數據單元5e。
如上所述,對于本發明的音調發生裝置,如圖7所示,每個DSP(算術裝置)一次讀取相當于n Ts的數據,所讀的n Ts數據部分都一次被處理,并且為了進行后續的處理,經過處理的n Ts數據部分一次被寫入DRAM或其他的存儲器中,所以,寬的比特寬度總線能夠有效地加以利用,并且,音調發生能在沒有任何延遲出現的情況下進行。
據以向用戶提供執行上述內容的計算機程序的發行介質處理除包括類似磁盤和CD-ROM的信息記錄介質之外,還包括基于網絡的類似互聯網或數字衛星網絡的發行介質。
如上所述,對于音調發生裝置、音調發生方法和發行介質,算術處理裝置經總線讀取被儲存在主存儲設備中的用來產生音調的數據,并且當它使用所讀的數據產生音調的時候能夠一次處理n倍于音調抽樣周期的數據,這樣可以有效地利用寬的比特寬度總線。
權利要求
1.音調發生器,它具有由總線相連的主存儲設備和算術處理裝置,所說算術處理裝置有經所說總線讀被儲存在主存儲設備中、用來產生音調的數據的讀裝置,使用由所說讀裝置讀出的數據產生音調的音調發生裝置,并且所說讀裝置和所說音調發生裝置一起處理n倍(n是大于或等于2的整數)于音調抽樣周期的數據。
2.根據權利要求1所說的音調發生裝置,其特征在于n值的設定使得用戶不會察覺到從作出預定音調表達請求起直到所說預定音調由所說發生裝置產生并表達為止的延遲時間,并且該總線可以有效利用。
3.根據權利要求1所說的音調發生裝置,其特征在于所說總線是高速、寬的比特寬度總線。
4.至少具有主中央處理器、主總線和產生音調的介質處理器的計算機娛樂系統,在所說計算機娛樂系統中,所說介質處理器有算術處理裝置、主存儲設備、和數據傳送于其間的高速寬的比特寬度總線,以及在所說數據傳送中,n倍(n是大于或等于2的整數)于音調抽樣周期的數據被一起處理。
5.根據權利要求4所說的計算機娛樂系統,其特征在于算術處理裝置、主存儲設備、以及總線形成在一個半導體芯片上。
6.根據權利要求4所說的計算機娛樂系統,其特征在于算術處理裝置由一或二或更多的數字信號處理器構成。
7.根據權利要求1所說的計算機娛樂系統,其特征在于每個數字信號處理器由擴展音調壓縮數據的擴展處理裝置、當音調產生時改變其頻率的的聲調轉換處理裝置、改變音調的音色的包絡處理裝置,以及對音調進行改變的音效裝置構成。
8.用于具有由總線相連的主存儲設備和算術處理裝置的音調發生器的音調發生方法,在所說音調發生方法中所說算術處理裝置包括經所說總線讀被儲存在主存儲設備中的用來產生音調的數據的步驟,和使用在所說讀步驟讀出的數據來產生音調的步驟,并且所說讀步驟和所說發生步驟將n倍(n是等于或者大于2的整數)于音調抽樣周期的數據一起處理。
9.根據權利要求8所說的音調發生方法,其特征在于n值的設定使得用戶不會察覺到從作出預定音調表達請求起直到所說預定音調由所說發生裝置產生并表達為止的延遲時間,并且該總線可以有效利用。
10.具有由總線相連的主存儲設備和算術處理裝置的音調發生器,提供其處理操作可由音調發生裝置執行、并可由計算機讀出的程序的發行介質,所說算術處理裝置包括經所說總線從主存儲設備中讀出用來產生音調的數據的步驟,和使用在所說讀步驟讀出的數據來產生音調的步驟,并且所說讀步驟和所說發生步驟將n倍(n是等于或者大于2的整數)于音調抽樣周期的數據一起處理。
全文摘要
執行音調發生、同時有效使用寬的比特寬度總線從本質上有效消除從作出音調表達請求直到其被表達出來為止的延遲的裝置。產生音調的算術處理裝置把數據從音調數據所存儲的存儲器中一次讀出。它是這樣設置的,使得從作出音調發出請求直到音調實際上產生并表達的時刻為止的延遲時間是可以忽略的。
文檔編號G10H7/00GK1269045SQ99800720
公開日2000年10月4日 申請日期1999年5月14日 優先權日1998年5月14日
發明者古橋真, 橋本武 申請人:索尼電腦娛樂公司