概述
數字音頻接口DAI,即Digital Audio Interfaces,顧名思義,DAI表示在板級或板間傳輸數字音頻信號的方式。相比于模擬接口,數字音頻接口抗干擾能力更強,硬件設計簡單,DAI在音頻電路設計中得到越來越廣泛的應用。圖1和圖2對比傳統的音頻信號和數字音頻信號鏈的區別。
在傳統的音頻電路(圖1)中有麥克風、前置放大器、模/數轉換器ADC、數/模轉換器DAC、輸出放大器,以及揚聲器,它們之間使用模擬信號連接。隨著技術的發展和對性能考慮,模擬電路逐漸被推到鏈路的兩端(集成到設備內部),信號鏈中各集成電路間將出現更多的數字接口形式。DSP通常都是數字接口的;換能器(Transducers, i.e. Mic & Speaker)、放大器一般而言只有模擬接口,但現在也正在逐漸集成數字接口功能。目前,集成電路設計人員正在將換能器內的ADC、DAC和調制器集成到信號鏈一端,這樣就不必在PCB上走任何模擬音頻信號,并且減少了信號鏈中的器件數量。圖2給出了一個完整數字音頻接口的例子。
傳統的音頻信號鏈路
數字音頻信號鏈路
數字音頻信號的傳輸標準,如I2S、PCM (Pulse Code Modulation) 和PDM (Pulse Density Modulation)主要用于同一塊電路板上芯片之間音頻信號的傳輸;Intel HDA (Intel High Definition Audio) 用于PC的Audio子系統(聲卡)應用;S/PDIF和Ethernet AVB主要應用于板間長距離及需要電纜連接的場合。
本文主要介紹I2S, PCM和PDM等數字音頻接口,主要它們是板內接口比較常用。
縮寫釋義
CAS:隨路信令,語音和信令在同一路話路中傳送的信令
CCS:共路信令,語音和信令分開傳輸
ASLA - Advanced Sound Linux Architecture
OSS - 以前的Linux音頻體系結構,被ASLA取代并兼容
Codec - Coder/Decoder
I2S/PCM/AC97 - Codec與CPU間音頻的通信協議/接口/總線
DAI - Digital Audio Interface 其實就是I2S/PCM/AC97/PDM/TDM等,實現音頻數據在CPU和Codec間的通信
DSP - Digital Signal Processor
Mixer - 混音器,將來自不同通道的幾種音頻模擬信號混合成一種模擬信號
Mute - 消音,屏蔽信號通道
PCM - Pulse Code Modulation 一種從音頻模擬信號轉換成數字信號的技術,區別于PCM音頻通信協議
采樣頻率 - ADC的頻率,每秒采樣的次數,典型值如44.1KHZ
量化精度 - 比如24bit,就是將音頻模擬信號按照2的24次方進行等分
SSI - Serial Sound Interface
DAPM - Dynamic Audio Power Management
Codec - 音頻編解碼器Codec負責處理音頻信息,包括ADC,DAC,Mixer,DSP,輸入輸出以及音量控制等所有與音頻相關的功能。Codec與處理器之間通過I2C總線和數字音頻接口DAI進行通信。
I2S接口
1. I2S簡介
I2S全稱Inter-IC Sound, Integrated Interchip Sound,或簡寫IIS,是飛利浦在1986年定義(1996年修訂)的數字音頻傳輸標準,用于數字音頻數據在系統內部器件之間傳輸,例如編解碼器CODEC、DSP、數字輸入/輸出接口、ADC、DAC和數字濾波器等。除了都是由飛利浦定義外,I2S和I2C沒有任何關系。
I2S是比較簡單的數字接口協議,沒有地址或設備選擇機制。在I2S總線上,只能同時存在一個主設備和發送設備。主設備可以是發送設備,也可以是接收設備,或是協調發送設備和接收設備的其它控制設備。在I2S系統中,提供時鐘(SCK和WS)的設備為主設備。圖3是常見的I2S系統框圖。在高端應用中,CODEC經常作為I2S的主控設備以精確控制I2S的數據流。
I2S系統通信配置框圖
IIS 特性
1、 先傳高位再傳低位
2、數據的MSB從LRCLK邊沿起延遲1 BCLK
3、主要有三個時鐘
主時鐘 MCLK
系統時鐘,一般是12.288MHz 18.432MHz等 ,一般是位時鐘(Bclk)的256倍或384倍
位時鐘 BCLK(也有叫串行) 傳輸一位數據的時鐘周期
幀時鐘 LRCLK 低電平左聲道 高電平右聲道
4、串行SDDATA 用二進制補碼表示的音頻數據
5、其他方式
左對齊 數據的MSB在LRCLK邊沿起第一個BCLK上升沿 用的比較少
右對齊 數據的LSB靠左LRCLK的上升沿 sony使用這種格式
6、電壓(TTL) 輸出 VL <0.4V VH>2.4V 輸入電壓 VIL=0.8V VIH=2.0V
與PCM相比,IIS更適合于立體聲系統,用于傳音樂。
在I2S/PCM接口的ADC/DAC系統中,除了BCLK和FS(LRCLK)外,CODEC經常還需要控制器提供MCLK (Master Clock),這是由CODEC內部基于Delta-Sigma (ΔΣ)的架構設計要求使然。MCLK時鐘頻率一般為256*FS,具體參考特定器件手冊。
IIS僅僅是PCM的一個分支,接口定義都是一樣的
它們有四組信號: 位時鐘信號,同步信號,數據輸入,數據輸出。
PCM一般傳單聲道的聲音,也可以傳立體聲,采樣頻率一般為8KHz。
IIS一般傳立體聲,比PCM多了一個線路。數據格式都為PCM格式。左/右聲道的一個采樣點編碼一般為16位(量化深度),兩個聲道加起來為32位。
I2S只能傳2個聲道的數據,PCM一個復幀可以傳多達32路數據。
AC97
AC97(Audio Codec 1997)是以Intel為首的五個PC廠商Intel、Creative Labs、NS、Analog Device與Yamaha共同提出的規格標準。與PCM和IIS不同,AC’97不只是一種數據格式,用于音頻編碼的內部架構規格,它還具有控制功能。AC’97采用AC-Link與外部的編解碼器相連,AC-Link接口包括位時鐘(BITCLK)、同步信號校正(SYNC)和從編碼到處理器及從處理器中解碼(SDATDIN與SDATAOUT)的數據隊列。AC’97數據幀以SYNC脈沖開始,包括12個20位時間段(時間段為標準中定義的不同的目的服務)及16位“tag”段,共計256個數據序列。例如,時間段“1”和“2”用于訪問編碼的控制寄存器,而時間段“3”和“4”分別負載左、右兩個音頻通道。“tag”段表示其他段中哪一個包含有效數據。把幀分成時間段使傳輸控制信號和音頻數據僅通過4根線到達9個音頻通道或轉換成其他數據流成為可能。與具有分離控制接口的IIS方案相比,AC’97明顯減少了整體管腳數。一般來說,AC’97編解碼器采用TQFP48封裝。
PDM(脈沖密度調制)[一般用于數字mic]
PDM(Pulse Density Modulation)是一種用數字信號表示模擬信號的調制方法。同為將模擬量轉換為數字量的方法,PCM使用等間隔采樣方法,將每次采樣的模擬分量幅度表示為N位的數字分量(N = 量化深度),因此PCM方式每次采樣的結果都是N bit字長的數據。PDM則使用遠高于PCM采樣率的時鐘采樣調制模擬分量,只有1位輸出,要么為0,要么為1。因此通過PDM方式表示的數字音頻也被稱為Oversampled 1-bit Audio。相比PDM一連串的0和1,PCM的量化結果更為直觀簡單。
在以PDM方式作為模數轉換方法的應用接收端,需要用到抽取濾波器(Decimation Filter)將密密麻麻的0和1代表的密度分量轉換為幅值分量,而PCM方式得到的就已經是幅值相關的數字分量。圖20示意為通過PDM方式數字化的正弦波。
PCM方式的邏輯更加簡單,但需要用到數據時鐘,采樣時鐘和數據信號三根信號線;PDM方式的邏輯相對復雜,但它只需要兩根信號線,即時鐘和數據。PDM在諸如手機和平板等對于空間限制嚴格的場合有著廣泛的應用前景。在數字麥克風領域,應用最廣的就是PDM接口,其次為I2S接口。PDM格式的音頻信號可以在比如LCD屏這樣Noise干擾強的電路附近走線(等于沒說,這里指數字信號抗干擾能力相比于模擬信號更強,同樣PCM也具有此優勢)。
通過PDM接口方式,傳輸雙聲道數據只要用到兩根信號線。如圖21示意兩個PDM接口的發送設備與同一個接收設備的連接情況,比如Source 1/2分別作為左右聲道的麥克風,通過這種方式可以將采集到的雙聲道數據傳送到接收設備。主設備(此例中作為接收設備)為兩個從設備提供時鐘,分別在時鐘的上升沿和下降沿觸發選擇Source 1/2作為數據輸入。
在PDM輸出麥克風內部,可以發現一個小型ADC IC(調制器),其用于將MEMS傳感器輸出的模擬信號轉換為PDM信號流。這種音頻轉換器技術所生成的信號,其低頻頻譜接近所需音頻信號,而高頻寄生部分的頻率在某個拐點頻率之上隨頻率上升快速升高,基本落在最終產品需要使用的音頻頻率范圍之外。對于每一個采樣點,用1bit就可以記錄,也就是說,僅僅用表示“否”的“0”和表示“是”的“1”去記錄這一個采樣點的電平值。DSD的編碼過程中,對信號進行量化的方式和PCM完全不一樣。具體原理如下:首先是Δ調制這個概念試想一下,我們不像PCM那樣用一組規定的電平值去度量,而是只使用一個固定的差值Δ去度量原始模擬信號。依然是隔一段時間間隔取一次樣,每次取樣得到的電平會拿來與上一次取樣的信號進行比較,如果其差值大于Δ,則輸出1(0),否則輸出為0(1)。于是每個采樣點就能以1bit的形式來表示,而不是像PCM、I2S用8位、16位的量化深度去表示。
但是Δ調制有著一個缺點,就是隨著輸入模擬信號的頻率增高,信噪比SNR會急劇下降。我們可以通過減小Δ的值,并且增大采樣頻率,來控制量化噪聲(通過增大采樣頻率和減小Δ值來使確保采樣的電平差值不會過大)。
PDM的主體思想就是這樣,每一個采樣的值是上一個采樣的相對值,前后采樣點相互連系密不可分。這種量化方式的思想因為其連續性,更加接近自然中的聲音。
為了克服Δ調制的缺陷,發展出了∑-Δ調制器(Sigma-Delta Modulator)
如上圖,如果我們在信號的輸入端再加一個差分器,信號從差分器正相輸入,然后通過一個積分器,然后到Δ調制器(A/D),把Δ調制后的結果進行一次D/A轉換,并且延時輸入到差分器的反相端作為反饋,這就是一個完整的∑-Δ調制器了(應該都知道∑是什么意思)。
輸入信號被發送到差分區,在差分塊中從中減去反饋信號。產生的信號被發送到積分器,積分器的輸出作用于比較器。比較器將參考電壓與積分器的輸出進行比較,并相應地產生“0”或“1”。
反過來,DAC由ADC輸出的0和1去產生兩個可用參考電壓(最高電平或最低電平)。該參考電壓被反饋到差值區。這個差分放大器的反饋設計使得DAC的輸出平均值等于輸入信號。DAC的輸出是輸入信號的模擬表示,即調制器的輸出。
整體的量化方式思路還是和Δ調制類似,不過反饋回路差分放大器的反相輸入端的電平為整個信號的最大值(邏輯1對應的模擬電壓)或最小值(邏輯0對應的模擬電壓),即Δ調制輸出1,則反饋回Vmax,輸出0,則反饋回Vmin,兩者均為固定值。
也就是說積分器積分的是輸入電平與最高或最低電平的差值,然后我們再對積分后結果進行一次Δ調制(這個過程可能不是那么容易想通,把原信號當成是某函數f(x)的導數,然后我們對f(x)來進行Δ調制量化,這樣也許會更好理解一點)。
這樣一來,量化的對象就變成了當前信號電平和先前所有差值和的差值,量化電平不再會受頻率影響,最大量化范圍直接取決于電平值。反饋中加入的延時電路使得∑-Δ調制器有著噪聲整形的特征,一階的∑-Δ調制器的噪聲整形效果不明顯,但是我們可以把多階∑-Δ調制器疊加到一起,使得噪聲整形效果達到一個較高水平。
這個噪聲整形的具體結果就是,量化噪聲總體量沒有變,但是不是平均分布在所有頻段上,低頻段的量化噪聲會較少,而高頻的量化噪聲會較多.也就是說,量化噪聲被"推擠"到了高頻中.在音頻應用中,大部分量化噪聲被推擠到了遠超過20kHz的高頻,也就是人耳聽不到的頻段,利用一個低通濾波就可以很簡單地把這些噪聲給干掉了。
PDM就是經過了以上的∑-Δ調制而得到的數字信號,如果把這一連串數字信號放在同一標尺上和原始信號相比,會發現數字"0"和"1"隨著信號電頻的增減成都而密度產生相應變化,所以稱為是脈沖密度調制**(Pulse Density Modulation)。
從實際工程設計的角度來看,典型PDM麥克風應有電源引腳、接地引腳,當然還需要時鐘輸入引腳、數據輸出引腳和通道選擇引腳**。根據通道選擇引腳的狀態,麥克風的輸出在時鐘信號處于低電平或高電平狀態為活躍狀態,在另一狀態下處于高阻抗。這種聰穎的設計意味著可以用一根話筒線多路復用兩個麥克風,這樣立體聲PDM接口僅需兩根線纜,即時鐘輸出線纜和一根同時支持兩個聲道的數據返回線。
在以PDM方式作為模數轉換方法的應用接收端,需要用到抽取濾波器(Decimation Filter)將密密麻麻的0和1代表的密度分量轉換為幅值分量。PDM方式的邏輯相對復雜,但它只需要兩根信號線,即時鐘和數據。
PDM在諸如手機和平板等對于空間限制嚴格的場合有著廣泛的應用前景。在數字麥克風領域,應用最廣的就是PDM接口,其次為I2S接口。PDM格式的音頻信號可以在比如LCD屏這樣Noise干擾強的電路附近走線(等于沒說,這里指數字信號抗干擾能力相比于模擬信號更強,同樣PCM也具有此優勢)。
下圖為Maxim的Class-D類型功放MAX98358對PDM接口時序的要求,可以看到它在PDM_CLK的上升沿采樣左聲道數據,在PDM_CLK下降沿采樣右聲道數據。、
MIPI SLIMbus
SLIMbus詳細介紹
SLIMBUS,全稱 Serial Low-power Inter-chip Media Bus,是MIPI聯盟指定的一種音頻接口,用于連接基帶/應用處理器和音頻芯片,總線協議保證既能發控制信息,又能發數據信息,這樣就可以替換傳統的數據和控制兩種接口如I2S和I2C。SLIMbus v2.0是兩線制,多分支TDM接口,支持多主機和多個設備。它采用以高達28MHz的單數據速率(SDR)運行的CMOS I / O,具有固定的幀大小,支持主控和時鐘切換功能,以實現低功耗操作。SLIMbus v2.0還支持多個多通道,高質量音頻流,相位相干性,以實現立體聲,麥克風陣列和其他引人注目的功能。它還支持每臺設備最多八個通道的可擴展帶寬,以使峰值聚合帶寬最高達到224Mbps。
MIPI SoundWire
MIPI SoundWire是MIPI SLIMbus的補充規范。SoundWire于2014年推出,整合了移動和PC行業音頻接口中的關鍵屬性,并提供了一種通用的,可擴展的體系結構,可用于在各個細分市場的多種類型的設備中啟用全面的音頻功能。
MIPI SoundWire是一個統一接口,主要用于小型音頻外圍設備。它針對低復雜度,低門數設計進行了優化,以支持在手機中使用成本敏感的音頻組件,例如數字麥克風,數字揚聲器和高級放大器。此外,它可以優化揚聲器保護,麥克風功率和性能,噪聲消除以及“始終聽”音頻輸入。
SoundWire具有許多SLIMbus功能。SoundWire v1.1還采用CMOS I / O,并支持多達11個從設備,多通道音頻,PDM格式以及帶內控制/中斷/喚醒。但是,它以高達12.288MHz(高達24.576 Mbps)的雙數據速率(DDR)模式運行,并支持可配置的幀大小和增強的低延遲協議。多達8個數據通道的可選多通道擴展可用于支持高端音頻應用。例如,八通道192 KHz 24位音頻需要8 * 24 * 192000 = 36.864 Mbps,這將需要兩個或更多通道,而它可能以較低的頻率運行以相應地優化功率。
MIPI SoundWire和MIPI SLIMBus可以通過橋接解決方案在系統中協同運行,從而為移動或受移動平臺影響的平臺提供靈活而復雜的音頻系統。
SLIMbus是具有成熟音頻組件的成熟規范,已部署在高級智能手機和受移動設備影響的平臺中。SoundWire作為高端智能手機平臺中的數字麥克風和揚聲器的推動者正在迅速獲得發展勢頭.
其他
SPDIFSony/Philips Digital Interface 是SONY、PHILIPS數字音頻接口的簡稱。
就傳輸方式而言,SPDIF分為輸出(SPDIF OUT)和輸入(SPDIF IN)兩種.
就傳輸載體而言,SPDIF又分為同軸和光纖兩種,其實信號是相同的.
S/PDIF往往被用來傳輸壓縮過的音頻訊號,它由 IEC 61937標準而定制。
它通常被用在支持杜比技術或DTS 環繞效果的家用DVD影院上,不分正負。
A2B 協議
ADI 針對 車內解決復雜布線 設定的協議 有主機 和從機 支持幻象供電 最多32路數據 雙絞線 可以傳輸I2C 控制信號及數據
INIC 協議
Microchip 針對車內實現音視頻傳輸解決方案,最大支持50Mbps 帶寬 |