嵌入式音頻處理基礎(一)
音頻DAC
傳統的D/A轉換方法有加權電阻器、R-2R梯形網(wǎng)絡(luò )和零點(diǎn)交叉失真等。正如A/D中的情況那樣,Σ-Δ設計統治了D/A轉換的領(lǐng)域。這些轉換器可以接受16位44.1kHz的信號,然后使用插值濾波器把它轉換為2.8224MHz的1位樣點(diǎn)流。然后用1位的DAC把這些超級采樣的樣點(diǎn)流轉換成模擬信號。
一個(gè)典型的嵌入式數字音頻系統可以使用一個(gè)Σ-Δ音頻ADC和一個(gè)Σ-Δ DAC,因此,在PCM信號和過(guò)采樣流之間的轉換要進(jìn)行兩次。由于這個(gè)原因,Sony與Philips (NXP半導體)已經(jīng)在它們的Super Audio CD(SACD)格式中引入了一種與PCM不同的格式,被稱(chēng)為直接流數字(DSD)。這種格式用1位的高頻(2.8224MHz) Σ-Δ流來(lái)存儲數據,因而繞過(guò)了PCM轉換。它的缺點(diǎn)是,DSD流不像PCM那樣直觀(guān),而且需要一套獨立的數字音頻算法。
連接至音頻轉換器:一個(gè)ADC的例子
好了,我們有了足夠的背景知識?,F在讓我們看一下實(shí)際的轉換器連接的例子。對于低成本音頻ADC的很好的選擇是ADI公司的AD1871,它使用Σ-Δ技術(shù)以96kHz的速率進(jìn)行24位的轉換。圖3a示出了AD1871的功能框圖。這個(gè)轉換器有左(VINLx)和右(VINRx)兩個(gè)輸入聲道,這其實(shí)就是能夠處理立體聲數據的另外一種說(shuō)法。數字化的音頻數據是通過(guò)數據端口串行流出的,通常流到信號處理器的一個(gè)相應的串行端口(如Blackfin處理器上的SPORT接口)。另外還有一個(gè)SPI(串行外圍接口)端口,利用該端口,主處理器可對AD1871通過(guò)軟件命令進(jìn)行配置。這些命令包括設置采樣率、字長(cháng)、聲道增益和靜音等的方法,還有其他一些參數的設定。
圖3 (a)AD1871音頻ADC的功能框圖
(b) 一個(gè)ADSP-BF533媒體處理器與AD1871的無(wú)縫連接
正如圖3b中的框圖所指出的,AD1871 ADC與Blackfin處理器可無(wú)縫連接。電路的模擬部分被簡(jiǎn)化了,因為在這個(gè)討論中只有數字信號才是重要的。AD1871的過(guò)采樣率由外部晶振提供。圖中的處理器有2個(gè)串行端口(SPORT)和一個(gè)SPI端口,用于連接AD1871。被配置成I2S模式的SPORT是與AD1871進(jìn)行數據連接的端口,而SPI端口用作控制連接。
I2S協(xié)議是由Philips(NXP半導體)為音頻信號的數字傳輸而開(kāi)發(fā)的一個(gè)標準。該標準使音頻設備制造商所生產(chǎn)的器件可以相互兼容。
確切地說(shuō),I2S是一種用于傳輸立體聲數據的3線(xiàn)串行接口。正如圖4a中所示,它規定了位時(shí)鐘(中)、數據線(xiàn)(下)和左右同步線(xiàn)(上),而左右同步線(xiàn)用來(lái)選擇當前正在傳送的數據幀是左聲道的還是右聲道的。
從本質(zhì)上講,I2S是一個(gè)帶有兩個(gè)活動(dòng)聲道的時(shí)分復用(TDM)串行流。TDM是一種通過(guò)一條物理鏈路傳輸超過(guò)一個(gè)聲道(比如左聲道與右聲道)的方法。
在A(yíng)D1871電路結構中,當對SPORT時(shí)鐘(RSCLK)和幀同步(RFS)線(xiàn)進(jìn)行驅動(dòng)時(shí),ADC可以降低它從外部晶振接收到的12.288 MHz采樣率。該配置保證了采樣和數據傳輸是同步的。
SPI接口,如圖4b所示,是Motorola為了使主處理器可以與各種數字器件相連而設計的。這個(gè)在SPI主設備與SPI從設備之間的接口由一條時(shí)鐘線(xiàn)(SCK)、兩條數據線(xiàn)(MOSI和MISO)和一條從設備選擇(SPISEL)線(xiàn)組成。其中一條數據線(xiàn)由主設備(MOSI)驅動(dòng),而另一條由從設備(MISO)驅動(dòng)。在圖3b的例子中,處理器的SPI端口是無(wú)縫地與AD1871的SPI模塊相連接的。
圖4 (a)數據信號由AD1871使用I2S協(xié)議進(jìn)行傳送
(b) SPI 3線(xiàn)接口用于控制AD1871
帶有獨立SPI控制端口的音頻編解碼器允許主處理器在運行中修改ADC的設置。除了靜音和增益控制外,其中一個(gè)確實(shí)很有用的ADC(如AD1871)設置是對節電模式的設置能力。對于電池供電的應用來(lái)說(shuō),這通常是一個(gè)本質(zhì)功能。
DAC與編解碼器
將音頻DAC與主處理器相連接與我們才討論過(guò)的與ADC連接的過(guò)程完全一樣。在一個(gè)同時(shí)使用ADC和DAC的系統中,同一個(gè)支持雙向傳輸的串行端口可以同時(shí)連接這兩者。
但是,如果您正在考慮全雙工音頻,那么您最好采用一個(gè)可以同時(shí)完成模擬數字轉換和數字模擬轉換的單芯片音頻編解碼器。這樣的編解碼器的一個(gè)很好的選擇是ADI公司的AD1836,它有三個(gè)立體聲DAC和兩個(gè)立體聲ADC,而且可以通過(guò)多種串行協(xié)議進(jìn)行通訊,包括I2S。
在本文中,我們講到了將音頻轉換器與嵌入式處理器進(jìn)行連接的一些基本內容。在本文的第二部分,我們將敘述音頻數據在存儲和處理時(shí)的格式。我們將特別回顧在選擇數據字長(cháng)時(shí)的折衷方法。這是很重要的,因為這決定了所用的數據類(lèi)型,而且,如果希望獲得的質(zhì)量等級太高而某個(gè)特定器件達不到的時(shí)候,也可以避免選擇某些處理器。此外,數據字長(cháng)的選擇有助于在增加動(dòng)態(tài)范圍和增加處理能力之間的折衷選擇。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)低通濾波器相關(guān)文章:低通濾波器原理
脈寬調制相關(guān)文章:脈寬調制原理 數字濾波器相關(guān)文章:數字濾波器原理
評論