1. 程式人生 > >智慧硬體設計中如何選什麼音訊介面I2S、PDM、TDM?

智慧硬體設計中如何選什麼音訊介面I2S、PDM、TDM?

在智慧硬體和物聯網產品設計中,經常遇到聲音的傳輸。本文主要講一下最常用的音訊介面,以及使用場景。

主要分類:模擬、數字(I2S、PCM、PDM、TDM)

模擬音訊,就是功放輸出的,驅動音箱和喇叭的音訊。模擬麥克風取樣回來的資料也是模擬音訊。通常會有單端或差分兩種訊號。

數字音訊,不能直接驅動喇叭,必須要通過DAC轉換成模擬音訊,才能發出聲音來。數字音訊的介面比較多,目前較為通用的是I2S、PCM、PDM和TDM介面。

音訊介面設計詳解!智慧硬體設計,I2S、PDM、TDM選什麼介面?

什麼時候用模擬的?

在智慧硬體產品中,模擬音訊主要用在:喇叭播放聲音、Line-in外接音源、麥克風輸入等。裝置外的音訊傳輸一般使用模擬訊號。

通常看到的音訊波形,都是模擬音訊,能夠和聲音實際的波動完全對應起來

音訊介面設計詳解!智慧硬體設計,I2S、PDM、TDM選什麼介面?

當前有不少音訊產品使用D類音訊功放,輸出波形看起來是,但實際上還是屬於模擬音訊型別的。是高頻載波疊加的模擬音訊的波形,經過LC濾波之後能夠還原成模擬音訊波形

如下圖,下半部分是D類功放輸出的方波狀的音訊訊號,上半部分的正玄波是還原出來的模擬音訊波形。

音訊介面設計詳解!智慧硬體設計,I2S、PDM、TDM選什麼介面?

                                                                                   D類功放輸出的方波狀的模擬音訊訊號

什麼時候用數字介面?

智慧硬體產品的裝置內音訊傳輸,採用I2S、PCM、TDM、PDM等數字介面。

  • I2S速度快,專門用於傳音樂。

從MCU往Codec傳音樂資料,一般使用I2S。包含主時鐘、左右聲道時鐘、正反兩根資料線。

如下圖的I2S介面的時序,最典型的特徵是LRCLK,用於區分左右聲道的時鐘。

音訊介面設計詳解!智慧硬體設計,I2S、PDM、TDM選什麼介面?

                                                                                                       I2S介面的時序

  • PCM/TDM,主要用來傳語音

這裡講的PCM不是PCM編碼,而是PCM介面。和I2S差不多,也是4根線,通常用於AP處理器和通訊MODEM之間傳輸語音資料(就是雙向打電話的資料)。

AP處理器和藍芽之間也是通過PCM來傳輸語音資料,打電話的藍芽資料走的是PCM,放音樂的藍芽資料走的是串列埠(不是PCM)。

I2S只能傳2個聲道的資料,PCM可以傳多達16路資料,採用時分複用的方式,就是TDM。像現在最流行的語音智慧音箱的7麥克風矩陣,一般都是用TDM來傳的資料,同時可以傳輸7路麥克風輸入和3路以上的音訊反饋訊號。

如下圖是某智慧音箱,7個麥克風通過5個ADC,接入一組TDM介面上,傳輸給AP處理器。

音訊介面設計詳解!智慧硬體設計,I2S、PDM、TDM選什麼介面?

                                                                                         某智慧音箱TDM介面(區域性)

  • PDM,只有2根線,傳音樂,編碼方式和I2S不同。

很多數字麥克風使用的PDM介面,有資料和時鐘兩根線。PDM介面和I2S最大的區別是編碼方式不同。

音訊介面設計詳解!智慧硬體設計,I2S、PDM、TDM選什麼介面?

                                                                                          PDM和I2S介面的數字麥克風

其他數字介面:USB

除了上述幾個,在很多外接的音訊模組上,用的是USB音訊。

像科大訊飛的多mic降噪模組,用的就是usb介面,方便除錯。

但是萬變不離其宗,不管用的什麼介面,傳輸的都是PCM或者PDM編碼的數字音訊。