在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

I2S、TDM、PCM音頻總線

倩倩 ? 來源:硬件測試雜談 ? 作者:硬件測試雜談 ? 2022-09-20 11:01 ? 次閱讀

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的數據流。

fe0b22b6-388c-11ed-ba43-dac502259ad0.png

I2S包括兩個聲道(Left/Right)的數據,在主設備發出聲道選擇/字選擇(WS)控制下進行左右聲道數據切換。通過增加I2S接口的數目或其它I2S設備可以實現多聲道(Multi-Channels)應用。

2. 信號定義

在I2S傳輸協議中,數據信號、時鐘信號以及控制信號是分開傳輸的。I2S協議只定義三根信號線:時鐘信號SCK、數據信號SD和左右聲道選擇信號WS。

時鐘信號 Serial Clock

SCK是模塊內的同步信號,從模式時由外部提供,主模式時由模塊內部自己產生。不同廠家的芯片型號,時鐘信號叫法可能不同,也可能稱BCLK/Bit Clock或SCL/Serial Clock

數據信號 Serial Data

SD是串行數據,在I2S中以二進制補碼的形式在數據線上傳輸。在WS變化后的第一個SCK脈沖,先傳輸最高位(MSB, Most Significant Bit)。先傳送MSB是因為發送設備和接收設備的字長可能不同,當系統字長比數據發送端字長長的時候,數據傳輸就會出現截斷的現象/Truncated,即如果數據接收端接收的數據位比它規定的字長長的話,那么規定字長最低位(LSB: Least Significant Bit)以后的所有位將會被忽略。如果接收的字長比它規定的字長短,那么空余出來的位將會以0填補。通過這種方式可以使音頻信號的最高有效位得到傳輸,從而保證最好的聽覺效果。

根據輸入或輸出特性,不同芯片上的SD也可能稱SDATA、SDIN、SDOUT、DACDAT、ADCDAT等;

數據發送既可以同步于SCK的上升沿,也可以是下降沿,但接收設備在SCK的上升沿采樣,發送數據時序需考慮

左右聲道選擇信號 Word Select

WS是聲道選擇信號,表明數據發送端所選擇的聲道。當:

WS=0,表示選擇左聲道

WS=1,表示選擇右聲道

WS也稱幀時鐘,即LRCLK/Left Right Clock。WS頻率等于聲音的采樣率。WS既可以在SCK的上升沿,也可以在SCK的下降沿變化。從設備在SCK的上升沿采樣WS信號。數據信號MSB在WS改變后的第二個時鐘(SCK)上升沿有效(即延遲一個SCK),這樣可以讓從設備有足夠的時間以存儲當前接收的數據,并準備好接收下一組數據。

3. I2S操作模式

根據SD相對于SCK和WS位置的不同,I2S分為三種不同的操作模式,分別為標準I2S模式、左對齊模式和右對齊模式:

I2S Phillips Standard I2S格式

Left Justified Standard 左對齊格式

Right Justified Standard 右對齊格式

I2S模式屬于左對齊中的一種特例,也叫PHILIPS模式,是由標準左對齊格式再延遲一個時鐘位變化來的。時序如下圖所示,左聲道的數據MSB在WS下降沿之后第二個SCK/BCLK上升沿有效,右聲道數據的MSB在WS上升沿之后第二個SCK/BCLK上升沿有效。

fe39c0a8-388c-11ed-ba43-dac502259ad0.png

標準左對齊較少使用,下圖為左對齊時序圖,和PHILIPS格式對比可以看出,標準左對齊格式的數據的MSB沒有相對于BCLK延遲一個時鐘。左對齊格式的左聲道的數據MSB在WS上升沿之后SCK/BCLK的第一個上升沿有效;右聲道的數據MSB在WS下降沿之后SCK/BCLK第一個上升沿有效。標準左對齊格式的優點在于,由于在WS變化后的第一個SCK上升沿就開始采樣,它不需要關心左右聲道數據的字長,只要WS的時鐘周期足夠長,左對齊的方式支持16-32bit字長格式。

fe570e60-388c-11ed-ba43-dac502259ad0.png

