程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> SoC設計中杜比數字加的實現優化

SoC設計中杜比數字加的實現優化

編輯:關於C++

杜比數字加——最新一代的杜比數字技術,正在進入下一代家庭娛樂應用,將給人們帶來超級的音質,更高效率的音頻壓縮,以及更完善的用戶體驗。杜比數字加,或者叫做增強型AC-3(E-AC-3),已經發展到能夠滿足目前尚處於萌芽階段的兩個市場(即高清DVD和藍光播放機)的各種需求。對於新興的高清DVD和藍光播放機來說,杜比數字加的數據壓縮能力使得人們能夠在電影制作室裡實現高清視頻與超級語音體驗的完美結合。該技術同樣還可以提升最新的數字電視機頂盒的性能,使得廣播公司能夠以較低的比特率來開展業務,降低成本並增加靈活度,從而受益於消費者。

在一個芯片或一個系統能夠使用杜比數字加標識之前,嚴格的認證測試是必不可少的。MIPS科技公司與杜比實驗室一道,研發出了最優的、在其32位綜合處理器內核的任意一個上面運行的測試版杜比數字加,這將大大縮短音頻系統的研發時間。

家庭娛樂市場上的新興標准

高清DVD和藍光盤:杜比數字加在高清DVD規范中是強制性的,而在蘭光盤中是可選的。該規范還支持多路分離的語音流,使得一部電影可以同時跑在多個獨立的音道上或者支持多種語言。

有史第一次,高清DVD和藍光播放機允許在盤片出售給消費者之後將來自互聯網上的外部碼流與盤上的本地語音進行合成。例如,可以用盤上的聲道來為高清視頻進行伴音,同時還能與來自攝影棚裡的導演的最新解說詞進行混音。

下一代的機頂盒:對於一個完整的體驗來說,高清電視取決於高質量的語音。廣播和網絡運營商都在尋求大幅改進其業務的途徑。

杜比數字加的高壓縮比支持低至224kbps的5.1環繞聲,從而使得廣播公司能夠提升他們的業務。對於那些使用160-256kbps的MPEG立體聲的廣播公司來說,他們可以采用實質上相同的帶寬來升級到5.1通道環繞聲(見圖1)。

圖1:升級到杜比數字加為廣播公司帶來的優勢。

杜比數字加能夠與全球范圍內安裝的、3600多萬台用S/PDIF連接的低級杜比數字音/視頻接收機後向兼容(圖2a)。

圖2a:從機頂盒或光盤播放機到一台A/V接收機的S/PDIF連接要求杜比數字加碼流被轉換成一個640kbps 的杜比數字比特流。

利用在新機頂盒中日益普及的高速HDMI接口,可以將杜比數字加碼流(無論經過編碼與否)直接傳送到一台新一代的接收機上,產生前所未有的更高質量的語音效果(見圖2b)。  

圖2b:機頂盒上的HDMI接口使得全杜比數字加碼流能夠直接傳輸。

杜比數字加的實現方法

杜比數字加參考軟件是利用浮點C代碼書寫的,並提供在設備或DSP中的使用授權,然後再將設備和DSP送到杜比實驗室進行核准測試。

杜比實驗室為使用者提供兩套測試:一種是以低水平訓練算法各部分的測試向量,並將被測譯碼器的輸出與參考方案的輸出進行比較;另一項是更嚴格的測試,即利用精密的音頻測試設備來檢驗最終實現方案。在提交給杜比實驗室之前,應該內部先通過這兩項測試。

為了得到MIPS和杜比認證授權,代碼的MIPS優化版本將過程進行了流水線化,並提供高質量的實現方案。采用與批准的代碼可以大大降低實現風險並幫助確保能夠快速地通過杜比實驗室的核准(圖3)。

圖3:采用MIPS優化代碼可為杜比數字加系統芯片和設備的研發和核准過程節約數月的時間。

優化MIPS32的實現

在嵌入式系統中,效率最高的音頻算法采用定點算法而不是浮點算法。因此,杜比參考實現方案的第一步就是轉換浮點參考代碼。

高質量的轉換需要選擇一個能夠實現動態范圍和精度間的最佳平衡的定點表示方法。最重要的是,選擇最佳的表示方法就可以免去每次操作後的飽和度檢查,從而大大改善了運行時間性能。

MIPS技術利用一個廣域仿真和測試流程來實現這一轉換過程,確保了實現方案將能滿足杜比實驗室頒布的嚴格的語音質量標准。一個抽象的C++定點類跟蹤整個算法過程中所需數據的動態范圍和精度。在仿真過程的最後,定點表示和運算將被選擇,並被硬連接回到一個純C的實現中。

轉換源代碼到定點已經成為一種優化方式。MIPS軟件開發環境(SDE)編譯工具系列能夠生成高效率的代碼,該工具打算用於專用的MIPS核流水線。

軟音頻接口集成

在生成一個杜比數字加代碼的全優化定點實現後,MIPS將壓縮解碼器-轉換器與其軟音頻接口(SAI)集成在一起-,SAI是一個由所有MIPS優化的音頻編解碼器支持的標准API。通過對采用MIPS軟語音算法的方法標准化,SAI還簡化了用於不同的或變化的語音處理任務的應用層代碼的復用,並使得利用共享的中間存儲緩沖器級聯多路語音編解碼更加容易(見圖4)。所有這些都將賦予系統設計師極大的靈活性。

圖4:將浮點杜比代碼轉換成高度優化的定點MIP32代碼的流程。

該方案也可以使系統具有可升級能力。一個小型低成本,入門級的4KE內核可以用於低帶寬杜比數字加的實現,同時最新的多線程的34K內核可被用於高清實現和一個主控制器(圖5)。

圖5:經測試和優化的杜比數字加代碼可以被用在所有系列的MIPS內核上。

最後,對於研發人員來說,設計一個多核系統具有明顯的優勢。團隊利用一個通用研發環境使合作和系統調試更加容易,而且還簡化了負載均衡。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved