數(shù)據(jù)實現(xiàn)編解碼。
[0049] (2)在發(fā)送端完成語音信號采集、音頻數(shù)據(jù)的編碼和channelpacket接收處理。 聲碼器在codec模式下,實現(xiàn)對音頻數(shù)據(jù)的編碼。首先,F(xiàn)PGA將輸出的音頻數(shù)據(jù)、時鐘和頓 同步信號轉(zhuǎn)發(fā)給聲碼器,聲碼器對音頻數(shù)據(jù)進(jìn)行采樣,每采樣160個樣點,實現(xiàn)一次編碼, 編碼周期為20ms/頓。FPGA接收編碼后的信道包,進(jìn)行解串處理,輸出字節(jié)型信道包數(shù)據(jù), 并且對信道包的包頭、類型和數(shù)據(jù)長度進(jìn)行校驗,如果校驗正確,從信道包數(shù)據(jù)中提取有效 數(shù)據(jù)化個字節(jié))進(jìn)行發(fā)送??刂屏鞒倘鐖D3所示。
[0050] (3)在發(fā)送端完成編碼后channelpacket中有效數(shù)據(jù)發(fā)送預(yù)處理。在VPX總線架 構(gòu)上,板間傳輸速率往往大于信息速率,在發(fā)送預(yù)處理采用有效頓和空頓分時發(fā)送的傳輸 方法。首先對輸入的信道包數(shù)據(jù)進(jìn)行緩存,當(dāng)有效數(shù)據(jù)具備發(fā)送條件時,發(fā)送有效頓;當(dāng)不 具備條件時,發(fā)送空頓。為了區(qū)分有限頓和空頓,在有效數(shù)據(jù)前面插入2個控制碼、標(biāo)識符 號和頓同步字;在空頓前面只插入1個控制碼。控制流程如圖4所示。
[0051] 發(fā)送前,首先對有效數(shù)據(jù)進(jìn)行緩存,當(dāng)存儲容量大于或等于16包時,發(fā)送有效數(shù) 據(jù),并且在發(fā)送前插入2個控制碼化28. 5)+1個標(biāo)識符號+頓同步字;當(dāng)有效數(shù)據(jù)不具備發(fā) 送條件時,發(fā)送無效數(shù)據(jù),并且在發(fā)送前插入1個控制碼化28. 5)。其中標(biāo)識符號表征不同 的數(shù)據(jù)類型,控制碼(個數(shù)不同)作為接收方判別有效頓和空頓的有效字符。其中有效頓 由2個控制碼+標(biāo)識符+頓同步字+有效數(shù)據(jù)組成,標(biāo)識符用來表征不同的數(shù)據(jù)類型;空頓 由1個控制碼+無效數(shù)據(jù)組成。
[0052] 2、系統(tǒng)接收端設(shè)計如下:
[0053] 接收終端包括語音AD/DA芯片、FPGA核必處理器和聲碼器,F(xiàn)PGA核必處理器包括 FPGA控制器、串行接收模塊、有效數(shù)據(jù)判斷模塊、FIFO緩存模塊和有效數(shù)據(jù)后處理模塊。
[0054] (1)在接收端完成數(shù)據(jù)的解析,設(shè)計了FIFO用于有效數(shù)據(jù)的緩存處理。
[0055] 接收數(shù)據(jù)后,根據(jù)識別控制碼的方法,剔除空頓獲取有效頓,從有效頓中獲取有效 數(shù)據(jù),設(shè)計了FIFO緩存區(qū),用于存儲音頻數(shù)據(jù)。接收端通過識別控制碼和標(biāo)識符,從接收數(shù) 據(jù)中獲取有效數(shù)據(jù),并且把有效數(shù)據(jù)緩存到FIFO中。
[0056]在接收端完成數(shù)據(jù)的解析,利用識別控制碼從復(fù)合頓中剔除空頓,剔除空頓后從 有效頓中提取出有效數(shù)據(jù),
[0057] 似在接收端完成發(fā)送、語音解碼和播放,利用FPGA實現(xiàn)了語音AD/DA與聲碼器之 間的數(shù)據(jù)交互。
[0058] 接收端利用聲碼器實現(xiàn)解碼,由于接收到的數(shù)據(jù)只包含有效數(shù)據(jù),并不滿足解碼 端信道包的傳輸協(xié)議,因此當(dāng)緩存區(qū)滿足發(fā)送條件時,即當(dāng)緩存區(qū)的數(shù)據(jù)大于或等于一包 時,并且當(dāng)聲碼器的發(fā)送標(biāo)識有效時,在有效數(shù)據(jù)前插入包頭、長度和類型及相應(yīng)的域控, 組成完成的channelpacket。然后按照UART接口協(xié)議給聲碼器發(fā)送channelpacket,聲 碼器收到channelpacket后進(jìn)行解碼輸出。FPGA接收解碼后的音頻數(shù)據(jù),當(dāng)頓同步信號有 效時,將解碼后的音頻數(shù)據(jù)轉(zhuǎn)發(fā)給AD/DA。由于AD/DA編碼器具有左右聲道,因此在輸出的 同時也要進(jìn)行數(shù)據(jù)緩存,依次賦值給兩個聲道??刂屏鞒倘鐖D5所示。
【主權(quán)項】
1. 一種語音數(shù)據(jù)處理和傳輸?shù)姆椒?,其特征在于通過以下步驟實現(xiàn):包括發(fā)送終端和 接收終端, 發(fā)送終端: (1) 聲碼器對語音AD/DA芯片輸出的音頻數(shù)據(jù)進(jìn)行采樣和編碼得到channelpacket; (2)對channelpacket進(jìn)行解串處理后對channelpacket的包頭、類型和數(shù)據(jù)長度進(jìn) 行校驗,提取channelpacket中的有效數(shù)據(jù); (3) 對提取的有效數(shù)據(jù)進(jìn)行緩存; (4) 對緩存的有效數(shù)據(jù)長度進(jìn)行判斷,若有效數(shù)據(jù)長度滿足發(fā)送條件,則在有效數(shù)據(jù)前 增加控制碼、標(biāo)識符和幀同步字后發(fā)送到接收終端,否則發(fā)送空幀到接收終端; 接收終端: (1) 對發(fā)送終端發(fā)送的數(shù)據(jù)幀進(jìn)行判斷,提取數(shù)據(jù)幀中的有效數(shù)據(jù)并緩存; (2) 對緩存的有效數(shù)據(jù)長度進(jìn)行判斷,若數(shù)據(jù)長度滿足要求,則進(jìn)行步驟(3); (3) 判斷接收終端聲碼器發(fā)送的channelpacket標(biāo)識信號是否有效,若有效則進(jìn)行步 驟⑷; (4) 在有效數(shù)據(jù)前插入包頭、長度、類型及域控標(biāo)識,將有效數(shù)據(jù)恢復(fù)成原始的channel packet格式數(shù)據(jù)發(fā)送給聲碼器; (5)聲碼器對channelpacket進(jìn)行解碼得到音頻數(shù)據(jù); (6) 判斷語音AD/DA芯片發(fā)送的幀同步信號是否有效,若有效則進(jìn)行步驟(7); (7) 聲碼器將解碼得到音頻數(shù)據(jù)發(fā)送給語音AD/DA芯片。2. -種語音數(shù)據(jù)處理和傳輸?shù)难b置,由發(fā)送終端和接收終端組成,其特征在于:發(fā)送 終端包括語音AD/DA芯片、FPGA核心處理器和聲碼器,F(xiàn)PGA核心處理器包括FPGA控制器、 校驗?zāi)K、FIFO緩存模塊、預(yù)處理模塊和串行發(fā)送模塊,所述的FPGA控制器對聲碼器和語 音AD/DA芯片實現(xiàn)配置和控制,所述的聲碼器對語音AD/DA芯片輸出的音頻數(shù)據(jù)進(jìn)行采樣 和編碼,所述的校驗?zāi)K對聲碼器編碼得到的channelpacket,進(jìn)行解串處理后對channel packet的包頭、類型和數(shù)據(jù)長度進(jìn)行校驗,提取channelpacket中的有效數(shù)據(jù),所述的 FIFO緩存模塊對有效數(shù)據(jù)進(jìn)行緩存,所述的預(yù)處理模塊判斷FIFO緩存模塊中的有效數(shù)據(jù) 是否滿足發(fā)送條件,若滿足則在有效數(shù)據(jù)前增加控制碼、標(biāo)識符和幀同步字后發(fā)送到接收 終端,否則發(fā)送空幀,所述的串行發(fā)送模塊將并行的有效數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù),完成數(shù)據(jù)幀 的發(fā)送功能; 所述的接收終端包括語音AD/DA芯片、FPGA核心處理器和聲碼器,F(xiàn)PGA核心處理器 包括FPGA控制器、串行接收模塊、有效數(shù)據(jù)判斷模塊、FIFO緩存模塊和有效數(shù)據(jù)后處理模 塊,所述的串行接收模塊接收發(fā)送終端發(fā)送的數(shù)據(jù)幀,將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)輸出,所 述的有效數(shù)據(jù)判斷模塊對發(fā)送終端發(fā)送的數(shù)據(jù)幀進(jìn)行判斷,提取數(shù)據(jù)幀中的有效數(shù)據(jù)緩存 到FIFO緩存模塊中,所述的有效數(shù)據(jù)后處理模塊對FIFO緩存模塊中的有效數(shù)據(jù)長度進(jìn)行 判斷,若數(shù)據(jù)長度滿足要求,且接收終端聲碼器發(fā)送的channelpacket標(biāo)識信號有效時, 有效數(shù)據(jù)后模塊在有效數(shù)據(jù)前插入包頭、長度、類型及域控標(biāo)識,將有效數(shù)據(jù)恢復(fù)成原始的 channelpacket格式發(fā)送給聲碼器,所述的聲碼器對channelpacket進(jìn)行解碼得到音頻數(shù) 據(jù),F(xiàn)PGA控制器當(dāng)語音AD/DA芯片發(fā)送的幀同步信號有效時,控制聲碼器將解碼得到音頻 數(shù)據(jù)發(fā)送給語音AD/DA芯片。
【專利摘要】一種語音數(shù)據(jù)處理和傳輸?shù)姆椒ê脱b置,在VPX總線硬件架構(gòu)上,以FPGA為核心處理器,實現(xiàn)了芯片的配置和控制、語音數(shù)據(jù)實時采集處理和高速數(shù)據(jù)雙向傳輸?shù)裙δ?。本發(fā)明為了滿足5kHz帶寬的信道傳輸要求,實現(xiàn)了2.4kHz低速語音編解碼。本發(fā)明無需額外的硬件電路設(shè)計,支持單路和多路數(shù)據(jù)處理和傳輸,具有控制靈活,F(xiàn)PGA資源占用少,編碼速率可調(diào),擴(kuò)展性高等特點。
【IPC分類】G10L19/18, G10L19/008
【公開號】CN105321522
【申請?zhí)枴緾N201410384615
【發(fā)明人】李爽, 趙媛, 程濤, 黃琬
【申請人】航天恒星科技有限公司
【公開日】2016年2月10日
【申請日】2014年8月6日