標準右對齊也叫日本格式,EIAJ (Electronic Industries Association of Japan) 或SONY格式,下圖為右對齊時序圖。右對齊格式左聲道的數據LSB在WS下降沿的前一個SCK/BCLK上升沿有效,右聲道的數據LSB在WS上升沿的前一個SCK/BCLK上升沿有效。相比于標準左對齊格式,標準右對齊的不足在于接收設備必須事先知道待傳數據的字長。這也解釋了為什么許多CODEC都會提供多種右對齊格式選擇功能。

注:

標準左對齊和標準右對齊模式的LRCK/WS高低電平對應的左右聲道與標準I2S模式的規定恰好相反!標準左右對齊LRCK/WS高電平對應左聲道,LRCK/WS低電平對應右聲道;而I2S低電平對應左聲道,LRCK/WS高電平對應右聲道!

4. I2S數據時鐘(SCK)頻率計算

例如:設聲音的采樣頻率為44.1 kHz,即聲道選擇信號(幀時鐘)WS的頻率必須也為44.1 kHz;左/右2個聲道的量化深度均為16 bit,則I2S的SCK的頻率為:44.1 kHz×16×2=1.4112 MHz

SCK = 采樣率 * 位寬 * 通道數

WS = 采樣率

如果需要傳輸20 bit、24 bit或32 bit的左右聲道的數據,可以提高SCK的頻率,由上式可以計算出需要的SCK的頻率。

PCM接口

1. PCM簡介

PCM (Pulse Code Modulation) 是通過等時間隔(即采樣率時鐘周期)采樣將模擬信號數字化的方法。下圖為 4 bit 采樣深度的PCM數據量化示意圖。

fe87b498-388c-11ed-ba43-dac502259ad0.png

PCM數字音頻接口,即說明接口上傳輸的音頻數據通過PCM方式采樣得到的,以區別于PDM方式。在音頻領域,PCM接口常用于板級音頻數字信號的傳輸,與I2S相似。PCM和I2S的區別于數據相對于幀時鐘(FSYNC/WS)的位置、時鐘的極性和幀的長度。其實,I2S上傳輸的也是PCM類型的數據,因此可以說I2S不過是PCM接口的特例。

相比于I2S接口,PCM接口應用更加靈活。通過時分復用(TDM, Time Division Multiplexing)方式,PCM接口支持同時傳輸多達N個(N>8)聲道的數據,減少了管腳數目(實際上是減少I2S的“組”數,因為每組I2S只能傳輸兩聲道數據嘛)。TDM不像I2S有統一的標準,不同的IC廠商在應用TDM時可能略有差異,這些差異表現在時鐘的極性、聲道配置的觸發條件和對閑置聲道的處理等。

TDM/PCM數字音頻接口的硬件拓撲結構也與I2S相近。

綜合不少廠商的數據手冊,筆者發現,在應用PCM音頻接口傳輸單聲道數據(如麥克風)時,其接口名稱為PCM;雙聲道經常使用I2S;而TDM則表示傳輸兩個及以上聲道的數據,同時區別于I2S特定的格式。

2. 信號定義

PCM接口與I2S相似,電路信號包括:

PCM_CLK 數據時鐘信號

PCM_SYNC 幀同步時鐘信號

PCM_IN 接收數據信號

PCM_OUT 發送數據信號

TDM/PCM與I2S接口對應關系見下表:

fede1e00-388c-11ed-ba43-dac502259ad0.png

3. 操作模式

根據 SD相對幀同步時鐘FSYNC的位置,TDM分兩種基本模式:

Mode A: 數據在FSYNC有效后,BCLK的第2個上升沿有效

Mode B: 數據在FSYNC有效后,BCLK的第1個上升沿有效

ff0e4274-388c-11ed-ba43-dac502259ad0.png

ff3e9c44-388c-11ed-ba43-dac502259ad0.png

注:由于沒有統一標準,不同廠商對Mode A和Mode B定義可能有所差別。

在實際應用中,總是以幀同步時鐘FSYNC的上升沿表示一次傳輸的開始。幀同步時鐘的頻率總是等于音頻的采樣率,比如44.1 kHz,48 kHz等。多數應用只用到FSYNC的上升沿,而忽略其下降沿。根據不同應用FSYNC脈沖寬度的差別,PCM幀同步時鐘模式大致分為兩種:

長幀同步 Long Frame Sync

短幀同步 Short Frame Sync

注:

a. 長幀同步,如圖所示,FSYNC脈沖寬度等于1個Slot的長度。Slot在TDM中表示的是傳輸單個聲道所占用的位數。如圖所示TI McASP接口的TDM包括6個Slots,即它最多可包括6聲道數據。注意,Slot的位數并不一定等于音頻的量化深度。比如Slot可能為32 bit,其中包括24 bit有效數據位(Audio Word) + 8 bit零填充(Zero Padding)。不同廠商對Slot的叫法可能有所區別,比如Circus Logic稱之為Channel Block;

ff649688-388c-11ed-ba43-dac502259ad0.png

b. 短幀同步,FSYNC脈沖寬度等于1個BCLK周期長度;

c. 由于沒有統一標準,不同廠商對FSYNC脈沖寬度及觸發邊沿的設置可能不同,以器件手冊為準。

ffbe88a0-388c-11ed-ba43-dac502259ad0.png

8-bit長幀同步模式

ffe7b8a6-388c-11ed-ba43-dac502259ad0.png

16bit 長幀同步模式

5. 時鐘(BCLK)頻率的計算

FSYNC的頻率等于音頻的采樣率(例如44.1 kHz,48 kHz等)。Frame每次傳輸包括所有聲道的數據。PCM采樣音頻數據量化深度一般在16-32bit(最常見為16/24bit)。那么對于8聲道,每個聲道32bit音頻數據,采樣率48kHz的系統,TDM的系統時鐘速率為:8 × 32 × 48kHz = 12.288 MHz

BCLK = 采樣率 * 位寬 * 通道數

FYNC = 采樣率

在器件Datasheet中,可以見到TDM128/TDM256/TDM384/TDM512等說法,數字的含義為單個TDM數據幀包含數據的比特數(即幀長)。TDM128:16bit * 8 channel。TDM256:32bit * 8channel。依次類推。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據信號
    +關注

    關注

    0

    文章

    58

    瀏覽量

    11971
  • I2S
    I2S
    +關注

    關注

    1

    文章

    64

    瀏覽量

    41928
  • 時鐘信號
    +關注

    關注

    4

    文章

    448

    瀏覽量

    28568

原文標題:I2S、TDM、PCM音頻總線

