[發(fā)明專利]基于DSP和USB的實時語音存儲系統(tǒng)及存儲方法有效
| 申請?zhí)枺?/td> | 201210377016.5 | 申請日: | 2012-10-08 |
| 公開(公告)號: | CN102969011A | 公開(公告)日: | 2013-03-13 |
| 發(fā)明(設計)人: | 李曄;樊燕紅;姜競賽;郝秋赟;馬曉鳳 | 申請(專利權)人: | 山東省計算中心 |
| 主分類號: | G11B20/10 | 分類號: | G11B20/10;G11C7/10 |
| 代理公司: | 濟南泉城專利商標事務所 37218 | 代理人: | 李桂存 |
| 地址: | 250014 山東省濟*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 dsp usb 實時 語音 存儲系統(tǒng) 存儲 方法 | ||
1.一種基于DSP和USB的實時語音存儲系統(tǒng),包括語音信號采集模塊(1)、語音信號處理模塊(2)和語音信號存儲模塊(3),其特征在于:所述語音信號采集模塊包括用于調整聲源幅度的預處理電路和用于模/數(shù)轉化并進行編碼的語音編解碼模塊,預處理電路的輸出端與語音編解碼模塊的輸入端相連接;所述語音信號處理模塊包括DSP處理器和與DSP處理器相連接的存儲器,所述語音信號存儲模塊包括USB接口芯片和與USB移動存儲設備直接相連的USB接口電路,USB接口芯片的輸出端與USB接口電路相連接;DSP處理器接收和處理語音編碼模塊輸出的語音數(shù)據(jù),并將處理后的數(shù)據(jù)通過USB接口芯片和USB接口電路發(fā)送至USB移動存儲設備。
2.根據(jù)權利要求1所述的基于DSP和USB的實時語音存儲系統(tǒng),其特征在于:所述DSP處理器、語音編解碼模塊和USB接口芯片采用的芯片型號分別為TMS320VC5509A、TLV320AIC23和CH376,存儲器包括FLASH存儲器和SDRAM存儲器;DSP處理器通過多通道緩沖串口McBSP與語音編解碼模塊相連接,DSP處理器通過EMIF接口與FLASH存儲器、SDRAM存儲器和USB接口芯片相連接。
3.一種根據(jù)權利要求1所述的基于DSP和USB的實時語音存儲系統(tǒng)的存儲方法,其特征在于:包括數(shù)據(jù)處理存儲主流程和語音數(shù)據(jù)采集子流程;在語音數(shù)據(jù)采集子流程中,采用9個以上的語音數(shù)據(jù)緩沖區(qū)對采集的語音數(shù)據(jù)進行存儲,以保證實時、連續(xù)和完整的保存語音數(shù)據(jù);采用數(shù)目至少為語音數(shù)據(jù)緩沖區(qū)2倍的U盤數(shù)據(jù)緩沖區(qū),存儲語音數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)轉化為U盤數(shù)據(jù)格式之后的數(shù)據(jù);在數(shù)據(jù)處理存儲主流程中,依次將U盤數(shù)據(jù)緩沖區(qū)中的語音數(shù)據(jù)存儲到USB移動存儲設備中。
4.根據(jù)權利要求3所述的基于DSP和USB的實時語音存儲方法,其特征在于:設語音信號的采樣頻率為???????????????????????????????????????????????KHz,采樣寬度為bit,一幀語音數(shù)據(jù)包含的樣點數(shù)為FRAME_SIZE個;
所述數(shù)據(jù)處理存儲主流程具體包括以下步驟:
a.定義變量,定義temp、flag、out_data_ready分別為已處理幀數(shù)、接收總幀數(shù)、語音樣點數(shù)滿一幀標志位;?定義in_index、temp1分別為幀內索引值、緩沖區(qū)內索引值;并將定義的所有變量清零;
b.建立多個語音數(shù)據(jù)緩沖區(qū),建立9個用于暫存語音數(shù)據(jù)的語音數(shù)據(jù)緩沖區(qū),每個語音數(shù)據(jù)緩沖區(qū)的大小與一幀語音數(shù)據(jù)的大小相等,為FRAME_SIZE*n?bit;
c.建立U盤數(shù)據(jù)緩沖區(qū),建立char類型的數(shù)目為語音數(shù)據(jù)緩沖區(qū)2倍的U盤數(shù)據(jù)緩沖區(qū);
d.判斷采集樣點數(shù)是否滿一幀,判斷語音樣點數(shù)滿一幀標志位out_data_ready是否為1,如果為1,則表明語音數(shù)據(jù)緩沖區(qū)中有至少一幀未處理的語音數(shù)據(jù)存在,執(zhí)行步驟e;如果out_data_ready為0,則表明語音數(shù)據(jù)緩沖區(qū)中沒有新的滿一幀語音數(shù)據(jù),執(zhí)行步驟d;
e.判斷是否有且僅有一幀語音數(shù)據(jù)待處理,判斷接收總幀數(shù)flag與已處理幀數(shù)temp之差是否為1,如果為1,則表明語音數(shù)據(jù)緩沖區(qū)中僅有一幀語音數(shù)據(jù)未處理,并將語音樣點數(shù)滿一幀標志位out_data_ready清零;如果不為1,執(zhí)行步驟f;
f.判斷是否有語音數(shù)據(jù)被覆蓋,如果接收總幀數(shù)flag大于或等于已處理幀數(shù)temp與9的之和,則表明語音數(shù)據(jù)緩沖區(qū)中已有或即將有數(shù)據(jù)被覆蓋,退出主流程;否者,執(zhí)行步驟g;
g.判斷待處理語音數(shù)據(jù)緩沖區(qū),通過獲取已處理幀數(shù)temp除以9之后的的余數(shù),來判斷語音數(shù)據(jù)緩沖區(qū)中待處理的語音數(shù)據(jù)緩沖區(qū),余數(shù)為多少就代表第幾個語音數(shù)據(jù)緩沖區(qū)待處理;
h.存儲數(shù)據(jù),將U盤數(shù)據(jù)緩沖區(qū)中與待處理語音數(shù)據(jù)緩沖區(qū)相對應的數(shù)據(jù)存儲至USB移動存儲設備中;同時,將已處理幀數(shù)temp做加1操作;
i.計時判斷,通過已處理幀數(shù)temp的大小判斷語音數(shù)據(jù)采集時間是否已到,如果已到,則退出主流程;如果總時間沒到,則繼續(xù)執(zhí)行主流程;
所述語音數(shù)據(jù)采集子流程具體包括以下步驟:
1).產(chǎn)生中斷,語音編解碼模塊根據(jù)采樣頻率為Hz,每過s時刻產(chǎn)生一次中斷;
2)?.樣點語音數(shù)據(jù)采集,DSP處理器將接收到的語音編解碼模塊的數(shù)據(jù)存儲到相應的語音數(shù)據(jù)緩沖區(qū)上,每進行一次語音數(shù)據(jù)采集,將幀內索引值in_index和緩沖區(qū)內索引值temp1均加1;
3).數(shù)據(jù)格式轉化,將每次采集的語音數(shù)據(jù)轉化為可存儲到USB移動存儲設備中的格式,將轉化后的數(shù)據(jù)存儲到U盤數(shù)據(jù)緩沖區(qū)中;
4).判斷語音數(shù)據(jù)緩沖區(qū)是否已滿,判斷緩沖區(qū)內索引值temp1是否達到9*FRAME_SIZE的大小,如果達到,則標示所有的語音數(shù)據(jù)緩沖區(qū)已滿,將temp1置零,以便采集的語音數(shù)據(jù)重新從第一個語音數(shù)據(jù)緩沖區(qū)開始存儲;如果沒有達到9*FRAME_SIZE的大小,則執(zhí)行步驟5);
5).判斷采樣點數(shù)是否滿一幀,判斷幀內索引值in_index是否達到FRAME_SIZE的大小,如果已經(jīng)達到,則將in_index置零、將out_data_ready置1以及將flag加1;如果沒有達到,則不做任何操作。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于山東省計算中心,未經(jīng)山東省計算中心許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210377016.5/1.html,轉載請聲明來源鉆瓜專利網(wǎng)。