文章出處:【微信號:硬件測試雜談,微信公眾號:硬件測試雜談】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    多顆PCM1808共用I2S總線遇到的問題求解

    請教大家一個問題,目前我在開發一個產品:用4顆PCM1808將7.1聲道的模擬信號轉換為I2S信號,然后給到TAS5548進行處理,那么就遇到4顆PCM1808共用SCLK 、LRCK 、MCLK
    發表于 11-04 07:50

    PCM3070如何切換I2S信號和ADC的信號?

    本人最近正在做PCM3070這款芯片的應用。由于沒有EVM,所以也沒有用TI提供的GDE設計軟件,自己看手冊摸索著做,現在情況是PCM3070作為從器件,I2S輸入,可以出聲。然后接下去我要做
    發表于 11-01 08:26

    請問PCM1864音頻信號輸入到對應I2S數據輸出的延遲時間是多少?

    PCM1864音頻信號輸入到對應I2S數據輸出的延遲時間是多少
    發表于 10-29 08:33

    SRC4192能否支持輸入TDM格式音頻數據,輸出I2S,進行數據格式轉換?

    SRC4192這款芯片能否支持輸入TDM格式音頻數據,輸出I2S,進行數據格式轉換。在我看TI這款芯片的datasheet時候管腳描述如下: 我理解是可以TDM輸入的,可是后面關于輸
    發表于 10-25 11:41

    PCM5100A是可以支持3線I2S數據的,為什么無法聽到正常的音頻?

    我打算設計一個前級音頻,數字傳輸部分輸出I2S接口,芯片沒有提供主時鐘信號,看貴司PCM5100A是可以支持3線I2S數據的。芯片沒有檢測到MCLK就會內部生產一個主時鐘,但為什么我
    發表于 10-25 08:02

    pcm1865的i2s協議2單通道已經實現,pcm1865實現4通道是不是就不能用i2s協議了,必須要pcm實現?

    pcm1865的i2s協議2單通道已經實現,pcm1865實現4通道是不是就不能用i2s協議了,必須要
    發表于 10-25 06:06

    請問AIC3254的I2S接口如何工作與TDM模式?

    如題,AIC3254的I2S接口如何工作與TDM模式?
    發表于 10-23 06:21

    是否有I2SPCM互轉的IC?

    是否有I2SPCM互轉的IC?
    發表于 10-21 06:59

    請問PCM1864是否支持4個單端MIC輸入, 輸出i2s?

    我看規格書只有一個i2s, 4 mic in, 如何分出這些mic的data在一個i2s? 據我所知output format TDM is ok. 請問一下PCM1864 是否支持
    發表于 10-21 06:56

    在應用TAS2564電路的時候,要在TDM端口打入I2S音頻信號嗎?

    我們已經采購了一些TAS2564電路,準備基于TAS2564電路開發音頻產品,請問在應用該電路時候,只要在TDM端口打入I2S音頻信號嗎,需不需要從
    發表于 09-29 08:21

    請問PCM4204是I2S接口嗎?

    .請TI工程師確定一下 PCM4204是I2S接口?。如果是I2S,如果與STM32F407連接,是不是PCM的M_CLK對應I2S的MC
    發表于 09-27 09:13

    pcm音頻輸出接口有哪些

    音頻輸出接口的具體形式可以因不同的應用場景和設備而有所不同,但通常包括以下幾種常見的接口類型: 1. I2S(Inter-IC Sound)接口 定義 :I2S是飛利浦在1986年定義(1996年修訂)的一種數字
    的頭像 發表于 09-25 11:32 ?1507次閱讀

    I2S總線的定義和特點

    I2S(Inter-IC Sound)總線,又稱為集成電路內置音頻總線,是飛利浦公司(現為恩智浦半導體)為了數字音頻設備之間的
    的頭像 發表于 09-03 14:08 ?1240次閱讀

    請問ESP32-C3 I2S接口支持PDM接收嗎?

    ESP32-C3 I2S接口支持PDM接收嗎?看到 C3的datasheet上只標了支持 PDM TX 接口。 原文如下: \"支持 TDM PCM、TDM MSB 對齊、
    發表于 06-20 07:04

    基于I2S接口的Linux內核音頻技術

    I2S是飛利浦定義的數字音頻傳輸標準,用于數字音頻數據在系統內部器件之間傳輸。
    發表于 02-27 14:00 ?3131次閱讀
    基于<b class='flag-5'>I2S</b>接口的Linux內核<b class='flag-5'>音頻</b>技術
    主站蜘蛛池模板: 成年ssswww中国女人| 中文字幕佐山爱一区二区免费| 天天干天天拍天天射| 777丰满影院| 亚洲综合狠狠| 精品卡1卡2卡三卡免费网站视频| 狠狠色丁香婷婷第六色孕妇| 天天操天天操天天操| 国产成人精品影视| 99热免费| 久青草免费视频| 777国产精品永久免费观看| 5x视频在线观看| 热久久最新视频| 青娱乐99| 日日操夜夜操天天操| 久久澡| 美女视频毛片| 97人人射| 91大神在线看| 啪啪色视频| 欧美午夜视频| 一区二区影院| 欧美日韩看片| 成人网在线看| 精品欧美| 你懂的网站在线观看网址| 在线观看视频高清视频| 在线亚洲精品| 手机免费黄色网址| 午夜精品视频| xx日本69| 欧美1| 国产午夜在线视频| 九九久久久久午夜精选| 韩国三级无遮挡床戏视频| 亚洲欧美日韩高清mmm777| 日本大片在线看| 国产最好的精华液网站| 四虎影视网站| 色狠狠色综合吹潮|